(57)【特許請求の範囲】
【請求項１】
表示器に表示させる操作画面の内容を編集し、編集結果を保存する画面編集装置であって、
前記操作画面に配置可能な各画面構成要素について、その画面構成要素と対応するキーワードとして、互いに上位／下位の関係を有する複数のレベルのキーワードを記憶するキーワード記憶手段と、
編集対象の画面構成要素の選択を受け付ける選択受付手段と、
該選択受付手段により選択された画面構成要素について前記操作画面に表示させるか否かを定める表示設定を行う手段と、
キーワードの入力を受け付けるキーワード受付手段と、
該キーワード受付手段が受け付けたキーワードと対応する画面構成要素を抽出し、前記表示設定を行う画面構成要素の候補として表示する抽出手段とを有し、
前記キーワード受付手段は、
前記レベル毎にキーワードの入力を受け付ける手段であり、
あるレベルについてキーワードの入力を受け付ける場合に、前記キーワード記憶手段を検索し、そのレベルより上位の全てのレベルについて既に入力されているものと同じキーワードが対応付けられている画面構成要素について、該画面構成要素と対応付けられている、入力を受け付けるレベルのキーワードを取得し、該キーワードを選択肢として提示する手段を備えることを特徴とする画面編集装置。
【請求項２】
請求項１に記載の画面編集装置であって、
前記キーワード記憶手段が記憶しているキーワードのうち、編集中の操作画面に配置可能な画面構成要素と対応するものの一覧を表示する表示手段を有し、
前記選択受付手段が、前記表示手段に表示された一覧の中から画面構成要素の抽出に使用するキーワードの選択を受け付ける手段を有することを特徴とする画面編集装置。
【請求項３】
請求項１又は２に記載の画面編集装置であって、
前記抽出手段は、前記キーワード記憶手段が記憶する複数のレベルのキーワードのうち、１又は複数の任意のレベルのキーワードを用いて前記画面構成要素の抽出を行うことが可能であることを特徴とする画面編集装置。
【請求項４】
請求項１又は２に記載の画面編集装置であって、
前記編集対象として選択されている画面構成要素と対応するキーワードを用いて、そのキーワードと対応する画面構成要素を抽出し、前記表示設定を行う画面構成要素の候補として表示する第２の抽出手段を設けたことを特徴とする画面編集装置。
【請求項５】
請求項１乃至４のいずれか一項に記載の画面編集装置であって、
前記抽出手段が抽出した画面構成要素のうち、ユーザが選択した任意の数の画面構成要素につき、一括して前記表示設定を行う手段を有することを特徴とする画面編集装置。
【請求項６】
請求項１乃至４のいずれか一項に記載の画面編集装置であって、
前記抽出手段に、抽出した画面構成要素を、前記操作画面のプレビュー中で強調して表示する手段を設けたことを特徴とする画面編集装置。
【請求項７】
表示器に表示させる操作画面の内容を編集し、編集結果を保存する画面編集方法であって、
コンピュータが、
前記操作画面に配置可能な各画面構成要素について、その画面構成要素と対応するキーワードとして、互いに上位／下位の関係を有する複数のレベルのキーワードを記憶するキーワード記憶手順と、
編集対象の画面構成要素の選択を受け付ける選択受付手順と、
該選択受付手順で選択された画面構成要素について前記操作画面に表示させるか否かを定める表示設定を行う手順と、
キーワードの入力を受け付けるキーワード受付手順と、
該キーワード受付手順で受け付けたキーワードと対応する画面構成要素を抽出し、上記表示設定を行う画面構成要素の候補として表示する抽出手順とを実行し、
前記キーワード受付手順は、
前記レベル毎にキーワードの入力を受け付ける手順であり、
あるレベルについてキーワードの入力を受け付ける場合に、前記キーワード記憶手順で記憶したキーワードを検索し、そのレベルより上位の全てのレベルについて既に入力されているものと同じキーワードが対応付けられている画面構成要素について、該画面構成要素と対応付けられている、入力を受け付けるレベルのキーワードを取得し、該キーワードを選択肢として提示する手順を備えることを特徴とする画面編集方法。
【請求項８】
請求項７に記載の画面編集方法であって、
前記コンピュータが、
前記キーワード記憶手順で記憶したキーワードのうち、編集中の操作画面に配置可能な画面構成要素と対応するものの一覧を表示する表示手順を実行し、
前記選択受付手順は、前記表示手順で表示された一覧の中から画面構成要素の抽出に使用するキーワードの選択を受け付ける手順であることを特徴とする画面編集方法。
【請求項９】
請求項７又は８に記載の画面編集方法であって、
前記抽出手順が、前記キーワード記憶手順で記憶した複数のレベルのキーワードのうち、１又は複数の任意のレベルのキーワードを用いて前記画面構成要素の抽出を行うことが可能な手順であることを特徴とする画面編集方法。
【請求項１０】
コンピュータを、表示器に表示させる操作画面の内容を編集し、編集結果を保存する画面編集装置として機能させるためのプログラムであって、
前記コンピュータを、
前記操作画面に配置可能な各画面構成要素について、その画面構成要素と対応するキーワードとして、互いに上位／下位の関係を有する複数のレベルのキーワードを記憶するキーワード記憶手段と、
編集対象の画面構成要素の選択を受け付ける選択受付手段と、
該選択受付手段により選択された画面構成要素について前記操作画面に表示させるか否かを定める表示設定を行う手段と、
キーワードの入力を受け付けるキーワード受付手段と、
該キーワード受付手段が受け付けたキーワードと対応する画面構成要素を抽出し、前記表示設定を行う画面構成要素の候補として表示する抽出手段として機能させるためのプログラムを含み、
前記キーワード受付手段は、
前記レベル毎にキーワードの入力を受け付ける手段であり、
あるレベルについてキーワードの入力を受け付ける場合に、前記キーワード記憶手段を検索し、そのレベルより上位の全てのレベルについて既に入力されているものと同じキーワードが対応付けられている画面構成要素について、該画面構成要素と対応付けられている、入力を受け付けるレベルのキーワードを取得し、該キーワードを選択肢として提示する手段を備えることを特徴とするプログラム。
【請求項１１】
請求項１０に記載のプログラムであって、
前記コンピュータを、
前記キーワード記憶手段が記憶しているキーワードのうち、編集中の操作画面に配置可能な画面構成要素と対応するものの一覧を表示する表示手段として機能させるためのプログラムを含み、
前記選択受付手段が、前記表示手段に表示された一覧の中から画面構成要素の抽出に使用するキーワードの選択を受け付ける手段であることを特徴とするプログラム。
【請求項１２】
請求項１０又は１１に記載のプログラムであって、
前記抽出手段は、前記キーワード記憶手段が記憶する複数のレベルのキーワードのうち、１又は複数の任意のレベルのキーワードを用いて前記画面構成要素の抽出を行うことが可能であることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、表示器に表示させる操作画面の内容を編集し、編集結果を保存する画面編集装置、表示器に表示させる操作画面の内容を編集し、編集結果を保存する画面編集方法及び、コンピュータを上記のような画面編集装置として機能させるためのプログラムに関する。
【背景技術】
【０００２】
従来から、表示器にＧＵＩ（グラフィカル・ユーザ・インタフェース）の画面を表示させ、そのＧＵＩにおいて、種々のデータの表示や操作の受付を行うことが知られている。
そして、ＧＵＩの設計は、ユーザからの操作を受け付けるためのボタンや、設定内容を表示するための文字表示枠等の、種々の部品を画面上に配置して行うことができる。また、近年では、メーカーが提供するＧＵＩをそのまま使用するのではなく、ユーザが画面の内容を編集して自身の用途に合ったＧＵＩを作成する、カスタマイズに関する要望が多くある。
【０００３】
このようなＧＵＩのカスタマイズに関する技術としては、例えば特許文献１乃至３に記載のものが知られている。
特許文献１には、パネルカスタマイズモードを選択することにより、液晶表示器に表示させている表示画面中の機能キーにつき、表示／非表示，位置，サイズ等を変更することができる画像形成装置が記載されている。
特許文献２には、ユーザ端末からサーバにアクセスして電子機器の操作画面を編集できるようにする技術が記載されている。また、この編集の例として、操作ボタンの拡大縮小、切断、合成、位置変更、あるいはボタンの機能を殺す（消してしまう）、等が挙げられている。
特許文献３には、画面レイアウトが設定されたＨＴＭＬファイルに対して修正を行うことによりＧＵＩのカスタマイズを可能とした産業用機器が記載されている。
【特許文献１】特開２００５−４５３７０号公報
【特許文献２】特開２００３−１５０９７１号公報
【特許文献３】特開２００３−５８２５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、装置のメーカーがＧＵＩのカスタマイズ機能を提供しようとする場合、予めユーザのニーズを予測して、そのニーズに合ったＧＵＩをデザインして雛形として提供することは可能である。しかし、ユーザのニーズがその雛形と合わない場合には、ユーザは、ボタンの位置を移動させたり、表示／非表示を切り替えたりというように、自分でＧＵＩの内容を変更する操作を行わなければならない。このため、装置が広範な設定項目を有し、それに伴って多数のＧＵＩ画面を有する場合、ユーザが所望の内容の画面を編集するには膨大な労力を要する場合もある。
【０００５】
例えば、コピー、プリント、ファクシミリ通信等の機能を有するデジタル複合機（ＭＦＰ）において、ユーザが片面印刷による紙資源の無駄を無くしたいと考え、片面印刷をできなくしようとする場合、ＧＵＩのカスタマイズにより片面印刷に関するボタンを全て非表示にすることにより、この意図を実現できるものの、片面印刷に関するボタンは、数十〜数百画面に及ぶＧＵＩの各所に点在しているため、それらを１つ１つ探して非表示に設定するには非常に手間がかかるし、また、片面印刷に関するボタンを全て漏れなく非表示に設定することも難しい、といった具合である。
【０００６】
この発明は、このような問題を解決し、表示器に表示させる画面を編集する場合に、ユーザが編集すべき箇所を効率よく発見できるようにし、編集操作の効率を改善することを目的とする。
【課題を解決するための手段】
【０００７】
この発明の画面編集装置は、上記の目的を達成するため、表示器に表示させる操作画面の内容を編集し、編集結果を保存する画面編集装置において、上記操作画面に配置可能な各画面構成要素について、その画面構成要素と対応するキーワードとして、互いに上位／下位の関係を有する複数のレベルのキーワードを記憶するキーワード記憶手段と、編集対象の画面構成要素の選択を受け付ける選択受付手段と、その選択受付手段により選択された画面構成要素について上記操作画面に表示させるか否かを定める表示設定を行う手段と、キーワードの入力を受け付けるキーワード受付手段と、そのキーワード受付手段が受け付けたキーワードと対応する画面構成要素を抽出し、上記表示設定を行う画面構成要素の候補として表示する抽出手段とを設け、上記キーワード受付手段を、上記レベル毎にキーワードの入力を受け付ける手段とし、その手段に、あるレベルについてキーワードの入力を受け付ける場合に、上記キーワード記憶手段を検索し、そのレベルより上位の全てのレベルについて既に入力されているものと同じキーワードが対応付けられている画面構成要素について、その画面構成要素と対応付けられている、入力を受け付けるレベルのキーワードを取得し、そのキーワードを選択肢として提示する手段を設けたものである。
【０００８】
このような画面編集装置において、上記キーワード記憶手段が記憶しているキーワードのうち、編集中の操作画面に配置可能な画面構成要素と対応するものの一覧を表示する表示手段を設け、上記選択受付手段に、上記表示手段に表示された一覧の中から画面構成要素の抽出に使用するキーワードの選択を受け付ける手段を設けるとよい。
さらに、上記抽出手段を、上記キーワード記憶手段が記憶する複数のレベルのキーワードのうち、１又は複数の任意のレベルのキーワードを用いて上記画面構成要素の抽出を行うことが可能な手段とするとよい。
【０００９】
あるいは、上記編集対象として選択されている画面構成要素と対応するキーワードを用いて、そのキーワードと対応する画面構成要素を抽出し、上記表示設定を行う画面構成要素の候補として表示する第２の抽出手段を設けるとよい。
また、上記の各画面編集装置において、上記抽出手段が抽出した画面構成要素のうち、ユーザが選択した任意の数の画面構成要素につき、一括して上記表示設定を行う手段を設けるとよい。
あるいは、上記抽出手段に、抽出した画面構成要素を、上記操作画面のプレビュー中で強調して表示する手段を設けるとよい。
【００１０】
また、この発明の画面編集方法は、表示器に表示させる操作画面の内容を編集し、編集結果を保存する画面編集方法であって、コンピュータが、上記操作画面に配置可能な各画面構成要素について、その画面構成要素と対応するキーワードとして、互いに上位／下位の関係を有する複数のレベルのキーワードを記憶するキーワード記憶手順と、編集対象の画面構成要素の選択を受け付ける選択受付手順と、その選択受付手順で選択された画面構成要素について上記操作画面に表示させるか否かを定める表示設定を行う手順と、キーワードの入力を受け付けるキーワード受付手順と、そのキーワード受付手順で受け付けたキーワードと対応する画面構成要素を抽出し、上記表示設定を行う画面構成要素の候補として表示する抽出手順とを実行し、上記キーワード受付手順を、上記レベル毎にキーワードの入力を受け付ける手順とし、その手順に、あるレベルについてキーワードの入力を受け付ける場合に、上記キーワード記憶手順で記憶したキーワードを検索し、そのレベルより上位の全てのレベルについて既に入力されているものと同じキーワードが対応付けられている画面構成要素について、その画面構成要素と対応付けられている、入力を受け付けるレベルのキーワードを取得し、そのキーワードを選択肢として提示する手順を設けたものである。
【００１１】
このような画面編集方法において、上記コンピュータが、上記キーワード記憶手順で記憶したキーワードのうち、編集中の操作画面に配置可能な画面構成要素と対応するものの一覧を表示する表示手順を実行し、上記選択受付手順を、上記表示手順で表示された一覧の中から画面構成要素の抽出に使用するキーワードの選択を受け付ける手順とするとよい。
さらに、上記抽出手順を、上記キーワード記憶手順で記憶した複数のレベルのキーワードのうち、１又は複数の任意のレベルのキーワードを用いて上記画面構成要素の抽出を行うことが可能な手順とするとよい。
【００１２】
また、この発明のプログラムは、コンピュータを、表示器に表示させる操作画面の内容を編集し、編集結果を保存する画面編集装置として機能させるためのプログラムであって、上記コンピュータを、上記操作画面に配置可能な各画面構成要素について、その画面構成要素と対応するキーワードとして、互いに上位／下位の関係を有する複数のレベルのキーワードを記憶するキーワード記憶手段と、編集対象の画面構成要素の選択を受け付ける選択受付手段と、その選択受付手段により選択された画面構成要素について上記操作画面に表示させるか否かを定める表示設定を行う手段と、キーワードの入力を受け付けるキーワード受付手段と、そのキーワード受付手段が受け付けたキーワードと対応する画面構成要素を抽出し、上記表示設定を行う画面構成要素の候補として表示する抽出手段として機能させるためのプログラムを含み、上記キーワード受付手段を、上記レベル毎にキーワードの入力を受け付ける手段とし、その手段に、あるレベルについてキーワードの入力を受け付ける場合に、上記キーワード記憶手段を検索し、そのレベルより上位の全てのレベルについて既に入力されているものと同じキーワードが対応付けられている画面構成要素について、その画面構成要素と対応付けられている、入力を受け付けるレベルのキーワードを取得し、そのキーワードを選択肢として提示する手段を設けたプログラムである。
【００１３】
このようなプログラムにおいて、上記コンピュータを、上記キーワード記憶手段が記憶しているキーワードのうち、編集中の操作画面に配置可能な画面構成要素と対応するものの一覧を表示する表示手段として機能させるためのプログラムを含め、上記選択受付手段を、上記表示手段に表示された一覧の中から画面構成要素の抽出に使用するキーワードの選択を受け付ける手段とするとよい。
さらに、上記抽出手段を、上記キーワード記憶手段が記憶する複数のレベルのキーワードのうち、１又は複数の任意のレベルのキーワードを用いて上記画面構成要素の抽出を行うことが可能な手段とするとよい。
【発明の効果】
【００１４】
以上のようなこの発明の画面編集装置又は画面編集方法によれば、表示器に表示させる画面を編集する場合に、ユーザが編集すべき箇所を効率よく発見できるようにし、編集操作の効率を改善することができる。
また、この発明のプログラムによれば、コンピュータを画面編集装置として機能させ、上記の効果を得ることができる。
【発明を実施するための最良の形態】
【００１５】
以下、この発明を実施するための最良の形態を図面に基づいて具体的に説明する。
この発明の画面編集装置は、何らかの装置の表示器に表示させる操作画面の内容を編集する装置である。そして、この画面編集装置は、操作画面を表示させる装置自体に画面編集機能を設けて実現することもできるし、操作画面を表示させる装置とネットワーク等の通信路を介して通信可能なＰＣ（パーソナルコンピュータ）等のコンピュータに、所要のアプリケーションプログラムを実行させることにより実現してもよい。
【００１６】
また、編集機能は、操作画面を表示させる装置自体がアプリケーションサーバとして機能して提供し、ＰＣ等からウェブブラウザのような一般的なクライアントアプリケーションによりアクセスしてその編集機能を利用できるようにしてもよい。また、全く独立した編集装置によって操作画面のデータのみを編集し、このデータを記録媒体に記録して、操作画面を表示する装置に、画面のデータをその記録媒体から読み出させるような構成でもよい。
すなわち、画面編集装置を実現するためのハードウェアは、ＣＰＵ，ＲＯＭ，ＲＡＭ等を有し、一定の演算能力を有するものであればどのようなものであってもよい。
【００１７】
ここでは、その一例として、ＰＣにより画面編集装置を実現し、そのＰＣとネットワーク接続された画像処理装置に表示させる操作画面の内容を編集する場合の実施形態について説明する。
【００１８】
〔第１の実施形態：図１乃至図１５〕
まず、図１に、操作画面を表示させる画像処理装置のハードウェア構成を示す。
この画像処理装置１０は、図１に示すように、プリンタエンジン，スキャナエンジン，画像蓄積用ＨＤＤ等からなるエンジン部１９と、通信Ｉ／Ｆ１７とを有し、ＣＰＵ１１，ＲＯＭ１２，ＲＡＭ１３等により構成される制御部によりアプリケーションプログラムを実行してこれらのエンジン部１９及び通信Ｉ／Ｆ１７を制御することにより、プリント，スキャン，コピー，ドキュメントボックス，ファクシミリ通信等の機能を実現することができる装置である。後からアプリケーションプログラムを追加することにより、実現可能な機能の種類を増やすこともできる。
【００１９】
また、画像処理装置１０は、表示器である液晶ディスプレイ（ＬＣＤ）にタッチパネルを積層した操作パネル１８を有し、この操作パネル１８にＧＵＩを表示して、ユーザからの設定や動作指示等の操作を受け付け、その内容に従った動作を行う。そして、これらの動作に必要な設定内容等のデータのうち、変更可能かつ電源をＯＦＦした場合でも保持しておく必要のあるデータは、ＮＶＲＡＭ（不揮発ＲＡＭ）１４に記憶させておく。
【００２０】
これらのうち、ＣＰＵ１１，ＲＯＭ１２，ＲＡＭ１３，ＮＶＲＡＭ１４，通信Ｉ／Ｆ１７は、システムバス２０によって接続され、操作パネル１８とエンジン部１９は、それぞれパネルＩ／Ｆ１５とエンジンＩ／Ｆ１６とを介してシステムバス２０に接続される。
また、通信Ｉ／Ｆ１７は、ＬＡＮ（ローカルエリアネットワーク）等のネットワーク３０を介して、この発明の第１の実施形態の画面編集装置として機能するＰＣ４０と通信可能な状態となっている。なお、この通信には、有線、無線を問わず、任意の通信経路を用いることができる。
【００２１】
図２には、以上のような画像処理装置１０及びＰＣ４０の機能のうち、ＧＵＩの表示及びカスタマイズに関する機能を示す。
図２に示すように、画像処理装置１０は、制御部１１０及び記憶部１２０を有する。
このうち、制御部１１０は、通信手段１１１，画面定義データ管理手段１１２，画面生成手段１１３，個人認証管理手段１１４を有し、これらの機能は、ＣＰＵ１１が所要のプログラムを実行することにより実現される。また、記憶部１２０は、画面定義データ記憶手段１２１，認証データ記憶手段１２２を有し、これらの機能は、ＮＶＲＡＭ１４により実現される。
【００２２】
そして、通信手段１１１は、他の装置やプロセスとの間でデータを送受信する機能を有する。この送受信は例えば、ＰＣ４０と通信して、ＧＵＩ編集機能を提供するＵＩカスタマイズツール２００に対し、編集用に、画面定義データ記憶手段１２１に記憶している、画像処理装置１０がＧＵＩの表示に使用する画面定義データを提供するものである。あるいは、ＵＩカスタマイズツール２００において編集された画面定義データを受信して、画像処理装置１０がＧＵＩの表示に使用するデータとして画面定義データ記憶手段１２１に記憶させたりするものである。また、通信手段１１１は、ＧＵＩを使用するアプリケーションからの、操作パネル１８に表示させるべき画面の指示を受け取る機能も有する。
【００２３】
画面定義データ管理手段１１２は、画面定義データ記憶手段１２１が記憶するＧＵＩのデータを管理する機能を有する。そして、ＧＵＩの表示や編集を行う場合に必要なデータを画面定義データ記憶手段１２１から読み出したり、ＵＩカスタマイズツール２００による編集後の画面定義データを画面定義データ記憶手段１２１に保存したりする。ＧＵＩの表示を行う場合、読み出した画面定義データは画面生成手段１１３に渡す。
【００２４】
画面生成手段１１３は、画面定義データ管理手段１１２から受け取った画面定義データに基づき、操作パネル１８での表示に用いるＧＵＩの画像データを生成し、この画像データに基づいて操作パネル１８にＧＵＩを表示させる機能を有する。詳細は後述するが、画面定義データ記憶手段１２１では、画面定義データは、ボタン、メッセージ、アイコン等の座標や形状、サイズ等を示すデータとして記憶されているため、画面生成手段１１３では、このデータに基づき、ボタン、メッセージ、アイコン等を表示画面のビットマップ中に描画する処理を行って、ＧＵＩの画像データを生成する。
【００２５】
個人認証管理手段１１４は、ユーザＩＤ、パスワード、あるいは指紋や静脈などのバイオメトリクス情報といった認証データを用いて、画面の表示を指示したユーザを認証する機能を有する。この認証は、ユーザが入力した認証データを、認証データ記憶手段１２２に記憶されている認証データと照合することにより行う。この認証の結果は、ユーザによる画像処理装置１０の使用の許可／不許可の判断や、ユーザに応じて表示させるＧＵＩ画面を変えることによる利用機能制限等が考えられる。例えば、同種のＧＵＩ画面について複数の画面定義データを用意しておき、特定のユーザが画像処理装置１０を利用する場合に、特定の機能を選択するためのボタンを非表示にしたＧＵＩを表示させるようにすれば、そのユーザに、非表示にした機能を利用させないようにすることができる。
【００２６】
画像処理装置１０は、以上の各手段により、画面編集装置により編集された画面定義データに従ったＧＵＩを操作パネル１８に表示させ、そのＧＵＩによりユーザの操作を受け付けることができる。
【００２７】
一方、ＰＣ４０は、ＣＰＵが所要のアプリケーションプログラムを実行することにより、ユーザに、画像処理装置１０に表示させるＧＵＩ画面を編集する機能を提供するＵＩカスタマイズツール２００として機能する。
そして、このＵＩカスタマイズツール２００は、通信手段２０１，画面定義データ入出力手段２０２，画面構成要素抽出手段２０３，カスタマイズ手段２１０を有する。
【００２８】
これらのうち、通信手段２０１は、他の装置やプロセスとの間でデータを送受信する機能を有する。ここでは、制御部１１０にアクセスして編集すべきＧＵＩの内容を示す画面定義データを取得したり、編集後の画面定義データを画像処理装置１０に送信して画面定義データ記憶手段１２１に記憶させたりする通信を行う。
【００２９】
画面定義データ入出力手段２０２は、ユーザから編集する画面定義データの読み出し指示があった場合に、通信手段２０１を介して画像処理装置１０から必要な画面定義データを取得して記憶し、カスタマイズ手段２１０による変更や、画面構成要素抽出手段２０３による検索及び抽出に供する機能を有する。また、ユーザから新規保存又は上書き保存の指示があった場合に、編集中の画面定義データを通信手段２０１を介して画像処理装置１０に送信し、保存させる機能も有する。
画面構成要素抽出手段２０３は、後に詳述するが、編集中の画面定義データから、ユーザに指定されたキーワードと対応する画面構成要素を検索して抽出する機能を有する。
【００３０】
カスタマイズ手段２１０は、編集画面生成手段２１１に加え、画面定義データの内容を変更する各手段を有する。
編集画面生成手段２１１は、画面定義データ入出力手段２０２が記憶する、編集中のＧＵＩの内容を示す画面定義データに基づき、ＰＣ４０のディスプレイにＧＵＩ編集画面を表示させ、ＧＵＩの編集操作や検索操作を受け付ける機能を有する。
【００３１】
画面定義データの内容を変更する手段については、図２には、表示／非表示変更手段２１２，座標変更手段２１３，サイズ変更手段２１４を示している。そして、これらは、ＧＵＩ編集画面において受け付けた指示に従い、画面定義データ入出力手段２０２が記憶する画面定義データのうち、編集中のＧＵＩに含まれるボタン、メッセージ、アイコン等の画面構成要素に関するプロパティの値を変更する手段である。
【００３２】
表示／非表示変更手段２１２は、画面構成要素をＧＵＩに表示させるか否かを定める表示／非表示の設定を、座標変更手段２１３は、画面構成要素をＧＵＩ上のどこに配置するかを定める座標を、サイズ変更手段２１４は、画面構成要素をＧＵＩ上にどのようなサイズで配置するかを定めるサイズを、それぞれ変更する手段である。これら以外にも、画面定義データに含まれるプロパティの種類のうち変更し得るもの毎に、対応する変更手段を設ける。
【００３３】
ＰＣ４０は、以上の各手段により、画像処理装置１０の操作パネル１８に表示させるＧＵＩ画面の内容を編集し、編集結果を画像処理装置１０に保存させることができる。もちろん、編集結果をＰＣ４０側に保存することもできる。
【００３４】
次に、図３乃至図６を用いて、ＧＵＩの内容を示す画面定義データ及びこれに関連するデータについて説明する。
図３に示すのは、画像処理装置１０が使用するＧＵＩの内容を規定するデータセットの構成である。
【００３５】
上述のように、画像処理装置１０は、アプリケーション（以下、略して「アプリ」ともいう）によってコピーやドキュメントボックス等の機能を実現する装置であり、アプリを任意に追加して機能を追加可能な構成としている。そこで、使用するＧＵＩのデータも、図３に示すように、アプリ毎に、そのアプリが使用する画面のセットを規定する画面一覧データを記憶するようにしている。そして、画像処理装置１０にインストールした各アプリと対応させて画面一覧指定データを用意し、どのアプリについてのＧＵＩを表示させる場合にどの画面一覧データを参照すればよいかがわかるようにしている。
【００３６】
また、各画面一覧データには、アプリが使用する画面毎に、その画面の内容を規定する画面定義データの位置を示す参照データを用意している。
そして、この画面定義データが、１画面分のＧＵＩの内容を規定するデータである。
【００３７】
図４に、この画面定義データの例を示す。
この図には、コピーアプリで使用するトップ画面である、コピートップ画面の内容を規定するデータを示した。そして、この図に示すように、画面定義データは、特定の画面に配置し得る各画面構成要素につき、その識別子，種別，座標，サイズ，形状，フォントサイズ，表示有無，キーワードＩＤの情報を含む。
【００３８】
このうち「識別子」は、画面構成要素を特定するために用いる情報であり、ボタンの操作イベントに応じて実行するコードの特定，ＧＵＩに表示するキャプションの選択，ＧＵＩ上での状態変化（非選択状態／選択状態等）のターゲットの指定等に用いられる。
「種別」は、画面構成要素のふるまいの特性を示す情報である。ここでは、操作が可能な「ボタン」と、単に文字列を表示するだけの「メッセージ」、単に画像を表示するだけの「アイコン」のいずれかを設定可能としている。
【００３９】
「座標」は、ＧＵＩ画面の表示領域の左上を基点として、画面構成要素の表示位置を２次元で規定する情報である。
「サイズ」は、ＧＵＩ画面上に画面構成要素を表示させる際の幅及び高さを規定する情報である。
「形状」は、ＧＵＩ画面上に画面構成要素を表示させる際に使用する画像データのファイル名を規定する情報である。この「形状」で規定する画像データは、画像処理装置１０において、ＧＵＩ画面を表示する際に読み出すことができるように、所定のフォルダに予め格納しておく。また、「メッセージ」の表示には、画像データを用いないので、「種別」が「メッセージ」である画面構成要素については、「形状」の値を設定する必要はない。
【００４０】
「フォントサイズ」は、ボタン上に表示するキャプションや、メッセージとして表示する文字列のフォントサイズを規定するデータである。
「表示有無」は、画面構成要素をＧＵＩ画面に表示させるか否かを規定するデータである。そして、ＧＵＩ画面を操作パネル１８に表示させる際、「表示有無」の値が「表示」であれば、対応する画面構成要素をＧＵＩ画面上に配置するが、「非表示」である場合、対応する画面構成要素はＧＵＩ画面上に配置しない。従って、例えば、あるボタンが「非表示」である場合、ユーザは、そのボタンによる操作を行えなくなるため、このことにより、ユーザに対し、特定の操作や、特定の機能の利用を禁止することができる。
ここまでのデータが、ＧＵＩ画面の表示に用いるデータである。
【００４１】
図５に、これらの画面定義データに従って表示されるＧＵＩ画面の例を示す。
画像処理装置１０において、操作パネル１８にＧＵＩ画面を表示させる際には、これらのデータに基づき、ＧＵＩ画面の表示領域に、「表示有無」の値が「表示」である各画面構成要素につき、「形状」により規定されるファイルの画像データを、「サイズ」により規定されるサイズに変形し、「座標」により規定される位置に配置して、さらに、「識別子」と対応して使用言語毎に用意された図示しないキャプションテーブルに登録されているキャプションを「フォントサイズ」により規定されるサイズの文字で「座標」及び「サイズ」に従って定められる位置に描画して、ＧＵＩ画面の画像データを生成する。
【００４２】
また、これ以外にも、画像処理装置１０においてなされている設定の内容をＧＵＩに動的に表示する場合もあり得る。例えば、給紙トレイを選択するボタンに、トレイに載置されている用紙のサイズや向き等を表示する場合である。この場合、画像処理装置１０が、識別子により画面構成要素を特定して、必要に応じて画面構成要素の表示を更新する処理を行う。
【００４３】
また、図４に示した画面定義データのうち、「キーワードＩＤ」は、ＧＵＩの編集中に画面構成要素の検索及び抽出に利用できるようにするために、画面構成要素と対応させて用意したキーワードを示す情報である。ただし、ここでは、使用言語の切り換えに対応するため、画面定義データ中には、キーワードのＩＤを示すのみとし、実際に検索に使用するキーワードは、言語毎に用意した別のキーワードテーブルに記憶させている。
【００４４】
図６及び図７に、このキーワードテーブルの例を示す。
図６に示すのが日本語用、図７に示すのが英語用のテーブルであり、それぞれ、キーワードＩＤと、該当言語においてそのキーワードＩＤを有する画面構成要素に対応付けるキーワード文字列とを記憶している。このとき、複数の画面構成要素に対して同じキーワードが対応付けられていても、問題ない。そのキーワードを用いて抽出を行った場合に、複数の画面構成要素が抽出されるだけである。また、ＧＵＩ編集中のユーザが指定したキーワードに従って画面構成要素の検索と抽出を行う際には、そのユーザが表示に使用している言語と対応するキーワードテーブルの内容に従って、各画面構成要素と対応するキーワードを特定する。
【００４５】
このキーワードテーブルは、ＧＵＩ画面の表示には用いないため、画像処理装置１０に記憶させる必要はないが、画面一覧データ又は画面定義データとセットで記憶させておくと、ＰＣ４０がＧＵＩの編集を行う際にこれとセットで読み出すことができ、データの管理が容易である。
また、これらのキーワードＩＤとキーワード文字列が、ＧＵＩ画面に配置可能な画面構成要素に対応するキーワードを示すデータであり、ＧＵＩ画面の編集時にこれらのデータを記憶する画面定義データ入出力手段２０２が、キーワード記憶手段に該当する。
【００４６】
またここでは、上記のキーワードテーブルとは別に、ＧＵＩの編集を行う際に使用するデータとして、各画面構成要素の名称を示すデータも用意している。この名称は、キーワードに従った検索による抽出の結果を分かり易く表示するために用いるものである。また、ユーザが編集対象等として選択した画面構成要素が何であるかを分かり易く表示するためにも用いるものである。
【００４７】
図８及び図９に、この名称を記憶させる名称テーブルの例を示す。
この名称テーブルは、各画面構成要素の画面構成要素識別子と対応させて、その識別子が示す画面構成要素の名称を記載したものである。そして、図の例では、その名称を２つ登録可能とし、名称１としては、画面構成要素が配置される画面の名称を、名称２としては、画面構成要素自体の機能を表す名称を登録し、これらによって、ユーザが画面構成要素を容易に特定できるようにしている。
【００４８】
しかし、これら以外の名称を用いることも、もちろん可能である。名称の用途を鑑みれば、キーワードの場合と異なり、異なる画面構成要素について全く同じ名称を登録することは好ましくないが、全く同じ名称が複数あっても技術的には問題ない。また、各画面構成要素のキーワードと名称とは、同じであっても異なっていてもよい。
また、名称テーブルも、キーワードテーブルと同様、言語毎に用意しており、図８に示すのが日本語用、図９に示すのが英語用のテーブルである。また、この名称テーブルも、ＧＵＩ画面自体の表示には用いないため、キーワードテーブルと同様、ＰＣ４０が参照可能であれば、画像処理装置１０に記憶させる必要はない。
【００４９】
以上の図３，図４，図６乃至図９に示したデータのうち、画面一覧データと、画面定義データにおける「識別子」及び「キーワードＩＤ」、さらにキーワードテーブルと名称テーブルの内容は、基本的には画像処理装置１０のメーカーが提供するものであり、ユーザが変更できるようにする必要はない。そして、これらのデータは、画像処理装置１０において使用し得るＧＵＩの内容を示すデータと、そのＧＵＩに配置可能な画面構成要素を示すデータである。ただし、ユーザが全く新しい独自の画面やボタン等を追加できるようにする場合には、これらのデータを変更可能にすることも考えられる。
【００５０】
また、１つのアプリで使用する画面は、後述するように階層的な配置となっているが、その階層構造については、アプリのプログラムによって実現すればよい。しかし、画面を編集する際にも、どの画面がどの階層に属するかが分かると画面の選択がしやすいため、この階層構造を示すデータを、編集時に参照できるように、画面一覧データ等に含ませておくとよい。
【００５１】
次に、図１０に、ＰＣ４０のＵＩカスタマイズツール２００がＧＵＩ画面の編集操作を受け付けるためのＧＵＩ編集画面の表示例を示す。
この図に示すＧＵＩ編集画面３００は、ＰＣ４０のディスプレイに、ＰＣ４０上で起動されたＵＩカスタマイズツール２００の機能により表示される画面である。そして、ＵＩカスタマイズツール２００は、編集するデータの読み出し先を指定され、読み出し指示を受けると、その読み出し先から、図３に示したようなデータセットを読み出し、そのデータセットの内容に基づき、図１０に示すようなＧＵＩ編集画面３００を表示する。図１０に示すのは、画像処理装置１０からデータセットを読み出した場合の表示例である。
【００５２】
この画面においては、まず、コピータブ３０１，ボックスタブ３０２，文書送信タブ３０３の３つのタブにより、画像処理装置１０が備えるどのアプリで使用するＧＵＩの編集を行うかの選択を受け付ける。なお、ＧＵＩ編集画面３００に表示するタブは、編集対象として取得したデータセットにどのアプリで使用するＧＵＩのデータが含まれているかに従って決定する。また、タブとしては、これらの他、検索タブ４０１も設けているが、この検索タブ４０１は、この実施形態の特徴である、キーワードを用いた画面構成要素の検索及び抽出の指示を受け付ける画面を表示させるためのボタンである。
【００５３】
図１０では、コピータブ３０１が選択された状態を示しており、この状態では、編集内容表示部３１０に、コピーアプリが使用するＧＵＩ画面を編集するための画面が表示される。
このうち、画面リスト表示部３２０は、タブにより選択されたアプリが使用するＧＵＩのリストをツリー形式で表示する部分である。このツリーにおいて、アプリの起動時に表示される画面を最上位の画面、最上位の画面から、その画面に配置されたボタンの操作により移行する画面を下位の画面、その下位の画面に配置されたボタンの操作により移行する画面をさらに下位の画面、としている。そして、通常は、上位の画面ほど広範な設定や機能選択を受け付ける画面であり、下位の画面ほど、特定の機能に関する詳細な設定を受け付けるための画面としてデザインされる。
【００５４】
そして、ユーザは、画面リスト表示部３２０に表示されるリストから編集対象とする１つのＧＵＩ画面を選択することができる。そして、どのＧＵＩ画面が選択されているかは、カーソル３２１により示し、その選択されたＧＵＩ画面の内容が、プレビュー表示部３３０に表示される。図１０では、リストの一番上のコピートップ画面が選択された状態を示している。
【００５５】
プレビュー表示部３３０に表示されるのは、ユーザによる編集結果を反映させた、操作パネル１８に表示させるＧＵＩ画面のプレビューである。そして、この画面中で、表示内容を編集したいボタン等の画面構成要素をクリック等により選択することができる。
そして、プレビュー表示部３３０で選択された編集対象の画面構成要素の現在の状態を示す情報が、プロパティ表示部３４０及び表示有無表示部３５０に表示される。
【００５６】
図１０では、自動用紙選択ボタン３３１が選択された状態を示しており、プロパティ表示部３４０には、このボタンについての現在の情報として、名称，種別，座標，サイズ（幅及び高さ），フォントサイズの情報が表示されている。これらのデータのうち、名称以外は、図４に示した画面定義データの内容を表示したものである。そして、ユーザは、所望の項目を選択した上で、テキスト入力、プルダウンメニュー、カーソルボタン等の図示しないユーザインタフェースから所望の値又は変更指示を入力することにより、各項目の値を変更することができる。
【００５７】
画面定義データのうち図１０に示されていない項目や、各言語におけるキャプションも、画面に表示させて編集することができる。そして、以上の変更がなされると、その内容は、直ちにプレビュー表示部３３０の表示に反映される。ただし、名称については、編集中のユーザの使用言語と対応する名称テーブルの内容に基づき、選択された画面構成要素と対応する名称を表示しており、この値は編集不可である。またここでは、表示スペースの都合上、さらには、画面の名称は画面リスト表示部３２０に表示されており、ここに別途表示する必要性が乏しいため、名称テーブル上の「名称２」のみを表示している。
【００５８】
また、表示有無表示部３５０には、編集対象の画面構成要素に関する「表示有無」の値を設定するための表示ボタン３５１と非表示ボタン３５２が表示され、このうち、現在設定されている内容と対応するボタンが反転表示される。図１０の例では、自動用紙選択ボタン３３１は「表示」の状態であるので、表示ボタン３５１が反転表示状態となっている。そして、非表示ボタン３５２を押下することにより、自動用紙選択ボタン３３１を「非表示」の状態に設定することができる。この表示／非表示の変更も、直ちにプレビュー表示部３３０の表示に反映される。
【００５９】
なお、あるボタンを「非表示」に設定してしまうと、そのボタンはプレビュー表示部３３０に表示されなくなってしまい、以後、画面上でクリックできなくなってしまう。そこで、図示はしていないが、ＧＵＩ編集画面３００には、表示／非表示を問わず、画面リスト表示部３２０で選択された画面のデータに含まれている画面構成要素のリストを表示させるためのボタンを設けており、ユーザは、非表示の画面構成要素についての情報を編集したい場合には、このリストから編集対象を選択することができる。
【００６０】
また、保存ボタン３６２は、以上のようなＧＵＩ編集画面３００で編集した画面の内容の保存指示を受け付けるためのボタンであり、ＰＣ４０は、保存ボタン３６２が押下された場合に、編集後のデータセットを、ユーザが指定した保存先に保存する。画像送信装置１０が保存先に指定された場合、表示に使用できる状態で保存させることができる。また、ＰＣ４０側にファイルとして保存することもできる。
読み込みボタン３６１は、ＧＵＩ編集画面３００で編集するデータの読み出し指示を受け付けるためのボタンである。ＰＣ４０は、読み込みボタン３６１が押下された場合に、ユーザが指定した読み出し元から、ＧＵＩ画面の内容を示すデータセットを読み出して、編集対象として記憶し、その内容に併せてＧＵＩ編集画面の表示を更新する。
これらの保存や読み出しは、アプリケーション単位、すなわち図３に示した１つの画面一覧データが示す画面定義データの単位で行うこともできる。
【００６１】
ＧＵＩ画面の編集は、以上の編集内容表示部３１０において、読み込みボタン３６１を押下して編集する画面定義データのセットを読み出し、画面リスト表示部３２０で編集対象のＧＵＩ画面を選択し、プレビュー表示部３３０で表示内容を変更する画面構成要素を編集対象として選択し、プロパティ表示部３４０や表示有無表示部３５０でその画面構成要素のプロパティを変更することによって行う。
また、関連要素検索ボタン３７０は、編集対象となっている画面構成要素と対応するキーワードを用いて、この実施形態の特徴である、画面構成要素の検索及び抽出を行ってその結果を表示させるためのボタンである。
【００６２】
次に、図１１に、検索タブ４０１の選択に応じて表示される、キーワードを用いた画面構成要素の検索及び抽出を指示するための画面の表示例を示す。
ＧＵＩ編集画面３００において検索タブ４０１が選択されると、ＰＣ４０は、ＧＵＩ編集画面３００内に、その検索タブ４０１と対応する表示部として、検索表示部４１０を表示する。なお、この状態でも、コピータブ３０１，ボックスタブ３０２，文書送信タブ３０３は表示されており、ユーザは、これらのタブを選択することにより、図１０に示したような編集内容表示部を表示させることができる。
【００６３】
一方、検索表示部４１０には、キーワード入力部４１１，キーワードリスト表示部４１２，検索実行ボタン４１３を設けている。
キーワード入力部４１１は、検索に使用するキーワードの入力を受け付ける部分であり、キーワードをテキスト入力可能である。また、検索タブ４０１が選択された時点でＧＵＩ編集画面３００において編集対象の画面構成要素が選択されていれば、その画面構成要素と対応付けられているキーワードが初期値として表示される。従って、ユーザが対応するキーワードを把握していない場合でも、編集中の画面構成要素と関連する画面構成要素を検索するためのキーワードを容易に指定することができる。
【００６４】
また、キーワードリスト表示部４１２は、検索タブ４０１が選択された時点でＧＵＩ編集画面３００において編集対象のＧＵＩ画面が選択されていれば、その画面について、そうでなければアプリのトップ画面について、画面内に配置可能な画面構成要素の少なくとも１つと対応するキーワードをリストとして表示する領域である。そして、このリストに含まれるキーワードのうちいずれかをクリックすることにより、クリックしたキーワードをキーワード入力部４１１に入力することができる。従って、ユーザが的確なキーワードを把握していない場合でも、編集中の画面に配置可能な画面構成要素と関連する画面構成要素を検索するためのキーワードを容易に指定することができる。
【００６５】
また、検索実行ボタン４１３は、検索開始の指示を受け付けるためのボタンである。そして、これが押下された場合、ＰＣ４０は、編集対象として読み込んであるデータセットに含まれる全ての画面定義データを検索し、キーワード入力部４１１に入力されたキーワードと対応付けられている画面構成要素を抽出して、その結果を画面に表示する。
なお、編集内容表示部３１０で関連要素検索ボタン３７０が押下された場合には、以上の検索表示部４１０の表示は行わず、直ちに、編集対象となっている画面構成要素と対応するキーワードを用いて画面構成要素の検索と抽出を行って、その結果を表示する。
【００６６】
図１２に、この検索結果を表示する画面の例を示す。
図１１に示した検索実行ボタン４１３が押下された場合、検索表示部４１０の表示は、図１２に示すような、画面構成要素の検索結果を表示する検索結果表示部４２０に切り替わる。編集内容表示部３１０で関連要素検索ボタン３７０が押下された場合には、編集内容表示部３１０の表示が検索結果表示部４２０に切り替わる。
【００６７】
この画面には、まず、抽出リスト表示部４２１が含まれており、この部分には、アプリケーション毎に、検索に用いたものと同じキーワードと対応する画面構成要素のリストが表示される。各構成要素を表示する文字列としては、ユーザの使用言語と対応する名称テーブルに登録されている、名称１及び名称２の文字列を用いる。そして、これらの名称の間に「：」を挟んで表示することにより、抽出された画面構成要素が、どの画面に配置されるどの画面構成要素かをユーザが把握できるようにしている。
また、リストには、各画面構成要素と対応するチェックボックスを表示し、一括非表示ボタン４２２による一括非表示設定を行う画面構成要素をユーザが選択できるようにしている。
【００６８】
一括非表示ボタン４２２は、抽出リスト表示部４２１で選択された画面構成要素につき、一括して非表示を設定する指示を行うためのボタンである。このボタンが押下された場合、ＰＣ４０のＣＰＵは、抽出リスト表示部４２１においてチェックボックスがオンになっている全ての画面構成要素につき、画面定義データ中の「表示有無」の内容を「非表示」に設定する。そして、このことにより、特定のキーワードに関連付けられるボタン等の画面構成要素が、多岐に亘る画面に配置されていたとしても、これらを容易に漏れなく非表示に設定することができる。
【００６９】
メーカーがキーワードを用意する場合に、同じ機能に関連する画面構成要素には同じキーワードを対応付けると考えられるため、このことは、特定の機能に関連するボタン等を容易に漏れなく非表示に設定することができることを意味する。そして、ＧＵＩ上でボタンを非表示にすることににより、特定の機能の利用を禁止しようとする場合、このように、特定の機能に関連するボタン等を容易に漏れなく非表示に設定できることは、非常に有用である。
【００７０】
特に、関連要素検索ボタン３７０による検索では、ワンタッチで、編集中の画面構成要素と同じキーワードが対応付けられた画面構成要素を検索することができるため、編集中の画面構成要素と同時に編集したい画面構成要素を効率的に抽出することができる。
なお、検索結果表示部４２０には、一括非表示ボタン４２２以外に、抽出リスト表示部４２１で選択された画面構成要素につき一括して表示を設定したり、抽出リスト表示部４２１における全てのチェックボックスを一括してオン又はオフにしたりするためのボタンを設けてもよい。
【００７１】
次に、ＰＣ４０のＣＰＵが以上説明してきた画面構成要素の抽出に関する機能を実現するために実行する処理について説明する。ここで説明する処理は全て、ＰＣ４０のＣＰＵが、ＵＩカスタマイズツール２００の機能を実現するためのアプリケーションプログラムを実行することにより行うものである。
【００７２】
まず、図１３に、図１１に示した検索表示部４１０の表示処理のフローチャートを示す。この処理は、図１０に示した検索タブ４０１が選択された場合に実行するものである。
この場合、ＰＣ４０のＣＰＵは、まずステップＳ１１で、検索タブ４０１が選択された時点で表示されていた編集内容表示部３１０において編集対象の画面構成要素が選択されているか否か判断する。そして、これが選択されていない場合、キーワードリスト表示部４１２に表示させるキーワードリストの表示に必要なデータを収集すべく、ステップＳ１２に進む。
【００７３】
そしてここでは、その編集内容表示部３１０において編集対象の画面が選択されているか否か判断する。そして、選択されていれば、ステップＳ１３に進み、選択されている画面の画面定義データを参照対象とする。参照されていなければ、ステップＳ１４に進み、選択されているアプリケーションの最上位画面の画面定義データを取得して参照対象とする。
【００７４】
いずれの場合も、その後ステップＳ１５に進み、編集作業中のユーザの表示言語ＩＤと対応する、図６及び図７に示したようなキーワードテーブルを取得する。なお、表示言語ＩＤは、ＵＩカスタマイズツール２００における画面の表示に使用する言語を示すＩＤであり、ユーザ情報に含まれる使用言語の情報や、ユーザが行った使用言語の設定に従って決定することができる。
【００７５】
ステップＳ１５の後は、ステップＳ１６乃至Ｓ１９の画面定義データ走査ループを、ステップＳ１３又はＳ１４で参照対象とした画面定義データに含まれる画面構成要素を１つずつ参照しながら、全ての画面構成要素を参照するまで繰り返す。すなわち、参照対象とした画面定義データテーブルに登録されている各画面構成要素について順次、画面定義データテーブルからその画面構成要素と対応するキーワードＩＤを取得し（Ｓ１７）、ここで取得したキーワードＩＤをキーにステップＳ１５で取得したキーワードテーブルから対応するキーワード文字列を取得して保持する（Ｓ１８）処理を行う。
【００７６】
その後、ステップＳ２０に進んでＧＵＩ編集画面３００に図１１に示した検索表示部４１０の枠を表示する。この「枠」は、検索表示部４１０のうちキーワードリスト表示部４１２以外の、キーワードの内容に関わらず固定的な表示を行う部分である。そして、ステップＳ２１で、ステップＳ１８で保持したキーワード文字列のリストを、キーワードリスト表示部４１２に表示して、処理を終了する。
【００７７】
一方、ステップＳ１１で編集対象の画面構成要素が選択されていた場合、検索表示部４１０のキーワード入力部に表示させるキーワードの初期値とすべきキーワード文字列を取得すべく、ステップＳ２２に進む。
そしてこの場合、ステップＳ２２で、ステップＳ１５の場合と同様に編集作業中のユーザの表示言語ＩＤと対応するキーワードテーブルを取得し、ステップＳ２３で適当な画面定義データから編集対象として選択されている画面構成要素のキーワードＩＤを取得する。その後、ステップＳ２４で、ステップＳ１８の場合と同様、キーワードＩＤと対応するキーワード文字列をキーワードテーブルから取得して保持する。
【００７８】
そして、ステップＳ２５で、ステップＳ２０の場合と同様、検索表示部４１０の枠を表示し、ステップＳ２６で、キーワード入力部４１１の初期値として、ステップＳ２４で保持したキーワード文字列を表示し、処理を終了する。この場合、キーワードリスト表示部４１２には何も表示しなくてよい。
【００７９】
以上の処理により、ＰＣ４０は、関連要素検索ボタン３７０の押下に応じてＧＵＩ編集画面３００に検索表示部４１０を表示させ、検索に用いるキーワードの入力を受け付ける状態に移行することができる。
またこのとき、編集内容表示部３１０において編集対象のＧＵＩ画面が選択されていれば、その画面に配置し得る画面構成要素の少なくとも１つと対応するキーワードを、検索に用いるキーワードの候補としてキーワードリスト表示部４１２に表示させることができる。また、編集内容表示部３１０において編集対象の画面構成要素が選択されていれば、その画面構成要素と対応するキーワードを、検索に用いるキーワードの候補としてキーワード入力部４１１に表示させることができる。さらに、キーワードとして、編集作業に使用している言語のキーワードを表示させることができる。
【００８０】
なお、図１３に示した処理は、ステップＳ１１でＹＥＳの場合にはキーワードリストを表示する処理を実行しないようになっているが、この場合にも、編集対象として選択されている画面の画面定義データテーブルを参照対象として画面定義データ走査ループの処理を実行し、キーワードリストを表示するようにしてもよい。また、ステップＳ１１でＹＥＳの場合には、検索表示部４１０を表示せずに、ステップＳ２４で保持したキーワード文字列を用いて直ちに次に説明する検索処理を行って検索結果表示部４２０を表示するようにすることも考えられる。
【００８１】
次に、図１４及び図１５に、図１２に示した検索結果表示部４２０の表示処理のフローチャートを示す。この処理は、図１１に示した検索実行ボタン４１３が押下された場合又は図１０に示した関連要素検索ボタン３７０が押下された場合に実行するものである。
この場合、ＰＣ４０のＣＰＵは、まずステップＳ３１で、検索に用いるキーワードを保持すると共に、ステップＳ３２で、図１３のステップＳ１５の場合と同様、編集作業中のユーザの表示言語ＩＤと対応するキーワードテーブルを取得する。検索に用いるキーワードは、検索実行ボタン４１３が押下された場合には、キーワード入力部４１１に入力されていたキーワードであり、関連要素検索ボタン３７０が押下された場合には、押下時点で編集対象として選択されていた画面構成要素と対応するキーワードである。後者の場合、図１３のステップＳ２３及びＳ２４と同様な処理で、検索に用いるキーワードを取得することができる。
【００８２】
ステップＳ３２の後は、ステップＳ３３乃至Ｓ４１で、入れ子式の３つのループ処理を行う。一番外側のループは、ＵＩカスタマイズツール２００により編集中のＧＵＩを使用する各アプリを順次参照対象としてステップＳ３４乃至Ｓ４０の処理を実行するアプリケーション走査ループである。ここで参照対象とすべきアプリは、図３に示したアプリケーションのリストにより決定できる。
【００８３】
次のループは、ステップＳ３３で参照対象としたアプリが使用するＧＵＩを示す各画面定義データを順次参照対象としてステップＳ３５乃至Ｓ３９の処理を実行する画面一覧走査ループである。ここで参照対象とすべき画面定義データは、図３に示した画面一覧データに従って決定できる。
【００８４】
そして、最も内側のループは、ステップＳ３４で参照対象とした画面定義データに登録されている各画面構成要素を順次参照対象としてステップＳ３６乃至Ｓ３８の処理を実行する画面定義データ走査ループである。
そして、画面定義データ走査ループでは、まずステップＳ３６で、参照中の画面構成要素と対応するキーワード文字列を取得する。この取得は、参照中の画面定義データから、参照中の画面構成要素のキーワードＩＤを取得し、ステップＳ３２で取得したキーワードテーブルからこのキーワードＩＤと対応するキーワード文字列を取得して行うことができる。
【００８５】
次のステップＳ３７では、ステップＳ３６で取得したキーワード文字列を、ステップＳ３１で保持した検索に用いるキーワードと比較する。そして、これが一致していれば、参照中の画面構成要素は、検索により抽出すべき画面構成要素であると判断できるため、ステップＳ３８に進み、参照中の画面構成要素につき、アプリケーション識別子及び画面構成要素識別子を保持する。
そして、以上の３つの入れ子式のループ処理を全て終了すると、ステップＳ３８で保持したデータに基づき、画面構成要素の抽出結果を示す検索結果表示部４２０の表示を行うべく、ステップＳ４２に進んで図１５に示す部分の処理を行う。
【００８６】
そしてここでは、まずステップＳ４２で検索結果表示部４２０の枠を表示する。この「枠」は、検索結果表示部４２０のうち抽出リスト表示部４２１以外の、抽出された画面構成要素の内容に関わらず固定的な表示を行う部分である。
そして、ステップＳ４３で、編集作業中のユーザの表示言語ＩＤと対応する名称テーブルを取得する。その後、ステップＳ３８で識別子を保持した全てのアプリケーション、すなわち検索により抽出された画面構成要素が１つでも属するアプリケーションを参照するまで、その各アプリケーションを順次参照してステップＳ４４乃至Ｓ５０の検索結果走査ループＡの処理を行う。なお、同じアプリについて複数回アプリケーション識別子が保持されていたとしても、ここで参照対象とするのは１回のみである。
【００８７】
この検索結果走査ループＡでは、まずステップＳ４５で、アプリケーション識別子と編集作業中のユーザの表示言語ＩＤとに基づいて、参照中のアプリケーションの名称を示す文字列を図示しないテーブルから取得し、これを抽出リスト表示部４２１に表示する。その後、ステップＳ３８でデータを保持した画面構成要素のうち、参照中のアプリケーションで用いる画面構成要素に関する表示を行うべく、これらの画面構成要素を順次参照してステップＳ４６乃至Ｓ４９の検索結果走査ループＢの処理を行う。
【００８８】
この検索結果走査ループＢでは、ステップＳ４７で、画面構成要素識別子と編集作業中のユーザの表示言語ＩＤとに基づいて、参照中の画面構成要素の名称を示す文字列を名称テーブルから取得し、必要に応じてこれを加工して抽出リスト表示部４２１に表示する。そして、ステップＳ４８で、表示した画面構成要素と対応するチェックボックスを表示する。ここでは、ステップＳ４８の加工として、名称テーブルに登録されている名称１の文字列と名称２の文字列とを、「：」を挟んで連結する処理を行うようにしている。
そして、以上の検索結果走査ループＡ，Ｂが終了すると、図１２及び図１３に示した処理は終了する。
【００８９】
以上の処理により、ＰＣ４０は、検索実行ボタン４１３又は関連要素検索ボタン３７０の押下に応じて、ユーザにより指定されたキーワードと同じキーワードが対応付けられた画面構成要素のリストを、図１０に示した検索結果表示部４２０に表示することができる。このことによる効果は、図１２の説明で述べた通りである。
なお、ステップＳ３７でのキーワードの比較について、完全一致の場合だけでなく、部分一致であっても、キーワードが一致したと判断するようにしてもよい。
【００９０】
〔第２の実施形態：図１６乃至図２８〕
次に、この発明の画面編集装置の第２の実施形態について説明する。
この実施形態が第１の実施形態と異なる点は、主に、画面構成要素と対応するキーワードとして互いに上位／下位の関係を有する複数のキーワードを設定できるようにした点と、画面構成要素を検索する範囲を指定できるようにした点である。また、この第２の実施形態の画面編集装置と、その画面編集装置で編集した操作画面を表示させる画像処理装置は、キーワードが複数になったことに伴い、取り扱うデータの形式に差はあるものの、ハードウェア構成及び基本的な機能構成は、第１の実施形態の場合と同様である。
そこで、第２の実施形態については、第１の実施形態と異なる点を中心に説明する。また、第１の実施形態と実質的に同じ構成要素には、同じ符号を用いる。
【００９１】
まず、図１６乃至図２１を用いて、上位／下位の関係を有する複数のキーワードの用途について説明する。
図１６は、画像処理装置１０がドキュメントボックスアプリで使用する画面のうち、印字画面より下位の画面の遷移例を示す図である。図１７乃至図２１は、図１６に示した各画面の表示例を示す図である。
【００９２】
図１７に示す印字画面６１０は、ドキュメントボックスアプリにより蓄積文書の印刷を行う際に、蓄積文書に付加して印刷する書誌情報やスタンプ等の内容を設定するための画面のうち、最上位の画面である。そして、この画面において、この画面に配置された画面構成要素である、機密管理ナンバリング，スタンプ印字，ユーザスタンプ印字，日付印字，ページ印字のボタンを押下することにより、それぞれの印字内容についてのより詳細な設定を行うための下位の画面に移行することができる。
【００９３】
図１６は、このような印字画面６１０をスタートとする画面遷移の一部を示す図であり、この図では、四角の中に画面の名称を示し、その画面において、矢印の脇に示したボタンが押下された場合に、矢印の先の画面に移行することを示している。例えば、図１６の遷移例では、印字画面６１０において日付印字ボタン６１１を押下した場合には、表示が図１８に示す日付印字画面６２０に移行することを示している。
【００９４】
この日付印字画面６２０は、文書に付加する日付の書式や位置等を設定するための画面であり、画面上のボタンを押下することにより、項目毎に詳細な設定を行うためのさらに下位の画面に移行することができる。例えば、図１６に示した通り、書式の変更ボタン６２１を押下すると、日付の書式を設定するための図１９に示す日付の書式画面６３０に移行し、印字色ボタン６２２を押下すると、日付の印字色を設定するための図２０に示す印字色変更画面６４０に移行し、変更ボタン６２３を押下すると、日付の印字位置を設定するための図２１に示す印字位置画面６５０に移行する。
【００９５】
そして、例えば印字色変更画面６４０には、設定可能な印字色と対応するイエロー，レッド，シアン，マゼンタ，グリーン，ブルー，ブラックの７つのボタンが配置され、これらを押下することにより、日付の印字色を設定することができる。
また、日付の印字を全ページに行うか、先頭ページのみ行うかの設定は、日付印字画面６２０において、全ページボタン６２４と先頭ページのみボタン６２５により行うことができる。
【００９６】
ここで、図２２に、以上の図１７乃至図２１に示した画面に設けたボタン相互の関係をベン図として示す。
この図において、最も外側の集合６１０ａは、図１７乃至図２１に示した画面の中で最上位の印字画面６１０に関係する画面構成要素の集合を示す。また、その内側に記載した５つの楕円がそれぞれ、印字画面６１０に配置した機密管理ナンバリング，スタンプ印字，ユーザスタンプ印字，日付印字，ページ印字のボタン及び、そのボタンの押下に応じて表示される下位の画面に関係する画面構成要素の集合を示す。ただし、スペースの都合上、日付印字ボタン６１１に関する集合６２０ａのみ、集合内の要素を図示している。
【００９７】
集合６２０ａの要素としては、まず、下位の画面へ移行するための、書式の変更ボタン６２１，印字色ボタン６２２，変更ボタン６２３と対応する集合６３０ａ，６４０ａ，６５０ａがある。そして、これらの集合の要素は、ボタンの押下に応じて移行する画面に配置される画面構成要素である。また、集合６２０ａの要素には、印字ページに関する設定を行うための全ページボタン６２４及び先頭ページのみボタン６２５と対応する要素６２４ａ，６２５ａもある。
【００９８】
すなわち、各画面と対応する集合には、その画面への移行を指示するためのボタンと、その画面上に配置されるボタンとが含まれる。また、画面単位でなく、機能単位でボタン群が１つの集合を構成すると考えることもでき、ここでは、全ページボタン６２４及び先頭ページのみボタン６２５のように、１つの画面内に、特定の機能に関する設定を行うためのボタン群が配置される場合、それらも独自の集合を構成すると考えている。
また、図面を簡単にするため、図２２には、画面の移行やパラメータの値の設定を行うためのボタンのみを示したが、単なるメッセージや、ＯＫ，戻る等のボタンといった他の画面構成要素についても、配置される画面と対応する集合の要素であると考えることができる。
【００９９】
ところで、第１の実施形態では、各画面構成要素について、１つのキーワードを対応付けていた。しかし、この手法では、例えば、あるボタンにそのボタンにより設定するパラメータの値に応じたキーワードを対応付けてしまうと、そのパラメータの値が共通するボタンは容易に検索できるものの、ボタンにより設定するパラメータの項目が共通するボタンの検索は困難であるといった事態が生じる。
【０１００】
例えば、色数を指定するボタンにつき、設定するパラメータの値に着目して、「自動カラー選択」，「フルカラー」，「２色」，「単色」といったキーワードを対応付けてしまうと、これらのボタンと対応するキーワードは全て別々のものになってしまうため、「色数を指定するボタン」のような、設定するパラメータの項目という括りでは検索を行うことができない。
そこで、この第２の実施形態では、図２２に示したような画面構成要素相互の関係を利用して、各画面構成要素に、広い括りから狭い括りまで、互いに上位／下位の関係を有する複数のキーワードを対応付けるようにしている。
【０１０１】
図２２の例では、印字機能に関連する集合６１０ａに属する画面構成要素には、最上位の第１レベルのキーワードとして「印字」を対応付け、その中で、日付印字機能に関連する集合６２０ａに属する画面構成要素には、次の第２レベルのキーワードとして「日付印字」を対応付けることが考えられる。また、同様に、印字色の設定に関連する集合６４０ａに属する画面構成要素には、次の第３のレベルのキーワードとして「印字色」を対応付け、さらに、印字色変更画面６４０に配置される各画面構成要素には、「イエロー」，「レッド」等、特定の画面構成要素を示す最下位の第４のレベルのキーワードを対応付けることが考えられる。
【０１０２】
このような規則に従って対応付けるキーワードを定めると、例えば印字色変更画面６４０中のレッドボタン６４１については、上位から順に、「印字」，「日付印字」，「印字色」，「レッド」の４つのキーワードが対応付けられることになる。
また、日付印字画面６２０に配置される印字色ボタン６２２について同様な規則でキーワードを対応付けると、上位から順に、「印字」，「日付印字」，「印字色」の３つのキーワードが対応付けられる。第４レベルのキーワードは特に必要ないため、何も用意しなくてよい。しかし、印字色変更画面６４０内の画面構成要素と区別するため、第３レベルと同じ「印字色」のキーワードを対応付けることも考えられる。このように、対応付け可能な全てのレベルのキーワードを対応付けることは必須ではない。
【０１０３】
また、図２２では日付印字機能についてのみ内容を詳しく示したが、例えばスタンプ印字機能に関する画面にも印字色の設定を行うための画面があれば、その画面を表示させるためのボタンや、その画面に配置されるボタンについても、第３レベルのキーワードとして日付印字機能の場合と同様な「印字色」のキーワードを対応付けるとよい。このようにしておけば、第３レベルのキーワード「印字色」で画面構成要素の検索を行うことにより、上位の機能の違いを気にせず、印字色の設定に関連する画面構成要素を抽出することができる。
【０１０４】
また、図２２に示した印字機能以外の機能に関する画面に配置する画面構成要素についても、同様に階層的なキーワードを定めることができるが、この場合にも、下位のキーワードについて、他の機能と共通のものを用いることにより、機能横断的な抽出を可能とすることができる。
なお、このように定めたキーワードは、第１の実施形態の場合と同様、画面定義データ中に記述しておけばよい。また、画面定義データ中への記述はキーワードＩＤとして行い、言語毎にキーワードテーブルを用意してキーワードＩＤをキーワード文字列に変換できるようにするとよいことも、第１の実施形態の場合と同様である。
【０１０５】
図２３に、第２の実施形態における画面定義データの例を示す。
この図には、画面定義データを、ＸＭＬ（Extensible Markup Language）形式で記述した例を示している。
そして、図に示した中で最上位のwindow要素１つがＧＵＩ１画面分のデータを示す。window要素の属性については、id属性の値は、ＧＵＩ画面の識別情報を、function属性の値は、そのＧＵＩ画面がどのアプリで使用される画面であるかを、shape属性の値は、ＧＵＩ画面の背景として使用する画像データのファイル名を示す。
【０１０６】
また、window要素の子要素であるitem要素１つが、その画面に配置可能な画面構成要素１つ分のデータを示す。そして、item要素の属性の値が、図４に示した画面定義データテーブルにおける各設定項目の内容を示し、id属性が画面構成要素の「識別子」を、type属性が「種別」を、x属性及びy属性が「座標」を、w属性及びh属性が「サイズ」を、shape属性が「形状」を、font属性が「フォントサイズ」を、visible属性が「表示有無」を、それぞれ示す。visible属性については、「true」が「表示」を、「false」が「非表示」を示す。
【０１０７】
また、２番目のitem要素が有するcustomize属性の値は、visible属性の値を「false」に設定可能であるか否か、すなわち画面構成要素を非表示できるか否かを示し、「false」は、これが不可であることを示す。一部の画面構成要素については、非表示にしてしまうとＧＵＩの動作に不都合が生じることがあるため、このような画面構成要素を常に「表示」にしておけるように、このcustomize属性を設けている。図の例では、２番目のitem要素はＯＫボタンを示すものであり、これを非表示にしてしまうと、設定内容を確定できなくなってしまい、ＧＵＩの動作に不都合が生じると考えられるため、このvisible属性の値を「false」に設定している。
【０１０８】
また、キーワードＩＤは、item要素の子要素であるkeyword要素の属性として記述している。図２３に示した例では、４つのレベルのキーワードを設定可能であり、それぞれのレベルのキーワードのＩＤを、kw1，kw2，kw3，kw4の属性値として記述できる。あるレベルのキーワードを設定しない場合には、単に対応する属性値を記述しなければよい。
【０１０９】
図２４には、キーワードテーブルの例を示す。
このキーワードテーブルも、画面定義データと同様、ＸＭＬ形式で記述することができる。そしてここでは、図中で最上位のmessage_list要素１つが、１つのキーワードテーブルの内容を示し、language属性の値が、このテーブルがどの言語のキーワード文字列を記述したものであるかを示す。また、message_list要素の子要素であるmessage要素１つが、１つのキーワードに関するデータを示す。すなわち、message要素のid属性の値がキーワードＩＤを、string属性の値がこれと対応するキーワード文字列を、それぞれ示す。
【０１１０】
なお、キーワードテーブルには、キーワードＩＤがどのレベルのキーワードを示すものかを記述する必要はない。また、同じキーワードＩＤが、複数の異なるレベルのキーワードを示すために使われていても、全く問題ない。
また、図示は省略するが、名称テーブルも、キーワードテーブルと同様にＸＭＬ形式で記述することができる。例えば、message要素のid属性の値が画面構成要素ＩＤを、string属性の値がこれと対応する名称の文字列を、それぞれ示すようにすればよい。図８，図９に示したように名称を複数登録する場合には、string1属性，string2属性等として、これらを記載できるようにすればよい。
【０１１１】
次に、図２５に、第２の実施形態における検索表示部の表示例を示す。
第２の実施形態においても、ＧＵＩ編集画面３００において検索タブ４０１が選択された場合にＰＣ４０が検索表示部の表示を行うことは第１の実施形態と同様であるが、その内容は、図２５に示したようなものとしている。
すなわち、検索表示部４１０′には、検索開始の指示を受け付けるための検索実行ボタン４１３の他には、検索範囲設定部４３０，各レベルのキーワード選択部４４１〜４４４，検索条件設定部４５１を設けている。
【０１１２】
このうち、検索範囲設定部４３０は、画面構成要素の検索を行う際の検索範囲の指定を受け付ける部分であり、アプリ毎にチェックボックスを設け、そのオン／オフにより、各アプリで使用するＧＵＩのデータを検索範囲に含めるか否かを設定できるようにしている。どのアプリについてチェックボックスを設けるかは、例えば、編集対象としてＰＣ４０に読み込んである画面定義データにつき、window要素のfunction属性の値をサーチして決定することができる。
【０１１３】
キーワード選択部４４１〜４４４は、検索に使用する第１〜第４レベル（項目１〜項目４）のキーワードの選択を受け付ける部分であり、項目４（第４レベル）について選択を受け付けるキーワード選択部４４４について示しているように、プルダウンメニュー４４５により、キーワードの選択を受け付けるものである。プルダウンメニューに選択肢としてどのようなキーワードを表示するかについては、その表示処理の説明において後述する。
【０１１４】
検索条件設定部４５１は、検索の際にどのレベルのキーワードを考慮するかの設定を受け付ける部分である。検索条件設定部４５１はテキストボックスであり、ユーザが適宜に論理式を入力することができる。図では、項目１乃至項目４の全てのキーワードについてＡＮＤ検索を行う設定がなされた例を示している。また、テキストボックスではなく、例えば、アンド検索に使用するキーワードの項目の選択をチェックボックス等により受け付ける形式とすることも考えられる。
【０１１５】
そして、このような検索表示部４１０′において、ユーザにより検索範囲，キーワード及び検索条件の設定がなされた後、検索実行ボタン４１３が押下された場合、ＰＣ４０のＣＰＵは、編集対象として読み込んである全ての画面データを検索し、指定された条件に一致する画面構成要素を抽出して、第１の実施形態で図１２を用いて説明したような検索結果表示部４２０に表示する。この画面については、第１の実施形態の場合と同じ形式のものを用いることができる。
【０１１６】
次に、ＰＣ４０のＣＰＵが以上説明してきた画面構成要素の抽出に関する機能を実現するために実行する処理について説明する。ここで説明する処理も全て、ＰＣ４０のＣＰＵが、ＵＩカスタマイズツール２００の機能を実現するためのアプリケーションプログラムを実行することにより行うものである。
まず、図２６に、検索表示部４１０′におけるプルダウンメニューの表示処理のフローチャートを示す。この処理は、図２５に示した検索表示部４１０′においてプルダウンメニューを開くボタンが押下された場合に実行するものである。
【０１１７】
この処理においては、まずステップＳ６１で、どの項目のキーワード選択部においてプルダウンメニューを開くボタンが押下されたかを判断する。そして、これが項目１〜４のいずれであるかに応じて、ステップＳ６２〜Ｓ６５のいずれかに進み、検索項目及び参照項目を設定する。
【０１１８】
具体的には、項目１のキーワード選択部４４１においてボタンが押下された場合には、ステップＳ６２で検索条件を「なし」に設定すると共に、参照項目を「項目１」に設定する。項目２のキーワード選択部４４２においてボタンが押下された場合には、ステップＳ６３で検索条件を「項目１」に設定すると共に、参照項目を「項目２」に設定する。項目３のボタンが押下された場合には、ステップＳ６４で検索条件を「項目１＆項目２」に設定すると共に、参照項目を「項目３」に設定する。項目４のボタンが押下された場合には、ステップＳ６５で検索条件を「項目１＆項目２＆項目３」に設定すると共に、参照項目を「項目４」に設定する。すなわち、ボタンが押下されたキーワード選択部と対応する項目を参照項目に、それより上位の項目を検索条件に設定する。
【０１１９】
そして、ステップＳ６２〜Ｓ６５の後は、ステップＳ６６乃至Ｓ７１で、入れ子式の２つのループ処理を行う。
外側のループは、ＵＩカスタマイズツール２００により編集中のＧＵＩのデータに含まれる全ての画面定義データを順次参照対象としてステップＳ６７乃至Ｓ７０の処理を実行する画面一覧走査ループである。
【０１２０】
内側のループは、ステップＳ６６で参照対象とした画面定義データに含まれる各画面構成要素を順次参照対象としてステップＳ６８及びＳ６９の処理を実行する画面定義データ走査ループである。
この画面定義データ走査ループでは、まずステップＳ６８で、参照中の画面構成要素に関する検索項目の全てのキーワードＩＤが、現在その項目について選択されているキーワードのキーワードＩＤと一致するか否か判断する。この検索項目は、ステップＳ６２〜Ｓ６５で設定した項目であり、また、各項目について選択されているキーワードのキーワードＩＤは、プルダウンメニューによりキーワード文字列が選択された際に、キーワード列と対応付けて記憶しておけばよい。また、検索項目が「なし」の場合、ステップＳ６８の判断は常にＹＥＳとし、検索項目についてキーワードが未選択の場合は、その項目についてはキーワードＩＤが常に一致しているとする。
【０１２１】
そして、ステップＳ６８でＹＥＳの場合、ステップＳ６９に進み、参照中の画面構成要素に関する参照項目のキーワードＩＤを保持し、ステップＳ７０に進む。ＮＯの場合は、そのままステップＳ７０に進む。
これらの２つの入れ子式のループ処理を全て完了すると、ＵＩカスタマイズツール２００によりＧＵＩに配置可能な画面構成要素のうち、ボタンが押下された項目より上位の項目について現在選択されているものと同じキーワードが設定されている全ての画面構成要素につき、ボタンが押下された項目のキーワードＩＤを保持することができる。
【０１２２】
これらの処理の後、次のステップＳ７２では、編集作業中のユーザの表示言語ＩＤと対応するキーワードテーブルを取得する。表示言語ＩＤについては、図１３のステップＳ１５の場合と同様に把握できる。そしてその後、ステップＳ７３乃至Ｓ７５のキーワードＩＤ走査ループを、ステップＳ６９で保持した全種類のキーワードＩＤを順次参照しながら繰り返す。すなわち、ステップＳ７２で取得した文字列変換テーブルから参照中のキーワードＩＤと対応するキーワードＩＤを取得して保持する。なお、ステップＳ６９では同じキーワードＩＤが複数回保持される場合もあるが、ステップＳ７３で参照対象とするのは、１種類につき１回のみである。
【０１２３】
そして、このキーワードＩＤ走査ループの処理により、プルダウンメニューに選択肢として表示すべきキーワード文字列のリストを作成できるため、次のステップＳ７６で、そのリストに従って、ボタンが押下された項目のキーワードの選択を受け付けるプルダウンメニューを表示して、処理を終了する。
【０１２４】
以上の処理により、上位から順に検索に使用するキーワードを選択していく場合に、既に選択したキーワードに関連する下位のキーワードを容易に選択できるようなプルダウンメニューを自動的に作成でき、検索に使用する複数のキーワードを効率よく選択可能とすることができる。特に、全キーワードについてアンド検索を行う場合には、段階的に検索対象を絞り込めるようなキーワードの選択が可能となる。
【０１２５】
次に、図２７及び図２８に、図２５に示した検索表示部４１０′において検索実行が指示された場合に実行する検索結果の表示処理のフローチャートを示す。この処理は、図２５に示した検索実行ボタン４１３が押下された場合に実行するものであり、検索結果の表示形式は、第１の実施形態で図１２を用いて説明したものと同じである。
【０１２６】
この場合、ＰＣ４０のＣＰＵは、まずステップＳ８１で、検索表示部４１０′において受け付けた、検索対象のアプリ、検索に用いる各項目のキーワード及び検索条件の指定内容を保持すると共に、ステップＳ８２で、編集作業中のユーザの表示言語ＩＤと対応するキーワードテーブルを取得する。表示言語ＩＤについては、図１３のステップＳ１５の場合と同様に把握できる。
その後、ステップＳ８３〜Ｓ９１で、入れ子式の３つのループ処理を行う。一番外側のループは、ステップＳ８１で保持した検索対象の各アプリを順次参照対象としてステップＳ８４乃至Ｓ９０の処理を実行するアプリ走査ループである。
【０１２７】
次のループは、ステップＳ８３で参照対象としたアプリが使用する各画面定義データを順次参照対象としてステップＳ８５乃至Ｓ８９の処理を実行する画面一覧走査ループである。ここで参照対象とすべき画面定義データは、図３に示した画面一覧データにより決定できる。
そして、最も内側のループは、ステップＳ８４で参照対象とした画面定義データに含まれる各画面構成要素を順次参照対象としてステップＳ８６乃至Ｓ８８の処理を実行する画面定義データ走査ループである。
【０１２８】
そして、画面定義データ走査ループでは、まずステップＳ８６で、参照中の画面構成要素と対応付けられている各項目のキーワードを取得する。この取得は、参照中の画面定義データから、参照中の画面構成要素と対応するキーワードＩＤを取得し、ステップＳ８２で取得したキーワードテーブルからこのキーワードＩＤと対応するキーワード文字列を取得して行うことができる。
【０１２９】
次のステップＳ８７では、ステップＳ８６で取得したキーワードを、ステップＳ８１で保持した検索に用いるキーワードと項目毎に比較する。そして、ステップＳ８１で保持した検索条件が示す項目について、これらが一致していれば、参照中の画面構成要素は、検索により抽出すべき画面構成要素であると判断できる。そこでこの場合、ステップＳ８８に進み、参照中の画面構成要素につき、どのアプリが使用する画面に含まれるかを示すアプリケーション識別子（window要素のfunction属性）、および画面構成要素自身の識別子である画面構成要素識別子（item要素のid属性）を保持する。
【０１３０】
そして、以上の３つの入れ子式のループ処理を全て終了すると、ステップＳ８８で保持したデータに基づき、画面構成要素の抽出結果を示す検索結果表示部４２０の表示を行うべく、ステップＳ９２に進んで図２８に示す部分の処理を行う。
そしてここでは、まずステップＳ９２で検索結果表示部４２０の枠を表示する。この「枠」は、検索結果表示部４２０のうち抽出リスト表示部４２１以外の、抽出された画面構成要素の内容に関わらず固定的な表示を行う部分である。
その後、ステップＳ９３で、編集作業中のユーザの表示言語ＩＤと対応する名称リストを取得する。
【０１３１】
次に、ステップＳ９４〜Ｓ１００で、入れ子式の２つのループ処理を行う。外側のループは、ステップＳ８８で識別子を保持した全てのアプリを順次参照対象としてステップＳ９５乃至Ｓ９９の処理を実行する検索結果走査ループＡである。なお、同じアプリについて複数回アプリケーション識別子が保持されていたとしても、ここで参照対象とするのは１回のみである。
そして、ステップＳ９５では、参照中のアプリの名称文字列を、アプリケーション識別子と編集作業中のユーザの表示言語ＩＤとに基づいて図示しないテーブルから取得し、検索結果表示部４２０のうち抽出リスト表示部４２１に表示する。
【０１３２】
その後、ステップＳ９６乃至Ｓ９９の検索結果走査ループＢで、ステップＳ８８で識別子を保持した画面構成要素のうち、対応するアプリケーション識別子が参照中のアプリと一致するものを順次参照対象としてステップＳ９７及びＳ９８に示す処理を実行する。すなわち、ステップＳ９７で、参照中の画面構成要素の名称を示す文字列を、画面構成要素識別子と、ステップＳ９３で取得した文字列テーブルとに基づいて取得し、必要に応じてこれを加工して、抽出した画面構成要素を表す文字列として抽出リスト表示部４２１に表示する。また、ステップＳ９８で、その表示した画面構成要素と対応するチェックボックスを抽出リスト表示部４２１に表示する。
そして、ステップＳ９４〜Ｓ１００のループ処理が全て終了すると、図２８の処理は終了する。
【０１３３】
以上の処理により、ＰＣ４０は、検索実行ボタン４１３の押下に応じて、ユーザにより指定された複数のキーワード及び検索条件に従い、指定されたキーワードと同じキーワードが対応付けられた画面構成要素のリストを表示することができる。画面構成要素がどのアプリが使用する画面に配置されるものかに応じて、画面構成要素を分類して表示することができる。
この実施形態においては、このように、各画面構成要素に、上位／下位の関係を有する複数のキーワードを設定できるようにしているため、体系付けられたキーワードによる検索が可能となり、目的の画面構成要素の詳細な絞り込みを容易に行うことができる。
【０１３４】
〔変形例：図２９〕
以上で実施形態の説明を終了するが、この発明において、装置の構成、具体的な処理内容、表示する画面の内容や用途、データの形式等が、以上説明してきた実施形態において具体的に説明したものに限られないことは、もちろんである。
例えば、画面構成要素の検索結果を、図１２に示した検索結果表示部に代えて、図１１に示した編集内容表示部３１０の脇に表示させるようにしてもよい。
【０１３５】
図２９に、この構成を採用した場合の、検索結果表示画面の例を示す。
この例では、画面構成要素の検索結果を、ＧＵＩ画面に対する編集操作を受け付ける編集内容表示部３１０の脇に、抽出リスト３８０として表示している。このリストの書式及びリストの表示に必要な処理は、上述の各実施形態で述べた抽出リスト表示部４２１の場合と同様でよい。図２７の例では、表示スペースの都合上、図８に示した「名称２」のみで、抽出された画面構成要素の表示を行っているが、「名称１」も用いた表示を行うことももちろん可能である。
【０１３６】
また、抽出リスト３８０の画面構成要素はマウスのクリック等により選択可能であり、ＰＣ４０は、カーソル３８１により選択された画面構成要素を示す。またこのとき、抽出リスト３８０において選択された画面構成要素を、編集内容表示部３１０において編集操作を受け付ける画面構成要素として選択し、その画面構成要素をユーザが特定できるように強調する表示を行う。例えば、符号Ａで示すように、選択された画面構成要素を枠線で囲う表示を行う。
また、抽出リスト３８０において選択された画面構成要素が現在表示中のＧＵＩ画面に表示されていないものであったり、現在タブにより選択されているアプリと異なるアプリで使用されるものであったりした場合には、ＧＵＩ画面やタブの選択も、抽出リスト３８０において選択された画面構成要素を含むものに切り換える。
【０１３７】
このような表示を行うようにすれば、キーワード検索により抽出された画面構成要素がどんな画面に配置されるどのような画面構成要素かをユーザが容易に認識できる上、単にリストから画面構成要素を選択するだけで、直ちに編集内容表示部３１０において抽出された画面構成要素に関する編集操作を行うことができるため、効率的な編集操作が可能となる。
【０１３８】
なお、選択された画面構成要素を強調する表示としては、枠囲いの他、点滅させる、色を変える、濃度を変える、ハッチングを付す等、種々のものが考えられる。また、抽出リスト表示部４２１においていずれかの画面構成要素を示す文字列がクリックされた場合に、その画面構成要素が選択された状態の編集内容表示部３１０及び抽出リスト３８０の表示に移行するようにしてもよい。
【０１３９】
また、抽出リスト３８０において選択された画面構成要素だけでなく、抽出された画面構成要素のうち、選択された画面構成要素と同じ画面に配置される画面構成要素も、同様に強調して表示してもよい。あるいは、抽出リスト３８０における画面構成要素と無関係に、編集内容表示部３１０へＧＵＩ画面のプレビューを表示させる場合に、その画面に表示される画面構成要素のうち、キーワード検索により抽出された画面構成要素を強調して表示するようにしてもよい。
【０１４０】
また、抽出リスト３８０の表示につき、抽出した画面構成要素がどのＧＵＩ画面に配置されるものであるかがわかるように、アプリ毎だけでなく、ＧＵＩ画面毎に分けてリストを表示するようにしてもよい。第２の実施形態のように、各画面構成要素に系統的に複数のキーワードを設定している場合には、画面構成要素の名称に代えて、またはこれに加えて、抽出結果をキーワードそのものを用いて表示したり、さらに、抽出結果を上位のキーワードについてソートして表示し、かつ上位から下位まで、複数のキーワードを並べて表示することによっても、画面構成要素がどの画面に属するものかを分かり易くすることができる。画面構成要素の種別を、キーワードと合わせて表示するようにしてもよい。
【０１４１】
また、キーワードにつき、各言語のキーワード文字列を直接画面定義データ内に記述することは妨げられない。逆に、キーワードＩＤを画面定義データ内に記述せず、これとは別のテーブルに記載することも考えられる。この場合、例えば、画面構成要素の識別子と、キーワードＩＤ又はキーワード文字列とを対応付けるテーブルを別途用意すればよい。
【０１４２】
また、この発明を、画像処理装置以外の装置で用いるＧＵＩの編集を行う画面編集装置に適用してもよいことはもちろんである。例えば、この発明は、ネットワーク家電，自動販売機，医療機器，電源装置，空調システム，ガス・水道・電気等の計量システム，自動車，航空機，汎用コンピュータ等の任意の電子装置について、その装置の備える表示器に表示させる操作画面を編集する装置として、実現できる。
また、画面に表示させる操作部の構成も、ボタンに限られない。
【０１４３】
また、この発明の記録媒体は、コンピュータにハードウェアを制御させて上述したような画面編集装置として機能させるためのプログラムを記録した記録媒体である。このような記録媒体からこのプログラムをＲＡＭに読み出させてＣＰＵに実行させることにより、上述した実施形態や変形例と同様の効果を得ることができる。また、このようなプログラムを、記録媒体の配布によらず、ダウンロード等により提供することも可能である。
また、以上述べてきた各実施形態の構成及び変形例は、矛盾しない範囲で適宜組み合わせて適用することも可能である。
【産業上の利用可能性】
【０１４４】
以上説明してきたように、この発明の画面編集装置又は画面編集方法によれば、表示器に表示させる画面を編集する場合に、ユーザが編集すべき箇所を効率よく発見できるようにし、編集操作の効率を改善することができる。
従って、この発明を適用することにより、表示器に表示させる画面を容易にカスタマイズ可能な編集環境を提供することができる。
【図面の簡単な説明】
【０１４５】
【図１】この発明の第１の実施形態である画面編集装置により編集した画面データに基づいて画面を表示する装置の例である画像処理装置のハードウェア構成を示すブロック図である。
【図２】図１に示した画像処理装置及びＰＣの機能のうち、ＧＵＩの表示及びカスタマイズに関する機能の構成を示す、機能ブロック図である。
【図３】図１に示した画像処理装置が使用するＧＵＩの内容を規定するデータセットの構成を示す図である。
【図４】図３に示した画面定義データの内容をより詳細に示す図である。
【図５】図４に示した画面定義データに従って表示されるＧＵＩ画面の例を示す図である。
【０１４６】
【図６】この発明の実施形態である画面編集装置が使用するキーワードテーブルの例を示す図である。
【図７】その別の例を示す図である。
【図８】この発明の実施形態である画面編集装置が使用する名称テーブルの例を示す図である。
【図９】その別の例を示す図である。
【図１０】図２に示したＰＣのＵＩカスタマイズツールがＧＵＩ画面の編集操作を受け付けるためのＧＵＩ編集画面の表示例を示す図である。
【０１４７】
【図１１】ＵＩカスタマイズツールがキーワードを用いた画面構成要素の検索及び抽出の指示を受け付けるための画面の表示例である。
【図１２】同じくキーワードを用いた画面構成要素の検索結果を表示する画面の表示例を示す図である。
【図１３】図２に示したＰＣのＣＰＵが実行する、図１１に示した検索表示部の表示処理のフローチャートである。
【図１４】同じく図１２に示した検索結果表示部の表示処理のフローチャートである。
【図１５】その続きのフローチャートである。
【０１４８】
【図１６】画像処理装置がドキュメントボックスアプリで使用する画面のうち、印字画面より下位の画面の遷移例を示す図である。
【図１７】図１６に示した印字画面の内容を示す図である。
【図１８】図１６に示した日付印字画面の内容を示す図である。
【図１９】図１６に示した書式画面の内容を示す図である。
【図２０】図１６に示した印字色変更画面の内容を示す図である。
【０１４９】
【図２１】図１６に示した印字位置画面の内容を示す図である。
【図２２】図１７乃至図２１に示した画面に設けたボタン相互の関係を示す図である。
【図２３】この発明の第２の実施形態で用いる画面定義データの例を示す図である。
【図２４】同じくキーワードテーブルの例を示す図である。
【図２５】この発明の画面編集装置の第２の実施形態であるＰＣが表示する検索表示部の例を示す図である。
【０１５０】
【図２６】そのＰＣのＣＰＵが実行する、検索表示部におけるプルダウンメニューの表示処理のフローチャートである。
【図２７】同じく検索表示部において検索実行が指示された場合に実行する検索結果の表示処理のフローチャートである。
【図２８】その続きのフローチャートである。
【図２９】この発明の変形例において画面編集装置であるＰＣが画面構成要素の検索結果を表示する画面の例を示す図である。
【符号の説明】
【０１５１】
１０：画像処理装置、１１：ＣＰＵ、１２：ＲＯＭ、１３：ＲＡＭ、１４：ＮＶＲＡＭ、
１５：パネルＩ／Ｆ、１６：エンジンＩ／Ｆ、１７：通信Ｉ／Ｆ、１８：操作パネル、
１９：エンジン部、２０：システムバス、３０：ネットワーク、４０：ＰＣ、１１０：制御部、１１１：通信手段、１１２：画面定義データ管理手段、１１３：画面生成手段、１１４：個人認証管理手段、１２０：記憶部、１２１：画面定義データ記憶手段、１２２：認証データ記憶手段、２００：ＵＩカスタマイズツール、２０１：通信手段、２０２：画面定義データ入出力手段、２０３：画面構成要素抽出手段、２１０：カスタマイズ手段、３００：ＧＵＩ編集画面、３１０，３１０′：編集内容表示部、３７０：関連要素検索ボタン、４１０：検索表示部、４１１：キーワード入力部，４１２：キーワードリスト表示部，４１３：検索実行ボタン、４２０：検索結果表示部、４２１：抽出リスト表示部、４２２：一括非表示ボタン
【図１】
0005097476.tif 000002
【図２】
0005097476.tif 000003
【図３】
0005097476.tif 000004
【図４】
0005097476.tif 000005
【図５】
0005097476.tif 000006
【図６】
0005097476.tif 000007
【図７】
0005097476.tif 000008
【図８】
0005097476.tif 000009
【図９】
0005097476.tif 000010
【図１１】
0005097476.tif 000011
【図１２】
0005097476.tif 000012
【図１３】
0005097476.tif 000013
【図１４】
0005097476.tif 000014
【図１５】
0005097476.tif 000015
【図１６】
0005097476.tif 000016
【図１７】
0005097476.tif 000017
【図１８】
0005097476.tif 000018
【図１９】
0005097476.tif 000019
【図２０】
0005097476.tif 000020
【図２１】
0005097476.tif 000021
【図２２】
0005097476.tif 000022
【図２３】
0005097476.tif 000023
【図２４】
0005097476.tif 000024
【図２５】
0005097476.tif 000025
【図２６】
0005097476.tif 000026
【図２７】
0005097476.tif 000027
【図２８】
0005097476.tif 000028
【図１０】
0005097476.tif 000029
【図２９】
0005097476.tif 000030