(57)【要約】【課題】ＧＵＩの複数の構成要素のレイアウトの生成を抽出する手段を提供する。【解決手段】プログラム内では、グラフィカル・ユーザ・インタフェースの複数の構成要素に対応する短縮されたデータが確立されている。短縮されたデータは複数の構成要素の各々に対応する完全パス名を抽出する。プログラムの実行中、装置のプリプロセッサは短縮されたデータから所定の母国語でコードを自動的に生成するために呼び出される。一実施例では、コードは複数の構成要素の各々に対応する位置を含んでいる。プリプロセッサは複数の構成要素の各々に対する短縮されたデータの位置に基づいて、複数の構成要素の各々に対する位置を決定する。グラフィカル・ユーザ・インタフェースの表示はコードから生成される。【選択図】図３
2004362577.tif 000002
【特許請求の範囲】
【請求項１】
グラフィカル・ユーザ・インタフェースの複数の構成要素に対応するデータを確立する工程と、
該データから所定の母国語でコードを自動的に生成する工程と、
該コードから該グラフィカル・ユーザ・インタフェースの表示を生成する工程とを含む方法。
【請求項２】
前記データから前記複数の構成要素の各々に対する完全パスを自動的に生成する工程をさらに含む請求項１に記載の方法。
【請求項３】
前記自動的に生成する工程は、
前記データから前記複数の構成要素の各々に関連する１つまたは複数の識別子を識別する工程と、
該１つまたは複数の識別子と１つまたは複数のステートメントとを前記所定の母国語で関連付ける工程と、
前記複数の構成要素の各々に対して前記所定の母国語で完全パスを構成する工程と、
該１つまたは複数のステートメントおよび該完全パスから前記所定の母国語で前記コードを生成する工程とをさらに含む請求項１に記載の方法。
【請求項４】
前記自動的に生成する工程は、
前記データ内で短縮シンタックスを使用して前記ＧＵＩの前記複数の構成要素の各々を記述する工程と、
前記ＧＵＩの前記複数の構成要素の複数の位置に関して、該短縮シンタックスから前記複数の構成要素の１つの位置をそれぞれ決定する工程と、
前記複数の構成要素の多々の該複数の位置から前記所定の母国語で前記コードを生成する工程とをさらに含む請求項１に記載の方法。
【請求項５】
前記ＧＵＩの複数の構成要素に関して、前記ＧＵＩの前記複数の構成要素の各々と関連する前記短縮シンタックスを前記データ内で編成する工程と、
前記複数の構成要素と関連する前記短縮シンタックスの複数の配置に関して、前記１つの構成要素と関連する前記短縮シンタックスの配置から、前記ＧＵＩの前記１つの構成要素の位置を決定する工程と、
前記ＧＵＩの前記１つの構成要素の位置から前記コードを生成する工程とをさらに含む請求項４に記載の方法。
【請求項６】
ＧＵＩの複数の構成要素に対応するデータから、所定の母国語でコードを生成するプリプロセッサを備えた装置。
【請求項７】
前記プリプロセッサは前記所定の母国語で書かれ、前記データは短縮シンタックスと複数の母国語のコード・ステートメントとを含み、該短縮シンタックスは前記ＧＵＩの前記複数の構成要素を記述する複数の識別子を含み、
該短縮シンタックスは、前記複数の構成要素に関して、１つの構成要素の配置を定める構成を備え、
前記プリプロセッサは、該複数の識別子および該短縮シンタックスの該構成から前記所定の母国語で前記コードを生成し、
前記プリプロセッサは前記データの前記複数の母国語のコード・ステートメントを保存する請求項６に記載の装置。
【請求項８】
前記コードから前記所定の母国語で前記ＧＵＩの表示を生成するＧＵＩ生成器をさらに備えた請求項６に記載の装置。
【請求項９】
前記プリプロセッサはプログラムに埋め込まれ、該プログラムは前記データを含み、
該プログラムを実効するように機能する母国語インタプリタをさらに備え、かつ該プログラム内の第１のＧＵＩコマンドの実行と同時に、該母国語インタプリタが前記データ上で前記プリプロセッサを呼び出す請求項６に記載の装置。
【請求項１０】
パス生成器とキーワード生成器とをさらに備え、
該パス生成器は前記ＧＵＩの前記複数の構成要素の各々に対して、前記所定の母国語で複数の完全パスを保持し、
該キーワード生成器は前記所定の母国語で１つまたは複数のステートメントに前記データを翻訳し、
前記プリプロセッサは該パス生成器および該キーワード生成器を使用して前記複数の完全パスおよび前記１つまたは複数のステートメントから前記所定の母国語で前記コードを生成する請求項６に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般にグラフィカル・ユーザ・インタフェースの生成に関し、より具体的には、グラフィカル・ユーザ・インタフェースの構成要素の位置を抽出することに関する。
【背景技術】
【０００２】
グラフィカル・ユーザ・インタフェース（「ＧＵＩ」）を開発する場合、かなりの時間がＧＵＩを含む複数の構成要素のレイアウトを記述するために向けられる。例えば、パック・ジオメトリ・マネージャといったジオメトリ・マネージャは、ＧＵＩにおける複数の構成要素、すなわちウィジェットのレイアウトを記述するためにユーザによって使用される１つの方法を含んでいる。パック・ジオメトリ・マネージャは、垂直または水平のいずれかで単一のファイルに配置された多数のウィジェットおよび／またはサブコンテナが詰め込まれたフレームと呼ばれる不可視のコンテナを使用している。このＧＵＩウィンドウ全体は最大のルート・コンテナである。
【０００３】
ウィジェットまたはサブフレームの各々およびそれぞれフレーム（ウィジェットを含む）を含んでいる各々は、ＵＮＩＸ（登録商標）ファイル・システム構造内のファイルおよび関連するディレクトリの関係に類似する関係を含む。この関係に関し、ウィジェットおよびフレームはツリーのルートとして、ＧＵＩウィンドウで始まるツリー構造を形成する。当業者には理解されるように、ウィジェットまたはフレームの各々は、完全パス名（ルートウィンドウで始まり、フレームを含む各々を通り、ウィジェットで止まる）によって参照される。
【０００４】
例えば、第１のコンテナからＧＵＩの第２のコンテナへボタンを移動させるといったレイアウトの変更を行う場合、影響を受ける１つまたは複数の構成要素に関連する完全パス名を更新しなければならない。残念ながら、変更によって影響を受ける１つまたは複数の構成要素を参照するためにジオメトリ・マネージャが完全パス名を必要とする場合、当業者が理解しているように、完全パス名はかなりの時間を必要とするものとなり、かつ維持することが困難になる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
したがって、ＧＵＩの複数の構成要素のレイアウトの生成を抽出する必要がある。
【課題を解決するための手段】
【０００６】
一実施形態における本発明は方法を含んでいる。グラフィカル・ユーザ・インタフェースの複数の構成要素に対応するデータが確立される。このデータから、コードが所定の母国語で自動的に生成される。グラフィカル・ユーザ・インタフェースの表示はこのコードから生成される。
【０００７】
本発明の別の実施形態は装置を包含している。この装置は、グラフィカル・ユーザ・インタフェースの複数の構成要素に対応するデータから所定の母国語でコードを生成するプリプロセッサを含んでいる。
【０００８】
本発明のさらに別の実施形態は物品を含んでいる。この物品は１つまたは複数の、コンピュータ可読信号を保持するメディアを含んでいる。この物品は、グラフィカル・ユーザ・インタフェースの複数の構成要素に対応するデータを確立する手段を１つまたは複数のメディアに含んでいる。この物品は、所定の母国語でコードをデータから自動的に生成する手段を１つまたは複数のメディアに含んでいる。この物品はコードからグラフィカル・ユーザ・インタフェースの表示を生成する手段を１つまたは複数のメディアに含んでいる。
【０００９】
本発明の例示的実施形態の特徴は、説明、特許請求の範囲および添付図面から明らかとなろう。
【発明を実施するための最良の形態】
【００１０】
これら非限定的な実施例において議論される特定の値および構成は変更されてよく、本発明の実施形態を説明するために単に引用したに過ぎず、本発明の範囲を限定することを意図したものではない。
【００１１】
図１を参照すると、一実施形態の装置１００はプリプロセッサ１０５、母国語インタプリタ１１０、グラフィカル・ユーザ・インタフェース（「ＧＵＩ」）生成器１１５、プログラム１２０、ＧＵＩ１２５、記憶装置１３０、プロセッサ１３５および出力装置１４０を備えている。プロセッサ１３５はプログラム１２０を実行するために母国語インタプリタ１１０を使用する。母国語インタプリタ１１０はプリプロセッサ１０５およびＧＵＩ生成器１１５を呼び出す。ＧＵＩ生成器１１５は出力装置１４０に表示されるＧＵＩ１２５を生成する。
【００１２】
一実施例では、プログラム１２０は複数のコンフィギュレーション・データ、１つまたは複数の母国語のコード・ステートメントおよび１つまたは複数のＧＵＩコマンドを含んでいる。複数のコンフィギュレーション・データは、複数のＧＵＩ１２５の複数の構成要素の複数のレイアウトを記述する。複数のコンフィギュレーション・データのある１つのコンフィギュレーション・データは、短縮シンタックスおよび／または母国語のコード・ステートメントを含んでいる。一実施例では、短縮シンタックスはウィジェットおよびフレームなどのＧＵＩ１２５の複数の構成要素の各々を記述している。コンフィギュレーション・データ内の複数の構成要素の各々に関連する短縮シンタックスの構成は、ＧＵＩ１２５の複数の構成要素に関して、ＧＵＩ１２５の複数の構成要素の各々についての位置を決定する。
【００１３】
例えば、コンフィギュレーション・データに記述された複数の構成要素は、ＵＮＩＸ（登録商標）ファイル・システム構造に類似する関係を含んでいる。複数の構成要素の各々は、親構成要素と関連している。コンフィギュレーション・データによってＧＵＩ１２５の設計者が、ＧＵＩ１２５のレイアウトにきわめて類似するフォーマットでＧＵＩ１２５のレイアウトを記述すること、すなわち、ツリー構造フォーマットでＧＵＩ１２５の複数の構成要素のレイアウトを記述することが可能となる。
【００１４】
図２を参照すると、工程２０５ではプロセッサ１３５は、例えば、パール翻訳プログラムである母国語インタプリタ１１０を呼び出してプログラム１２０を実行する。母国語インタプリタ１１０は１つまたは複数の母国語コード・ステートメントを翻訳する。工程２１０では、例えば、ｍｋ＿ｇｕｉコマンドなどの第１のＧＵＩコマンドに対処し、プリプロセッサ１０５を呼び出してコンフィギュレーション・データから、例えば、パールなどの所定の母国語で自動的にコードを生成する。
【００１５】
工程２１５では、プリプロセッサ１０５はコンフィギュレーション・データを解析して所定の母国語でコードを生成する。工程２２０では、母国語インタプリタ１１０はＧＵＩ生成器１１５を呼び出してコードからＧＵＩ１２５を生成する。ＧＵＩ１２５は、例えば、コンピュータ・モニタなどの出力装置１４０に表示される。
【００１６】
次に図３を参照すると、工程３０５では、母国語インタプリタ１１０は、例えば、ｐｒｅ＿ｍｋ＿ｇｕｉコマンドなどの第２のＧＵＩコマンドについてプログラム１２０を解析する。工程３１０では、母国語インタプリタ１１０が第２のＧＵＩコマンドを識別した場合、母国語インタプリタ１１０は第１のサブルーチンを呼び出してプログラム１２０のコンフィギュレーション・データを処理する。一実施例では、第１のサブルーチンはコンフィギュレーション・データを操作するために、第１のユーザ定義サブルーチンを含んでいる。例えば、当業者には理解されるように、第１のユーザ定義サブルーチンは、プリプロセッサ１０５によって実行される前にコンフィギュレーション・データ内のユーザ定義キーワードを置換する。
【００１７】
工程３１５および工程３２０では、母国語インタプリタ１１０は１つまたは複数のＧＵＩコマンドについてプログラム１２０を解析する。工程３２５では、母国語インタプリタ１１０が第１のＧＵＩコマンドを識別した場合、母国語インタプリタ１１０はコンフィギュレーション・データ上でプリプロセッサ１０５を呼び出す。
【００１８】
工程３３０では、プリプロセッサ１０５はＧＵＩ１２５の複数の構成要素に関連する１つまたは複数の構成要素タグについて、１つまたは複数の母国語のコード・ステートメントおよびコンフィギュレーション・データの短縮シンタックスを解析する。工程３３５では、プリプロセッサ１０５がコンフィギュレーション・データの１つの構成要素タグを識別した場合、プリプロセッサ１０５はＧＵＩ１２５の１つの構成要素に関連する１つまたは複数の母国語コード・ステートメントを生成する。工程３４０では、プリプロセッサ１０５が１つの構成要素タグを識別しない場合、プリプロセッサ１０５は複数の母国語コード・ステートメントの１つの母国語コード・ステートメントを識別し、コンフィギュレーション・データの１つの母国語コード・ステートメントを保存する。
【００１９】
工程３４５では、プリプロセッサ１０５は、プリプロセッサ１０５がコンフィギュレーション・データの終わりを識別するまで、工程３３０〜３４０を繰り返すように働き、母国語インタプリタ１１０によるプログラム１２０の実行が継続される。プリプロセッサ１０５はプリプロセッサ１０５によって生成された１つまたは複数の母国語コード・ステートメントから、母国語でコードを生成する。
【００２０】
工程３５０では、母国語インタプリタ１１０はプログラム１２０の解析を継続する。工程３５５では、母国語インタプリタ１１０が、例えば、ｐｏｓｔ＿ｍｋ＿ｇｕｉコマンドなどの第３のＧＵＩコマンドを識別する場合、母国語インタプリタ１１０は第２のサブルーチンを呼び出してプリプロセッサ１０５によって生成された母国語でコードを処理する。一実施例では、第２のサブルーチンはコードを操作するために第２のユーザ定義サブルーチンを含んでいる。例えば、当業者には理解されるように、第２のユーザ定義サブルーチンは、短縮されたデータから母国語インタプリタ１１０によって生成されたコードにカスタマイゼーションをさらに付加するように機能する。例えば、第３のＧＵＩコマンドが省略された場合、母国語インタプリタ１１０は、例えば、赤色などのデフォルト色を有するウィジェットを生成する。第３のＧＵＩコマンドが指定されると、第２のユーザ定義サブルーチンはデフォルト色を青色に変更する。
【００２１】
工程３６０では、母国語インタプリタ１１０はＴｋツールキットのようなＧＵＩ生成器１１５をコードで呼び出す。ＧＵＩ生成器１１５はＧＵＩ１２５を生成するように機能する。プリプロセッサ１０５によって生成された１つまたは複数の母国語コード・ステートメントは、１つまたは複数の完全パス名を含んでいる。プリプロセッサ１０５は並列の概念を使用してＧＵＩのレイアウト内の１つの構成要素の位置を記述する。並列の概念は、第２の構成要素がコンフィギュレーション・データ内のどこに記述されているかということに関連して、１つの構成要素がコンフィギュレーション・データ内のどこに記述されているかということに基づいて１つの構成要素の第１の位置を決定する工程を含んでいる。
【００２２】
図４を参照すると、プリプロセッサ１０５は、ＧＵＩ１２５の複数の構成要素に関連する短縮シンタックスの複数の配置に関して、１つの構成要素に関連する短縮シンタックスの配置からＧＵＩ１２５の１つの構成要素のレイアウト内の位置を決定する。工程４０５および４１０では、プリプロセッサ１０５は１つまたは複数の構成要素タグについて、コンフィギュレーション・データを解析する。工程４１５では、プリプロセッサ１０５がフレームを参照する先頭構成要素タグに遭遇すると、プリプロセッサ１０５はローカル変数を更新して１つの構成要素を参照する。先頭構成要素タグは１つの構成要素に関連する短縮シンタックスの開始を示す。プリプロセッサ１０５は、ＵＮＩＸ（登録商標）ファイル・システム構造のツリー構造を横断するのに類似したように、同じフレームの末尾構成要素タグの各々に遭遇するまで、工程４０５〜４１５を繰り返す。
【００２３】
工程４２０では、プリプロセッサ１０５は１つの構成要素に関連する短縮シンタックスの終わりを示すエンド構成要素タグに遭遇する。工程４２５では、プリプロセッサ１０５はローカル変数を使用して１つの構成要素に関連する完全パス名を構成する。当業者には理解されるように、工程４３０では、プリプロセッサ１０５は自動的にローカル変数を更新して１つの構成要素に関連する親構成要素を参照する。
【００２４】
工程４３５では、プリプロセッサ１０５は、コンフィギュレーション・データの終わりに遭遇するまで、複数の構成要素の各々に対する完全パス名を構成しながら工程４０５〜４３０を繰り返す。一実施例では、プリプロセッサ１０５は記憶装置１３０に母国語でコードを格納する。
【００２５】
本明細書に記載した工程または操作は単に例示的なものである。これらの工程または操作には本発明の精神から逸脱することなく多数の変更を加えてよい。例えば、工程は異なる順序で実行されてよく、あるいは工程は付加、削除または修正されてよい。
【００２６】
装置１００は少なくとも１つのコンピュータ可読信号を保持するメディアを含む。装置１００のコンピュータ可読信号を保持するメディアの一例には、１つまたは複数の磁気的、電気的、工学的、生物学的、および原子的データ格納媒体などの記録可能なデータ記憶媒体の一例が含まれる。一実施例では、記録可能なデータ格納媒体は記憶装置１０１および２０１を含む。別の実施例では、装置１００のコンピュータ可読信号を保持するメディアは、例えば、１つまたは複数の電話網、ローカル・エリア・ネットワーク（「ＬＡＮ」）、インターネット、および無線ネットワークといった装置１００を含むかまたはそれに結合されたネットワーク上で伝達される変調された搬送信号を含んでいる。当業者には理解されるであろうように、装置１００の典型的な構成要素は、多数のプログラミング言語のいずれかで書かれたかまたは実施された計算機命令のセットおよび／またはシリーズを使用するかつ／または含む。
【００２７】
本発明の典型的な実施形態を本明細書に描写し記載してきたが、本発明の精神から逸脱することなく種々の変更、付加、置換等を行うことができ、したがってそれらは特許請求の範囲に定められた本発明の範囲内にあると考えられることは当業者には明白であろう。
【図面の簡単な説明】
【００２８】
【図１】ソフトウェア・プログラム、埋め込まれたプリプロセッサ、ジオメトリ・マネージャおよびグラフィカル・ユーザ・インタフェース（「ＧＵＩ」）を備えた装置の例示的な一実施形態を示す図である。
【図２】図１の装置の１つまたは複数の工程のフローチャートを示す図である。
【図３】図１の装置の埋め込まれたプリプロセッサの１つまたは複数の工程のフローチャートを示す図である。
【図４】図３の装置の完全パス名の構成の１つまたは複数の工程のフローチャートを示す図である。
【図１】
2004362577.tif 000003
【図２】
2004362577.tif 000004
【図３】
2004362577.tif 000005
【図４】
2004362577.tif 000006