(57)【要約】【課題】機器に対応したグラフィック表現を自在に変更設定してＧＵＩアプリケーションを生成することを可能としたアプリケーション開発支援装置および方法を提供する。【解決手段】グラフィカル・ユーザインタフェース（ＧＵＩ）に設定される各コンポーネントの論理部分と、グラフィックス表現部分とを分離して構成し、論理部分と、グラフィックス表現部分とに基づいて、ＧＵＩコンポーネントを生成する構成とした。本構成により、論理部分を様々な機器において共通に使用し、様々な表現態様を設定した異なるグラフィックス表現部分を機器に応じて選択することにより、機器に適応したＧＵＩを容易に構築可能となる。【選択図】　図２
2004102500.tif 000002
【特許請求の範囲】
【請求項１】
グラフィカル・ユーザインタフェース（ＧＵＩ）を構成するコンポーネントの機能および表示態様の設定情報を持つＧＵＩアプリケーションの開発支援を行なうＧＵＩアプリケーション開発支援装置であり、
コンポーネントの機能に関するプログラムを格納した論理部品を記憶した論理部品記憶部と、
コンポーネントのグラフィックス表現に関するプログラムを格納したグラフィックス表現部品を記憶したグラフィックス表現部品記憶部と、
前記論理部品記憶部から抽出した論理部品と、前記グラフィックス表現部品記憶部から抽出したグラフィックス表現部品とを組み合わせて、ＧＵＩコンポーネントを生成する編集処理部と、
を有することを特徴とするＧＵＩアプリケーション開発支援装置。
【請求項２】
前記グラフィックス表現部品記憶部は、複数の異なるグラフィックス表現処理実行プログラムを格納した複数のグラフィックス表現部品記憶部からなり、
前記編集処理部は、入力情報に従って、前記複数のグラフィックス表現部品記憶部から１つのグラフィックス表現部品記憶部を選択し、選択記憶部からグラフィックス表現部品を抽出する処理を実行する構成であることを特徴とする請求項１に記載のＧＵＩアプリケーション開発支援装置。
【請求項３】
前記グラフィックス表現部品記憶部は、複数の異なるグラフィックス表現処理実行プログラムを格納した複数のグラフィックス表現部品記憶部からなり、
少なくとも１以上のグラフィックス表現部品記憶部の格納するグラフィックス表現部品には、アニメーション実行プログラムが格納されていることを特徴とする請求項１に記載のＧＵＩアプリケーション開発支援装置。
【請求項４】
前記編集処理部は、ＧＵＩコンポーネントの生成において、各コンポーネントに対応するプロパティ、メソッド、および、イベントの編集処理を実行する構成であることを特徴とする請求項１に記載のＧＵＩアプリケーション開発支援装置。
【請求項５】
グラフィカル・ユーザインタフェース（ＧＵＩ）を構成するコンポーネントの機能および表示態様の設定情報を持つＧＵＩアプリケーションを生成するＧＵＩアプリケーションプログラム生成方法であり、
コンポーネントの機能に関するプログラムを格納した論理部品を記憶した論理部品記憶部から論理部品を選択抽出する論理部品選択ステップと、
コンポーネントのグラフィックス表現に関するプログラムを格納したグラフィックス表現部品を記憶したグラフィックス表現部品記憶部からグラフィックス表現部品を選択抽出するグラフィックス表現部品選択ステップと、
前記論理部品記憶部から抽出した論理部品と、前記グラフィックス表現部品記憶部から抽出したグラフィックス表現部品とを組み合わせて、ＧＵＩコンポーネントを生成するステップと、
を有することを特徴とするＧＵＩアプリケーションプログラム生成方法。
【請求項６】
前記グラフィックス表現部品記憶部は、複数の異なるグラフィックス表現処理実行プログラムを格納した複数のグラフィックス表現部品記憶部からなり、
前記グラフィックス表現部品選択ステップは、
入力情報に従って、前記複数のグラフィックス表現部品記憶部から１つのグラフィックス表現部品記憶部を選択し、選択記憶部からグラフィックス表現部品を抽出する処理を実行することを特徴とする請求項５に記載のＧＵＩアプリケーションプログラム生成方法。
【請求項７】
前記編集処理ステップは、ＧＵＩコンポーネントの生成において、各コンポーネントに対応するプロパティ、メソッド、および、イベントの編集処理を実行することを特徴とする請求項５に記載のＧＵＩアプリケーションプログラム生成方法。
【請求項８】
グラフィカル・ユーザインタフェース（ＧＵＩ）を構成するコンポーネントの機能および表示態様の設定情報を持つＧＵＩアプリケーションを生成するＧＵＩアプリケーションプログラム生成処理を実行するコンピュータ・プログラムであって、
コンポーネントの機能に関するプログラムを格納した論理部品を記憶した論理部品記憶部から論理部品を選択抽出する論理部品選択ステップと、
コンポーネントのグラフィックス表現に関するプログラムを格納したグラフィックス表現部品を記憶したグラフィックス表現部品記憶部からグラフィックス表現部品を選択抽出するグラフィックス表現部品選択ステップと、
前記論理部品記憶部から抽出した論理部品と、前記グラフィックス表現部品記憶部から抽出したグラフィックス表現部品とを組み合わせて、ＧＵＩコンポーネントを生成するステップと、
を有することを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＧＵＩアプリケーション開発支援装置および方法、並びにコンピュータ・プログラムに関する。さらに詳細には、グラフィカル・ユーザインタフェース（ＧＵＩ）に設定される各コンポーネントの論理部分と、グラフィックス表現部分とを分離して構成し、論理部分を様々な機器において共通に使用することを可能とし、一方、グラフィックス表現部分を各機器に応じて選択可能とすることにより、様々な機器に適応したユーザインタフェースを容易に構築することを可能としたＧＵＩアプリケーション開発支援装置および方法、並びにコンピュータ・プログラムに関する。
【０００２】
【従来の技術】
ＰＣ、通信端末、あるいは様々な情報家電等においては、データ表示あるいはデータ入出力用ユーザインタフェースとしてＣＲＴ，ＬＣＤ等のディスプレイが使用されている。このようなディスプレイには、例えば情報家電の利用形態に応じた機能を設定した画面イメージがグラフィッカル・ユーザインタフェース（ＧＵＩ）として表示される。ＧＵＩには、例えば入力ボタンの配置、データ入力欄の設定、あるいはボタン押下時の処理等、様々な機能が設定され、また様々な表示画面のイメージ設定が行なわれる。このようなユーザインタフェース画面のデザイン、機能を設定するためのアプリケーションプログラムを開発するためのプログラム言語として、Ｓｕｎ　Ｍｉｃｒｏｓｙｓｔｅｍｓ，Ｉｎｃ．により配布されているＪａｖａが多く利用されている。
【０００３】
Ｊａｖａ言語で書かれたプログラムは、コンピュータ、プラットフォームに依存しないＪａｖａ実行ファイル形式としてのバイトコード（Ｂｙｔｅ　Ｃｏｄｅ）に変換され、Ｊａｖａ仮想マシン（ＪａｖａＶＭ）により読み取られて機械語変換（インタプリタ）がなされ様々な装置上において実行される。
【０００４】
Ｊａｖａにおいては、アプリケーションソフトウェアを容易に短時間で製作するために、再コンパイルの不要なソフトウェア部品（コンポーネント）をあらかじめ用意しておき、その部品を組み合わせてプログラムを作成する。Ｊａｖａにおいては、これらの部品の再利用化技術（Ｊａｖａ　Ｂｅａｎｓ）が構築されている。
【０００５】
部品は、例えば、ディスプレイに表示するウィンドウ、ボタン、リスト、コンボボックス、テキスト入力フィールド等の様々なコンポーネントを単位として設定され、これら部品（コンポーネント）は、例えばボタン形状、配置情報等の属性情報としての「プロパティ」、部品に対するアクションの結果としての処理としての「メソッド」、さらに、部品に対するアクション、例えばデータ到着、割り込み発生、プロパティ変更、メソッド呼び出し等が発生した際に、別の部品に事象を連絡する機能としての「イベント」が規定される。これら、「プロパティ」、「メソッド」、「イベント」は、Ｊａｖａ　ｂｅａｎｓにおける部品の構成要件とされる。
【０００６】
Ｊａｖａの実行最小プログラム単位は、「クラス（ｃｌａｓｓ）」と呼ばれ、１以上のクラスによってＪａｖａプログラムが生成される。クラスはデータとしての変数（Ｖａｒｉａｂｌｅ）と、動作としてのメソッド（Ｍｅｔｈｏｄ）を持つ。このクラスとして設定されるプログラムコンポーネントを、例えばインターネット、ＬＡＮのようなネットワークを介してＰＣ、情報家電に転送し、格納することが可能であり、クラスファイルを格納した装置側では、プラットフォームに依存しないＪａｖａ仮想マシンが、クラスファイル内に格納されたプログラムを実行することができる。
【０００７】
前述したように、ＧＵＩを構成するコンポーネント、例えば、ボタン、リスト、コンボボックス、テキスト入力フィールド等の様々なコンポーネントは、プロパティとしてコンポーネントの形状、配置情報等の属性情報を有し、さらにメソッド、イベント等の機能情報が定義された部品として設定される。
【０００８】
すなわち、グラフィカル・ユーザインタフェース上に設定されるボタン等のコンポーネント（ＧＵＩ部品）の機能、例えばオンされたときの処理やオフされたときの処理等の機能を定義している論理部分と、コンポーネントの表示イメージ、すなわちグラフィックス表現部分とは一体化され、ＧＵＩを設計するプログラミング処理においては、論理部分と、グラフィックス表現部分とが一体化されたコンポーネントを選択して設定することによる様々なアプリケーションの設計が行なわれている。
【０００９】
しかし、ＧＵＩを搭載する機器によって最適なグラフィックイメージは異なる。例えば全体として柔らかい穏やかなイメージとしたり、あるいは余分なグラフィックスを排除し、機能重視型のイメージとする等である。このように異なるイメージを持つＧＵＩを作成する場合、上述の論理部分と、グラフィックス表現部分とが一体化されたコンポーネントを利用する構成では、各イメージに応じた別コンポーネントを生成することが必要となり、コンポーネント作成処理の負荷が増大し、またコンポーネント数の増加にもつながることとなる。
【００１０】
【発明が解決しようとする課題】
本発明は、上記問題点に鑑みてなされたものであり、グラフィカル・ユーザインタフェース（ＧＵＩ）に設定される各コンポーネントの論理部分と、グラフィックス表現部分とを分離して構成し、論理部分を様々な機器において共通に使用することを可能とし、一方、グラフィックス表現部分を各機器に応じて選択可能とすることにより、様々な機器に適応したユーザインタフェースを容易に構築することを可能としたＧＵＩアプリケーション開発支援装置および方法、並びにコンピュータ・プログラムを提供することを目的とする。
【００１１】
【課題を解決するための手段】
本発明の第１の側面は、
グラフィカル・ユーザインタフェース（ＧＵＩ）を構成するコンポーネントの機能および表示態様の設定情報を持つＧＵＩアプリケーションの開発支援を行なうＧＵＩアプリケーション開発支援装置であり、
コンポーネントの機能に関するプログラムを格納した論理部品を記憶した論理部品記憶部と、
コンポーネントのグラフィックス表現に関するプログラムを格納したグラフィックス表現部品を記憶したグラフィックス表現部品記憶部と、
前記論理部品記憶部から抽出した論理部品と、前記グラフィックス表現部品記憶部から抽出したグラフィックス表現部品とを組み合わせて、ＧＵＩコンポーネントを生成する編集処理部と、
を有することを特徴とするＧＵＩアプリケーション開発支援装置にある。
【００１２】
さらに、本発明のＧＵＩアプリケーション開発支援装置の一実施態様において、前記グラフィックス表現部品記憶部は、複数の異なるグラフィックス表現処理実行プログラムを格納した複数のグラフィックス表現部品記憶部からなり、前記編集処理部は、入力情報に従って、前記複数のグラフィックス表現部品記憶部から１つのグラフィックス表現部品記憶部を選択し、選択記憶部からグラフィックス表現部品を抽出する処理を実行する構成であることを特徴とする。
【００１３】
さらに、本発明のＧＵＩアプリケーション開発支援装置の一実施態様において、前記グラフィックス表現部品記憶部は、複数の異なるグラフィックス表現処理実行プログラムを格納した複数のグラフィックス表現部品記憶部からなり、少なくとも１以上のグラフィックス表現部品記憶部の格納するグラフィックス表現部品には、アニメーション実行プログラムが格納されていることを特徴とする。
【００１４】
さらに、本発明のＧＵＩアプリケーション開発支援装置の一実施態様において、前記編集処理部は、ＧＵＩコンポーネントの生成において、各コンポーネントに対応するプロパティ、メソッド、および、イベントの編集処理を実行する構成であることを特徴とする。
【００１５】
さらに、本発明の第２の側面は、
グラフィカル・ユーザインタフェース（ＧＵＩ）を構成するコンポーネントの機能および表示態様の設定情報を持つＧＵＩアプリケーションを生成するＧＵＩアプリケーションプログラム生成方法であり、
コンポーネントの機能に関するプログラムを格納した論理部品を記憶した論理部品記憶部から論理部品を選択抽出する論理部品選択ステップと、
コンポーネントのグラフィックス表現に関するプログラムを格納したグラフィックス表現部品を記憶したグラフィックス表現部品記憶部からグラフィックス表現部品を選択抽出するグラフィックス表現部品選択ステップと、
前記論理部品記憶部から抽出した論理部品と、前記グラフィックス表現部品記憶部から抽出したグラフィックス表現部品とを組み合わせて、ＧＵＩコンポーネントを生成するステップと、
を有することを特徴とするＧＵＩアプリケーションプログラム生成方法にある。
【００１６】
さらに、本発明のＧＵＩアプリケーションプログラム生成方法の一実施態様において、前記グラフィックス表現部品記憶部は、複数の異なるグラフィックス表現処理実行プログラムを格納した複数のグラフィックス表現部品記憶部からなり、前記グラフィックス表現部品選択ステップは、入力情報に従って、前記複数のグラフィックス表現部品記憶部から１つのグラフィックス表現部品記憶部を選択し、選択記憶部からグラフィックス表現部品を抽出する処理を実行することを特徴とする。
【００１７】
さらに、本発明のＧＵＩアプリケーションプログラム生成方法の一実施態様において、前記編集処理ステップは、ＧＵＩコンポーネントの生成において、各コンポーネントに対応するプロパティ、メソッド、および、イベントの編集処理を実行することを特徴とする。
【００１８】
さらに、本発明の第３の側面は、
グラフィカル・ユーザインタフェース（ＧＵＩ）を構成するコンポーネントの機能および表示態様の設定情報を持つＧＵＩアプリケーションを生成するＧＵＩアプリケーションプログラム生成処理を実行するコンピュータ・プログラムであって、
コンポーネントの機能に関するプログラムを格納した論理部品を記憶した論理部品記憶部から論理部品を選択抽出する論理部品選択ステップと、
コンポーネントのグラフィックス表現に関するプログラムを格納したグラフィックス表現部品を記憶したグラフィックス表現部品記憶部からグラフィックス表現部品を選択抽出するグラフィックス表現部品選択ステップと、
前記論理部品記憶部から抽出した論理部品と、前記グラフィックス表現部品記憶部から抽出したグラフィックス表現部品とを組み合わせて、ＧＵＩコンポーネントを生成するステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【００１９】
【作用】
本発明の構成によれば、グラフィカル・ユーザインタフェース（ＧＵＩ）に設定される各コンポーネントの論理部分と、グラフィックス表現部分とを分離して構成し、論理部分と、グラフィックス表現部分とに基づいて、ＧＵＩコンポーネントを生成する構成としたので、論理部分を様々な機器において共通に使用することを可能とし、一方、様々な表現態様を設定した異なるグラフィックス表現部分を各機器に応じて選択可能とすることにより、様々な機器に適応したユーザインタフェースを容易に構築することが可能となる。
【００２０】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、ＣＤやＦＤ、ＭＯなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【００２１】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づく、より詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【００２２】
【発明の実施の形態】
以下、本発明のＧＵＩアプリケーション開発支援装置および方法、並びにコンピュータ・プログラムについて、図面を参照しながら詳細に説明する。
【００２３】
［１．ハードウェア構成］
まず、本発明のＧＵＩアプリケーション開発支援装置のハードウェア構成例について、図１を参照して説明する。図１を参照しながら、ＧＵＩアプリケーション開発支援装置１００内の各構成要素について説明する。ＧＵＩアプリケーション開発支援装置１００のメイン・コントローラであるＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）１０１は、オペレーティング・システム（ＯＳ）の制御下で、各種のＧＵＩアプリケーション開発プログラムを実行する。ＣＰＵ１０１は、例えば、Ｊａｖａ言語に基づくプログラム作成処理の実行、具体的には、ボタン、コンボボックス等、ＧＵＩ画面上に設定する各コンポーネントの機能の設定や、表示イメージの設定処理等を行なう。図示の通り、ＣＰＵ１０１は、バス１０７によって他構成部と相互接続されている。
【００２４】
メモリ１０２は、ＣＰＵ１０１において実行されるプログラム・コードを格納したり、実行中の作業データを一時保管するために使用される記憶装置である。同図に示すメモリ１０２は、ＲＯＭなどの不揮発性メモリ及びＤＲＡＭなどの揮発性メモリの双方を含む。
【００２５】
グラフィックス処理チップ１５０は、各種ＧＵＩコンポーネントに対する配色処理を実行する専用の処理回路が組み込まれたチップである。
【００２６】
表示制御部としてのディスプレイ・コントローラ１０３は、ＣＰＵ１０１が発行する描画命令を実際に処理するための専用コントローラである。ディスプレイ・コントローラ１０３において処理された描画データは、例えばフレーム・バッファ（図示しない）に一旦書き込まれた後、ディスプレイ１０８によって画面出力される。例えば、ＨＤＤ（１１１）から再生された画像や、ＣＰＵ１０１により処理された画像は、ディスプレイ１０８で画面表示されて、ユーザはその提示画面を見ることが出来る。
【００２７】
入力機器インターフェース１０４は、キーボード１０９やマウス１１０などのユーザ入力機器をＧＵＩアプリケーション開発支援装置１００に接続するための装置である。ユーザは、キーボード１０９やマウス１１０を介して、画像を処理するためや表示するためのコマンドなどを入力することができる。
【００２８】
ネットワーク・インターフェース１０５は、Ｅｔｈｅｒｎｅｔなどの所定の通信プロトコルに従って、ＧＵＩアプリケーション開発支援装置１００をＬＡＮ（Ｌｏｃａｌ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）などの局所的ネットワーク、さらにはインターネットのような広域ネットワークに接続することができる。
【００２９】
ネットワーク上では、複数のホスト端末やサーバー（図示しない）がトランスペアレントな状態で接続され、分散コンピューティング環境が構築されている。ネットワーク上では、ソフトウェア・プログラムやデータ・コンテンツなどの配信サービスを行うことができる。例えば、動画像、静止画像等が保存されている他のサーバーから画像データを、ネットワーク経由でＨＤＤ（１１１）へダウンロードすることができる。
【００３０】
外部機器インターフェース１０６は、デジタルカメラや、ハード・ディスク・ドライブ（ＨＤＤ）１１１やメディア・ドライブ１１２などの外部装置をＧＵＩアプリケーション開発支援装置１００に接続するための装置である。
【００３１】
ＨＤＤ１１１は、記憶媒体としての磁気ディスクを固定的に搭載した外部記憶装置であり、記憶容量やデータ転送速度などの点で優れており、ランダムアクセスも可能である。例えばソフトウェア・プログラムを実行可能な状態でＨＤＤ１１１上に置くプログラム・インストールが可能である。ＨＤＤ１１１には、ＣＰＵ１０１が実行すべきオペレーティング・システムのプログラム・コードや、アプリケーション・プログラム、デバイス・ドライバなどが不揮発的に格納されている。
【００３２】
メディア・ドライブ１１２は、ＣＤ（Ｃｏｍｐａｃｔ　Ｄｉｓｃ）やＭＯ（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ　ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ　Ｖｅｒｓａｔｉｌｅ　Ｄｉｓｃ）などの可搬型メディア１６０を装填して、そのデータ記録面にアクセスするための装置である。
【００３３】
可搬型メディア１６０は、主として、ソフトウェア・プログラムやデータ・ファイルなどをコンピュータ可読形式のデータとしてバックアップすることや、これらをシステム間で移動（すなわち販売・流通・配布を含む）する目的で使用される。各種の処理を行うためのアプリケーション・プログラムを、これら可搬型メディアを利用して複数の機器間で物理的に流通・配布することができる。
【００３４】
なお、図１に示すような装置は、米ＩＢＭ社のパーソナル・コンピュータ”ＰＣ／ＡＴ（Ｐｅｒｓｏｎａｌ　Ｃｏｍｐｕｔｅｒ／Ａｄｖａｎｃｅｄ　Ｔｅｃｈｎｏｌｏｇｙ）”の互換機又は後継機として実現可能である。勿論、他のアーキテクチャを備えたコンピュータを適用することも可能である。
【００３５】
［２．機能構成］
次に、グラフィカル・ユーザインタフェース（ＧＵＩ）に設定される各コンポーネントの論理部分と、グラフィックス表現部分とを分離して構成して、ＧＵＩアプリケーションを開発する本発明のＧＵＩアプリケーション開発支援装置の機能構成について図２を参照して説明する。
【００３６】
図２に示すように、本発明のＧＵＩアプリケーション開発支援装置は、ユーザインタフェースとしての画面上に設定するボタン、コンボボックス、リスト、ウィンドウ、テキストボックス等、様々な部品（コンポーネント）について記憶した部品記憶部２００を有する。部品記憶部２００は論理部品記憶部２０１と、グラフィックス表現部品記憶部（シンプル）２０２と、グラフィックス表現部品記憶部（リッチ）２０３を有する。
【００３７】
論理部品記憶部２０１は、ユーザインタフェースとしての画面上に設定するボタン、コンボボックス、リスト、ウィンドウ、テキストボックス等、様々な部品（コンポーネント）についての論理情報を格納した部品である。例えばボタンであれば、ボタンの機能としてのオンされた際の処理やオフされたときの処理等の機能を定義したソフトウェアプログラム部品として構成される。
【００３８】
一方、グラフィックス表現部品記憶部（シンプル）２０２と、グラフィックス表現部品記憶部（リッチ）２０３は、コンポーネントの表示イメージ情報を格納している、すなわちグラフィックス表現プログラムを格納したソフトウェアプログラム部品として構成される。グラフィックス表現部品記憶部（シンプル）２０２と、グラフィックス表現部品記憶部（リッチ）２０３とは、それぞれ異なるグラフィックス表現を実行するプログラムを格納した部品である。
【００３９】
ＧＵＩアプリケーションプログラムの開発者としてのオペレータは、データ入出力部２２０を介して編集処理部２１０に対して、各種のデータ入力を実行し、ボタン、コンボボックス等の各コンポーネントの機能、グラフィックイメージを設定してＧＵＩコンポーネントを構築する。
【００４０】
コンポーネントを作成処理実行プログラムは、例えばＪａｖａプログラムの１つのクラス（ファクトリークラス）である。編集処理部２１０はファクトリークラスを実行して各種のコンポーネントを作成する。なお、編集処理部２１０における処理は、図１のハードウェア構成図においては、ＣＰＵ１０１の制御の下に実行される処理である。
【００４１】
部品（コンポーネント）は、例えばボタン形状、配置情報等の属性情報としての「プロパティ」、部品に対するアクションの結果としての処理としての「メソッド」、さらに、部品に対するアクション、例えばデータ到着、割り込み発生、プロパティ変更、メソッド呼び出し等が発生した際に、別の部品に事象を連絡する機能としての「イベント」が規定されたＧＵＩコンポーネントとして編集処理部２１０において編集される。
【００４２】
編集処理部２１０は、部品（コンポーネント）に設定されるプロパティを編集するプロパティ編集部２１１、メソッドを編集するメソッド編集部２１２、イベントを編集するイベント編集部２１３を有する。
【００４３】
オペレータは、生成するＧＵＩコンポーネントの見た目、すなわちグラフィックス表現を設定する際に、ファクトリークラスを実行する編集処理部２１０に対して、Ｌｏｏｋ＆Ｆｅｅｌパッケージ指定データを入力する。すなわち、「リッチ」あるいは「シンプル」のいずれかを指定する。
【００４４】
この指定データに従って、編集処理部２１０においてファクトリークラスが実行され、指定データに応じて、グラフィックス表現部品記憶部（シンプル）２０２、あるいは、グラフィックス表現部品記憶部（リッチ）２０３から、いずれかの対応プログラム部品を読み出すとともに、論理部品記憶部２０１の読み出し部品とともにコンポーネントを作成する。
【００４５】
例えばボタンについてのＧＵＩコンポーネントを生成する際には、部品（コンポーネント）についての論理情報を格納した部品を記憶した論理部品記憶部２０１からボタン部品を読み出し、さらに、オペレータからのＬｏｏｋ＆Ｆｅｅｌパッケージ指定データ、すなわち、「リッチ」あるいは「シンプル」のいずれかの指定データに応じて、グラフィックス表現部品記憶部（シンプル）２０２、あるいは、グラフィックス表現部品記憶部（リッチ）２０３から、ボタンのグラフィックス表現プログラム格納部品を読み出して、論理部品と、「リッチ」あるいは「シンプル」のいずれかのグラフィックス表現部品とを組み合わせて、１つのボタンコンポーネントを生成する。
【００４６】
ボタン以外にも、コンボボックス、リスト、ウィンドウ、テキストボックス等、様々な部品（コンポーネント）について、同様の編集処理が実行され、編集処理の後、設定されたＧＵＩアプリケーションプログラムがプログラム記憶部２２１に格納され、プログラム実行部２２２において実行され、生成されたＧＵＩが表示部２２３に表示される。
【００４７】
なお、上述の実施例ではグラフィックス表現プログラムを格納した部品を「シンプル」、「リッチ」の２種類のみを設定した例を説明したが、これらの種類は３以上の任意の数として設定することも可能であり、オペレータは、設定されたグラフィックス表現部品のいずれかの指定データを入力し、指定データに従ってグラフィックス表現部品が選択されて、各種のＧＵＩコンポーネントが作成される。
【００４８】
［３．処理シーケンス］
次に、本発明のＧＵＩアプリケーション開発支援装置を適用して、ＧＵＩコンポーネントを生成する処理の手順について、図３および図４を参照して説明する。
【００４９】
図３は、グラフィックス表現部品の「シンプル」を選択して、ＧＵＩコンポーネントを生成する処理シーケンスを示した図である。図３において、左から、オペレータ、ＧＵＩ生成アプリケーション、コンポーネントファクトリ、グラフィックス表現部分、論理部分の各処理を示している。なお、グラフィックス表現部分、論理部分の処理とは、図２に示すグラフィックス表現部品記憶部（シンプル）２０２、論理部品記憶部２０１の読み出し部品に格納されたプログラムの実行に相当し、これらの処理、およびコンポーネントファクトリの処理は、図２の編集処理部２１０において実行される。
【００５０】
まず、ステップＳ１０１において、オペレータは、ＧＵＩコンポーネントの生成コマンド（Ｃｒｅａｔｅ）をＧＵＩ生成アプリケーションに対して入力する。このＧＵＩコンポーネントの生成コマンド（Ｃｒｅａｔｅ）には、コンポーネントの種類、例えば「ボタン」、「リスト」、「コンボボックス」、「ラジオボタン」、「ウィンドウ」などのコンポーネント種類を指定したデータとともに入力される。
【００５１】
さらに、ステップＳ１０２において、オペレータからグラフィックス表現を指定するための「Ｌｏｏｋ＆Ｆｅｅｌ」指定がアプリケーションを介してコンポーネントファクトリに対して出力される。ここでは、「Ｌｏｏｋ＆Ｆｅｅｌ」指定として「シンプル」を指定したものとする。
【００５２】
次にステップＳ１０３において、アプリケーションからコンポーネントファクトリに対してコンポーネント生成コマンドが出力される。このコマンドには、先のステップＳ１０１において指定されたコンポーネント種類を示す識別データが含まれる。
【００５３】
ステップＳ１０４では、コンポーネントファクトリからグラフィックス表現部分（シンプル）および論理部分に対してコンポーネント生成命令（Ｃｒｅａｔｅ）が出力され、論理部分、グラフィックス表現部分の格納プログラムに従って、コンポーネント生成が実行される。
【００５４】
ステップＳ１０５以下の処理は、アプリケーションからコンポーネントの処理、例えばコンポーネントとしての「ウィンドウ」のオープン処理命令を行なった場合の処理シーケンスを示す。アプリケーションからの、コンポーネントのオープン処理命令は、論理部分に渡され、論理部分のプログラムの実行に基づいて、ペイント（Ｐａｉｎｔ）命令がグラフィックス表現部分（シンプル）に渡される。グラフィックス表現部分（シンプル）は、論理部分からの入力命令に従って、コンポーネントのペイント処理を実行する。
【００５５】
ここでは、コンポーネント生成に適用されているグラフィックス表現部分が「シンプル」であるため、ディスプレイに表示される生成コンポーネント、すなわちボタン等は、Ｐａｉｎｔによるカラー設定のなされたのみのシンプル構成となる。
【００５６】
次に、グラフィックス表現部品の「リッチ」を選択して、ＧＵＩコンポーネントを生成する処理シーケンスについて図４を参照して説明する。図３と同様、左から、オペレータ、ＧＵＩ生成アプリケーション、コンポーネントファクトリ、グラフィックス表現部分、論理部分の各処理を示している。図３と同様、グラフィックス表現部分、論理部分の処理とは、図２に示すグラフィックス表現部品記憶部（シンプル）２０２、論理部品記憶部２０１の読み出し部品に格納されたプログラムの実行に相当し、これらの処理、およびコンポーネントファクトリの処理は、図２の編集処理部２１０において実行される。
【００５７】
まず、ステップＳ２０１において、オペレータは、ＧＵＩコンポーネントの生成コマンド（Ｃｒｅａｔｅ）をＧＵＩ生成アプリケーションに対して入力する。このＧＵＩコンポーネントの生成コマンド（Ｃｒｅａｔｅ）には、コンポーネントの種類、例えば「ボタン」、「リスト」、「コンボボックス」、「ラジオボタン」、「ウィンドウ」などのコンポーネント種類を指定したデータとともに入力される。
【００５８】
さらに、ステップＳ２０２において、オペレータからグラフィックス表現を指定するための「Ｌｏｏｋ＆Ｆｅｅｌ」指定がアプリケーションを介してコンポーネントファクトリに対して出力される。ここでは、「Ｌｏｏｋ＆Ｆｅｅｌ」指定として「リッチ」を指定したものとする。
【００５９】
次にステップＳ２０３において、アプリケーションからコンポーネントファクトリに対してコンポーネント生成コマンドが出力される。このコマンドには、先のステップＳ２０１において指定されたコンポーネント種類を示す識別データが含まれる。
【００６０】
ステップＳ２０４では、コンポーネントファクトリからグラフィックス表現部分（シンプル）および論理部分に対してコンポーネント生成命令（Ｃｒｅａｔｅ）が出力され、論理部分、グラフィックス表現部分（リッチ）の格納プログラムに従って、コンポーネント生成が実行される。
【００６１】
ステップＳ２０５以下の処理は、アプリケーションからコンポーネントの処理、例えばコンポーネントとしての「ウィンドウ」のオープン処理命令を行なった場合の処理シーケンスを示す。アプリケーションからの、コンポーネントのオープン処理命令は、グラフィックス表現部分に渡され、グラフィックス表現部分に格納されたアニメーションプログラムの実行に基づいて、アニメーションが実行（Ｓ２０６）される。
【００６２】
さらに、ステップＳ２０７において、オープン処理命令が論理部分に渡され、論理部分のプログラムの実行に基づいて、ペイント（Ｐａｉｎｔ）命令がグラフィックス表現部分（シンプル）に渡されて、グラフィックス表現部分（リッチ）は、論理部分からの入力命令に従って、コンポーネントのペイント処理を実行する。
【００６３】
この図４に示すシーケンス図では、コンポーネント生成に適用されているグラフィックス表現部分が「リッチ」であるため、ディスプレイに表示される生成コンポーネント、すなわちボタン等は、Ｐａｉｎｔによるカラー設定がなされるのみならず、アニメーション表現が実行される構成となる。
【００６４】
［４．ファイル構成例］
上述したような、コンポーネント表示を実行するためのファイル構成例について説明する。
【００６５】
例えばＧＵＩコンポーネントの例として、ボタン機能を持つアイコンとして、ボタコン［Ｂｕｔｔｃｏｎ］コンポーネントをＧＵＩコンポーネントとして構成する場合のファイルとしては、例えば次の各ファイルが必要となる。
【００６６】
ＣＢｕｔｔｃｏｎ．ｊａｖａ：ボタコンの論理部分を実装するクラス、
Ｂｕｔｔｃｏｎ．ｊａｖａ：ボタコンのグラフィックス表現部としてのＬｏｏｋ＆Ｆｅｅｌ部分を実装するクラス、
ｂｕｔｔｃｏｎ＿ｎｏｒｍａｌ＿ｏｆｆ．ｇｉｆ：ボタコンが「オフ」のときの画像、
ｂｕｔｔｃｏｎ＿ｎｏｒｍａｌ＿ｏｎ．ｇｉｆ：ボタコンが「オン」のときの画像、
ｂｕｔｔｃｏｎ＿ｐｕｓｈｅｄ．ｇｉｆ：ボタコンが押されているときの画像、
ＣＣｏｍｐｏｎｅｎｔＦａｃｔｏｒｙ．ｊａｖａ：アプリケーションがボタコンを作成するために使用するファクトリークラス、
Ａｐｐｌｉｃａｔｉｏｎ．ｊａｖａ：作成したボタコンを表示するためのアプリケーション。
なお、クラスは、Ｊａｖａの実行単位プログラムを示す。
【００６７】
上記各ファイルのディレクトリ構成を図５に示す。あるＧＵＩアプリケーションファイル［ａｐｐｌｉｃａｔｉｏｎ］の下位にツールキットとしての［ｃｕｓｔｏｍｔｏｏｌｋｉｔ］ファイルがあり、当ファイルにＣＢｕｔｔｃｏｎ．ｊａｖａ：ボタコンの論理部分を実装するクラスと、ＣＣｏｍｐｏｎｅｎｔＦａｃｔｏｒｙ．ｊａｖａ：アプリケーションがボタコンを作成するために使用するファクトリークラスが含まれ、さらに、グラフィックス表現情報としてのＬｏｏｋ＆Ｆｅｅｅｌファイル［ｌａｆ］ファイルが含まれる。
【００６８】
Ｌｏｏｋ＆Ｆｅｅｅｌファイル［ｌａｆ］には、Ｂｕｔｔｃｏｎ．ｊａｖａ：ボタコンのグラフィックス表現部としてのＬｏｏｋ＆Ｆｅｅｌ部分を実装するクラス、すなわち、上述したグラフィックス表現部品に対応するクラスが含まれ、さらに、イメージデータファイル［ｉｍａｇｅ］として、ｂｕｔｔｃｏｎ＿ｎｏｒｍａｌ＿ｏｆｆ．ｇｉｆ：ボタコンが「オフ」のときの画像、ｂｕｔｔｃｏｎ＿ｎｏｒｍａｌ＿ｏｎ．ｇｉｆ：ボタコンが「オン」のときの画像、ｂｕｔｔｃｏｎ＿ｐｕｓｈｅｄ．ｇｉｆ：ボタコンが押されているときの画像、の各々が含まれる。
【００６９】
ＧＵＩアプリケーションプログラムは、ユーザの入力情報に従って、これらの各ファイルに含まれる処理プログラムおよびイメージデータを適用した処理を実行する。具体的には、論理部品クラスのプログラムに従った各種の機能実行処理と、グラフィックス表現部品クラスのプログラムに従った各種のグラフィックス表現処理の両者が実行される。
【００７０】
［５．表示例］
次に、図６、および図７を参照して、各コンポーネントの論理部分と、グラフィックス表現部分とを分離した構成に基づいて生成したＧＵＩコンポーネントの表示処理例について説明する。
【００７１】
図６は、グラフィックス表現部分（シンプル）を適用して各コンポーネントを生成して表示した例を示す。ＧＵＩコンポーネントとしてボタン３１１、コンボボックス３１２を例にして説明する。
【００７２】
ボタン３１１の操作、例えばボタンのオン、オフ、あるいはフォーカス設定、すなわちカーソル設定を行なうと、ボタンコンポーネントの論理部分の処理により、ボタンのオン、オフ動作に基づく処理が実行される。さらに、論理部分からの例えばペイント命令により、グラフィックス表現部分（シンプル）が実行されて、ペイント処理、すなわち、ボタンの表示カラーを変更する処理が行なわれる。
【００７３】
コンボボックス３１２の操作、例えばコンボボックス３１２のオープン、クローズ等を行なうと、コンボボックスコンポーネントの論理部分の処理により、コンボボックスのオープン、クローズ動作に基づく処理が実行される。さらに、論理部分からの例えばペイント命令により、コンボボックスコンポーネントのグラフィックス表現部分（シンプル）が実行されて、ペイント処理、すなわち、コンボボックスの表示カラーを変更する等の処理が行なわれる。
【００７４】
なお、オペレータからの処理によってどのようなグラフィックス表現を実行するかは、各ＧＵＩコンポーネントに応じて異なる設定とすることが可能である。すなわち、グラフィックス表現部分（シンプル）の処理プログラムを変更することによって、各コンポーネントに対応したグラフィックス表現処理が可能となる。
【００７５】
図７は、グラフィックス表現部分（リッチ）を適用して各コンポーネントを生成して表示した例を示す。ＧＵＩコンポーネントとしてボタン３２０、コンボボックス３３０を例にして説明する。
【００７６】
ボタン３２０の操作、例えばボタンのオン、オフ、あるいはフォーカス設定、すなわちカーソル設定を行なうと、前述のペイント処理に加えて、ボタンコンポーネントのグラフィックス表現部分（リッチ）の処理として、アニメーション３２１，３２２の実行がなされる。図では分かり難いが、（ｂ）、（ｃ）においてボタンの周囲に波紋が広がるようなアニメーションが実行される。なお、論理部分の処理により、ボタンのオン、オフ動作に基づく処理が実行される。
【００７７】
さらに、コンボボックス３３０の操作、例えばコンボボックス３３０のオープン、クローズ等を行なうと、コンボボックスコンポーネントの論理部分の処理により、コンボボックスのオープン、クローズ動作に基づく処理が実行されるとともに、コンボボックスコンポーネントのグラフィックス表現部分（リッチ）の処理として、アニメーション３３１，３３２の実行がなされる。図では分かり難いが、（ｂ）、（ｃ）においてコンボボックスの下部に下側に広がるように設定されたアニメーションが実行される。
【００７８】
上述したように、本発明の構成では、グラフィカル・ユーザインタフェース（ＧＵＩ）に設定される各コンポーネントの論理部分と、グラフィックス表現部分とを分離して構成し、論理部分と、グラフィックス表現部分とに基づいて、ＧＵＩコンポーネントを生成する構成としたので、論理部分を様々な機器において共通に使用することを可能とし、一方、様々な表現態様を設定した異なるグラフィックス表現部分を各機器に応じて選択可能とすることにより、様々な機器に適応したユーザインタフェースを容易に構築することが可能となる。
【００７９】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【００８０】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【００８１】
例えば、プログラムは記録媒体としてのハードディスクやＲＯＭ（Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ　Ｄｉｓｃ　Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ），ＭＯ（Ｍａｇｎｅｔｏ　ｏｐｔｉｃａｌ）ディスク，ＤＶＤ（Ｄｉｇｉｔａｌ　Ｖｅｒｓａｔｉｌｅ　Ｄｉｓｃ）、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【００８２】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、ＬＡＮ（Ｌｏｃａｌ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【００８３】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【００８４】
【発明の効果】
以上説明してきたように、本発明のアプリケーション開発支援装置および方法によれば、グラフィカル・ユーザインタフェース（ＧＵＩ）に設定される各コンポーネントの論理部分と、グラフィックス表現部分とを分離して構成し、論理部分と、グラフィックス表現部分とに基づいて、ＧＵＩコンポーネントを生成する構成としたので、論理部分を様々な機器において共通に使用することを可能とし、一方、様々な表現態様を設定した異なるグラフィックス表現部分を各機器に応じて選択可能とすることにより、様々な機器に適応したユーザインタフェースを容易に構築することが可能となる。
【図面の簡単な説明】
【図１】本発明のＧＵＩアプリケーション開発支援装置のハードウェア構成例を示す図である。
【図２】本発明のＧＵＩアプリケーション開発支援装置の機能構成を示すブロック図である。
【図３】本発明のＧＵＩアプリケーション開発支援装置の処理シーケンスを説明するシーケンス図である。
【図４】本発明のＧＵＩアプリケーション開発支援装置の処理シーケンスを説明するシーケンス図である。
【図５】本発明のＧＵＩアプリケーション開発支援装置の処理を実行するために必要なファイル構成例を説明する図である。
【図６】本発明のＧＵＩアプリケーション開発支援装置において生成したＧＵＩコンポーネントの表示例を説明する図である。
【図７】本発明のＧＵＩアプリケーション開発支援装置において生成したＧＵＩコンポーネントの表示例を説明する図である。
【符号の説明】
１０１　ＣＰＵ
１０２　メモリ
１０３　ディスプレイコントローラ
１０４　入力機器インターフェース
１０５　ネットワークインターフェース
１０６　外部機器インターフェース
１０７　バス
１０８　ディスプレイ
１０９　キーボード
１１０　マウス
１１１　ＨＤＤ
１１２　メディアドライブ
１５０　グラフィックス処理チップ
１６０　過搬型メディア
２００　部品記憶部
２０１　論理部品記憶部
２０２　グラフィックス表現部品記憶部（シンプル）
２０３　グラフィックス表現部品記憶部（リッチ）
２１０　編集処理部
２１１　プロパティ編集部
２１２　メソッド編集部
２１３　イベント編集部
２２０　データ入出力部
２２１　プログラム記憶部
２２２　プログラム実行部
２２３　表示部
３１１　ボタン
３１２　コンボボックス
３２０　ボタン
３３０　コンボボックス
３２１，３２２　アニメーション
３３１，３３２　アニメーション
【図１】
2004102500.tif 000003
【図２】
2004102500.tif 000004
【図３】
2004102500.tif 000005
【図４】
2004102500.tif 000006
【図５】
2004102500.tif 000007
【図６】
2004102500.tif 000008
【図７】
2004102500.tif 000009