(57)【特許請求の範囲】
【請求項１】
インタラクティブなユーザーインターフェースを定義するシステムであって、
複数の状態を有するインタラクティブなユーザーインターフェースに対応する複数の全画面グラフィックを入力するグラフィカルユーザーインターフェースであって、
前記複数の全画面グラフィックの各々は、前記インタラクティブなユーザーインターフェースで使用される１若しくはそれ以上のインタラクティブな要素のために定義される領域を含み、前記インタラクティブなユーザーインターフェースの複数の状態のうちの１つに関連付けられているものであり、
前記１若しくはそれ以上のインタラクティブな要素は前記インタラクティブなユーザーインターフェースの複数の状態に対応する複数の状態を有するものである
前記グラフィカルユーザーインターフェースと、
前記複数の全画面グラフィックの各々の中で表示される前記１若しくはそれ以上のインタラクティブな要素の各々のための領域の当該全画面グラフィックに対する幾何学的特性および位置情報を定義するインタラクティブなグラフィックツールと、
前記１若しくはそれ以上のインタラクティブな要素の各々のために定義された領域の前記幾何学的特性および前記位置情報を格納するデータ記憶装置と、
コンピュータ可読コードおよび各状態にある前記１若しくはそれ以上のインタラクティブな要素の各々のために定義された前記領域のグラフィックを自動的に生成する出力生成器であって、
当該領域のグラフィックは、前記インタラクティブなユーザーインターフェースの各状態に関連付けられた前記各全画面グラフィックと、前記データ記憶装置に格納された当該領域の前記幾何学的特性および前記位置情報に基づいて生成されるものである、
前記出力生成器と
を有するシステム。
【請求項２】
請求項１記載のシステムにおいて、前記各状態にある１若しくはそれ以上のインタラクティブな要素の各々のために定義された前記領域のグラフィックは、前記インタラクティブなユーザーインターフェースの各状態に関連付けられた前記各全画面グラフィックの一部に対応しており、当該各全画面グラフィックの一部は、前記データ記憶装置に格納された当該領域の前記幾何学的特性および前記位置情報により画成されるものであるシステム。
【請求項３】
請求項１記載のシステムにおいて、前記出力生成器により生成された前記コンピュータ可読コードにより、コンピュータは、前記インタラクティブなユーザーインターフェースの各状態および前記１若しくはそれ以上のインタラクティブな要素の各々に関する入力に応答して、各状態にある前記１若しくはそれ以上のインタラクティブな要素の各々を、前記インタラクティブなユーザーインターフェース内で当該各インタラクティブな要素のために定義された前記領域に表示するものであるシステム。
【請求項４】
請求項１記載のシステムにおいて、前記インタラクティブなユーザーインターフェースは、ウェブブラウザにおいて表示されるものであるシステム。
【請求項５】
請求項１記載のシステムにおいて、さらに、
前記複数の全画面グラフィックの各々と、前記インタラクティブなユーザーインターフェースの複数の状態うちの１つとの関連付けを定義する第２のグラフィックツールを有するものであるシステム。
【請求項６】
請求項１記載のシステムにおいて、さらに、
前記各状態にある前記１若しくはそれ以上のインタラクティブな要素の各々に機能を割り当てる第３のグラフィックツールを有するものであるシステム。
【請求項７】
機械によりインタラクティブなユーザーインターフェースを定義する方法であって、
前記機械が、複数の状態を有するインタラクティブなユーザーインターフェースの各状態に対応する複数の全画面グラフィックの各々を入力する工程であって、
前記全画面グラフィックの各々は、前記インタラクティブなユーザーインターフェースで使用される１若しくはそれ以上のインタラクティブな要素のために定義される領域を含み、前記インタラクティブなユーザーインターフェースの複数の状態のうちの１つに関連付けられているものであり、
前記１若しくはそれ以上のインタラクティブな要素は前記インタラクティブなユーザーインターフェースの複数の状態に対応する複数の状態を有するものである、
前記入力する工程と、
前記機械が、前記全画面グラフィックの各々の中で表示される前記１若しくはそれ以上のインタラクティブな要素の各々ための領域を定義する工程であって、当該領域の当該全画面グラフィックに対する幾何学的特性および位置情報を定義する工程を含むものである、前記定義する工程と、
前記機械が、前記１若しくはそれ以上のインタラクティブな要素の各々のために定義された前記領域の前記幾何学的特性および前記位置情報を格納する工程と、
前記機械が、コンピュータ可読コードおよび各状態にある前記１若しくはそれ以上のインタラクティブな要素の各々のために定義された前記領域のグラフィックを自動的に生成する工程であって、
当該領域のグラフィックは、前記インタラクティブなユーザーインターフェースの各状態に関連付けられた前記各全画面グラフィックと、前記格納された当該領域の前記幾何学的特性および前記位置情報に基づいて生成されるものである、
前記生成する工程と
を有する方法。
【請求項８】
請求項７記載の方法において、さらに、
前記機械が、前記インタラクティブなユーザーインターフェースの追加状態または改訂状態に対応する１つの全画面グラフィックを入力する工程と、
前記機械が、前記１若しくはそれ以上のインタラクティブな要素の各々のために定義された領域の幾何学的特性および位置情報を読み出す工程と、
前記機械が、コンピュータ可読コードおよび前記追加状態または改訂状態の各状態にある前記１若しくはそれ以上のインタラクティブな要素の各々のために定義された前記領域のグラフィックを自動的に生成する工程と
を有するものである方法。
【請求項９】
請求項７記載の方法において、前記各状態にある１若しくはそれ以上のインタラクティブな要素の各々のために定義された前記領域のグラフィックは、前記インタラクティブなユーザーインターフェースの各状態に関連付けられた前記各全画面グラフィックの一部に対応しており、当該各全画面グラフィックの一部は、前記格納された当該領域の前記幾何学的特性および前記位置情報により画成されるものである方法。
【請求項１０】
請求項７記載の方法において、前記生成された前記コンピュータ可読コードにより、コンピュータは、前記インタラクティブなユーザーインターフェースの各状態および前記１若しくはそれ以上のインタラクティブな要素の各々に関する入力に応答して、各状態にある前記１若しくはそれ以上のインタラクティブな要素の各々を、前記インタラクティブなユーザーインターフェース内で当該各インタラクティブな要素のために定義された前記領域に表示するものである方法。
【請求項１１】
請求項７記載の方法において、前記インタラクティブなユーザーインターフェースは、ウェブブラウザにおいて表示されるものである方法。
【請求項１２】
請求項７記載の方法において、さらに、
前記機械が、コンピュータ可読コードおよび前記インタラクティブなユーザーインターフェースの各状態にある前記追加または改訂された１若しくはそれ以上のインタラクティブな要素の各々のために定義された領域のグラフィックを自動的に生成する工程であって、前記領域は、前記全画面グラフィック内の前記追加または改訂された１若しくはそれ以上のインタラクティブな要素の各々のために定義されるものである、前記生成する工程を有するものである方法。
【請求項１３】
機械により複数の状態を有するインタラクティブなユーザーインターフェースを定義する方法であって、当該インタラクティブなユーザーインターフェースは１若しくはそれ以上のインタラクティブな要素を有し、当該インタラクティブな要素は前記インタラクティブなユーザーインターフェースの複数の状態に対応する複数の状態を有するものであり、
前記機械が、前記インタラクティブなユーザーインターフェースの各状態に対応する複数の全画面グラフィックの各々を入力する工程と、
前記機械が、各状態にある前記１若しくはそれ以上のインタラクティブな要素を示す個々のグラフィックを自動的に生成する工程であって、
前記個々のグラフィックは、前記インタラクティブなユーザーインターフェースの各状態に関連付けられた前記各全画面グラフィックおよび当該各全画面グラフィック内に定義された前記１若しくはそれ以上のインタラクティブな要素のための領域に基づいて生成されるものである、
前記生成する工程と
を有する方法。
【請求項１４】
請求項１３記載の方法において、前記各状態にある前記１若しくはそれ以上のインタラクティブな要素の各々を示す前記個々のグラフィックは、前記インタラクティブなユーザーインターフェースの各状態に関連付けられた前記各全画面グラフィックの一部であり、当該各全画面グラフィックの一部は、前記１若しくはそれ以上のインタラクティブな要素のために定義された領域により画成されるものである方法
【請求項１５】
請求項１３記載の方法において、この方法は、さらに、
前記機械が、前記１若しくはそれ以上のインタラクティブな要素の各々のために定義された前記全画面グラフィック内の領域の幾何学的特性および位置情報を格納する工程を有するものである方法。
【請求項１６】
請求項１３記載の方法において、さらに、
前記機械が、前記インタラクティブなユーザーインターフェースの各状態に関するユーザーの入力に応答して、コンピュータに、前記個々のグラフィックを前記全画面グラフィック内の前記１若しくはそれ以上のインタラクティブな要素の各々のために定義された前記領域に表示させる前記インタラクティブなユーザーインターフェースに関するコンピュータ可読コードを作成する工程を有するものである方法。
【請求項１７】
機械により複数の状態を有するインタラクティブなユーザーインターフェースを定義する方法であって、当該インタラクティブなユーザーインターフェースは１若しくはそれ以上のインタラクティブな要素を有し、当該インタラクティブな要素は前記インタラクティブなユーザーインターフェースの複数の状態に対応する複数の状態を有するものであり、
前記機械が、前記インタラクティブなユーザーインターフェースのための第１の全画面グラフィックを入力する工程であって、当該第１の全画面グラフィックは、第１の状態にある前記１若しくはそれ以上のインタラクティブな要素を示すものである、前記入力する工程と、
前記機械が、前記インタラクティブなユーザーインターフェースのための前記第２の全画面グラフィックを入力する工程であって、当該第２の全画面グラフィックは、第２の状態にある前記１若しくはそれ以上のインタラクティブな要素を示すものである、前記入力する工程と、
前記機械が、前記第１および第２の全画面グラフィックの中で表示される前記１若しくはそれ以上のインタラクティブな要素の各々のための領域を定義する工程であって、当該領域の当該第１および第２の全画面グラフィックに対する幾何学的特性および位置情報を定義する工程を含むものである、前記定義する工程と、
前記機械が、前記１若しくはそれ以上のインタラクティブな要素の各々のために定義された前記第１または第２の全画面グラフィック内の領域の幾何学的特性および位置情報を格納する工程と、
前記機械が、コンピュータ可読コードおよび各状態にある前記１若しくはそれ以上のインタラクティブな要素の各々のために定義された前記領域のグラフィックを自動的に生成する工程であって、
前記第１の状態にある前記１若しくはそれ以上のインタラクティブな要素の各々のためのグラフィックは前記第１の全画面グラフィックから生成されるものであり、
前記第２の状態にある前記１若しくはそれ以上のインタラクティブな要素の各々のためのグラフィックは前記第２の全画面グラフィックから生成されるものである、
前記生成する工程と
を有する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は２００７年８月２２日付け出願済み米国仮特許出願第６０／９５７，３５４号「インタラクティブなユーザーインターフェースの定義（Ｄｅｆｉｎｉｎｇ  ａｎ  Ｉｎｔｅｒａｃｔｉｖｅ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅに基づく利益を主張するものである（この参照によりその出願内容は本明細書に組み込まれるものである）。
【０００２】
本発明は、インタラクティブな（対話型の）コンピュータユーザーインターフェースを定義する方法およびシステムに関する。
【背景技術】
【０００３】
インタラクティブなアプリケーションは、一般に、インタラクティブな要素（ボタンなど）から構成されたユーザーインターフェースを有する。そのインタラクティブな要素は、通常、ユーザー（利用者）のアクション（操作）応答する複数の状態を有する。ユーザーは、通常はコンピュータマウスであるポインティングデバイスを使って、当該インターフェース内の種々の位置にポインタを位置付ける。インタラクティブな要素の上にマウスポインタを位置付ける（ロールオーバー）などユーザーのアクションが起こると、前記マウスポインタの下にある、前記インタラクティブな要素の種々のグラフィックは、そのユーザーアクションに応答して表示され、当該インタラクティブな要素の異なる状態を示すことが可能である。
【０００４】
慣習的に、インタラクティブなインターフェース内のインタラクティブな要素は、１つの状態（通常）または２つの状態（通常およびロールオーバー）を有する単純なものなどであり、あるいは４つの状態（通常、ロールオーバー、クリック、および無効）を有する複雑なものの場合もある。インタラクティブなインターフェースの作成者は、任意の定義済み要素に、種々の所定の機能を関連付けることができる。
【０００５】
今日、インタラクティブなアプリケーションは、一般に、「カッティングアンドプレーシング（ｃｕｔｔｉｎｇ  ａｎｄ  ｐｌａｃｉｎｇ）」として知られた方法により構成される。まず、Ｍｉｃｒｏｓｏｆｔ（登録商標）ＰａｉｎｔやＡｄｏｂｅ  Ｐｈｏｔｏｓｈｏｐ（登録商標）などのグラフィック作成および編集ソフトウェアを使って、全体的な外観およびインターフェースのレイアウトを作成する。個々のインタラクティブな要素の各状態のグラフィックは、通常、それらの要素を定義して全体的なレイアウトからカットしたのち、個々のファイルを保存することにより作成される。２つの状態があるボタンなどの要素は、一般に、通常の状態で表示されるが、マウスの位置に応答してロールオーバー状態でも表示される。作成者は、ボタンのロールオーバー状態用の少なくとも１つの画像と、当該ボタンの通常画像を正しい位置に含む背景画像とを手動で作成して保存する。この方法では、インタラクティブな要素が複数あることが望ましいときなど、インタラクティブなインターフェースが複雑な場合に、多数のグラフィックファイルのカッティングアンドプレーシングが必要になる。複数の状態を有する複数の要素を含んだインターフェースなど、特定の場合、作成する必要がある画像の数「Ｉ」は、少なくともＩ＝（Ｅ×（Ｓ−１））＋１となる。ここで、Ｅは、インターフェース内のインタラクティブな要素の数、Ｓは、状態の数である（すべての要素が同じ数の状態を有すると仮定）。他の場合には、個々のインタラクティブな要素の各状態ごとにグラフィックを作成する必要がある。これら他の場合、作成者が作成および管理しなければならないグラフィックの数は、Ｉ＝（Ｅ×Ｓ）＋１に増える。
【０００６】
前記構成工程の第２の段階では、作成した各画像を、インターフェース内の適切な位置に配置する必要がある。最終的なインターフェースを作成する際、作成者は、通常、Ａｄｏｂｅ（登録商標）Ｆｌａｓｈ（登録商標）やＭｉｃｒｏｓｏｆｔ（登録商標）Ｖｉｓｕａｌ  Ｓｔｕｄｉｏ（登録商標）など、第２のソフトウェアアプリケーションを必要とする。作成者は、これらのツールを使って、各インタラクティブな要素の各状態の個々の画像を背景グラフィックに対し配置して、前記インタラクティブな要素の各状態の画像を、レイアウト全体における当該要素の元の位置に厳密に配置するよう試みる。当該カッティング段階において、要素ごとに各グラフィックファイルを作成および保存した時点で、諸ファイルは、各々のサイズ情報だけを保持し、当該要素が切り取られた（カットされた）インターフェース全体に対する各々の位置情報は保持していない。ファイル内にそのファイル固有の位置情報が欠落しているため、作成者は、完成させた個々のグラフィックをそれぞれ手動で配列して、通常、手間のかかる試行錯誤を何回も行って、意図した外観を実現しなければならない。
最後に、ユーザー入力に応答する所定の機能を各要素の各状態に割り当てるため、各インタラクティブな要素の各状態のグラフィックを構築し、機能を定義しなければならない。この定義は、出力プラットフォームに応じて、インターフェース全体における要素レイヤーの再構築中に行っても、別個の段階で行ってもよい。上記の工程は、全体的に時間がかかり、誤りが生じやすいため、前記「カッティングアンドプレーシング」および定義・再構築は、非効率的で多大な労力を要する。その後、作成者が１若しくはそれ以上の要素の１若しくはそれ以上の状態について画像を変更し、または状態を追加しようとすると、上記の各要素の「カッティングアンドプレーシング」および定義・再構築の工程全体をすべてやり直さなければならなくなる。
この出願の発明に関連する先行技術文献情報としては、以下のものがある（国際出願日以降国際段階で引用された文献及び他国に国内移行した際に引用された文献を含む）。
【先行技術文献】  
【特許文献】
【０００７】
【特許文献１】  米国特許出願公開第２００４／０２４３９３１号明細書
【特許文献２】  米国特許出願公開第２００２／００２３１１１号明細書
【特許文献３】  米国特許出願公開第２００３／００２５７３０号明細書
【発明の概要】
【課題を解決するための手段】
【発明の概要】
【課題を解決するための手段】
【０００８】
本発明は、インタラクティブな（対話型）ユーザーインターフェースを定義するシステムを提供するもので、１若しくはそれ以上の状態を有するインタラクティブなユーザーインターフェースの全画面グラフィックを少なくとも１つ入力するグラフィカルユーザーインターフェースを含む。各前記少なくとも１つの全画面グラフィックは、前記インタラクティブなユーザーインターフェースの状態の１つに関連付けることができる。インタラクティブなグラフィックツールを含めることができ、これにより各前記少なくとも１つの全画面グラフィック内で表示される１若しくはそれ以上のインタラクティブな要素の各々に対応した、前記インタラクティブなユーザーインターフェース内の領域を定義できる。また、データ記憶装置を含めることができ、これにより前記インタラクティブなユーザーインターフェースの、各前記１若しくはそれ以上のインタラクティブな要素に対応する前記定義された領域の幾何学的特性および位置情報を格納できる。さらに、出力生成器も含めることができ、これによりコンピュータ可読コードまたはグラフィックを自動的に生成して、各前記１若しくはそれ以上の定義されたインタラクティブな要素の各状態を表示可能にできる。
【０００９】
本発明の一態様において、各前記１若しくはそれ以上の定義されたインタラクティブな要素の各状態の前記コードまたは前記グラフィックは、各前記状態用に入力された各前記全画面グラフィックと、各前記インタラクティブな要素用に定義および格納された前記幾何学的特性および位置情報とから生成される。別の態様において、各前記１若しくはそれ以上の定義されたインタラクティブな要素の各状態の前記グラフィックは、各前記状態用に入力された前記全画面グラフィックの一部に対応しており、当該全画面グラフィックの一部は、各前記インタラクティブな要素用に定義および格納された前記幾何学的特性および位置情報により画成される。
【００１０】
さらに別の態様では、前記出力生成器により生成された前記コンピュータ可読コードにより、コンピュータは、各前記状態に関するユーザー（利用者）の入力および各前記インタラクティブな要素に関するユーザーの入力に応答して、各前記１若しくはそれ以上のインタラクティブな要素の各状態を、前記インタラクティブなユーザーインターフェース内で各前記インタラクティブな要素用に定義された前記領域に表示できる。特定の実施形態において、前記インタラクティブなユーザーインターフェースは、ウェブブラウザにおいて表示される。
【００１１】
本発明のシステムは、各前記少なくとも１つの全画面グラフィックと、前記インタラクティブなユーザーインターフェースの１つの状態との関連付けを定義する第２のグラフィックツールも有することができる。また、各前記インタラクティブな要素の各状態に機能を割り当てる第３のグラフィックツールを含めることもできる。
【００１２】
本発明は、インタラクティブなユーザーインターフェースを定義する機械（マシン）により少なくとも一部実施される方法も提供する。この方法には、１若しくはそれ以上の状態および１若しくはそれ以上のインタラクティブな要素を有するインタラクティブなユーザーインターフェースの全画面グラフィックを、前記インタラクティブなユーザーインターフェースの各状態に１つずつ入力する工程と、各前記１若しくはそれ以上のインタラクティブな要素用に、前記インタラクティブなユーザーインターフェース内の領域を定義する工程と、各インタラクティブな要素の各状態のグラフィック表示を有効にするコンピュータ可読コードまたはグラフィックを自動的に生成する工程とを含めることができる。
【００１３】
前記方法の一実施形態では、さらに別の工程により、前記インタラクティブなユーザーインターフェースの、各前記１若しくはそれ以上のインタラクティブな要素に対応する前記定義された領域の幾何学的特性および位置情報を格納することができる。別の実施形態において、各前記１若しくはそれ以上の定義されたインタラクティブな要素の各状態の前記コードまたは前記グラフィックは、各前記状態用に入力された各前記全画面グラフィックと、各前記インタラクティブな要素用に定義および格納された前記幾何学的特性および位置情報とから生成される。さらに別の実施形態において、各前記１若しくはそれ以上の定義されたインタラクティブな要素の各状態の前記グラフィックは、各前記状態用に入力された前記全画面グラフィックの一部に対応しており、当該全画面グラフィックの一部は、各前記インタラクティブな要素用に定義および格納された前記幾何学的特性および位置情報により画成される。
【００１４】
本発明の一態様では、前記生成されたコンピュータ可読コードにより、コンピュータは、各前記状態に関するユーザーの入力および各前記インタラクティブな要素に関するユーザーの入力に応答して、各前記１若しくはそれ以上のインタラクティブな要素の各状態を、前記インタラクティブなユーザーインターフェース内で各前記インタラクティブな要素用に定義された前記領域に表示できる。別の態様において、前記インタラクティブなユーザーインターフェースは、ウェブブラウザにおいて表示される。
【００１５】
本発明の一実施形態では、さらに、前記インタラクティブなユーザーインターフェースの編集に、追加または改訂すべき各インタラクティブな要素用に、前記インタラクティブなユーザーインターフェース内の領域を定義する工程と、前記追加および改訂されたインタラクティブな要素を含む各インタラクティブな要素の各状態のグラフィック表示を有効にするコンピュータ可読コードを自動的に生成する工程とが含まれる。別の実施形態では、さらに、前記インタラクティブなユーザーインターフェースの編集に、追加または改訂すべき前記インタラクティブなユーザーインターフェースの各状態用に、前記インタラクティブなユーザーインターフェースの全画面グラフィックを１つずつ入力する工程と、前記格納された幾何学的特性から、各前記１若しくはそれ以上のインタラクティブな要素に対応する位置情報を読み出す工程と、前記追加または改訂された全画面グラフィックに基づき、各インタラクティブな要素の各状態のグラフィック表示を有効にするコンピュータ可読コードを自動的に生成する工程とが含まれる。
【００１６】
本発明は、さらに、インタラクティブなユーザーインターフェースを定義する機械（マシン）により少なくとも一部実施される第２の方法を提供する。この方法は、１若しくはそれ以上の状態および１若しくはそれ以上のインタラクティブな要素を有するインタラクティブなユーザーインターフェースの全画面グラフィックを、前記インタラクティブなユーザーインターフェースの各状態に１つずつ入力する工程と、各前記１若しくはそれ以上のインタラクティブな要素用に、前記インタラクティブなユーザーインターフェース内の領域を定義する工程と、各インタラクティブな要素の各状態用に個々のグラフィックを自動的に生成する工程とを伴う。
【００１７】
本発明の前記第２の方法の一態様において、各インタラクティブな要素の各状態用の前記個々のグラフィックは、各前記状態用の前記全画面グラフィックと、各前記インタラクティブな要素用に定義された前記領域とから生成される。別の態様において、各インタラクティブな要素の各状態用の前記個々のグラフィックは、各前記状態用の前記全画面グラフィックの一部が、各前記インタラクティブな要素用に定義された前記領域により画成されたものである。
【００１８】
この第２の方法の一実施形態は、さらに、前記インタラクティブなユーザーインターフェースの、各前記１若しくはそれ以上のインタラクティブな要素に対応する前記定義された領域の幾何学的特性および位置情報を格納する工程を伴う。別の実施形態において、前記方法には、さらに、前記インタラクティブなユーザーインターフェースのコンピュータ可読コードを作成して、各前記状態に関するユーザーの入力に応答し、前記インタラクティブなユーザーインターフェース内で各前記インタラクティブな要素用に定義された前記領域内の各グラフィックを、コンピュータに表示させる工程が含まれる。
【図面の簡単な説明】
【００１９】
本発明は、以下の説明を添付の図面と併せて参照することで、より適切に理解されるであろう。
【図１】図１は、本発明を実施（実装）できる例示的なコンピュータ環境を例示した図である。
【図２】図２は、本発明の一実施形態に係るシステムメモリ内の本発明の構成要素（コンポーネント）の例を示した図である。
【図３】図３は、本発明の一実施形態に係る不揮発性コンピュータ可読媒体に格納された本発明の構成要素の例を示した図である。
【図４】図４は、本発明の方法の工程の態様を例示したフローチャートである。
【図５Ａ】図５Ａおよび図５Ｂは、「カッティングアンドプレーシング」方法の例を示したものである。
【図５Ｂ】図５Ａおよび図５Ｂは、「カッティングアンドプレーシング」方法の例を示したものである。
【図６Ａ】図６Ａおよび図６Ｂは、本発明の一態様に基づき、図５Ａおよび図５Ｂに示したものと同じインタラクティブな要素を生成するための入力として使用される２つの例示的な全画面グラフィックを示したものである。
【図６Ｂ】図６Ａおよび図６Ｂは、本発明の一態様に基づき、図５Ａおよび図５Ｂに示したものと同じインタラクティブな要素を生成するための入力として使用される２つの例示的な全画面グラフィックを示したものである。
【図７】図７は、本発明の一実施形態の例示的なグラフィックインターフェースを設計（Ｄｅｓｉｇｎ）モードで示した図である
【図８Ａ】図８Ａおよび図８Ｂは、本発明の一実施形態の例示的なグラフィックインターフェースをプレビュー（Ｐｒｅｖｉｅｗ）モードで示した図である
【図８Ｂ】図８Ａおよび図８Ｂは、本発明の一実施形態の例示的なグラフィックインターフェースをプレビュー（Ｐｒｅｖｉｅｗ）モードで示した図である。
【発明を実施するための形態】
【００２０】
コンピュータ環境の実施例
図１および以下の説明は、本発明の一実施形態例を実施（実装）できる適切なコンピュータ環境を全般的に概説するよう意図したものである。ただし言うまでもなく、手持ち式（ハンドヘルド）、携帯用（ポータブル）その他全種のコンピュータ装置を本発明に関連して使用することが考えられる。以下、汎用コンピュータについて説明しているが、これは単なる一例である。本発明は、ネットワークサーバーの相互運用性および相互作用機能を有したシンクライアントでも動作可能である。このように、本発明の一実施形態例は、クライアント装置が単にブラウザまたはワールドワイドウェブとのインターフェースとしてのみ機能するネットワーク環境など、必要なクライアント資源がほとんどなく若しくは最小限であるネットワーク化されたホスト型サービス環境に実施（実装）できる。
【００２１】
必須ではないが、本発明は、開発者または試験者が使用し、および／またはネットワーク閲覧ソフトウェア（ブラウザ）内に含まれるアプリケーションプログラミングインターフェース（ａｐｐｌｉｃａｔｉｏｎ  ｐｒｏｇｒａｍｍｉｎｇ  ｉｎｔｅｒｆａｃｅ：ＡＰＩ）を介して実施（実装）できる。これについては、以降、１若しくはそれ以上のコンピュータ（クライアントワークステーション、サーバー、または他の装置など）により実行されるプログラムモジュールなど、コンピュータで実行可能な命令という一般的な文脈で説明する。一般に、プログラムモジュールには、特定のタスクを実行し、または特定の抽象データ型を導入する、ルーチン、プログラム、オブジェクト、構成要素（コンポーネント）、データ構造などが含まれる。通常、プログラムモジュールの機能は、種々の実施形態において、必要に応じて組み合わせ、または分散させることができる。さらに、当業者であれば、本発明を他のコンピュータシステム構成とともに実施（実装）できることが理解されるであろう。本発明との併用に適している可能性がある他の周知のコンピュータシステム、環境、および／または構成（コンフィギュレーション）には、パーソナルコンピュータ（ｐｅｒｓｏｎａｌ  ｃｏｍｐｕｔｅｒ：ＰＣ）、サーバーコンピュータ、ハンドヘルド（手持ち式）またはラップトップ装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、プログラム可能な家庭用電化製品、ネットワークＰＣ、ミニコンピューター、メインフレームコンピュータなどがある（これに限定されるものではないが）。また、本発明の一実施形態は、通信ネットワークまたは他のデータ伝送媒体を介してリンクされた遠隔地の（リモート）処理装置によりタスクが実行される分散コンピュータ環境でも、実施（実装）できる。分散コンピュータ環境では、プログラムモジュールを、メモリ記憶装置を含むローカルおよびリモート双方のコンピュータ記憶媒体に配置できる。
【００２２】
このように、図１では、本発明を実施（実装）できる適切なコンピュータシステム環境１００の例を示しているが、以上で明記したように、本コンピュータシステム環境１００は、適切なコンピュータ環境の単なる一例であって、本発明の使用範囲または機能範囲の限定を示唆するものではない。また、本コンピュータ環境１００については、この例示的動作環境１００において示した構成要素の任意の１つまたは組み合わせに関し、いかなる依存性または要件を有すると解釈すべきでもない。
【００２３】
図１を参照すると、本発明を実施（実装）したシステムの例に、コンピュータ１１０の形態の汎用コンピュータ装置が含まれている。コンピュータ１１０の構成要素には、処理ユニット１２０と、システムメモリ１３０と、当該システムメモリを含む種々のシステム構成要素を前記処理ユニット１２０に連結するシステムバス１２１とを含めることができる（これに限定されるものではないが）。前記システムバス１２１は、任意タイプのバスアーキテクチャを使用するメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含むいくつかのタイプのバス構造のいずれであってもよい。その例として（これに限定されるものではないが）、そのようなアーキテクチャとしては、業界標準アーキテクチャ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ：ＩＳＡ）バス、マイクロチャネルアーキテクチャ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ：ＭＣＡ）バス、拡張ＩＳＡ（Ｅｘｔｅｎｄｅｄ  ＩＳＡ：ＥＩＳＡ）バス、ビデオ電子機器規格協会（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ：ＶＥＳＡ、通称ベサ）ローカルバス、周辺機器相互接続（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ：ＰＣＩ）バス（別名メザニンバス）、およびＰＣＩ  Ｅｘｐｒｅｓｓバスなどがある。
【００２４】
コンピュータ１１０には、通常、種々のコンピュータ可読媒体が含まれる。コンピュータ可読媒体は、コンピュータ１１０からアクセスできる利用可能な任意のメディアであってよく、揮発性および不揮発性のリムーバブルメディア（取り外し可能な媒体）および非リムーバブルメディア（取り外し不能な媒体）などがこれに含まれる。その例として（これに限定されるものではないが）、コンピュータ可読メディアは、コンピュータ記憶媒体および通信媒体を有することができる。コンピュータ記憶媒体としては、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納する任意の方法または技術により実施（実装）される揮発性および不揮発性のリムーバブルメディアおよび非リムーバブルメディアなどがある。コンピュータ記憶媒体としては、ランダムアクセスメモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、電気的に消去可能でプログラム可能な読み取り専用フラッシュメモリ（Ｅｌｅｃｔｒｉｃａｌｌｙ−Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ：ＥＥＰＲＯＭ）、フラッシュメモリその他のメモリ技術、コンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（Ｄｉｇｉｔａｌ Ｖｅｒｓａｔｉｌｅ Ｄｉｓｃ：ＤＶＤ）その他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置その他の磁気記憶装置、または望ましい情報を格納するため使用でき、かつコンピュータ１１０からアクセスできる他の任意の媒体などがある（これに限定されるものではないが）。通信媒体は、通常、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを、搬送波または他の運搬機構などの変調されたデータ信号で具体化（具現化）するもので、任意の情報送達媒体がこれに含まれる。用語「変調されたデータ信号」とは、その特性のうち１若しくはそれ以上が、当該信号中の情報をエンコードする態様で設定または変更された信号をいう。その例として（これに限定されるものではないが）、通信媒体には、有線ネットワークや直接配線された接続部などの有線媒体、および音響、高周波（ＲＦ）、赤外その他の無線媒体などの無線媒体などがある。上記の任意の組み合わせもコンピュータ可読媒体の範囲内に含めるべきである。
【００２５】
前記システムメモリ１３０には、ＲＯＭ  １３１やＲＡＭ  １３２など、揮発性および／または不揮発性メモリの形態で、コンピュータ記憶媒体が含まれる。基本入出力システム１３３（ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ：ＢＩＯＳ）は、コンピュータ１１０内の要素間の情報転送を起動中などに支援する基本ルーチンを含んでおり、通常、ＲＯＭ  １３１に格納される。ＲＡＭ  １３２には、通常、即時アクセス可能な、および／または現在処理ユニット１２０により演算中の、データおよび／またはプログラムモジュールが含まれる。これに限定されるものではないが、その例として、図１は、オペレーティングシステム１３４と、アプリケーションプログラム１３５と、他のプログラムモジュール１３６と、プログラムデータ１３７とを例示している。ＲＡＭ  １３２には、他のデータおよび／またはプログラムモジュールを含めることもできる。
【００２６】
また、当該コンピュータ１１０には、他の取り外し可能または取り外し不能な揮発性または不揮発性コンピュータ記憶媒体を含めることもできる。その単なる例として、図１は、取り外し不能な不揮発性磁気媒体に対し読み取りまたは書き込みを行うハードディスクドライブ１４１と、取り外し可能な不揮発性磁気ディスク１５２に対し読み取りまたは書き込みを行う磁気ディスクドライブ１５１と、ＣＤ−ＲＯＭその他の光媒体などの取り外し可能な不揮発性光ディスク１５６に対し読み取りまたは書き込みを行う光ディスクドライブ１５５とを例示している。上記の動作環境例で使用できる他の取り外し可能または取り外し不能な揮発性または不揮発性のコンピュータ記憶媒体としては、磁気テープ、カセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、固体ＲＡＭ、固体ＲＯＭなどがある（これに限定されるものではないが）。前記ハードディスクドライブ１４１は、通常、インターフェース１４０などの取り外し不能なメモリインターフェース経由で前記システムバス１２１に接続され、磁気ディスクドライブ１５１および光ディスクドライブ１５５は、通常、インターフェース１５０などの取り外し可能なメモリインターフェースにより前記システムバス１２１に接続される。
【００２７】
上述し図１に例示したドライブおよびその各々に伴うコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、および当該コンピュータ１１０用の他のデータの記憶装置を提供する。図１では、例えばハードディスクドライブ１４１は、オペレーティングシステム１４４と、アプリケーションプログラム１４５と、他のプログラムモジュール１４６と、プログラムデータ１４７とを格納するものとして例示されている。なお、これらの構成要素は、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７と同じであっても異なってもよいことに注意すべきである。ここで、オペレーティングシステム１４４と、アプリケーションプログラム１４５と、他のプログラムモジュール１４６と、プログラムデータ１４７とには、異なる番号が与えられているが、これは、これらが最低限の設定でも別個のものであることを例示するためである。ユーザーは、キーボード１６２やポインティングデバイス１６１（一般にマウス、トラックボール、またはタッチパッドと呼ばれる）などの入力装置を介して前記コンピュータ１１０にコマンドおよび情報を入力することができる。他の入力装置（図示せず）としては、マイクロホン、ジョイスティック、ゲームパッド、衛星アンテナ、スキャナなどがある。以上に述べた入力装置等は、前記システムバス１２１に連結されたユーザー入力インターフェース１６０を介して前記処理ユニット１２０に接続されることが多いが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス（ＵＳＢ）など他のインターフェースやバス構造で接続されてもよい。
【００２８】
モニター１９１または他種の表示装置（ディスプレイ）をビデオインターフェース１９０などのインターフェース経由で前記システムバス１２１に接続することもできる。モニター１９１のほか、コンピュータには、スピーカーやプリンタ（図示せず）など、出力周辺インターフェース１９５経由で接続可能な他の周辺出力装置を含めることもできる。
【００２９】
当該コンピュータ１１０は、リモートコンピュータ１８０など１若しくはそれ以上のリモートコンピュータへの論理接続を使ったネットワーク環境で動作することができる。このリモートコンピュータ１８０は、パーソナルコンピュータ、サーバー、ルータ、ネットワークＰＣ、ピア装置、または他の一般的なネットワークノードであってよく、図１ではメモリ記憶装置１８１だけを例示しているが、通常、当該コンピュータ１１０に関し上述した要素のうち多数またはすべてを含む。図１に示した論理接続には、ローカルエリアネットワーク（ＬＡＮ）１７１および広域ネットワーク（ＷＡＮ）１７３が含まれるが、他のネットワークが含まれることもある。そのようなネットワーク環境は、事務所（オフィス）、企業規模のコンピュータネットワーク、イントラネット、およびインターネットにおいて一般的である。
【００３０】
ＬＡＮネットワーク環境で使用される場合、当該コンピュータ１１０は、ネットワークインターフェースまたはアダプタ１７０を介して前記ＬＡＮ  １７１に接続される。ＷＡＮネットワーク環境で使用される場合、当該コンピュータ１１０は、通常、前記ＷＡＮ  １７３（インターネットなど）経由で通信を確立する手段を含む。ネットワーク環境において、当該コンピュータ１１０に関し図示されたプログラムモジュール、またはその一部は、リモートメモリ記憶装置に格納することができる。その例として（これに限定されるものではないが）、図１は、メモリ装置１８１に常駐するものとしてリモートアプリケーションプログラム１８５を例示している。リモートアプリケーションプログラム１８５には、リモート記憶装置１８１またはワールドワイドウェブにアクセス可能な他の記憶装置に常駐するコンテンツを提供するＭｉｃｒｏｓｏｆｔ（登録商標）Ｉｎｔｅｒｎｅｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｉｃｅｓ（登録商標）（ＩＩＳ）やＡｐａｃｈｅ  ＨＴＴＰ  Ｓｅｒｖｅｒなどのウェブサーバーアプリケーションが含まれる（これに限定されるものではないが）。ここで示したネットワーク接続は例示的なものであり、前記コンピュータ間の通信リンクを確立する他の手段も使用できることが理解されるであろう。
【００３１】
当業者であれば、コンピュータ１１０または他のクライアント装置は、コンピュータネットワークの一部として配備可能なことが理解されるであろう。この点で、本発明は、任意数のメモリユニットまたは記憶装置ユニットと、任意数量の記憶装置ユニットまたは容量にわたり実行される任意数のアプリケーションおよび工程（処理）を有したすべてのコンピュータシステムに関する。本発明の一実施形態は、リモートまたはローカルの記憶装置を有するネットワーク環境にサーバーコンピュータおよびクライアントコンピュータが配備された環境に適用できる。また、本発明は、プログラミング言語を機能させ、解釈し、および実行する能力を有したスタンドアロンコンピュータ装置にも適用できる。
【００３２】
本発明
本発明のインターフェース定義（Ｉｎｔｅｒｆａｃｅ  Ｄｅｆｉｎｉｔｉｏｎ）ソフトウェア（Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎ（「肉を切り分けるカウンター」を意味する））は、独自の方法で情報を編成し、インタラクティブな（対話型の）ユーザーインターフェースを定義する工程の多くを自動化することにより、インタラクティブなアプリケーションの作成に新規性のあるアプローチを導入するものである。本発明の自動化工程は、いかなるプラットフォーム用にもカスタマイズできる。好適な実施形態において、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎは、インタラクティブなインターフェースを構成するための設計（Ｄｅｓｉｇｎ）モードと、構成したインタラクティブなインターフェースを視覚化および検証するためのプレビュー（Ｐｒｅｖｉｅｗ）モードとを提供する。
【００３３】
図２は、本発明の一実施形態に係るシステムメモリ１３０内のＣａｒｖｉｎｇ  Ｓｔａｔｉｏｎの構成要素を例示したものである。この実施形態において、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎ  ２１０は、前記アプリケーションプログラム１３５の１つとして、当該システムメモリ１３０に常駐する。グラフィカルユーザーインターフェース構成要素２１１は、グラフィックを入力するため、グラフィックツール２１２は、インタラクティブな要素を定義するため提供される。最後に、コード生成器２１３は、出力コードおよび出力グラフィックの生成用に提供される。視覚化プログラム２２０など他のプログラムモジュール１３６は、必要に応じ、構成の視覚化および検証用に提供される。プログラムデータ１３７には、入力グラフィック２３０と、定義されたインタラクティブな要素の寸法および位置データ（Ｃａｒｖｅｄ  Ｇｅｏｍｅｔｒｙ（「切り取られた幾何学的形状」を意味する））２４０と、背景グラフィック２５０と、選択された出力プラットフォームで必要とされる場合、出力要素グラフィック２６０とが含まれる（これに限定されるものではないが）。
【００３４】
図３は、ハードドライブなどの不揮発性コンピュータ可読媒体装置１４１に格納されたＣａｒｖｉｎｇ  Ｓｔａｔｉｏｎの構成要素の一実施形態を例示したものである。このＣａｒｖｉｎｇ  Ｓｔａｔｉｏｎプログラム３１０およびその構成要素（入力グラフィック用のグラフィカルユーザーインターフェース３１１、インタラクティブな要素の定義用のグラフィックツール３１２、および出力コードまたはグラフィック用のコード生成器３１３）は、前記コンピュータ可読媒体１４１にアプリケーションプログラム１４５として格納され、実行時、システムメモリ１３０に読み取ることができる。コンピュータ可読媒体には、構成を視覚化および検証する視覚化プログラム３２０のコピーなど、他のプログラムモジュール１４６を含めることもできる。プログラムデータ１４７には、入力グラフィック３３０と、定義された要素の寸法および位置データ（Ｃａｒｖｅｄ  Ｇｅｏｍｅｔｒｙ（「切り取られた幾何学的形状」を意味する））３４０と、背景グラフィック３５０と、出力プラットフォームで必要とされる場合、インタラクティブな要素用のグラフィック３６０とが含まれる（これに限定されるものではないが）。
【００３５】
図４は、本発明の方法の工程の態様のフローチャートを例示したものである。本発明のプラットフォーム汎用（プラットフォームに依存しない）実施形態において、インタラクティブなユーザーインターフェースを定義するコンピュータ制御（電子制御）の方法には、インタラクティブなユーザーインターフェースの各状態用に、インタラクティブなユーザーインターフェースの全画面グラフィックを１つずつ入力する工程（４１０）と、各前記１若しくはそれ以上のインタラクティブな要素用に、前記インタラクティブなユーザーインターフェース内の領域を定義する工程（４２０）と、各インタラクティブな要素の各状態のグラフィック表示を有効にするプラットフォーム固有のコンピュータ可読コードを自動的に生成する工程（４３０）とが含まれる。さらに、すでに定義済みのインタラクティブなユーザーインターフェースの編集には、改訂（４４２）または追加（４４４）すべき前記定義済みのインタラクティブなユーザーインターフェースの各状態用に、前記インタラクティブなユーザーインターフェースの全画面グラフィックを１つずつ入力する工程と、追加または改訂すべき各インタラクティブな要素用に、前記インタラクティブなユーザーインターフェース内の領域を定義する工程（４２０）と、各インタラクティブな要素の各状態のグラフィック表示を有効にするコンピュータ可読コードを自動的に生成する工程（４３０）とが伴う。
【００３６】
より具体的には、作成者は、まず、前記インタラクティブなユーザーインターフェースのレイアウトについて、前記インタラクティブな要素の状態の数などの決定を行う。各要素の各状態について慣習的に個々のグラフィックを入力する代わりに、作成者は、各状態ごとに、その状態で表示される前記インタラクティブな要素をすべて含む全画面グラフィックを１つ入力する（４１０）。例えば、ロールオーバー状態について、作成者は、各インタラクティブな要素がロールオーバー状態で示された全画面グラフィックを１つだけ入力する。本明細書における全画面グラフィックとは、前記インタラクティブなインターフェースの意図された表示領域全体を占めるグラフィック、または前記インタラクティブなインターフェース内で前記インタラクティブな要素が常駐する予定の部分のグラフィックをいう。
【００３７】
そのため、作成者が作成しなければならない画像の数は、状態の数に等しく、すなわちＩ＝Ｅとなる。したがって、本発明は、グラフィックおよび位置情報など、作成者が供給および管理しなければならない個々のデータ点の数を大幅に低減する。図５Ａおよび図５Ｂは、先行技術の「カッティングアンドプレーシング」方法の例を示したものである。２つの状態を有するボタンを５つ有したインターフェースの場合、合計１１のグラフィックを個別に作成しなければならない（通常状態の５つのボタン５１０の各々にグラフィック１つずつ（図５Ａ）、ロールオーバー状態の５つのボタン５２０の各々にグラフィック１つずつ（図１Ａ）、そして背景グラフィックを１つ（図５Ｂ、５３０））。図６Ａおよび図６Ｂは、本発明において、同じ５つのボタンの２状態インターフェース（図５Ａおよび図５Ｂに示したもの）を生成するため作成者が入力した２つの画像を例示したものである。Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎを使用する場合、作成者は、全要素を通常状態６１０で示した通常状態の全画面グラフィック６２０を１つだけ入力し（図６Ａ）、全要素をロールオーバー状態６３０で示したロールオーバー状態の全画面グラフィック６４０を１つだけ入力する（図６Ｂ）。
【００３８】
ここで図７を参照すると、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎが、設計（Ｄｅｓｉｇｎ）モード７３０で前記入力グラフィック用のグラフィカルユーザーインターフェース３１１を提供している。作成者は、作成した各全画面グラフィックをＣａｒｖｉｎｇ  Ｓｔａｔｉｏｎに入力し、当該グラフィックをそれに対応した状態に割り当てる（４１０）。図７は、本発明の好適な実施形態７１０のグラフィカルユーザーインターフェースのスクリーンショットを前記設計モード７３０で例示したものである。この図７の実施形態において、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎ  ７１０は、スタンドアロンのＷｉｎｄｏｗｓ（登録商標）アプリケーションであるが、本発明は、他の用途にも適用でき、あるいはＡｄｏｂｅ  Ｐｈｏｔｏｓｈｏｐ（登録商標）、Ｆｌａｓｈ（登録商標）、またはＭｉｃｒｏｓｏｆｔ（登録商標）Ｖｉｓｕａｌ  Ｓｔｕｄｉｏ（登録商標）など、より大きなソフトウェアパッケージの構成要素としても適用できる。図示したように、このインターフェースは、前記設計モード７３０およびプレビュー（Ｐｒｅｖｉｅｗ）モード８３０のいずれかを選択する選択肢を作成者に提供する（図８Ａおよび図８Ｂ）。また、作成者は、全画面グラフィック（入力グラフィック３３０）を配置できるソースアート（Ｓｏｕｒｃｅ  Ａｒｔ）７５０の位置を指定することもできる。各全画面グラフィックのファイル名は、各レイヤー７６０（含まれている各状態が１つのレイヤーを表す）ごとに、対応するスペースに入力できる。それらの全画面グラフィックは、表示領域７９０内のレイヤーとして表示される。本発明の一実施形態において、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎ  ７１０は、４つの状態レイヤー（通常（Ｎｏｒｍａｌ）、マウスオーバー（Ｍｏｕｓｅ  Ｏｖｅｒすなわちロールオーバー（Ｒｏｌｌｏｖｅｒ））、クリック（Ｐｒｅｓｓｅｄ）、および無効（Ｄｉｓａｂｌｅｄ））を提供する。図７に例示した例では、２つの状態（通常およびマウスオーバー）だけが使用され、使用されていない状態は空白のまま残されている。また、作成者は、リポジトリ（Ｒｅｐｏｓｉｔｏｒｙ）のストア（データストア）、ファイルシステム（Ｆｉｌｅ  Ｓｙｓｔｅｍ）、Ｏｒａｃｌｅ（登録商標）Ｄａｔａｂａｓｅ、ＳＱＬ  Ｓｅｒｖｅｒデータベース、およびＭｉｃｒｏｓｏｆｔ（登録商標）Ｃｏｎｔｅｎｔ  Ｍａｎａｇｅｒ  Ｓｅｒｖｅｒなど、出力ファイル７６０がまとめて格納されている位置を指定することもできる。これらの出力ファイル７６０は、Ａｄｏｂｅ（登録商標）Ｆｌａｓｈ（登録商標）Ｍｏｖｉｅ、ＰｏｗｅｒＰｏｉｎｔ（登録商標）ファイル、ＨＴＭＬ  Ｐａｇｅ、およびＭｉｃｒｏｓｏｆｔ（登録商標）Ｓｈａｒｅｐｏｉｎｔ（登録商標）サーバーなど、種々の形式と互換性を有するようにできる。
【００３９】
本発明の設計工程の最終作成工程として、作成者は、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎに用意されたツール２１２を使って望ましい個々のインタラクティブな要素に対応した全画面グラフィック上の領域をグラフィックを使って識別する（４２０）。図７の例では、個々の要素が長方形７８０で定義されている。インタラクティブな要素を定義するため選択された領域（ホットスポット（Ｈｏｔ  Ｓｐｏｔ））は、異なる色７７０で強調表示されている。各ホットスポットは、名称が割り当てられて、リスト７４０で表示される。すべてのインタラクティブな要素は、その全状態（または全レイヤー）について同時に定義される。前記全画面グラフィックに対する各インタラクティブな要素（Ｃａｒｖｅｄ  Ｇｅｏｍｅｔｒｙ）２４０のサイズおよび位置情報は、各インタラクティブな要素を表す幾何学的領域の定義に固有のもので、作成者に定義される際、記録および保存される。そのため、従来は位置情報を外部に保持する必要があったが、その必要性がなくなると同時に、前記要素を手動で試行錯誤により配置（または置換）する必要性も排除された。
【００４０】
上記のインタラクティブなインターフェースの定義工程中、作成者は、随時、インタラクティブな要素のすべてのグラフィックと、すべての位置およびサイズ情報とを含む構成全体を定義し、コンピュータ可読媒体１４７に保存する（４２６）ことができる。各前記インタラクティブな要素の各状態の機能は、要素定義中に、またはその後、別個の工程として割り当てる（４２４）ことができる。その後、状態の外観の変更を希望する場合、作成者は、望ましい変更を加えた全画面グラフィックを入力（４４２）し、各当該状態７６０に関連付けられた元のグラフィックと置き換えるだけでよい。次に、本発明がソースグラフィックの変更を検出し、前記構成を自動的に更新する。次いで作成者は、更新された前記構成を格納することができる。すでに定義したインターフェースに状態を追加することを希望する場合、作成者は、単に追加したい各状態について全画面グラフィックを１つずつ入力し（４４４）、各前記全画面グラフィックを適切な状態７６０に関連付けるだけでよい。インタラクティブな要素を追加することを希望する場合、作成者は、追加するインタラクティブな要素の領域を前記全画面グラフィック上で識別する（４２０）だけでよい。新規に追加された要素７４０には名称が割り当てられ、追加された当該インタラクティブな要素のサイズおよび位置情報は、自動的に記録および保存される（４２６）。そのため、多数のグラフィックを供給、管理、および配置する必要も、各要素レイヤーを定義してインタラクティブなユーザーインターフェース内で再構築する必要もない。本発明の設計工程は、プラットフォームに依存しないため、作成者は、プラットフォーム固有のコーディングを気にせず、インターフェースの美観だけに専念することができる。
【００４１】
プレビュー（Ｐｒｅｖｉｅｗ）モード８３０（図８Ａおよび図８Ｂ）により、作成者は、設計されたインタラクティブなインターフェースを視覚化し、検証する（４４０）ことができる。好適な実施形態では、作成者により、上記の設計工程の開始時、特定のプラットフォームが選択される。プレビューモード８３０が選択されると、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎは、前記寸法および位置情報（Ｃａｒｖｅｄ  Ｇｅｏｍｅｔｒｙ）２４０と、供給されたソースグラフィック２３０とを使って、選択された前記プラットフォームに固有のグラフィックおよびコードを自動的に生成する（４３０）。作成者により設計された前記インタラクティブなインターフェースは、意図されたインタラクティブなインターフェースを作成するプラットフォーム用のネイティブコードとしてプレビューされる。例えば、作成者が最終的なインタラクティブなインターフェースを通常のウェブページとして作成するよう選択した場合、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎは、個々のインタラクティブな要素用にグラフィックを自動的に生成する。前記構成は、要素グラフィックの位置およびサイズの双方の情報を保持するため、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎは、各前記インタラクティブな要素の正しいレイアウトを含んだグラフィックを参照するＨＴＭＬファイルを自動的に生成することができる。作成者が、前記位置情報を手動で入力または調整する必要はない。一実施形態では、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎのプレビュー（Ｐｒｅｖｉｅｗ）ウィンドウ内で、選択されたプラットフォームについて適切なビューアのインスタンスが呼び出される。ＨＴＭＬウェブページの例では、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（登録商標）ＷｅｂＢｒｏｗｓｅｒコントロールが使用される。Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎは、前記設計工程を一切変更することなく、Ｍｉｃｒｏｓｏｆｔ（登録商標）．ＮＥＴ、ＰｏｗｅｒＰｏｉｎｔ（登録商標）、およびＡｄｏｂｅ（登録商標）Ｆｌａｓｈ（登録商標）など、他のプラットフォームに準拠したインタラクティブなインターフェースを容易に出力することができる。設計したインタラクティブなインターフェースが満足のいくものになった場合、作成者は、前記インタラクティブなインターフェースを「作成」（ｐｕｂｌｉｓｈ）するよう、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎに命令する（４５０）ことができる。.対応するすべてのグラフィックおよびコードは、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎにより自動的に生成され、リポジトリディレクトリ７２０など、作成者が定義した出力先に格納される。
【００４２】
図８Ａおよび図８Ｂは、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎ  ７１０の前記プレビュー（Ｐｒｅｖｉｅｗ）モード８３０のスクリーンショットを例示したものである。図８Ａおよび図８Ｂでは、図７で作成され、示されたインタラクティブなインターフェースが、プレビュー領域８７０に表示されている。このプレビューモード８３０の２つのビュー（それぞれ図８Ａおよび図８Ｂ）は、作成者により定義されるインタラクティビティ（双方向性）を実証するよう示されている。図８Ａでは、マウスポインタ８５０が第１の要素上に配置されており、この第１のボタンはロールオーバー状態８４０で表示されている一方、残りの要素は通常状態８６０のまま表示されている。図８Ｂでは、前記マウスポインタ８５０が第２の要素上に配置されており、この第２の要素は前記ロールオーバー状態８４０で表示されている一方、第１の要素、第３の要素、第４の要素、および第５の要素は前記通常状態８６０のまま表示されている。
【００４３】
好適な実施形態において、このような表示は、作成者が２段階の作成工程を完了した後で（作成者が、希望する各状態の全画面グラフィックを作成し、各インタラクティブな要素の幾何学的識別が行われた後で）、自動化されたファイル作成動作により生成される。作成者が各状態の全画面グラフィックを入力し、各インタラクティブな要素の位置情報を定義（識別）したのち、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎは、各要素について各状態の画像ファイルを自動的に生成する。これにより、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎは、従来はユーザーが前記「カッティングアンドプレーシング」工程により手間をかけて生成していた複数の画像を自動的に生成し、各前記位置情報を記録する。例えば図５Ａおよび図５Ｂの例の、それぞれ２つの状態がある５つのボタンを有したインターフェースの場合、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎは、作成者が前記通常状態の全画面グラフィックを１つ、そして前記ロールオーバー状態の全画面グラフィックを１つ入力して、前記５つのインタラクティブな要素を識別した後で、個別に１０のグラフィックを自動生成する（すなわち、前記通常状態の５つのボタン５１０の各々にグラフィックを１つずつ、また前記ロールオーバー状態の５つのボタン５２０の各々にグラフィックを１つずつ）。そのため、図８Ｂに示すように、前記マウスポインタ８５０が前記第２の要素上に配置されると、本発明は、当該第２の要素の前記ロールオーバー状態８４０用に自動的に生成されたファイルを読み出し、その画像を、前記プレビュー領域８７０の当該第２の要素の位置に適宜表示する。
【００４４】
本発明の別の実施形態では、そのような表示が二者択一的に起こる。例えば図８Ｂの例では、前記第２の要素の前記ロールオーバー状態８４０用に特定の画像を自動的に生成し、その後、読み出す代わりに、本発明は、マウスポインタが図８Ｂの例のように前記第２の要素上に配置された時点で、前記ロールオーバー状態用に作成および格納された全画面グラフィックを参照し、以前に作成者が定義した当該全画面グラフィックの、前記第２の要素に相当する部分を提示することができる。さらに本発明の別の代替実施形態は、前記プレビュー領域８７０に表示される通常状態用の全画面グラフィック（例えば、図５Ｂと同様に見えるもの）を有し、前記マウスポインタ８５０が図８Ｂの例のように前記第２の要素上に配置された時点で、以前に作成者が位置的に定義した前記第２の要素を実質的に切り取り、下層レイヤーとして存在するロールオーバー状態用の全画面グラフィックを示す。前記第２の要素の位置だけが切り出されるため、前記ロールオーバー状態用の全画面グラフィックのうち、ユーザーに表示される唯一の部分は、前記第２の要素の部分となる。
【００４５】
結論として、Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎは、最終的なインタラクティブインターフェースを実現する上で、作成者が供給および管理しなければならない個々のデータ点およびグラフィックファイルの数を大幅に低減することにより、作成者が各要素レイヤーを手動で定義および再構築する作業を不要にする。Ｃａｒｖｉｎｇ  Ｓｔａｔｉｏｎを使って要素を変更および追加する場合、作成者は、「カッティングアンドプレーシング」工程を繰り返す必要も、インターフェース内の各要素レイヤーの定義および再構築を繰り返す必要もない。
【００４６】
以上に述べた本発明の利点等は、当業者であれば、本明細書の上記説明から明確に理解されるであろう。そのため、当業者であれば、本発明の範囲を逸脱しない範囲で上記の実施形態を変更または修正できることが理解されるであろう。従って、本発明は本明細書に説明した特定の実施形態に限定されず、本発明の要旨に含まれるすべての変更（修正）形態を含むよう意図されていると理解すべきである。
【図１】
0005416112.tif 000002
【図２】
0005416112.tif 000003
【図３】
0005416112.tif 000004
【図４】
0005416112.tif 000005
【図５Ａ】
0005416112.tif 000006
【図５Ｂ】
0005416112.tif 000007
【図６Ａ】
0005416112.tif 000008
【図６Ｂ】
0005416112.tif 000009
【図７】
0005416112.tif 000010
【図８Ａ】
0005416112.tif 000011
【図８Ｂ】
0005416112.tif 000012