(57)【要約】方法は、タッチスクリーンイベントをアプリケーションに固有にフォーマットされたデータ（アプリケーション固有のフォーマットデータ）に変換するために提供される。その方法は、タッチスクリーンイベントを検出することと、タッチスクリーンと関連するアクティブイベントゾーンを識別することを含む。アクティブイベントゾーンはタッチスクリーンイベントを含む。その方法は、さらにアクティブイベントゾーンに基づいてアプリケーション固有のフォーマットデータを出力することを含む。
2008516335.tif 000002
【特許請求の範囲】
【請求項１】
タッチスクリーンイベントをアプリケーションフォーマットデータに変換するための方法であって、
タッチスクリーンイベントを検出するステップと、
タッチスクリーンと関連し、タッチスクリーンイベントを含むアクティブイベントゾーンを識別するステップと、
アクティブイベントゾーンに基づいてアプリケーションフォーマットデータを出力するステップとを含むことを特徴とする方法。
【請求項２】
少なくとも１つの潜在イベントゾーンを判定するために、タッチスクリーンイベントをイベントゾーンのテーブルと比較するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
潜在イベントゾーンのリストを生成するステップをさらに含み、
前記潜在イベントゾーンから、前記アクティブイベントゾーンが優先順位に基づいて識別されることを特徴とする請求項１に記載の方法。
【請求項４】
タッチスクリーンイベントが、重複している第１および第２のイベントゾーンまたは複数の重複しているゾーンの中にあるか否かを判定するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項５】
アクティブイベントゾーンおよびタッチスクリーンイベントのタイプに基づいてイベントモードを識別するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項６】
アクティブイベントゾーンおよびタッチスクリーンイベントに基づいて、複数のゾーン属性から少なくとも１つのゾーン属性にアクセスするステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項７】
複数のゾーンをタッチスクリーンと関連付けるステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項８】
イベントゾーンに、スクロールモード、電子的書き込みモード、マウス機能モードおよびボタンモードの内の少なくとも１つを指定するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項９】
前記タッチスクリーンイベントは、タッチイベント、リリースイベント、ドラッグイベントおよびストリーミングイベントの内の少なくとも１つを含むことを特徴とする請求項１に記載の方法。
【請求項１０】
前記タッチスクリーンイベントは、タッチスクリーン座標系と関連するイベント位置座標を含むことを特徴とする請求項１に記載の方法。
【請求項１１】
タッチスクリーン座標系および異なるアプリケーション座標系をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１２】
アプリケーション固有の情報を表示するタッチスクリーンと、
アプリケーション固有の情報を表示する前記タッチスクリーンと対話するアプリケーションと、
前記アプリケーションは、アプリケーション固有の情報に関連して前記アプリケーションにより利用されるアプリケーションフォーマットデータセットを定義し、
前記タッチスクリーンで発生するタッチスクリーンイベントを感知する、タッチスクリーンに隣接するセンサユニットと、
前記タッチスクリーン上に表示されるアプリケーション固有の情報と関連するイベントゾーンを含むイベントテーブルと、
前記イベントテーブル内の前記イベントゾーンから、前記タッチスクリーンイベントを含むアクティブイベントゾーンを識別し、前記アクティブイベントゾーンに基づいてアプリケーションフォーマットデータセットを前記アプリケーションに出力するタッチスクリーン制御モジュールとを備えることを特徴とするタッチスクリーンシステム。
【請求項１３】
タッチスクリーンイベントをアプリケーションフォーマットデータセットに変換するためのタッチスクリーン制御モジュールであって、
タッチスクリーンと通信するために構成されるタッチスクリーンインタフェースと、
前記タッチスクリーンインタフェースは、タッチスクリーンイベントを受信し、各タッチスクリーンイベントは、タッチイベント、リリースイベント、ドラッグイベントおよびストリーミングイベントの内の少なくとも１つと関連し、アプリケーションインタフェースは、ソフトウェアアプリケーションと通信するために構成され、前記アプリケーションはイベントゾーン、前記イベントゾーンと関連するイベントモードおよび前記イベントモードと関連するアプリケーションフォーマットデータセットを定義し、
イベントモードを前記イベントゾーンと関連付けるゾーンモードレコードと、
前記タッチスクリーンイベントに基づいて、前記イベントゾーンの１つをアクティブイベントゾーンとして指定するイベント識別子と、
前記アプリケーションインタフェースは、前記アプリケーションに、前記タッチスクリーンイベントと関連するアプリケーションフォーマットデータセットを、前記アクティブイベントゾーンおよび前記アクティブイベントゾーンと関連するイベントモードに基づいて出力することを特徴とするタッチスクリーン制御モジュール。
【請求項１４】
前記タッチスクリーンインタフェースは、一連のタッチイベントおよびリリースイベントを受信し、
それらに基づいて、前記アプリケーションインタフェースは、シングル左ボタンマウスクリック、ダブル左ボタンマウスクリック、右ボタンマウスクリック、ＡＳＣＩＩ文字、ＡＳＣＩＩ文字列、キーボード機能、計算機能、署名、一連の座標、およびシステム機能コマンドの内の少なくとも１つと対応するコマンドを出力することを特徴とする請求項１３に記載のタッチスクリーン制御モジュール。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概してタッチスクリーンイベントをアプリケーションフォーマットにフォーマットされたデータ（アプリケーションフォーマットデータ）に変換するための方法およびシステムに関する。
【背景技術】
【０００２】
今日、多種多様な従来のタッチスクリーンシステムはさまざまなアプリケーションにおいて使用されている。アプリケーションの例としては、小売、レストラン、ＰＯＳ端末装置、キオスク、現金自動預け払い機、医療システム、Ｅメールパッケージ等がある。タッチスクリーンシステムは、通常タッチまたは近接センサ手段（mechanism）と連結するディスプレイを含む。センサ手段は、ディスプレイの近傍に置かれたとき、ユーザの指や手または道具を検出する。ディスプレイは制御され、特にグラフィック、文字列、映像および音声を含む、アプリケーション固有の情報をユーザに示す。アプリケーション固有の情報の例としては、仮想テレホンパッド（virtual telephone pad）、計算機、キャッシュレジスタ、キーボード、電子的なドキュメント及びレシート、並びにウィンドウがある。アプリケーション固有のグラフィックは、ツールバー、ポップアップメニュー、スクロールバー、文字列入力ウィンドウ、アイコン、電子的な書き込みまたは署名ボックス等を示してもよい。
【０００３】
センサ手段は、指または道具の存在を検出し、それらに応答してタッチスクリーンイベントを生成する。タッチスクリーンイベントは、タッチイベント、リリースイベント、ストリーミングまたはドラッグイベント等を示してもよい。タッチスクリーンイベントは、イベントタイプを示しかつイベントが発生した位置を識別するデータまたは信号を含む。
【０００４】
ディスプレイはシステムコンピュータ上で実行中のアプリケーションにより制御される。アプリケーションはディスプレイを制御し、アプリケーション固有の情報をユーザに示す。ディスプレイおよびタッチスクリーンはユーザインタフェースとして機能し、そのユーザインタフェースを介して、ユーザはデータをアプリケーションに出力する。ユーザ入力データは、金額、製品情報、患者／顧客情報、医療情報、患者の生体情報（patient vitals）、テスト結果、インターネットアドレス、ウェブサイトコンテンツ、Ｅメールと関連するコンテンツ等を示してもよい。ユーザは、キー、メニューアイテムまたはボタンを選択し、ボックス内に記入し、仮想の英数字キーを押すこと等によりデータを入力してもよい。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のタッチスクリーンシステムにおいて、ディスプレイを駆動するアプリケーションは、直接タッチスクリーンのセンサ手段と通信する。アプリケーションを書く／修正するとき、プログラマは表示させるための情報を定義する。さらに、アプリケーションとタッチスクリーンの間の直接対話のために、プログラマはアプリケーションの中にアプリケーションとタッチスクリーンの間のインタフェースを定義する命令を組み込まなければならない。インタフェース命令は、タッチスクリーンにユーザにより入力され得るタッチスクリーンイベントの特性を規定する。
【０００６】
タッチスクリーンは、通常「加工していない」タッチスクリーンデータ、すなわち検出されたイベント及びそのイベントの位置を生成する。プログラマは、アプリケーションの中に、ａ）タッチスクリーンイベントを検証し、区別し、ｂ）各イベントを表示される情報と関連付け、ｃ）それに応じて関連したソフトウェアアプリケーションを制御するために作動する機能を組み込まなければならない。したがって、プログラマは、タッチスクリーンセンサ手段の低いレベルのフォーマットおよび操作、およびタッチスクリーンイベントの特性および内容を詳細に理解する必要がある。さらに、タッチスクリーンには多数のタイプが存在し、各タイプはタッチスクリーンイベント毎に異なるフォーマットを利用してもよい。それゆえ、プログラマは各アプリケーションをタッチスクリーンの対応するタイプ毎に特徴付けなければならない。
【０００７】
アプリケーションソフトウェアとタッチスクリーンセンサ手段の間の汎用的なインタフェースを提供することが必要である。
【課題を解決するための手段】
【０００８】
タッチスクリーンイベントをアプリケーションに固有にフォーマットされたデータ（アプリケーション固有のフォーマットデータ）に変換するための方法が提供される。その方法は、タッチスクリーンイベントを検出し、タッチスクリーンと関連するアクティブイベントゾーンを識別する。アクティブイベントゾーンはタッチスクリーンイベントを含む。その方法は、さらにアクティブイベントゾーンに基づいてアプリケーション固有のフォーマットデータを出力する。
【０００９】
また、その方法は、タッチスクリーンイベントをイベントゾーンのテーブルと比較し、潜在イベントゾーンのリストを生成する。その潜在イベントゾーンのリストから、後に、アクティブイベントゾーンが識別される。潜在イベントゾーンのリストが生成されるとすぐに、アクティブイベントゾーンは優先順位に基づいて識別されてもよい。タッチスクリーンイベントが重複するイベントゾーン内で発生した場合、１つのイベントゾーンがアクティブイベントゾーンとしてイベントゾーンの優先順位に基づいて識別される。タッチスクリーンイベントはタッチイベント、リリースイベント、ドラッグイベントの少なくとも１つを含んでもよいし、タッチスクリーン座標系に関連するイベント位置座標を備えてもよい。各イベントゾーンには少なくとも１つのモード、例えばスクロールモード、電子的書き込みモード、マウス機能モード、ボタンモード等が割り当てられてもよい。
【発明を実施するための最良の形態】
【００１０】
図１は、タッチスクリーンベースのアプリケーションに関連して示されるタッチスクリーン１０である。タッチスクリーン１０は、利用可能なタッチエリアを異なるタッチまたはイベントゾーンに分ける。アプリケーションソフトウェアは、異なる機能に関してタッチエリアの異なる部分を使用してもよい。各イベントゾーンは、異なるイベント応答特性またはモードと関連してもよい。
【００１１】
「タッチスクリーン」という言葉は、最も広い意味で使用されている。例えば、タッチスクリーンは、グラフィックまたは画像情報を示す装置または機器、例えば一体型のまたは分離可能なタッチスクリーンを有する液晶ディスプレイ（ＬＣＤ）を意味してもよい。ＬＣＤはタッチセンサ式であってもよい。また、タッチスクリーンは、ガラスのような、タッチを感知できる物理的な機器を意味してもよい。物理的な機器は、グラフィックまたは画像情報を必ずしも直接表す必要はない。代わりに、タッチセンサ式の物理的な機器は、分離可能なディスプレイスクリーンの前に設置されてもよい。「タッチスクリーン」という言葉は、単独でタッチセンサ式の物理的な機器を表してもよいし、さらにより広く、タッチセンサ式の物理的な機器と組み合わせたディスプレイスクリーンを意味してもよい。
【００１２】
タッチスクリーン１０によりまたはそれに関連して示される情報は、複数のボタンゾーン１４（例えば、ボタン＃１、ボタン＃２、ボタン＃３等）を含むツールバー１２を含む。バックグラウンドゾーン１６は、タッチスクリーン１０の中央部分に表示され、その上に重ねられたポップアップメニュー１８を含む。ポップアップメニュー１８は、一連のメニューアイテムゾーン２０〜２５を含む。各メニューアイテムゾーン２０〜２５は、アイテム機能（例えば、アイテム＃１、アイテム＃２等）と関連する。一例として、ボタンゾーン１４においてボタン＃１が選択されたときに、メニュー１８を生成するようにしてもよい。縦方向のスクロールバーは縦方向のスクロールゾーン２６においてユーザに示される一方、横方向のスクロールバーは横方向のスクロールゾーン２８においてユーザに示される。署名ボックスは書き込みゾーン３０において示される。ゾーン１４〜３０は、以下でさらに詳細に説明されるように、異なるイベントモードまたは特性と関連する。
【００１３】
図２は、ディスプレイ４４と接続されるタッチスクリーン４２を含むタッチスクリーンシステム４０のブロック図である。ディスプレイ４４は、ディスプレイ制御モジュール４６により制御され、図１に示すようなタッチスクリーン１０と接続して、グラフィックまたは画像情報を表示する。ディスプレイ制御モジュール４６は、特に演算順序、配置、機能及びその他ユーザに提供されるもの等を決定し制御するアプリケーション４８と通信する。アプリケーション４８はタッチスクリーン制御モジュール５０と通信し、タッチスクリーン制御モジュール５０はタッチスクリーン４２を駆動し、タッチスクリーン４２からタッチスクリーンイベントを受信する。コンピュータマウス５２は、任意にタッチスクリーン制御モジュール５０および／またはアプリケーション４８に接続されてもよい。アプリケーション４８は汎用コンピュータ等で実行されてもよい。
【００１４】
タッチスクリーン制御モジュール５０は、タッチスクリーン４２内のセンサに駆動信号を伝送するタッチスクリーンインタフェースまたはドライバ５４を含む。また、タッチスクリーン制御モジュール５０は、タッチスクリーン４２から受信したタッチスクリーンイベントを処理する、イベントタイプ識別モジュール５６とイベント位置識別モジュール５８を含む。イベントタイプ識別モジュール５６は、イベントタイプを識別する一方、イベント位置識別モジュール５８は、イベント位置を識別する。イベントタイプの例としては、タッチイベント、リリースイベント、およびドラッグまたはストリーミングイベントがある。イベント位置は、画素位置、行および列の識別子、またはＸ−Ｙ座標の組み合わせ等のようなタッチスクリーン４２の座標系に基づいて定義されてもよい。
【００１５】
タッチスクリーン制御モジュール５０は、さらにゾーン位置テーブル６０と、ゾーンモードテーブル６２と、アプリケーションデータセットテーブル６４とアプリケーションインタフェース６６とを含む。
【００１６】
ゾーン位置テーブル６０は、イベントゾーンレコードのリストを含む。各イベントゾーンレコードは一意的にイベントゾーンと関連する。ゾーン位置テーブル６０のイベントゾーンレコードのリストは、ディスプレイ４４上に表示されるタッチスクリーン１０に関連して利用されるすべてのイベントゾーンを含んでもよい。または、ゾーン位置テーブル６０は、アプリケーション４８の動作中ディスプレイ４４上に表示されるように、複数のタッチスクリーン１０と関連するイベントゾーンレコードのリスト一式を格納してもよい。後者の場合、各イベントゾーンレコードは、現在のタッチスクリーン１０に関連して現在利用されているイベントゾーンを示す「動作可能な」フィールドも含む。
【００１７】
各イベントゾーンレコードは、イベントゾーンＩＤ、関連するイベントゾーンの境界を定義する座標、例えばイベントゾーンの四辺形の対角部（例えば、Ｘｎ、Ｙｎ及びｘｎ、ｙｎ）、イベントゾーンのサイズ、イベントゾーンの形状、重複フラグＦｏｖｅｒｌａｐ、選択順位（preference ranking）Ｐｒａｎｋ等を含んでもよい。イベントゾーンは長方形、正方形、円形、楕円形、三角形および任意の他の境界のある形状であってよい。重複フラグＦｏｖｅｒｌａｐは、あるイベントゾーンが他のイベントゾーン（例えば、ポップアップウィンドウ）と重なっているか否かを示すために利用される。選択または優先順位（priority ranking）Ｐｒａｎｋは、重複している２つ以上のイベントゾーン内でタッチスクリーンイベントが発生したとき、どのイベントゾーンをアクティブにするかを決定するために使用されてもよい。例えば、ポップアップメニューが他のグラフィック、例えばアイコン、ツールバーボタン等と重複している場合である。ポップアップウィンドウのメニューアイテムゾーンは、その下に配置されたグラフィックと関連するイベントゾーンよりも高い優先または選択順位が与えられてもよい。
【００１８】
ゾーンモードテーブル６２は、イベントゾーンＩＤ及び１つ以上のイベントモードフラグＦｍｏｄｅ＃Ｎを含むゾーンモードレコードを格納する。ゾーンモードテーブル６２内のイベントゾーンＩＤは、ゾーン位置テーブル６０内のイベントゾーンＩＤに対応して、それらの間でのクロスリファレンスを可能にする。イベントモードフラグＦｍｏｄｅＮは、要求されるイベントタイプおよび／またはイベント順序を、アプリケーションフォーマットにフォーマットされたデータセット（アプリケーションフォーマットデータセット）の形式で、アプリケーション４８に出力されるアプリケーションに固有の応答と関連付けるために使用される。一例として、イベントモードは、Ｆｍｏｄｅ１＝”イベントゾーンにおけるタッチ応答”、Ｆｍｏｄｅ２＝”イベントゾーンにおけるタッチ応答なし”、Ｆｍｏｄｅ３＝”タッチしてクリック”、Ｆｍｏｄｅ４＝”リリースしてクリック”、Ｆｍｏｄｅ５＝”タッチしてドラッグ”、Ｆｍｏｄｅ６＝”ダブルクリック左ボタン”、Ｆｍｏｄｅ６＝”右クリックボタン”等がある。
【００１９】
上記例において、イベントモードＦｍｏｄｅ１は、タッチイベントが検出されたときに、タッチスクリーン制御モジュール５０が、すぐにタッチ応答をアプリケーションインタフェース６６からアプリケーション４８に出力すべきことを示す。イベントモードＦｍｏｄｅ２は、タッチイベントが検出されたときに、タッチスクリーン制御モジュール５０がいかなる出力もなさず、タッチイベントを無視すべきことを示す。イベントモードＦｍｏｄｅ３は、タッチイベントが検出されたときに、タッチスクリーン制御モジュール５０が、すぐにコンピュータマウスの左ボタンのクリックに対応するコマンドを出力すべきことを示す。イベントモードＦｍｏｄｅ４は、有効なタッチイベントと有効なリリースイベントの両方を検出した後のみ、タッチスクリーン制御モジュール５０がコンピュータマウスの左ボタンのクリックに対応するコマンドを出力すべきことを示す。イベントモードＦｍｏｄｅ５及びＦｍｏｄｅ５は、関連するイベントゾーン内の対応する有効な一連のタッチ及びリリースイベントを検出した後、タッチスクリーン制御モジュール５０がコンピュータマウスの左ボタンのダブルクリック及び右ボタンのシングルクリックそれぞれに対応するコマンドを出力すべきことを示す。
【００２０】
アプリケーションデータセットテーブル６４はデータセットを格納する。各データセットは固有のアプリケーションのためにフォーマットされる。各アプリケーションフォーマットデータセットは、アプリケーション４８により定義され、アプリケーション４８が受け入れ可能な入力値を示す。一例として、アプリケーションフォーマットデータセットは、シングル左ボタンマウスクリック、ダブル左ボタンマウスクリック、右ボタンマウスクリック、ＡＳＣＩＩ文字、ＡＳＣＩＩ文字列、例えばエンター、コントロール、またはアルト機能等のキーボード機能、計算機と関連する機能、例えば署名を識別する等の一連の座標、または入力機器からデータシーケンスにより起動されてもよい任意のシステム機能コマンドと関連するコマンドを示してもよい。また、アプリケーションフォーマットデータセットは、ボタンや実質的なキーボードのキーを再定義またはその出力先を変更してもよい。例えば、キーボードのキー配列を整理し直してもよい。
【００２１】
初期化中、アプリケーション４８はゾーン位置テーブル６０、ゾーンモードテーブル６２及びアプリケーションデータセットテーブル６４をアプリケーションインタフェース６６を介して読み込んでもよい。また、アプリケーションは、同時にリアルタイムで、ゾーン位置テーブル６０、ゾーンモードテーブル６２及びアプリケーションデータセットテーブル６４を変更してもよい。
【００２２】
アプリケーション４８及びタッチスクリーン制御モジュール５０は、シングルプロセッサ、並列プロセッサ、個別の専用プロセッサ等を利用して実行されてもよい。タッチスクリーン制御モジュール５０は、アプリケーション４８を実行するホストコンピュータシステムから個別のエンティティを示してもよい。また、タッチスクリーン制御モジュール５０は、ホストコンピュータシステムの一部として実行されてもよい。また、タッチスクリーン制御モジュール５０およびアプリケーション４８の機能は、任意にホストおよび個別のコンピュータシステムにより組み合わせて、または別個の（distinct）１組の個別の独立の機能エンティティとして実行されてもよい。
【００２３】
以下、図３Ａ及び図３Ｂを参照して、タッチスクリーン制御モジュール５０の動作をより詳細に説明する。
【００２４】
図３Ａ及び図３Ｂは、タッチスクリーン制御モジュール５０により実行される、タッチスクリーンイベントをアプリケーションフォーマットデータセットに変換するための処理の論理フローチャートである。ステップ１００において、タッチスクリーン４２はタッチスクリーンイベントを検出し、イベントタイプおよびイベント位置をタッチスクリーン制御モジュール５０に提供する。イベントタイプ識別モジュール５６は、ステップ１０２においてイベントタイプを識別する。イベント位置識別モジュール５８は、ステップ１０４においてイベント位置をゾーン位置テーブル６０内のイベントゾーンレコードと比較する。ステップ１０４における比較は、タッチスクリーンイベントの位置を現在選択されたイベントゾーンの境界座標と比較することにより実行される。
【００２５】
タッチスクリーンイベント位置がイベントゾーンの境界にある場合、ステップ１０６においてイベントゾーンは潜在イベントゾーンのリストに追加される。ステップ１０８において、ａ）ステップ１０６において解析されたイベントゾーンがゾーン位置テーブル６０内の最後のイベントゾーンであるか否か、ｂ）イベントゾーンがバックグラウンドゾーンであるか否か、およびｃ）重複フラグが現在のイベントゾーンに関連して設定されたか否かが判定される。重複フラグは、現在のイベントゾーンがディスプレイ４４上の他のイベントゾーンと重複する場合に、設定される。ステップ１０８の判定がＹｅｓの場合、フローはステップ１１０に進み、処理はゾーン位置テーブル６０（図２）内の次のイベントゾーンレコードに移動する。ステップ１０６、１０８及び１１０は、各イベントゾーンレコードが検討され、またはイベント位置がバックグラウンドゾーン内に存在すると判定されるまで、繰り返される。
【００２６】
ステップ１１２において、重複フラグが潜在イベントゾーンリスト上のイベントゾーンに対してクリアか否かが判定される。Ｙｅｓの場合、フローは図３Ｂのステップ１１８に進む。Ｎｏの場合、フローはステップ１１４に進み、現在イベントゾーンが、ゾーン位置テーブル６０内の最後のイベントゾーンを示すか否かが判定される。またステップ１１４において、イベント位置がディスプレイ４４上で現在利用されているすべてのイベントゾーンの外側になるか否かが判定される。ステップ１１４における判定がＹｅｓの場合、フローはステップ１１６に進み、イベント位置がバックグラウンドゾーン内にあると判定され、処理は終了する。ステップ１１４において、イベント位置が少なくとも１つの他のイベントゾーン内にあると判定される場合、フローは図３Ｂのステップ１１８に進む。
【００２７】
図３Ｂに戻り、ステップ１１８において、潜在イベントゾーンリストが空か否かが判定される。Ｙｅｓの場合、バックグラウンドゾーンはステップ１２０においてアクティブである指定され、フローは終了する。また、ステップ１１８において、潜在イベントゾーンリストが空でない場合、フローはステップ１２２に進み、潜在イベントゾーンリストが、優先度が最も高いイベントゾーンを求めるために検索される。ゾーン位置テーブル６０内の各イベントゾーンレコードは、優先度が最も高いイベントゾーンを識別するためのステップ１２２で使用される選択または優先順位を備える。ステップ１２４において、優先度が最も高いイベントゾーンは、アクティブイベントゾーンに指定される。ステップ１２６において、アクティブイベントゾーンのゾーンモードテーブル６２内のゾーンモードレコードがアクセスされ、アクティブイベントゾーンと関連するイベントモードを取得する。ステップ１２８において、イベントモードがアプリケーション応答を含むか否かが判定される。アプリケーション応答が存在する場合、これはタッチスクリーン制御モジュール５０がいくつかのタイプのデータセットをアプリケーション４８（図２）に提供するべきであることを示す。イベントモードがアプリケーション応答を含まない場合、フローはステップ１３０に進み、タッチスクリーンイベントは廃棄され、この処理を終了する。ステップ１２８においてイベントモードがアプリケーション応答を含む場合、フローはステップ１３２に進み、ゾーンモードテーブル６２はアクセスされ、イベントモードおよびイベントタイプに基づいてモードフラグを取得する。ステップ１３４において、ゾーンモードテーブル６２（図２）からのインデックスまたはモードフラグを使用し、テーブル６４に設定されたアプリケーションデータ内において、そのときアプリケーション４８に出力されるアプリケーションフォーマットデータセットを識別する。その後処理は終了し、フローはステップ１００に戻り、次のタッチスクリーンイベントの検出を待つ。
【００２８】
アプリケーションベースの座標系は、タッチスクリーン４２の座標系とは異なってもよい。例えば、アプリケーションベースの座標系はより低い解像度（例えば、１０２４×１０２４）を有する一方で、タッチスクリーン４２は第１の解像度（例えば、４０００×４０００）を有する座標系を含んでもよい。また、タッチスクリーン４２は、極座標系に基づいて動作する一方で、アプリケーションベースの座標系はデカルト座標系であってもよい（逆もまた同様）。タッチスクリーン制御モジュール５０は座標系間の変換を実施する。
【００２９】
また、タッチスクリーン制御モジュール５０は、ユーザがタッチスクリーンで指または道具をドラッグするとき、ユーザの指（例えば、マウスまたはペン（line））に従い、その下に配置されたグラフィックの表示がユーザの指に遅れを取るような「遅延ドラッグ」機能を備えてもよい。また、タッチスクリーン制御モジュール５０は、ユーザの指がタッチスクリーンの境界に近づいたとき、アプリケーション４８に出力されるイベント位置情報がユーザの指の実際の位置より境界に近いと示されるような、タッチスクリーンの境界の近くで「拡張（extended）タッチ」機能を備えてもよい。イベントゾーンが小さいときや、ディスプレイ４４の角や側辺の近くに位置しているときに、拡張タッチ機能は有用である。
【００３０】
さまざまな具体的実施の形態において本発明を記述したが、当事者は本発明を請求項の意図および範囲内の変更を加えても実施できると認めるであろう。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施の形態による、タッチスクリーンアプリケーションに関連して示されるタッチスクリーンを示す図
【図２】本発明の実施の形態により形成されるタッチスクリーンシステムのブロック図
【図３Ａ】本発明の実施の形態による、タッチスクリーンイベントをアプリケーション固有のフォーマットデータに変換する論理フローチャート
【図３Ｂ】本発明の実施の形態による、タッチスクリーンイベントをアプリケーション固有のフォーマットデータに変換する論理フローチャート
【符号の説明】
【００３２】
１０  タッチスクリーン
１２  ツールバー
１４  ボタンゾーン
１６  バックグラウンドゾーン
１８  ポップアップメニュー
２０、２１、２２、２３、２４、２５  メニューアイテムゾーン
２６  縦方向のスクロールゾーン
２８  横方向のスクロールゾーン
３０  書き込みゾーン
４０  タッチスクリーンシステム
４２  タッチスクリーン
４４  ディスプレイ
４６  ディスプレイ制御モジュール
４８  アプリケーション
５０  タッチスクリーン制御モジュール
５２  マウス
５４  タッチスクリーンドライバ
５６  イベントタイプ識別モジュール
５８  イベント位置識別モジュール
６０  ゾーン位置テーブル
６２  ゾーンモードテーブル
６４  アプリケーションデータセットテーブル
６６  アプリケーションインタフェース
【図１】
2008516335.tif 000003
【図２】
2008516335.tif 000004
【図３Ａ】
2008516335.tif 000005
【図３Ｂ】
2008516335.tif 000006
【国際調査報告】
2008516335.tif 000007
2008516335.tif 000008
2008516335.tif 000009