(57)【特許請求の範囲】
【請求項１】
表示装置と、
前記表示装置の画面上に重畳させて配置されるタッチパネルと、
前記タッチパネル上でタッチ操作が行われた場合、このタッチ操作が表示画像中の任意の位置を拡大表示する旨を指示するための特定のタッチ操作か否かを判定して、前記タッチパネル上で前記特定のタッチ操作が行われたことを検知する検知手段と、
前記検知手段によって前記特定のタッチ操作が検知された場合、その操作位置に基づいて決定される前記表示画像中の部分画像を、その操作位置に重なるように前記表示画像上に重畳させて拡大表示する拡大表示手段と、
前記拡大表示手段によって拡大表示された部分画像の表示領域に対応する前記タッチパネル上の領域内でタッチ操作が行われた場合、この拡大表示された部分画像上での操作位置を前記表示画像上の位置に補正して当該タッチ操作を受け付ると共に、前記拡大表示手段による部分画像の拡大表示を解除するタッチ操作制御手段と、
を具備し、
前記タッチ操作制御手段は、前記タッチパネル上でタッチ操作が行われた際、このタッチ操作が前記検知手段によって前記特定のタッチ操作ではないと判定された場合、前記表示画像上の位置で当該タッチ操作を受け付ける
情報処理装置。
【請求項２】
前記検知手段によって前記特定のタッチ操作が検知された場合における前記拡大表示手段による部分画像の拡大表示を無効化して、前記特定のタッチ操作を受け付けるプログラムを登録するためのユーザインタフェース手段をさらに具備する請求項１記載の情報処理装置。
【請求項３】
前記ユーザインタフェース手段は、前記特定のタッチ操作が行われたとして前記検知手段に検知させるタッチ操作の種類を設定する手段を有する請求項２記載の情報処理装置。
【請求項４】
前記ユーザインタフェース手段は、前記拡大表示手段が部分画像を拡大表示する際の拡大率を設定する手段を有する請求項２記載の情報処理装置。
【請求項５】
前記検知手段は、複数本の指によるタッチ操作が行われた場合に前記特定のタッチ操作が行われたと判定する請求項１記載の情報処理装置。
【請求項６】
前記検知手段は、前記タッチパネル上の予め定められた位置でタッチ操作が行われている状態でさらにタッチ操作が行われた場合に前記特定のタッチ操作が行われたと判定する請求項１記載の情報処理装置。
【請求項７】
キーボードを具備し、
前記前記検知手段は、前記キーボード上の所定のキーが押下されている状態でさらにタッチ操作が行われた場合に前記特定のタッチ操作が行われたと判定する請求項１記載の情報処理装置。
【請求項８】
ハードボタンを具備し、
前記前記検知手段は、前記ハードボタンが押下されている状態でさらにタッチ操作が行われた場合に前記特定のタッチ操作が行われたと判定する請求項１記載の情報処理装置。
【請求項９】
前記タッチ操作制御手段は、前記拡大表示手段によって拡大表示された部分画像の表示領域に対応する前記タッチパネル上の領域内で２本の指で直線を引くような摺動操作が行われた場合、前記拡大表示手段が部分画像を拡大表示する対象とする前記表示画像中の領域を前記摺動操作の摺動方向に移動させる手段を有する請求項１記載の情報処理装置。
【請求項１０】
前記タッチ操作制御手段は、前記拡大表示手段によって拡大表示された部分画像の表示領域に対応する前記タッチパネル上の領域内で２本の指を広げるような摺動操作が行われた場合、前記表示領域を拡大し、または、前記表示領域に表示する部分画像の拡大率を大きくする手段を有する請求項１記載の情報処理装置。
【請求項１１】
前記拡大表示手段は、拡大表示する部分画像上に配置される操作用のオブジェクトのサイズに基づき、前記部分画像の拡大率を決定する手段を有する請求項１記載の情報処理装置。
【請求項１２】
前記タッチ操作制御手段は、拡大表示する部分画像上に配置される操作用のオブジェクトを対象としたタッチ操作が行われた場合に、前記タッチ操作の受け付けおよび拡大表示の解除を行う請求項１記載の情報処理装置。
【請求項１３】
表示装置と、前記表示装置の画面上に重畳させて配置されるタッチパネルと、を具備する情報処理装置を、
前記タッチパネル上でタッチ操作が行われた場合、このタッチ操作が表示画像中の任意の位置を拡大表示する旨を指示するための特定のタッチ操作か否かを判定して、前記タッチパネル上で前記特定のタッチ操作が行われたことを検知する検知手段、
前記検知手段によって前記特定のタッチ操作が検知された場合、その操作位置に基づいて決定される表示画像中の部分画像を、その操作位置に重なるように前記表示画像上に重畳させて拡大表示する拡大表示手段、
前記拡大表示手段によって拡大表示された部分画像の表示領域に対応する前記タッチパネル上の領域内でタッチ操作が行われた場合、この拡大表示された部分画像上での操作位置を前記表示画像上の位置に補正して当該タッチ操作を受け付ると共に、前記拡大表示手段による部分画像の拡大表示を解除するタッチ操作制御手段、
として機能させるプログラムであって、
前記タッチ操作制御手段は、前記タッチパネル上でタッチ操作が行われた際、このタッチ操作が前記検知手段によって前記特定のタッチ操作ではないと判定された場合、前記表示画像上の位置で当該タッチ操作を受け付ける
タッチ操作支援プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えばタブレットＰＣ（Personal Computer）などと称される表示画面上でのタッチ操作が可能な情報処理装置に好適なユーザインタフェース技術に関する。
【背景技術】
【０００２】
近年、デスクトップタイプやノートブックタイプなど、様々なタイプのＰＣが広く利用されている。この種のＰＣでは、キーボードやマウス等の操作を介してユーザからの指示を受け付けることが一般的であるが、最近では、タッチパネルを搭載して、（指やペンなどによる）表示画面上でのタッチ操作を介してユーザからの指示を受け付けることのできるＰＣが普及し始めている。この表示画面上でのタッチ操作が可能なＰＣは、例えばタブレットＰＣなどと称されている。
【０００３】
そして、このタブレットＰＣの普及に伴って、表示画面上でのタッチ操作を快適に行えるようにするための仕組みが種々提案されている（例えば特許文献１等参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１４６１３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
この特許文献１に記載の表示制御装置は、表示画像中の指定された部分を拡大表示する機能を備える。マルチウィンドウ表示が一般的に行われ、また、ディスプレイ装置の高解像度化が進む今日では、例えば操作ボタンが小さく表示されてしまい、複数の操作ボタンが密集する領域でのタッチ操作時に、意図しない操作ボタンを押下してしまうということも多かった。そのため、この拡大表示機能を利用すれば、このような領域を拡大表示させてタッチ操作を行うことができるので、使い勝手を向上させることができる。
【０００６】
しかしながら、この特許文献１に記載の表示制御装置では、タッチ操作に応じて拡大表示する領域が固定的に定められるので、拡大表示させる意思のないユーザがタッチ操作を行った場合も、拡大表示が一律に行われてしまい、ユーザによっては、却って使い勝手を損なってしまうおそれもある。
【０００７】
また、拡大表示された画像上でタッチ操作を行った後、この拡大表示を解除するための何らかの操作が別途必要となるものと推測され、この点においても、使い勝手を向上させる余地を残している。
【０００８】
この発明は、このような事情を考慮してなされたものであり、タッチパネル上でのタッチ操作の利便性をより向上させることを実現した情報処理装置およびタッチ操作支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
実施形態によれば、情報処理装置は、表示装置と、前記表示装置の画面上に重畳させて配置されるタッチパネルと、前記タッチパネル上でタッチ操作が行われた場合、このタッチ操作が表示画像中の任意の位置を拡大表示する旨を指示するための特定のタッチ操作か否かを判定して、前記タッチパネル上で前記特定のタッチ操作が行われたことを検知する検知手段と、前記検知手段によって前記特定のタッチ操作が検知された場合、その操作位置に基づいて決定される表示画像中の部分画像を、その操作位置に重なるように前記表示画像上に重畳させて拡大表示する拡大表示手段と、前記拡大表示手段によって拡大表示された部分画像の表示領域に対応する前記タッチパネル上の領域内でタッチ操作が行われた場合、この拡大表示された部分画像上での操作位置を前記表示画像上の位置に補正して当該タッチ操作を受け付ると共に、前記拡大表示手段による部分画像の拡大表示を解除するタッチ操作制御手段と、を具備し、前記タッチ操作制御手段は、前記タッチパネル上でタッチ操作が行われた際、このタッチ操作が前記検知手段によって前記特定のタッチ操作ではないと判定された場合、前記表示画像上の位置で当該タッチ操作を受け付ける。
【発明の効果】
【００１０】
この発明によれば、タッチパネル上でのタッチ操作の利便性をより向上させることを実現できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態に係る情報処理装置の外観図
【図２】同実施形態の情報処理装置のシステム構成を示す図
【図３】同実施形態の情報処理装置上で動作するタッチ操作支援ユーティリティによるユーザ支援の概要を説明するための第１の概念図
【図４】同実施形態の情報処理装置上で動作するタッチ操作支援ユーティリティによるユーザ支援の概要を説明するための第２の概念図
【図５】同実施形態の情報処理装置上で動作するタッチ操作支援ユーティリティによるユーザ支援の動作原理を説明するための機能ブロック図
【図６】同実施形態の情報処理装置上で動作するタッチ操作支援ユーティリティによるユーザ支援の動作の流れを示すフローチャート
【発明を実施するための形態】
【００１２】
以下、図面を参照して、この発明の一実施形態を説明する。
【００１３】
図１は、本実施形態に係る情報処理装置の外観図である。この情報処理装置は、ノートブックタイプのタブレットＰＣ（コンピュータ１０）として実現されている。
【００１４】
図１に示すように、本コンピュータ１０は、コンピュータ本体１と、ディスプレイユニット２とから構成される。ディスプレイユニット２には、ＬＣＤ（Liquid Crystal Display）３とタッチパネル４とが重ね合わせた状態で組み込まれている。そして、このディスプレイユニット２は、コンピュータ本体１に対し、コンピュータ本体１の上面が露出される開放位置とコンピュータ本体１の上面を覆う閉塞位置との間を回動自在に取り付けられている。
【００１５】
一方、ディスプレイユニット２が回動自在に取り付けられるコンピュータ本体１は、薄い箱形の筐体を有しており、その上面には、キーボード５、タッチパッド６、マウスボタン７、スピーカ８Ａ，８Ｂ等が配置されている。
【００１６】
図２は、本コンピュータ１０のシステム構成を示す図である。図２に示すように、本コンピュータ１０は、ＣＰＵ（Central Processing Unit）１１、ＭＣＨ（Memory Controller Hub）１２、主メモリ１３、ＩＣＨ（I/o Controller Hub）１４、ＧＰＵ（Graphics Processing Unit：表示コントローラ）１５、ビデオメモリ（VRAM）１５Ａ、サウンドコントローラ１６、ＢＩＯＳ（Basic Input/Output System）−ＲＯＭ（Read Only Memory）１７、ＬＡＮ（Local Area Network）コントローラ１８、ＨＤＤ（Hard Disk Drive）１９、ＯＤＤ（Optical Disc Drive）２０、無線ＬＡＮコントローラ２１、IEEE 1394コントローラ２２、ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）２３、ＥＣ／ＫＢＣ（Embedded Controller/KeyBoard Controller）２４等を備えている。
【００１７】
ＣＰＵ１１は、本コンピュータ１０の動作を制御するプロセッサであり、ＨＤＤ１９やＯＤＤ２０から主メモリ１３にロードされる各種プログラムを実行する。このＣＰＵ１１によって実行される各種プログラムの中には、リソース管理を司るＯＳ１００や、ＯＳ１００の配下で動作する各種アプリケーションプログラム２００などが存在する。また、本コンピュータ１０では、後述するタッチ操作支援ユーティリティ１５０が、常駐プログラムとして、（各種アプリケーションプログラム２００と同様に）ＯＳ１００の配下で動作する。なお、ＣＰＵ１１は、ＢＩＯＳ−ＲＯＭ１７に格納されたＢＩＯＳも実行する。ＢＩＯＳは、ハードウェア制御のためのプログラムである。
【００１８】
ＭＣＨ１２は、ＣＰＵ１１とＩＣＨ１４との間を接続するブリッジとして動作すると共に、主メモリ１３をアクセス制御するメモリコントローラとして動作する。また、ＭＣＨ１２は、ＧＰＵ１５との通信を実行する機能を有している。
【００１９】
ＧＰＵ１５は、ディスプレイユニット２に組み込まれたＬＣＤ３を制御する表示コントローラである。ＧＰＵ１５は、ビデオメモリであるＶＲＡＭ１５Ａを有し、また、各種プログラムが表示しようとする画像をＣＰＵ１１に代わって描画するアクセラレータを搭載する。
【００２０】
ＩＣＨ１４は、ＰＣＩ（Peripheral Component Interconnect）バス上の各デバイスおよびＬＰＣ（Low Pin Count）バス上の各デバイスを制御する。ＩＣＨ１４は、ＨＤＤ１９およびＯＤＤ２０を制御するためのＩＤＥ（Integrated Device Electronics）コントローラを内蔵する。また、ＩＣＨ１４は、サウンドコントローラ１６やＬＡＮコントローラ１８との通信を実行する機能も有している。
【００２１】
サウンドコントローラ１６は音源デバイスであり、各種プログラムが再生対象とするオーディオデータをスピーカ等に出力する。
【００２２】
ＬＡＮコントローラ１８は、例えばIEEE 802.3規格の有線通信を実行する有線通信デバイスである。一方、無線ＬＡＮコントローラ２１は、例えばIEEE 802.11規格の無線通信を実行する無線通信デバイスである。また、IEEE 1394コントローラ２２は、IEEE 1394規格のシリアルバスを介して外部機器との通信を実行する。
【００２３】
ＥＥＰＲＯＭ２３は、例えば本コンピュータ１０の識別情報などを格納するためのメモリデバイスである。
【００２４】
そして、ＥＣ／ＫＢＣ２４は、電力管理を行うためのエンベデッドコントローラと、タッチパネル４、キーボード５、タッチパッド６またはマウスボタン７の操作によるデータ入力を制御するためのキーボードコントローラとが集積された１チップＭＰＵ（Micro Processing Unit）である。
【００２５】
次に、図３および図４を参照して、以上のような構成をもつ本コンピュータ１０上で動作するタッチ操作支援ユーティリティ１５０によるユーザ支援の概要を説明する。
【００２６】
図１および図２に示したように、本コンピュータ１０は、ユーザの操作によるデータ入力を、タッチパネル４、キーボード５、タッチパッド６、マウスボタン７を介して受け付けることができる。タッチ操作支援ユーティリティ１５０は、このうち、タッチパネル４による操作を、ユーザがより快適に行えるようにするためのプログラムである。
【００２７】
いま、図３に示すように、（タッチパネル４が重ね合わせられる）ＬＣＤ３上に、ウィンドウａ１〜ａ３の３つのウィンドウが表示されているものと想定する（マルチウィンドウ表示）。そのため、ウィンドウａ３の右上端部（領域ｂ）に配置された操作ボタン群が小さく表示されてしまっている。
【００２８】
そして、このような状況下において、あるユーザ（ユーザＡ）は、ウィンドウａ３の領域ｂ内のいずれかの操作ボタンをペンを利用してタッチ操作を行おうとし、また、別のユーザ（ユーザＢ）は、指先でタッチ操作を行おうとしているものと想定する。
【００２９】
この場合、ピンポイントで位置を指定できるユーザＡのタッチ操作と比較して、ユーザＢのタッチ操作において誤操作が発生するおそれが大きい。より具体的には、意図した操作ボタンではなく、その隣の操作ボタンが押下されたものとして受け付けられてしまうといったことが起きる可能性が高い。また、ペンの場合は、その構造上、画面に近づけると（触る前に）カーソルが表示されるものが存在し、このようなペンを利用する場合は正確なタッチが容易となる。これに対して、指の場合は、触る前にカーソルが表示されることがないため、正確なタッチが難しい。従って、一時的に、このウィンドウａ３の領域ｂ周辺を拡大表示してタッチ操作することができれば、このような誤操作を未然に防ぐことができるので便利である。一方、ユーザＡは、ウィンドウａ３の領域ｂ内をダイレクトに操作する方が効率的である。そこで、タッチ操作支援ユーティリティ１５０は、第１に、例えばマルチタッチの一形態であるツーフィンガータップ（2-finger tap）などの特定のタッチ操作が行われた場合に、その特定のタッチ操作が行われた位置を基点とした周辺領域を拡大表示する機能を提供する。図４は、図３に示すウィンドウａ３の領域ｂ内で特定のタッチ操作が行われたことにより、タッチ操作支援ユーティリティ１５０が拡大表示ウィンドウａ４を表示した様子を示している。
【００３０】
なお、特定のタッチ操作としては、例えば２本の指を同時にタッチパネル４上に触れさせる形態のほか、例えば表示画面上の左下端部などの予め定められた位置に１本の指をタッチさせた状態で、さらに別の指を表示画面上にタッチさせるといった形態も適用することが可能である。この場合、別の指によるタッチ操作の位置を拡大表示を指示する位置として採用する。また、特定の（キーボード５上の）キーとタッチの組み合わせや、その他のハードボタンとタッチの組み合わせも適用可能である。
【００３１】
もし、ウィンドウａ３の領域内での操作が特定のタッチ操作でなかった場合、この拡大表示を指示するための操作ではなく、ウィンドウａ３上での通常のタッチ操作として受け付けられる。よって、ユーザＡのダイレクト操作も可能となる。即ち、タッチ操作支援ユーティリティ１５０は、拡大表示を指示するための特定のタッチ操作が意図的に行われたことに応答して、その位置の周辺領域の拡大表示を実行する。
【００３２】
また、この図４に示す拡大表示ウィンドウａ４上でのタッチ操作は、ウィンドウａ３上でのタッチ操作を一時的に代替するものである。そこで、タッチ操作支援ユーティリティ１５０は、第２に、この代替的なタッチ操作が行われたならば、拡大表示ウィンドウａ４の表示を自動的に解除する機能を提供する。
【００３３】
図５は、タッチ操作支援ユーティリティ１５０によるユーザ支援の動作原理を説明するための機能ブロック図である。
【００３４】
前述したように、タッチパネル４の操作によるデータ入力は、ＥＣ／ＫＢＣ２４によって制御され、ＬＣＤ３による画像表示は、ＧＰＵ１５によって制御される。この（ハードウェアである）ＥＣ／ＫＢＣ２４およびＧＰＵ１５をソフトウェアで制御するためのプログラムとして、本コンピュータ１０上では、タッチパネルドライバ１１１およびディスプレイドライバ１１２が動作する。
【００３５】
各種アプリケーションプログラム２００は、操作ボタン等を含む画面を、ディスプレイドライバ１１２を介して（ＧＰＵ１５経由で）ＬＣＤ３に表示する。各種アプリケーションプログラム２００によってＬＣＤ３に表示された画面上、つまりタッチパネル４上でユーザがタッチ操作を行うと、その旨が（ＥＣ／ＫＢＣ２４経由で）タッチパネルドライバ１１１を介してＯＳ１００に通知される。
【００３６】
ＯＳ１００は、タッチジェスチャ記憶部１０１を有しており、タッチパネルドライバ１１１から通知されたタッチパネル４のタッチ操作について、１本の指またはペンで目的の位置を指し示すシングルタッチだけではなく、例えば２本の指またはペンで同時にタッチパネル４に触れるツーフィンガータップなどの種々の形態のマルチタッチが行われたことを判定することができる（ジェスチャ判定）。そして、ＯＳ１００は、そのタッチ操作が行われた位置でウィンドウ表示を行っているプログラムに対して、例えばシングルタッチが行われたならば、シングルタッチが行われたこと、および、その位置を示すイベント通知を送信する。
【００３７】
タッチ操作支援ユーティリティ１５０は、このＯＳ１００が各種アプリケーションプログラム２００に対して送信する（タッチ操作に関する）イベント通知を横取り（フック）する。常駐プログラムであるタッチ操作支援ユーティリティ１５０は、本コンピュータ１０の起動時に同期的に起動する際、初期処理として、ＯＳ１００に対して、（タッチ操作に関する）イベント通知を自分宛てに送信するように要求する。そして、以降、タッチ操作支援ユーティリティ１５０は、このフックしたイベント通知が特定のタッチ操作が行われたことを示すものであった場合に、当該イベント通知で示される位置を基点とした周辺領域の拡大表示を実行する。
【００３８】
そのために、タッチ操作支援ユーティリティ１５０は、制御部１５１、拡大ウィンドウ提示部１５２およびタッチ操作処理部１５３を有している。
【００３９】
制御部１５１は、前述したイベント通知をフックするための手続きを行うほか、ユーザが各種設定を行うためのユーザインタフェースを提供する。より具体的には、拡大表示を指示するための特定のタッチ操作の種類をユーザが選択できるようにする。制御部１５１は、タッチジェスチャ記憶部１０１に基づいてＯＳ１００が判定可能なジェスチャを選択肢として提示して、その中からいずれかのジェスチャを拡大表示を指示するための特定のタッチ操作として選択させる。また、制御部１５１は、この拡大表示が行われる際の拡大率をユーザが任意に調整できるようにする。
【００４０】
拡大ウィンドウ提示部１５２は、特定のタッチ操作が行われた位置を基点とした周辺領域の拡大画像を生成し、ディスプレイドライバ１１２を介して（ＧＰＵ１５経由で）ＬＣＤ３に表示するモジュールである。制御部１５１は、フックしたイベント通知が特定のタッチ操作が行われたことを示すものであった場合、当該イベント通知で示される位置を拡大ウィンドウ提示部１５２に通知する。なお、フックしたイベント通知が特定のタッチ操作以外のタッチ操作が行われたことを示すものであった場合、制御部１５１は、そのイベント通知を本来の通知先である各種アプリケーションプログラム２００に中継する。
【００４１】
制御部１５１から位置情報を通知された拡大ウィンドウ提示部１５２は、ＯＳ１００に対して、（通知された位置への）拡大表示ウィンドウａ４の確保を要求すると共に、ＧＰＵ１５がＶＲＡＭ１５Ａに格納している、その位置を基点とした周辺領域の画像データをディスプレイドライバ１１２を介して取得し、その拡大画像を生成して、確保された拡大表示ウィンドウａ４に表示すべくディスプレイドライバ１１２に転送する。
【００４２】
拡大ウィンドウ提示部１５２によって拡大表示ウィンドウａ４が提示された後、イベント通知をフックした制御部１５１は、その位置情報に基づき、タッチ操作が拡大表示ウィンドウａ４内で行われたものか否かを判断する。もし、拡大表示ウィンドウａ４内であれば、制御部１５１は、そのイベント通知をタッチ操作処理部１５３に転送し、一方、拡大表示ウィンドウａ４内でなければ、制御部１５１は、そのイベント通知を本来の通知先である各種アプリケーションプログラム２００に中継する。
【００４３】
タッチ操作処理部１５３は、制御部１５１から転送されたイベント通知で示される（拡大表示ウィンドウａ４内の）位置に対応する、（拡大表示対象となった）特定のタッチ操作が行われた位置を基点とした周辺領域内の位置を算出し、イベント通知を算出した位置に補正して、この修正後のイベント通知を、特定のタッチ操作が行われた位置でウィンドウ表示を行っているアプリケーションプログラム２００に中継する。そして、この中継が完了すると、タッチ操作処理部１５３は、ＯＳ１００に対して、拡大ウィンドウ提示部１５２が確保した拡大ウィンドウａ４の解放を要求する。
【００４４】
このように、タッチ操作支援ユーティリティ１５０は、拡大表示を希望するユーザに対して、目的の部分画像を拡大表示し、かつ、この拡大表示した部分画像上でのタッチ操作を契機として、当該拡大表示を自動的に解除する機能を提供する。
【００４５】
図６は、タッチ操作支援ユーティリティ１５０によるユーザ支援の動作の流れを示すフローチャートである。
【００４６】
タッチ操作支援ユーティリティ１５０は、まず、ＯＳ１００に対して、タッチパネル４上でのタッチ操作に関するイベント通知を自分宛てに送信するように要求する（ステップＡ１）。
【００４７】
その後、タッチ操作支援ユーティリティ１５０は、タッチパネル４上でのタッチ操作に関するイベント通知を待機し（ステップＡ２）、イベント通知がＯＳ１００から送信されてきたら（ステップＡ２のＹＥＳ）、まず、拡大表示を指示する特定のタッチ操作か否かを判定する（ステップＡ３）。特定のタッチ操作ではない場合（ステップＡ３のＮＯ）、タッチ操作支援ユーティリティ１５０は、そのイベント通知を、タッチ操作位置でウィンドウ表示を行っている本来の通知先であるプログラムに中継する（ステップＡ４）。
【００４８】
一方、特定のタッチ操作であった場合（ステップＡ３のＹＥＳ）、タッチ操作支援ユーティリティ１５０は、タッチ操作位置を基点とした周辺領域の拡大表示を行い（ステップＡ５）、さらに、タッチパネル４上でのタッチ操作に関するイベント通知を待機する（ステップＡ６）。
【００４９】
イベント通知がＯＳ１００から送信されてきたら（ステップＡ６のＹＥＳ）、タッチ操作支援ユーティリティ１５０は、今度は、そのタッチ操作位置が拡大表示領域上か否かを判定する（ステップＡ７）。拡大表示領域上ではない場合（ステップＡ７のＮＯ）、タッチ操作支援ユーティリティ１５０は、そのイベント通知を、タッチ操作位置でウィンドウ表示を行っている本来の通知先であるプログラムに中継し（ステップＡ８）、引き続き、タッチパネル４上でのタッチ操作に関するイベント通知を待機する。
【００５０】
一方、タッチ操作位置が拡大表示領域上であった場合（ステップＡ７のＹＥＳ）、タッチ操作支援ユーティリティ１５０は、拡大表示領域上でのタッチ操作位置に対応する拡大表示対象領域内の位置、つまり、本来の表示領域上での位置を算出し（ステップＡ９）、ＯＳ１００から送信されたイベント通知を、この算出した位置に補正した上で、本来の通知先であるプログラムに中継する（ステップＡ１０）。そして、この補正後のイベント通知の中継が完了すると、タッチ操作支援ユーティリティ１５０は、拡大表示の解除をＯＳ１００に要求する（ステップＡ１１）。
【００５１】
以上のように、本コンピュータ１０は、タッチパネル４上でのタッチ操作の利便性をより向上させることを実現する。
【００５２】
なお、タッチ操作支援ユーティリティ１５０の制御部１５１は、ユーザが各種設定を行うためのユーザインタフェースを提供するが、このユーザインタフェースによって、さらに、特定のタッチ操作に伴う拡大表示の機能を無効にするアプリケーションプログラムをユーザが設定できるようにすることも有効である。
【００５３】
これは、例えばゲームソフトウェア等において、（拡大表示を指示する）特定のタッチ操作に特別の意味を持たせている場合に対処するためである。この設定を行うことで、そのアプリケーションプログラムの表示画面上で特定のタッチ操作が行われた場合に、ユーザが意図しない拡大表示が行われてしまうことを防止できる。
【００５４】
また、前述の説明では、タッチ操作支援ユーティリティ１５０の制御部１５１が提供するユーザインタフェースによって、ユーザが、拡大表示が行われる際の拡大率を任意に調整する例を示したが、タッチ操作支援ユーティリティ１５０の拡大ウィンドウ提示部１５２が、この拡大率をその時々で自動的に調整するようにしても良い。
【００５５】
より具体的には、拡大表示対象領域内に対象アプリケーションプログラムが配置している操作ボタンのサイズをＯＳ１００から取得し、そのサイズに基づき、操作ボタンが所定の大きさとなるように拡大率を決定して拡大表示を実行する。これにより、拡大表示された操作ボタンを常時適切なサイズに揃えることができる。
【００５６】
また、タッチ操作支援ユーティリティ１５０のタッチ操作処理部１５３も、拡大表示対象領域内に対象アプリケーションプログラムが操作ボタンを配置している位置をＯＳ１００から取得し、拡大表示領域上でのタッチ操作位置に対応する拡大表示対象領域内の位置を算出した時に、その位置が操作ボタンの配置位置に該当する場合に限り、補正後のイベント通知の中継および拡大表示の解除を行うようにしてもよい。つまり、拡大表示領域上でのタッチ操作が行われても、これが操作ボタンに対する有効な操作でなければ、拡大表示をそのまま維持するようにする。
【００５７】
さらに、タッチ操作支援ユーティリティ１５０の拡大ウィンドウ提示部１５２とタッチ操作処理部１５３とが協働して、拡大表示が行われた後に、ユーザが、拡大表示対象の領域を任意に移動・拡大できるようにすることも有効である。
【００５８】
より具体的には、例えば拡大表示領域上で２本の指で線を引くようなタッチ操作（摺動操作）が行われた場合に、タッチ操作処理部１５３が、その始点と終点との間のベクトルを求め、かつ、このベクトルを拡大表示対象領域内におけるベクトルへと補正して拡大ウィンドウ提示部１５２に通知する。そして、この通知を受けた拡大ウィンドウ提示部１５２が、先に制御部１５１から通知された位置から今回タッチ操作処理部１５３から通知されたベクトル分移動した位置を基点とした周辺領域の拡大画像を生成し、この生成した拡大画像に表示中の拡大画像を更新する。また、例えば拡大表示領域上で２本の指を広げるようなタッチ操作が行われた場合には、この拡大表示領域自体を広げたり、または、拡大表示領域内の拡大画像の拡大率を大きくしたりする。
【００５９】
また、前述の説明では、タッチ操作支援ユーティリティ１５０が、ＯＳ１００からのイベント通知をフックする例を示したが、これに限定されず、例えばタッチ操作支援ユーティリティ１５０が、タッチパネルドライバ１１１経由でＥＣ／ＫＢＣ２４から直接的にタッチパネル４の操作内容（位置情報を含む）を取得するようにしても良い。
【００６０】
このように、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
【符号の説明】
【００６１】
１…コンピュータ本体、２…ディスプレイユニット、３…ＬＣＤ、４…タッチパネル、５…キーボード、６…タッチパッド、７…マウスボタン、１０…ＰＣ、１１…ＣＰＵ、１２…ＭＣＨ、１３…主メモリ、１４…ＩＣＨ、１５…ＧＰＵ、１５Ａ…ＶＲＡＭ、１６…サウンドコントローラ、１７…ＢＩＯＳ−ＲＯＭ、１８…ＬＡＮコントローラ、１９…ＨＤＤ、２０…ＯＤＤ、２１…無線ＬＡＮコントローラ、２２…IEEE1394コントローラ、２３…ＥＥＰＲＯＭ、２４…ＥＣ／ＫＢＣ、１００…ＯＳ、１０１…タッチジェスチャ記憶部、１１１…タッチパネルドライバ、１１２…ディスプレイドライバ、１５０…タッチ操作支援ユーティリティ、１５１…制御部、１５２…拡大ウィンドウ提示部、１５３…タッチ操作処理部、２００…各種アプリケーションプログラム。
【図１】
0004843696.tif 000002
【図２】
0004843696.tif 000003
【図３】
0004843696.tif 000004
【図４】
0004843696.tif 000005
【図５】
0004843696.tif 000006
【図６】
0004843696.tif 000007