JP4890944B2 - 情報処理装置、表示制御処理方法及びプログラム - Google Patents

情報処理装置、表示制御処理方法及びプログラム Download PDF

Info

Publication number
JP4890944B2
JP4890944B2 JP2006147364A JP2006147364A JP4890944B2 JP 4890944 B2 JP4890944 B2 JP 4890944B2 JP 2006147364 A JP2006147364 A JP 2006147364A JP 2006147364 A JP2006147364 A JP 2006147364A JP 4890944 B2 JP4890944 B2 JP 4890944B2
Authority
JP
Japan
Prior art keywords
user interface
screen
display
information
interface component
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.)
Expired - Fee Related
Application number
JP2006147364A
Other languages
English (en)
Other versions
JP2007012037A (ja
JP2007012037A5 (ja
Inventor
絵里子 尾崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2006147364A priority Critical patent/JP4890944B2/ja
Publication of JP2007012037A publication Critical patent/JP2007012037A/ja
Publication of JP2007012037A5 publication Critical patent/JP2007012037A5/ja
Application granted granted Critical
Publication of JP4890944B2 publication Critical patent/JP4890944B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は情報処理装置、表示制御処理方法及びそのプログラムに関し、特に、グラフィカルユーザインターフェース部品の表示制御に用いて好適な技術に関する。
従来、インターネット上のサーバに存在する様々な情報をパーソナルコンピュータ(以下PCと略す)などの情報処理装置において、プレゼンテーション言語として、HTML(Hyper Text Markup Language)言語が広く普及している。このHTML言語によれば、PCアーキテクチャの差異や、ブラウザアプリケーションによる差異を吸収することができる。
また、近年、通信インフラの整備が整うにつれて、インターネットに接続し、サーバの情報を携帯情報端末装置(以下PDAと略す)あるいは携帯電話において表示するという利用方法が広まりつつある。この利用方法を普及させるためには、サーバの情報を異なるサイズ,解像度,能力を有する端末のディスプレイ上にさせる必要がある。
特許文献1には、異なる表示画面の大きさを有する様々な情報機器に対応して、情報機器の表示画面に収まるように、ユーザが情報機器内に持つレイアウト規則やユーザ入力による処理規則を切り替えることが開示されている。
特許文献2には、UI(ユーザインターフェース)が、抽象化の程度に従って階層ツリー化された論理UIにより記述され、これらと対応する具象UIが定義される方法が開示されている。例えば、ある機器において、所望の論理UIの機能を実現できない場合には、階層ツリー化された論理UIと近い位置にある論理UIが探索される。そして、これと対応づけられた具体的なUI要素が代替要素として選択される処理が開示されている。
特開2001−134518号公報 特開2001−217850号公報
主にPCにおけるUI部品の表示を前提に設計されたHTML言語を用いた表示データに関して、ある程度大きなサイズ画面の表示装置では、ほぼUIの提供者の意図通りに対応するUI部品が表示される。これに対して、比較的小さい表示画面を有するPDAなどの携帯端末では、UI部品の一部が欠けて表示されてしまったり、または延々とスクロール表示制御が行われてしまったりすることがある。
例えば、ユーザの選択や入力に関するインターフェースとなる操作用のコントロールUI部品と、それの説明のために関連付けられたテキストデータで記述されたラベルからなるUI部品が携帯端末の表示画面に表示される場合を想定する。仮に、表示情報の欠落を防ぐため、小さな画面でコントロールUI部品の大きさを確保しようと表示処理するとラベルが小さく表示されてしまう。また、ラベルのテキストフォントサイズの大きさを確保する処理を行うと、コントロールUI部品が小さくなり、操作しづらくなってしまう。
本発明は前述の問題点に鑑み、画面サイズが小さいディスプレイに表示する際にも最適な代替の表示制御を実現できるようにすることを目的としている。
本発明は、前述の問題点を鑑み、表示装置の画面にユーザインターフェース部品を表示させるための情報処理装置において、前記表示装置の画面にユーザインターフェース部品を表示させるためのユーザインターフェースデータを外部より取得する取得手段と、前記表示装置の画面に関する情報に基づいて、前記取得したユーザインターフェースデータのユーザインターフェース部品指定情報に対応するユーザインターフェース部品を、前記ユーザインターフェースデータのレイアウト指定情報に対応する表示制御処理で前記表示装置の画面に表示するかどうかを判断する制御手段とを有し、前記制御手段は、前記ユーザインターフェース部品を前記表示装置の画面に表示しないと判断した場合、前記取得したユーザインターフェースデータの代替ユーザインターフェース指定情報を参照することにより、前記ユーザインターフェース部品の代替の表示制御処理で前記ユーザインターフェース部品指定情報に対応するユーザインターフェース部品を表示させ、さらに、前記表示装置の画面に関する情報に基づいて、前記ユーザインターフェース部品の代替の表示制御処理も前記表示装置の画面上の表示に適さないと判断した場合、前記ユーザインターフェース部品の階層化された表示制御ルールに関する情報を参照し、前記ユーザインターフェース部品の次善の表示制御処理を実行することを特徴とする情報処理装置等、を提供する。
本発明によれば、表示装置が様々なディスプレイに表示する際にも提供者が意図したUI部品を用いて最適な代替手段での表示制御を実現できる。
さらには、表示装置の画面が足りない場合などの表示方法を細かく設定しない場合でも表示情報が欠けてしまうことがないような表示制御を実現できる。
(第1の実施の形態)
以下、添付の図面に沿って本発明の実施の形態を説明する。
以下、図面を用いて本発明の第1の実施の形態を詳細に説明する。
図18は本実施の形態に係る情報処理装置のハードウェア構成を示すブロック図である。
図18に示す情報処理装置において、入力部1は、マウス、キーボードなどを有し、情報(データ)を入力するためのものである。制御手段であるCPU2は、情報処理装置内の各種処理のための演算、論理判断等を行い、バス6に接続された各構成要素を制御する。
表示装置3は、LCDまたはCRTなどである。プログラムメモリ4は、後述するフローチャートの処理手順をCPU2に実行させるためのプログラムを格納するメモリである。プログラムメモリ4は、ROMであってもよいし、外部記憶装置等からプログラムをロードするためのRAMであってもよい。
データメモリ5は、各種処理で生じたデータを格納する。データメモリ5は、例えば、RAMである。情報処理装置のCPU2は、不揮発性の外部記憶媒体から、各種処理に先立ってデータをデータメモリ5にロードしておく、あるいは必要があるごとにデータをデータメモリ5から参照する処理を実行する。また、データメモリ5は、表示装置3の画面サイズ,および画面の解像度などの表示装置に関する情報を保持する。
バス6は、CPU2の制御の対象とする各構成要素を指示するアドレス信号、各構成要素を制御するためのコントロール信号、各構成要素間で相互にやりとりされるデータの転送に用いられる。外部I/F7は、着脱可能な外部メモリなど、外部からUIデータを取得するためのデバイスである。
図1は、本実施の形態に係るUIデータの構造の一例を示すクラス図である。
図1において、UIデータ101は、本実施形態に係る情報処理装置がUI部品(ユーザインターフェース部品とも称す)を表示装置3の画面上に構成するためデータである。UIデータ101は、UI部品の表示の指定を記述する1つ以上のUI指定情報102から構成されている。UIデータ101は、本実施の形態では、XML言語を拡張したXForms言語で記述されている。そして、情報処理装置は、外部からUIデータ101を取得する。
UI指定情報102は、概念的には、UI部品の種類などの指定の記述を行うUI部品指定情報105と、各UI部品の配置についての記述を行うレイアウト指定情報106とからなる。レイアウト指定情報106は、UI指定代替情報を含む。各UI指定情報102は、1つのUI指定情報要素103を有する。なお、UI指定情報要素103はリスト構造からなる場合とそうでない場合とがある。
各UI指定情報要素103は、図13の説明において後述するが、階層化された抽象度の1段階を表しており、抽象度を表す1つのUI指定情報要素名104を有する。レイアウト指定情報106は、該レイアウトの対象となる1つ以上のUI指定情報102をその記述の内部に含む。
図2は、抽象度の違いで段階的に階層化されたUI部品に関するUI部品ルールの一例を示すクラス図である。本実施の形態では、このUI部品ルールに関するデータは、予め情報処理装置のプログラムメモリ4に格納されるものとする。
図2において、UI部品に関するUI部品ルール201は、1つ以上のUI部品ルール要素202から構成されている。
各UI部品ルール要素202は、非末端UI部品ルール要素203あるいは末端部品ルール要素204のいずれかである。非末端UI部品ルール要素203は、1つ以上のUI部品ルール要素202を有する。そして、末端UI部品ルール要素204は、1つの具体的UI部品205に関連付けられている。
UI部品ルール201は、このようなツリー構造を成す。末端のUI部品ルール要素202は必ず末端UI部品ルール要素204となる。また、UI部品ルール要素202は、それぞれ1つのUI指定情報要素名104と結び付けられている。UI部品ルール要素202は、UI部品ルール201のツリー構造の各段階が階層化された抽象度の1段階を表現している。
図3は、図2の具体例として、本実施の形態の情報処理装置におけるUI部品に関するUI部品ルールとして、複数種類のUI部品をツリー構造で示したものである。具体的には、UI部品であるツールキットのデータがライブラリとして階層的に整理され、情報処理装置のプログラムメモリ4に格納されている。図3においては、ツリー構造の末端のそれぞれに、ツールキットの具体的なUI部品が関連付けられている。
図3で示したように、UI部品301は、まず数値範囲302、選択303、唯一選択304、テキスト305など抽象化された部品の概念に分類される。これらは、非末端UI部品ルール要素203である。そして、UI部品301は、これらの分類より1つ下の階層において、より具体化して分類される。例えば、数値範囲302を実現する部品種類としてダイアル306やスライダー307にまとめられる。これらは、末端UI部品ルール要素204である。
本実施の形態では、テキスト305の具体的部品の1つであるラベル308に着目し、コントロールUI部品に関連付けられたラベルに関して説明する。また、コントロールUI部品としては、「入力ボックス」を一例として説明する。なお、本実施の形態において、コントロールUI部品とは、ユーザが選択操作あるいは入力操作を行うためのUI部品と定義する。また、「ラベル」とは、コントロールUI部品に関連付けられたテキストデータであるものとする。「ラベル」もUI部品の1つとする。
図4は、UI部品301の一例として、入力ボックスなど、ユーザが操作するためのコントロールUI部品に関連付けられたラベルの表示制御ルールをツリー構造で示した図である。ここで、「コントロールUI部品に関連付けられたラベル」401は、図3の「ラベル」308の1段下位層に配されることになる。
「コントロールUI部品に関連付けられたラベル」401の表示制御方法を一段階具体化した場合、「ラベル優先」402と「コントロールUI部品優先」403に分類される。本実施の形態における「優先」とは、画面サイズがUI部品の表示に不足しているためにUIのレイアウト変更を必要とする場合、ラベルとコントロールUI部品とで、どちらを変更させたくないかを意味するものである。例えば、「ラベル優先」402の場合、コントロールUI部品の表示を変更制御する。また、「コントロールUI部品優先」403の場合、ラベルの表示を変更制御する。
「ラベル優先」402を設定するケースとして、出力部としての表示装置3の画面に収まるようにする際、ラベルの表記が変わってしまうことをUIデータの提供者が好まない場合が考えられる。逆に、入力ボックス優先を設定するケースでは、ラベルが省略されたり削られたりしても構わない場合や、ラベルよりも入力ボックスの表示をなるべく忠実に再現したい場合であるが考えられる。
本実施の形態において、「ラベル優先」402の場合、コントロールUI部品の具体的な表示制御ルールとして、例えば「コントロールUI部品を小さくする」404、「コントロールUI部品を改行する」405の表示制御ルールが定義される。同様に、「コントロールUI部品優先」403の場合、ラベルの具体的な表示制御ルールとして、「ラベルをラップ表現する」406、「ラベルをスクロール表現する」407、「ラベルフォントを小さくする」408の表示制御ルールが定義される。
例えば、表示装置3の表示画面が比較的大きい場合は、図5に示すように、コントロールUI部品としての入力ボックス501と、ラベル502との組み合わせを意図したとおりに表示させることができる。
HTMLをホスト言語として拡張されたXForms言語として記述される図5に示すUI部品に対応するUIデータの記述は以下のとおりである。以下の記述において、「レイアウト指定情報」106には、下記の「UI指定代替情報」、「ラベルの指定」、および「コントロールUI部品の指定」のxy座標情報が相当する。また、「UI部品指定情報」105には、以下の「UI指定情報」における「label_box」,「フォントの指定」,「ラベルの指定」における「label」,「box」の記述が相当する。なお、下記の「UI指定代替情報」に関しては、後述する。
<!-- UI指定情報 -->
<type = "/text/label_box"/>
<!-- UI指定代替情報 -->
<sub_type = "/text/label_box/label_priority/control_resize"/>
<!-- フォントの指定 -->
<text font-family=XXX font-size=14 />
<!-- ラベルの指定 -->
<label x=10 y=10>Label1</lable>
<!-- コントロールUI部品の指定 -->
<box x=100 y=10 />
図5に示すUI部品を小さな画面に表示する際、UI指定代替情報が参照される。例えば、UIデータの提供者がラベルの表示を優先させたい場合には、上述のUI指定代替情報が記述される。このような記述によって、UI部品301を小さな画面に表示する際には、上述のUI指定代替情報を参照することによって図6のようにラベルの表示が維持され、入力ボックスを小さくする表示制御処理が実行される。
また、図7のように入力ボックスを改行して表示制御処理する方法をUIデータの提供者が指定したい場合は、UI指定代替情報の記述は以下のとおりとなる。
<sub_type = "/text/label_box/label_priority/control_break">
また、ラベルを省略されたくないというUIの提供者の意図がある場合などにおいても、上述の形式でUI指定代替情報を記述することにより、UIの提供者の意図を反映させることができる。
「ラベル優先」402において、UI部品指定情報105に入力ボックスを小さくする記述がなされていたとしても、表示画面によっては入力ボックスを小さく表示できない場合もある。例えば、入力ボックスが、テキストデータがその入力ボックスに入力され、該入力されたテキストデータが画面上で認識されることができる最小のサイズの場合である。このようなケースの場合、情報処理装置は、入力ボックスを小さくする表示制御方法は適さないと判断し、さらに次善の代替表示制御方法を設定するようにする。
一方、UIデータの提供者がコントロールUI部品の表示を優先させたい場合には、UI指定代替情報が以下のとおり記述され、ラベルの表示制御処理が選択的に実行される。
図9:ラップ表現(ラベルを一定の幅で折り返す)(406)
<sub_type = "/text/label_box/control_priority/label_wrap">
図10:ラベルをスクロールで表現する(407)
<sub_type = "/text/label_box/control_priority/label_scroll">
図8:ラベルのフォントサイズを小さくする(408)
<sub_type = "/text/label_box/control_priority/label_resize">
例えば、UIデータの提供者が、ラベルのテキストデータのフォントサイズを小さくしても、読みやすい高精細な画面を有する情報処理装置に優先的に適合させたいケースがある。この場合、図8に示す表示制御処理方法に対応するUI指定代替情報がUIデータ中に記述される。
また、縦長の画面や細かい行間で表示できる画面を有する情報処理装置に優先的に適合させたい場合、図9のラップ表現の表示制御処理を採用するUI指定代替情報がUIデータ中に記述される。
さらに、「コントロールUI部品優先」403のケースにおいても「ラベル優先」402と同様の次善の代替表示制御を実行することができる。例えば、情報処理装置の表示画面が小さい場合、フォントサイズを小さくするようにUI指定代替情報に記述されていたとしても、表示装置3の画面の解像度が低いためにフォントサイズの縮小が制限されている場合がある。このような場合、次善の代替表示制御処理として、情報処理装置のCPU2は、図4に示す表示制御ルールを参照し、スクロール表現でラベルを表示制御する処理などを実行する。
また、図11のようにラベルを入力ボックスに重ねて表示制御する方法も考えられる。あるいはラベルを任意文字数に省略する、さらにはアニメーション機能があればラベルの文字列を少しずつ流して表示するなどの方法が設定できるようにしてもよい。そして、重ね表示機能や、アニメーション機能を持たない画面に表示する際には、指定された代替方法のさらに次善の表示方法が選択されることになる。
図12は、UI部品が表示装置3の画面内に表示できない場合の代替表示制御を示す情報処理装置の動作処理フローチャートである。
まず、ステップS1201において、CPU2は、対象のUIデータを解析する。具体的には、CPU2は、UI部品指定情報105に対応するUI部品をライブラリから選択する。そして、CPU2は、選択されたUI部品のレイアウト指定情報(テキストデータのフォントサイズと表示位置情報、およびコントロールUI部品のサイズと表示位置情報)106に基づいて、各UI部品の表示に必要な領域を計算する。
次に、ステップS1202において、CPU2は、データメモリ5から表示装置3に関する情報を参照し、選択されたUI部品301を表示するかどうかを判断する。具体的には、データメモリ5に予め格納された表示装置3の画面サイズを参照し、S1201において計算されたUI部品301を表示する領域が表示装置3の画面内に収まるかどうかを判断する。また、CPU2は、データメモリ5に予め格納された表示装置3の解像度を参照する。そして、CPU2は、レイアウト指定情報106に記述されたテキストデータのフォントサイズが参照した解像度では認識困難な所定サイズ以下であるかどうかを判断する。
ステップS1202において、各UI部品301が表示サイズの画面に収まると判断された場合には、ステップS1206に処理が進む。そして、CPU2は、表示装置3の画面にUI部品301を表示させて処理を終了する。ステップS1202において、UI部品301の一部が表示装置3の画面に収まらないと判断された場合には、ステップS1203に処理が進む。そして、CPU2は、UI部品指定情報105に基づいて、ライブラリから具体的UI部品205を抽出するとともに代替の表示制御処理を指定する。なお、UIデータ101にUI指定代替情報の記述が存在しない場合は、情報処理装置が実行可能な表示制御処理が行われる。
ステップ1204において、CPU2は、ステップ1203で指定されたUI部品301およびその表示制御処理を解析する。次に、ステップS1205において、CPU2は、解析されたUI部品301およびその表示制御処理が表示装置3の画面表示に適するかどうかを判断する。ステップS1205では、画面に予め設定された最小フォントサイズよりテキストデータのフォントサイズが小さくなっていないかどうかがCPU2によって判断される。あるいは、指定された代替の表示制御処理により各UI部品301が表示装置3の画面内に収まっているかどうかなどがCPU2によって判断される。この判断は、ステップS1202における判断と同様である。
ステップS1205におけるCPU2の判断がOKとなれば、ステップS1206に進み、CPU2は、UI部品の表示制御処理を完了する。ステップS1205で判断結果がNGとなれば、ステップS1203に戻り、CPU2は、図4に示す表示制御処理ルールを参照し、再び次善の表示制御処理を設定する。
具体的には、まず、CPU2は、UI指定代替情報の記述に対応する表示制御処理を試みる。この場合においても判断結果がNGとなった場合、図4に示す表示制御ルールのうち、その上位の要素から派生した表示制御ルールの表示制御処理を試みる。さらに、その表示制御ルールに基づく表示制御処理がNGとなった場合、その上位の要素から派生した表示制御ルールであって、その既に処理を試みた表示制御ルール以外のものを選択し、表示制御処理を試みる。
図4において、例えば、UI指定代替情報として、表示制御ルールの「ラベルフォントを小さくする」408が記述された場合、まず、CPU2は、表示制御ルールとして「ラベルフォントを小さくする」408の記述に対応する表示制御処理を試みる。この場合の表示制御処理が不適切であると判断された場合、上位要素の「コントロールUI部品優先」403から派生した表示制御ルールの「ラベルをラップ表現する」406、「ラベルをスクロール表現する」407のいずれかに対応する表示制御処理を試みる。これらの処理も不適切であると判断された場合、CPU2は、そのさらに上位要素の「コントロールUI部品に関連付けられたラベル」401から派生した表示制御ルールの「コントロールUI部品を小さくする」404、「コントロールUI部品を改行する」405のいずれかの処理を実行することになる。
なお、次善の表示制御処理が設定されていない場合は、ステップS1206において、CPU2は、現状設定されているその表示制御処理を実行することになる。CPU2は、ステップS1203〜S1205の処理を、UI部品指定情報105に対応するUI部品に対する代替の表示制御処理がステップS1205においてOKと判断されるまで繰り返す。
なお、ステップS1205において、図4に示す全ての表示制御処理が表示装置3の画面に対応していないと判断された場合、次善のUI部品を表示する表示制御処理を実行して、表示画面内に収まるか否か判断してもよい。図3では、ラベルの次善のUI部品として「ヒント」を用いた代替の表示制御処理を実行することになる。
図13は、XMLの記述に基づき、HTMLをホスト言語として拡張されたXForms言語として記述されるUIデータの記述のうち、代替表示制御処理に関する記述を有するラベルのUI部品指定情報105の一例である。
図13のUI部品指定情報105の記述において、要素1301は、テキストの部品が指定されることを示す。また、要素1302は、テキストがラベルであることを示す。さらに、要素1303はラベルより、ラベルに対応するコントロールUI部品の表示が優先であることを示す。要素1304は、UI部品が表示装置3の画面内に収まらなかった場合の代替表示方法が前述のラベルのラップ表現であることを示している。
図14は、図12のステップS1203において実行される、UI部品指定情報105から表現方法の指定を持つ具体的UI部品を得る情報処理装置の処理の一例を示すアクティビティ図である。
図14において、まず、CPU2は、UI指定情報102の最初のUI指定情報要素103を抽出する(ステップS1401)。そして、CPU2は、該UI指定情報要素103に対応するUI部品ルール201を現在のUI部品ルール要素202とする(ステップS1402)。
次に、CPU2は、該UI指定情報102中に次のUI指定情報要素103があるか否かを判断する(ステップS1403)。次のUI指定情報要素103が存在する場合、CPU2は、次のUI指定情報要素103をUI指定情報102から得る(ステップS1404)。そして、CPU2は、該UI指定情報要素103に対応するUI部品ルール要素202が存在するか否かを判断する(ステップS1405)。ステップS1403において、CPU2は、該UI指定情報102中に次のUI指定情報要素103が存在しないと判断された場合、ステップS1406に進む。
ステップS1405の判断の結果、CPU2は、該UI指定情報要素103に対応するUI部品ルール要素202が存在する場合には、ステップS1402の処理に戻る。一方、対応する該UI部品ルール要素202が存在しない場合には、ステップS1406に進む。
ステップS1406において、CPU2は、現在のUI部品ルール要素202が末端UI部品ルール要素204であるか否かを判断する。末端UI部品ルール要素204であれば、CPU2は、該要素に結び付けられている具体的UI部品205をライブラリから得て(ステップS1407)、処理を終了する。
ステップS1406の判断の結果、CPU2は、現在のUI部品ルール要素202が末端UI部品ルール要素204でなければ、現在のUI部品ルール要素202が持つ最初の子供要素を現在のUI部品ルール要素202とする(ステップS1408)。そして、ステップS1406の判断処理に戻る。
ここで、図14の処理を、図13に示すUI部品指定情報105を例として具体的に説明する。図14のステップS1401では、図13のUI部品指定情報105から、最初のUI指定情報要素103である要素1301の"text"を抽出する。ステップS1402でtext(テキスト)に対応する図3のUI部品ルール「テキスト」305の存在を認識する。
ステップS1403において、CPU2は、UI部品指定情報105から、ステップS1404で、UI指定情報要素103である要素1302の"label"1302を抽出する。ステップS1405(ステップS1402)において、CPU2は、図3のUI部品ルール201の「ラベル(label)」308の存在を認識する。さらに、ステップS1403において、CPU2は、UI部品指定情報105の記述に続きがあることを認識し、ステップS1404において、UI指定情報要素103である要素1303の"control_priority"を抽出する。
ステップS1405(ステップS1402)において、CPU2は、UI部品ルール201に「コントロ−ル優先(control_priority)」403が存在することを認識する。さらに、ステップS1404において、CPU2は、図13のUI部品指定情報105から要素1304の"wrap"を得る。同様に、ステップS1405(ステップS1402)において、CPU2は、UI部品ルール201に「ラベルをラップ表現」406が存在することを認識する。
ステップS1403でUI部品指定情報105に続きは無いので、ステップS1406に進む。「wrap」406は、末端UI部品ルール要素204なので、ステップS1407にて、CPU2は、「wrap」に対応する具体的UI部品205を得る。
このようにして図13の具体的UI部品205を持つ末端UI部品ルール要素204まで指定した、UI部品指定情報105により、wrap表示という設定を持ったツールキットの具体的な部品がライブラリより選択される。
図15は、XMLの記述に基づき、HTMLをホスト言語として拡張されるXForms言語として記述されるUIデータにおいて、代替表示方法を持つラベルのUI部品指定情報105を記述した他の例である。図15において、要素1501は、テキストのUI部品301が指定されていることを示す。要素1502はUI部品301がラベルであることが記述されている。さらに、要素1503は、ラベル対応するコントロールUI部品の表示に対してラベルの表示が優先であることを示している。しかし、図15の記述において、要素1503は、末端UI部品ルール要素204ではない。
このような図15のUI部品指定情報105に基づいて部品を選択する際の図14に示すCPU2の処理を説明する。
図14のステップS1401において、CPU2は、図15のUI部品指定情報105から、最初のUI指定情報要素103である要素1501の"text"を抽出する。ステップS1402において、CPU2は、"text(テキスト)"に対応するUI部品ルール(図3の「テキスト」305」)201が存在することを認識する。
ステップS1403において、CPU2は、UI部品指定情報105の記述に続きがあることを確認し、ステップS1404に進み、UI部品指定情報105の要素1502の"label_box"を抽出する。ステップS1405(ステップS1402)において、CPU2は、要素1502の"label_box"に対応するUI部品ルール201の存在を認識する。
ステップS1403において、CPU2は、UI部品指定情報105の記述に続きがあることを認識し、ステップS1404において要素1503の"label_priority"を抽出する。そして、CPU2は、要素1503の"label_priority"に対応するUI部品ルールの「ラベル優先」402の存在を認識する。
ここで、ステップS1403において、CPU2は、UI部品指定情報105の記述に続きが無いことを認識し、処理はステップS1406に進む。ステップS1406において、「ラベル優先」402は、末端のUI部品ルール201ではないので、処理はステップS1408へ進む。
ステップS1408では、「ラベル優先」402の子要素のうち、任意の子要素を選択する。例えば、子要素のうち、子要素の「コントロールUI部品を小さくする」404の表示設定を得る。ステップS1406にもどり、子要素の「コントロールUI部品を小さくする」404は、末端UI部品ルール要素204であるため、ステップS1407において、具体的UI部品205である入力ボックスを小さくした表示のラベル付き入力ボックスを得る。その後、図12のステップ1205の処理において、入力ボックスのサイズが入力されるテキストのフォントサイズよりも小さくなる場合が想定される。このように表示装置3の画面表示が不適切な場合、CPU2は、代替の表示制御として、もう一つの「ラベル優先」402の子要素の「コントロールUI部品を改行する」405を選択する。
このようにして図15の具体的UI部品205を持つ末端UI部品ルール要素204まで指定しないUI部品指定情報105であっても、コントロールを小さく表示するという、UI部品301の提供者の意図した表示が可能となる。
以上説明したように、本実施形態によれば、UI部品ルール201に基づいてUI部品の表示制御を実行するにあたって、表示画面がUI表示に足りない場合の代替表示制御処理が設定できる。さらには、UIルール101が細かく設定されていなくても適した代替の表示制御処理でUI表示が決定される。
(第2の実施の形態)
本実施の形態では、アプリケーションの機能を提供するサーバと、ネットワークを介して接続された、該機能を利用するクライアントで構成されるサーバ・クライアントシステムについて説明する。
図16は、本実施の形態におけるサーバ・クライアントシステムの、一例を示した図である。
図16において、サーバ1601はアプリケーションの機能を提供する情報処理装置である。また、クライアント端末1602は、該機能を利用する情報処理装置である。サーバ1601とクライアント端末1602とは、ネットワークを介して接続されている。
クライアント端末1602は、サーバ1601において生成されたUIデータ1603を受信する。クライアント端末1602は、第1の実施形態において示した表示制御処理により、該機能を利用するためのUI部品を表示する。該UI部品を介して検出されたユーザの操作による画面内処理結果は、サーバ1601に送信され、指示に対応する機能が実行される。
図17は、本実施の形態におけるサーバ・クライアントシステムの、クラス図の一例である。
図17において、サーバ1601は、アプリケーションの機能を提供するためのアプリロジックを備えている。一方、クライアント端末1602は、該機能を利用するために、サーバ1601から受信したUIデータ1603を解釈し、UI部品の表示制御処理を実行するために必要な、UI部品ルールを有している。UI部品ルールによってUI部品の種類の選択、およびUI部品の表示制御処理が実行される。ここで、該UI部品を介して検出されたユーザの操作による画面内処理結果1604は、サーバ1601に送信される。サーバ1601は、画面内処理結果1604に応じた処理が実行される。
UIデータ1603を受信したクライアント端末1602は、該UI部品ルールを用いて、解釈した結果をUI部品として表示制御処理する。また、クライアント端末1602は、操作者により該UI部品を介して行われたユーザ操作の結果を、例えばイベントを発行することによりサーバ1601に通知する。ユーザ操作の結果を受信したサーバは、その値をアプリケーション制御に用いる。必要であれば、その結果を再度、クライアント端末1602に送信する。
以上説明したように、本実施の形態によれば、あらゆる種類のクライアント端末に対して同じUIデータを配信するだけで、サーバはアプリケーションの機能を提供できるようになる。また、クライアント端末に該UIデータに対応するUIが無い場合であっても、次善のUIで構成することができる。
(本発明に係る他の実施形態)
前述した本発明の実施の形態における情報処理装置を構成する各手段、並びに表示制御処理方法の各ステップは、コンピュータのRAMやROMなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施の形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
なお、本発明は、前述した実施の形態の機能を実現するソフトウェアのプログラム(実施の形態では図12、14に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接、あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスクなどがある。さらに、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM、DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する方法がある。そして、前記ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記録媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施の形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施の形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施の形態の機能が実現される。
第1の実施の形態に係るUIデータの構造の一例を示すクラス図である。 第1の実施の形態に係る抽象度の違いで段階的に階層化されたUIルールのUI部品に関するUIルールの構造の一例を示すクラス図である。 第1の実施の形態に実装されているUI部品に基づくUI部品ルールの一部をツリー構造で示す図である。 第1の実施の形態に実装されているラベルに関するUI部品例をツリー構造で示す図である。 第1の実施の形態に係るUIコントロールとUIラベルの一例を示す図である。 第1の実施の形態に係るラベル優先時のUI表示の一例を示す図である。 第1の実施の形態に係るラベル優先時のUI表示の一例を示す図である。 第1の実施の形態に係るコントロール優先時のUI表示の一例を示す図である。 第1の実施の形態に係るコントロール優先時のUI表示の一例を示す図である。 第1の実施の形態に係るコントロール優先時のUI表示の一例を示す図である。 第1の実施の形態に係るコントロール優先時のUI表示の一例を示す図である。 第1の実施の形態に係る代替表示方法設定動作の一例を示すフローチャートである。 第1の実施の形態に係るUI部品指定情報の記述例を示す図である。 第1の実施の形態に係る具体的UI部品を得る処理のアクティビティの一例を示すフローチャートである。 第1の実施の形態に係るUI部品指定情報の記述例を示す図である。 第2の実施の形態に係るサーバ・クライアントシステムの一例を示す図である。 第2の実施の形態に係るサーバ・クライアントシステムの一例を示すクラス図である。 第1の実施の形態に係るハードウェア構成の一例を示すブロック図である。
符号の説明
1 入力部
2 CPU
3 表示装置
4 プログラムメモリ
5 データメモリ
6 バス
7 外部I/F

Claims (6)

  1. 表示装置の画面にユーザインターフェース部品を表示させるための情報処理装置において、
    前記表示装置の画面にユーザインターフェース部品を表示させるためのユーザインターフェースデータを外部より取得する取得手段と、
    前記表示装置の画面に関する情報に基づいて、前記取得したユーザインターフェースデータのユーザインターフェース部品指定情報に対応するユーザインターフェース部品を、前記ユーザインターフェースデータのレイアウト指定情報に対応する表示制御処理で前記表示装置の画面に表示するかどうかを判断する制御手段とを有し、
    前記制御手段は、前記ユーザインターフェース部品を前記表示装置の画面に表示しないと判断した場合、前記取得したユーザインターフェースデータの代替ユーザインターフェース指定情報を参照することにより、前記ユーザインターフェース部品の代替の表示制御処理で前記ユーザインターフェース部品指定情報に対応するユーザインターフェース部品を表示させ、さらに、前記表示装置の画面に関する情報に基づいて、前記ユーザインターフェース部品の代替の表示制御処理も前記表示装置の画面上の表示に適さないと判断した場合、前記ユーザインターフェース部品の階層化された表示制御ルールに関する情報を参照し、前記ユーザインターフェース部品の次善の表示制御処理を実行することを特徴とする情報処理装置。
  2. 前記表示装置の画面に関する情報は、前記画面のサイズおよび解像度のうち少なくとも1つであることを特徴とする請求項1に記載の情報処理装置。
  3. 表示装置の画面にユーザインターフェース部品を表示させるための情報処理装置の表示制御処理方法において、
    前記表示装置の画面にユーザインターフェース部品を表示させるためのユーザインターフェースデータを外部より制御手段が取得する取得ステップと、
    前記表示装置の画面に関する情報に基づいて、前記取得されたユーザインターフェースデータのユーザインターフェース部品指定情報に対応するユーザインターフェース部品を、前記ユーザインターフェースデータのレイアウト指定情報に対応する表示制御処理で前記表示装置の画面に表示するかどうかを制御手段が判断する判断ステップと、
    前記判断ステップにおいて、前記ユーザインターフェース部品を前記表示装置の画面に表示しないと前記制御手段が判断した場合、前記取得したユーザインターフェースデータの代替ユーザインターフェース指定情報を参照することにより、前記ユーザインターフェース部品の代替の表示制御処理で前記ユーザインターフェース部品指定情報に対応するユーザインターフェース部品を前記制御手段が前記表示装置の画面に表示させる表示制御処理ステップと、を有し、
    前記表示制御処理ステップにおいては、さらに、前記制御手段が前記表示装置の画面に関する情報に基づいて、前記ユーザインターフェース部品の代替の表示制御処理も前記表示装置の画面上の表示に適さないと判断した場合、前記ユーザインターフェース部品の階層化された表示制御ルールに関する情報を参照し、前記ユーザインターフェース部品の次善の表示制御処理を実行することを特徴とする表示制御処理方法。
  4. 前記表示装置の画面に関する情報は、前記画面のサイズおよび解像度のうち少なくとも1つであることを特徴とする請求項に記載の表示制御処理方法。
  5. ユーザインターフェース部品の表示を制御する情報処理装置を制御するためのプログラムにおいて、
    表示装置の画面にユーザインターフェース部品を表示させるためのユーザインターフェースデータを外部より制御手段が取得する取得ステップと、
    前記表示装置の画面に関する情報に基づいて、前記取得されたユーザインターフェースデータのユーザインターフェース部品指定情報に対応するユーザインターフェース部品を、前記ユーザインターフェースデータのレイアウト指定情報に対応する表示制御処理で前記表示装置の画面に表示するかどうかを制御手段が判断する判断ステップと、
    前記判断ステップにおいて、前記ユーザインターフェース部品を前記表示装置の画面に表示しないと前記制御手段が判断した場合、前記取得したユーザインターフェースデータの代替ユーザインターフェース指定情報を参照することにより、前記ユーザインターフェース部品の代替の表示制御処理で前記ユーザインターフェース部品指定情報に対応するユーザインターフェース部品を前記制御手段が前記表示装置の画面に表示させる表示制御処理ステップとをコンピュータに実行させ、
    前記表示制御処理ステップにおいては、さらに、前記制御手段が前記表示装置の画面に関する情報に基づいて、前記ユーザインターフェース部品の代替の表示制御処理も前記表示装置の画面上の表示に適さないと判断した場合、前記ユーザインターフェース部品の階層化された表示制御ルールに関する情報を参照し、前記ユーザインターフェース部品の次善の表示制御処理を実行することを特徴とするプログラム。
  6. 前記表示装置の画面に関する情報は、前記画面のサイズおよび解像度のうち少なくとも1つであることを特徴とする請求項に記載のプログラム。
JP2006147364A 2005-05-30 2006-05-26 情報処理装置、表示制御処理方法及びプログラム Expired - Fee Related JP4890944B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006147364A JP4890944B2 (ja) 2005-05-30 2006-05-26 情報処理装置、表示制御処理方法及びプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005157968 2005-05-30
JP2005157968 2005-05-30
JP2006147364A JP4890944B2 (ja) 2005-05-30 2006-05-26 情報処理装置、表示制御処理方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2007012037A JP2007012037A (ja) 2007-01-18
JP2007012037A5 JP2007012037A5 (ja) 2009-07-09
JP4890944B2 true JP4890944B2 (ja) 2012-03-07

Family

ID=37750374

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006147364A Expired - Fee Related JP4890944B2 (ja) 2005-05-30 2006-05-26 情報処理装置、表示制御処理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP4890944B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100114945A (ko) * 2008-04-02 2010-10-26 교세라 가부시키가이샤 유저인터페이스생성장치
JP5919897B2 (ja) * 2012-03-07 2016-05-18 株式会社リコー 表示制御装置、表示制御方法およびプログラム
JP5658196B2 (ja) * 2012-05-08 2015-01-21 株式会社野村総合研究所 マルチデバイス対応WebサーバシステムおよびWebサーバシステムにおけるマルチデバイス対応方法
JP2014222299A (ja) * 2013-05-14 2014-11-27 セイコーエプソン株式会社 画像処理装置、プログラム、情報記憶媒体および画像処理装置の製造方法
JP6171670B2 (ja) * 2013-07-24 2017-08-02 コニカミノルタ株式会社 操作画面表示装置及び表示制御プログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2947704B2 (ja) * 1994-03-04 1999-09-13 株式会社ピーエフユー 表示画面の作成方法および表示画面作成装置
JP2002328801A (ja) * 2001-05-01 2002-11-15 Matsushita Electric Ind Co Ltd 表示処理装置
US7934162B2 (en) * 2001-09-28 2011-04-26 Ntt Docomo, Inc. Running state migration of platform specific graphical user interface widgets between heterogeneous device platforms

Also Published As

Publication number Publication date
JP2007012037A (ja) 2007-01-18

Similar Documents

Publication Publication Date Title
JP4144883B2 (ja) 情報処理装置及びその制御方法、プログラム
US7707494B2 (en) Information processing apparatus, control method therefor, and program
JP5575511B2 (ja) ウェブサイト閲覧システム、サーバ及びクライアント端末
KR100934422B1 (ko) 인쇄 제어 장치, gui 표시 방법, 프린터 드라이버 및기록 매체
US8910064B2 (en) GUI program creation supporting apparatus, GUI program creation support method, computer-readable recording medium and integrated circuit
US20020124115A1 (en) Filter based authoring tool
JP4912139B2 (ja) 情報処理装置
JP4956202B2 (ja) 情報処理装置及び情報処理方法及びプログラム
US20060168514A1 (en) Information processing apparatus, control method therefor, and program
CN101295248A (zh) 在主动滚动的视图窗格中提供功能性上下文的方法和系统
WO2009141966A1 (en) Print control method and print control apparatus for controlling printing of structured document
JP2008158765A (ja) 情報処理装置、情報処理方法、及び、当該情報処理方法をコンピュータに実行させるためのプログラム
JP5154533B2 (ja) プログラム生成装置およびプログラム
JP4890944B2 (ja) 情報処理装置、表示制御処理方法及びプログラム
US7627832B2 (en) Dynamically placing resources within a graphical user interface
JP2009048485A (ja) 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録する記録媒体
JP2020123234A (ja) 情報処理装置、制御方法、およびそのプログラム
US20070038954A1 (en) Displaying apparatus of ui parts and displaying method of ui parts
JP5217989B2 (ja) ビジュアルプログラミング支援装置、ビジュアルプログラミング支援装置のビジュアルプログラミング支援方法、プログラム、および記憶媒体
JP5991365B2 (ja) 帳票システム、情報処理装置と、その処理方法及びプログラム
JP4944434B2 (ja) レイアウト方法及びプログラム
JP4956259B2 (ja) 情報処理装置及びその制御方法、コンピュータプログラム
JP7421137B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP4718530B2 (ja) 画面作成装置及び画面作成プログラム
JP2006003999A (ja) 情報処理方法及び装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090525

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090525

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110706

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111213

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111215

R151 Written notification of patent or utility model registration

Ref document number: 4890944

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141222

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees