説明

情報処理装置及び属性情報更新方法

【課題】特定のGUI部品に対して統一した属性設定を行う手間を軽減すると共に、属性設定の抜けを防止することを目的とする。
【解決手段】画面に表示されるGUI部品の属性情報の設定に関する属性設定ファイルに基づいて、GUI部品の属性設定情報を作成する属性設定情報作成手段と、属性設定情報に含まれる検索条件を用いて、GUI部品を検索し、検索条件に合致するGUI部品をグループ化して、グループ化したGUI部品の属性情報を、属性設定情報に含まれる属性情報を用いて更新する属性情報更新手段と、を有することによって課題を解決する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置及び属性情報更新方法に関する。
【背景技術】
【0002】
近年、ソフトウェア開発においては、ソフトの部品化(コンポーネント化)による機能単位での開発のための取り組みがなされ、部品単位でのソフトウェア開発によるシステムの保守性向上や、部品の再利用による開発生産性向上が目指されている。
【0003】
その中でも、GUIコンポーネント開発においては、ウィンドウ、ボタン等のGUI部品の配置情報等の画面デザインと、GUI部品の表示や制御を行うプログラム部分と、を分離する。そして、プログラム部分の変更なしに、独立した設定ファイルの変更等によって、画面デザインを効率よくカスタマイズするための技術が必要とされている。
【0004】
関連する公知の技術として、Xresourceファイル或いは、Xdefaultファイルと呼ばれる設定ファイルを用いた、X−Window(登録商標) Systemにおけるアプリケーション設定の管理技術がある。これは、X−Window System上で動作する各アプリケーションについて、プログラムの変更なしに外部設定ファイルの変更のみで、画面デザインカスタマイズを可能としている。Xresourceによって設定することが可能なプロパティはアプリケーションによって異なるが、アプリケーションで実装されているボタンやウィンドウ等のGUI部品のクラス単位で、大きさやスタイル、色等のプロパティ設定を行うことが可能である。この技術を用いることによって、あるアプリケーションで使用されているボタンの背景色を一括して特定の色に設定する等の操作が可能である。
【0005】
以下に、X−Window−System上で動作するアプリケーション(エディタ)の1つであるEmacsでのXresourceファイルの設定例を挙げる。
【0006】
! Emacs
emacs*Background: white !テキストエリアの背景色は白色
emacs*Foreground: black !テキストエリアの前景色は黒色
! メニューバーの背景と文字の色
emacs*menubar.background: SlateGray !メニューバーの背景色はSlateGray
emacs*menubar.foreground: PaleGreen !メニューバーの前景色はPaleGreen
! ポップアップメニューの背景と文字の色
emacs*popup.background: SlateGray !ポップアップメニューの背景色はSlateGray
emacs*popup.foreground: PaleGreen !ポップアップメニューの前景色はPaleGreen
【0007】
上記のような記述をXresourceファイルに加え、設定を反映させることで、テキストエリアやメニュ−バー、ポップアップメニューの前景色、背景色を設定することが可能である。しかし、この手法によるプロパティの設定は、GUI部品クラス単位でしか実行することができないため、特定のGUI部品クラスの内、一部のGUI部品のプロパティのみ設定を変更するという操作に対応できない。
【0008】
また、特許文献1には、定型的な画面を構成する複数のGUI部品をグループ化し、グループ化されたGUI部品のレイアウト情報を辞書データとして一元管理する技術が開示されている。特許文献1では、これによって、一元管理された辞書データを参照し、一貫したGUI部品の自動レイアウトを可能としている。
【0009】
例えば、ある処理を開始する際によく表示されるOKボタン、Cancelボタンを表示するダイアログの画面デザインを行う際には、予めOKボタン、Cancelボタンをグループ化し、レイアウト情報を辞書データとして登録しておく。このことで、OKボタン、Cancelボタンを表示するダイアログの画面デザインを一元的に管理することが可能である。
【0010】
【特許文献1】特開平09−106337号公報
【発明の開示】
【発明が解決しようとする課題】
【0011】
しかしながら、X−window−SystemにおけるXresourceファイルによるプロパティの設定では、GUI部品プロパティの設定をGUI部品クラス単位に実行する。そのため、特定のGUI部品クラスの内、一部のGUI部品のプロパティのみ設定を変更するということができない。また、特許文献1によるプロパティの設定では、定型的な画面構成における1画面中のGUI部品についてGUI部品プロパティの一括設定を行う。そのため、異なる画面構成を持つ複数画面で使用されるGUI部品のプロパティ設定を一括して行うことができない。
【0012】
したがって、任意のGUI画面内で定義されているGUI部品の内、特定のGUI部品に対して一貫したプロパティ設定を行うには、GUI画面毎に個別にプロパティ設定を行う必要があり、非常に手間がかかるという問題がある。また、手作業でGUI部品のプロパティを1つ1つ設定するため、設定の抜け等が発生し、一貫した設定を行うことが困難であるという問題がある。
【0013】
本発明はこのような問題点に鑑みなされたもので、特定のGUI部品に対して統一した属性設定を行う手間を軽減すると共に、属性設定の抜けを防止することを目的とする。
【課題を解決するための手段】
【0014】
そこで、本発明は、画面に表示されるGUI部品の属性情報の設定に関する属性設定ファイルに基づいて、GUI部品の属性設定情報を作成する属性設定情報作成手段と、前記属性設定情報に含まれる検索条件を用いて、GUI部品を検索し、前記検索条件に合致するGUI部品をグループ化して、前記グループ化したGUI部品の属性情報を、前記属性設定情報に含まれる属性情報を用いて更新する属性情報更新手段と、を有することを特徴とする。
【0015】
係る構成とすることにより、検索条件に基づいてGUI部品をグループ化し、グループ化したGUI部品のグループに対して一貫した属性情報の更新を行う。よって、特定のGUI部品に対して統一した属性設定を行う手間を軽減すると共に、属性設定の抜けを防止することができる。
【0016】
また、本発明は、属性情報更新方法及びプログラムとしてもよい。
【発明の効果】
【0017】
本発明によれば、特定のGUI部品に対して統一した属性設定を行う手間を軽減すると共に、属性設定の抜けを防止することができる。
【発明を実施するための最良の形態】
【0018】
以下、本発明の実施形態について図面に基づいて説明する。
【0019】
図1は、情報処理装置(コンピュータ)のハードウェア構成の一例を示す図である。図1に示されるように情報処理装置は、ハードウェア構成として、CPU11を含む。
CPU11が、記憶装置13に記憶されているプログラムに基づき処理を行うことによって、後述する各機能、又はフローチャートに係る処理を実現する。
【0020】
CPU11には、バス10を介して、入力装置12、記憶装置13及び表示装置14が接続されている。記憶装置13は、例えば、ROM、RAM、ハードディスク装置等からなり、上述したプログラム以外に、プログラムに基づく処理で用いられるファイルや情報等を記憶する。表示装置14は、画面等を表示するディスプレイである。入力装置12は、情報を入力等するキーボード及び/又はマウスである。
【0021】
図2は、情報処理装置の機能構成の一例を示す図である。
画面定義ファイル101は、情報処理装置の画面に表示されるグラフィカルユーザインタフェースの外観、即ち、画面を構成するGUI部品(ウィンドウやボタン等の種類、形、大きさ、数、位置、背景、内容等)に関する情報を定義するファイルである。なお、画面定義ファイル101の一例は、後述する図4に示す。
【0022】
GUI部品情報102は、画面を構成する各GUI部品に関する情報を、メモリイメージとして保持するものである。各GUI部品情報102は、GUI部品を特定するID情報、GUI部品の種類(ボタン、ウィンドウ等)を表すGUI部品タイプ情報、GUI部品の各プロパティ(大きさ、位置、背景、表示テキスト等)を表すGUI部品プロパティ情報を構成要素として有する。なお、GUI部品情報102で記述されるGUI部品プロパティの種類は、GUI部品タイプによって異なる。
【0023】
GUI部品情報作成部103は、画面定義ファイル101を読み出し、画面定義ファイル101に基づき、GUI部品情報102を作成する。
GUI部品プロパティ設定ファイル104は、GUI部品情報102に記述されているGUI部品のプロパティ(大きさ、位置、背景、表示テキスト等)の変更を指定する設定ファイルである(属性設定ファイル)。
【0024】
GUI部品プロパティ設定情報105は、GUI部品プロパティ設定ファイル104に記述された、GUI部品プロパティの変更に関する情報を、メモリイメージとして保持するものである。各GUI部品プロパティ設定情報105には、GUI部品プロパティ設定情報105を特定するID情報、プロパティ設定を行うGUI部品を検索するための検索条件、条件に合致するGUI部品に対して設定する設定プロパティ情報を構成要素として有する。
【0025】
GUI部品プロパティ設定情報作成部106は、GUI部品プロパティ設定ファイル104を読み出し、GUI部品プロパティ設定ファイル104に基づいて、GUI部品プロパティ設定情報(属性設定情報)105を作成する(属性設定情報作成)。
GUI部品プロパティ設定選択情報107は、GUI部品プロパティ設定情報105の内、設定を有効にするID情報が記述されている。
【0026】
GUI部品プロパティ設定選択部108は、ユーザの指定によって、GUI部品プロパティ設定情報105の内、設定を有効にするGUI部品プロパティ設定情報105を選択する。そして、GUI部品プロパティ設定選択部108は、選択したGUI部品プロパティ設定情報105を示すGUI部品プロパティ設定選択情報107を作成する。
【0027】
GUI部品プロパティ更新部109は、GUI部品情報102を、GUI部品プロパティ設定情報105と、GUI部品プロパティ設定選択情報107の指定と、に基づいて更新する(属性情報更新)。
【0028】
図3(a)は、GUI部品情報の更新処理の一例を示すフローチャートである。なお、以下に示すフローチャートは、アプリケーションの画面デザイン変更を促すコマンド実行やメニュー選択によるGUI部品プロパティ設定選択によって開始される。
【0029】
ステップS201において、GUI部品プロパティ更新部109は、GUI部品情報102を取得する。ここで、GUI部品情報102には、1個以上のGUI部品情報が記述されている。
ステップS202において、GUI部品プロパティ更新部109は、GUI部品プロパティ設定情報105を取得する。ここで、GUI部品プロパティ設定情報105には、0個以上のGUI部品プロパティ設定情報が記述されている。
【0030】
ステップS203において、GUI部品プロパティ更新部109は、GUI部品プロパティ設定選択情報107を取得する。ここで、GUI部品プロパティ設定選択情報107には、0個以上のGUI部品プロパティ設定選択情報が記述されている。
ステップS204において、GUI部品プロパティ更新部109は、ステップS203で取得した全てのGUI部品プロパティ設定選択情報について、ステップS205からステップS215までの処理を繰り返す。
【0031】
ステップS205において、GUI部品プロパティ更新部109は、GUI部品プロパティ設定選択情報に基づいて、ステップS202で取得したGUI部品プロパティ設定情報の内の1つを取得する。
ステップS206において、GUI部品プロパティ更新部109は、プロパティ設定を行うGUI部品のタイプを指定するGUI部品タイプ別条件を、ステップS205で選択したGUI部品プロパティ設定情報から取得する。ここで、GUI部品プロパティ設定情報には、検索条件として、1個以上のGUI部品タイプ別条件が記述されている。
【0032】
ステップS207において、GUI部品プロパティ更新部109は、ステップS206で取得した全てのGUI部品タイプ別条件について、ステップS208からステップS214までの処理繰り返す。
ステップS208において、GUI部品プロパティ更新部109は、ステップS206で取得した各GUI部品タイプ別条件のもとで、プロパティを設定するGUI部品のプロパティ値を指定するGUI部品プロパティ別条件を取得する。ここで、GUI部品プロパティ設定情報には、検索条件として、GUI部品タイプ別条件のもとで、1個以上のGUI部品プロパティ別条件が記述されている。
【0033】
ステップS209において、GUI部品プロパティ更新部109は、ステップS208で取得した全てのGUI部品プロパティ別条件について、ステップS210からステップS213までの処理を繰り返す。
ステップS210において、GUI部品プロパティ更新部109は、ステップS208で取得したGUI部品プロパティ別条件のもとでの、設定プロパティ情報を取得する。ここで、GUI部品プロパティ設定情報には、GUI部品プロパティ別条件のもとで、1個以上の設定プロパティ情報が記述されている。
【0034】
ステップS211において、GUI部品プロパティ更新部109は、ステップS201で取得した全てのGUI部品情報について、ステップS212の処理を繰り返す。
ステップS212は、GUI部品のプロパティ情報(属性情報)を更新する処理を行うルーチンである。ステップS212は、図3(b)に示されるステップS217からステップS221までの処理によって構成される。
【0035】
ステップS213において、GUI部品プロパティ更新部109は、ステップS201で取得した全てのGUI部品情報について、ステップS212の処理を繰り返すと、ステップS214へ進む。
ステップS214において、GUI部品プロパティ更新部109は、ステップS208で取得した全てのGUI部品プロパティ別条件について、ステップS210からステップS213までの処理を繰り返すと、ステップS215へ進む。
【0036】
ステップS215において、GUI部品プロパティ更新部109は、ステップS206で取得した全てのGUI部品タイプ別条件について、ステップS208からステップS214までの処理を繰り返すと、ステップS216へ進む。
ステップS216において、GUI部品プロパティ更新部109は、ステップS203で取得した全てのGUI部品プロパティ設定選択情報について、ステップS205からステップS215までの処理を繰り返すと、図3(a)に示す処理を終了する。
【0037】
ステップS217において、GUI部品プロパティ更新部109は、GUI部品情報に記述されているGUI部品タイプ情報がGUI部品タイプ別条件に合致するかどうかを判定する。GUI部品プロパティ更新部109は、合致する場合には、ステップS218へ進み、合致しない場合には、図3(b)に示す処理を終了し、ステップS213へ進む。
【0038】
ステップS218において、GUI部品プロパティ更新部109は、GUI部品情報に記述されているGUI部品のプロパティ情報がGUI部品プロパティ別条件に合致するかどうかを判定する。GUI部品プロパティ更新部109は、合致する場合には、ステップS219へ進め、合致しない場合には、図3(b)に示す処理を終了し、ステップS213へ進む。
【0039】
ステップS219において、GUI部品プロパティ更新部109は、GUI部品情報に、ステップS210で取得した設定プロパティ情報とは異なるプロパティ情報が既に設定されているかどうかを判定する。GUI部品プロパティ更新部109は、既に設定されている場合には、ステップS220へ進み、設定されていない場合には、ステップS221へ進む。
【0040】
ステップS220において、GUI部品プロパティ更新部109は、ステップS210で取得した設定プロパティ情報よりも、既に設定されているプロパティ情報の優先度が高いかどうかを判定する。GUI部品プロパティ更新部109は、既に設定されているプロパティ情報の優先度が高い場合には、図3(b)に示す処理を終了し、ステップS213へ進み、既に設定されているプロパティ情報の優先度が低い場合には、ステップS221へ進む。
【0041】
なお、優先度は、例えば、各設定プロパティ情報(又は設定されているプロパティ情報)に記述されていてもよいし、GUI部品プロパティ更新部109が、予め定められているプロパティ情報を優先させるようにしてもよい。
【0042】
ステップS221において、ステップS210で取得した設定プロパティ情報を、GUI部品情報に対して設定し、GUI部品情報を更新する。
【0043】
図4は、画面定義ファイル101の一例を示す図である。
画面定義ファイル101は、表示画面を構成するGUI部品やそのプロパティを定義する画面構成定義ファイル301と、画面構成定義ファイル301によって参照されるプロパティ値を記述するリソース定義ファイル302、303と、から構成される。
【0044】
304は、GUI部品の1つであるメインのダイアログウィンドウについての記述であり、2つの子要素IDC_1、IDC_2によって構成されることを示している。
305は、GUI部品の1つであるボタンについての記述であり、<control>タグのID情報より、メインのダイアログウィンドウの子要素の1つであることを示している。また、305は、ボタンの表示テキストプロパティとして、外部ファイルに記述されている変数button.okを参照していることを示している。
306は、305と同じくGUI部品の1つであるボタンについての記述であり、<control>タグのID情報より、メインのダイアログウィンドウの子要素の1つであることを示している。また、306は、ボタンの表示テキストプロパティとして、外部ファイルに記述されている変数button.cancelを参照し、前景色に青色を設定していることを示している。
【0045】
307は、設定されている言語設定が英語の時に参照されるリソース定義ファイルである。308は、設定されている言語設定が日本語の時に参照されるリソース定義ファイルである。
つまり、情報処理装置は、言語設定が日本語の場合には、button.okを参照している表示テキストに、“了解”と表示し、英語の場合には、“OK”と表示させることが可能である。なお、本実施形態では、日本語と英語とのリソース定義ファイルを作成する例を挙げたが、他の言語についても同様にリソースファイルを作成し、定義することができる。また、GUI部品のプロパティ情報を全て画面構成定義ファイル301内に記述し、リソースファイルを使用しない構成としてもよい。
【0046】
図5は、GUI部品プロパティ設定ファイル104の一例を示す図である。
401は、GUI部品プロパティ設定ファイル104の一例であり、2つのGUI部品プロパティ設定情報によって構成されている。
【0047】
402は、GUI部品プロパティ設定ファイル401を構成するGUI部品プロパティ設定情報の1つ(OK Group)である。
403は、GUI部品プロパティ設定情報部402のGUI部品タイプ別条件である。図5で示されるGUI部品タイプ別条件403は、プロパティ設定を行うGUI部品タイプの条件として、GUI部品のタイプがbutton.JButtonでなければならないことを示している。GUI部品プロパティ設定情報部402には、GUI部品タイプ別条件403が1個だけ記述されているが、複数個記述してもよい。
【0048】
404は、GUI部品プロパティ設定情報部402のGUI部品プロパティ別条件(属性条件)である。図5で示されるGUI部品プロパティ別条件404は、プロパティ設定を行うGUI部品プロパティの条件として、GUI部品タイプ別条件403のもとで、resIdプロパティがbutton.okでなければならないことを示している。GUI部品プロパティ設定情報部402には、GUI部品プロパティ別条件404が1個だけ記述されているが、複数個記述してもよい。
【0049】
405は、GUI部品プロパティ設定情報部402の設定プロパティ情報である。図5で示される設定プロパティ情報405は、GUI部品タイプ別条件403、GUI部品プロパティ別条件404に合致するGUI部品に対して、foregroundプロパティをjava.awt.Color.Greenに設定し、fontプロパティをboldに設定することを示している。
【0050】
406は、GUI部品プロパティ設定ファイル401を構成するGUI部品プロパティ設定情報の1つ(Cancel Group)である。
407は、GUI部品プロパティ設定情報部406のGUI部品タイプ別条件である。図5に示されるGUI部品タイプ別条件407は、プロパティ設定を行うGUI部品タイプの条件として、GUI部品のタイプがbutton.JButtonでなければならないことを示している。GUI部品プロパティ設定情報部406には、GUI部品タイプ別条件407が1個だけ記述されているが、複数個記述してもよい。
【0051】
408は、GUI部品プロパティ設定情報部406のGUI部品プロパティ別条件である。図5に示されるGUI部品プロパティ別条件408は、プロパティ設定を行うGUI部品プロパティの条件として、GUI部品タイプ別条件407のもとで、resIdプロパティがbutton.cancelでなければならないことを示している。GUI部品プロパティ設定情報部406には、GUI部品プロパティ別条件408が1個だけ記述されているが、複数個記述してもよい。
【0052】
409は、GUI部品プロパティ設定情報部406の設定プロパティ情報である。図5で示される設定プロパティ情報409は、GUI部品タイプ別条件407、GUI部品プロパティ別条件408に合致するGUI部品に対して、foregroundプロパティをjava.awt.Color.Redに設定し、fontプロパティをitalicに設定することを示している。
【0053】
GUI部品プロパティ設定情報部402、406では、GUI部品の検索条件として、button.JButtonクラスのresIdプロパティの値を用いたが、リストボックスやラジオボタン等、任意のクラスの任意のプロパティ値を検索条件にしてもよい。同様に、設定プロパティについても、検索条件に合致したGUI部品をグループ化し、このグループ化したGUI部品の任意のプロパティに対して、任意のプロパティ値を設定してもよい。
【0054】
また、各GUI部品プロパティ設定情報は、1個のGUI部品タイプ別条件によって構成されているが、複数個のGUI部品タイプ別条件によって構成されてもよい。更に、各GUI部品プロパティ設定情報は、あるGUI部品タイプ別条件のもとでは、1個のGUI部品プロパティ別条件によって構成されているが、複数個のGUI部品プロパティ別条件によって構成されてもよい。
【0055】
図6は、GUI部品情報102、GUI部品プロパティ設定情報105、GUI部品プロパティ設定選択情報107の一例を示す図である。
図6(a)の501は、GUI部品情報102の一例であり、画面構成定義ファイル301に基づいてGUI部品情報作成部103によって作成された画面構成定義情報である。
【0056】
502は、GUI部品定義304に対応し、IDがMainであり、GUI部品タイプがPanelであり、2つの子要素IDC_1、IDC_2によって構成されることを示している。
503は、GUI部品定義305に対応し、IDがIDC_1であり、GUI部品タイプがbutton.JButtonであり、テキストプロパティがok.buttonであることを示している。
504は、GUI部品定義306に対応し、IDがIDC_2であり、GUI部品タイプがbutton.JButtonであり、テキストプロパティがcancel.button、前景色がBlueであることを示している。
【0057】
図6(b)の505は、GUI部品情報102の一例であり、リソース定義ファイル302、303に基づいてGUI部品情報作成部103によって作成されたリソース定義情報である。
506は、ok.buttonに対して、英語ではOK、日本語では了解の対応付けを行うことを示している。
507は、cancel.buttonに対して、英語ではCancel、日本語ではキャンセルの対応付けを行うことを示している。
【0058】
図6(c)の508は、GUI部品プロパティ設定情報105の一例であり、GUI部品プロパティ設定情報作成部106によって作成されたGUI部品プロパティ設定情報である。
509は、GUI部品プロパティ設定情報部402に対応する。図6(c)において、509は、ID情報がOK Groupであり、GUI部品タイプ別条件がbutton.JButtonであり、GUI部品プロパティ別条件がテキストの文字列がok.buttonであるGUI部品に対して、前景色プロパティにRed、フォントプロパティにBoldを設定することを示している。
【0059】
510は、GUI部品プロパティ設定情報部406に対応する。図6(c)において、510は、ID情報がCancel Groupであり、GUI部品タイプ別条件がbutton.JButtonであり、GUI部品プロパティ別条件がテキストの文字列がcancel.buttonであるGUI部品に対して、前景色プロパティにGreen、フォントプロパティにItalicを設定することを示している。
GUI部品プロパティ設定情報508は、GUI部品タイプ別条件としてbutton.JButton、GUI部品プロパティ別条件としてテキストプロパティの値を例として用いている。しかしながら、リストボックスやラジオボタン等、任意のGUI部品タイプの任意のGUI部品プロパティを条件として指定してよい。また、設定プロパティについても、GUI部品の任意のプロパティに対して、任意のプロパティ値を設定することができる。
【0060】
図6(d)の511は、GUI部品プロパティ設定選択情報107の一例であり、GUI部品プロパティ設定選択部108で、OK Group、Cancel Groupを選択したときのGUI部品プロパティ設定選択情報である。
512は、GUI部品プロパティ設定選択情報として、OK Groupが選択されていることを示している。
513は、GUI部品プロパティ設定選択情報として、Cancel Groupが選択されていることを示している。
【0061】
図6(e)の514は、GUI部品情報102の一例であり、GUI部品プロパティ更新部109によって更新された画面構成定義情報である。
515は、GUI部品定義304に対応し、IDがMainであり、GUI部品タイプがPanelであり、2つの子要素IDC_1、IDC_2によって構成されることを示している。
516は、GUI部品定義305に対応し、IDがIDC_1であり、GUI部品タイプがbutton.JButtonであり、テキストプロパティがok.buttonであり、前景色がRedであり、フォントがBoldであることを示している。
517は、GUI部品定義306に対応し、IDがIDC_2であり、GUI部品タイプがbutton.JButtonであり、テキストプロパティがcancel.button、前景色がGreenであり、フォントがItalicであることを示している。
【0062】
ここで、図6を用いて、GUI部品プロパティ更新部109における処理を図3のフローチャートに沿って説明する。
ステップS201において、GUI部品プロパティ更新部109は、GUI部品情報102として、画面構成定義情報501、リソース定義情報505を取得する。画面構成定義情報501には、GUI部品情報502〜504が記述されている。
【0063】
ステップS202において、GUI部品プロパティ更新部109は、GUI部品プロパティ設定情報105として、GUI部品プロパティ設定情報508を取得する。GUI部品プロパティ設定情報508には、GUI部品プロパティ設定情報509、510が記述されている。
【0064】
ステップS203において、GUI部品プロパティ更新部109は、GUI部品プロパティ設定選択情報107として、GUI部品プロパティ設定情報511を取得する。GUI部品プロパティ設定情報511には、GUI部品プロパティ設定選択情報512、513が記述されている。
【0065】
ステップS204において、GUI部品プロパティ更新部109は、ステップS203で取得した各GUI部品プロパティ設定選択情報512、513について、ステップS205からステップS215までの処理を繰り返す。
【0066】
ここでは、はじめにGUI部品プロパティ設定選択情報512が選択されたものとする。
ステップS205において、GUI部品プロパティ更新部109は、ステップS202で取得したGUI部品プロパティ設定情報から、GUI部品プロパティ設定選択情報512に該当するGUI部品プロパティ設定情報を取得する。即ち、GUI部品プロパティ更新部109は、GUI部品プロパティ設定情報509を取得する。
【0067】
ステップS206において、GUI部品プロパティ更新部109は、ステップS205で選択したGUI部品プロパティ設定情報509に記述されている、GUI部品タイプ別条件509aを取得する。
【0068】
ステップS207において、GUI部品プロパティ更新部109は、ステップS206で取得したGUI部品タイプ別条件509aについて、ステップS208からステップS214までの処理を繰り返す。
【0069】
ステップS208において、GUI部品プロパティ更新部109は、GUI部品タイプ別条件509aのもとでの、GUI部品プロパティ別条件509bを取得する。
ステップS209において、GUI部品プロパティ更新部109は、ステップS208で取得したGUI部品プロパティ別条件509bについて、ステップS210からステップS213までの処理を繰り返す。
【0070】
ステップS210において、GUI部品プロパティ更新部109は、GUI部品プロパティ別条件509bのもとでの、設定プロパティ情報509cを取得する。
ステップS211において、GUI部品プロパティ更新部109は、ステップS201で取得した各GUI部品情報502〜504について、ステップS212の処理を繰り返す。
【0071】
ここでは、はじめに、GUI部品情報502が選択されたものとする。
ステップS212は、GUI部品情報502についてプロパティ情報を更新する処理を行うルーチンである。ステップS217からステップS221までの処理によって構成される。
【0072】
ステップS217において、GUI部品プロパティ更新部109は、GUI部品情報502に記述されているGUI部品タイプ情報がGUI部品タイプ別条件509aに合致しないため、図3(b)に示す処理を終了し、ステップS213へ進む。
【0073】
ステップS213において、GUI部品プロパティ更新部109は、ステップS201で取得した全てのGUI部品情報502〜504についてステップS212を繰り返し行ったか否かを判断する。この例では、全てのGUI部品情報502〜504についてステップS212を繰り返し行っていないので、GUI部品プロパティ更新部109は、ステップS211へ進む。
【0074】
ステップS211において、GUI部品プロパティ更新部109は、ステップS201で取得した未設定のGUI部品情報503、504について、ステップS212の処理を繰り返す。
【0075】
ここでは、未設定のGUI部品情報の内、GUI部品情報503が選択されたものとする。
ステップS217において、GUI部品プロパティ更新部109は、GUI部品情報503に記述されているGUI部品タイプ情報がGUI部品タイプ別条件509aに合致するため、ステップS218へ進む。
【0076】
ステップS218において、GUI部品プロパティ更新部109は、GUI部品情報503に記述されているGUI部品のプロパティ情報がGUI部品プロパティ別条件509bに合致するため、ステップS219へ進む。
【0077】
ステップS219において、GUI部品プロパティ更新部109は、ステップS210で取得した設定プロパティ情報509cについて、GUI部品情報503には、異なるプロパティ情報が設定されていないため、ステップS221へ進む。
【0078】
ステップS221において、GUI部品プロパティ更新部109は、ステップS210で取得した設定プロパティ情報509cをGUI部品情報503に対して設定し、画面構成定義情報501を更新する。この処理によって更新された画面構成定義情報514のGUI部品情報516について、プロパティ516a部分の設定がなされる。次に、GUI部品プロパティ更新部109は、図3(b)に示す処理を終了し、ステップS213へ進む。
【0079】
ステップS213において、GUI部品プロパティ更新部109は、ステップS201で取得した全てのGUI部品情報502〜504についてステップS212を繰り返し行ったか否かを判断する。この例では、全てのGUI部品情報502〜504についてステップS212を繰り返し行っていないので、GUI部品プロパティ更新部109は、ステップS211へ進む。
【0080】
ステップS211において、GUI部品プロパティ更新部109は、ステップS201で取得した未設定のGUI部品情報504について、ステップS212の処理を実行する。
【0081】
ここでは、未設定のGUI部品情報であるGUI部品情報504が選択されたものとする。
ステップS217において、GUI部品プロパティ更新部109は、GUI部品情報504に記述されているGUI部品タイプ情報がGUI部品タイプ別条件509aに合致するため、ステップS218へ進む。
【0082】
ステップS218において、GUI部品プロパティ更新部109は、GUI部品情報504に記述されているGUI部品のプロパティ情報がGUI部品プロパティ別条件509bに合致しないため、図3(b)に示す処理を終了し、ステップS213へ進む。
ステップS213において、GUI部品プロパティ更新部109は、ステップS201で取得した全てのGUI部品情報502〜504についてステップS212を繰り返したので、ステップS214へ進む。
【0083】
ステップS214において、GUI部品プロパティ更新部109は、ステップS208で取得した全てのGUI部品プロパティ別条件について、ステップS210からステップS213までの処理を繰り返したので、ステップS215へ進む。
ステップS215において、GUI部品プロパティ更新部109は、ステップS206で取得した全てのGUI部品タイプ別条件について、ステップS208からステップS209までの処理を繰り返したので、ステップS216へ進む。
【0084】
ステップS216においてGUI部品プロパティ更新部109はステップS203で取得した全てのGUI部品プロパティ設定選択情報512、513について、ステップS205からステップS215までの処理を繰り返していないのでステップS204へ進む。 ステップS204において、GUI部品プロパティ更新部109は、ステップS203で取得した未設定のGUI部品プロパティ設定選択情報513について、ステップS205からステップS215までの処理を繰り返す。
【0085】
ここでは、未設定のGUI部品プロパティ設定選択情報513が選択されたものとする。
ステップS205において、GUI部品プロパティ更新部109は、ステップS202で取得したGUI部品プロパティ設定情報から、GUI部品プロパティ設定選択情報513に該当するGUI部品プロパティ設定情報を取得する。即ち、GUI部品プロパティ更新部109は、GUI部品プロパティ設定情報510を取得する。
【0086】
ステップS206において、GUI部品プロパティ更新部109は、ステップS205で選択したGUI部品プロパティ設定情報510に記述されている、GUI部品タイプ別条件510aを取得する。
ステップS207において、GUI部品プロパティ更新部109は、ステップS206で取得したGUI部品タイプ別条件510aについて、ステップS208からステップS214までの処理を繰り返す。
【0087】
ステップS208において、GUI部品プロパティ更新部109は、GUI部品タイプ別条件510aのもとでの、GUI部品プロパティ別条件510bを取得する。
ステップS209において、GUI部品プロパティ更新部109は、ステップS208で取得したGUI部品プロパティ別条件510bについて、ステップS210からステップS213までの処理を繰り返す。
【0088】
ステップS210において、GUI部品プロパティ更新部109は、GUI部品プロパティ別条件510bのもとでの、設定プロパティ情報510cを取得する。
ステップS211において、GUI部品プロパティ更新部109は、ステップS201で取得した各GUI部品情報502〜504について、ステップS212の処理を繰り返す。
【0089】
ここでは、はじめに、GUI部品情報502が選択されたものとする。
ステップS217において、GUI部品プロパティ更新部109は、GUI部品情報502に記述されているGUI部品タイプ情報がGUI部品タイプ別条件510aに合致しないため、図3(b)に示す処理を終了し、ステップS213へ進む。
【0090】
ステップS213において、GUI部品プロパティ更新部109は、ステップS201で取得した全てのGUI部品情報502〜504についてステップS212を繰り返していないのでステップS211へ進む。
ステップS211において、GUI部品プロパティ更新部109は、ステップS201で取得した未設定のGUI部品情報503、504について、再びステップS212の処理を繰り返す。
【0091】
ここでは、未設定のGUI部品情報の内、GUI部品情報503が選択されたものとする。
ステップS217において、GUI部品プロパティ更新部109は、GUI部品情報503に記述されているGUI部品タイプ情報がGUI部品タイプ別条件510aに合致するため、ステップS218へ進む。
【0092】
ステップS218において、GUI部品プロパティ更新部109は、GUI部品情報503に記述されているGUI部品のプロパティ情報がGUI部品プロパティ別条件510bに合致しないため、図3(b)に示す処理を終了し、ステップS213へ進む。
ステップS213において、GUI部品プロパティ更新部109は、ステップS201で取得した全てのGUI部品情報502〜504についてステップS212を繰り返していないのでステップS211へ進む。
ステップS211において、GUI部品プロパティ更新部109は、ステップS201で取得した未設定のGUI部品情報504について、ステップS212の処理を実行する。
【0093】
ここでは、未設定のGUI部品情報であるGUI部品情報504が選択されたものとする。
ステップS217において、GUI部品プロパティ更新部109は、GUI部品情報504に記述されているGUI部品タイプ情報がGUI部品タイプ別条件510aに合致するため、ステップS218へ進む。
【0094】
ステップS218において、GUI部品プロパティ更新部109は、GUI部品情報504に記述されているGUI部品のプロパティ情報がGUI部品プロパティ別条件510bに合致するため、ステップS219へ進む。
ステップS219において、GUI部品プロパティ更新部109は、ステップS210で取得した設定プロパティ情報510cについて、GUI部品情報503には、異なるプロパティ情報が設定されているため、ステップS220へ進む。
【0095】
ステップS220において、GUI部品プロパティ更新部109は、ステップS210で取得した設定プロパティ情報510cよりも、既に設定されているプロパティ情報の優先度が高いかどうかを判定する。ここでは、既存の設定よりも、設定プロパティ情報510cの優先度の方が高いとして、ステップS221へ進む。
【0096】
ステップS221において、GUI部品プロパティ更新部109は、ステップS210で取得した設定プロパティ情報510cをGUI部品情報503に対して設定し、画面構成定義情報501を更新する。この処理によって更新された画面構成定義情報514のGUI部品情報517について、プロパティ517a部分の設定がなされる。続いて、GUI部品プロパティ更新部109は、図3(b)に示す処理を終了し、ステップS213へ進む。
【0097】
ステップS213において、GUI部品プロパティ更新部109は、ステップS201で取得した全てのGUI部品情報502〜504についてステップS212の処理を繰り返したのでステップS214へ進む。
ステップS214において、GUI部品プロパティ更新部109は、ステップS208で取得した全てのGUI部品プロパティ別条件について、ステップS210からステップS214までの処理を繰り返したので、ステップS215へ進む。
【0098】
ステップS215において、GUI部品プロパティ更新部109は、ステップS206で取得した全てのGUI部品タイプ別条件について、ステップS208からステップS209までの処理を繰り返したので、ステップS216へ進む。
ステップS216において、GUI部品プロパティ更新部109は、ステップS203で取得した全てのGUI部品プロパティ設定選択情報について、ステップS205からステップS215までの処理を繰り返したので、図3(a)に示す処理を終了する。
【0099】
図7は、GUI部品プロパティの変更の一例を示す図である。
601は、更新前の画面構成定義情報501等に基づいて生成されたGUI画面である。603は、GUI画面601を構成するGUI部品の1つであり、表示テキストプロパティとして、リソース定義ファイルのbutton.okに記述されている文字列が表示されている。604は、GUI画面601を構成するGUI部品の1つであり、前景色が青色であり、表示テキストプロパティとして、リソース定義ファイルのbutton.cancelに記述されている文字列が表示されている。
【0100】
602は、更新後の画面構成定義情報514等に基づいて作成されたGUI画面である。605は、GUI画面602を構成するGUI部品の1つであり、表示テキストプロパティとして、リソース定義ファイルのbutton.okに記述されている文字列が表示されている。また、605は、更に、GUI部品プロパティ設定情報部402により、前景色が緑色であり、テキスト文字列がボールド体で表示されている。606は、GUI画面602を構成するGUI部品の1つであり、表示テキストプロパティとして、リソース定義ファイルのbutton.cancelに記述されている文字列が表示されている。また、606は、更に、GUI部品プロパティ設定情報部406により、前景色が赤色であり、テキスト文字列がイタリック体で表示されている。
【0101】
図7の例では、各GUI部品プロパティ設定情報部402、406について、それぞれ1GUI画面中の1GUI部品のプロパティ変更イメージ図を示した。しかし、GUI部品プロパティ設定情報のGUI部品プロパティ別条件に一致するGUI部品が複数画面に存在する場合であっても、該当するGUI部品のグループのプロパティは、全て、GUI部品プロパティ設定情報に基づいて設定(又は更新)される。1画面中の複数GUI部品が検索条件に一致する場合も同様である。
【0102】
(その他の実施形態)
また、本発明の目的は、以下のようにすることによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(又は記録媒体)を、システム或いは装置に供給する。そして、そのシステム或いは装置の中央演算処理手段(CPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコードを記録した記憶媒体は本発明を構成することになる。
【0103】
また、システム或いは装置の前記中央演算処理手段が読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、システム或いは装置上で稼働しているオペレーティングシステム(OS)等が実際の処理の一部又は全部を行う。その処理によって上述した実施形態の機能が実現される場合も含まれる。
【0104】
更に、記憶媒体から読み出されたプログラムコードが、前記システム或いは装置に挿入された機能拡張カードや、接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれる。
【0105】
本発明を前記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【0106】
以上、上述した実施形態によれば、任意のGUI画面内で定義されているGUI部品の内、特定のGUI部品に対して統一したプロパティ設定を行う際に手間がかかるという問題を軽減することができる。また、手作業でGUI部品のプロパティを1つ1つ設定する際に抜け等が発生し、一貫した設定を行うことが困難であるという問題を軽減することができる。
つまり、特定のGUI部品に対して統一した属性設定を行う手間を軽減すると共に、属性設定の抜けを防止することができる。
【0107】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【0108】
【図1】情報処理装置(コンピュータ)のハードウェア構成の一例を示す図である。
【図2】情報処理装置の機能構成の一例を示す図である。
【図3】GUI部品情報の更新処理の一例を示すフローチャートである。
【図4】画面定義ファイル101の一例を示す図である。
【図5】GUI部品プロパティ設定ファイル104の一例を示す図である。
【図6】GUI部品情報102、GUI部品プロパティ設定情報105、GUI部品プロパティ設定選択情報107の一例を示す図である。
【図7】GUI部品プロパティの変更の一例を示す図である。
【符号の説明】
【0109】
10 バス
11 CPU
12 入力装置
13 記憶装置
14 表示装置

【特許請求の範囲】
【請求項1】
画面に表示されるGUI部品の属性情報の設定に関する属性設定ファイルに基づいて、GUI部品の属性設定情報を作成する属性設定情報作成手段と、
前記属性設定情報に含まれる検索条件を用いて、GUI部品を検索し、前記検索条件に合致するGUI部品をグループ化して、前記グループ化したGUI部品の属性情報を、前記属性設定情報に含まれる属性情報を用いて更新する属性情報更新手段と、
を有することを特徴とする情報処理装置。
【請求項2】
前記画面に関する画面定義ファイルに基づいて、前記画面に表示されるGUI部品の部品情報を作成する部品情報作成手段を更に有し、
前記属性情報更新手段は、前記検索条件を用いて、GUI部品の部品情報を検索し、前記検索条件に合致する部品情報のGUI部品をグループ化して、前記グループ化したGUI部品の部品情報に含まれる属性情報を、前記属性設定情報に含まれる属性情報を用いて更新することを特徴とする請求項1に記載の情報処理装置。
【請求項3】
ユーザの指定に応じて、前記属性設定情報作成手段が作成した属性設定情報の内、設定を有効にする属性設定情報を選択し、前記選択した属性設定情報を示す選択情報を作成する選択手段を更に有し、
前記更新手段は、前記選択情報で示される属性設定情報に含まれる前記検索条件を用いて、GUI部品を検索し、前記検索条件に合致するGUI部品をグループ化して、前記グループ化したGUI部品の属性情報を、前記属性設定情報に含まれる属性情報を用いて更新することを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記検索条件には、GUI部品のタイプを指定するタイプ別条件と、GUI部品の属性を指定する属性条件と、が含まれることを特徴とする請求項1乃至3の何れか1項に記載の情報処理装置。
【請求項5】
情報処理装置におけるGUI部品の属性情報更新方法であって、
画面に表示されるGUI部品の属性情報の設定に関する属性設定ファイルに基づいて、GUI部品の属性設定情報を作成する属性設定情報作成ステップと、
前記属性設定情報に含まれる検索条件を用いて、GUI部品を検索し、前記検索条件に合致するGUI部品をグループ化して、前記グループ化したGUI部品の属性情報を、前記属性設定情報に含まれる属性情報を用いて更新する属性情報更新ステップと、
を有することを特徴とする属性情報更新方法。
【請求項6】
前記画面に関する画面定義ファイルに基づいて、前記画面に表示されるGUI部品の部品情報を作成する部品情報作成ステップを更に有し、
前記属性情報更新ステップでは、前記検索条件を用いて、GUI部品の部品情報を検索し、前記検索条件に合致する部品情報のGUI部品をグループ化して、前記グループ化したGUI部品の部品情報に含まれる属性情報を、前記属性設定情報に含まれる属性情報を用いて更新することを特徴とする請求項5に記載の属性情報更新方法。
【請求項7】
ユーザの指定に応じて、前記属性設定情報作成ステップが作成した属性設定情報の内、設定を有効にする属性設定情報を選択し、前記選択した属性設定情報を示す選択情報を作成する選択ステップを更に有し、
前記更新ステップでは、前記選択情報で示される属性設定情報に含まれる前記検索条件を用いて、GUI部品を検索し、前記検索条件に合致するGUI部品をグループ化して、前記グループ化したGUI部品の属性情報を、前記属性設定情報に含まれる属性情報を用いて更新することを特徴とする請求項5に記載の属性情報更新方法。
【請求項8】
前記検索条件には、GUI部品のタイプを指定するタイプ別条件と、GUI部品の属性を指定する属性条件と、が含まれることを特徴とする請求項5乃至7の何れか1項に記載の属性情報更新方法。
【請求項9】
コンピュータを、
画面に表示されるGUI部品の属性情報の設定に関する属性設定ファイルに基づいて、GUI部品の属性設定情報を作成する属性設定情報作成手段と、
前記属性設定情報に含まれる検索条件を用いて、GUI部品を検索し、前記検索条件に合致するGUI部品をグループ化して、前記グループ化したGUI部品の属性情報を、前記属性設定情報に含まれる属性情報を用いて更新する属性情報更新手段と、
して機能させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2009−37525(P2009−37525A)
【公開日】平成21年2月19日(2009.2.19)
【国際特許分類】
【出願番号】特願2007−203028(P2007−203028)
【出願日】平成19年8月3日(2007.8.3)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.JAVA
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】