説明

情報処理方法、情報処理装置、カーソル移動制御方法およびプログラム

【課題】熟練度を不要として、使い勝手がよいユーザインターフェースを提供できる情報処理装置を提供する。
【解決手段】決定と見なされる操作がなされたときに割り付けられた動作が実行されるようにされる1または複数の操作領域に応じた操作領域画像が、設定されたカーソル移動可能領域と重なる状態で、表示画面に表示される。検出手段は、カーソルがカーソル移動可能領域内にあるときに、操作入力手段からの移動操作入力に基づいたカーソルの表示画面上における移動予定位置を検出する。制限手段は、検出手段により検出されたカーソルの移動予定位置が、カーソルの移動可能領域を超えるときであっても、カーソルは移動可能範囲内に位置するように制限する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、例えば、ディスプレイの表示画面に表示されるグラフィカル・ユーザ・インターフェースなどにおいて、使用者の操作入力に応じて情報処理を行なう情報処理方法、情報処理装置およびカーソル移動制御方法に関する。なお、この明細書で、表示画面上に設定される操作空間で、ある特定の場所(位置)を指し示す指標(位置指示指標)を、カーソルと呼ぶ。
【背景技術】
【0002】
表示画面上に設定される操作空間において、使用者が、カーソルを移動させて所定の動作の選択操作を行う操作入力手段としては、テレビ受信機におけるリモートコントローラや、パーソナルコンピュータにおけるポインティングデバイスが知られている。
【0003】
パーソナルコンピュータで使用されるポインティングデバイスには、マウス、トラックボール、タッチパッド等が使用される。しかし、そのどれについても、カーソルの移動の自由度は高いが、選択したい対象までの“移動”という動作に対して、対象までの正確な移動が要求され、そのため、早く、正確にカーソルを移動するには、使用者のある程度の慣れが必要になる。
【0004】
また、ポインティングデバイスを用いて“決定”という動作を行う場合には、クリック、ダブルクリックなどの操作を行うのが普通である。しかし、クリック時にカーソルが移動してしまい、目的の対象が正確に選択されないといったケースもある。また、障害を持つ人など、ダブルクリックなどの細かな操作が困難な人もいる。
【0005】
さらに、大概のポインティングデバイスやリモートコントローラでは、カーソルの“移動”動作に使用する部位と、“決定”動作に使用する部位が異なる。そのため、操作する部位や指を変える必要があり、時には操作する手元に目を移さなければいけないという煩わしさがある。
【0006】
従来、このような問題に対処する技術も幾つか提案されている。例えば、カーソルの移動に関するものとしては、グラフィカル・ユーザ・インターフェースにおいてカーソルを早くかつ正確に移動させるための技術として、特許文献1(特許第3808209号公報)がある。この特許文献1では、カーソルが目的の領域上にくると、一時的にポインティングデバイスの制御を無効にする手段や、特定の領域からの距離によってカーソルの加速度を可変にする手段が提案されている。
【0007】
また、決定動作に関する問題に対処したものとしては、例えば特許文献2(特開2007−148949号公報)には、選択したい対象の上でしばらく待つと自動で決定動作が行われる技術が提案されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特許第3808209号公報
【特許文献2】特開2007−148949号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかし、特許文献1に開示されている技術の場合、カーソルの移動範囲については制限がないので、もし間違って所望しない領域にカーソルを移動してしまうと、操作が一定期間無効にされること自体が次の操作を早く行うことの妨げになるという問題がある。また、特定領域からの距離だけでなく、配置される特定領域の位置によってもカーソルの加速度が様々に変化するのでは、結局、使用者にとって熟練を要するシステムになってしまうという問題もある。
【0010】
また、特許文献2に開示されている技術の場合には、素早く操作したい場合に、その待ち時間が面倒に感じられるし、いくら操作に熟練しても、その熟練度を待ち時間短縮に反映することが難しく、使いづらいという問題がある。
【0011】
この発明は、以上のような問題を一掃できるようにするグラフィカル・ユーザ・インターフェースを提供できる情報処理方法および情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【0012】
上記の課題を解決するために、請求項1の発明は、
決定と見なされる操作がなされたときに割り付けられた動作が実行されるようにされる1または複数の操作領域に応じた操作領域画像が、設定されたカーソル移動可能領域と重なる状態で、表示画面に表示される画像表示ステップと、
前記カーソルが前記カーソル移動可能領域内にあるときに、ポインティングデバイスからの移動操作入力に基づいた前記カーソルの前記表示画面上における移動予定位置を検出する検出ステップと、
前記検出ステップで検出された前記カーソルの移動予定位置が、前記カーソルの移動可能領域を超えるときであっても、前記カーソルは前記移動可能範囲内に位置するように制限する制限ステップと、
を備える情報処理方法を提供する。
【0013】
上述の構成の請求項1の発明によれば、カーソルの移動範囲は、設定されたカーソル移動可能範囲内に限られる。したがって、不慣れな使用者であっても、当該カーソル移動可能範囲と重なる状態の操作領域に対して、カーソル移動および決定操作を行うことが容易である。
【0014】
また、請求項2の発明は、請求項1に記載の情報処理方法において、
前記画像表示ステップで前記操作領域画像が前記表示画面上に設定されるときには、前記カーソルの初期位置は、前記移動可能範囲内とされる
情報処理方法を提供する。
【0015】
この請求項2の発明によれば、カーソルは、最初からカーソル移動可能範囲内に存在するようにされている。したがって、カーソルの移動をカーソル移動可能範囲に制限する場合に、カーソルが当該カーソル移動可能範囲にあるか否かを判定する必要はなく、カーソルの移動制限制御を簡単にできる。しかも、使用者も、移動可能範囲の外部からカーソルを移動可能範囲内にする必要はなく、使用者が不慣れな場合であっても、カーソル操作にまごつくことがない。
【0016】
また、請求項3の発明は、請求項1または請求項2に記載の情報処理方法において、
前記カーソルの移動可能領域であって、前記操作領域内の特定位置または特定領域が決定位置または決定領域として設定され、前記決定位置または前記決定領域内に前記カーソルが位置したときに、前記操作領域で決定と見なされる操作がなされたと判定する決定判定ステップを備える
情報処理方法を提供する。
【0017】
この請求項3の発明においては、使用者が、カーソルを操作領域内の決定位置または決定領域に移動させると、自動的に、その移動操作結果が決定操作と見なされ、操作領域に割り付けられている動作が実行される。
【0018】
したがって、使用者は、クリックなどの操作を行わなくても操作領域についての決定の意思表示をすることができ、クリック操作に不慣れな使用者であっても、容易に決定操作ができることになる。
【発明の効果】
【0019】
この発明によれば、カーソルは、使用者が操作したい領域内に留まるように移動制御されるので、操作に慣れや精度が要求されていたポインティングデバイスの使い易さを向上させることができる。
【図面の簡単な説明】
【0020】
【図1】この発明による情報処理装置の実施形態の基本的な概念を説明するための図である。
【図2】この発明による情報処理装置の実施形態の基本的な概念を説明するための図である。
【図3】この発明による情報処理装置の実施形態の基本的な概念を説明するための図である。
【図4】この発明による情報処理装置の実施形態の基本的な概念を説明するための図である。
【図5】この発明による情報処理装置の実施形態の基本的な概念を説明するための図である。
【図6】この発明による情報処理装置の実施形態の基本的な概念を説明するための図である。
【図7】この発明による情報処理装置の実施形態のハードウエア構成例を示すブロック図である。
【図8】この発明による情報処理装置の実施形態のシステム構成例を示す機能ブロック図である。
【図9】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第1の例を説明するための図である。
【図10】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第1の例を説明するための図である。
【図11】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第1の例を説明するための図である。
【図12】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第1の例を説明するための図である。
【図13】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第1の例を説明するための図である。
【図14】この発明による情報処理装置の実施形態の処理動作例を説明するためのフローチャートを示す図である。
【図15】この発明による情報処理装置の実施形態の処理動作例を説明するためのフローチャートを示す図である。
【図16】この発明による情報処理装置の実施形態の処理動作例を説明するためのフローチャートを示す図である。
【図17】この発明による情報処理装置の実施形態の処理動作例を説明するためのフローチャートを示す図である。
【図18】この発明による情報処理装置の実施形態の処理動作例を説明するためのフローチャートを示す図である。
【図19】この発明による情報処理装置の実施形態の処理動作例を説明するためのフローチャートを示す図である。
【図20】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第2の例を説明するための図である。
【図21】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第3の例を説明するための図である。
【図22】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第3の例を説明するための図である。
【図23】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第4の例を説明するための図である。
【図24】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第4の例を説明するための図である。
【図25】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第4の例を説明するための図である。
【図26】この発明による情報処理装置の実施形態が適用されるグラフィカル・ユーザ・インターフェースの第5の例を説明するための図である。
【図27】この発明による情報処理装置の他の実施形態のシステム構成例を示す機能ブロック図である。
【図28】この発明による情報処理装置の他の実施形態が適用されるグラフィカル・ユーザ・インターフェースの例を説明するための図である。
【図29】この発明による情報処理装置の他の実施形態が適用されるグラフィカル・ユーザ・インターフェースの他の例を説明するための図である。
【図30】この発明による情報処理装置の他の実施形態が適用されるグラフィカル・ユーザ・インターフェースの他の例を説明するための図である。
【図31】この発明による情報処理装置の他の実施形態の処理動作例を説明するためのフローチャートを示す図である。
【図32】この発明による情報処理装置のさらに他の実施形態の基本的な概念を説明するための図である。
【図33】この発明による情報処理装置のさらに他の実施形態の基本的な概念を説明するための図である。
【図34】この発明による情報処理装置のさらに他の実施形態が適用されるグラフィカル・ユーザ・インターフェースの例を説明するための図である。
【図35】この発明による情報処理装置のさらに他の実施形態が適用されるグラフィカル・ユーザ・インターフェースの例を説明するための図である。
【図36】この発明による情報処理装置のさらに他の実施形態が適用されるグラフィカル・ユーザ・インターフェースの例を説明するための図である。
【図37】この発明による情報処理装置のさらに他の実施形態の処理動作例を説明するためのフローチャートを示す図である。
【図38】この発明による情報処理装置のさらに他の実施形態の処理動作例を説明するためのフローチャートを示す図である。
【図39】この発明による情報処理装置の他の実施形態の処理動作例を説明するためのフローチャートの一部を示す図である。
【図40】この発明による情報処理装置の他の実施形態の処理動作例を説明するためのフローチャートの一部を示す図である。
【図41】この発明による情報処理装置の他の実施形態の処理動作例を説明するためのフローチャートの一部を示す図である。
【図42】この発明による情報処理装置の他の実施形態の処理動作例を説明するためのフローチャートの一部を示す図である。
【図43】この発明による情報処理装置の他の実施形態の処理動作例を説明するためのフローチャートの一部を示す図である。
【発明を実施するための形態】
【0021】
以下、この発明による情報処理方法および情報処理装置の実施形態を、図を参照しながら説明する。
【0022】
[実施形態の情報処理装置および情報処理方法の概要]
<カーソル移動領域制限機能について>
図1は、この実施形態におけるカーソル移動制御の基本概念を説明するための概念図である。
【0023】
この実施形態では、操作入力手段の例としてのポインティングデバイスの操作に応じて移動する位置指示指標としてのカーソル1は、移動できる範囲が制限される。すなわち、この実施形態の情報処理装置は、カーソルの「移動制限機能」を備える。
【0024】
図1において、実線2aで囲まれる領域は、カーソル移動可能領域(以下、移動可能領域と言う)2であり、カーソル1は、この実施形態では、この移動可能範囲2内に移動が制限される。つまり、この実施形態の情報処理装置は、使用者のポインティングデバイスによる移動指示が、この移動可能領域2の外を示すものであっても、カーソルは、移動可能範囲2を超えて移動しないように制御する。移動可能範囲2の境界を「移動境界」と呼ぶ。すなわち、実線2aは、移動境界を示すものとなっている。
【0025】
そして、この実施形態では、移動可能領域2に一部または全部の領域が重なる操作領域が、1個以上、設定可能される。図1の例では、塗りを付して示した4個の任意形状の領域が、操作領域3a,3b,3c,3dである。なお、複数の操作領域3a,3b,3c,3dを区別せずに説明する場合には、説明の簡単のため操作領域3と言う。
【0026】
操作領域3は、「はい」、「いいえ」、「戻る」などの動作、あるいは、「あ」、「い」、「う」、「A」、「B」、「C」などの文字入力動作などの動作、が割り付けられている領域である。通常、異なる操作領域3には、異なる「動作」が割り付けられる。
【0027】
この実施形態の情報処理装置は、カーソルが、ある操作領域3にあるときに、決定の操作がされると、そのカーソルが存在している操作領域3に割り付けられた動作を実行する。
【0028】
操作領域3に割り付けられる「動作」には制限はなく、上記の例のほか、任意の動作が操作領域3に対して割り付け可能である。操作領域3の決定は、「当該操作領域に割り付けられた動作を行う意志決定を使用者がした」ことを意味する。
【0029】
一部の領域が移動可能領域2と重なる操作領域3は、移動可能領域2の移動境界2aと重なりを持つ。操作領域3内の移動境界2aを操作境界と呼ぶ。図1の例では、操作領域3a,3b,3cは、太線で示す操作境界4a,4b,4cを有する。したがって、移動可能領域2が設定(定義)され、操作領域3,3b,3cが設定(定義)されると、自動的に操作境界4a,4b,4cは、定まる。
【0030】
なお、移動可能領域2内に全領域が含まれる操作領域3dは、移動境界2aとは重なりを持たない。しかし、この操作領域3dについても、移動可能領域2内に操作境界4dを定義することができるものである。この場合には、操作境界4dは、自動的に定まるのではなく、設定(定義)される。
【0031】
以上の構成から、この実施形態では、ある操作領域3を目指して移動してきたカーソル1は、その操作領域3内にある移動境界、つまり操作境界によってそれ以上移動できなくなる。
【0032】
この効果により、カーソル1は、必ず、目指して移動してきた操作領域3上に留まるので、カーソル移動による操作領域3の選択が容易になる。
【0033】
図2は、この状態を示しており、使用者が操作領域3aを選択する場合である。このとき、従来は、使用者は、ポインティングデバイスを用いて、カーソル1を、操作領域3aを目指して移動させ、操作領域3aで停止させるように操作する。
【0034】
これに対して、この実施形態では、使用者は、カーソル1を操作領域3aで停止させるように移動操作させる必要はなく、大まかに、カーソル1を操作領域3aの方向に大きく移動させるようにポインティングデバイスを操作すればよい。カーソル1は、図2に示すように、操作領域3aの操作境界4aのところで、留まるからである。これにより、操作領域3aを簡単に選択することができるようになる。
【0035】
なお、移動可能領域2内で、かつ、操作領域3以外の領域を基盤領域5として、この基盤領域5を、新たな操作領域と扱うようにすることもできる。
【0036】
<カーソル移動動作制御機能>
この実施形態では、移動可能領域2の形状、つまり移動境界2aの形状は任意に設定定義できる。そして、移動境界2aの形状を工夫することにより、カーソル移動動作を制御することができる。
【0037】
すなわち、移動可能領域2の移動境界2aの形状は、図1、図2に示すような、なだらかな曲線形状ではなく、図3に示すように、頂点6,7や、くぼみ8を持つ形状とすることができる。この明細書では、このような頂点6,7や、くぼみ8の部分を、境界頂点と呼ぶことにする。境界頂点は、数学的な角の頂点6,7でもよいし、くぼみ8のような曲線からなる凸形状であっても良い。
【0038】
移動境界2aの形状を、このような境界頂点を具備する形状とすることにより、カーソル1を、移動境界2aにおいては、常に境界頂点に自然に集まるように移動制御することができる。
【0039】
すなわち、図4に示すように、使用者がポインティングデバイスを用いてカーソル1を、例えば角の頂点からなる境界頂点9のおおよその方向Pに向けて移動させた場合を考える。
【0040】
この場合に、使用者のポインティングデバイスを通じた移動指示によりカーソル1が移動境界2aに達したときには、この実施形態では、移動可能領域2の外部には移動できないように制限制御される。
【0041】
しかし、このとき、カーソルの移動方向pと、移動境界2aとのなす角は、90度よりも大きくなり、図4に示すように、移動境界2aに沿った方向であって、境界頂点9の方向に向かう移動成分Vmが生じる。このため、使用者が、方向Pにカーソル1を移動させる指示を続けると、この移動成分Vmにより、カーソル1は、移動境界2aに沿って、境界頂点9に向かって移動する。
【0042】
カーソル1が境界頂点9に達すると、前記移動成分Vmが消滅するため、カーソルは境界頂点9に留まる。こうして、移動可能領域2の移動境界2aの形状を境界頂点を具備する形状とすることにより、大まかにカーソル1を境界頂点の方向に移動させるだけで、カーソル1が境界頂点に自然に向かうように移動制御することができる。
【0043】
以上のことを考慮すると、操作領域3を、移動可能範囲2の境界頂点を含むように設定した場合には、ポインティングデバイスにより、当該操作領域を選択するためのカーソルの移動操作を容易にすることができる。
【0044】
すなわち、図3においては、境界頂点6を含むように操作領域3eが設けられている。また、境界頂点7を含むように操作領域3fが設けられている。このようにすれば、境界頂点6や境界頂点7の大よその方向にカーソル1を移動させるようにするだけで、操作領域3eや操作領域3f内にカーソル1を留めさせることができる。
【0045】
なお、以上の説明では、カーソル1は、移動境界2aに達するまでは、ポインティングデバイスを通じた使用者の移動指示方向Pとし、その後は、移動境界2aに沿ってカーソル1を移動させるようにした。しかし、カーソル1が移動境界2aに近づくに従って、曲線的に境界頂点の方向に移動方向を変えるように、カーソル1の移動を制御することもできる。
【0046】
<操作領域における自動決定機能>
操作領域内であって、かつ、移動可能領域の特定の位置または特定の領域にカーソル1が来たことを、「当該操作領域が選択されて決定された」ことを意味する自動決定とすることができる。このときの特定の位置または特定の領域を、決定位置または決定領域と呼ぶ。
【0047】
決定位置または決定領域は、操作領域内であって、かつ、移動可能領域内であれば、任意の位置または領域に設定可能である。しかし、決定位置または決定領域の設定については、使用者の決定操作意志を、確実に反映させることを考える必要がある。
【0048】
そこで、この実施形態では、操作領域内の操作境界への移動は、当該操作領域を選択決定することの意志の反映と考え、決定位置は、操作境界に設けるようにする。
【0049】
そして、カーソル移動動作制御機能を考慮して、境界頂点を決定位置とすることができる。例えば、図3において、操作領域3eについては、境界頂点6の位置を決定位置と定義することができる。その場合には、カーソル1を境界頂点6の方向に移動することが、当該境界頂点6を具備する操作領域3eについての決定操作となる。
【0050】
このように、境界頂点を決定位置と定義した場合には、ある操作領域3に向かって移動してきたカーソル1が境界頂点に行き着くほど十分に正しい移動がなされたと判断して自動決定することができるので、確度の高い操作領域3の決定を自動決定によりできる。
【0051】
また、決定領域は、操作境界の全部または一部の範囲に設定してもよい。さらに、決定領域は、操作境界を含んだ操作領域3の一部に設定するようにしてもよい。
【0052】
例えば、図3において、操作領域3fの境界頂点7を含み、当該境界頂点7の両側の操作境界から移動可能領域2側において、当該境界頂点7から所定長さの両側の操作境界から一定の距離範囲の操作領域3f側の領域10を決定領域とするようにしても良い。
【0053】
なお、図示は省略するが、例えば操作領域3fの境界頂点7を中心とした、移動可能領域2側における所定半径の扇型範囲を、当該操作領域3fの決定領域とするようにしても良い。
【0054】
<操作集合と、その有効、無効の設定>
図5に示すように、ある一つの移動可能領域2と重なりを持つ操作領域3の集合を、この明細書では、「操作集合」と呼ぶ。操作集合には、図示のように、1つ以上の操作領域を定義できる。
【0055】
操作集合は、同時に一つ、または図5に示すように、複数個、定義できる。複数の操作集合は、図5のように、互いに、占有する領域が重ならないようにしても良いし、互いに領域が重なっていてもよい。
【0056】
また、複数個の操作集合は、同時に一つ、または複数個表示することができる。その場合に、複数個の操作集合の領域が互いに重なって表示されるようにされても良い。
【0057】
そして、操作集合のそれぞれは、有効にしたり、無効にしたりすることができる。操作集合を同時に複数個表示する場合、図6に示すように、カーソル1が存在していて、そのときに操作対象となっている操作集合の移動可能領域2のみを有効とし、他の操作集合の移動可能領域2は、無効とすることもできる。
【0058】
次に、以上のように概要で説明した特徴を、グラフィカル・ユーザ・インターフェースに具現化した情報処理装置の実施形態を、以下に説明する。
【0059】
[実施形態の情報処理装置のハードウエア構成例]
図7は、この発明の情報処理装置の実施形態のハードウエア構成例を示すものである。この図7の例は、この発明の情報処理装置の実施形態を、小型のパーソナルコンピュータに適用した場合である。
【0060】
この実施形態の情報処理装置は、システムバス100に対して、CPU(Central Processing Unit)101と、メインメモリ102と、HDD(Hard Disc Drive)コントローラ103と、ディスプレイコントローラ104と、I/Oポート105,106とが接続されて構成されている。
【0061】
メインメモリ102には、この実施形態の情報処理装置が実行するグラフィカル・ユーザ・インターフェースのソフトウエアプログラムや、その他の必要なソフトウエアプログラムが、その実行時に、書き込まれ、CPU101によりアクセスされる。また、メインメモリ102は、CPU101が、ソフトウエアプログラムを実行する際のワークエリアとしても利用される。
【0062】
HDDコントローラ103には、補助記憶装置の例としてのHDD107が接続される。このHDD107のハードディスクには、グラフィカル・ユーザ・インターフェースやその他のソフトウエアプログラムが書き込まれている他、後述するように、グラフィカル・ユーザ・インターフェースのための種々の情報も書き込まれている。
【0063】
ディスプレイコントローラ104には、例えばLCD(Liquid Crystal Display)からなるディスプレイ108が接続されている。
【0064】
I/Oポート105には、入力操作手段としてのキーボード109が接続されている。また、I/Oポート106には、ポインティングデバイスの例としてのマウス110が接続されている。
【0065】
この実施形態においては、図示は省略するが、ディスプレイ108の表示画面には、以下に説明するようなグラフィカル・ユーザ・インターフェースを起動させるためのアイコンが表示されている。そして、ユーザが例えばマウス110を用いて、当該アイコンを選択して決定操作をすると、前記グラフィカル・ユーザ・インターフェース画像がディスプレイ108の表示画面に表示されて、グラフィカル・ユーザ・インターフェース動作が実行される。
【0066】
そして、CPU101は、例えばマウス110を通じた使用者の操作入力に応じて、ディスプレイ108の表示画面に表示されたグラフィカル・ユーザ・インターフェースについての制御処理動作を実行する。
【0067】
図8は、CPU101が、グラフィカル・ユーザ・インターフェース画像をディスプレイ108の表示画面に表示して、使用者の操作入力に応じた制御処理動作を実行するプログラム処理を説明するための機能ブロックを含むシステム構成例を示すブロック図である。
【0068】
図8に示すように、この実施形態では、画像情報装置は、画像情報格納部111、領域情報格納部112、動作情報格納部113および設定情報格納部114を備え、それぞれ表示制御手段115に接続されている。画像情報格納部111、領域情報格納部112、動作情報格納部113および設定情報格納部114は、例えばハードディスクに設けられる。
【0069】
画像情報格納部111には、予め用意された1または複数個の操作集合に対応した画像情報が格納されている。
【0070】
領域情報格納部112には、各操作集合の移動可能領域や移動境界、操作領域の領域定義情報、各操作領域の自動決定のモードの初期値や自動決定可否の設定など、領域情報が格納されている。
【0071】
動作情報格納部113には、各操作領域で決定動作が行われた際の動作の定義など、動作情報が格納されている。
【0072】
設定情報格納部114には、各操作集合の移動可能領域の有効、無効の初期設定やシステムの操作集合の初期値など、設定情報が格納されている。
【0073】
表示制御手段115には、表示部116が接続されている。この表示部116は、ディスプレイ108からなる。表示制御手段115は、CPU101によるソフトウエア処理と、ディスプレイコントローラ104からなる。
【0074】
操作入力手段117は、キーボード109やマウス110からなり、これらキーボード109やマウス110を通じた使用者による操作入力に応じた操作入力情報を発生する。この例では、操作入力手段117が発生する操作入力情報は、キーボード109を通じたキー操作イベント、マウス110操作によるカーソルの移動イベントや、マウス110でのクリック操作による決定イベントなどのイベント発生情報を含む。
【0075】
操作入力手段117からの操作入力情報は、イベント判断手段118に供給される。イベント判断手段118は、CPU101のソフトウエア処理からなり、I/Oポート105,106を通じてキーボード109やマウス110からの操作入力情報を解析して、使用者により指示されたイベント発生や、その種類を判断し、その判断結果を出力する。
【0076】
イベント判断手段118は、前記判断結果を表示制御手段115に供給する。表示制御手段115は、このイベント判断手段118からの判断結果に基づいて、格納部111〜114に格納されている情報をアクセスして必要な情報を取得し、グラフィカル・ユーザ・インターフェース画像に反映させる。
【0077】
例えば、表示制御手段115は、イベント判断手段からの情報が、カーソルの移動イベントであれば、領域情報格納部112の情報から、次に示すべきカーソル位置を計算する。また、表示制御手段115は、イベント判断手段からの情報が、クリック等の決定イベントであれば、領域情報格納部115の情報で操作領域を特定し、動作情報格納部113の情報から行うべき動作を特定する。ここで、行うべき動作には、適切な操作集合の画像を画像情報格納部111の情報から選択する、文字を出力する、等がある。また、表示制御手段115は、カーソルの表示画面上の位置制御も行う。
【0078】
表示部116には、表示制御手段115が選択した画像および、表示制御手段115により位置制御されるカーソルを表示する。
【0079】
なお、この実施形態の情報処理装置のシステム構成は、図8に示した構成例に限られないことは言うまでもない。図8は、論理的機能ブロックを示したものであるので、厳密にこれらの機能に分割されている必要もなければ、ハードウェアで実装しても、ソフトウェアで実装してもよい。
【0080】
<実施形態の情報処理装置によるグラフィカル・ユーザ・インターフェースの例>
実施形態の情報処理装置によって実現される操作入力システムの具体例としてのグラフィカル・ユーザ・インターフェースの例を、以下に示す。
【0081】
以下に示す例は、アルファベットの各文字を入力する操作入力システムとしてのグラフィカル・ユーザ・インターフェースである。
【0082】
図9は、この例の操作入力システムで使用する操作集合の定義を図示したものであり、この例の操作入力システムは、5つの操作集合G0,G1,G2,G3,G4から構成されている。
【0083】
この例では、操作集合G0は、アルファベットのA〜Zを含むものである。そして、操作集合G0は、4個の操作領域M01,M02,M03,M04を備える。4個の操作領域M01,M02,M03,M04は、アルファベットのA〜Zを4つに分割して4個の文字グループを形成したとき、その1個づつの文字グループに対応するものとして定義される。
【0084】
図9の例では、操作領域M01は、アルファベットA〜Gの7文字のグループの選択領域として定義される。また、操作領域M02は、アルファベットH〜Nの7文字のグループの選択領域として定義される。操作領域M03は、アルファベットO〜Uの7文字のグループの選択領域として定義される。操作領域M04は、アルファベットV〜Zの5文字のグループの選択領域として定義される。
【0085】
操作集合G1は、操作集合G0の操作領域M01で決定がなされたと判断されたときのカーソルの移動先として定義されており、アルファベットA〜Gの7文字を含むものである。そして、この操作集合G1は、7個のアルファベットA〜Gの1文字ずつを選択するための7個の操作領域M11、M12,M13,M14,M15,M16,M17を備えるものとして定義される。
【0086】
また、操作集合G2は、操作集合G0の操作領域M02で決定がなされたと判断されたときのカーソルの移動先として定義されており、アルファベットH〜Nの7文字を含むものである。そして、この操作集合G2は、7個のアルファベットH〜Nの1文字ずつを選択するための7個の操作領域M21、M22,M23,M24,M25,M26,M27を備えるものとして定義される。
【0087】
また、操作集合G3は、操作集合G0の操作領域M03で決定がなされたと判断されたときのカーソルの移動先として定義されており、アルファベットO〜Uの7文字を含むものである。そして、この操作集合G3は、7個のアルファベットO〜Uの1文字ずつを選択するための7個の操作領域M31、M32,M33,M34,M35,M36,M37を備えるものとして定義される。
【0088】
また、操作集合G4は、操作集合G0の操作領域M04で決定がなされたと判断されたときのカーソルの移動先として定義されており、アルファベットV〜Zの5文字を含むものである。そして、この操作集合G4は、5個のアルファベットV〜Zの1文字ずつを選択するための5個の操作領域M41、M42,M43,M44,M45を備えるものとして定義される。
【0089】
画像情報格納部111には、この例では、図10に示すように、操作集合G0,G1,G2,G3,G4の図9に示すような画像情報の圧縮情報が、それぞれ格納されている。図10に示すように、この例では、操作集合G0,G1,G2,G3,G4の画像情報は、JPEG(Joint Photographic Experts Group)方式により圧縮されている。
【0090】
なお、図9では、便宜的に、中央に操作集合G0の画像を図示すると共に、その上下左右の位置に、それぞれ操作集合G1,G2,G3,G4の画像を同時に図示したが、画像情報格納部111には、図9の画像がそのまま格納されているわけではない。
【0091】
すなわち、画像情報格納部111には、この例では、5個の操作集合G0〜G4の画像情報は、それぞれ操作集合単体毎の画像情報として格納されている。そして、実際の表示画面上での表示に当たって、表示制御手段115が、画像情報格納部111の操作集合単体毎の画像情報を読み出して、グラフィカル・ユーザ・インターフェースとして表示する画像を生成する。
【0092】
この場合に、表示制御手段115は、5個の操作集合G0〜G4の画像情報を、図9のように同時に表示するようにしてもよいが、次のようにしても良い。すなわち、表示制御手段115は、最初は、操作集合G0のみを表示し、この操作集合G0で選択された操作領域に応じて、他の4個の操作集合G1,G2,G3,G4の画像のいずれか一つを表示するようにしても良い。後者の場合には、操作集合毎に、表示の有効、無効が制御されることに等しい。前述したように、有効、無効は、設定情報として定義される。
【0093】
領域情報格納部112には、この例では、図11に示すような領域情報が格納される。図11(A)は、操作集合についての領域情報の例である。また、図11(B)は、操作領域についての領域情報の例である。
【0094】
図11(A)の操作集合についての領域情報は、5個の操作集合G0,G1,G2,G3,G4のそれぞれについての移動可能領域情報、移動可能領域の中心座標情報および操作領域の情報からなる。
【0095】
例えば、操作集合G0の移動可能領域は、ひし形の4頂点P01,P02,P03,P04の座標で囲まれる領域として定義される。なお、各頂点の座標は、ディスプレイ108の水平方向(x方向)座標と、垂直方向(y方向)座標とからなるものとして定義されている。以下同様である。
【0096】
また、操作集合G0の中心座標は、移動可能領域であるひし形の中心座標P00とされる。そして、操作集合G0は、4個の操作領域M01,M02,M03,M04の集合であることが定義されている。
【0097】
また、操作集合G1の移動可能領域は、7角形の7頂点P11,P12,P13,P14,P15,P16,P17の座標で囲まれる領域として定義される。
【0098】
また、操作集合G1の中心座標は、移動可能領域である7角形の中心座標P10とされる。そして、操作集合G1は、7個の操作領域M11,M12,M13,M14,M15,M16,M17の集合であることが定義されている。
【0099】
他の操作集合G2,G3,G4についても同様に定義される。
【0100】
図11(B)の操作領域についての領域情報は、操作集合G0,G1,G2,G3,G4のそれぞれについての操作領域M01〜M04、M11〜M17、M21〜M27、M31〜M37、M41〜M45の領域情報と、各操作領域についての決定領域の情報と、自動決定するか否かを指定する自動決定モードの設定情報とからなる。
【0101】
例えば、操作集合G0の操作領域M01の領域情報は、中心座標P00と、頂点P04と頂点P01との中点と、頂点P01と、頂点P01と頂点P02との中点とで囲まれるひし形領域として定義される。そして、この例では、操作集合G0の操作領域M01の決定領域(決定位置)は、頂点P01とされる。さらに、操作領域M01の自動決定モードは、「on」(自動決定有効)と、「off」(自動決定無効)とのいずれかに設定される。
【0102】
操作集合G0の他の操作領域M02〜M04の領域情報、自動決定領域、自動決定モードも、同様にして定義される。
【0103】
また、例えば、操作集合G1の操作領域M11の領域情報は、中心座標P10と、頂点P17と頂点P11との中点と、頂点P11と、頂点P11と頂点P12との中点とで囲まれる4辺形領域として定義される。そして、この例では、操作集合G1の操作領域M11の決定領域(決定位置)は、頂点P11とされる。さらに、操作領域M11の自動決定モードは、「on」(自動決定有効)と、「off」(自動決定無効)とのいずれかに設定される。
【0104】
操作集合G1の他の操作領域M12〜M17の領域情報、自動決定領域、自動決定モードも、同様にして定義される。また、他の操作集合G2,G3,G4の操作領域M21〜M27,M31〜M37,M41〜M45についての領域情報、自動決定領域、自動決定モードも、同様にして定義される。
【0105】
この実施形態の操作集合G0,G1,G2,G3,G4のそれぞれは、重複なく、多角形を形成するように並んだ操作集合M01〜M04、M11〜M17、M21〜M27,M31〜M37,M41〜M45を含む。
【0106】
そして、操作集合G0,G1,G2,G3,G4のそれぞれは、それぞれに含まれる操作領域M01〜M04、M11〜M17、M21〜M27,M31〜M37,M41〜M45の全領域と完全に重なるように定義された移動可能領域で定義されている。
【0107】
操作領域M01〜M04、M11〜M17、M21〜M27,M31〜M37,M41〜M45のそれぞれは一つずつ境界頂点を持ち、それが移動可能領域の頂点とそれぞれ重なっている。また、操作領域M01〜M04、M11〜M17、M21〜M27,M31〜M37,M41〜M45のそれぞれの境界頂点を、自動決定領域としている。
【0108】
図12は、操作領域M01〜M04、M11〜M17、M21〜M27,M31〜M37,M41〜M45のそれぞれについての動作情報の例である。
【0109】
この例においては、操作集合G0(A−Z)中の操作領域M01(A−G)には操作集合G1(A−G)へ、操作領域M02(H−N)には操作集合G2(H−N)へ、操作領域M03(O−U)には操作集合G3(O−U)へ、操作領域M04(V−Z)には操作集合G4(V−Z)へ、それぞれ制御を移す動作が定義されている。
【0110】
操作集合G1(A−G)の操作領域M01〜M07のそれぞれには、決定されたときの動作として、“A”を入力、“B”を入力、“C”を入力、“D”を入力、“E”を入力、“F”を入力、“G”を入力、という動作が割り付け定義されている。そして、操作集合G1(A−G)の操作領域M01〜M07のそれぞれには、割り付けられた動作が終了した後の次の動作として、操作集合G0(A−Z)に制御を移す動作が割り付け定義されている。
【0111】
また、操作集合G2(H−N)には、同様に、決定されたときの動作として、“H”〜“N”までの入力動作が割り付け定義され、割り付けられた動作が終了した後の次の動作として、操作集合G0(A−Z)に制御を移す動作が割り付け定義されている。
【0112】
また、操作集合G3(O−U)には、同様に、決定されたときの動作として、“O”〜“U”までの入力動作が割り付け定義され、割り付けられた動作が終了した後の次の動作として、操作集合G0(A−Z)に制御を移す動作が割り付け定義されている。
【0113】
また、操作集合G4(V−Z)には、同様に、決定されたときの動作として、“V”〜“Z”までの入力動作が割り付け定義され、割り付けられた動作が終了した後の次の動作として、操作集合G0(A−Z)に制御を移す動作が割り付け定義されている。
【0114】
また、この例では、設定情報格納部114には、図13に示すように、最初に有効になる操作集合が、操作集合G0(A−Z)であることが、設定情報として格納されている。
【0115】
<動作説明>
以上のような構成を備える実施形態の情報処理装置によって実現されるアルファベット入力システムなどの操作入力システムとしてのグラフィカル・ユーザ・インターフェースの動作説明を、フローチャートを参照しながら説明する。
【0116】
以下に説明する実施形態においては、操作入力手段117からの操作入力情報のうち、イベント判断手段118が有効なイベントと判断するのは、キーボードのエスケープ(ESC)ボタン操作と、マウスによるカーソルの移動とクリック動作の3つとする。
【0117】
例えば、ディスプレイ108の表示画面に表示されている操作入力システムのアイコンボタンをマウスでクリックするなどの起動イベントが発生すると、この実施形態の情報処理装置は、図14のメイン動作のフローチャートを実行する。
【0118】
この図14のフローチャートの各ステップは、CPU101が、ハードディスクに格納されているグラフィカル・ユーザ・インターフェースのソフトウエアプログラムを、メインメモリ102に転送して、実行するものである。また、図8の機能ブロック図においては、表示制御手段115が実行する処理となる。後述する他のフローチャートにおいても同様である。以下においては、表示制御手段115が各ステップを実行するものとして説明する。
【0119】
上述したように、イベント判断手段118で、操作入力システムの起動イベントが発生したと判断すると、その旨を表示制御手段115に供給する。表示制御手段115は、この操作入力システムの起動イベントの通知を受けると、設定情報格納部114を参照して、最初に操作すべき操作集合を設定情報より読み取り、それをA0という変数に保持する(ステップS101)。
【0120】
次に、表示制御手段115は、領域情報格納部112を参照し、変数A0に保持されている操作集合の中心座標(移動可能領域の中心座標)を領域情報より取得し、P0という変数に保持する(ステップS102)。この変数P0が現在のカーソルの位置を保持している。
【0121】
そして、表示制御手段115は、変数A0に操作集合が保持されているか否かを判別する(ステップS103)。
【0122】
ステップS103で、変数A0に操作集合が保持されていないと判別したときには、表示制御手段115は、この操作入力システムを終了する。
【0123】
ステップS103で、変数A0に操作集合が保持されていると判別したときには、表示制御手段115は、変数A0に保持されている操作集合に対応した画像を画像情報格納部111から取得し、取得した画像をG0という変数に保持する(ステップS104)。
【0124】
以上のようにして、変数P0、G0を取得後、表示制御手段115は、それらを基に画像とカーソルを表示部116に表示する(ステップS105)。すなわち、図9の例について説明すると、操作集合G0(A−Z)の画像が表示画面に表示されると共に、その移動可能領域の中心位置を初期表示位置として、カーソルが表示される。つまり、この例では、カーソルは、最初から移動可能領域内に位置するようにされる。
【0125】
その後、表示制御手段115は、イベント判断手段118からのイベント情報を監視し、イベントが発生したか否か判別し(ステップS106)、イベントが発生しないと判別されると、何もしないで待機状態になる(ステップS107)。そして、ステップS106に戻る。
【0126】
イベント判断手段118によってイベント発生を検知すると、表示制御手段115は、そのイベント発生情報に基づいたイベント処理ルーチンを実行する(ステップS108) 。そして、このイベント処理ルーチンの実行後、ステップS103に戻り、このステップS103以降の処理を繰り返す。
【0127】
なお、イベント発生待ちのステップS106は、OSの割り込み処理で実現される。ステップS108で、イベント処理が終わると、表示制御手段115は、ステップS102に戻って、変数A0に操作集合が保持されているかどうかの判断を行う。
【0128】
次に、ステップS108のイベント処理ルーチンについて説明する。
【0129】
図15は、ステップS108のイベント処理ルーチンのうち、発生したイベントの種類を分類する処理ルーチンのフローチャートである。
【0130】
表示制御手段115は、まず、イベント判断手段118からのイベント発生情報に基づき、発生したイベントが、キーボードのESCボタンの押下であるか否か判別する(ステップS111)。
【0131】
ステップS111で、発生したイベントが、キーボードのESCボタンの押下であると判別したときには、表示制御手段115は、変数A0に保持されていた操作集合を削除して、イベント処理ルーチンから、操作入力システムの起動前の状態に戻る。これによって、この操作入力システムを終了させることができる。
【0132】
ステップS111で、発生したイベントが、キーボードのESCボタンの押下ではないと判別したときには、表示制御手段115は、発生したイベントは、カーソル移動イベントかクリックイベントかを判断する(ステップS113)。
【0133】
ステップS113で、発生したイベントが、カーソル移動イベントであると判別したときには、表示制御手段115は、図16のフローチャートに示す処理ルーチンを実行する。この図16のフローチャートに示す処理ルーチンは、カーソルイベント処理のうち、カーソル位置を制御するための処理である。
【0134】
この図16のカーソル位置制御処理においては、先ず、表示制御手段115は、カーソルが移動したとされる場所をPという変数に保持する(ステップS121)。
【0135】
次に、表示制御手段115は、変数A0に保持されている操作集合に対応する移動可能領域の情報を領域情報格納部112から取得する(ステップS122)。
【0136】
そして、表示制御手段115は、変数Pが保持するカーソルが移動したとされる場所が移動可能領域内かを判断する(ステップS123)。
【0137】
ステップS123で、変数Pが保持するカーソルが移動したとされる場所が移動可能領域内であると判別したときには、表示制御手段115は、変数Pをそのままカーソルの現在位置を示す変数P0に代入して保持する(ステップS124)。
【0138】
また、ステップS123で、変数Pが保持するカーソルが移動したとされる場所が移動可能領域内ではないと判別したときには、表示制御手段115は、移動可能領域の情報を基にカーソル位置の補正を行って、移動可能領域内に留まる値を変数P0に保持する(ステップS125)。このステップS125の処理は、図4を用いて説明したカーソル位置補正処理である。
【0139】
ステップS124およびステップS125の次には、図17のフローチャートに示す処理ルーチンに進む。図17は、カーソルイベント処理のうち、自動決定に関する処理ルーチンのフローチャートを示すものである。
【0140】
表示制御手段115は、領域情報格納部112を参照して、カーソルの現在位置を示す変数P0が属している操作領域を、領域情報から取得し、B0という変数に保持する(ステップS131)。
【0141】
そして、表示制御手段115は、変数B0に保持されている操作領域の自動決定領域情報を、領域情報格納部112の領域情報から取得する(ステップS132)。
【0142】
次に、表示制御手段115は、取得した自動決定領域と、カーソルの現在位置の変数P0を比較し、カーソル位置が自動決定領域内かどうかを判別する(ステップS133)。
【0143】
ステップS133で、カーソル位置が自動決定領域内ではないと判別したときには、表示制御手段115は、カーソルの表示位置を、変数P0の位置に移動させる(ステップS138)。そして、この処理ルーチンを終了する。
【0144】
ステップS133で、カーソル位置が自動決定領域内であると判別したときには、表示制御手段115は、変数B0が保持する操作領域についての自動決定モードの可否情報を、領域情報格納部112の領域情報から取得する(ステップS134)。そして、表示制御手段115は、操作領域の自動決定モードが「on」であるか否かを判別する(ステップS135)。
【0145】
ステップS135で、操作領域の自動決定モードが「on」ではなく「off」であると判別したときには、表示制御手段115は、自動決定を実行せず、カーソルの表示位置を、変数P0の位置に移動させる(ステップS138)。そして、この処理ルーチンを終了する。
【0146】
また、ステップS135で、操作領域の自動決定モードが「on」であると判別したときには、表示制御手段115は、変数B0に保持されている操作領域に割り当て設定されている領域動作を、動作情報格納部113から取得して決定する(ステップS136)。そして、表示制御手段115は、その領域動作の実行を開始する(ステップS137)。そして、後述する図19のフローチャートに示す領域動作の処理ルーチンに移行する。
【0147】
次に、図15のフローチャートのステップS113で、カーソル移動イベントではないと判別したときには、表示制御手段115は、発生したイベントはクリックイベントであると判断し、図18のフローチャートに示すクリックイベントの処理を実行する。図18は、クリックイベント処理のうち、操作領域に対して割り付け設定されている領域動作を決定し、実行するまでの処理のフローチャートである。
【0148】
この図18の処理においては、先ず、表示制御手段115は、カーソル位置情報として変数P0を参照する(ステップS141)。
【0149】
次に、表示制御手段115は、カーソルの現在位置を示す変数P0が属している操作領域を、領域情報格納部112の領域情報から取得し、変数B0に保持する(ステップS142)。
【0150】
次に、表示制御手段115は、変数B0に保持されている操作領域に割り付け設定されている領域動作を、動作情報格納部113から取得して決定し(ステップS143)、領域動作の実行を開始する(ステップS144)。そして、後述する図19のフローチャートに示す領域動作の処理ルーチンに移行する。
【0151】
領域動作に関するフローチャートである図19においては、表示制御手段115は、先ず、取得した領域動作が文字入力動作を伴うか否かを判別する(ステップS151)。このステップS151で、取得した領域動作が文字入力動作を伴うと判別したときには、表示制御手段115は、指定された文字を出力して画面に表示する(ステップS152)。
【0152】
そして、表示制御手段115は、文字を出力した後、動作情報格納部113を参照して、次に操作すべき操作集合を取得して、それを変数A0に保持する。
【0153】
また、ステップS151で、取得した領域動作が文字入力動作を伴なわないと判別したときには、表示制御手段115は、ステップS151からステップS153に直接に進んで、動作情報格納部113の次に操作すべき操作集合を取得して変数A0に保持する。
【0154】
ステップS153の次には、表示制御手段115は、領域情報格納部112の領域情報から、変数A0に保持されている操作集合の移動可能領域の中心座標を取得し、それをカーソルの現在位置を示す変数P0に保持する(ステップS154)。そして、イベント処理ルーチンを終了する。
【0155】
以上、フローチャートを参照して説明した動作を、実際にアルファベットを入力システムにおける動作に適用してさらに説明する。
【0156】
アルファベット入力システムが起動すると、この実施形態では、操作集合G0(A−Z)が変数A0に保持される。ディスプレイ116の表示画面には、図9の操作集合G0〜G4の画像が表示されると共に、その中央位置の操作集合G0の画像の中心位置(操作集合G0の移動可能領域の中心位置)に、カーソルが初期表示される。
【0157】
次に、使用者がポインティングデバイスとしてのマウスを操作させて、カーソルを、例えばおおよそ上方向に移動させていくと、次のような動作をする。
【0158】
しばらくはカーソル移動イベントが発行され、カーソルは、使用者の操作の通り、操作集合G0の操作領域M01内を上方に移動する。カーソルは、やがて画像の端(移動可能領域の移動境界)に達するが、あたかもカーソルが画像外部へは出られないように制御される。
【0159】
そして、使用者がマウスを操作させて、カーソルをさらに上方に移動させると、カーソルは、操作領域M01の画像の端(移動可能領域の移動境界=操作境界)を伝って移動するように制御され、やがて操作領域M01内の頂点P01に留まるように制御される。
【0160】
図11(B)に示すように、この例では、この状態でカーソルが属している操作領域M01では、自動決定モードが「off」になっているため、クリックイベントを発生するまでは、同じ場所に留まり続ける。
【0161】
次に、使用者がマウスを用いてクリック操作を行うと、クリックイベントが発生し、変数A0に操作集合G1(A−G)が保持され、この操作集合G1の移動可能領域の中心座標が、カーソルの現在位置の変数P0に保持される。したがって、この例では、画面には、操作集合G1の7角形の画像の中心位置にカーソルが表示される。
【0162】
次に、使用者がマウスによりカーソルを、操作集合G1において、おおよそ左上方向に操作領域M17内を移動させたとする。すると、カーソルは、しばらくは使用者の操作通り移動する。
【0163】
そして、カーソルが操作領域M17の画像の端(移動境界=操作境界)に達すると、あたかもカーソルが操作領域M17の画像の外部へは出られないように制御される。さらに、使用者がマウスによりカーソルを左上方向に移動させると、カーソルは、画像の端を伝って移動するように制御され、やがて、操作領域M17の画像の上の頂点P17に留まるように制御される。
【0164】
この例では、カーソルが属している操作領域M17では、図11(B)に示す例においては、自動決定モードが「on」になっている。このため、カーソルが頂点P17に来た段階で、文字“G”の入力動作と自動決定され、文字“G”の入力動作が実行される。すなわち、カーソルが頂点P17に来た段階で、使用者の意思は、十分に文字“G”を入力しようとしていることを示していると判断することができ、それに基づいて文字“G”が、自動的に決定されて入力される。
【0165】
文字“G”の入力動作が実行されると、その後、自動的に変数A0に操作集合G0(A−Z)が保持され、画面には、操作集合G0の中心位置に、カーソルが移動して表示される。
【0166】
以上は、一文字を入力するための操作であるが、以上の操作を必要なだけ繰り返し、連続して文字を入力していくことができる。そして、文字入力を終了したい場合は、キーボードのESCボタンを押下操作すれば、この実施形態のアルファベット入力システムが終了する。
【0167】
[第2の実施形態]
第2の実施形態は、第1の実施形態の変形例である。上述の第1の実施形態は、アルファベットの入力システムとして、この発明のよる情報処理装置の実施形態を構成したが、この第2の実施形態は、テレビ受信機の入力選択システムへの適用例である。
【0168】
図20は、この例のテレビ受信機の入力操作システムで使用する操作集合の定義を図示したものである。この例のテレビ受信機の入力操作システムは、7個の操作集合G10,G11,G12,G13,G14,G15,G16から構成されている。
【0169】
この例では、操作集合G10は、地上波デジタル放送、BS(Broadcasting Satellite)放送、CS(Communication Satellite)放送、外部入力の4つのテレビ受信機の入力ソースが、それぞれ割り付け設定動作として定義される操作領域M101,M102,M103,M104を備える。
【0170】
そして、操作集合G11は、地上波デジタル放送が割り付け設定動作として定義される操作領域M101で決定がなされたと判断されたときのカーソルの移動先として定義されている。この操作集合G11は、1−6チャンネル、7−12チャンネル、お気に入りチャンネルの選択が、それぞれ割り付け設定動作として定義される操作領域M111,M112,M113を備える。
【0171】
お気に入りチャンネルは、使用者が予め設定しても良いが、使用者の地上波デジタル放送の過去のチャンネル選択履歴から、頻繁に選択されるチャンネルとして自動的に決定されるチャンネルからなる。
【0172】
操作集合G12は、操作集合G11の操作領域M111で決定がなされたと判断されたときのカーソルの移動先として定義されている。この操作集合G12は、1−6チャンネルのそれぞれの1チャンネルの選択が割り付け設定動作として定義される操作領域M121,M122,M123,M124,M125,M126と、7−12チャンネルの選択に飛ぶ動作が割り付け設定されている操作領域M127とを備える。
【0173】
また、操作集合G13は、操作集合G11の操作領域M112で決定がなされたと判断されたときのカーソルの移動先として定義されている。この操作集合G13は、7−12チャンネルのそれぞれの1チャンネルの選択が割り付け設定動作として定義される操作領域M131,M132,M133,M134,M135,M136と、1−6チャンネルの選択に飛ぶ動作が割り付け設定されている操作領域M137とを備える。
【0174】
また、操作集合G14は、操作集合G10の外部入力が動作として割り付け設定されている操作領域M104で決定がなされたと判断されたときのカーソルの移動先として定義されている。この操作集合G14は、HDMI(High-Definition Multimedia Interface)端子1,2,3のそれぞれの選択が動作として割り付け設定されている操作領域M141,M142,M143と、デジタル入力端子の選択が動作として割り付け設定されている操作領域M144と、セパレート入力端子の選択が動作として割り付け設定されている操作領域M145とを備える。
【0175】
なお、説明の簡単のため、BS放送およびCS放送の操作集合M102,M103が決定されたときのカーソルの移動先として定義されている操作集合G15,G16については、図示を省略する。
【0176】
この第2の実施形態におけるテレビ受信機の入力操作システムにおける動作も、前述したアルファベットの入力システムの場合と同様となる。すなわち、カーソルは、操作集合の移動可能領域内に移動が制限される。そして、この第2の実施形態においても、各操作集合に含まれる操作領域は、それぞれ境界頂点を備えるように構成され、各操作領域の頂点位置や、当該頂点を含む近傍領域が決定位置や決定領域として設定され、自動決定に用いられる。
【0177】
なお、この第2の実施形態の場合、下位層の操作集合G11、G12,G13、G14の中央には、その上位層の操作集合の画像形状を縮小した縮小画像SG11、SG12,SG13、SG14が画像表示される。これにより、当該操作集合の画像に、どの上位層の操作集合の画像から移ったのかを使用者に知らせるようにしている。
【0178】
[第1の実施形態および第2の実施形態の変形例]
以上説明した第1の実施形態および第2の実施形態では、表示画面上において操作集合が占める領域の形状は、凸型の多角形とするようにしたが、凹部を備える多角形の領域形状とするようにしても良い。図21は、第1の実施形態における操作集合G4に、この変形例を適用した場合を図示したものである。
【0179】
すなわち、第1の実施形態および第2の実施形態では、図21において、破線で示すように、操作集合G4の外形形状は、凸型の多角形とされていた。これに対して、図21の例においては、頂点P41,P42,P43,P44,P45に加えて、凹部を形成するように、頂点P46,P47,P48,P49,P50を形成するように定義する。
【0180】
このようにすれば、図4を参照して説明したカーソルの移動制御において、カーソルの境界頂点P41,P42,P43,P44,P45へ移動する移動度(ベクトルVmの成分)が、より大きくなり、早く特定の操作領域の境界頂点にカーソルを持ち来たして停止させることができる。
【0181】
このように、この実施形態においては、操作集合の移動可能領域の移動境界の、操作領域と重なる領域での形状を、変えることにより、カーソルの操作領域内での移動についての振る舞いを制御することができる。
【0182】
このことを、図22の概念図を参照してさらに説明する。
【0183】
すなわち、図22は、移動可能領域2と領域の重なりを持つ2個の操作領域3g、3hを含む操作集合の場合の例である。この図22の例の操作集合では、操作領域3gに含まれる移動境界2a(=操作境界)には、境界頂点Pgが存在するように、移動境界2aの形状が定義されている。
【0184】
この場合、この境界頂点Pgを形成する2辺が成す、移動可能領域2側の角度θtが小さいほど、図4を参照して説明したカーソルの移動制御において、カーソルが境界頂点へ移動する移動度(ベクトルVmの成分)が大きくなる。そして、前記角度θtの大きさに応じて、操作集合の移動可能領域の形状は、凸型の多角形や図21のような凹部を形成する多角形形状とされる。
【0185】
また、図22の例の操作集合では、操作領域3hに含まれる移動境界2a(=操作境界)には、境界頂点は存在せず、操作境界はなだらかな変化をしている。この場合には、カーソルは、移動可能領域2内において操作境界から外部に出ないようにされるが、一点に誘導されるような移動はせず、使用者の移動操作に応じたものとなる。
【0186】
[第3の実施形態]
上述した第1の実施形態および第2の実施形態は、複数個の操作集合が階層的な構造とされるが、表示画像としては、重なりを持たない場合であった。これに対して、以下に説明する第3の実施形態は、複数個の操作集合が階層的な構造を持つと共に、それら複数個の操作集合、つまり、移動可能領域が一部重なりを有する場合の例である。
【0187】
この第3の実施形態は、図6を用いて説明した操作集合の有効、無効の概念を、複数個の操作集合の移動可能領域が重なりを有する場合において適用した場合に該当する。なお、図6は、第1および第2の実施形態において、操作集合の有効、無効の概念を適用した場合の説明に対応している。
【0188】
図23〜図25は、この第3の実施形態の入力システムを説明するための図である。この第3の実施形態の操作入力システムは、ひらがな入力システムの場合の例であり、図23は、この例のひらがな入力システムで使用する操作集合の定義を図示したものである。この例のひらがな入力システムは、12個の操作集合G200,G201,G202,G203,G204,G205,G206,G207,G208,G209,G210,G211から構成されている。
【0189】
この例の場合、中央に位置する大きな操作集合G200と、その周囲に位置する小さな操作集合G201,G202,G203,G204,G205,G206,G207,G208,G209,G210,G211とは、部分的に移動可能領域や操作領域が重なりを持って定義されている。
【0190】
この例では、中央の大きな操作集合G200は、あ行、か行、さ行、・・・、わ行のそれぞれを選択動作が割り付け設定されている10個の操作領域と、文字入力に関する制御動作が割り付け設定されている操作領域との合計11個の操作領域を備える11角形の移動可能領域を備えるものとされている。
【0191】
そして、操作集合G200の11個の操作領域のそれぞれは、境界頂点を備える形状とされ、各操作領域の頂点位置や、当該頂点を含む近傍領域が決定位置や決定領域として設定され、自動決定に用いられる。
【0192】
そして、操作集合G200の周囲の11個の操作集合G201〜G211は、操作集合G200の11個の操作領域のそれぞれが決定がなされたときのカーソルの移動先として定義されている。
【0193】
例えば、操作集合G201は、あ行の各文字「あ」、「い」、「う」、「え」、「お」を入力する動作が割り付け設定されている操作領域を備える。また、操作集合G202は、か行の各文字「か」、「き」、「く」、「け」、「こ」を入力する動作が割り付け設定されている操作領域を備える。他の操作集合G203〜G210も同様である。
【0194】
さらに、操作集合G211は、文字入力に関する制御動作として、「1文字削除」、「変換」、「全削除」、「Exit」、「その他」が割り付け設定されている操作領域を備える。
【0195】
この例では、操作集合G201〜G211は、全て正6角形の領域が、各領域が頂点を有するように均等に6分割された操作領域を備えるものとされている。割り付けられる動作が6個以下であるので、この例では、それぞれ動作が割り付け設定されない操作領域が存在するものとなっている。しかし、操作集合G201〜G211は、この例のように定義する必要はなく、割り付け設定すべき動作数に応じた操作領域を備えるような多角形状としても良いことはいうまでもない。
【0196】
そして、この例においては、これらの操作集合G201〜G211のそれぞれについても、各操作領域の頂点位置や、当該頂点を含む近傍領域が決定位置や決定領域として設定され、自動決定に用いられる。
【0197】
この第3の実施形態におけるひらがな入力システムにおける動作も、前述したアルファベットの入力システムの場合と同様であり、カーソルは、操作集合の移動可能領域内に移動が制限される。また、自動決定モードが「on」とされている操作領域では、設定された決定位置や決定領域にカーソルが持ち来たされたときに、決定操作がされたと自動決定処理がなされる。
【0198】
以上説明したように、中央に位置する大きな操作集合G200と、その周囲に位置する11個の小さな操作集合G201〜G211とは、部分的に移動可能領域や操作領域が重なりを持って定義されている。そこで、この例では、このような重なりがあっても、その表示を見やすくするため、操作集合の有効、無効を使用する。
【0199】
この例では、このひらがな入力システムが起動されると、図24に示すように、先ず、中央の操作集合G200のみが有効になって、表示される。そして、カーソル1は、最初は、操作集合G200内の中心位置に表示される。このとき、この図24で破線で示すように、操作集合G201〜G211は、無効とされていて、表示画面には表示されない、あるいは、薄く表示される。
【0200】
そして、使用者は、中央の操作集合G200で定義される移動可能領域内で移動し、11個の操作領域のいずれかを選ぶ。例えば、図24に示すようにカーソル1を、「あ」の操作領域を選択するように移動させると、その次には、図25に示すように、中央の操作集合G200は無効になり、その代わりに、右上の「あいうえお」の操作集合G201のみが有効になる。
【0201】
このときの表示画面は、図25に示すように、操作集合G201のみが表示される、あるいは、操作集合G201が濃く表示されると共に、操作集合G200やその他の操作集合G202〜G211が薄く表示される状態となる。
【0202】
そして、使用者は、この操作集合G201によって定義される移動可能領域内でカーソル1を移動させ、「あ」、「い」、「う」、「え」、「お」の文字入力が動作として割り付けられている操作領域のうちのいずれかの操作領域を領域選択する。
【0203】
この第3の実施形態では、複数の操作集合の移動可能領域や操作領域が重なりを持つので、カーソルが存在して、操作対象となっている操作集合のみを有効にする処理をするようにした。しかし、上述の第1および第2の実施形態の場合のように、ある操作集合の移動可能領域が他の操作集合の移動可能領域と全く重なりを持たない場合は、すべての操作集合を有効のまま、カーソルだけを移動する処理でも問題はない。
【0204】
[第4の実施形態]
第4の実施形態は、図1において、移動可能領域2内の操作領域3dが設定されて、その操作領域3d内に操作境界4dが形成される操作入力システムの場合の具体例を示すものである。
【0205】
図26に、この第4の実施形態の操作入力システムのグラフィカル・ユーザ・インターフェースの画像の例を示す。
【0206】
この第4の実施形態では、操作集合G300は、3角形の移動可能領域2Tを備える。すなわち、この3角形の各頂点P301,P302,P303で形成される3辺の内側が移動可能領域2Tであり、前記3辺は、移動境界を構成する。
【0207】
そして、この3角形の各頂点P301,P302,P303で形成される3辺のそれぞれの中点位置P311,P312,P313のそれぞれと、この3角形の中心P300との直線で結んで、3つの4角形領域を生成する。そして、生成した4角形領域を、それぞれ操作領域M301,M302,M303とする。
【0208】
これらの操作領域M301,M302,M303のそれぞれには、「操作1」、「操作2」、「操作3」のそれぞれが動作として割り付けられている。そして、この例では、操作領域M301,M302,M303のそれぞれの頂点P301,P302,P303の位置が自動決定位置として定義される、
したがって、これらの操作領域M301,M302,M303のいずれかを領域選択し、決定することで、3種の「操作1」、「操作2」、「操作3」のいずれかを選択することができる。
【0209】
この図26においては、図示するように、さらに、3角形の中心点P300を中心として、3角形内に入る半径の円C300が生成される。すると、この円C300内には、中心点P300と、3辺の中点P311,P312,P313のそれぞれとを結ぶ直線で分割される3つの扇形領域が生成される。
【0210】
この例では、この円C300内の3つの扇形領域が、移動可能領域2T内に生成される3個の操作領域M311,M312,M313となる。そして、この例では、中心点P300と3辺の中点P311,P312,P313のそれぞれとを結ぶ直線のうち、操作領域M311,M312,M313内に含まれる線分B12、B23、B13(図26で太線で示す部分)は、操作境界として定義する。
【0211】
したがって、カーソル1は、点線の両矢印で示すように、円C300の領域を除いて、3角形の移動可能領域2T内を移動可能となる。この場合に、3角形の3辺が移動境界となるので、カーソル1の移動が3角形内に制限される。
【0212】
そして、この例では、カーソル1は、円C300内の操作領域M311,M312,M313のそれぞれにおいては、線分B12、B23、B13を操作境界として移動制限される。
【0213】
そして、この例では、操作領域M311,M312,M313のそれぞれについて、中心点P300を、境界頂点として、この位置あるいはこの位置を含む所定領域を、決定位置あるいは決定領域と定義するようにする。すなわち、この例の入力システムにおいては、カーソル1がそれぞれの操作領域M311,M312,M313を通って、中心点P300に誘導されたとき、カーソル1が通ってきた操作領域について割り付け設定されている動作が決定されたと判断するようにする。
【0214】
この例では、操作領域M311,M312,M313のそれぞれについての動作は、それぞれの領域が含まれる操作領域M301,M302,M303の操作についてのオプションが割り付け設定定義される。
【0215】
以上の図26の入力システムにおける使用者の操作の例を以下に示す。
【0216】
先ず、3角形の移動可能領域2Tにおいて、頂点P301,P302,P303のそれぞれを備える操作領域M301,M302,M303のいずれかを選択して、決定することにより、動作として、操作1、操作2、操作3、のいずれかを選ぶことができる。
【0217】
その一方で、操作領域M301,M302,M303の内側の扇形の操作領域M311,M312,M313のいずれかを選択して決定することで、操作1のオプション、操作2のオプション、操作3のオプション、のいずれかを選ぶことができる。
【0218】
使用者は、操作1を選択しようと、上方の頂点P301付近にカーソルを移動させたが、その前に操作1のオプション設定をしたくなった場合、3角形の中心に向かって、カーソル1を移動させ、操作領域M311を領域決定すればよい。
【0219】
この第4の実施形態によれば、例えばパーソナルコンピュータのマウスなら、従来は、右クリックしてオプション選択していたものに対し、予め画面に表示でき、かつ、右クリックという決定ボタンとは別のボタンを準備すること、押すことが不要になる。
【0220】
特に、操作集合の形状が、図26の例のような3角形の場合、各頂点P301,P302,P303を備える3つの操作領域M301,M302,M303をカーソルで行き来する場合に、中心点P300を通る必要がない。したがって、この例のように、中心点P300を中心とした領域に、新たな操作領域M311,M312,M313を定義することは有効である。
【0221】
[第5の実施形態]
上述の実施形態では、操作集合に属する複数個の操作領域の広さは、全て均一にするようにしている。これに対して、第5の実施形態は、使用者の過去の操作履歴を保持しておき、その操作履歴に応じて、操作集合に属する複数個の操作領域の広さを動的に変更するようにする。これにより、使用者の操作性向や習慣を反映した操作入力システムを実現することができる。この第5の実施形態は、上述の第1〜第4の実施形態のいずれにも適用可能である。
【0222】
この第5の実施形態の場合における情報処理装置のシステム構成例のブロック図を、図27に示す。この図27に示すように、第5の実施形態においては、図8に示した第1の実施形態のシステム構成例の各部に加えて、操作履歴情報格納部119を設ける。
【0223】
この操作履歴情報格納部119には、操作集合毎に、操作履歴情報が格納される。この実施形態の場合、操作履歴情報は、操作集合毎に、その操作集合に含まれる操作領域の選択回数とされている。
【0224】
表示制御手段115は、発生したイベントのうち、操作領域の決定イベントが発生したとき、当該イベントに対応する処理が終了したら、操作履歴情報格納部119における、そのイベントが発生した操作集合の操作領域についての選択回数をインクリメントすることにより更新する。
【0225】
そして、表示制御手段115は、それぞれの操作集合の画像を生成して表示する際に、操作履歴情報格納部119の操作履歴情報を参照して、その操作履歴情報を反映した操作集合および操作領域の画像を生成して、表示画面に表示するようにする。
【0226】
例えば、操作入力システムが、前述の図9に示したアルファベット入力システムの場合において、変数A0に保持されているのが操作集合G4である場合を例にして説明する。この場合に、操作履歴情報が、文字「V」の操作領域M41についての選択回数が最大で、次に、文字「W」の操作領域M42についての選択回数が大きく、さらに、文字「X」、「Y」、「Z」の順に、選択回数が小さくなっているとする。
【0227】
すると、表示制御手段115は、各操作領域M41〜M45についての操作履歴情報である選択回数に応じて、操作領域M41〜M45のそれぞれの領域の大きさを決定するようにする。その結果、表示制御手段115は、図9の操作集合G4の画像から、例えば図28に示すような操作集合G4の画像に変更するようにする。
【0228】
すなわち、図28の例の操作集合G4の画像は、選択回数が多い操作領域ほど、面積が広く、より選択操作し易いものとなる。
【0229】
また、操作履歴情報に応じて操作集合の画像を動的に変更する場合に、操作領域の操作境界の大きさ(長さ)を、操作履歴情報に応じて変更するようにしても良い。
【0230】
図29は、その場合の変更画像例である。この図29の例は、図28の例と同様に、図9の操作集合G4についての画像例の場合であり、かつ、図21に示した凹部を備えるようにした画像に適用した場合である。
【0231】
図29の例は、操作履歴情報が、文字「V」の操作領域M41についての選択回数が多く、文字「Z」の操作領域M45についての選択回数が小さい状態となっている場合である。この例の場合には、凹部の頂点P46の位置は、文字「W」の操作領域M42の頂点P42側に寄ると共に、凹部の頂点P50の位置は、文字「Z」の操作領域M45の頂点P45側に寄って、文字「V」の操作領域41の操作境界が長くなるようにされる。したがって、使用者は、文字「V」の操作領域の選択が容易になる。
【0232】
また、凹部の頂点P49の位置は、文字「Z」の操作領域M45の頂点P45側に寄る。その他の凹部の頂点は、隣接する頂点の中点位置とされる。これにより、選択回数の少ない文字「Z」の操作領域M45の操作境界は短くなる。
【0233】
この図29の例の場合、凹部の頂点の位置のみを変化させることにより、元々の操作集合G4の画像の5角形の形状を崩さずに済むという利点がある。
【0234】
以上の図28および図29の例では、操作集合および操作領域の画像の形状を、操作履歴情報に基づいて変更するようにしたが、操作履歴情報に応じて動的に操作集合および操作領域の画像を変更する態様としては、画像の形状の変更に限らない。
【0235】
図30は、操作集合および操作領域の画像の形状を変えずに、操作履歴情報に基づいて、操作集合内の操作領域の位置を変更する例である。
【0236】
すなわち、図30(A)は、図9に示した入力システムの画像のうちの、操作集合G0と、操作集合G4の部分を抽出したものである。
【0237】
ここで、文字「V」の操作領域M41を選択する場合には、操作者は、先ず、図30(A)に示すように、カーソルを、操作集合G0では、矢印AR1に示す左方向に移動させて、「VWXYZ」の操作領域M04を選択決定する。
【0238】
すると、カーソルは、操作集合G4に移動するので、使用者は、次に、文字「V」の操作領域M41を選択決定するように、矢印AR2に示す上方向にカーソルを移動させるようにする。
【0239】
したがって、使用者は、文字「V」の入力に際しては、カーソルを、矢印AR1の方向に移動させた後、この矢印AR1の方向とは異なるAR2の方向に移動させるように操作する必要がある。
【0240】
ところで、この入力システムにおいて、操作履歴情報が、文字「V」の操作領域M41についての選択回数が多いことを示している場合、使用者のマウスによるカーソルの移動操作としては、より簡易的な方が良い。
【0241】
そこで、この例では、文字「V」の操作領域M41についての選択回数が多いことを示す操作履歴情報が操作履歴情報格納部119に格納されている場合、表示制御手段115は、図30(B)に示すように、文字「V」の操作領域は、上位の操作集合G0におけるカーソルの移動方向と同じ方向となるように、操作領域M45に変更するようにする。
【0242】
このようにすれば、使用者は、操作集合G0では、カーソルを矢印AR3の方向に移動させて操作領域M04を選択して決定し、その後、操作集合G4においても、カーソルを矢印AR3と同方向の矢印AR4の方向に移動させることにより、操作領域M45を選択して決定することができる。つまり、カーソルの移動方向を変化させることなく、簡易的な操作により、頻繁に選択している文字「V」の入力をすることができる。
【0243】
図31に、この第5の実施形態の情報処理装置のメイン動作の処理ルーチンのフローチャートの例を示す。図14の例と同様に、例えば、ディスプレイ108の表示画面に表示されている操作入力システムのアイコンボタンをマウスでクリックするなどの起動イベントが発生すると、この実施形態の情報処理装置は、図31のメイン動作のフローチャートを実行する。
【0244】
この図31のフローチャートの各ステップも、CPU101が、ハードディスクに格納されているグラフィカル・ユーザ・インターフェースのソフトウエアプログラムを、メインメモリ102に転送して、実行するものである。また、図27の機能ブロック図においては、表示制御手段115が実行する処理となる。以下においては、表示制御手段115が各ステップを実行するものとして説明する。
【0245】
上述したように、イベント判断手段118で、操作入力システムの起動イベントが発生したと判断すると、その旨を表示制御手段115に供給する。表示制御手段115は、この操作入力システムの起動イベントの通知を受けると、設定情報格納部114を参照して、最初に操作すべき操作集合を設定情報より読み取り、それをA0という変数に保持する(ステップS201)。
【0246】
次に、表示制御手段115は、領域情報格納部112を参照し、変数A0に保持されている操作集合の中心座標(移動可能領域の中心座標)を領域情報より取得し、P0という変数に保持する(ステップS202)。この変数P0が現在のカーソルの位置を保持している。
【0247】
そして、表示制御手段115は、変数A0に操作集合が保持されているか否かを判別する(ステップS203)。
【0248】
ステップS203で、変数A0に操作集合が保持されていないと判別したときには、表示制御手段115は、この操作入力システムを終了する。
【0249】
ステップS203で、変数A0に操作集合が保持されていると判別したときには、表示制御手段115は、変数A0に保持されている操作集合に対応した画像を画像情報格納部111から取得し、取得した画像をG0という変数に保持する(ステップS204)。
【0250】
次に、表示制御手段115は、変数A0に保持されている操作集合に含まれる操作領域のそれぞれについての選択回数からなる操作履歴情報を、操作履歴情報格納部119から取得する(ステップS205)。
【0251】
そして、表示制御手段115は、取得した操作履歴情報に基づき、前述した図28、図29または図30に例示したようにして、画像G0を変更したものを生成するようにする(ステップS206)。
【0252】
以上のようにして、変数P0、G0を取得し、さらに、操作履歴情報に基づいて動的に変更した画像を生成した後、表示制御手段115は、それらを基に画像とカーソルを表示部116に表示する(ステップS207)。すなわち、図9の例について説明すると、操作集合G0(A−Z)について操作履歴情報に基づいて変更された画像が表示画面に表示されると共に、その移動可能領域の中心位置を初期表示位置として、カーソルが表示される。つまり、この例では、カーソルは、最初から移動可能領域内に位置するようにされている。
【0253】
その後、表示制御手段115は、イベント判断手段118からのイベント情報を監視し、イベントが発生したか否か判別し(ステップS208)、イベントが発生しないと判別されると、何もしないで待機状態になる(ステップS209)。そして、ステップS208に戻る。
【0254】
イベント判断手段118によってイベント発生を検知すると、表示制御手段115は、そのイベント発生情報に基づいたイベント処理ルーチンを実行する(ステップS210) 。
【0255】
イベント処理が終了したら、表示制御手段115は、発生した決定イベントから、いずれの操作集合の操作領域について決定イベントであるかを判別し、判別結果の操作集合の操作領域についての選択回数をインクリメントすることで、操作履歴情報を更新する(ステップS211)。
【0256】
その後、ステップS203に戻り、このステップS203以降の処理を繰り返す。
【0257】
なお、イベント発生待ちのステップS208は、OSの割り込み処理で実現される。
【0258】
[第6の実施形態]
第1、第2の実施形態および第5の実施形態は、複数個の操作集合が、互いに重なりを持たない場合であり、また、第3の実施形態は、複数の操作集合が、一部重なりを有する場合であった。
【0259】
この第6の実施形態は、一つの操作集合の中に、他の操作集合が包含される場合である。そして、この第6の実施形態では、操作集合が無い場合に、何らかの操作をトリガーにして、カーソル付近にある操作領域を元に、動的に操作集合を生成するようにする。
【0260】
この第6の実施形態の概念図を、図32および図33に示す。
【0261】
図32は、一つの操作集合の中に、他の操作集合が包含される場合を示している。このような構造をネスト構造と称することとする。
【0262】
すなわち、操作集合20は、その移動可能領域21内に、操作集合30を包含する。操作集合20は、その移動可能領域21と重なり領域を有する複数個の操作領域22,23,24,25を含む。なお、21aは、移動可能領域21の移動境界を示している。
【0263】
そして、包含される操作集合30は、移動可能領域21内に設けられる移動可能領域31を有する。そして、操作集合30は、その移動可能領域31と重なり領域を有する複数個の操作領域32,33,34,35,36,37を含む。なお、31aは、移動可能領域31の移動境界を示している。
【0264】
次に、図33は、操作集合が存在していない状態においても、何らかの操作をトリガーにして、カーソル付近にある1または複数個の操作領域を元に、動的に操作集合を生成することを示す概念図である。
【0265】
ここで、トリガーとされる「何らかの操作」の例としては、移動可能領域内の特定の領域内にカーソルが持ち来たされたときや、カーソルが移動可能領域内の操作領域近傍にあるときにクリック動作をしたときなどが挙げられる。トリガーとされる「何らかの操作」の例としては、その他、種々の操作態様があることは言うまでもない。
【0266】
図33(A)においては、操作集合40の移動可能領域41内に、複数個の操作領域51〜59を包含している。なお、31aは、移動可能領域31の移動境界を示している。また、図33の例では、操作集合40は、移動可能領域41と重なり領域を有する複数個の操作領域42,43,44,45をも備える。
【0267】
そして、この例では、図33(B)に示すように、移動可能領域41内におけるカーソル1の位置に応じて、自動的に、移動可能領域61が生成されて操作集合60が生成される。図33(B)の例では、カーソル1が操作領域51,52,53,54の間の位置に持ち来たされたとき、移動境界61aを備える移動可能領域61が、これら操作領域51,52,53,54と重なり領域を有する状態の操作集合60を自動生成することを示している。
【0268】
次に、第6の実施形態の具体例として、テレビの電子番組表に適用した場合について説明する。テレビの電子番組表は、テレビ放送信号に重畳されているEPG(電子番組ガイド)情報や、インターネットなどを通じて取得されたEPG情報から生成される。
【0269】
図34および図35は、ネスト構造を有するテレビの電子番組表の例であり、これは、ディスプレイ画面108Dに表示された状態を示している。
【0270】
この例の電子番組表は、その外枠を移動境界71aとしてその内側を移動可能領域71とする操作集合70を備える。この操作集合70の移動可能領域71内には、番組表80が表示される。この実施形態では、後述するように、この番組表80内に、新たな操作集合90が動的に生成される。
【0271】
番組表80は、横方向を放送チャンネルとし、縦方向を放送時間として、複数の放送番組を表形式に示したものである。そして、図34および図35に示すように、番組表80においては、横方向に放送チャンネル名表示がなされると共に、縦方向に時間帯表示がなされる。
【0272】
そして、番組表80のうち、放送チャンネル名表示部分と時間帯表示部分を除く太線で示す枠81内には、それぞれの放送番組の説明欄(以下、放送番組欄という)82がマトリックス状に表示される。この放送番組欄82は、この実施形態では、後述するように、操作集合70に内包される操作集合90に含まれる操作領域のそれぞれを構成する。
【0273】
この例では、横方向の1チャンネル当たりの長さは等しく選定されているので、放送番組欄82、つまり、操作領域のそれぞれは、選択対象の番組の放送時間の長さに応じた大きさの領域となる。つまり、放送番組欄82のそれぞれは、10分番組であれば、10分分の縦方向の長さの領域となり、1時間番組であれば、1時間分の縦方向の長さの領域となる。
【0274】
操作集合70は、番組表80の周囲に、当該番組表80についての種々の変更が動作として割り付け設定されている8個の操作領域72,73,74,75,76,77,78,79を備える。
【0275】
操作領域72には、番組表80を「1時間前のものに変更する」動作が割り付けられている。操作領域73には、番組表80を「10チャンネル加えたチャンネルのものに変更する」動作が割り付けられている。操作領域74には、番組表80を「1チャンネル加えたチャンネルのものに変更する」動作が割り付けられている。操作領域75には、番組表80を「12時間後のものに変更する」動作が割り付けられている。操作領域76には、番組表80を「1時間後のものに変更する」動作が割り付けられている。操作領域77には、番組表80を「10チャンネル減算したチャンネルのものに変更する」動作が割り付けられている。操作領域78には、番組表80を「1チャンネル減算したチャンネルのものに変更する」動作が割り付けられている。操作領域79には、番組表80を「12時間前のものに変更する」動作が割り付けられている。
【0276】
この例の電子番組表においては、カーソル1の初期位置は、操作集合70の移動可能領域71内の任意の位置とされている。すなわち、カーソル1の初期位置は、操作集合70の操作領域72〜79のいずれかの位置であっても良いし、番組表80の枠81内の領域内の位置、例えば移動可能領域71の中心の位置であっても良い。
【0277】
前述したように、この例の電子番組表においては、最初は、操作集合90は生成されず、カーソル1は、移動可能領域71内の操作領域72〜79および番組表80を自由に移動できる。
【0278】
そして、この状態において、操作集合90の生成のトリガーとされる「何らかの操作」がなされると、そのときのカーソル1の位置に応じた位置に操作集合90が生成される。そして、操作集合90の移動可能領域が有効とされると、カーソル1は、その操作集合90の移動可能領域内でのみ移動するように移動制限される。
【0279】
ここで、この例におけるトリガーとされる「何らかの操作」は、例えば、
トリガー操作1…番組表80の枠81内で、カーソル1を移動させたこと
トリガー操作2…番組表80の枠81内で、クリック動作をしたこと
の2種類を例示することができる。
【0280】
トリガー操作1の例の場合には、カーソル1の微小な移動に応じて操作集合90を生成して、その画像を図34に示すように表示しても、その操作集合90の移動可能領域は、即座には有効としない。
【0281】
すなわち、トリガー操作1の場合には、カーソル1が番組表80の枠81内の領域を移動すると、それぞれのカーソル1の位置に応じて異なる操作集合90を逐次生成して表示する。しかし、その生成した操作集合90の移動可能領域は有効としない。したがって、カーソル1は、操作集合90の画像を表示しても、その可動可能領域内にのみに移動が制限されることはなく、このときにも、操作集合70の移動可能領域71内を、自由に移動可能である。
【0282】
つまり、トリガー操作1の場合には、番組表80の枠81内の領域でカーソル1を移動させると、カーソル1が少し動く毎に、動的に生成される操作集合90の図形自体はカーソル1の座標(周辺の番組欄)に応じて変化するものとなる。しかし、表示された操作集合90の移動可能領域は、無効となっている。
【0283】
しかし、使用者は、このカーソル1の移動に伴って図形が変化する操作集合90により、カーソル1の番組表80の枠81内の領域においては、カーソル1の位置に応じた番組選択用の操作集合90が生成されることを認識できることになる。
【0284】
そして、このトリガー操作1の例の場合には、使用者の有効設定操作により、操作集合90の移動可能領域を有効にするようにする。この有効設定操作は、以下に説明する例でば使用者によるマウスを用いたクリック操作としている。なお、この有効設定操作は、マウスのクリック操作に限られるものではなく、例えばカーソル1の一定時間以上の同一位置での停止するようにしても良い。
【0285】
このトリガー操作1の場合の例では、ESCボタンの操作は、生成された操作集合90を消去して、操作集合70のみの画面に戻る操作とされる。なお、このトリガー操作1の場合の例の場合、ESCボタンの操作は、移動可能領域が有効とされた操作集合90の移動可能領域の無効操作とされるようにしても良い。
【0286】
一方、トリガー操作2の例においては、トリガー操作2(クリック操作)を、使用者による明示的な操作集合90の生成依頼とすることができる。そこで、トリガー操作2の例の場合には、トリガー操作(クリック操作)があった場合には、操作集合90を生成して、その画像を図34に示すように表示すると共に、その操作集合90の移動可能領域を即座に有効として、カーソル1の移動を操作集合90の移動可能領域内に制限するようにする。
【0287】
このトリガー操作2の例の場合には、ESCボタンの操作は、生成された操作集合90を消去して、操作集合70のみの画面に戻る操作とされる。
【0288】
なお、動的に生成され、移動可能領域が有効にされた操作集合90における操作領域の選択および決定操作は、その選択決定された操作領域に対応する番組を選択決定するを意味するものとされる。
【0289】
次に、操作集合90の生成について説明する。操作集合90の生成に当たっては、先ず、この例においては、枠81内の領域におけるカーソル1の位置を中心として、放送番組欄の横方向の長さ(1チャンネル分の幅分)未満の半径Rの円を考える。そして、その円内に含まれる放送番組欄を操作領域として、操作集合90を動的に生成する。
【0290】
この操作集合90の動的な生成に当たっては、この例では、先ず、カーソル1の位置から、前記円内に含まれる放送番組欄の中心への直線を考え、その直線と前記半径Rの円とが交わる点を頂点とする形状の移動可能領域を生成する。
【0291】
図34に、カーソル1の位置に応じて生成される移動可能領域の幾つかの例を示す。カーソル1が位置91にある場合には、半径Rの円内には、5個の放送番組欄82が含まれ、破線で示すような5角形の移動可能領域が生成される。
【0292】
また、カーソル1が位置92にある場合には、半径Rの円内には、6個の放送番組欄(操作領域)82が含まれ、破線で示すような6角形の移動可能領域が生成される。
【0293】
また、カーソル1が位置93にある場合には、半径Rの円内には、3個の放送番組欄(操作領域)82が含まれ、破線で示すような3角形の移動可能領域が生成される。
【0294】
また、カーソル1が位置94にある場合には、半径Rの円内には、1個の放送番組欄(操作領域)82が含まれ、破線で示すように当該半径Rの円を移動可能領域とするように生成される。
【0295】
また、カーソル1が位置95にある場合には、半径Rの円内には、2個の放送番組欄(操作領域)82が含まれ、破線で示すような移動可能領域が生成される。
【0296】
こうして生成しようとする操作集合90の移動可能領域が生成されたら、当該移動可能領域の外枠の移動境界と、半径Rの円内に含まれる放送番組欄(操作領域)82のそれぞれの横線および縦線との交点と、カーソル位置とを直線で結ぶ。これにより、移動可能領域内に含まれる各放送番組欄82についての操作領域(重なり領域)を生成する。
【0297】
例えば図35は、カーソル1が位置91にある場合に生成された操作集合を示している。すなわち、前述したように、カーソル1が位置91にある場合には、位置91を中心とする半径Rの円内には、5個の放送番組欄82a,82b,82c,82d,82eが含まれ、移動境界91aを備える5角形の移動可能領域が生成される。
【0298】
そして、移動境界91aと、5個の放送番組欄82a,82b,82c,82d,82eの横線および縦線との交点と、位置91とを直線で結ぶ。これにより、5個の放送番組欄82a,82b,82c,82d,82eのそれぞれの放送番組の選択を動作として割り付け設定された操作領域が生成される。
【0299】
ところで、以上説明した動的な操作集合90の生成方法においては、生成された操作集合90に設定される操作領域の大きさは、放送番組欄の時間帯方向の大きさ、つまり放送時間長に応じたものとなってしまう。
【0300】
このため、放送時間長が短い放送番組を選択するときには、その選択操作がやりにくくなるおそれがある。
【0301】
図36は、上記の問題点を解決した動的な操作集合90の生成方法の例により生成された操作集合を示している。
【0302】
すなわち、図36の例もカーソル1が位置91にある場合において生成される操作集合90の例である。この例においては、移動可能領域の移動境界91aが生成されるまでの動作は、上述の図35の場合と同様である。
【0303】
この図36の例においては、動的な操作集合90の操作領域の生成の仕方が、図34の例の場合と異なる。
【0304】
すなわち、生成しようとする操作集合90の移動可能領域を生成したら、この移動可能領域を形成する多角形の各辺の中点位置を算出する。そして、カーソル位置91と、算出した各片の中点位置とを直線で結ぶ。これにより、移動可能領域内に含まれる5個の放送番組欄82a,82b,82c,82d,82eのそれぞれの放送番組の選択を動作として割り付け設定された操作領域が生成される。
【0305】
なお、図36に示すように、この例の場合、操作集合90に生成された操作領域のそれぞれが、放送番組欄82a,82b,82c,82d,82eのそれぞれに対応する領域であることを明確にするため、放送番組欄の横線および縦線も、移動境界上に算出した各片の中点位置と結線されるように、番組表が変更される。
【0306】
この図36の例によれば、生成された操作集合90の操作領域は、大きさが均等になるように生成される。したがって、放送時間の短い放送番組であっても、比較的容易に選択操作することができるようになる。
【0307】
また、図示は省略するが、操作集合90における操作領域を生成する際に、使用者の過去の操作集合90の操作領域についての操作履歴情報を参照するようにしても良い。
【0308】
すなわち、その場合には、図27の操作履歴情報格納部119には、放送番組が属するジャンル、例えばスポーツ、ニュース、映画、ドラマなどをのそれぞれ毎に、そのジャンルに属する番組の選択回数を、操作履歴情報として記憶するようにする。
【0309】
操作集合90において選択された操作領域に割り付けられている放送番組が属するジャンルが、例えばスポーツ番組であったときには、その番組選択操作後、ジャンル「スポーツ」についての選択回数をインクリメントするようにする。
【0310】
この場合に、選択された放送番組のジャンルの情報は、前述したEPG(電子番組ガイド)情報から取得して、判別することができる。
【0311】
そして、操作集合90の生成に際しては、その移動可能領域に含まれる複数の放送番組欄の放送番組のジャンルを、EPG情報から認識する。そして、操作履歴情報格納部119を参照して、認識したジャンルについての操作履歴情報から、それぞれの操作領域の大きさを、選択回数に応じた大きさとするようにして、操作集合90を生成するようにする。
【0312】
<第6の実施形態の電子番組表についての動作>
<<トリガー操作1の場合における動作説明>>
図37〜図40に、第6の実施形態の電子番組表についての動作例であって、操作集合90を生成するための操作が、トリガー操作1である場合を説明するためのフローチャートを示す。
【0313】
例えば、ディスプレイ108の表示画面に表示されている電子番組表入力システムのアイコンボタンをマウスでクリックするなどの起動イベントが発生すると、この実施形態の情報処理装置は、図37〜図40のフローチャートの処理ルーチンの実行を開始する。
【0314】
この図37〜図40のフローチャートの各ステップは、図8や図27の機能ブロック図における表示制御手段115が実行する処理となる。
【0315】
先ず、表示制御手段115は、この電子番組表入力システムについての起動イベントに基づいて、図34に示した電子番組表をディスプレイ108の画面108Dに表示する。このとき、カーソルは、操作集合70の移動可能領域71内の予め設定されている任意の位置に表示される(ステップS301)。このステップS301の処理は、図14のステップS101〜ステップS105の処理に対応するものである。
【0316】
その後、表示制御手段115は、イベント判断手段118からのイベント情報を監視し、イベントが発生したか否か判別し(ステップS302)、イベントが発生しないと判別されると、何もしないで待機状態になる(ステップS303)。そして、ステップS302に戻る。
【0317】
ステップS302で、イベントが発生したと判別したときには、表示制御手段115は、発生したイベントは、キーボードのESCボタンの押下であるか否か判別する(ステップS304)。
【0318】
ステップS304で、発生したイベントが、キーボードのESCボタンの押下であると判別したときには、表示制御手段115は、電子番組表を消去して、この例の操作入力システムの起動前の状態に戻る。これによって、この操作入力システムは終了となる。
【0319】
ステップS304で、発生したイベントが、キーボードのESCボタンの押下ではないと判別したときには、表示制御手段115は、現在のカーソル1の位置は、番組表80の枠81内か否か判別する(ステップS306)。
【0320】
ステップS306で、現在のカーソル1の位置は、番組表80の枠81内ではないと判別したときには、表示制御手段115は、発生したイベントは、カーソル移動イベントかクリックイベントかを判断する(図38のステップS311)。
【0321】
ステップS311で、発生したイベントはカーソル移動イベントであると判別したときには、表示制御手段115は、前述した図16および図17に示したカーソル位置制御処理および自動決定処理を行う(ステップS312)。
【0322】
そして、表示制御手段115は、ステップS312における自動決定処理において自動決定がなされたか否か判別する(ステップS313)。ステップS313で、自動決定がなされなかったと判別したときには、表示制御手段115は、カーソルの移動処理のみを行い(ステップS314)、ステップS302に戻る。
【0323】
また、ステップS313で、自動決定がなされたと判別したときには、表示制御手段115は、カーソル1により選択決定された操作領域に割り付けられている動作(領域動作)を選定する(ステップS315)。
【0324】
そして、表示制御手段115は、前述の図19に示した領域動作を実行する(ステップS316)。このとき選択決定される操作領域は、操作領域72〜79のいずれかであるので、ステップS316で実行される領域動作は、前述したように、操作領域72〜79のそれぞれに割り付け設定されている領域動作である。
【0325】
このステップS316の次には、表示制御手段115は、ステップS302に戻り、このステップS302以降の処理を繰り返す。
【0326】
また、ステップS311で、発生したイベントはカーソル移動イベントではなく、クリックイベントであると判別したときには、表示制御手段115は、前述の図18に示したクリックイベント処理を行って、クリック時にカーソルが位置していた操作領域に割り付けられている動作(領域動作)を選定する(ステップS317)。
【0327】
その後、表示制御手段115は、前述の図19に示した領域動作を実行する(ステップS316)。その後、表示制御手段115は、ステップS302に戻り、このステップS302以降の処理を繰り返す。
【0328】
また、ステップS306で、カーソル1の位置は、番組表80の枠81内であると判別したときには、表示制御手段115は、発生したイベントは、カーソル移動イベントかクリックイベントかを判断する(図39のステップS321)。
【0329】
ステップS321で、発生したイベントはカーソル移動イベントであると判別したときには、表示制御手段115は、カーソル1を移動させる(ステップS322)。
【0330】
そして、その移動後のカーソル1の位置に対応する新たな操作集合90を、上述したようにして動的に生成して、その画像を、番組表80上に表示する。ただし、このとき、新たに生成された操作集合90の移動可能領域は有効とはしない。つまり、生成した操作集合90は無効としておく(ステップS323)。そして、表示制御手段115は、ステップS302に戻り、このステップS302以降の処理を繰り返す。
【0331】
ステップS321で、発生したイベントはカーソル移動イベントではなく、クリックイベントであると判別すると、表示制御手段115は、表示中の操作集合90の移動可能領域を有効とする。つまり、操作集合90を有効とする。このとき、カーソル1は、操作集合90の移動可能領域内とする(ステップS324)。
【0332】
したがって、これ以後は、カーソル1は、生成されている操作集合90の移動可能領域内のみを移動可能となる。
【0333】
次に、表示制御手段115は、イベント判断手段118からのイベント情報を監視し、イベントが発生したか否か判別し(ステップS325)、イベントが発生しないと判別されると、何もしないで待機状態になる(ステップS326)。そして、ステップS325に戻る。
【0334】
ステップS325で、イベントが発生したと判別したときには、表示制御手段115は、発生したイベントは、キーボードのESCボタンの操作であるか否か判別する(ステップS327)。
【0335】
ステップS327で、発生したイベントは、キーボードのESCボタンの押下操作であると判別したときには、表示制御手段115は、表示画面108Dの電子番組表において、生成されて表示されていた操作集合90の画像を消去する。これにより、表示画面は、操作集合70のみの電子番組表が表示される状態に戻る(ステップS328)。そして、ステップS302に戻り、上述したステップS302以降の処理を繰り返す。
【0336】
また、ステップS327で、発生したイベントは、キーボードのESCボタンの押下操作ではないと判別したときには、表示制御手段115は、発生したイベントは、カーソル移動イベントかクリックイベントかを判断する(図40のステップS341)。
【0337】
ステップS341で、発生したイベントはカーソル移動イベントであると判別したときには、表示制御手段115は、前述した図16および図17に示したカーソル位置制御処理および自動決定処理を行う(ステップS342)。
【0338】
そして、表示制御手段115は、ステップS342における自動決定処理において自動決定がなされたか否か判別する(ステップS343)。ステップS343で、自動決定がなされなかったと判別したときには、表示制御手段115は、カーソル1の移動処理のみを行い(ステップS344)、ステップS302に戻る。
【0339】
また、ステップS343で、自動決定がなされたと判別したときには、表示制御手段115は、カーソル1により選択決定された操作領域に割り付けられている動作(領域動作)を選定する(ステップS345)。
【0340】
そして、表示制御手段115は、前述の図19に示した領域動作を実行する(ステップS346)。このとき選択決定される操作集合90の操作領域は、カーソル1の位置の近傍の番組欄80を選択決定するための操作領域のいずれかである。したがって、ステップS346で実行される領域動作は、前述したように、選択決定された操作領域に対応する番組欄の番組の選択の動作である。
【0341】
この電子番組表が、番組選局のために使用される場合には、番組の選択の動作は、当該番組を受信して、その番組をディスプレイ108に表示する動作となる。その場合には、このステップS346が終了すると、この例の図37〜図40の処理ルーチンは終了されて、電子番組表は消去され、ディスプレイ画面108Dには、選択された番組が表示される。
【0342】
また、この電子番組表が予約録画における番組選択のために利用される場合には、番組の選択の動作は、予約する番組の選択動作となる。その場合には、このステップS346が終了すると、この例の図37〜図40の処理ルーチンは終了されて、電子番組表は消去され、そして、予約録画操作の処理ルーチンに戻る。
【0343】
また、ステップS341で、発生したイベントはカーソル移動イベントではなく、クリックイベントであると判別したときには、表示制御手段115は、前述の図18に示したクリックイベント処理を行って、クリック時にカーソルが位置していた操作領域に割り付けられている動作(領域動作)を選定する(ステップS347)。
【0344】
その後、表示制御手段115は、ステップS346に進み、前述した領域動作を実行した後、この処理ルーチンを終了する。
【0345】
<<トリガー操作2の場合における動作説明>>
図41〜図43に、第6の実施形態の電子番組表についての動作例であって、操作集合90を生成するための操作が、トリガー操作2である場合を説明するためのフローチャートを示す。
【0346】
この例においても、ディスプレイ108の表示画面に表示されている電子番組表入力システムのアイコンボタンをマウスでクリックするなどの起動イベントが発生すると、この実施形態の情報処理装置は、図41〜図43のフローチャートの処理ルーチンの実行を開始する。
【0347】
また、図41〜図43のフローチャートの各ステップは、図8や図27の機能ブロック図における表示制御手段115が実行する処理となる。
【0348】
先ず、表示制御手段115は、この電子番組表入力システムについての起動イベントに基づいて、図34に示した電子番組表をディスプレイ108の画面108Dに表示する。このとき、カーソル1は、操作集合70の移動可能領域71内の予め設定されている任意の位置に表示される(ステップS351)。このステップS351の処理は、図14のステップS101〜ステップS105の処理に対応するものである。
【0349】
その後、表示制御手段115は、イベント判断手段118からのイベント情報を監視し、イベントが発生したか否か判別し(ステップS352)、イベントが発生しないと判別されると、何もしないで待機状態になる(ステップS353)。そして、ステップS352に戻る。
【0350】
ステップS352で、イベントが発生したと判別したときには、表示制御手段115は、発生したイベントは、キーボードのESCボタンの押下であるか否か判別する(ステップS354)。
【0351】
ステップS354で、発生したイベントが、キーボードのESCボタンの押下であると判別したときには、表示制御手段115は、電子番組表を消去して、この例の操作入力システムの起動前の状態に戻る。これによって、この操作入力システムは終了となる。
【0352】
ステップS354で、発生したイベントが、キーボードのESCボタンの押下ではないと判別したときには、表示制御手段115は、発生したイベントは、カーソル移動イベントかクリックイベントかを判断する(ステップS356)。
【0353】
ステップS356で、発生したイベントはカーソル移動イベントであると判別したときには、表示制御手段115は、前述した図16および図17に示したカーソル位置制御処理および自動決定処理を行う(ステップS357)。
【0354】
そして、表示制御手段115は、ステップS357における自動決定処理において自動決定がなされたか否か判別する(ステップS358)。ステップS358で、自動決定がなされなかったと判別したときには、表示制御手段115は、カーソルの移動処理のみを行い(ステップS359)、ステップS352に戻る。
【0355】
また、ステップS358で、自動決定がなされたと判別したときには、表示制御手段115は、カーソル1により選択決定された操作領域に割り付けられている動作(領域動作)を選定する(ステップS360)。
【0356】
そして、表示制御手段115は、前述の図19に示した領域動作を実行する(ステップS361)。このとき選択決定される操作領域は、操作領域72〜79のいずれかであるので、ステップS316で実行される領域動作は、前述したように、操作領域72〜79のそれぞれに割り付け設定されている領域動作である。
【0357】
このステップS316の次には、表示制御手段115は、ステップS352に戻り、このステップS352以降の処理を繰り返す。
【0358】
また、ステップS356で、発生したイベントはカーソル移動イベントではなく、クリックイベントであると判別したときには、表示制御手段115は、現在のカーソル1の位置は、番組表80の枠81内か否か判別する(図42のステップS371)。
【0359】
ステップS371で、現在のカーソル1の位置は、番組表80の枠81内ではないと判別したときには、表示制御手段115は、前述の図18に示したクリックイベント処理を行って、クリック時にカーソル1が位置していた操作領域に割り付けられている動作(領域動作)を選定する(ステップS372)。
【0360】
その後、表示制御手段115は、ステップS361に戻って、前述の図19に示した領域動作を実行する。その後、表示制御手段115は、ステップS352に戻り、このステップS352以降の処理を繰り返す。
【0361】
また、ステップS306で、カーソル1の位置は、番組表80の枠81内であると判別したときには、表示制御手段115は、そのときのカーソル1の位置に対応する新たな操作集合90を、上述したようにして動的に生成して、その画像を、番組表80上に表示する。このとき、新たに生成された操作集合90の移動可能領域は有効とし、カーソル1は、その生成した操作集合90の移動可能領域内のものとして表示する(ステップS373)。
【0362】
次に、表示制御手段115は、イベント判断手段118からのイベント情報を監視し、イベントが発生したか否か判別し(ステップS374)、イベントが発生しないと判別されると、何もしないで待機状態になる(ステップS375)。そして、ステップS374に戻る。
【0363】
ステップS374で、イベントが発生したと判別したときには、表示制御手段115は、発生したイベントは、キーボードのESCボタンの押下であるか否か判別する(ステップS376)。
【0364】
ステップS376で、発生したイベントが、キーボードのESCボタンの押下であると判別したときには、表示制御手段115は、番組選択用の操作集合90の画像を消去して、操作集合70のみの電子番組表の画面に戻す(ステップS377)。その後、ステップS352に戻り、このステップS352以降の処理を繰り返す。
【0365】
また、ステップS376で、発生したイベントが、キーボードのESCボタンの押下ではないと判別したときには、表示制御手段115は、発生したイベントは、カーソル移動イベントかクリックイベントかを判断する(図43のステップS381)。
【0366】
ステップS381で、発生したイベントはカーソル移動イベントであると判別したときには、表示制御手段115は、前述した図16および図17に示したカーソル位置制御処理および自動決定処理を行う(ステップS382)。
【0367】
そして、表示制御手段115は、ステップS382における自動決定処理において自動決定がなされたか否か判別する(ステップS383)。ステップS383で、自動決定がなされなかったと判別したときには、表示制御手段115は、カーソルの移動処理のみを行い(ステップS384)、ステップS374に戻る。
【0368】
また、ステップS383で、自動決定がなされたと判別したときには、表示制御手段115は、カーソル1により選択決定された操作領域に割り付けられている動作(領域動作)を選定する(ステップS385)。
【0369】
そして、表示制御手段115は、前述の図19に示した領域動作を実行する(ステップS386)。このとき選択決定される操作集合90の操作領域は、カーソル1の位置の近傍の番組欄80を選択決定するための操作領域のいずれかである。したがって、ステップS386で実行される領域動作は、前述したように、選択決定された操作領域に対応する番組欄の番組の選択を行う動作である。
【0370】
表示制御手段115は、このステップS386が終了すると、この処理ルーチンを終了する。
【0371】
また、ステップS381で、発生したイベントはカーソル移動イベントではなく、クリックイベントであると判別したときには、表示制御手段115は、前述の図18に示したクリックイベント処理を行って、クリック時にカーソルが位置していた操作領域に割り付けられている動作(領域動作)を選定する(ステップS387)。
【0372】
そして、表示制御手段115は、ステップS386に進み、前述した領域動作を実行した後、この処理ルーチンを終了する。
【0373】
[第7の実施形態]
以上説明した実施形態においては、操作集合の移動可能領域は、2次元平面に設けた場合である。しかし、操作集合の移動可能領域は、2次元平面領域に限らず、3次元空間領域とすることも可能である。第7の実施形態は、操作集合の移動可能領域が3次元空間領域とした場合である。
【0374】
この第7の実施形態の入力操作システムの例を説明する。
【0375】
詳細な図示は省略するが、例えば、図20の操作集合G11の移動可能領域を3次元空間領域とする場合について説明する。
【0376】
すなわち、この第7の実施形態の場合においては、操作集合G11の移動可能領域は、図20の紙面(2次元平面領域)のみならず、この紙面に垂直な方向(z軸方向)にも広がりがあるものとしている。
【0377】
そして、この例では、移動可能領域の空間形状として、z軸方向のプラス方向側(例えば紙面から離れる方向)に、一つの操作領域(プラス方向操作領域という)を設定する。また、z軸方向のマイナス方向側(例えば紙面に近づく方向)に、もう一つの操作領域(マイナス方向操作領域という)を設定する。
【0378】
そして、プラス方向操作領域には、例えば、操作集合G10に戻る動作を領域動作として割り付け設定する。また、プラス方向操作領域には、z軸方向のプラス方向側に1つの境界頂点を設け、その境界頂点あるいはその近傍を自動決定領域とするようにする。
【0379】
一方、マイナス方向操作領域には、例えば、この例の入力操作システムを自体を終了させる動作を領域動作として割り付け設定する。また、マイナス方向操作領域にも、z軸方向のマイナス方向側に1つの境界頂点を設け、その境界頂点あるいはその近傍を自動決定領域とするようにする。
【0380】
そして、この第7の実施形態における操作入力手段としては、ジャイロセンサ、加速度センサ、磁気センサ、イメージセンサなどの動きセンサによって、操作者の3次元空間における操作時の動きを検出するタイプのものを用いるようにする。また、操作者の手の動き(ジェスチャー)などをカメラ(撮像素子)で撮影したり、静電容量センサなどのセンサで検出したりし、その撮影画像や、センサ検出出力から操作者の操作方向や操作距離を検出し、その検出結果を操作情報とするような操作入力手段を用いることもできる。
【0381】
次に、第7の実施形態の他の例として、例えば図34の操作集合70の移動可能領域71を3次元空間領域とした場合には、次のようにすることができる。
【0382】
すなわち、操作集合70の移動可能領域71は、画面に平行な2次元平面領域のみならず、画面に垂直な方向(z軸方向)にも広がりを有するものとする。
【0383】
そして、この例では、3次元空間の移動可能領域71のz軸方向のプラス方向側(例えば画面から離れる方向)に、一つの操作領域(プラス方向操作領域という)を設定する。また、z軸方向のマイナス方向側(例えば画面に近づく方向)に、もう一つの操作領域(マイナス方向操作領域という)を設定する。
【0384】
そして、プラス方向操作領域には、例えば、電子番組表の日付を、1日後にする(+1日する)動作を領域動作として割り付け設定すると共に、プラス方向操作領域のz軸方向のプラス方向側に1つの境界頂点を設け、その境界頂点あるいはその近傍を自動決定領域とするようにする。
【0385】
また、マイナス方向操作領域には、例えば、電子番組表の日付を、1日前にする(−1日する)動作を領域動作として割り付け設定すると共に、マイナス方向操作領域のz軸方向のマイナス方向側に1つの境界頂点を設け、その境界頂点あるいはその近傍を自動決定領域とするようにする。
【0386】
この第7の実施形態によれば、操作者は、2次元平面上でのカーソル移動操作のみではなく、3次元空間におけるカーソル移動操作をすることができ、自動決定機能により、3次元空間に割り付け設定された操作領域を選択決定することができ、便利である。
【0387】
そして、上述のような3次元空間を利用する操作入力手段を用いた場合には、操作者の空間操作を検出して、その検出結果をカーソルの動きに反映することができる。
【0388】
そして、このような空間操作を用いる場合であっても、上述した実施形態の入力システムにおいては、
・支えがないので操作が不安定になると言う問題を、カーソルの移動制限機能により解消することができる
・決定しようとする操作によってカーソルが動いてしまい、うまく選択・決定できないことがあるという問題を、自動決定機能により解決できる
という効果がある。
【0389】
[実施形態の効果]
以上説明した実施形態によれば、以下のような効果を奏する。
【0390】
1.精度のいらない移動
上述の実施形態の情報処理装置からなる入力システムを用いることで、おおよその精度で動かしたカーソルが、操作したい所望の領域上に留まるように制御されるので、精度のいらないカーソルの移動が実現できる。これまで操作に慣れや精度を求められていたポインティングデバイスの使い易さを向上できる。
【0391】
2.移動の自由度を拡大
これまで移動精度の問題で使用できるポインティングデバイスが十字キーに限られていた領域に、マウスのような移動の自由度の高いデバイスを適用できるようになる。これにより、ユーザーが制御できる移動度が拡大できる。
【0392】
3.決定動作を簡略化できる
自動決定領域における自動決定機能を適用することで、クリック操作なしに動作を実行することができる。操作集合の中心から、自動決定領域のある操作集合の端まではカーソルを移動させるだけの余裕があるので、使用者の誤動作を抑えながら、より正確に使用者の意思を反映した操作を、クリック無しに行うことができる。
【0393】
4.“慣れ”、“習慣”をグラフィカル・ユーザ・インターフェースに還元できる
使用者の慣れや習慣を、図形の位置や形状、面積として、グラフィカル・ユーザ・インターフェースの操作に還元でき、使えば使うほど使用者の操作時間の短縮や誤操作の防止効果を高めることができる。
【0394】
また、操作領域ごとに設定できる自動決定モードを誤動作させたくない項目は「0ff」に、それ以外は「on」にすることで、個人の習慣、慣れに合った、グラフィカル・ユーザ・インターフェースを実現できる
5.直観操作
画面に表示されるものを指し示す、選びたい方向へ移動させる、という操作であるので、操作において特にあらかじめ習得しておくこと、記憶しておくべき使い方は存在せず、目の前のものを直観で操作できる。また、長押し、ジェスチャーなどの操作も必要ない。
【0395】
[その他の実施形態または変形例]
以上の実施形態では、実施形態の入力システムを立ち上げたときには、カーソルは、初期的に操作集合の移動可能領域内に位置するようにしたが、初期的には、カーソルは、操作集合の移動可能領域外に位置させるようにしてもよい。
【0396】
その場合には、使用者が、カーソルを操作集合の移動可能領域内に移動させたときから、カーソルの移動が、移動可能領域内に制限される。そして、カーソルを、移動可能領域外に移す場合には、例えば、ESCボタンや戻るボタンを操作するようにするとよい。戻るボタンの動作を、移動可能領域内の操作領域の一つに、動作として割り付けておくようにするとよい。
【0397】
なお、上述の第1〜第6の実施形態では、操作入力手段としては、マウスからなるポインティングデバイスおよびキーボードを用いるようにしたが、テレビ受信機などの電子機器においては、冒頭で説明したように、リモートコントローラを用いるようにしても、勿論よい。また、操作入力手段は、上述の実施形態で説明した例に限らず、種々の形態のものが使用できることは言うまでもない。
【符号の説明】
【0398】
1…カーソル、2…移動可能領域、2a…移動境界、3、3a,3b,3c,3d…操作領域、4a,4b,4c,4d…操作境界、6…境界頂点、10…決定領域、115…表示制御手段、116…表示部、117…操作入力手段、118…イベント判断手段

