(57)【要約】  各種オブジェクトを一貫性のある方法で操作するためのユーザーインターフェース。各オンスクリーンオブジェクトはオブジェクトに各種制御操作を実行するための、幾つかのゾーンを含む制御領域により囲まれる。多数の入力モードはゾーンと相互作用させるために利用でき、ストローク入力、マウスボタン押下、ダブルクリック、メニュー選択、音声入力等を介してのような、オブジェクト操作命令を幾つかの異なる方法で開始できる。ユーザーインターフェースは、幾つかの異なる種類の任意の入力装置を用いて操作できる。【特許請求の範囲】
【請求項１】
ディスプレイ上に表示されるオブジェクトを操作するための、前記ディスプレイを含む装置のためのユーザーインターフェースであって、前記装置は、ユーザーインターフェースを提供するためのプログラム命令を実行し、前記ユーザーインターフェースは、
前記オブジェクトのディスプレイ表現と、
前記オブジェクトの前記ディスプレイ表現を囲むとともに、入力装置を介し、かつ少なくとも２つのユーザー入力モードを介して、オブジェクト操作コマンドを受け取るための複数ゾーンを備える制御領域と
を備えるユーザーインターフェース。
【請求項２】
更に前記ゾーンのユーザー入力を受け取るための入力装置を備える、請求項１のユーザーインターフェース。
【請求項３】
前記入力装置は、
スタイラス位置を検出するためのタブレット、
マウス、
タッチパッド、
ポインティング装置、
タッチ感応スクリーン、
キーボード、
音声入力を受けるためのマイクロホン、および、
リモートコントローラ、
から成るグループから選択される少なくとも一つを備える、請求項２のユーザーインターフェース。
【請求項４】
前記入力装置は、前記ゾーンと対応するキーを含むキーボードを備える、請求項１のユーザーインターフェース。
【請求項５】
前記入力装置は、キーボードを備え、前記キーボード上の標準キーがゾーンに選択的に割り当てられる、請求項１のユーザーインターフェース。
【請求項６】
前記入力装置は、前記ゾーンと対応する追加キーを含むキーボードを備える、請求項１のユーザーインターフェース。
【請求項７】
前記ゾーンは、グリッド状に編成される、請求項１のユーザーインターフェース。
【請求項８】
前記ゾーンは、セルの行を備える行列で編成され、前記オブジェクト表現は、前記行列のセル内に配置される、請求項１のユーザーインターフェース。
【請求項９】
前記ゾーンは、それぞれ３個のセルの３行を備える行列で編成され、前記オブジェクト表現は、前記中央行の中央セルに配置される、請求項１のユーザーインターフェース。
【請求項１０】
前記ユーザー入力モードは、
アクティブ化コマンド、
修正キーを併用するアクティブ化コマンド、
音声入力、
キーボード入力、
リモートコントローラ入力、
マウス入力、
ストローク入力、および、
メニューコマンド選択、
から成るグループから選択される少なくとも２つを備える、請求項１のユーザーインターフェース。
【請求項１１】
更に、ゾーンに対するメニューアクティブ化コマンドを実行することによりアクティブ化可能なメニューであって、前記メニューは、コマンドを含み、アクティブになると前記ゾーンの近傍に表示されるメニューを備える、請求項１のユーザーインターフェース。
【請求項１２】
前記メニューコマンドの内の少なくとも一つは、前記ゾーン内の、ストローク、ボタン押下、またはダブルクリックの内の少なくとも一つにより、直接アクティブ化可能でもある、請求項１１のユーザーインターフェース。
【請求項１３】
前記メニューアクティブ化コマンドを実行することは、オンスクリーンカーソルを前記ゾーン内に位置決めすること、およびボタンを押すことを含む、請求項１１のユーザーインターフェース。
【請求項１４】
前記メニューアクティブ化コマンドを実行することは、音声コマンドを発行することを含む、請求項１１のユーザーインターフェース。
【請求項１５】
前記メニューは、少なくとも一つのコマンドに対して、前記コマンドを直接アクティブ化するためのストローク方向を指示するアイコンを含む、請求項１１のユーザーインターフェース。
【請求項１６】
ゾーンに対するストロークコマンドが、オンスクリーンカーソルを前記ゾーン内に位置決めし、前記カーソルをストロークさせることによりアクティブ化される、請求項１１のユーザーインターフェース。
【請求項１７】
オブジェクトを操作するためコンピュータに実装される方法であって、
前記オブジェクトの表現を表示すること、
前記オブジェクトを囲むとともに、少なくとも２つのユーザー入力モードを介して前記オブジェクトに関するオブジェクト操作コマンドを受け取るための複数のゾーンを備える制御領域を表示すること、
前記ゾーンの内の一つでユーザー入力を受け取ること、および、
前記ユーザー入力に応答して、前記オブジェクトの特性を変更すること、
を含む方法。
【請求項１８】
ユーザー入力の各モードは、
スタイラス位置入力、
マウス入力、
タッチパッド入力、
ポインティング装置入力、
タッチ感応スクリーン入力、
キーボード入力、
音声入力、および、
リモートコントローラ入力、
から成るグループから選択される一つを含む、請求項１７の方法。
【請求項１９】
一つのユーザー入力モードが、前記ゾーンと対応するキーを含むキーボードからのキーボード入力を受け取ることを含む、請求項１７の方法。
【請求項２０】
一つのユーザー入力モードが、ゾーンに選択的に割り当てられるキーボードの標準キーを有する前記キーボードからのキーボード入力を受け取ることを含む、請求項１７の方法。
【請求項２１】
一つのユーザー入力モードが、前記ゾーンと対応する追加キーを含むキーボードからのキーボード入力を受け取ることを含む、請求項１７の方法。
【請求項２２】
前記ゾーンがグリッド状に編成される、請求項１７の方法。
【請求項２３】
前記ゾーンがセルの行を備える行列で編成され、前記オブジェクト表現が前記行列のセル内に配置される、請求項１７の方法。
【請求項２４】
前記ゾーンは、それぞれ３個のセルの３行を備える行列で編成され、前記オブジェクト表現は、前記中央行の中央セルに配置される、請求項１７の方法。
【請求項２５】
更に、メニューアクティブ化コマンドに応答して、ゾーンに対するメニューを表示することであって、前記メニューは、アクティブになると前記ゾーンの近傍に表示されることを含む、請求項１７の方法。
【請求項２６】
前記メニューコマンドの内の少なくとも一つは、前記ゾーン内の、ストローク、ボタン押下、またはダブルクリックの内の少なくとも一つにより、直接アクティブ化可能でもある、請求項２５の方法。
【請求項２７】
前記メニューアクティブ化コマンドは、オンスクリーンカーソルを前記ゾーン内に位置決めすること、およびボタンを押すことを含む、請求項２５の方法。
【請求項２８】
前記メニューアクティブ化コマンドは、音声コマンドを含む請求項２５の方法。
【請求項２９】
前記メニューは、少なくとも一つのコマンドに対して、前記コマンドを直接アクティブ化するためのストローク方向を指示するアイコンを含む、請求項２５の方法。
【請求項３０】
前記メニューは、それぞれの直接アクティブ化可能コマンドの直接アクティブ化に対してダブルクリックコマンドを指示する、請求項２５の方法。
【請求項３１】
ゾーンに対するストロークコマンドが、オンスクリーンカーソルを前記ゾーン内に位置決めし、前記カーソルをストロークさせることによりアクティブ化される、請求項２５の方法。
【請求項３２】
ゾーンに対するダブルクリックコマンドが、オンスクリーンカーソルを前記ゾーン内に位置決めし、ダブルクリックすることによりアクティブ化される、請求項２５の方法。
【請求項３３】
ゾーンに対する複数のストロークコマンドを含むユーザーインターフェースにおいて、オブジェクトを操作するためのコンピュータに実装される方法であって、
前記オブジェクトに隣接するゾーンの第１軸に沿うストロークに応答して、前記オブジェクトの特性を第１増分によって変更すること、および、
前記ゾーンの第２軸に沿うストロークに応答して、前記オブジェクトの特性を前記第１増分とは異なる第２増分によって変更すること、
を含む方法。
【請求項３４】
前記第２増分は、前記第１増分より振幅が小さい、請求項３３の方法。
【請求項３５】
前記第２軸は前記第１軸と垂直である、請求項３３の方法。
【請求項３６】
一方の軸は縦で、他方の軸は水平である、請求項３５の方法。
【請求項３７】
前記オブジェクトの特性は、
開始位置、
終了位置、
期間、
サイズ、
長さ、
日付、
時間、
数値、
幅、
高さ、
イメージトリミング仕様、
厚さ、
小数点位置、
再生速度、
再生位置、
先頭文字、
終端文字、
配置、
整列、
回転、
フォント、
スタイル、
大文字化、
色、
透明度、
明度、および、
相対音量、
から成るグループから選択される一つである、請求項３３の方法。
【請求項３８】
更に、メニューアクティブ化コマンドを含む前記ユーザー入力に応答して、
コマンドを含むメニューを表示すること、
前記メニューからコマンドを選択する第２ユーザー入力を受け取ること、および、
前記メニューコマンドに応答して、前記オブジェクトの特性を変更すること、
を含む、請求項３３の方法。
【請求項３９】
オブジェクトを操作するためのコンピュータープログラム製品であって、
コンピュータ可読媒体、ならびに、
前記オブジェクトの表現を表示し、
前記オブジェクトを囲む制御領域を表示するとともに、少なくとも２つのユーザー入力モードを介して前記オブジェクトに関するオブジェクト操作コマンドを受け取るための複数のゾーンを備え、
前記ゾーンの内の一つのユーザー入力を受け取り、および、
前記ユーザー入力に応答して、前記オブジェクトの特性を変更する、
ための、前記媒体上にエンコードされるコンピュータープログラムコード、
を備える、コンピュータープログラム製品。
【請求項４０】
ユーザー入力の各モードは、
スタイラス位置入力、
マウス入力、
タッチパッド入力、
ポインティング装置入力、
タッチ感応スクリーン入力、
キーボード入力、
音声入力、および、
リモートコントローラ入力、
から成るグループから選択される一つを含む、請求項３９のコンピュータープログラム製品。
【請求項４１】
一つのユーザー入力モードが、前記ゾーンと対応するキーを含むキーボードからのキーボード入力を受け取ることを含む、請求項３９のコンピュータープログラム製品。
【請求項４２】
更に、メニューアクティブ化コマンドに応答して、ゾーンに対するメニューを表示することであって、前記メニューは、アクティブになると前記ゾーンの近傍に表示される、
ためのコンピュータープログラムコードを備える、請求項３９のコンピュータープログラム製品。
【請求項４３】
前記メニューコマンドの内の少なくとも一つは、前記ゾーン内の、ストローク、ボタン押下、またはダブルクリックの内の少なくとも一つにより、直接アクティブ化可能でもある、請求項４２のコンピュータープログラム製品。
【請求項４４】
前記メニューは、少なくとも一つのコマンドに対して、前記コマンドを直接アクティブ化するためのストローク方向を指示するアイコンを含む、請求項４２のコンピュータープログラム製品。
【請求項４５】
ゾーンに対する複数のストロークコマンドを含むユーザーインターフェースにおいて、オブジェクトを操作するためのコンピュータに実装されるコンピュータープログラム製品であって、
コンピュータ可読媒体、ならびに、
前記オブジェクトに隣接するゾーンの第１軸に沿うストロークに応答して、第１増分によって前記オブジェクトの特性を変更し、および、
前記ゾーンの第２軸に沿うストロークに応答して、前記第１増分とは異なる第２増分によって前記オブジェクトの特性を変更する、
ための、前記媒体上にエンコードされるコンピュータープログラムコード、
を備える、コンピュータープログラム製品。
【請求項４６】
前記オブジェクトの特性は、
開始位置、
終了位置、
期間、
サイズ、
長さ、
日付、
時間、
数値、
幅、
高さ、
イメージトリミング仕様、
厚さ、
小数点位置、
再生速度、
再生位置、
先頭文字、
終端文字、
配置、
整列、
回転、
フォント、
スタイル、
大文字化、
色、
透明度、
明度、および、
相対音量、
から成るグループから選択される一つである、請求項４５のコンピュータープログラム製品。
【請求項４７】
更に、メニューアクティブ化コマンドを含む前記ユーザー入力に応答して、
コマンドを具備するメニューを表示すること、
前記メニューからコマンドを選択する第２ユーザー入力を受け取ること、および、
前記メニューコマンドに応答して、前記オブジェクトの特性を変更すること、
を備える、請求項４５のコンピュータープログラム製品。
【請求項４８】
ディスプレイ上に表示されるオブジェクトを操作するためのシステムであって、
前記オブジェクトの表現を表示し、前記オブジェクトの前記ディスプレイ表現を囲むとともに、入力装置を介し、かつ少なくとも２つのユーザー入力モードを介して、オブジェクト操作コマンドを受け取るための複数ゾーンを備える制御領域を表示するためのディスプレイ、
前記ゾーンのユーザー入力を受け取るための入力装置、および、
前記ユーザー入力に応答するオブジェクト操作コマンドを実行するための、前記ディスプレイおよび前記入力装置に接続されるプロセッサ、
を備えるシステム。
【請求項４９】
前記入力装置は、
スタイラス位置を検出するためのタブレット、
マウス、
タッチパッド、
ポインティング装置、
タッチ感応スクリーン、
キーボード、
音声入力を受けるためのマイクロホン、および、
リモートコントローラ、
から成るグループから選択される少なくとも一つを備える、請求項４８のシステム。
【請求項５０】
前記入力装置は、前記ゾーンと対応するキーを含むキーボードを備える、請求項４８のシステム。
【請求項５１】
前記入力装置は、キーボードを備え、前記キーボード上の標準キーがゾーンに選択的に割り当てられる、請求項４８のシステム。
【請求項５２】
前記入力装置は、前記ゾーンと対応する追加キーを含むキーボードを備える、請求項４８のシステム。
【請求項５３】
前記ゾーンは、グリッド状に編成される、請求項４８のシステム。
【請求項５４】
前記ゾーンは、セルの行を備える行列で編成され、前記オブジェクト表現は、前記行列のセル内に配置される、請求項４８のシステム。
【請求項５５】
前記ゾーンは、それぞれ３個のセルの３行を備える行列で編成され、前記オブジェクト表現は、前記中央行の中央セルに配置される、請求項４８のシステム。
【請求項５６】
前記ユーザー入力モードは、
アクティブ化コマンド、
修正キーを併用するアクティブ化コマンド、
音声入力、
キーボード入力、
リモートコントローラ入力、
マウス入力、
ストローク入力、および、
メニューコマンド選択、
から成るグループから選択される少なくとも２つを備える、請求項４８のシステム。
【請求項５７】
ゾーンに対するメニューアクティブ化コマンドを受け取る前記入力装置に応答して、前記ディスプレイは更に、アクティブ化すると前記ゾーンの近傍に、コマンドを備えるメニューを表示する、請求項４８のシステム。
【請求項５８】
前記メニューコマンドの内の少なくとも一つは、前記ゾーン内の、ストローク、ボタン押下、またはダブルクリックの内の少なくとも一つにより、直接アクティブ化可能でもある、請求項５７のシステム。
【請求項５９】
前記メニューは、少なくとも一つのコマンドに対して、前記コマンドを直接アクティブ化するためのストローク方向を指示するアイコンを含む、請求項５７のシステム。
【請求項６０】
ゾーンに対するストロークコマンドが、オンスクリーンカーソルを前記ゾーン内に位置決めし、前記カーソルをストロークさせることにより、アクティブ化される、請求項５７のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、本出願と同一日付で出願された米国特許出願第 号の「メニューアクティブ化、およびストローク入力のための共通オンスクリーンゾーン」と関連する。その関連出願の開示を参照して本明細書に組み込む。
【０００２】
本発明は一般に、オンスクリーンオブジェクトを管理するためのユーザーインターフェースに関し、より詳細には、オンスクリーンオブジェクトを囲むオブジェクト管理ゾーンの一貫性のあるセットを提供するユーザーインターフェースに関する。
【背景技術】
【０００３】
既存のユーザーインターフェースは、ウィンドウ、イメージ、テキストブロック、ビデオ等のオンスクリーンオブジェクトの移動、変更、制御、さもなければ操作をするための多様な技法を提供する。例えば、ワシントン州レドモンドのマイクロソフト社から入手可能なウインドウズＸＰオペレーティングシステムは、各種オンスクリーンオブジェクトを操作するためのユーザーインターフェースメカニズムを提供している。このようなユーザーインターフェースメカニズムの例には以下が含まれる。
【０００４】
−アプリケーションメニュー（例えば、オブジェクトをクリックして選択し、アプリケーションメニューから操作を選択する）。
【０００５】
−オンスクリーンボタン（例えば、オブジェクトをクリックして選択し、ボタンをクリックしてオブジェクトの操作を実行する）。
【０００６】
−コンテクスト依存型メニュー（例えば、オブジェクトを右クリックし、ポップアップメニューから操作を選択する）。
【０００７】
−サイズ変更境界またはハンドル（例えば、ウィンドウの縁またはオブジェクトハンドルをクリック、ドラッグしてウィンドウまたはオブジェクトをサイズ変更する）。そして、
【０００８】
−キーボードコマンド（例えば、オブジェクトをクリックして選択し（またはキーボードを用いてオンスクリーンオブジェクトに辿りつき）、キーを打ってオブジェクト操作を実行する）。
【０００９】
ほとんどの既存技法に伴うある問題は、各種オブジェクトを操作するための一貫性のあるユーザーインターフェース規範がない、ということである。例えば、テキストオブジェクトを制御するためのユーザーインターフェースは、グラフィックオブジェクトを制御するためのユーザーインターフェースと著しく異なる。ユーザーがテキストのフォントを大きくすることにより、テキストオブジェクトをサイズ変更しようとする場合、グラフィックオブジェクトをサイズ変更するために実行するのとは全く異なるアクションを実行する。従って、ユーザーは、多様な操作方法を学習し、どの種類のオブジェクトにはどの方法を適用するかを理解しなければならない。ある種のオブジェクトを制御しようとする場合、特に、制御しているオブジェクトのユーザーインターフェース要素が、ユーザーが慣れているものと異なる場合、ユーザーは方向を見失い、混乱することもある。
【００１０】
更に、あるオブジェクト操作の動作をアクティブにするための既存技法が、煩雑で、学習困難か、または直感的でないこともある。例えば、時間期間を表すためのオブジェクト等の特殊なオンスクリーンオブジェクトは、ユーザーに不慣れな異なるユーザーインターフェース規範を利用することがある。
【００１１】
更に、多くのこのような技法は、ある入力メカニズムから、（ペン型、マウス、音声、およびキーボード入力メカニズム等の）別のメカニズムにうまく変換しない。ある入力メカニズムから別のメカニズムに切り換えるユーザーは、効率的にソフトウエアを用いるために、新規のオブジェクト制御規範を学習しなければならないことが多い。
【００１２】
従って、必要とされるのは、従来の仕組みの制約を解決する、オンスクリーンオブジェクトを操作するための制御を提供するための一貫性があり、統一されたユーザーインターフェース規範である。更に必要とされるのは、ユーザーが異なる種類のオブジェクトを操作しようとする場合でも、拡張性があり、使いやすく、学習しやすいユーザーインターフェース規範である。更に必要とされるのは、異なる種類の入力メカニズムにより使用可能で、最小限の中断、混乱、および再学習により、ある入力メカニズムから別のメカニズムへの変換が容易なユーザーインターフェース規範である。
【発明の開示】
【００１３】
本発明の一態様では、各オブジェクトを、オブジェクトに各種の制御操作を実行するための幾つかのゾーンで囲む。ゾーンの外観は、ある実施から別の実施に変更できるが、一般には、特定ユーザーインターフェース内の様々な種類のオブジェクト間で一貫性が保たれる。オブジェクトを囲むゾーンを、まとめて制御領域と称する。制御領域の各ゾーンは、特定種類の編集、または操作機能と関連する一連のコマンドと関係付けられる。オブジェクト周囲の制御領域の表示により、ユーザーは、オブジェクトに実行できる編集機能に直ちに焦点をあて、識別できる。更に、制御領域がオブジェクトに近いので、ユーザーは、離れたメニュー、ツールパレット、または他のユーザーインターフェース要素にカーソルを移動させる必要がなく、従って、ユーザーは所望のコマンドをより迅速に、かつ効率的に選択し、実行できる。
【００１４】
一実施の形態では、現在アクティブなオブジェクト（すなわち、現在焦点があたっているオブジェクト）と対応する一つの制御領域が一度に見え、別の実施の形態では、幾つか、またはすべてのオンスクリーンオブジェクトに対する制御領域が同時に見える。
【００１５】
一実施の形態では、オブジェクトに対する制御領域には、オブジェクト自体を囲む少なくとも９個のゾーンが含まれる。オブジェクト表現自体に重なる１層を含む９つのゾーンは、３×３の行列を形成する。一実施の形態では、オブジェクト表現は中央ゾーンと同じ領域に配置される。従って、８つのゾーンがオブジェクトを囲んで、４隅および４辺を形成し、１つのゾーンがオブジェクトに重なる。これらのゾーンは、オブジェクトを操作するための追加制御機能を提供する。一実施の形態では、追加ゾーンが提供され、中央ゾーンの外側のエッジに配置される矩形の帯状ゾーン、制御領域の外側のエッジに配置される別の矩形の帯状ゾーン、および制御領域のエッジに沿って配置される矩形のゾーンの内のどれか、またはすべてを含む。当該技術に精通する者には言うまでもないが、本発明の基本的特性から逸脱することなく、任意の編成、つまりレイアウトで、任意の数のゾーンが提供できる。
【００１６】
ユーザーは、オブジェクトの制御領域内のゾーンと相互作用することにより、オンスクリーンオブジェクトを操作するためのコマンドを規定する。相互作用モードには、例えば：ペン（タッチ、押圧、ストローク等）；マウス、キーボード；音声；リモートコントローラ等が含まれる。一実施の形態では、本発明のユーザーインターフェースは、少なくとも２つの上記モードでユーザーコマンドを受け取ることができるので、ユーザーは２台以上の入力装置を用いて一貫性のある手法でシステムと相互作用できる。コマンドは、メニュー選択、ストローク、クリック、ボタン押下等を含む様々な方法でアクティブにでき、対応するゾーンが定義するエリアで実行する。一実施の形態では、オブジェクトと相互作用するために利用可能なコマンドには、幾何的編集操作（すなわち、移動、サイズ変更、歪み、および／または回転に関わる操作）、および非幾何的編集操作の両方が含まれる。
【００１７】
このように本発明は、各オブジェクトに対する制御領域が、オブジェクト自体を囲み、オブジェクトに関するすべての関連編集操作へのアクセスを提供し、そして、一貫性をもって操作する多数の入力モードを提供するとともに、ゾーンとの相互作用が、あるオブジェクト形式から別の形式に一貫性のある、使いやすく、理解可能なユーザーインターフェース規範を提供する。
【００１８】
【００１９】
【００２０】
【００２１】
【００２２】
【００２３】
【００２４】
【００２５】
【００２６】
【００２７】
【００２８】
【００２９】
【００３０】
【００３１】
【００３２】
【００３３】
【発明を実施するための最良の形態】
【００３４】
システムコンポーネントおよび操作の以下の説明は、単に本発明の実施の形態の例示にすぎない。当該技術に精通する者には言うまでもないが、本明細書中で説明する種々の設計、実施、および技法は、単独または任意の組合せで用いてもよく、多くの改変、および等価編成を用いることができる。従って、以下の説明は、説明のために提示するものであって、開示した形式そのものに本発明を限定する意図はない。
【００３５】
本発明は、例えば、ワシントン州レドモンドのマイクロソフト社から入手可能なMicrosoft Windows XP （登録商標）等の、周知の任意オペレーティングシステムを実行する従来のパーソナルコンピュータ上に実装できる。以下に説明するように、本発明のシステムへの入力は、例えば、キーボード、マウス、タッチスクリーン、タッチパッド、トラックボール、タブレット、マイクロホン、リモートコントロール装置等を含む幾つかの任意の種類の装置により提供できる。以下の説明から明らかなように、本発明は、各種入力装置からのユーザー入力を受け取るための、一貫性のある、直感的な方法での各種モードによる技法を提供する。
【００３６】
当該技術に精通する者には言うまでもないが、本発明のユーザーインターフェース技法は、ディスプレイをユーザーに提供するパーソナルコンピュータ以外の装置上で実装してもよい。例えば、かかる技法は、携帯電話、家庭電化装置、携帯情報端末、事務用機器、壁掛けコントローラ、自動車制御システム等に実装してもよい。パーソナルコンピュータに実装すると仮定した明細書中での本発明の説明には、本発明の範囲、または操作可能装置の範囲を限定する意図はない。
【００３７】
ユーザーインターフェースレイアウト
図１を参照すると、本発明の実施の形態によるユーザーインターフェース１００の例が示されている。ユーザーインターフェース１００は、例えば、従来のパーソナルコンピュータのディスプレイスクリーンに表示されてもよい。オブジェクト１０２は、ユーザーインターフェース１００内に表示されるオンスクリーンオブジェクトの実施例である。図１の実施例では、オブジェクト１０２は、グラフィックオブジェクトである。しかしながら、当該技術に精通する者には言うまでもないが、オブジェクト１０２は、テキストオブジェクト、ビデオまたはオーディオのオブジェクト表現、またはユーザーインターフェース１００の文脈内で表示または表現できる任意の他の種類のオブジェクトであることができる。
【００３８】
図１に示すように、一実施の形態によれば、オブジェクト１０２は、まとめて制御領域と称する各種のゾーン１０３（Ａ〜Ｋ）を囲む。各ゾーン１０３は、オブジェクト１０２の一つ以上の局面を制御するか、またはオブジェクト１０２を操作するための、指定した種類の機能性を提供する。オブジェクト１０２は、ゾーン１０３を含む周囲の制御領域とともに、ユーザーインターフェース１００内のウィンドウを形成する。
【００３９】
ウィンドウを囲むユーザーインターフェース１００のエリアは、「パネル」１０４と称する。任意の数のウィンドウが、パネル１０４内に同時に提示でき、これらのウィンドウは、互いに重ね合わせることができ、または並べて表示し、最小化でき、さもなくば、本発明の改良により改変され、強化されるような既知のユーザーインターフェース技法により操作することができる。一実施の形態では、任意の所与の時間においてアクティブなウィンドウは唯一つであり、このウィンドウが注目されている、つまり現在アクティブなオブジェクトに対するものである。ユーザーは、カーソルをウィンドウに移動するか、ボタンをクリックするか、または一連のキーストローク、もしくは音声コマンドを用いて、特定のウィンドウを選択し、アクティブにする等の、周知の技法により、ウィンドウ（およびそのオブジェクト１０２）をアクティブにすることができる。一実施の形態では、ゾーン１０３は、現在アクティブなウィンドウに対してだけ表示され、他のすべてのウィンドウに対しては省略される。一実施の形態では、ゾーン１０３は、すべてのオンスクリーンウィンドウに対して表示される。更に、一実施の形態では、パネル１０４自体は、それをアクティブ化し、パネル１０４の制御および操作に関するゾーン１０３が表示できるように、他の任意のウィンドウと同様に扱われる。カーソル１１０も示すが、これはマウス、または他のポインティングデバイスを介してユーザーが制御し、以下に説明するように、これを用いてコマンド、およびメニューを選択し、アクティブにできる。
【００４０】
図１の実施例では、オブジェクト１０２に重なるゾーン１０３Ｊ、および制御領域１０１の外側に配置されるゾーン１０３Ｋを含む、１０個のゾーン１０３Ａ〜１０３Ｋを示す。ゾーン１０３Ｋは、領域１０１の底部に沿って延在するように図面では示すが、一実施の形態では、領域１０１を除くすべてのエリアを含む。当該技術に精通する者には言うまでもないが、任意の数のゾーンを含むことができ、図１に示すゾーン１０３の特定の配置は、単なる例示にすぎない。例えば、図１Ａに示すように、追加の矩形帯状領域１０３Ｌ、１０３Ｍをゾーン１０３Ｊの外縁および制御領域１０１の外縁に配置できる。
【００４１】
入力メカニズム
動作に際しては、ユーザーインターフェース１００がその上で動作する装置は、オンスクリーンオブジェクト１０２の各種ゾーン１０３に関するユーザーコマンドを検出する。例えば、ユーザーは、マウスまたは他の入力装置を用いてオンスクリーンカーソル１１０をゾーン１０３に移動する。次いで、ユーザーは、マウスのボタンをクリックして、ゾーン１０３と関連するコマンドまたは動作をアクティブにする等のアクションを実行する。以下に更に詳細に説明するように、幾つかのゾーン１０３は、異なるユーザーアクションと関連する異なるコマンド、または操作を有していていもよく、例えば、ユーザーは、左ボタンをクリックして第１コマンドをアクティブにするか、または右ボタンにより第２コマンドをアクティブにしてもよい。異なる種類のコマンドと関連する他の可能性のあるアクションには：ボタンを押して保持し、カーソル１１０を特定方向に僅かな距離だけ移動させるゾーン１０３内での「ストローク」；ゾーン１０３内でクリックしながらシフトキー（または他の修正キー）を押して保持する、ゾーン１０３内での「シフト−クリック」；または、ゾーン１０３内でのダブルまたはトリプルクリック、が含まれる。
【００４２】
上記説明のいずれの入力装置も、ゾーン１０３と相互作用するために用いることができる。ゾーン１０３と相互作用するためのユーザーアクションおよび入力メカニズムの例には：
【００４３】
−ペン入力：手書き入力、ストローク、ジェスチャ、シンボル、および略語に適している；
【００４４】
−マウス、または他のポインティング装置：クリック、ドラッグ、ストローク等に適している；
【００４５】
−キーボード：テキスト入力、オンスクリーンエレメント間のナビゲーション、またはコマンドの単一キーアクティブ化に適している；
【００４６】
−音声入力：コマンドのアクティブ化、テキスト入力に適している；ユーザーは、ゾーン名（例えば、「コピー」）を声に出して言い、そのゾーンのメニューを表示し、次いで、表示されたメニューからコマンドを言い、そのコマンドをアクティブにする。
【００４７】
−リモートコントロール（例えば、ＲＦまたはＩＲ送信器）入力：ナビゲーション、データ入力、コマンドアクティブ化、および可能性としては筆記体およびストロークに適している：
【００４８】
−実施の形態では、本発明のユーザーインターフェースは、上記モードの２つ以上に一貫性のある方法でユーザーコマンドを受け取ることができる。
【００４９】
ユーザーアクション
多くの異なるコマンドのセットが可能である。一実施の形態では、ユーザーは、以下のユーザー入力アクションを実行してコマンドをアクティブにできる：
【００５０】
−標準ボタンをクリック（例えば、左クリック）する一方で、カーソル１１０をゾーン１０３におく（または、ペン入力では、ペンボタンを押さないでゾーン１０３にタッチする）：これは、ゾーン１０３に対するコマンドを含む一次メニューとも呼ばれるポップアップメニューをアクティブにする。表示されるポップアップメニューは、ゾーン１０３に対する関連コマンドを示し、ユーザーは周知のメニューナビゲーション技法を用いて、表示コマンドの一つに移動し、選択できる。一実施の形態では、各ゾーン１０３に対する各ポップアップメニューは、特定テーマまたは汎用アクション、または関連アクショングループと関連する。例えば、あるゾーン１０３は、フォント特性に関する多様なコマンドまたはアクションを有することができ、別のゾーン１０３は、パラグラフ特性に関する多様なコマンドを有することができる等である。一実施の形態では、ポップアップメニューに含まれるのは、所定の方向（例えば、上、下、左、または右）におけるストロークによる入力装置の移動で呼び出すことのできるコマンドである。図２は、４個のストロークアイコン８０２を示すポップアップメニューを示し、各ストローク方向は特定コマンドに対応している。同様に含まれるのは、ゾーン１０３に対するダブルクリックに対応しているコマンドである。当該技術に精通する者には言うまでもないが、メニューには、ゾーン１０３内で実行できる他の種類の任意のアクションまたはジェスチャに対するコマンドを含むことができ、アクションまたはジェスチャを用いて直接アクティブ化できないコマンドを含めてもよい。図２を参照すると、かかるメニュー８０１の実施例を示し、コマンド８０３、および対応するストローク方向を指示するアイコン８０２が含まれ、アイコン８０２を有するコマンド８０３は、ダブルクリックおよびＥｎｔｅｒキー等の、他のアクションを指示している。
【００５１】
−代替のボタン（例えば、右ボタン）、または修正ボタン（例えば、シフトクリック）をクリックするか、またはカーソル１１０がゾーン１０３にある間にボタンをクリックして保持する（または、ペン入力では、ペンボタンを押したままゾーン１０３をタッチするか、またはペンをゾーン１０３にタッチして保持する）：これは、二次メニューと呼ばれることもある代替のポップアップメニューをアクティブにする。代替のポップアップメニューは、最初のポップアップメニュー８０１と同様の方法で操作し、また、適用可能なストローク方向、ダブルクリック等に対応する直接アクションを示すアイコンまたはインジケータも含んでいる。一実施の形態では、オンスクリーンカーソル１１０が変化して、代替メニューをアクティブになるのに十分ボタンが保持されたことを示す。
【００５２】
−ゾーン１０３でストローク（すなわち、ボタンを押して保持し、カーソル１１０を特定方向に短い距離移動させる）を開始する（または、ペン入力では、ペンボタンを押さずにストロークする）：これは、特定ストローク方向と関係付けられているアクションを実行する。ストロークは、直線、曲線、またはもっと複雑な形状またはジェスチャを含む任意の種類でよい。一実施の形態では、本明細書で説明するように、ストロークは、特定方向（上、下、左、または右）と関係付けられるが、当該技術に精通する者には言うまでもなく、他の種類のストロークを用いてもよい。上記の説明のように、一実施の形態では、ゾーン１０３に対するポップアップメニュー８０１には、各ストローク方向が含まれ、どのコマンドが各ストローク方向と関係付けられるかを指示している。従って、ユーザーは、ストローク入力を実行することにより、または、クリックした後ポップアップメニュー８０１から所望の項目を選択することにより、任意のこれらアクションをアクティブにできる。より長いストロークは、クリックアンドドラッグのアクションと関係付けることができる。
【００５３】
−ゾーン１０３でダブルクリック（または他のアクション）する：これは関係コマンドを実行する。上記説明のように、一実施の形態では、ゾーン１０３に対するポップアップメニュー８０１は、どのコマンドがダブルクリック（または他のアクション）と関係付けられているかを指示している。従って、ユーザーは、ダブルクリックにより、または、クリックした後ポップアップメニュー８０１から所望の項目を選択することにより、コマンドをアクティブにできる。
【００５４】
−ゾーン１０３で代替ストローク（すなわち、代替ボタン（右ボタン）、または修正ボタン（シフトストローク）を押して保持し、カーソル１１０を特定方向に短い距離移動させる）を開始する：これは、特定のストローク方向（上、下、左、または右）と関係付けられる代替コマンドを実行する。上記の説明のように、一実施の形態では、ゾーン１０３に対する代替ポップアップメニューには、各ストローク方向が含まれ、どの代替アクションが各ストローク方向と関係付けられているかを指示している。一実施の形態では、修正キーが押された場合、オンスクリーンカーソル１１０が変化して、代替コマンドが実行されることをユーザーに気付かせる。
【００５５】
−ゾーン１０３で代替ダブルクリック（すなわち、代替ボタン（右ボタン）、または修正ボタン（シフトストローク）を押して保持し、ダブルクリック）する：これは関係するコマンドを実行する。上記の説明のように、一実施の形態では、ゾーン１０３に対するポップアップメニュー８０１は、どのコマンドが代替ダブルクリック（または他のアクション）と関係付けられているかを指示している。従って、ユーザーは、代替ダブルクリックにより、またはポップアップメニュー８０１から所望の項目をクリックし、次いで、選択することにより、コマンドをアクティブにできる。
【００５６】
代替メニュー、ストロークコマンド、ダブルクリック等は、入力装置に依存する幾つかの異なる方法でアクティブにできる。２ボタン装置では、代替ボタンを用いて、代替コマンドをアクティブにできる。１ボタン装置では、代替のメニューおよびストロークは、ボタンを押し、移動せずにある瞬間保持することにより、アクティブにできる。一実施の形態では、オンスクリーンカーソル１１０が変化して、代替アクションが実行される時を示す。コマンドのキーボードアクティブ化に対するメカニズムを、以下に詳細に説明する。
【００５７】
コマンド構成の実施例
図３Ａ、および３Ｂを参照すると、図１に示すゾーンレイアウトに基づく、一実施の形態によるコマンド構成の実施例が示されている。図３Ａは、一次メニューと対応する種類のコマンドを示し、図３Ｂは、二次または代替メニューと対応する種類のコマンドを示す。
【００５８】
各ゾーン１０３は概して、以下に説明するように、特定の機能、または種類と関連する幾つかのアクションと関係付けられる。これらのアクションは、オブジェクトの種類間で一貫性があるのが一般的であるが、アクションによっては、オブジェクト特定であってもよく、および／または特定種類のオブジェクトに適用不可であってもよい。
【００５９】
一次メニュー８０１を介して一般にアクセス可能な、最も普通に用いられるアクションに加えて、各ゾーン１０３は、代替アクション、またはアクションのセットとも関係付けられる。例えば、代替メニューは、マウスを右クリックまたはオプションクリックすることにより、またはシフトキーを押してからゾーン１０３のアクティブ化キーを押すことにより、アクセスされてもよい。代替キーストロークは、右マウスボタン、またはシフトかオプション等の修正キーを押して保持しながらストロークすることにより、アクセスできる。代替アクションにアクセスするために、他の技法を用いてもよい。
【００６０】
以下の表は、一実施の形態による各種のゾーン１０３に対する一次コマンドメニューを要約する。リストに挙げた各種オブジェクトに対して、利用可能なコマンドを幾つか示す。これらのコマンドは、一次メニュー８０１を介して、および／または、＜＜（左ストローク）、＞＞（右ストローク）、＾（上ストローク）、ｖ（下ストローク）、および：（ダブルクリック）等のシンボルで表に示すような、ストロークコマンド、ダブルクリック、または他のアクションを介して、利用可能である。
【表１】
2007505371.tif 000002
【表２】
2007505371.tif 000003
【表３】
2007505371.tif 000004
【表４】
2007505371.tif 000005
【表５】
2007505371.tif 000006
【表６】
2007505371.tif 000007
【表７】
2007505371.tif 000008
【表８】
2007505371.tif 000009
【表９】
2007505371.tif 000010
【表１０】
2007505371.tif 000011
【表１１】
2007505371.tif 000012
【表１２】
2007505371.tif 000013
【表１３】
2007505371.tif 000014
【表１４】
2007505371.tif 000015
【表１５】
2007505371.tif 000016
【００６１】
外側ゾーン１０３Ｋ：Ｇｏ Ｔｏ
ユーザーが現在アクティブな制御領域１０１の外側の制御領域１０１をクリックした場合に、選択した制御領域１０１と対応するオブジェクトが、アクティブになる。
【００６２】
一実施の形態では、既存オブジェクトの制御領域１０１以外の場所でユーザーがクリックすると常に、「リソース」文書の新規コピーが空のスペースにロードされる。リソース文書は、オブジェクト階層の最高レベルオブジェクトである。
【００６３】
ユーザーが一連のオブジェクトを横切って、カーソル１１０をドラッグした場合、これらのオブジェクトは、ハイライトされる。ボタンを放すか、ペンを持ち上げると、最新のハイライトオブジェクトがアクティブとなり、新規制御領域１０１が、このオブジェクトを囲むように現れる。ユーザーがアクティブオブジェクトの境界を越えて、カーソル１１０を移動させた場合、オブジェクト内容が自動的にスクロールして、追加オブジェクトがアクティブ化のためにアクセス可能となる。
【００６４】
オブジェクト間の追加ナビゲーションは、外側ゾーン１０３Ｋと対応するメニューをアクティブにすることにより、またはカーソル１１０が外側ゾーン１０３Ｋに配置されている間に、ストロークまたは以下に挙げたような他のアクションを実行することにより利用可能となる。
Ｇｏ ｔｏ：
最初（シブリング）
最後（シブリング）
＜＜前
＞＞次
／＼親
＼／子
：これ（文書）
リソース１
リソース２
．．．．
リソースｎ
【００６５】
更に詳細に以下に説明するように、リソース１からｎは、「リソース」文書で定義され、ユーザー情報、ハードウエア装置、およびネットワークリソースの全ての主なグループ化を規定する。典型的なリソース定義には以下が含まれる：
お気に入り
ハウス
媒体
アドレス
名称
電子メール
日付
件名
電話
ウェブ
オフライン格納
プリンタ
【００６６】
以下の表で、一実施の形態による各種ゾーン１０３に対する代替コマンドメニューを要約する。リストに挙げた各種オブジェクトに対する幾つかの利用可能なコマンドを示す。これらのコマンドは、（例えば、右クリックによりアクティブにされた）代替メニューを介して、および／または代替ストロークコマンド、代替ダブルクリック、または＜＜（左ストローク）、＞＞（右ストローク）、＾（上ストローク）、ｖ（下ストローク）、および：（ダブルクリック）等のシンボルで表に示されているような他のアクションを介して、利用可能となる。
左上ゾーン１０３Ａ（代替）：塗りつぶし
【００６７】
塗りつぶしは、内部空間をもたないオブジェクト（線、円弧、および点等）を除く任意のオブジェクトに適用できる。塗りつぶしメニューのアクティブ化は、パレットを出現させ、それによりユーザーは所望の色を選択できる。
【表１６】
2007505371.tif 000017
【００６８】
右上ゾーン１０３Ｃ（代替）：アンドゥ
ゾーン１０３Ｃ内の代替クリックは、アンドゥコマンドをアクティブにする。ユーザーは代替メニューをアクティブにして以下のようなコマンド履歴内を巡回することもできる。
アンドゥ（２履歴オブジェクト）：
＜＜古く（履歴を示す）
＞＞新しく（履歴を示す）
＼／全てを示す
／＼全て
：これ（最新履歴）
【００６９】
中央左ゾーン１０３Ｄ（代替）：テキスト色
テキスト色は、テキストを含む任意のオブジェクトに適用できる。テキスト色メニューのアクティブ化は、パレットを出現させ、それによりユーザーは所望の色を選択できる。
【表１７】
2007505371.tif 000018
【表１８】
2007505371.tif 000019
【００７０】
左下ゾーン１０３Ｆ（代替）：境界色
境界色は、境界を有する可能性がある任意のオブジェクトに適用できる。例えば、これには、イメージ、数、時間、パラグラフ、リスト、リスト内項目、表、およびセルが含まれる。境界色メニューのアクティブ化は、パレットを出現させ、それによりユーザーは所望の色を選択できる。
【表１９】
2007505371.tif 000020
【表２０】
2007505371.tif 000021
【表２１】
2007505371.tif 000022
【表２２】
2007505371.tif 000023
【００７１】
中央ゾーン１０３Ｊ（代替）：コピー
ユーザーがゾーン１０３Ｊ内で代替クリックした場合、アクティブオブジェクトの輪郭を別の目標地に移動することにより、アクティブオブジェクトのコピーが複製される。目標オブジェクトは別の文書内のこともある。
【００７２】
ユーザーは、現在アクティブなオブジェクトのコピーを配置し、操作するためにメニューをアクティブにできる。メニューには、以下のコマンドが含まれる（これらの内の幾つか、または全ては、ストロークを介しても利用可能である）：
コピー（輪郭を目標に移動）
／＼上（ピクセル）
＼／下（ピクセル）
＜＜左（ピクセル）
＞＞右（ピクセル）
：出る（この文書をアクティブにする）
【００７３】
外側ゾーン１０３Ｋ（代替）：スクロール
スクロールコマンドには、外側制御領域１０１を代替クリックすることによりアクセスする。ボタンが保持されているか、またはペンがディスプレイと接触している限り、現在アクティブなオブジェクトは、ペンまたはマウスの移動を用いて直接スクロールされる。一実施の形態では、オブジェクトのスクロール限界に達すると、オブジェクトの外縁の色が（スクロールの方向に対応して）変わる。
【００７４】
別の実施の形態では、代替クリックは以下のコマンドを含むスクロールメニューをアクティブにする：
スクロール（文書）：
＜＜左（半ページ）
＞＞右（半ページ）
／＼上（半ページ）
＼／下（半ページ）
：リセット（上部または底部）
【００７５】
上記説明の他のメニューと同様に、コマンドは、ストローク、ダブルクリック、または指示される他のアクションを実行することにより、直接アクティブ化することもできる。
【００７６】
可能であれば常に、各ゾーンは、統一された一貫性のあるアクセスを特定テーマと関連するコマンドグループに提供する。クリック、クリックして保持、またはストロークの入力アクションは、グループ内のコマンドにアクセスする様々な方法を提供する。
【００７７】
例えば、ゾーン１０３Ａは、時間で変化する性質のオブジェクト（オーディオ、ビデオ、アニメーション等）と関連して追従するように動作する。ゾーン１０３Ａは、データオブジェクトの開始を変更するためのコマンドを提供する（例えば、データオブジェクトがビデオストリームの場合、ゾーン１０３Ａにより、ビデオストリームが開始される時間コードの操作が可能となる）。上記の表で説明したように、ゾーン１０３Ａのストロークは、ストロークの方向に依存する量、および方向だけ、開始点を変更する。例えば、縦ストロークにより、開始点の粗調整（分を変更する）がなされ、一方、水平ストロークにより微調整（秒で変更する）がなされよう。代替として、縦ストロークは、１時間の増分（または、何か他の比較的粗い増分）だけ値を変更してもよく、一方、水平ストロークは、１分間の増分（または、何か他の比較的細かい増分）だけ値を変更してもよい。一般に、上および左の方向のストロークは、より早い開始点に移動させ、下および右方向のストロークは、より遅い開始点に移動させる。移動の特定の増分、および方向は予め設定でき、または、基本設定もしくはオプションスクリーンを介してユーザー構成可能である。
【００７８】
実施例：入力フィールド
ここで図７Ａ、および図７Ｂを参照すると、特定種類のオブジェクト、すなわち、入力フィールド７００と関連する本発明の動作の実施例が示されている。図７Ａは、制御領域１０１がアクティブになる前（例えば、入力フィールド７００に焦点が当てられるか、または選択される前）の入力フィールド７００を示す。図７Ａの入力フィールド７００の例は、例えば、アポイントおよび時間の合図についての情報を管理するためのカレンダープログラムに含まれているような、時間枠（９：００〜９：４５）を示す。入力フィールド７００は、２つの主な目的を有するオブジェクトであり、すなわち、１）時間枠表現を表示すること、および、２）時間枠および／または表示の方法を変更するためのユーザー入力を受け付けること、である。
【００７９】
一実施の形態では、入力フィールド７００は、ユーザーがその境界内をクリックするか、タップするか、またはフィールドを選択した場合、アクティブになる（つまり、「焦点」が当てられる）。次いで、図７Ｂに示すように、ゾーン１０３を含む制御領域１０１が可視化される。上記の概略用語で説明する図７Ｂの実施例は、入力フィールド７００が表す時間の値および書式を変更するユーザー入力を容易にするための特定機能を、ゾーン１０３がどのように提供するかを示す。特に：
【００８０】
−ゾーン１０３Ａにより、ユーザーは時間の開始点を変更できる。上記説明のように、縦のストロークは粗い変更を指示し、一方、水平のストロークは細かい変更を指示する。一実施の形態では、ユーザーがスタイラスまたは他のポインティング装置をストローク端の位置で保持している場合、時間調整が繰り返される。別の実施の形態では、ユーザーが同一方向にストロークを継続している場合、時間調整が繰り返される（要望があれば、繰り返しが開始される前に、キーボードに対する自動繰り返しモードで従来行われているように、待機時間を実装できる）。時間調整の繰り返しは、ユーザーが所定の時間のあいだ保持し続ける場合に加速するよう設定できる。一実施の形態では、ユーザーは、時間調整が離れていく場合、「バックアップ」できる。ユーザーがリアルタイムで時間調整を見て、正確に正しい時刻で手を離し、または逆回しできるように、入力フィールド７００の表示は絶えず調整される。
【００８１】
−ゾーン１０３Ｈにより、ユーザーは、時間枠の終了点を変更できる。終了点調整は、ゾーン１０３Ａと関連する上記説明と同一の粗調整／微調整規範を用いて実行する。
【００８２】
−ゾーン１０３Ｂ、１０３Ｃ、１０３Ｄ、１０３Ｅ、１０３Ｆ、１０３Ｇ、１０３Ｊは、上記の説明のようなコマンドを提供する。
【００８３】
一実施の形態では、イベントの持続時間は、開始点が変更されても一定のままである（それにより、終了点は、開始点と同じ量だけ変わる）。別の実施の形態では、開始点が変更されても、終了点は一定値を保つ（それにより、持続時間は変わる）。更に別の実施の形態では、これら２つの操作モードのどちらかを所望する場合、ユーザーは、シフト−クリックするか、または修正キーにより指示でき、代替として、基本設定、またはオプションスクリーンを介して、そのモードを設定できる。
【００８４】
実施例：表およびセル
本発明は、表オブジェクトおよびセルオブジェクトの特性を操作するための一貫性のあるインターフェースを提供する。行高さ、列幅、および表全体サイズ等のサイズは、絶対表現または収容オブジェクトの百分率で規定できる。例えば、セル幅は、収容する表の幅の２５％となるように構成でき、表の幅が増大すると、セル幅も比例して増大する。ユーザーインターフェースは、個々のセル、行、列、または表全体の選択、および操作を可能にする。一実施の形態では、例えば、表の隅をクリックすると、表全体が選択され；左または右の縁をクリックすると、クリックした位置の表の行が選択され；上部または底部の縁をクリックすると、クリックした位置の表の列が選択され；そして、セル上をクリックすると、個々のセルを選択する。一実施の形態では、制御領域は、選択したセル、列、行、または表に対して提示されるので、アクティブ制御領域の様々なゾーン内でユーザーはコマンドをアクティブにできる。
【００８５】
キーボード入力
上記説明の入力モードに加えて、ＱＷＥＲＴＹキーボード等の標準キーボードを介して、ユーザーはコマンドをアクティブにすることもできる。一実施の形態では、各ゾーン１０３は、キーストロークと関係付けられ、対応するキーを押すと、ゾーン１０３に対するメニュー８０１が表示される。ストロークコマンド、ダブルクリックコマンド等はキーストロークと関係付けることができるので、ユーザーは、対応するキーを（おそらく、コントロールキー、Ａｌｔキー、または他の幾つかの修正キーと併せて）押すことによりコマンドをアクティブにできる。文字または他のインジケータをゾーン１０３内に表示して、どのキーストロークが各ゾーン１０３と対応するかを示すことができる。ゾーン１０３に対するキーストロークは、記憶しやすいように適切な方法で構成できる（例えば、Ｃｔｒｌ−ＧはＧｏ Ｔｏと対応し、一方、Ｃｔｒｌ−Ｃはコピーと対応する）。
【００８６】
ここで図４Ａ、および４Ｂを参照すると、様々なゾーン１０３と対応する追加キー４０１を含むキーボード４００の実施例が示されている。キー４０１は、対応するゾーン１０３にマッピングされる位置の各キー４０１により、標準ＱＷＥＲＴＹキーボード４０３の周囲に配置されている。例えば、開始メニュー８０１をアクティブにするキー４０１Ａは、やはり開始メニュー８０１をアクティブにするゾーン１０３Ａの位置と対応する位置の、キーボード４００の左上隅に配置される。同様な対応が、キー４０１Ｂ〜４０１Ｈに適用される。代替のメニューは、例えば、所望のゾーンキー４０１を押しながら、シフトキー４０４を押して保持することによりアクティブにできる。
【００８７】
図４Ａの実施例では、キーボード４００には、押した時に、上、下、左、および右ストロークと対応するストロークアクションを実行するキー４０２Ｕ、４０２Ｄ、４０２Ｌ、４０２Ｒも含まれる。ユーザーは、キー４０１を押し、続けてストロークキー４０２を押して、押下したキー４０１と対応するゾーン１０３のアクションを実行することができる。一実施の形態では、ユーザーがキー４０１を押した場合、システムは、（１／４秒等の）所定の短時間待機してから、キー４０１と関係付けられるメニューを提示する。待機時間中に、ユーザーがキー４０２Ｕ、４０２Ｄ、４０２Ｌ、４０２Ｒの内の一つを押した場合、またはキー４０１を再度押した場合、規定のストロークまたはダブルクリックと関係付けられるコマンドが直ちに実行され、メニューは表示されない。待機時間中に、メニューから所望のコマンドを指示するアルファベットキーをユーザーが押した場合、メニュー自体は再表示されずに、そのコマンドが直ちに実行される。待機時間中に、ユーザーがこれらのアクションをどれも実行しない場合、システムはメニューの表示に進む。この方法で、システムは、（コマンド構造に慣れていて、メニュー中のコマンドをアクティブにする前にメニューを見る必要がない）熟練ユーザー、および（アクティブにする前に利用可能コマンドを見ることを望む）入門者に適合する。
【００８８】
代替として、代替ストロークアクションは、シフト＋キー４０１を押し、続いてストロークキー４０２を押すことによりアクティブにできる。ストロークキー４０２は、所定時間の間押して保持した場合、自動的に繰り返されるように構成できる。一実施の形態では、Ｅｎｔｅｒキーの押下は、最新の押下キー４０１と対応するゾーン１０３上をダブルクリックすることと等価である。
【００８９】
図４Ｂの実施例では、キーボード４００には、ストロークアクションを実行するためのタッチパッド４０５が含まれ、これらは、図４Ａのストロークキー４０２を置き換える。タッチパッド４０５を横切る指の移動は、ペンストロークまたはマウス移動と等価であり、タップはクリックと等価、そしてダブルタップはダブルクリックと等価である。ユーザーは、キー４０１を押し、タッチパッド４０５をストロークするか、またはタップして、押下したキー４０１と対応するゾーン１０３内のストロークアクションを実行することができる。代替として、ストロークアクションは、シフト＋キー４０１を押し、次いで、タッチパッド４０５をストローク、またはタップすることにより、アクティブにできる。例えば、アクティブオブジェクト内の各ワードの最初を大文字にするには、ユーザーは「変更」ボタン４０１Ｆを押し、次いで、タッチパッド４０５上で右ストロークを実行する。
【００９０】
当該技術に精通する者には言うまでもないが、キー４０１および４０２は、標準キーもしくはボタン、またはＱＷＥＲＴＹキーボード４０３を囲むタッチ感応領域として、または幾つかの他の技法により実装できる。代替として、標準キーボードを用いて、ゾーン１０３と類似のコマンドを実行でき、キーによっては、一時的または恒久的に再割当てされる。一実施の形態では、キーは、キーボード上の物理的配置に基づいて再割当てされる。例えば、標準の「Ｅｓｃ」キーは、ゾーン４０１Ａと対応する開始コマンドにアクセスし；Ｔａｂキーはゾーン４０１Ｄと対応する書式コマンドにアクセスし；標準の矢印キーはストロークをアクティブにできる等である。代替メニューは、例えば、所望のゾーンキー４０１を押しながら、シフトキー４０４を押して保持することにより、アクティブにできる。
【００９１】
別の実施の形態では、標準キーボードを用いることができ、メニュー８０１およびコマンドを、メニュー８０１またはコマンドの最初の文字（または、他の幾つかの文字）と対応するキーストロークを介して選択できる。それが表示されたら、矢印キーを用いてメニュー８０１内をナビゲーションできる。ｅｎｔｅｒキーを用いて現在ハイライトされているメニュー項目をアクティブにできる。
【００９２】
上記技法を用いて、ペン、マウス、または他のポインティング装置を必要とせずに、キーボード上で全て入力する方法で本発明を実装できる。
【００９３】
音声入力
一実施の形態では、本発明のユーザーインターフェースは、既存の音声アクティブ化ユーザーインターフェースシステムと組み合わせることができる。ユーザーは所望のコマンドと対応するワードを話すことによりコマンドをアクティブにできる。当該技術で周知のように、音声認識ソフトウエアは、マイクロホンからの信号を翻訳してユーザーが話したワードを決定する。次いで、話したワードと対応するコマンドを実行する。
【００９４】
一実施の形態では、ユーザーは、制御領域のゾーン１０３と対応するワードの内の最初に話した一語により音声コマンドをアクティブにする。そのゾーン１０３に対するコマンドメニュー８０１が表示され、ユーザーは、所望のコマンドに対応するワードを話すことにより、メニュー８０１内のコマンドをアクティブにできる。代替として、ユーザーがメニュー表示のバイパスを希望する場合は、ゾーン１０３に対するワードを話し、続けて直ぐにそのゾーン１０３に対するメニュー８０１内のコマンド名を話すだけでよい。例えば、ユーザーが「書式」と言うと、書式メニュー８０１が次いで表示され、ユーザーが「太字」と言えば、書式メニュー８０１から太字のコマンドを選択できる代替として、ユーザーは、「書式、太字」と言うだけで太字コマンドをアクティブにできる。
【００９５】
一実施の形態では、本発明のシステムは、口述筆記、および清書に対する音声入力を受けることもできる。従って、ユーザーはマイクロホンに向かって話すことにより、テキストを入力でき、システムは、話し言葉をテキスト入力として解釈する。このような機能は周知の音声入力技法により実装される。
【００９６】
リモートコントロール入力
一実施の形態では、本発明のシステムは、リモートコントローラを介して提供される入力を受けることができる。ここで図５を参照すると、本発明の一実施の形態によるリモートコントローラ５００の実施例が示されている。リモートコントローラ５００は、赤外線、またはＲＦ信号等の信号を、周知の技法による送信機５０１を介して、本発明をサポートする装置（不図示）に送信する。
【００９７】
一実施の形態では、リモートコントローラ５００には、幾つかのゾーン５０３Ａ〜５０３Ｋにサブ分割された、タッチパッド５０２が含まれる。ゾーン５０３Ａ〜５０３Ｈは、図３Ａ、および図３Ｂに示すオンスクリーンインターフェースのゾーン１０３Ａ〜１０３Ｋと類似の方法で編成される。ゾーン５０３Ａ〜５０３Ｋのどれかにタッチするか、またはストロークすると、上記に説明したような、対応するゾーン１０３Ａ〜１０３Ｋにタッチするか、またはストロークしたのと同じ結果が得られる。ゾーン５０３Ａ〜５０３Ｋにタッチし、移動する前に一瞬指を保持すると、ゾーンの代替の（つまり、補助の）コマンドが、上記に説明したように、アクティブになる。更に、タッチパッド５０２には、音量を操作するゾーン５０３Ｌが含まれる（例えば、上下にストロークして音量を増減するか、またはタップしてミュート、非ミュートする）。リモートコントローラ５００は、ゾーン５０３へのタッチ／ストロークに基づいて適切な信号を生成し、その信号を装置に送信する。装置は、信号を受信するとともに、装置のオペレーティングシステムが必要とする場合は、それを適切な書式、およびセマンティックに変換する信号受信機（例えば、ＩＲ受信機、またはＲＦ受信機）を有し、オペレーティングシステムは、ユーザーインターフェース１００を有するアプリケーションに信号を提供する。
【００９８】
別の実施の形態ではリモートコントローラ５００には、タッチパッド５０２を置き換え、上記で説明したゾーン５０３と類似の機能を実行する幾つかのボタン（不図示）が含まれる。代替として、当該技術に精通する者には言うまでもないが、他の入力ノブ、ボタン、ホイール等を本明細書で説明したものの代わりに、または追加して、提供してもよい。更に、当該技術に精通する者には言うまでもないが、図５の特定編成のゾーン５０３は単なる例示にすぎない。
【００９９】
スクリーンショット実施例
ここで図６を参照すると、入力フィールド７００に対するメニュー８０１の実施例を示すスクリーンショットが示されている。メニュー８０１は、制御領域１０１の右下のゾーンをクリックするとアクティブになる。入力フィールド７００には、値「０５：３０ｐ−０５：４５ｐ」が含まれる。メニュー８０１には、様々な増分により終了時間を変更するためのコマンド８０３が含まれる。アイコン８０２は、コマンド８０３と対応するストローク方向を指示する。本実施例では、水平ストロークは、粗調整（増分１５分）用に用いられ、縦ストロークは微調整（増分１分）用に用いられる。
【０１００】
ここで図８を参照すると、入力フィールド７００、７００Ａの実施例を含むウィンドウ８００を示すスクリーンショットが示されている。各種の数値データを、入力フィールド７００、７００Ａに示す。本発明の技法を用いて、とりわけ示される実施例全てに対する値および書式を調整または操作できる。一つの入力フィールド７００Ａには、現在焦点が当てられていて、ユーザーが制御領域１０１の右下ゾーン１０３Ｈをクリックすることにより、入力フィールド７００Ａに対するメニュー８０１をアクティブにしたところである。図６の実施例として、入力フィールド７００Ａには、値「０５：３０ｐ−０５：４５ｐ」が入っている。メニュー８０１には、様々な増分により終了時間を変更するためのコマンド８０３が含まれる。アイコン８０２は、コマンド８０３と対応するストローク方向を指示する。繰り返しになるが、水平ストロークは、粗調整（増分１５分）用に用いられ、縦ストロークは微調整（増分１分）用に用いられる。
【０１０１】
ここで図９を参照すると、表のセル９０２Ａに対するメニュー８０１の実施例を示すスクリーンショットが示されている。表９０１には、幾つかのセル９０２、９０２Ａが含まれる。セル９０２Ａ（表９０１の２列にまたがる）には現在焦点が当てられていて、ユーザーが制御領域１０１の右下ゾーン１０３Ｈをクリックすることにより、メニュー８０１をアクティブにしたところである。メニュー８０１には、セル９０２Ａのスパンを一列一行にリセットするためのコマンド８０３はもとより、セル９０２Ａを縮小するか、または拡大するためのコマンド８０３が含まれる。アイコン８０２は、コマンド８０３と対応するストローク方向を指示する。一つのアイコン８０２はシンボル「：」であり、コマンドを直接アクティブ化するための対応アクションがダブルクリックであることを指示する。
【０１０２】
ここで図１０を参照すると、表の列に対するメニュー８０１の実施例を示すスクリーンショットが示されている。表９０１には、幾つかのセル９０２、９０２Ｂが含まれる。セル９０２Ｂは、現在焦点が当てられている列をまとめて形成する。ユーザーが制御領域１０１の右下ゾーン１０３Ｈをクリックすることによりメニュー８０１をアクティブにしたところである。メニュー８０１には、列幅を変更するための、かつ自動幅に幅をリセットするためのコマンド８０３が含まれる。アイコン８０２は、コマンド８０３と対応するストローク方向を指示する。一つのアイコン８０２はシンボル「：」であり、コマンドを直接アクティブ化するための対応アクションがダブルクリックであることを指示する。メニュー８０１には、ストロークまたはアクションを介して、直接アクティブ化できない追加コマンド８０３Ａも含まれる。
【０１０３】
ここで図１１を参照すると、表の行に対するメニュー８０１の実施例を示すスクリーンショットが示されている。表９０１には、幾つかのセル９０２、９０２Ｃが含まれる。セル９０２Ｃは、現在焦点が当てられている行をまとめて形成する。ユーザーが制御領域１０１の右下ゾーン１０３Ｈをクリックすることによりメニュー８０１をアクティブにしたところである。メニュー８０１には、行高さを変更するための、かつ自動高さに高さをリセットするためのコマンド８０３が含まれる。アイコン８０２は、コマンド８０３と対応するストローク方向を指示する。一つのアイコン８０２はシンボル「：」であり、コマンドを直接アクティブ化するための対応アクションがダブルクリックであることを指示する。メニュー８０１には、ストロークまたはアクションを介して、直接アクティブ化できない追加コマンド８０３Ａも含まれる。
【０１０４】
ここで図１２Ａを参照すると、テキストオブジェクト１０２に対する制御領域１０１の実施例が示されている。テキストオブジェクト１０２は、文の中の１ワードである。制御領域１０１には、上記で説明したように、ゾーン１０３Ａ〜１０３Ｊが含まれる。
【０１０５】
ここで図１２Ｂを参照すると、テキストオブジェクト１０２に対する制御領域１０１の別の実施例が示されている。繰り返しになるが、テキストオブジェクト１０２は、文の中の１ワードであり、制御領域１０１には、上記で説明したように、ゾーン１０３Ａ〜１０３Ｊが含まれる。図１２Ｂの実施例では、各ゾーン１０３には、そのゾーン１０３から利用可能なコマンドの種類を指示するテキストラベルが含まれる。
【０１０６】
ここで図１２Ｃを参照すると、テキストオブジェクト１０２に対する制御領域１０１の別の実施例が示されている。繰り返しになるが、テキストオブジェクト１０２は、文の中の１ワードであり、制御領域１０１には、上記で説明したように、ゾーン１０３Ａ〜１０３Ｊが含まれる。図１２Ｃの実施例では、各ゾーン１０３には、そのゾーン１０３から利用可能なコマンドの種類を指示するアイコンラベルが含まれる。
【０１０７】
ここで図１２Ｄを参照すると、テキストオブジェクト１０２に対する制御領域１０１の別の実施例が示されている。繰り返しになるが、テキストオブジェクト１０２は、文の中の１ワードであり、制御領域１０１には、上記で説明したように、ゾーン１０３Ａ〜１０３Ｊが含まれる。図１２Ｄの実施例では、カーソル１１０が特定ゾーン１０３の上で停止した場合、ポップアップラベル１２０１（ツールヒントとしても知られる）が現れる。ポップアップラベル１２０１には、対応するゾーン１０３から利用可能なコマンドの種類を指示するテキストまたはアイコンを含めることができる。ポップアップラベル１２０１は、カーソル１１０がゾーン１０３の上で所定の時間停止した後にだけ現れるように構成でき、更に、カーソル１１０がゾーン１０３を去った場合、または所定の時間が経過した後、消滅するよう構成できる。図１２Ｄにより例示した技法は、ディスプレイを過度に散乱させずに、また価値のあるスクリーン資産を消費せずに、各ゾーン１０３に対する機能を思い出させるのに便利である。ゾーン１０３、および制御領域１０１は、各ゾーン１０３内にテキストまたはアイコンラベル用の十分な空間を提供する必要がない時は、小さくできる。
【０１０８】
上記説明では、説明する目的で、本発明の完全な理解を提供するために、多くの特定の詳細を述べた。しかしながら、当該技術に精通する者には言うまでもないが、本発明は、これらの特定の詳細なしに実践できる。他の例では、本発明が判りにくくなるのを避けるために、構成および装置をブロック図形式で示す。
【０１０９】
明細書内における「一実施の形態」、または「実施の形態」への言及の意味は、実施の形態と関連して説明した特定の特徴、構成、または特性が、本発明の少なくとも一つの実施の形態に含まれるということである。本明細書における様々な場所で、語句「一つの実施の形態に」の出現は、全てが同一の実施の形態への言及であるとは限らない。
【０１１０】
詳細な説明の幾つかの部分は、コンピューターメモリ内のデータビットに対する操作のアルゴリズム的、およびシンボル的な表現として表されている。これらのアルゴリズム的説明および表現は、データ処理技術に精通する者が用いて、当該技術に精通する者に彼らの業務の内容を最も効率的に伝える手段である。アルゴリズムとは、本明細書では概して、所望の結果を導きだすステップの自己一貫性のあるシーケンスであると考えられる。ステップとは、物理量の物理的操作を必要とするものである。必ずとは言えないが通常、これらの量は、格納、転送、組合せ、比較、および他の操作ができる電気または磁気的な信号の形をとる。これらの信号を、ビット、値、要素、シンボル、文字、項目、数等と呼ぶのは、普遍的な使用を主として考えると便利なこともある、と証明されている。
【０１１１】
しかしながら、留意すべきは、これらの、および類似の用語全ては、適切な物理量と関係付けられるべきであり、これらの量に適用する便利な文言に過ぎない、ということである。説明から明らかな他の特別な表現がない限り、言うまでもないのは、説明全体を通じて、「処理する」または「演算する」または「計算する」または「決定する」または「表示する」等の用語を用いる説明は、コンピューターシステム、または類似の電子計算装置のアクションおよび処理に言及している。これらのシステムまたは装置は、コンピューターシステムのレジスタおよびメモリ内の物理（電子）量として表されるデータを、コンピューターシステムのメモリまたはレジスタ、またはそのような他の情報格納、伝送、またはディスプレイ装置内の物理量として、同様に表される他のデータに、操作し、変換する。
【０１１２】
本発明は、本明細書の操作を実行するための機材にも関連している。これらの機材は、要求される目的のために特別に構築されてもよく、またはコンピュータに格納されるコンピュータープログラムにより選択的にアクティブ化され、または再構成された汎用コンピュータを備えてもよい。かかるコンピュータープログラムは、限定はしないが、フロッピーディスク、光ディスク、ＣＤ−ＲＯＭ、および光磁気ディスクを含む任意の形式のディスク、リードオンリーメモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気または光カード、または電子命令を格納するのに適切な任意の種類の媒体等のコンピュータ可読の格納媒体に格納することができ。それぞれコンピューターシステムバスに接続することができる。
【０１１３】
本明細書で提示するアルゴリズム、およびディスプレイは、任意の特定コンピュータ、コンピューターネットワーク、または他の機材と本質的に関連しない。各種の汎用システムを、本明細書の教示によるプログラムとともに用いることができ、または更に専門化した機材を構築して、要求される方法のステップを実行すると便利であると証明できる。これらの多様なシステムに要求される構造は、説明から明らかであると考えられる。更に、本発明は、どれかの特定のプログラム言語を参照して説明していない。言うまでもなく、多様なプログラム言語を用いて、本発明で説明したような本発明の教示を実装できる。
【０１１４】
当該技術に精通する者には容易に理解できるのは言うまでもないが、本発明は、その精神または基本的な特性から逸脱することなく、他の特定の形式で実施できる。例えば、上記に示した特定アーキテクチャは、本発明の一実施の形態の単なる例示にすぎない。上記説明の機能要素および方法ステップは、本発明を実施するための一技法を説明する例示として提供する。当該技術に精通する者には言うまでもないが、他の多くの実装が、請求項に列挙したような本発明から逸脱することなく可能である。同様に、モジュール、プロトコル、特徴、属性、または任意の他の態様の特定の大文字化または名称付けは、必須でもなく、重要でもなく、本発明、またはその特徴を実装するメカニズムは、異なる名称または形式を有してもよい。更に、本発明は、方法、プロセス、ユーザーインターフェース、コンピュータープログラム製品、システム、機材、またはそれらの任意の組合せとして実装してもよい。従って、本発明の開示は、以下の請求の範囲で述べる本発明の範囲の説明を意図するものであって、限定を意図しているものではない。
【図面の簡単な説明】
【０１１５】
【図１】一実施の形態によるオンスクリーンオブジェクトに対する制御領域の実施例を示す。
【図１Ａ】追加する矩形の帯状領域を含むオンスクリーンオブジェクトに対する制御領域の実施例を示す。
【図２】本発明の一実施の形態によるゾーンと関係付けられるメニューの実施例を示す。
【図３Ａ】一実施の形態によるオブジェクトのゾーンに対するコマンド構成の実施例を示す。
【図３Ｂ】一実施の形態によるオブジェクトのゾーンに対するコマンド構成の実施例を示す。
【図４Ａ】各種のゾーンと対応する追加キーを含むキーボードの実施例を示す。
【図４Ｂ】各種のゾーンと対応する追加キーを含むキーボードの実施例を示す。
【図５】本発明の一実施の形態による入力を提供するためのリモートコントローラの実施例を示す。
【図６】入力フィールドに対するメニューの実施例を示すスクリーンショットである。
【図７Ａ】入力フィールドと関係する本発明の操作の実施例を示す。
【図７Ｂ】入力フィールドと関係する本発明の操作の実施例を示す。
【図８】入力オブジェクトの実施例を示すスクリーンショットである。
【図９】テーブルセルに対するメニューの実施例を示すスクリーンショットである。
【図１０】テーブル列に対するメニューの実施例を示すスクリーンショットである。
【図１１】テーブル行に対するメニューの実施例を示すスクリーンショットである。
【図１２Ａ】テキストオブジェクトに対する制御領域の実施例を示す。
【図１２Ｂ】テキストオブジェクトに対する制御領域、テキストラベルを含む制御領域の実施例を示す。
【図１２Ｃ】テキストオブジェクトに対する制御領域、アイコンラベルを含む制御領域の実施例を示す。
【図１２Ｄ】テキストオブジェクトに対する制御領域、ポップアップラベルを含む制御領域の実施例を示す。
【図１】
2007505371.tif 000024
【図１Ａ】
2007505371.tif 000025
【図２】
2007505371.tif 000026
【図３Ａ】
2007505371.tif 000027
【図３Ｂ】
2007505371.tif 000028
【図４Ａ】
2007505371.tif 000029
【図４Ｂ】
2007505371.tif 000030
【図５】
2007505371.tif 000031
【図６】
2007505371.tif 000032
【図７Ａ】
2007505371.tif 000033
【図７Ｂ】
2007505371.tif 000034
【図８】
2007505371.tif 000035
【図９】
2007505371.tif 000036
【図１０】
2007505371.tif 000037
【図１１】
2007505371.tif 000038
【図１２Ａ】
2007505371.tif 000039
【図１２Ｂ】
2007505371.tif 000040
【図１２Ｃ】
2007505371.tif 000041
【図１２Ｄ】
2007505371.tif 000042