JP2006107181A - ユーザインターフェースを動的に変更可能な情報処理装置及びその方法 - Google Patents
ユーザインターフェースを動的に変更可能な情報処理装置及びその方法 Download PDFInfo
- Publication number
- JP2006107181A JP2006107181A JP2004293852A JP2004293852A JP2006107181A JP 2006107181 A JP2006107181 A JP 2006107181A JP 2004293852 A JP2004293852 A JP 2004293852A JP 2004293852 A JP2004293852 A JP 2004293852A JP 2006107181 A JP2006107181 A JP 2006107181A
- Authority
- JP
- Japan
- Prior art keywords
- user interface
- rule
- information
- layout
- processing apparatus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
- Stored Programmes (AREA)
Abstract
【課題】 必要に応じてユーザインタフェースルールを変更することにより、実現される情報処理装置のユーザインタフェースの機能制限を変化させること実現することを目的とする。
【解決手段】 装置の状態などに応じて複数のユーザインタフェースルールから一つを選択する。
【選択図】 図16
【解決手段】 装置の状態などに応じて複数のユーザインタフェースルールから一つを選択する。
【選択図】 図16
Description
本発明は、ユーザインターフェースを提供する情報処理装置に関する。
近年、通信インフラ整備の進展とネットワークに繋がるクライアント機器の多様化により、従来に無い様々な画面サイズや機能を持った入出力機器や表示情報処理装置をもつ機器において、インターネットに接続しサーバ上の情報を利用するというニーズが広まっている。
一方、ユーザインタフェースデータを送受し操作するリモートユーザインタフェースシステム、すなわち、サーバとクライアント機器間、または、機器の操作を別の機器の画面と入力機能を使って行う仕組みがあり、これを利用したグラフィックユーザインタフェースの工夫により、種類の異なる複数の機器及びユーザに対してユーザインターフェースを変えることを可能とする仕組みが存在する。
さらに上述の技術に加え、特定のユーザインタフェースデータを様々なクライアント機器において実現する為の技術が種々提案されている。
例えば、ユーザインターフェース要素の機能を抽象化した論理ユーザインターフェース要素を用いることにより、動作主体のプログラミング言語にかかわらず共通のユーザインターフェースを提供できるユーザインターフェース実現方法を提供する技術が開示されている。(特許文献1参照)
またさらに、クライアント側で表示の為に必要な機能が不足している場合には、サーバ側より最適な代替手段の提示、または必要なソフトウェアモジュールの提供を行うことにより、表示の実現を行う為の技術が開示されている。(特許文献2参照)
また例えば、予めコンテンツそのものをアクセシブルに作成し、ユーザの配信要求があった場合に、ユーザの特性に応じてコンテンツを動的に再構築して全ての人がアクセスできる情報を提供する為の技術が開示されている。(特許文献3参照)
特開2001−217850公報
特開平11−66101公報
特開2003−223463公報
またさらに、クライアント側で表示の為に必要な機能が不足している場合には、サーバ側より最適な代替手段の提示、または必要なソフトウェアモジュールの提供を行うことにより、表示の実現を行う為の技術が開示されている。(特許文献2参照)
また例えば、予めコンテンツそのものをアクセシブルに作成し、ユーザの配信要求があった場合に、ユーザの特性に応じてコンテンツを動的に再構築して全ての人がアクセスできる情報を提供する為の技術が開示されている。(特許文献3参照)
しかしながら、従来の技術では、情報処理装置の状態に関わらず、表示されるユーザインターフェースの部品が固定であった。
またこのユーザインターフェースの部品を変更するには、また別のユーザインタフェースデータを外部から取得する必要があった。
すなわち、本発明は、上記課題を解決することを目的とし、必要に応じてユーザインターフェースルールを変更することにより、実現される情報処理装置のユーザインターフェースの機能制限を変化させること実現する。
本発明によれば、抽象化して記述されたユーザインターフェースの指定情報を外部から取得する取得手段と、前記取得手段によって取得された抽象化されたユーザインターフェースの指定情報より具体化して記述されたユーザインターフェースが分類されるユーザインターフェースルールに関する情報を記憶部から参照する参照手段と、前記ユーザインターフェースルールに関する情報を参照することにより、前記取得手段によって取得された抽象化されたユーザインターフェースの指定情報に属する具体化されたユーザインターフェース情報を決定する決定手段と、ユーザインターフェースルールを変更するユーザインターフェースルール変更手段とを有することを特徴とする情報処理装置が提供される。
本発明によれば、情報処理装置の機能や状況、あるいは操作ユーザの属性に応じて、最適なユーザインターフェースを提供することが可能となる。
以下、図面を参照して本発明の好適な実施形態を詳細に説明する。
図12は以下に示す実施形態における表示情報処理装置のハードウェア構成を示す図である。
CPU12は、各種処理のための演算や論理判断等を行い、バス11に接続された各構成要素を制御する。本情報処理装置には、ROM13とRAM14が搭載されている。プログラムメモリには、フローチャートにつき後述する処理手順を含むCPU12による制御の為のプログラムを格納する。メモリはROM13の代わりに外部記憶情報処理装置などからプログラムがロードされるものであってもよい。図12において、入力装置16はユーザからの入力情報を取得するマウス、タッチパネル、キーボードなどによって構成され、出力装置18は、ユーザによる操作結果や、情報処理装置により分析されたデータ等の出力情報を出力するCRTや液晶ディスプレイなどの表示情報処理装置などである。また、これらの出力装置18に表示される内容を保持するメモリとしてVRAM15を備える。ネットワークI/F17は、ネットワークで接続された他の機器とデータの送受を行う。
図1は本実施の形態に係るユーザインタフェースデータの構造の一例を示すクラス図及びユーザインターフェースルールのクラス図である。
図において、本実施の形態の情報処理装置がユーザインターフェースを構成するためのユーザインタフェースデータ101は、それぞれが1つのユーザインターフェースを記述する1つ以上のユーザインターフェース指定情報102から構成されており、ユーザインターフェース指定情報102は,サブクラスとしてユーザインターフェース部品について記述されたユーザインターフェース部品指定情報105と、ユーザインターフェース部品のレイアウトについて記述されたレイアウト指定情報106を持つ。
各ユーザインターフェース指定情報102は、それぞれ1つのユーザインターフェース指定情報要素103を有し、さらにユーザインターフェース指定情報要素103は1つのまたは空のリストを持つ。
各ユーザインターフェース指定情報要素103は、それぞれ階層化された抽象度の1階層を表し、抽象度を表す1つのユーザインターフェース指定情報要素名104を有する。レイアウト指定情報106は前記レイアウトの対象となる1つ以上のユーザインターフェース指定情報102をその記述の内部に含むという意味において、ユーザインターフェース指定情報102と関連している。
また、本発明に係る情報処理装置がユーザインターフェースを構成するためのユーザインターフェースルール100は、ユーザインターフェース部品に関するルールが記述されたユーザインターフェース部品ルール201とレイアウトに関するルールが記述されたレイアウトルール401から構成される。ユーザインターフェース部品ルール201及びレイアウトルール401の詳細については後述する。
図2は本実施の形態における抽象度に応じて階層化されたユーザインターフェースルールのうち、ユーザインターフェース部品に関するユーザインターフェースルールの構造の一例を示すクラス図である。
図2において、ユーザインターフェース部品ルール201は、1つ以上のユーザインターフェース部品ルール要素202から構成されており、各ユーザインターフェース部品ルール要素202は、サブクラスとして非末端ユーザインターフェース部品ルール要素203と末端ユーザインターフェース部品ルール要素204を持つ。非末端ユーザインターフェース部品ルール要素203は1つ以上のユーザインターフェース部品ルール要素202を有し、末端ユーザインターフェース部品ルール要素204は1つの具体的ユーザインターフェース部品205に関連付けられている。
これにより、ユーザインターフェース部品ルール201はツリー状構造を成し、末端のユーザインターフェース部品ルール要素202は必ず末端ユーザインターフェース部品ルール要素204となる。
なお、ユーザインターフェース部品ルール要素202はそれぞれ1つのユーザインターフェース指定情報要素名104と関連付けられており、ユーザインターフェース部品ルール201のツリー状構造の各段階はそれぞれ階層化された抽象度の1段階を表現している。
図24は、図2の具体例として、本実施の形態に実装されているユーザインターフェース部品に基づくユーザインターフェース部品ルールの一部をツリー状構造で示したものである。
本実施形態では、ユーザインターフェース部品を構成する為のツールキットがライブラリとして組み込まれており、上記で説明したように抽象概念をまとめてツリー状構造をなしている。ツリー状構造の末端には、ツールキットの具体的なユーザインターフェース部品が割り当てられており、階層を上がるごとに抽象度が高くなる。ツリー状構造の末端には、ツールキットの具体的なユーザインターフェース部品としてqdial 2509、qslider_horizontal 2510、qslider_vertical 2511、qlabel 2512、qpushbutton 2513などがある。これら具体的なユーザインターフェース部品の1つ上の階層では、それぞれを抽象化した部品の概念がまとめられており、ダイアル(dial 2505)、スライダ(slider 2506)、ラベル(label 2507)、プッシュボタン(pushbutton 2508)、などがある。さらに上位の階層では、さらに抽象化した機能レベルの概念として、数値範囲(range 2502)、テキスト(text 2525)、トリガ(trigger 2504)などがある。
図4は本実施の形態における抽象度に応じて階層化されたユーザインターフェースルールのうち、レイアウトに関するレイアウトルールの構造の一例を示すクラス図である。
図4において、レイアウトルール401は、1つ以上のレイアウトルール要素402から構成されており、レイアウトルール要素402は、サブクラスとして非末端レイアウトルール要素403と末端ユーザインターフェース部品ルール要素404を持つ。非末端レイアウトルール要素403は1つ以上のレイアウトルール要素402を有し、末端レイアウトルール要素404は1つの具体的レイアウト405に関連付けられている。
これにより、レイアウトルール401はツリー状構造を成し、末端のレイアウトルール要素402は必ず末端レイアウトルール要素404となる。
なお、レイアウトルール要素402はそれぞれ1つのユーザインターフェース指定情報要素名104と関連付けられており、レイアウトルール401のツリー状構造の各段階はそれぞれ階層化された抽象度の1段階を表現している。
図6は本実施の形態の情報処理装置におけるレイアウトスタックのデータ構造の一例を示す概念図である。
図6において、600はレイアウトスタック全体を示す。レイアウトスタック600はレイアウト情報をスタック状に複数貯めておくためのコンテナの役割を果たす。601は概念上のスタックの最上部を示す。図において、レイアウト情報はこの線を最上位として、上から追加され、上から取り除かれる。602から605はそれぞれ1つのレイアウト情報を表す。ただし、本発明において602は現在のレイアウト情報と呼び、描画オブジェクトは必ずこれに基づいてレイアウトされる。レイアウト情報は図において下から順に追加されたレイアウト情報であり、その数には特に制限はない。
図7は本実施の形態における情報処理装置におけるレイアウト情報のデータ構造の一例を示す概念図である。
図7において、700は1つのレイアウト情報全体を示す。701は前記レイアウト情報における次のオブジェクトをレイアウトするための原点となる座標である。702は現在のレイアウトルールである。701,702は現在のレイアウトルールの基で次の描画オブジェクトをレイアウトするための情報である。703は現在のレイアウトルールの基でレイアウトされたすべてのオブジェクトを含むような最小矩形の大きさである。703は現在のレイアウトが終了して、1つ前のレイアウト情報における現在の座標702と現在のボックスの大きさ703を更新するために使用される。
図8は本実施の形態における情報処理装置の処理を示すフローチャートである。
情報処理装置において処理が起動され、S801においてユーザインタフェースデータが取得されると、S802に進み、初期レイアウト情報を生成し、レイアウト情報をスタック型データ構造で保持するレイアウトスタックに送る。次にS803において、ユーザインタフェースデータを解析し、取得したユーザインターフェース指定情報とユーザインターフェースルールに基づいて最適なユーザインターフェースを決定する。
次にS804においてアプリケーションロジックを起動し、ユーザによるユーザインターフェースの操作に応じてアプリケーションロジックに要求を出したり、逆にアプリケーションロジックからの要求に応じたりといった処理を行う。
後述する入力操作に関する各処理は、S804のアプリロジック処理の中で、それぞれ起動・実行される。
一つの処理が終わると、次のユーザインターフェース画面が必要な場合や、ユーザあるいはアプリケーションロジックからの終了要求があった場合には、S805でアプリケーションロジック処理の終了を判断し、終了する場合にはS806に進む。アプリケーションロジック処理を終了しない場合はS804に戻り、処理を継続する。
S806において、情報処理装置が起動中であった場合にはS801に戻り、情報処理装置の終了処理を判断した場合には、システムを終了する。
後述する各処理は、S804のアプリロジック処理の中で、それぞれ起動・実行される。
図9は本実施の形態におけるユーザインターフェース決定処理を示すフローチャートである。
まず、S901においてユーザインタフェースデータを構成する情報を先頭から順番に読込む。次にS902において、ユーザインタフェースデータを構成する情報がある場合には、S903に進み、ユーザインタフェースデータを構成する情報が無い場合には処理を終了する。
S903において、取得した構成情報がユーザインターフェース指定情報である場合には、S904においてユーザインターフェース指定情報の種類を判断し、ユーザインターフェース部品指定情報と判断された場合には、S906においてユーザインターフェース指定情報に対応する具体的なユーザインターフェース部品を取得する。次にS907において、現在のレイアウト情報に従ってユーザインターフェース部品を配置し、続くS908においてレイアウト情報を更新する。次にS905に進み、ユーザインターフェースを構成する情報のうち次の構成情報を取得し、S902の処理に戻る。
S904においてレイアウト指定情報と判断された場合には、S909に進みレイアウト終了指定情報であるかどうか判断する。S909においてレイアウト終了指定情報と判断された場合には、S910においてレイアウトスタックから現在のレイアウト情報を取得して、S908においてレイアウト情報を更新する。次にS905に進み、ユーザインターフェースを構成する情報のうち次の構成情報を取得し、S902の処理に戻る。
S909においてレイアウト終了指定情報と判断されなかった場合には、S911に進み、ユーザインターフェース指定情報に対応する具体的なレイアウトを取得する。次にS912において、新規レイアウト情報を生成しレイアウトスタックに送る。次にS905に進み、ユーザインターフェースを構成する情報のうち次の構成情報を取得し、S902の処理に戻る。
図10は本実施の形態におけるユーザインターフェース決定処理において実行される具体的ユーザインターフェース部品の取得処理を示すフローチャートである。
まず、S1001においてユーザインターフェース部品指定情報の最初のユーザインターフェース指定情報要素を取得する。次にS1002において、ユーザインターフェース指定情報要素名に対応のユーザインターフェース部品ルール要素を取得する。次にS1003に進み、次のユーザインターフェース部品ルール要素があるかを判断し、あった場合にはS1009に進み、次のユーザインターフェース指定情報要素があるか判断する。S1009において、次のユーザインターフェース指定情報要素があった場合にはS1004に進み、次のユーザインターフェース指定情報要素を取得する。次にS1005において、ユーザインターフェース指定情報要素名に対応のユーザインターフェース部品ルール要素があるかを判断し、あった場合には、S1002の処理に戻る。
S1003において、次のユーザインターフェース部品ルール要素が無いと判断された場合、または、S1009において次のユーザインターフェース指定情報要素が無いと判断された場合、または、S1005においてユーザインターフェース指定情報要素名に対応のユーザインターフェース部品ルール要素が無いと判断された場合には、S1006において現在のユーザインターフェース部品ルール要素が非末端ユーザインターフェース部品ルール要素であるかを判断し、非末端ユーザインターフェース部品ルール要素で無いと判断された場合にはS1007に進み、具体的ユーザインターフェース部品を取得して処理を終了する。
S1006において現在のユーザインターフェース部品ルール要素が非末端ユーザインターフェース部品ルール要素であると判断された場合には、S1008に進み現在のユーザインターフェース部品ルール要素の最初の子要素を現在のユーザインターフェース部品ルール要素として設定し、S1006の処理に戻る。
図11は本実施の形態におけるユーザインターフェース決定処理において実行される具体的レイアウト取得処理を示すフローチャートである。
まず、S1101においてレイアウト指定情報の最初のユーザインターフェース指定情報要素を取得する。次にS1102において、ユーザインターフェース指定情報要素名に対応のレイアウトルール要素を取得する。次にS1103に進み、次のレイアウトルール要素があるかを判断し、あった場合にはS1109に進み、次のユーザインターフェース指定情報要素があるか判断する。
S1109において、次のユーザインターフェース指定情報要素があった場合にはS1104に進み、次のユーザインターフェース指定情報要素を取得する。次にS1105において、ユーザインターフェース指定情報要素名に対応のレイアウトルール要素があるかを判断し、あった場合には、S1102の処理に戻る。
S1103において、次のレイアウトルール要素が無いと判断された場合、または、S1109において次のユーザインターフェース指定情報要素が無いと判断された場合、または、S1105においてユーザインターフェース指定情報要素名に対応のレイアウトルール要素が無いと判断された場合には、S1106において現在のレイアウトルール要素が非末端レイアウトルール要素であるかを判断し、非末端レイアウトルール要素で無いと判断された場合にはS1107に進み、具体的レイアウトを取得して処理を終了する。
S1106において現在のレイアウトルール要素が非末端レイアウトルール要素であると判断された場合には、S1108に進み現在のレイアウトルール要素の最初の子要素を現在のレイアウトルール要素として設定し、S1106の処理に戻る。
(第1の実施の形態)
本実施形態では、ある一つのユーザインタフェースデータに対してユーザインターフェースルールのみを変更することで、提供するユーザインターフェースを変更する例について説明する。
本実施形態では、ある一つのユーザインタフェースデータに対してユーザインターフェースルールのみを変更することで、提供するユーザインターフェースを変更する例について説明する。
図16は本実施形態におけるシステム全体の処理の流れを示すフローチャートである。
まず、S1701においてシステムの初期設定が起動し、あらかじめプログラムされた情報処理装置の起動時の処理等が行われる。次にS1702において、情報処理装置内のイベント処理部においてイベントを取得し、S2023で判断されるイベント種類に基づいてS1704以下の各処理が行われる。
S1703において、イベント種類がユーザインターフェースルール取得であると判断された場合には、S1704に進み、取得のユーザインターフェースルールのユーザインターフェースルール定義を取得し、次にS1709においてユーザインターフェースルール定義よりユーザインターフェースルールを作成処理が実行される。次に、S1710において、作成したユーザインターフェースルールを情報処理装置のユーザインターフェースルールとして設定し、S1702の処理に戻る。
S1703において、イベント種類がユーザインターフェースの構成であると判断された場合には、S1705に進みユーザインターフェース構成処理を起動してユーザインターフェースの構成を行い、S1702の処理に戻る。
S1703において、イベント種類がユーザインタフェースデータ取得であると判断された場合には、S1708に進みユーザインターフェース決定処理を起動し、取得のユーザインタフェースデータと情報処理装置のユーザインターフェースルールに基づきユーザインターフェースを決定し、S1702の処理に戻る。
S1703において、イベント種類がその他であると判断された場合には、S1706に進みその他処理を起動し、S1702の処理に戻る。S1703において、イベント種類が終了イベントであると判断された場合には、S1707の終了処理を起動して処理を終了する。
図26は、ユーザインターフェースルール定義ファイルの例を示す図である。
この図にはユーザインターフェース部品のルールが記載されており、このユーザインターフェースルール定義ファイル2701を入力としてS1709で取得すると、S1709のユーザインターフェースルール作成により、図24に示すようなユーザインターフェースルールが作成される。
図27は、ユーザインターフェースルール定義データのその他の例を示す図である。
このユーザインターフェースルール定義ファイル2801を入力として、図25に示すようなユーザインターフェースルールが作成される。
それでは以下に、具体的な処理の流れを、図16のフローチャートに従って詳細に説明する。
まず、情報処理装置において、起動時に初期ユーザインターフェースルールとして図24に示すようなユーザインターフェースルールが設定されているものとして、この時、図28に示すようなユーザインタフェースデータの表示要求が発生したとする。
現在、前記情報処理装置にて設定されている図24のユーザインターフェースルールにおいて、“range”2502の子要素は、“dial”2505と“slider”2506の二つであり、前記ユーザインタフェースデータのユーザインターフェース部品指定情報1702 type=“/range/spinbox/qspinbox”にて指定されている“spinbox”以下に対応する要素は存在しない。
従って、S825のユーザインターフェース決定処理において、図28に示す現在のユーザインタフェースデータと図24に示すユーザインターフェースルールに基づいて、“spinbox”以下に替わる次善のユーザインターフェース部品として、“range”2502の第1の子要素である“dial”2505が選択され、さらにその子要素である具体的ユーザインターフェース部品“qdial”2509が選択される。
その結果、図14のようなダイアル形式のユーザインターフェースにより構成される画面が表示される。
さてここで、ユーザ要求またはサーバ等からの要求によって、新たにユーザインターフェースルールが取得されると、S1704においてユーザインターフェースルール定義ファイル2801が取得される。S1709において、ユーザインターフェースルール定義ファイル2801より図25のようなユーザインターフェースルールが作成され、S1710でこのユーザインターフェースルールを情報処理装置のユーザインターフェースルールとして設定する。これはすなわち“range”の子要素の順番を入れ替えたものである。これにより、指定のユーザインターフェース部品が存在しない場合に選択される次善のユーザインターフェース部品は、“slider”2605となる。
そこで、S1703においてユーザインタフェースデータの表示要求が発生すると、変更されたユーザインターフェースルールにおいて“range”の第1の子要素である“slider”の具体的ユーザインターフェース部品“qslider_horizontal”が選択され、図15のようなスライダ形式のユーザインターフェースにより構成される画面が表示される。
以上説明した通り、ユーザインターフェースルールの変更により、同じユーザインタフェースデータを表示させた場合でも、図14と図15のように異なった画面が表示される。
すなわち、本実施形態の構成により、ユーザインターフェースルールを別のユーザインターフェースルールに変更することにより、ユーザ毎、あるいは1つのユーザインタフェースデータを表示する期間等のセッション毎にユーザインターフェースルールを切り替え、それぞれ個別のユーザインターフェースを提供することが出来る。
さらにまた、ユーザインターフェースルールは図24に示すような階層化構造を持った形式の他に、ユーザインターフェースルールを作成する為の情報、例えば図26に示すようなユーザインターフェースルール定義を記述したテキストであってもよく、ユーザインターフェースルールをテキスト化することができる為に、ユーザインターフェースルールを簡単に作成、また配布可能とする。
(第2の実施の形態)
本実施形態では、一つのユーザインタフェースデータに対して複数のユーザインターフェースルールを提示し、これより一つを選択することによりユーザインターフェースを変更する例について説明する。
本実施形態では、一つのユーザインタフェースデータに対して複数のユーザインターフェースルールを提示し、これより一つを選択することによりユーザインターフェースを変更する例について説明する。
図17は、本実施形態におけるシステム全体の処理の流れを示すフローチャートである。図16の処理に対して、ユーザインターフェースルール選択イベントによる処理が追加されている以外は同じであるので、それ以外の処理については説明を省略する。S1803において、イベント種類がユーザインターフェースルール選択であると判断された場合には、S1810に進みユーザインターフェースルール選択処理を起動する。
図18は、ユーザインターフェースルール選択処理の流れを示すフローチャートである。処理が起動されると、S1901において、現在システムにおいて有効なユーザインターフェースルールを取得し、S1902でユーザインターフェースルール一覧提示処理を起動して表示情報処理装置においてユーザに対して現在選択可能なユーザインターフェースルールの一覧を提示する。次にS1903において、ユーザによる選択操作の結果を判断し、これに基づき、ユーザインターフェースルールの設定を更新し、S1802の処理に戻る。
それでは以下に、具体的な処理の流れを、図17のフローチャートに従って詳細に説明する。
まず、情報処理装置において、起動時に初期ユーザインターフェースルールとして図24に示すようなユーザインターフェースルールが設定されているものとする。本実施形態においては、メニューよりユーザインターフェースルールの選択が可能であるものとする。
本実施形態において、第一の実施形態における処理と同様に、図26のような初期のユーザインターフェースルールを設定し、続いてS1802のイベント取得からS1805のユーザインターフェース構成処理までの処理においてユーザインタフェースデータを表示した後、S1802において次のイベントが発生するのを待っているとする。
さてここで、ユーザにより、情報処理装置のユーザインターフェースルール選択がメニューより選択されると、S1809の有効ユーザインターフェースルール取得処理を起動し、現在の状況、例えば、時間、操作ユーザ、メモリ等のシステム状態において、有効なユーザインターフェースルールを取得する。ここでいう有効なユーザインターフェースルールとは、例えば、現在の操作ユーザに対して使用許可と設定されているユーザインターフェースルールであったり、夜間等指定の時間のみに使用可能なユーザインターフェースルールであったり、情報処理装置のリソースが少ない場合に使用する省資源対策として定義されたユーザインターフェースルールであったり、過去に情報処理装置外部から取得したユーザインターフェースルールであったりする。
また、前記有効なユーザインターフェースルールは、図24のように抽象度に応じて階層化されたユーザインターフェースルールであってもよいし、図26の2701のような、ユーザインターフェースルールを作成する為の情報、例えばユーザインターフェースルール定義を記述したテキストなどであってもよい。
このようにして取得されたユーザインターフェースルールの情報を、S1810のユーザインターフェースルール一覧提示処理において、ユーザが選択可能であるように提示する。ここで表示されるユーザインターフェースルール選択画面の例を図29に示す。
続いて、ユーザ操作により、ユーザインターフェースルール一覧より一つを選択しOKボタンが押されると、S1812においてユーザインターフェースルールの設定が更新される。
なお、ここでは表示装置の表示画面上に出力されるユーザインターフェースの部品を一例として説明した、これは、ユーザインターフェースの部品として、音声読み上げによる提示などであってもよいものとする。
以上説明した通り、複数のユーザインターフェースルールの中から1つを選択して変更することができるので、同じユーザインタフェースデータを表示させた場合でも、幾通りものユーザインターフェースを表示させることが出来る。
(第3の実施形態)
本実施形態では、ユーザインターフェースルールに有効期限の設定がある場合の例について示す。
本実施形態では、ユーザインターフェースルールに有効期限の設定がある場合の例について示す。
図19は本実施形態におけるシステム全体の処理の流れを示すフローチャートである。図16の処理に対して、ユーザインターフェースルール取得イベントによる処理に有効期限確認処理が追加されている点、及びユーザインターフェースルール有効期限設定手段イベントによる処理が追加されている点以外同じであるので、それ以外の処理については説明を省略する。
S2003において、イベント種類がユーザインターフェースルール取得であると判断された場合には、S2004に進み、取得のユーザインターフェースルールのユーザインターフェースルール定義を取得する。次にS2009においてユーザインターフェースルール定義よりユーザインターフェースルールを作成する。次にS2011において、取得のユーザインターフェースルールに有効期限設定データがればユーザインターフェースルール有効期限設定イベントを発行する。次にS2012において現在処理対象となっているユーザインターフェースルールを情報処理装置のユーザインターフェースルールとして設定し、S2002の処理に戻る。
S2003において、イベント種類がユーザインターフェースルール有効期限設定であると判断された場合には、S2010においてユーザインターフェースルール有効期限設定処理を起動し、ユーザインターフェースルールの有効期限に基づいてユーザインターフェースルール設定を更新し、S2002の処理に戻る。
図21は、ユーザインターフェースルール有効期限設定確認処理の流れを示すフローチャートである。まず、S2201において、取得したユーザインターフェースルールについて有効期限設定情報があるかを判断し、有効期限設定情報がある場合にはS2202において、現在適用中のユーザインターフェースルールをメモリに保存する。これは、現在処理対象となっているユーザインターフェースルールの有効期限終了後にはもとのユーザインターフェースルールに復帰できるようにする為である。
次に取得したユーザインターフェースルールの有効期限設定イベントを発行して、処理を終了する。
S2201において、有効期限設定情報がない場合は、そのまま処理を終了する。
図23は、ユーザインターフェースルール有効期限設定イベントに対して起動される処理の流れを示すフローチャートである。S2401において、ユーザインターフェースルールの有効期限設定情報を取得し、S2402において、有効期限設定情報が有効かどうかを判断する。S2402において、有効期限設定情報が無効の場合は、S2403においてメモリ上に保存されているユーザインターフェースルールがあるか判断し、保存のユーザインターフェースルールがある場合には、S2404において前記ユーザインターフェースルールを取得する。
S2403において保存のユーザインターフェースルールがない場合には、S2405においてデフォルトのユーザインターフェースルールを取得する。次に、S2406において、取得のユーザインターフェースルールを現在のユーザインターフェースルールとして設定を更新して処理を終了する。S2402において、有効期限設定情報が有効である場合は、処理をそのまま終了する。
以下に、具体的な処理の流れを、図19のフローチャートに従って詳細に説明する。
情報処理装置において、起動時に初期ユーザインターフェースルールとして図24に示すようなユーザインターフェースルールが設定されているものとする。
本実施形態において、第一の実施形態における処理と同様にS2001のシステム初期設定から、S2004のユーザインターフェースルール設定・変更処理までの処理において図26のような初期のユーザインターフェースルールを設定し、続いてS2002のイベント取得からS2005のユーザインターフェース構成処理までの処理においてユーザインタフェースデータを表示した後、S2002において次のイベントが発生するのを待っているとする。
なおここで、説明を平易なものとするために、現在適用中のユーザインターフェースルールをルールA、新規に取得したユーザインターフェースルールを、ルールBと呼ぶことにする。
さて、新規ユーザインタフェースデータの入力を受け、S2008においてユーザインターフェース決定処理が起動され、図8のフローチャートに従ってユーザインタフェースデータを解析し所定の処理を行う。
この時、同時にユーザインターフェースルールBを取得したとして、かつそのユーザインターフェースルール定義には、「ユーザインタフェースデータを表示する場合のみ有効とする」という有効期限設定情報をもつとする。すなわち、同時に取得されたユーザインタフェースデータと対になって適用されるユーザインターフェースルールであるという意味のことが定義されている。
これにより、ユーザインターフェースルール取得イベントによる処理が発生し、S2004で取得のユーザインターフェースルールBの定義を取得し、これに基づいてS2009においてユーザインターフェースルールBが作成される。
次にS2011において、有効期限確認処理を実行する。前記ユーザインターフェースルール定義には有効期限設定情報があるので、S2202に進み、現在適用中のユーザインターフェースルールAをメモリに保存する。これは、取得のユーザインターフェースルールBの有効期限が終了した後に、元のユーザインターフェースルールAに戻る為である。次にS2203において、ユーザインターフェースルール有効期限設定イベントが発行され、次にS2012において、ユーザインターフェースルールBを現在の情報処理装置のユーザインターフェースルールとして設定する。
次にS2002の処理に戻ると、ユーザインターフェースルール有効期限設定イベントがあるので、S2008のユーザインターフェース有効期限設定処理が起動される。
S2401において、ユーザインターフェースルール有効期限設定情報を取得すると、S2402において取得の有効期限が有効と判断され、処理をそのまま終了する。
この結果、取得のユーザインターフェースルールBが現在の装置のユーザインターフェースルールとして設定されているものとする。
さてその後、ユーザインターフェースルールBの有効期限が終了すると、ユーザインターフェース有効期限設定イベントが発行され、再びS2008のユーザインターフェースルール有効期限設定処理が起動される。この時、S2402において、有効期限の無効が判断され、かつここでは、ユーザインターフェースルールAが保存されているので、S2404においてユーザインターフェースルールAが取得され、S2406において装置のUIルールとして設定が更新され、再び元のユーザインターフェースルールが適用されたユーザインターフェースが表示される。
以上説明したように、上述した処理によってユーザインターフェースルールごとに有効期限を設定することにより、ユーザインターフェースルールの動的な変更を簡単に行い、データやユーザに最適なユーザインターフェースを提示することができる。
なお、ここでは、ユーザインタフェースデータとユーザインターフェースルールを一体として説明したが、ユーザインタフェースデータとユーザインターフェースルールは必ずしも一体または一緒に送られなくてもよい。例えば、ユーザインターフェースルールを適応したい人とユーザインタフェースデータ作成者が異なる場合、ユーザインターフェースルールは操作者(情報処理装置のユーザ)が設定し、別の誰かが作成したユーザインタフェースデータや別の誰かが送信したデータを表示する場合などが考えられる。
また、ユーザインタフェースデータ作成者がそのデータ特有のユーザインターフェースルールを付随させる場合や、ユーザインタフェースデータ作成者がユーザインターフェースルールを付随させたユーザインタフェースデータを送信してくる場合において、このユーザインターフェースルールを使用する例としては、同じ装置を2人以上のユーザが使用していて、あるUIデータを見るときは、ユーザAが細かい表示を希望し、ユーザBが大きい表示にしたいときなど、それぞれに設定したUIルールを有効にしてから、同じUIデータを表示する、といったことが考えられる。
これにより例えば、ユーザは自分が操作する時のみという条件でユーザインターフェースルールを変えることができる。すなわち有効期限をユーザ毎に設定することにより、任意のユーザの操作開始(ログイン)時に前記ユーザ専用のユーザインターフェースルールを適応し、そのユーザの操作終了(ログオフ)時にユーザインターフェースルールをデフォルトのものに再設定しても良い。
なお、このユーザインターフェースルールの有効期限は、上記の例で示したように、特定のデータに属するものとしてもよいし、「今から3時間」「AM8:00〜PM5:00」等のように明示的に時間で設定しても良い。
さらに、ユーザインターフェースルールを変更する条件として、第一ないし第三の実施形態においては、ユーザによる操作画面からの選択操作をもちいたが、これを情報処理装置の操作または外部より取得する情報より判断するユーザ属性を条件として、自動で変更してもよい。
例えば、モニタリングカメラからの操作ユーザの映像情報や、センサーにより検知されるユーザの位置や身体の稼動範囲、例えば身長の高低や手の持ち上がることのできる高さ等から、操作ユーザにとって操作可能なユーザインターフェースとその配置を計算し、それに適したユーザインターフェースルールに変更することも可能である。
これにより、例えばタッチパネルをもちいた機器における操作画面において、操作の為のGUI部品のサイズまたは色、配置等の見易さの工夫で、高齢者や情報機器の操作に不慣れなユーザ、または身体機能に制限があり使えないユーザインターフェースが存在するユーザなどについても、ユーザの状況を上記カメラやセンサー等からの取得情報より判断し、自動で最適なユーザインターフェースルールに変更し、それぞれの操作ユーザに最適な操作し易いユーザインターフェースの提供を実現する。また例えば、一時的なユーザの操作困難な状況等、例えば手に荷物を持っていて操作に手を使えない等にも対応することができる。
この場合、タッチパネルに限定せず、音声入出力機能を備える機器の場合などには、表示の他に、音声出力、音声入力など機能の異なるハードウェアユーザインタフェースを使い分けることができる。
(第4の実施の形態)
本実施形態では、情報処理装置のリソースに応じて、適用するユーザインターフェースルールを動的に変更することで、ユーザインターフェースを最適化する。
本実施形態では、情報処理装置のリソースに応じて、適用するユーザインターフェースルールを動的に変更することで、ユーザインターフェースを最適化する。
図32は本実施の形態における情報処理装置におけるユーザインターフェース決定処理の一例を示す流れ図である。
まず、S3301において処理が開始されると、S3302において当前記ユーザインタフェースデータによって構成される表示画面のモードがダイアログ画面であるか標準画面であるかを判断し、ダイアログ画面である場合には、S3303においてダイアログ画面用に最適化されたユーザインターフェースルールが選択される。標準画面で構成される場合には、S3304において、標準画面用に最適化されたユーザインターフェースルールが選択される。
次にS3305において、レイアウト情報を初期化し、レイアウト情報をスタック型データ構造で保持するレイアウトスタックにプッシュする。次にS3306において、ユーザインタフェースデータ中にユーザインターフェース指定情報がまだ存在するか否かを判断し、ユーザインターフェース指定情報が存在しなければ、S3317に進み処理を終了する。S3306の判断の結果、ユーザインターフェース指定情報がまだ存在するならば、S3307においてユーザインタフェースデータ中のユーザインターフェース指定情報を1つ読み込む。
次にS3308において、前記ユーザインターフェース指定情報がユーザインターフェース部品指定情報かレイアウト指定情報かを判断する。前記判断の結果、前記ユーザインターフェース指定情報がユーザインターフェース部品指定情報であるならば、S3309においてユーザインターフェース部品ルールを参照する。
次にS3310において、前記ユーザインターフェース部品指定情報に対応するユーザインターフェース部品を取得する。次にS3311において、前記レイアウトスタックの1番上にある現在のレイアウト情報に従って部品をレイアウトし、S3306の判断に戻る。S3308の判断の結果、前記ユーザインターフェース指定情報がレイアウト指定情報であれば、S3312において前記レイアウト指定情報がレイアウト開始指定情報か、レイアウト終了指定情報かを判断する。
前記判断の結果、前記レイアウト指定情報がレイアウト開始指定情報であれば、S3313において、レイアウトルールからレイアウト指定情報に対応する具体的レイアウトを取得し、現在のレイアウト情報と前記具体的レイアウトを基に新たなレイアウト情報を作成し、S3314において前記レイアウトスタックにプッシュした後、S3306の判断に戻る。
S3312の判断の結果、前記レイアウト指定情報がレイアウト終了指定情報であれば、S3315において前記レイアウトスタックから現在のレイアウト情報をポップし、S3316においてポップした後の現在のレイアウト情報を更新し、S3306の判断に戻る。
図3aのツリー状構造の末端には、ツールキットの具体的な部品としてDial、SpinBox、Slider_Horizontal、Slider_Vertical、CheckBox、PullDown、ListTable、ListBox、PictButton、TextButton、2PictButton、Label、Hintなどがある。それらの1つ上の階層では、末端の具体的な部品をそれぞれ抽象化し、部品の概念としてまとめている、ダイアル(dial)、スピンボックス(spinbox)、スライダ(slider)、チェックボックス(checkbox)、プルダウンメニュー(pulldownmenu)、リスト(list)、モメンタリ(momentary)、オルタネート(alternate)、ラベル(label)、ヒント(hint)などがある。それらのさらに上位の階層では、さらに抽象化したレベルとして、数値範囲(range)、選択(select)、唯一選択(selectone)、トリガ(trigger)、テキスト(text)などがある。
また、図3bのツリー状構造の末端には、図3aとは異なり、小さい画面用に最適化された末尾に“_S”が付くユーザインタフェースコントロール部品であるSlider_Horizontal_S、CheckBox_S、ListBox_S、PictButton_S、Label_Sなどがあり、それらの一つ上の階層では、スピンボックス(spinbox)、チェックボックス(checkbox)、リスト(list)、モメンタリ(momentary)、ラベル(label)などがある。それらのさらに上の階層では、図3aと同じ、数値範囲(range)、選択(select)、唯一選択(selectone)、トリガ(trigger)、テキスト(text)などがある。
図5は、図4の具体例として、本実施の形態の情報処理装置に保持されているレイアウトルールの一部をツリー状構造で示したものである。本実施の形態では、ユーザインターフェース部品を画面に配置するために、具体的レイアウトが組み込まれており、上記で説明したように、抽象概念をまとめてツリー状構造をなしている。ツリー状構造の末端には、具体的レイアウトが当てられており、階層を上がるごとに抽象度が高くなる。
図5のツリー状構造の末端に、具体的レイアウトとしてユーザインターフェース部品を横に並べるHorizontal、ユーザインターフェース部品を縦に並べるVertical、右回りで周囲に配置するRightOrder、左周りで周囲に配置するLeftOrder、右上から碁盤目状に順番に配置するUpRight、左上から碁盤目状に順番に配置するUpLeft、以下同様に、右下から順番に配置するDownRight、左下から順番に配置するDownLeftなどがある。それらのさらに上位の階層では、さらに抽象化したレベルとして、スタック(stack)、ボーダー(border)、グリッド(grid)などがあり、さらにその上の抽象化したレベルとしてグループ(group)などがある。
図13は、XMLの記述に基づき、XForms言語として記述されたユーザインタフェースデータのうち、コントロールパネルのGUIを構成するbody部分の一部分を表す例である。なお、例えばtrigger要素内のsubmission属性の参照先記述など、model部分については、本実施の形態の処理の特徴とは直接関係が無いので記述を省略している。
行番号1は本実施の形態の情報処理装置において構成されるGUI画面上の一つの操作パネルを構成する大きな3つのグループである、複数ボタンとスライダ、リストボックス及び複数ボタンが縦並びである事を示すグループ要素記述である。行番号2は、上記の複数のボタンとスライダが横並びである事を示すグループ要素記述である。
行番号3から6まではtrigger要素から構成されるボタン型ユーザインタフェースコントロール部品を示す記述であり、行番号の3では、要素名と共に、抽象化レベル毎に階層化された具象ユーザインタフェースコントロールまでを指定するType属性と、当前記具象ユーザインタフェースコントロールで使用されるキートップに貼り付けられる図形の参照ファイル名が、picture属性として記述されている。行番号4では、行番号3から始まるtrigger要素の子要素として、ラベル部品であるlabel要素とその内容の記述がある。行番号5では、行番号3のtrigger要素の子要素として、ボタン型ユーザインタフェースコントロールが操作された際に実行する動作が記述されており、submission動作の参照先を示すsubmission属性を含んでいる。行番号6は行番号2のtrigger要素の終了タグである。
以下、行番号7から行番号18までは、上記の行番号3から6までの繰り返しである。
また、行番号19はrange要素から構成されるスライダ型ユーザインタフェースコントロール部品を示す記述であり、行番号の19では、要素名と共に、抽象化レベル毎に階層化された具象ユーザインタフェースコントロールまでを指定するType属性が、また、行番号20では、当前記ユーザインタフェースコントロール部品で制御される変数のモデル参照先がref属性として記述されている。また、行番号21では、当前記ユーザインタフェースコントロール部品で制御される変数の範囲や表示ステップ、及び操作が行われた際に数値を変更するイベントを発生するか否かのフラグ等が記述される。また行番号22では、行番号19から始まるrange要素の子要素として、ラベル部品であるlabel要素とその内容の記述がある。
以上、これらにより構成されるユーザインタフェースコントロール部品群が、行番号2及び行番号24から構成されるグループ要素の内容となっている。
ここで、行番号1、2、3、7、11、15、19に存在するtype属性は、本発明の基となるによる階層型抽象化ユーザインタフェースデータ表示情報処理装置によるXForms言語の拡張であり、ユーザインターフェース部品指定情報を表している。
例えば、行番号3、7、11、15に含まれるtype属性において、ユーザインターフェース指定情報要素“trigger”によりトリガを発生させる為の部品が指定されており、ユーザインターフェース指定情報要素“momentary”により押している間だけトリガを発生させる部品が指定されており、ユーザインターフェース指定情報要素“pictbutton”により、キートップに図形が貼り付け可能なツールキット部品が指定されていることが記述されている。
次に、行番号25は、selectone要素から構成されるリストボックス型ユーザインタフェースコントロール部品を示す記述であり、行番号の25では、要素名と共に、抽象化レベル毎に階層化された具象ユーザインタフェースコントロールまでを指定するType属性と、当前記具象ユーザインタフェースコントロールで表示されるプレイリストのデータの参照先がref属性として記述されている。
次に、行番号27から50は、先程の行番号3から18までの記述と同様に、trigger要素から構成されるボタン型ユーザインタフェースコントロール部品を示す記述であり、これらも先程と同様に行番号26及び51に示すグループ要素の内容となっている。
またさらに、上記の二つのグループ要素及びその間に存在するリストボックス型ユーザインタフェースコントロール部品は、行番号1及び52に示すグループ要素の内容となっている。
それでは以下に、図13のユーザインタフェースデータにより異なる2種類の画面モードにおける情報処理装置における動作について、画面を構成するユーザインタフェースコントロール部品が選択される具体的な処理の流れを、図32と図11のフローチャートに従って説明する。
図32において、図13のユーザインタフェースデータの処理が開始されると、S3302において、図13に示されるユーザインタフェースデータによるGUI画面が、ダイアログ画面上で構成されるものか、あるいは標準画面上で構成されるものかの判定が行われる。
まず、情報処理装置上で、他のアプリケーションが実行されておらず、標準画面上において、当前記GUI画面が構成される場合の例を説明する。このとき、S3302においては、ダイアログモードとは判定されない為に、S3304において標準画面用のユーザインターフェース部品ルールである図3aのユーザインターフェース部品ルールが取得され、次にS3305においてレイアウト情報の初期化が行われる。
次にS3306において、まず、図13のユーザインタフェースデータの行番号1のグループ要素が読み込まれる。S3308において、グループ要素はユーザインターフェース部品情報では無い為に、S3312へと進む。行番号1はレイアウト指定の開始情報を示している為にS3313へと進み、図11の具体的レイアウト取得処理が開始される。
図11のS1101において、図13のレイアウト指定情報から、最初のユーザインターフェース指定情報要素である行番号1のtype属性より“group”を取得し、次にS1102でユーザインターフェース指定情報要素名group(グループ)に対応するレイアウトルール要素として図5の502のグループを取得する。次にS1103で行番号1のtype属性でレイアウト指定情報に続きがあるので、次にレイアウトルール要素があると判断され、S1104において“stack”を取得する。
次にS1105において、503のスタックがあるのでS1102の処理に戻る。S1102において、type属性から“vertical”を取得し、S1105でユーザインターフェース指定情報要素名に対応するレイアウトルール要素として507の“Vertical”があるので、再び、S1103の処理に戻る。S1102において、対応するレイアウトルール要素として507のVerticalを取得すると、S1103においてレイアウト指定情報に続きは無いので、S1106に進む。S1106において、507のVerticalは末端レイアウトルール要素なので、S1107において、具体的レイアウトVerticalを得る。
このようにして、図13のレイアウト指定情報と、図5のユーザインターフェースルール参照に基づき、図11の処理では具体的なレイアウトHorizontalを取得する。
次にS3314において、S3313で取得したレイアウト情報が再びスタックにプッシュされ、S3306において次のユーザインターフェース指定情報要素があるので、S3307においてユーザインターフェース指定情報要素が読み込まれる。
この状態で図13のユーザインタフェースデータよりユーザインターフェース部品情報が処理され、これらのユーザインターフェース部品は、行番号24のレイアウト指定の終了までの間、当前記スタックにある状態でレイアウト配置される事になる。
すなわち、行番号3から23の間、図13のユーザインタフェースデータにおいては、図5のレイアウトルールを参照し、具体的なレイアウトであるHorizontalが選択され、図31aの3202から3206に示す様に、<xforms:group>および</xforms:group>で囲まれたユーザインターフェース指定情報要素が横並びでレイアウトされる事となる。
次に、S3307で読み込まれた行番号24のユーザインターフェース指定情報要素は、レイアウトの終了情報である為にS3308からS3312へと進みS3315の処理が行われる事になる。すなわち、S3314でプッシュされたレイアウト情報がポップされ、当前記スタックの状態はVerticalへと戻る事になる。
従って、次にS3307において読み込まれる行番号25のselection要素からなるユーザインターフェース指定情報要素は、S3308からS3309へと進み、S3310において、具体的なユーザインターフェース部品としてListBoxが選択され、S3311において、先に配置されたグループ要素と縦並びで、図31aの3212及び3213で示す様なユーザインターフェース部品のレイアウトの配置が行われる事になる。
以下、行番号26から51までのグループ要素についても、図31aの3214から3219に示す様に、中身は横並びのレイアウト配置で行われ、また、前記グループ要素については、引き続き、縦並びでレイアウトの配置が行われる。
また、上記の具体的なユーザインタフェースコントロール部品であるPictButton及びSlider_Horizontalについては、子要素であるラベル要素の内容がそれぞれのユーザインタフェースコントロール部品の下部に表示され、図31aに示す様なGUI画面が構成されるものである。
次に、その他の実施の形態として、当前記情報処理装置上で他のアプリケーションが既に実行されており、ダイアログ画面上において当前記GUI画面が構成される場合の例を説明する。
この時、S3302において、ダイアログモードと判定される為に、S3404において、ダイアログ画面用のユーザインターフェース部品ルールである図3bのユーザインターフェース部品ルールが取得され、次にS3305においてレイアウト情報の初期化が行われる。
次にS3306において、まず、図13のユーザインタフェースデータの行番号1のグループ要素が読み込まれる。S3308において、グループ要素はユーザインターフェース部品情報では無い為に、S3312へと進む。行番号1はレイアウト指定の開始情報を示している為にS1112へと進み、図11の具体的レイアウト取得処理が開始される。
図11の処理においては、先程の標準画面の場合の説明と同様にレイアウトスタックの処理が行われ、S1107において、行番号3のユーザインターフェース指定情報要素の読み込みが行われ、当前記ユーザインターフェース指定情報要素はユーザインターフェース部品情報要素である為にS3309へと進み、図3bのユーザインターフェース部品ルールへの参照が行われ、S3310において、図10に示す具体的ユーザインターフェース部品取得処理が実行される。
ここで、図10のS1001において、最初のユーザインターフェース指定情報要素である“trigger”を得る。S1002において、trigger(トリガ)に対応する図3aの305のトリガ要素を得る。S1003において、次のユーザインターフェース部品ルール要素に続きがあり、かつS1009においてユーザインターフェース部品指定情報に続きがあるので、S1004において、次の“momentary”を取得する。S1005において、momentary(モメンタリ)に対応するモメンタリ要素があるので、S1002の処理に戻る。
同様にして、S1002でモメンタリ要素313を取得し、S1004で“pictbutton”を取得する。S1005において“pictbutton”に対応するユーザインターフェース部品ルール要素PictButtonは存在しないので、S1006に進み、当前記モメンタリ要素が末端ユーザインターフェース部品ルール要素であるか否かを判断し、ここでは末端ユーザインターフェース部品ルール要素ではないのでS1008へと進み、最初の子要素であるPictButton_Sを取得し、現在のユーザインターフェース部品ルール要素としてS1007の処理に戻る。S1007において、当前記ユーザインターフェース部品ルール要素であるPictButton_Sは末端ユーザインターフェース部品ルールであるので、S1007において具体的なユーザインターフェース部品である、PictButton_Sを取得する。
このようにして図13の末端ユーザインターフェース部品ルール要素まで指定したユーザインターフェース部品指定情報では、対応するユーザインターフェース部品が見つからなかったために、図3bのユーザインターフェース部品ルールより、次善のユーザインターフェース部品として、PictButton_Sが選択される。
以下、行番号7、11、15においても同様にしてPictButton_Sの選択される。これらのユーザインターフェース部品がレイアウトスタックの状態により横並びにレイアウト配置された結果、図31bの3202から3205に示す様な、ダイアログ画面に適した小型でなおかつラベル表示を省略したユーザインターフェース部品が配置されることになる。
また、行番号19のrange要素についても具体的なユーザインターフェース部品としてSlider_Hrizontal_Sが、行番号25のselectone要素についても具体的なユーザインタフェースコントロール部品として、ListBox_Sが、それぞれ選択され、図31bの3006及び3007としてレイアウト配置される。以下、行番号27、31、35、39、43、47についても同様の処理が行われた結果、図31aではスクロールバー3220aに変わって、図31bではスピンボックス3220bが表示されている。このようにして、ダイアログ画面上に小型のユーザインターフェースをコントロールするユーザインターフェース部品が選択され、レイアウトされた事により、全てのユーザインターフェース部品をダイアログ画面上に構成することが可能となった。
以上説明した様に、本実施形態によれば、同一のユーザインタフェースデータを用いて、同一の情報処理装置上でGUI画面の構成を行う際に、予め、当前記情報処理装置における画面モード、すなわち、ここでは前記のGUI画面の構成を行う際に許された表示画面の大きさによる制限を検出し、当前記検出した結果に基づき、それぞれの画面サイズに適したツールキット部品からなるユーザインターフェース部品ルールを選択し、当前記ユーザインターフェース部品ルールを用いて、ユーザインタフェースデータに基づくGUI画面の構成を行うことで、画面サイズごとに最適な、ユーザに使いやすいGUIを提供出来る。
なお、本実施の形態においては、GUI画面が構成される際の表示画面の種類として、ダイアログ画面と標準画面という組み合わせとしたが、ユーザインターフェース部品ルールと対応する表示画面の種類として、1画面と2分割画面など、画面を分割する際の種類としてもよい、また更に、対応するユーザインターフェース部品ルールも2種類だけではなく、3分割画面用、4分割画面用など、それぞれの画面用にユーザインターフェース部品ルールを用意しても構わない。
また、さらに、個々のユーザインターフェース部品ルールに対応する情報処理装置の状態には、メモリやキャッシュの使用量など、GUI画面を構成する際に必要とする全てのリソースの状態を含む物でも構わない。この様な構成では、当前記リソースが少ない状態を予め検出し、この様な場合には、GUI画面を構成する際に、当前記リソースの消費が少ないユーザインターフェース部品から成るツールキットに対応したユーザインターフェース部品ルールを選択する構成としてもよい。また、さらに、上記の実施の形態では、複数用意するユーザインターフェースルールとして、ユーザインターフェース部品ルールの例を挙げたが、各種リソースの消費が少ないレイアウトルールなどを用意して、これを選択する構成としても良い。
なお、ユーザインターフェースルールを変更する条件として、本実施形態においては、情報処理装置のリソースとして画面サイズをもちいたが、これを現在使用可能な情報処理装置機能としてもよい。
例えば、タッチパネル機能と音声入出力機能をもつ表示情報処理装置であったとして、タッチパネル機能が故障している場合には、通常タッチパネル操作で提供されているユーザインターフェースを音声入出力機能をもちいたものに変えることができる。これにより、一つの機能が使えない状況であっても、他のユーザインターフェースに変更することで常にその状況下においてユーザに最適なユーザインターフェースを提供できる。
このような処理によって、液晶からなる表示情報処理装置のバックライトが切れてしまい、表示画面が見えなくなってしまったような状況においても、情報処理装置の状況を検知して、表示以外のユーザインターフェースを使うようユーザインターフェースルールを変更すれば、表示画面が見えなくて操作ができないというような事態を避けることができる。
(第五の実施形態)
第四の実施形態においては、情報処理装置の持つ各種リソースの状態を検出し、それぞれの状態に最適に対応するユーザインターフェースルールを選択する構成としたが、具体的なユーザインターフェース部品について、ハードウェアから成るユーザインターフェース部品から構成されている場合など、その同時使用可能な数に限りがある場合に、ユーザインターフェース部品ルール内にこれを管理する情報要素を追加し、当前記ユーザインターフェース部品の使用個数に制限を持たせる構成にしてもよい。
第四の実施形態においては、情報処理装置の持つ各種リソースの状態を検出し、それぞれの状態に最適に対応するユーザインターフェースルールを選択する構成としたが、具体的なユーザインターフェース部品について、ハードウェアから成るユーザインターフェース部品から構成されている場合など、その同時使用可能な数に限りがある場合に、ユーザインターフェース部品ルール内にこれを管理する情報要素を追加し、当前記ユーザインターフェース部品の使用個数に制限を持たせる構成にしてもよい。
ここでは、その場合の例について説明する。図20は、本実施例におけるユーザインターフェース部品ルールの一例であり、その同時使用可能な数に制限のある具体的なユーザインターフェース部品であるHW_Slider_Horizontal(2130)及びHW_Slider_Vertical(2131)について、子要素として、当前記ユーザインターフェース部品が使用可能である残りの数を示すremain要素(2134及び2135)を設け、当前記要素のデータとして2136及び2137を設けたものである。
図33は本実施形態において適用される、その他のユーザインターフェース決定処理を示すフローチャートである。
S3408においてユーザインターフェース部品情報であるかの判断を行うまでの処理は図32と同じであるので説明を省略する。
S3408において、ユーザインターフェース部品情報であるかの判断の結果、前記ユーザインターフェース指定情報がユーザインターフェース部品指定情報であるならば、S3409においてユーザインターフェース部品ルールを参照して当前記ユーザインターフェース部品ルールの中身を探索し、S3410において、remain要素のデータが0個であるユーザインターフェース部品ルール要素について当前記要素そのものを削除する。
次にS3411において、具体的なユーザインタフェースコントロール要素部品を持たないユーザインターフェース部品ルール要素について探索し、その様なユーザインターフェース部品ルール要素があれば要素そのものを削除する。次にS3412において、具体的ユーザインターフェース取得処理を実行する。
S3412において、先のユーザインターフェース部品指定情報に対応する具体的ユーザインターフェース部品を取得し、次にS3413において、前記レイアウトスタックの1番上にある現在のレイアウト情報に従って部品をレイアウトし、前記レイアウト情報を更新し、S3406の判断に戻る。S3408の判断の結果、前記ユーザインターフェース指定情報がレイアウト指定情報であれば、S3414において、前記レイアウト指定情報がレイアウト開始指定情報か、レイアウト終了指定情報かを判断する。
前記判断の結果、前記レイアウト指定情報がレイアウト開始指定情報であれば、S3415において、レイアウトルールから前記レイアウト指定情報に対応する具体的レイアウトを得て、現在のレイアウト情報と前記具体的レイアウトを基に新たなレイアウト情報を作成し、S3415において、前記レイアウトスタックにプッシュした後、S3406の判断に戻る。
S3414の判断の結果、前記レイアウト指定情報がレイアウト終了指定情報であれば、S3417において、前記レイアウトスタックから、現在のレイアウト情報をポップし、S3418においてポップした後の現在のレイアウト情報を更新し、S3406の判断に戻る。
ここで、図30に示す様なライブカメラの操作を行うGUI画面を構成するユーザインタフェースデータの処理を行う際の動作について説明する。行番号1及び2はグループ要素によるレイアウトの開始指定であり、それぞれ、図1の処理により、レイアウトスタックにプッシュすることで現在のレイアウト状態を得る。行番号3では、ライブカメラのストリームデータを映像として表示するための特別なstreammovie要素であり、図1の動作によらず動作が完了するものである。これにより、図30に示す3102の如く画像が表示されるものである。
次に、行番号4のrange要素の処理に移ると、S3408においてユーザインターフェース部品情報であると判定され、S3409において図22に示すユーザインターフェース部品ルールが参照される。次にS3410において、ユーザインターフェース部品ルールにおいて残りの数が0であるユーザインターフェース部品ルール要素が探索され、今は存在しないので、S3411において次の具体的ユーザインターフェース要素の無いユーザインターフェース部品ルール要素が探索される。ここでもやはり存在しないので、S3412において、当前記ユーザインターフェース部品ルールを使用して具体的なユーザインタフェースコントロール部品が取得される。
この時、行番号4のtype属性(/range/slider/HW_Slider/HW_Slider_Virtical)より、対応する具体的なユーザインタフェースコントロールが存在するために、ユーザインターフェース部品ルール要素のHW_Slider_Verticalが選択され、図30の3104に示すハードウェアから成るユーザインタフェースコントロール部品が対応付けられ、さらに当前記ユーザインタフェースコントロール部品の残りの数を示すremain要素のデータが一つ減らされ0となる。
次に行番号11のrange要素の処理に移ると、同様にして、S3408においてユーザインターフェース部品情報であると判定され、S3409において図22に示すユーザインターフェース部品ルールが参照される。
次にS3410においてユーザインターフェース部品ルールにおいて残りの数が0であるユーザインターフェース部品ルール要素が探索されると、先程残りの数を0としたユーザインターフェース部品ルール要素であるHW_Slider_Verticalについて、そのノードごと削除を行う。
このとき、ユーザインターフェース部品ルールについて、XML等のファイル形式で保持しているものに付いては、メモリ上にDOMをして保持しているユーザインターフェース部品ルールについてのみ要素を削除し、前述のファイル形式で保持している物については実体を削除する必要は無い。次にS3411において、具体的ユーザインターフェース要素の無いユーザインターフェース部品ルール要素が探索され、やはり今は存在しないので、S3412において当前記ユーザインターフェース部品ルールを使用して具体的なユーザインターフェース部品が取得される。この時、行番号11のtype属性(/range/slider/HW_Slider/HW_Slider_Horizontal)より、対応する具体的なユーザインタフェースコントロールが存在する為に、ユーザインターフェース部品ルール要素のHW_Slider_Horizontalが選択され、図30の3105に示すハードウェアから成るユーザインタフェースコントロール部品が対応付けられ、さらに当前記ユーザインタフェースコントロール部品の残りの数を示すremain要素のデータが一つ減らされ0となる。
次に、行番号17のrange要素の処理に移ると、同様にして、S3408においてユーザインターフェース部品情報であると判定され、S3409において図22に示すユーザインターフェース部品ルールが参照される。
次にS3410において、ユーザインターフェース部品ルールにおいて残りの数が0であるユーザインターフェース部品ルール要素が探索され、先程残りの数を0としたユーザインターフェース部品ルール要素であるHW_Slider_Horizontalについて、そのノードごと削除を行う。
次にS3411において、具体的ユーザインターフェース要素の無いユーザインターフェース部品ルール要素が探索され、今回はユーザインターフェース部品ルール要素におけるHW_Slider要素が前記当する為に、当前記要素が削除される。この時も、ユーザインターフェース部品ルールについて、XML等のファイル形式で保持しているものに付いては、メモリ上にDOMをして保持しているユーザインターフェース部品ルールについてのみ要素を削除し、前述のファイル形式で保持している物については実体を削除する必要は無い。
次にS3411までの処理の結果、S3412において、図22の様に変化したユーザインターフェース部品ルールを使用して具体的なユーザインタフェースコントロール部品が取得される。この時、行番号17のtype属性(/range/slider/HW_Slider/HW_Slider_Horizontal)より、対応する具体的なユーザインタフェースコントロールが存在しない為に、次善のユーザインタフェースコントロール部品としてユーザインターフェース部品ルール要素のGUI_Slider_Horizontal(2332)が選択され、図30の3106に示すGUIから成るユーザインタフェースコントロール部品が対応付けられる事になる。
以上説明した様に、本実施の形態によれば、同一のユーザインタフェースデータを用いて、同一の情報処理装置上でGUI画面の構成を行う際に、予め、選択されたユーザインターフェース部品ルールについて、使用不可能なユーザインターフェース部品ルール要素を取り除く事によって、構成されないユーザインターフェース部品の発生を回避出来るものである。
なお、本実施の形態においては、ユーザインターフェース部品ルールから使用不可能なユーザインターフェース部品ルール要素を削除する構成としたが、具体的なユーザインターフェース部品要素を参照する際に、常に残りの数を調査し、それを基に具体的なユーザインターフェース部品要素の使用不使用を制御し、尚且つ、全ての具体的なユーザインターフェース部品要素が使用出来ないユーザインターフェース部品ルール要素については、さらに上流に遡ってユーザインターフェース部品ルール要素を探索する構成としても良い。
(第六の実施形態)
上述の第五の実施形態においては、ユーザインターフェース部品ルールに記述された具体的なユーザインターフェース部品要素において、その数に制限がある場合は、ユーザインタフェースデータの処理を行う順番で数に制限のあるユーザインターフェース部品要素を割り当てていたが、図34のユーザインタフェースデータを記述する際に、行番号11から12、及び行番号17から18に示す様に、数に制限のあるハードウェアからなるユーザインタフェースコントロール部品を複数指定する際には、その記述中に、優先度を示すpriority属性を追加し、当前記優先度の順番に従って前述の数に制限のある具体的なユーザインタフェースコントロールを割り当てても良い。
上述の第五の実施形態においては、ユーザインターフェース部品ルールに記述された具体的なユーザインターフェース部品要素において、その数に制限がある場合は、ユーザインタフェースデータの処理を行う順番で数に制限のあるユーザインターフェース部品要素を割り当てていたが、図34のユーザインタフェースデータを記述する際に、行番号11から12、及び行番号17から18に示す様に、数に制限のあるハードウェアからなるユーザインタフェースコントロール部品を複数指定する際には、その記述中に、優先度を示すpriority属性を追加し、当前記優先度の順番に従って前述の数に制限のある具体的なユーザインタフェースコントロールを割り当てても良い。
この場合、ユーザインタフェースデータを処理する際は、当前記ユーザインタフェースデータを2パスで処理する必要がある。まず、1パス目で、図35に示す様なユーザインタフェースデータに記述されている数に制限ある具体的なユーザインタフェースコントロール部品のリストを作成する。当前記リストには、ユーザインタフェースデータの当前記数に制限のあるユーザインタフェースコントロールのノードID、タイプ属性、優先度属性及び優先度順に割り当てた際のユーザインタフェースコントロールの残りの個数と優先度より判定した割り当て可否の判定フラグを格納する。
次の2パス目の処理では、上述の実施例2における処理と同様の処理を行い、ユーザインタフェースデータにおける図35のリストに前記当するノードIDの処理を行う際には、前述のリスト情報の割り当て可否フラグに従い、具体的なユーザインタフェースコントロール部品の対応付けを行う事になる。
即ち、図34の行番号11から12に示すrange要素については、図35のリスト情報より割り当てが不可能である為に、次善の策としてGUI_Slider_Horizontalのユーザインタフェースコントロール部品が割り当てられる。また、行番号17から18に示すrange要素については、同様に割り当てが可である為に、HW_Slider_Horizontalのユーザインタフェースコントロール部品が割り当てられる。
以上、この様な構成によれば、ユーザインタフェースデータに記述された、数に制限のあるユーザインタフェースコントロール部品をユーザインターフェース部品ルールに基づき割り当てる際にも、ユーザインタフェースデータに現れる当前記要素の順番では無く、予めGUIの設計者が意図した優先度にしたがって、ユーザインタフェースコントロール部品を割り当てる事が出来るために、図34のユーザインタフェースデータに対しても、先に現れたハードウェアからなるユーザインタフェースコントロール部品への具体的な指定にも関わらず、図25に示す様に、GUIからなるユーザインタフェースコントロール部品に割り当て、また、後に現れたハードウェアからなるユーザインタフェースコントロール部品への具体的な指定について、ハードウェアからなるユーザインタフェースコントロール部品に割り当てる事が可能となる。
12 CPU(Central Processing Unit)
13 ROM(Read On Memory)
14 RAM(Random Access Memory)
15 VRAM(Video Random Access Memory)
16 入力情報処理装置
17 ネットワークI/F
11 システムバス
18 出力情報処理装置
100 ユーザインタフェースルール
101 ユーザインタフェースデータ
102 ユーザインタフェース指定情報
201 ユーザインタフェース部品ルール
401 レイアウトルール
13 ROM(Read On Memory)
14 RAM(Random Access Memory)
15 VRAM(Video Random Access Memory)
16 入力情報処理装置
17 ネットワークI/F
11 システムバス
18 出力情報処理装置
100 ユーザインタフェースルール
101 ユーザインタフェースデータ
102 ユーザインタフェース指定情報
201 ユーザインタフェース部品ルール
401 レイアウトルール
Claims (11)
- 抽象化して記述されたユーザインターフェースの指定情報を外部から取得する取得手段と、
前記取得手段によって取得された抽象化されたユーザインターフェースの指定情報より具体化して記述されたユーザインターフェースが分類されるユーザインターフェースルールに関する情報を記憶部から参照する参照手段と、
前記ユーザインターフェースルールに関する情報を参照することにより、前記取得手段によって取得された抽象化されたユーザインターフェースの指定情報に属する具体化されたユーザインターフェース情報を決定する決定手段と、
ユーザインターフェースルールを変更するユーザインターフェースルール変更手段とを有することを特徴とする情報処理装置。 - 前記ユーザインターフェースルール変更手段は、
変更されたユーザインターフェースルールの有効期限を設定するユーザインターフェースルール有効期限設定手段とを有することを特徴とする請求項1に記載の情報処理装置。 - 前記ユーザインターフェースルール有効期限設定手段は、前記ユーザインターフェースルールの有効期限をユーザ毎に設定することを特徴とする請求項1に記載の情報処理装置。
- さらに、前記情報処理装置の状況に関する情報を検出する検出手段を有し、
ユーザインターフェースルール変更手段は、前記検出手段によって検出された前記情報処理装置の状況に関する情報に応じて前記ユーザインターフェースルールを変更することを特徴とする請求項1に記載の情報処理装置。 - 前記ユーザインターフェース決定手段は、前記ユーザインターフェース指定情報が指定する要素に直接対応するユーザインターフェースを特定できない場合、前記ユーザインターフェースルールの階層構造を利用して、次善のユーザインターフェースを特定することを特徴とする情報処理装置。
- さらに、ユーザインターフェース部品要素について同時に使用可能な数を制限する手段と、
前記ユーザインターフェース部品要素に対して前記制限を越えた選択が発生した際には、ユーザインターフェース指定情報に付加された優先度情報に基づいて割り当てる手段とを有し、
前記ユーザインターフェース決定手段は、前記ユーザインターフェース部品要素が、ユーザインターフェース指定情報によって直接または次善のユーザインターフェース部品として制限を超えて選択された場合には、前記ユーザインターフェースルールの階層構造を利用して、前記ユーザインターフェース部品要素以外のさらに次善のユーザインターフェースを特定することを特徴とする請求項1記載の情報処理装置。 - さらに、前記情報処理装置を操作するユーザに関する情報を取得するユーザ情報取得手段とを有し、
前記ユーザインターフェースルール変更手段は、ユーザ情報に応じてユーザインターフェースルールを変更することを特徴とする請求項1記載の情報処理装置。 - 前記ユーザに関する情報は、前記情報処理装置を操作するユーザの身体的な情報およびユーザの操作の平易さや習熟度を判別する為の操作情報の少なくともいずれか1つを含むことを特徴とする請求項7記載の情報処理装置。
- 抽象化して記述されたユーザインターフェースの指定情報を外部から取得する取得ステップと、
前記取得ステップにおいて取得された抽象化されたユーザインターフェースの指定情報より具体化して記述されたユーザインターフェースが分類されるユーザインターフェースルールに関する情報を記憶部から参照する参照ステップと、
前記ユーザインターフェースルールに関する情報を参照することにより、前記取得手段によって取得された抽象化されたユーザインターフェースの指定情報に属する具体化されたユーザインターフェース情報を決定する決定ステップと、
ユーザインターフェースルールを変更するユーザインターフェースルール変更ステップとを有することを特徴とする情報処理装置の処理方法。 - 請求項9に記載の処理方法を実行するプログラムを記録した記録媒体。
- 請求項1乃至8記載の処理をコンピュータによって実現させるための制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004293852A JP2006107181A (ja) | 2004-10-06 | 2004-10-06 | ユーザインターフェースを動的に変更可能な情報処理装置及びその方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004293852A JP2006107181A (ja) | 2004-10-06 | 2004-10-06 | ユーザインターフェースを動的に変更可能な情報処理装置及びその方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006107181A true JP2006107181A (ja) | 2006-04-20 |
Family
ID=36376841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004293852A Withdrawn JP2006107181A (ja) | 2004-10-06 | 2004-10-06 | ユーザインターフェースを動的に変更可能な情報処理装置及びその方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006107181A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009054146A (ja) * | 2007-07-27 | 2009-03-12 | Canon Inc | 情報処理方法、情報処理装置及びプログラム |
JP2010517124A (ja) * | 2007-04-11 | 2010-05-20 | 華為技術有限公司 | 端末における外観要素の決定方法、処理装置、及び端末 |
JP2016511861A (ja) * | 2013-01-11 | 2016-04-21 | テクニジョン インコーポレイテッド | コンテキスチュアルダッシュボードの選択を構成する方法およびシステム |
JP2017173996A (ja) * | 2016-03-22 | 2017-09-28 | コニカミノルタ株式会社 | 画像形成装置、デザイン変更方法、およびデザイン変更プログラム |
-
2004
- 2004-10-06 JP JP2004293852A patent/JP2006107181A/ja not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010517124A (ja) * | 2007-04-11 | 2010-05-20 | 華為技術有限公司 | 端末における外観要素の決定方法、処理装置、及び端末 |
JP2009054146A (ja) * | 2007-07-27 | 2009-03-12 | Canon Inc | 情報処理方法、情報処理装置及びプログラム |
JP2016511861A (ja) * | 2013-01-11 | 2016-04-21 | テクニジョン インコーポレイテッド | コンテキスチュアルダッシュボードの選択を構成する方法およびシステム |
US10579228B2 (en) | 2013-01-11 | 2020-03-03 | Synacor, Inc. | Method and system for configuring selection of contextual dashboards |
US10996828B2 (en) | 2013-01-11 | 2021-05-04 | Synacor, Inc. | Method and system for configuring selection of contextual dashboards |
JP2017173996A (ja) * | 2016-03-22 | 2017-09-28 | コニカミノルタ株式会社 | 画像形成装置、デザイン変更方法、およびデザイン変更プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10782984B2 (en) | Interactive event creation control console | |
KR100971164B1 (ko) | 이동 장치 애플리케이션 개인화에 콘텍스트 온톨로지를 활용하는 방법, 장치 및 컴퓨터 프로그램 생성물 | |
JP5249755B2 (ja) | セマンティックリッチオブジェクトによる動的なユーザエクスペリエンス | |
KR100992022B1 (ko) | 실행 시간에 이동 장치에 추상적 사용자 인터페이스의 동적매핑 시스템 및 방법 | |
CN106797547B (zh) | 操作系统对位置卡的支持 | |
CN109690481A (zh) | 动态功能行定制 | |
US9046981B2 (en) | Trip and travel tool | |
BRPI0514070A2 (pt) | método para navegar a informação no terminal móvel, método para prover e acessar as funções de menu no visor do dispositivo eletrÈnico, interface gráfica do usuário, produto de programa de computador, e, método para prover uma interface gráfica do usuário para o dispositivo terminal | |
US11093693B2 (en) | Hierarchical navigation control | |
JP2003505763A (ja) | 情報のユニットを見つけ出し、収集し、かつそれに基づいて行動するための方法およびデバイス | |
KR20060015705A (ko) | 사용자 인터페이스 자동화 프레임워크 클래스 및 인터페이스 | |
WO2023093414A1 (zh) | 微应用的开发方法、装置、设备、存储介质及程序产品 | |
JP2006164261A (ja) | 改良型ユーザインターフェイスを有するデータ処理装置及びシステム | |
JP2022520263A (ja) | ミニプログラムのデータバインディング方法、装置、デバイス及びコンピュータプログラム | |
JPH09500744A (ja) | プレース・オブジェクト・システム | |
JP2008140302A (ja) | Cad装置およびcadプログラム | |
JP2006107181A (ja) | ユーザインターフェースを動的に変更可能な情報処理装置及びその方法 | |
KR101414795B1 (ko) | 인스턴트 웹 앱 생성 장치 및 방법 | |
JP5049880B2 (ja) | 情報処理装置 | |
JP4937230B2 (ja) | 表示制御装置および表示制御プログラム | |
KR101918705B1 (ko) | 인지 부하를 줄이기 위한 화면 구성 방법 및 시스템 | |
KR102228241B1 (ko) | 웹 상에서의 가상 입력 방법 및 시스템 | |
JP2003196000A (ja) | メニュー選択方法、メニュー選択装置及びメニュー選択プログラムを記録した記録媒体 | |
JP2003256188A (ja) | アイコン管理方法、アイコン利用方法及びアイコン保存方法 | |
Krajeski | A flexible tool for the visualization and manipulation of musical mapping networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080108 |