【特許請求の範囲】
【請求項1】
自領域内で決定と見なされる操作がなされたときに割り付けられた動作が実行されるようにされる操作領域の1または複数を含む操作領域画像を、設定されたカーソル移動可能領域と重なる状態で、表示画面に表示する画像表示ステップと、
前記カーソルが前記カーソル移動可能領域内にあるときに、操作入力手段からの移動操作入力に基づいた前記カーソルの前記表示画面上における移動予定位置を検出する検出ステップと、
前記検出ステップで検出された前記カーソルの移動予定位置が、前記カーソルの移動可能領域を超えるときであっても、前記カーソルは前記移動可能範囲内に位置するように制限する制限ステップと、
を備える情報処理方法。
【請求項2】
請求項1に記載の情報処理方法において、
前記画像表示ステップで前記操作領域画像が前記表示画面上に設定されるときには、前記カーソルの初期位置は、前記移動可能範囲内とされる
情報処理方法。
【請求項3】
請求項1または請求項2に記載の情報処理方法において、
前記カーソルの移動可能領域であって、前記操作領域内の特定位置または特定領域が決定位置または決定領域として設定され、前記決定位置または前記決定領域内に前記カーソルが位置したときに、前記操作領域で決定と見なされる操作がなされたと判定する決定判定ステップを備える
情報処理方法。
【請求項4】
請求項3に記載の情報処理方法において、
前記決定判定ステップを実行させるか否かは、前記操作領域毎に設定可能とされてなる
情報処理方法。
【請求項5】
請求項3に記載の情報処理方法において、
前記操作入力手段により指示されるカーソルの移動方向がおおよそ前記決定領域または前記決定領域に向かっているときに、前記カーソルの移動方向を前記決定領域または前記決定領域に向かうように前記カーソル位置を補正する補正ステップを備える
情報処理方法。
【請求項6】
請求項3に記載の情報処理方法において、
前記決定位置または前記決定領域は、前記操作領域内の前記カーソルの移動可能範囲の境界上または前記境界を含んで設定される
情報処理方法。
【請求項7】
請求項1または請求項2に記載の情報処理方法において、
領域の全てが前記カーソルの移動可能領域となっている前記操作領域の場合には、前記カーソルの移動境界が、当該操作領域内に設定される
情報処理方法。
【請求項8】
請求項1または請求項2に記載の情報処理方法において、
前記移動可能領域は、3次元空間領域である
情報処理方法。
【請求項9】
自領域内で決定と見なされる操作がなされたときに割り付けられた動作が実行されるようにされる操作領域の1または複数を含む操作領域画像を、設定されたカーソル移動可能領域と重なる状態で、表示画面に表示する画像表示手段と、
前記カーソルが前記カーソル移動可能領域内にあるときに、操作入力手段からの移動操作入力に基づいた前記カーソルの前記表示画面上における移動予定位置を検出する検出手段と、
前記検出手段で検出された前記カーソルの移動予定位置が、前記カーソルの移動可能領域を超えるときであっても、前記カーソルは前記移動可能範囲内に位置するように制限する制限手段と、
を備える情報処理装置。
【請求項10】
所定の動作がそれぞれ割り付けられる領域であって、使用者により、当該領域内で決定と見なされる操作がなされることにより、当該領域に割り付けられた前記動作が実行されるようにされる1または複数の操作領域が、カーソルの移動可能領域と重なる状態で設定され、
前記カーソルが前記移動可能領域内にある状態から、使用者による前記カーソルの移動操作指示に応じて前記カーソルが移動させられたときに、前記移動可能領域の境界を越えて移動しないように、前記カーソルの移動が制限される
カーソル移動制御方法。
【請求項11】
情報処理装置が備えるコンピュータを、
自領域内で決定と見なされる操作がなされたときに割り付けられた動作が実行されるようにされる操作領域の1または複数を含む操作領域画像を、設定されたカーソル移動可能領域と重なる状態で、表示画面に表示する画像表示手段、
前記カーソルが前記カーソル移動可能領域内にあるときに、操作入力手段からの移動操作入力に基づいた前記カーソルの前記表示画面上における移動予定位置を検出する検出手段、
前記検出ステップで検出された前記カーソルの移動予定位置が、前記カーソルの移動可能領域を超えるときであっても、前記カーソルは前記移動可能範囲内に位置するように制限する制限手段、
として機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図41】
image rotate

【図42】
image rotate

【図43】
image rotate


【公開番号】特開2011−48422(P2011−48422A)
【公開日】平成23年3月10日(2011.3.10)
【国際特許分類】
【出願番号】特願2009−193862(P2009−193862)
【出願日】平成21年8月25日(2009.8.25)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】