(57)【特許請求の範囲】
【請求項１】
ウィンドウ・システムを備えたコンピュータ・システムであって、
前記ウィンドウ・システムの操作対象のターゲット・ウィンドウに含まれるユーザ・インターフェイス部品を検出する手段と、
前記検出されたユーザ・インターフェイス部品の全部または一部に対応するユーザ・インターフェイス部品イメージを含むウィンドウ・イメージを生成する手段と、
前記ウィンドウ・システムにおいて、前記生成されたウィンドウ・イメージを表示する手段を含み、
前記ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージを操作することにより、前記ターゲット・ウィンドウの対応するユーザ・インターフェイス部品に対する操作がされる、
コンピュータ・システム。
【請求項２】
前記ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージは、タイトルバー・イメージ、最小化ボタン・イメージ、最大化ボタ
ン・イメージ、クローズ・ボタン・イメージ、スクロールバー・イメージのうちの少なくとも１つを含み、
当該ウィンドウ・イメージに含まれるユーザ・イン ターフェイス部品イメージの操作に応じて、対応する操作が前記ターゲット・ウィンドウに対してなされる、
請求項１記載のコンピュータ・システム。
【請求項３】
前記ウィンドウ・イメージが透明または半透明である、請求項１記載のコンピュータ・システム。
【請求項４】
前記ウィンドウ・イメージがポインタの近傍に表示される、請求項１記載のコンピュータ・システム。
【請求項５】
前記ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージはスクロールバー・イメージを含み、
前記スクロールバー・イメージを操作したときに遅延スクロールによりターゲット・ウィンドウがスクロールされる、
請求項１記載のコンピュータ・システム。
【請求項６】
前記ウィンドウ・イメージに含まれる所定のユーザ・インターフェイス部品イメージがドラッグ操作されたことに応じて、前記ターゲット・ウィンドウが移動する、請求項１記載のコンピュータ・システム。
【請求項７】
前記検出する手段は、前記ターゲット・ウィンドウのクライアント・エリアに存在するユーザ・インターフェイス部品を検出する手段を有し、
前記ウィ ンドウ・イメージは、前記クライアント・エリアに存在するユーザ・インターフェイス部品に対応するユーザ・インターフェイス部品イメージをクライアント・
エリア・イメージに含む、
請求項１記載のコンピュータ・システム。
【請求項８】
ウィンドウ・システムを備えたコンピュータ・システムにおいて、前記ウィンドウ・システムの操作対象であるターゲット・ウィンドウを操作するための方法であって、
前記ターゲット・ウィンドウに含まれるユーザ・インターフェイス部品を検出するステップと、
前記検出されたユーザ・インターフェイス部品の全部または一部に対応するユーザ・インターフェイス部品イメージを含むウィンドウ・イメージを生成するステップと、
前記ウィンドウ・システムにおいて、前記生成されたウィンドウ・イメージを表示するステップを含み、
前記ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージを操作することにより、前記ターゲット・ウィンドウの対応するユーザ・インターフェイス部品に対する操作がされる、
方法。
【請求項９】
ウィンドウ・システムを備えたコンピュータ・システムにおいて、前記ウィンドウ・システムの操作対象であるターゲット・ウィンドウを操作をするためのコンピュータ・プログラムであって、前記コンピュータ・システムに、
前記ターゲット・ウィンドウに含まれるユーザ・インターフェイス部品を検出する手順と、
前記検出されたユーザ・インターフェイス部品の全部または一部に対応するユーザ・インターフェイス部品イメージを含むウィンドウ・イメージを生成する手順と、
前記ウィンドウ・システムにおいて、前記生成されたウィンドウ・イメージを表示する手順を実行させ、
前記ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージを操作することにより、前記ターゲット・ウィンドウの対応するユーザ・インターフェイス部品に対する操作がされる、
コンピュータ・プログラム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、情報処理技術に関し、より詳細には、ウィンドウ・システムにおいて効率的にウィンドウに対する操作をするための方法、コンピュータ・プログラム、コンピュータ・システムに関する。
【０００２】
【従来の技術】
近年のパーソナル・コンピュータ（ＰＣ）やワークステーションなどで使用されるＵＮＩＸ（Ｒ）やＬｉｎｕｘ（Ｒ）で採用されているＸ−Ｗｉｎｄｏｗシステム、マイクロソフト社のＷｉｎｄｏｗｓ（Ｒ）、ＩＢＭ社のＯＳ／２、アップル社のＭａｃＯＳなどのオペレーティング・システムは、マルチ・ウィンドウ・システムを採用する。
【０００３】
これらのオペレーティング・システムにおいて採用されるウィンドウ・システムでは、例えば図１２に示すように、ウィンドウの移動、サイズの変更、スクロールといったウィンドウに対する操作を提供するユーザ・インターフェイス部品（タイトルバー８０１０、最小化ボタン８０２０、最大化ボタン８０３０、クローズ・ボタン８０４０、スクロールバー８０５０など）は、操作対象であるターゲット・ウィンドウ８１００の外周部に集中して配置されている。
【０００４】
このことが原因となり、ターゲット・ウィンドウ８１００に対する操作を行うときにポインタ８０００を大きく移動させなければならないことがある。例えば、ポインタ８０００がターゲット・ウィンドウ８１００のクライアント・エリア８０６０の左下の方に存在するときにクローズ・ボタン８０４０を操作しようとする場合を考えると、その移動量はかなり大きなものとなり得ることが理解される。
【０００５】
ウィンドウ・システムを表示する表示装置（ＣＲＴやＬＣＤなど）の解像度は、近年、関連技術の進歩のおかげで著しく増加しており、個々のウィンドウのサイズも大きくなってきている。それがさらに、ユーザにポインタの大きな移動を強いており、これらは頻繁に行う操作であるので、合計すると大きな作業時間の損失となり得る。
【０００６】
また、図１３に示すようにターゲット・ウィンドウ８１００の一部分（この場合は、ウィンドウの右端部分）が表示装置の画面９０００の外側にはみ出している場合がある。このような場合、ポインタ８０００は画面９０００の外側で通常操作をすることができないために、画面９０００の外側にはみ出した部分に存在するユーザ・インターフェイス部品（例えば、クローズ・ボタン８０４０）を使用してターゲット・ウィンドウ８１００のウィンドウに対する操作を行うことができなかった。その結果として、はみ出ていたユーザ・インターフェイス部品を表示画面内に表示するためにウィンドウの移動を行い、その後にウィンドウに対する操作を行わなければならず、ユーザは非常に不便な操作環境の使用を強いられていた。
【０００７】
また、別のユーザ・インターフェイスとして、アプリケーション・プログラムに対する操作をボタン化し、そのボタンを別のウィンドウにまとめて表示しておくというものがあったが、ウィンドウに対する操作を行うものは存在しなかった。また、そのインターフェイスはどのボタンがどの操作を表すものであるかが非常にわかりにくいものであったので、ユーザにとって直感的でわかり易いとはとても言えるようなものではなかった。
【０００８】
【発明が解決しようとする課題】
本発明の目的は、ポインタを大きく動かすことなく操作が可能であり、かつ、直感的でわかり易いユーザ・フレンドリーな、ウィンドウ・システムにおけるユーザ・インターフェイスを提供することである。
【０００９】
本発明の別の目的は、表示画面からウィンドウ・システムのウィンドウの一部分がはみ出している場合でも、そのウィンドウに対して適切かつ効率的にウィンドウに対する操作を行うことができる、ウィンドウ・システムにおけるユーザ・インターフェイスを提供することである。
【００１０】
本発明のさらなる目的は、ポインタを大きく動かすことなく細やかなスクロール操作を容易に行うことを可能とする、ウィンドウ・システムにおけるユーザ・インターフェイスを提供することである。
【００１１】
【課題を解決するための手段】
本発明は上述の目的を達成するために、操作対象のターゲット・ウィンドウを縮小し、省略表示したイメージである「ウィンドウ・イメージ」を導入する。本発明では、ウィンドウ・イメージを操作することにより操作対象であるターゲット・ウィンドウに対する操作がされる。
【００１２】
上述の目的は、具体的にはウィンドウ・システムを備えたコンピュータ・システムであって、ウィンドウ・システムの操作対象のターゲット・ウィンドウに含まれるユーザ・インターフェイス部品を検出する手段と、検出されたユーザ・インターフェイス部品の全部または一部に対応するユーザ・インターフェイス部品イメージを含むウィンドウ・イメージを生成する手段と、生成されたウィンドウ・イメージを表示する手段を含み、ウィンドウ・イメージを操作することにより、ターゲット・ウィンドウに対する操作がされるコンピュータ・システムにより達成される。
【００１３】
前述のコンピュータ・システムにおいては、ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージは、タイトルバー・イメージ、最小化ボタン・イメージ、最大化ボタン・イメージ、クローズ・ボタン・イメージ、スクロールバー・イメージのうちの少なくとも１つを含み、当該ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージの操作に応じて、対応する操作が前記ターゲット・ウィンドウに対してなされるようにすることができる。
【００１４】
前述のコンピュータ・システムにおいては、ウィンドウ・イメージが透明または半透明であるようにすることができる。透明または半透明とすることによりウィンドウ・イメージを表示しているときも、後ろのウィンドウの視認性を害さないようにすることができる。また、ウィンドウ・イメージがポインタの近傍に表示されるようにすることもできる。近傍に表示されるようにすれば、ウィンドウ・イメージに対する操作の際にポインタの移動量を少なくすることができる。
【００１５】
前述のコンピュータ・システムにおいては、ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージはスクロールバー・イメージを含み、スクロールバー・イメージを操作したときに遅延スクロールによりターゲット・ウィンドウがスクロールされるようにすることもできる。
【００１６】
前述のコンピュータ・システムにおいては、ウィンドウ・イメージに含まれる所定のユーザ・インターフェイス部品イメージがドラッグ操作されたことに応じて、ターゲット・ウィンドウが移動するようにすることもできる。
【００１７】
前述のコンピュータ・システムにおいては、検出する手段は、ターゲット・ウィンドウのクライアント・エリアに存在するユーザ・インターフェイス部品を検出する手段を有し、ウィンドウ・イメージは、クライアント・エリアに存在するユーザ・インターフェイス部品に対応するユーザ・インターフェイス部品イメージをクライアント・エリア・イメージに含むようにすることもできる。
【００１８】
なお、本発明は前述した「コンピュータ・システム」としての発明の他、「ウィンドウに対する操作をするための方法」あるいは「ウィンドウに対する操作をするためのコンピュータ・プログラム」として把握することも可能である。
【００１９】
【発明の実施の形態】
本発明の実施の形態を図面を参照して詳細に説明する。本発明は多くの異なる態様で実施可能であり、本実施の形態の記載内容に限定して解釈すべきではない。本実施の形態の全体を通して同じ要素には同じ番号を付している。
【００２０】
本発明の実施の形態において使用されるコンピュータ・システム１００の外観の一例を図１に図示する。コンピュータ・システム１００には、システム・ユニット１１０、ディスプレイ１２、キーボード６、マウス７、フレキシブル・ディスク装置２０のようなリムーバブル・ストレージが含まれ得る。コンピュータ・システム１００には、追加の入力デバイスとしてジョイスティック、タッチパッド、トラックボール、マイクロフォンなども含まれ得る。コンピュータ・システム１００は、パーソナル・コンピュータ（ＰＣ）やワークステーションのような、どのような適当なコンピュータ・システムによっても実現され得る。また、ここではコンピュータ・システムとして表されているけれども、他の本発明の実施例ではネットワーク・コンピュータのような他の種類のデータ処理システムでも実現され得ることは勿論である。
【００２１】
図２に本発明の実施の形態において使用されるコンピュータ・システム１００のより詳細なハードウェア構成の一例を図示する。コンピュータ・システム１００は、中央処理装置（ＣＰＵ）１とメインメモリ４を含んでいる。ＣＰＵ１とメインメモリ４は、バス２を介して、補助記憶装置としてのハードディスク装置１３と接続されている。また、フレキシブル・ディスク装置２０、ＭＯ装置２８、ＣＤ−ＲＯＭ装置２６，２９などのリムーバブル・ストレージ（記録メディアを交換可能な外部記憶システム）が関連するフレキシブル・ディスク・コントローラ１９、ＩＤＥコントローラ２５、ＳＣＳＩコントローラ２７などを介してバス２へ接続されている。
【００２２】
フレキシブル・ディスク装置２０、ＭＯ装置２８、ＣＤ−ＲＯＭ装置２６，２９などのリムーバブル・ストレージには、それぞれフレキシブル・ディスク、ＭＯ、ＣＤ−ＲＯＭなどの記憶媒体が挿入され、このフレキシブル・ディスク等やハードディスク装置１３、ＲＯＭ１４には、オペレーティング・システムと協働してＣＰＵ等に命令を与え、本発明を実施するためのコンピュータ・プログラムのコードを記録することができる。メインメモリ４にロードされることによってコンピュータ・プログラムは実行される。コンピュータ・プログラムは圧縮し、また複数に分割して複数の媒体に記録することもできる。
【００２３】
コンピュータ・システム１００は、さらに、ユーザ・インターフェイス・ハードウェアとして、マウス７（他のポインティング・デバイスと置換可能である）、キーボード６や視覚データをユーザに提示するためのディスプレイ１２を含み得る。また、パラレルポート１６を介してプリンタ（図示せず）と接続することや、シリアルポート１５を介してモデム（図示せず）を接続することが可能である。コンピュータ・システム１００は、シリアルポート１５及びモデムを介し、また、通信アダプタ１８（イーサネット（Ｒ）・カードやトークンリング・カード）等を介してネットワークに接続し、他のコンピュータ等と通信を行うことが可能である。
【００２４】
スピーカ２３は、オーディオ・コントローラ２１によってＤ／Ａ変換（デジタル／アナログ変換）された音声信号をアンプ２２を介して受け取り、音声として出力する。また、オーディオ・コントローラ２１は、マイクロフォン２４から受け取った音声情報をＡ／Ｄ変換（アナログ／デジタル変換）し、システム外部の音声情報をシステムに取り込むことを可能にしている。
【００２５】
以上の説明により、本発明の実施の形態におけるコンピュータ・システム１００は、メインフレーム、ワークステーション、通常のパーソナルコンピュータ（ＰＣ）、ラップトップＰＣ、ノートブックＰＣ、パームトップＰＣ、ネットワーク・コンピュータ等の情報処理装置、または、これらの組み合わせによって実現されることが容易に理解されるであろう。ただし、これらの構成要素は例示であり、そのすべての構成要素が本発明の必須構成要素となるわけではない。
【００２６】
特に、ここで説明したハードウェア構成のうち、フレキシブル・ディスク装置２０、ＭＯ装置２８、ＣＤ−ＲＯＭ装置２６，２９などのリムーバブル・ストレージ、パラレルポート１６、プリンタ、シリアルポート１５、モデム、通信アダプタ１８、スピーカ２３、オーディオ・コントローラ２１、アンプ２２、マイクロフォン２４などはなくても、コンピュータ・システム１００において本発明は実現可能であるので、本発明の実施の形態におけるコンピュータ・システム１００に含めなくともよい。
【００２７】
本発明の実施に使用されるコンピュータ・システム１００の各ハードウェア構成要素を、複数のマシンを組み合わせ、それらに機能を配分し実施する等の種々の変更は当業者によって容易に想定され得るものであり、それらの変更が本発明の思想に包含される概念であることは勿論である。
【００２８】
本発明の実施の形態のコンピュータ・システム１００では、ハードウェア３０００などを管理し、アプリケーションがこれを利用できるようにする基本ソフトウェアであるオペレーティング・システム３１００が実行される。コンピュータ・システム１００のオペレーティング・システム３１００としては、Ｌｉｎｕｘ（Ｒ）、マイクロソフト社のＷｉｎｄｏｗｓ（Ｒ）オペレーティング・システム、ＩＢＭ社のＯＳ／２，ＡＩＸ、アップル社のＭａｃＯＳ、などが採用され得るがこれらのオペレーティング・システムに限定されるものではない。また、オペレーティング・システム３１００上で本発明を実現するための常駐プログラム３２００や他のアプリケーション・プログラム３３００が実行される。ハードウェア３０００、オペレーティング・システム３１００、常駐プログラム３２００、他のアプリケーション・プログラム３３００の関係のイメージの一例を図３に示す。
【００２９】
図４に本発明の実施の形態におけるコンピュータ・システム１００の機能ブロック図を示す。図４の機能ブロック図の各構成要素は、図２に示したハードウェア構成を有するコンピュータ・システムにおいてハードウェアとソフトウェアを協働させることにより実現することができる。
【００３０】
本実施の形態のコンピュータ・システム１００は、イベント発生部４１１０、ウィンドウ管理部４１２０、表示部４１３０を含む。これらの機能ブロック要素は、コンピュータ・システム１００において実行されるオペレーティング・システム３１００により実現され得る。
【００３１】
本実施の形態のコンピュータ・システム１００は、さらに、常駐プログラム・パラメータ設定部４２１０、イベント監視部４２２０、モード切替部４２３０、ウィンドウ・イメージ生成・消去部４２４０、ウィンドウ・イメージ／ターゲット・ウィンドウ操作イベント変換部４２５０をさらに含む。これらの機能ブロック要素は本発明の実施のための常駐プログラム３２００により実現され得る。
【００３２】
イベント発生部４１１０は、キーボード６、マウス７などがユーザにより操作されたことなどに応じて、イベントを発生する。本実施の形態においては、イベント発生部４１１０で発生されたイベントはイベント監視部４２２０により監視され、検出される。
【００３３】
ウィンドウ管理部４１２０は、ウィンドウ・システムにおけるウィンドウ（操作対象であるターゲット・ウィンドウを含む。）を管理（生成・操作・消去など）する。例えば、イベント発生部４１１０によりウィンドウに対する操作イベントが発生された場合に、ウィンドウ管理部４１２０は当該ウィンドウのプロパティを変更した上で、変更後のウィンドウを表示するために表示部４１３０に命令を出す。
【００３４】
表示部４１３０は、ウィンドウ管理部４１２０やウィンドウ・イメージ生成・消去部４２４０などから受け取った表示データを処理し、表示装置（ＣＲＴ１２など）に表示する。表示部４１３０により、ユーザはコンピュータ・システム１００から視覚的に情報を入手することができるようになる。
【００３５】
常駐プログラム・パラメータ設定部４２１０は、常駐プログラムの実行パラメータを設定する手段をユーザに提供する。具体的には、図１０に示すような設定パネルが表示画面に表示され、設定パネルのガイドに従ってユーザが常駐プログラムの実行パラメータを設定する。常駐プログラム・パラメータ設定部４２１０により設定された実行パラメータに従って、後述するイベント監視部４２２０、モード切替部４２３０、ウィンドウ・イメージ生成・消去部４２４０、ウィンドウ・イメージ／ターゲット・ウィンドウ操作イベント変換部４２５０は動作する。
【００３６】
本発明の実施の形態では、常駐プログラム・パラメータ設定部４２１０により設定される実行パラメータには、ウィンドウ・イメージ表示条件（どのイベントがあったときにウィンドウ・イメージを生成・表示するか）が含まれ、「マウスの第３ボタンが押される」もしくは「指定されたショートカットキーが押される」ことでウィンドウ・イメージを表示することができるようにすることができる。
【００３７】
また本発明の実施の形態では、実行パラメータはウィンドウ・イメージ消去条件（どのイベントがあったときにウィンドウ・イメージを消去・非表示するか）を含み、「マウスの第３ボタンが押される」、「指定されたショートカットキーが押される」、「ウィンドウのフォーカスが移動する」もしくは「マウスポインタがウィンドウ・イメージから指定された距離離れる」ことでウィンドウ・イメージを消去するようにすることができる。
【００３８】
さらに本発明の実施の形態では、実行パラメータはウィンドウ・イメージ・プロパティを含む。具体的には、ウィンドウ・イメージにスクロールバー・イメージを表示するかどうか、遅延スクロール（後述する）を使用するかどうか、クライアント・エリア・イメージをドラッグすることによりターゲット・ウィンドウを移動するかどうか、クライアント・エリアのボタンをウィンドウ・イメージに表示するかどうかを設定することができるようにされている。
【００３９】
なお、クライアント・エリアのボタンをウィンドウ・イメージに表示する機能を実現するために、常駐プログラムにターゲット・ウィンドウのクライアント・エリアに存在するボタンなどのユーザ・インターフェイス部品を検出し、ウィンドウ・イメージのクライアント・エリア・イメージに対応するユーザ・インターフェイス部品イメージを表示させるようにするとよい。この場合、クライアント・エリア・イメージに表示されたユーザ・インターフェイス部品イメージを操作することにより、ターゲット・ウィンドウのユーザ・インターフェイス部品を操作したのと同様の効果が発生するようにするとよい。
【００４０】
イベント監視部４２２０は、イベント発生部４１１０を監視し、実行パラメータなどにより定められたイベントを検出したときに、必要に応じて、モード切替部４２３０、ウィンドウ・イメージ生成・消去部４２４０、ウィンドウ・イメージ／ターゲット・ウィンドウ操作イベント変換部４２５０などにそのイベントの検出を通知する。
【００４１】
モード切替部４２３０は、イベント監視部４２２０がウィンドウ操作のモード（以下、単に「モード」という。）を切り替えるイベントを検出したときに、当該イベントに関する通知をイベント監視部４２２０から受け取り、モードの切り替えを行う。モードには、常駐プログラム３２００が起動しており、かつ、ウィンドウ・イメージが表示された状態の「ウィンドウ・イメージ操作モード」と常駐プログラム３２００が起動しているが、ウィンドウ・イメージが表示されていない状態の「待機モード」が含まれる。
【００４２】
ウィンドウ・イメージ生成・消去部４２４０は、モードが待機モードからウィンドウ・イメージ操作モードに切り替わったときに、モード切替部４２３０から通知を受け取ったことに応じてウィンドウ管理部４１２０からターゲット・ウィンドウにいずれのユーザ・インターフェイス部品が含まれているかの情報を受け取り、当該情報に基いて、当該ユーザ・インターフェイス部品に対応するユーザ・インターフェイス部品を含むウィンドウ・イメージを生成し、表示部４１３０にそのウィンドウ・イメージの表示を命令する。また、モードがウィンドウ・イメージ操作モードから待機モードに切り替わったときに、ウィンドウ・イメージを消去することもする。
【００４３】
ウィンドウ・イメージ／ターゲット・ウィンドウ操作イベント変換部４２５０は、ウィンドウ・イメージに対してなされた操作イベントをターゲット・ウィンドウ操作イベントに変換し、オペレーティング・システム３１００に送信し、ウィンドウ管理部４１２０に当該ターゲット・ウィンドウ操作イベントを実行させる。
【００４４】
図５は、本発明の実施の形態の処理の流れの一例を示したフローチャートである。
【００４５】
処理はステップ５０００から開始する。次に処理はステップ５０１０へ進み、常駐プログラムが起動する。常駐プログラムは、コンピュータ・システム（オペレーティング・システム）が起動するときに同時に起動するようにしてもよいし、独立の起動操作により起動するようにしてもよい。また、例えば、ウェブ・ブラウザのような特定のプログラムの起動に応じて起動するようにしてもよい。
【００４６】
ステップ５０１０で常駐プログラムが起動した後、処理はステップ５０２０へ進み、イベント入力の監視が開始される。次に、常駐プログラムの終了イベントが発生したかどうかがステップ５０３０で判定される。終了イベントが発生した場合は、常駐プログラムが終了され、Ｙｅｓの矢印を通じてステップ５１１０へ進み、処理は終了する。終了イベントが発生していない場合は、処理はＮｏの矢印を通じてステップ５０４０へ進み、現在のモードが、ウィンドウ・イメージ操作モードであるか、あるいは待機モードであるかが判定される。
【００４７】
ステップ５０４０でモードがウィンドウ・イメージ操作モードではない、すなわち、待機モードであると判定された場合、処理はＮｏの矢印を通じてステップ５０５０へ進む。ステップ５０５０では、ウィンドウ・イメージ操作モードへの切り替えイベントが発生したかどうかが判定される。ステップ５０５０で、ウィンドウ・イメージ操作モードへの切り替えイベントが発生していないと判定された場合は、Ｎｏの矢印を通じてステップ５０２０へ戻り、再びイベント入力の監視が行われる。
【００４８】
ステップ５０５０で、ウィンドウ・イメージ操作モードへの切り替えイベントが発生したと判定された場合は、処理はステップ５０６０へ進み、モードをウィンドウ・イメージ操作モードに変更し、ウィンドウ・イメージを生成し、表示装置に表示する。ウィンドウ・イメージの生成は、オペレーティング・システムのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を使用して、ターゲット・ウィンドウに含まれるユーザ・インターフェイス部品を検出し、検出されたユーザ・インターフェイス部品の全部または一部に対応するユーザ・インターフェイス部品イメージをウィンドウ・イメージに含ませるようにするとよい。また、ウィンドウ・イメージはポインタの近傍に表示されるようにすれば、ウィンドウ・イメージに対する操作の際にポインタの移動量を少なくすることができる。ウィンドウ・イメージを表示した後、処理はステップ５０２０へ戻り、再びイベント入力の監視が行われる。
【００４９】
図７に、ウィンドウ・イメージ７０００の一例を示す。本実施の形態においては、ウィンドウ・イメージ７０００を操作して行うターゲット・ウィンドウのウィンドウ操作イベントは、ウィンドウの最大化、最小化、クローズ、移動、スクロールであるとする。ウィンドウ・イメージ７０００は、タイトルバー・イメージ７０１０、最小化ボタン・イメージ７０２０、最大化ボタン・イメージ７０３０、クローズ・ボタン・イメージ７０４０、スクロールバー・イメージ７０５０、クライアント・エリア・イメージ７０６０を含む。
【００５０】
これらは、図１２に示すターゲット・ウィンドウ８１００のタイトルバー８０１０、最小化ボタン８０２０、最大化ボタン８０３０、クローズ・ボタン８０４０、スクロールバー８０５０、クライアント・エリア８０６０に対応するものである。ウィンドウ・イメージ７０００は透明または半透明とすることができる。透明または半透明とすることによりウィンドウ・イメージを表示しているときも、後ろのウィンドウの視認性を害さないようにすることができる。
【００５１】
ステップ５０４０でモードがウィンドウ・イメージ操作モードであると判定された場合、処理はＹｅｓの矢印を通じてステップ５０７０へ進む。ステップ５０７０では、待機モードへの切り替えイベントが発生したかどうかが判定される。ステップ５０７０で、待機モードへの切り替えイベントが発生したと判定された場合は、処理はＹｅｓは矢印を通じてステップ５０８０へ進み、モードが待機モードに変更され、ウィンドウ・イメージが消去される。
【００５２】
ステップ５０７０で、待機モードへの切り替えイベントが発生したと判定されなかった場合は、処理はステップ５０９０へ進む。ステップ５０９０では、ウィンドウ・イメージに対する操作イベントが発生したかどうかが判定される。ステップ５０９０でウィンドウ・イメージに対する操作イベントが発生しなかったと判定された場合は、処理はステップ４０２０へ戻り、イベント入力の監視が再び行われる。
【００５３】
ステップ５０７０で、ウィンドウ・イメージに対する操作イベントが発生したと判定された場合は、処理はステップ５１００へ進む。ステップ５１００では、当該ウィンドウ・イメージに対する操作イベントがターゲット・ウィンドウに対する操作イベントに変換される。変換された操作イベントはオペレーティング・システムに送信され、オペレーティング・システムのウィンドウ管理部４１２０により、ターゲット・ウィンドウに対して操作が施される。その後、処理はステップ４０２０へ戻り、イベント入力の監視が再び行われる。
【００５４】
図５のステップ５１００のウィンドウ・イメージに対する操作イベントのターゲット・ウィンドウに対する操作イベントへの変換を、図６を使用して詳細に説明する。なお、本発明の実施の形態では、ターゲット・ウィンドウの移動、最小化、最大化、クローズ、スクロールをウィンドウ・イメージを操作して行う場合を説明する。
【００５５】
処理はステップ６０００から開始する。次に、ステップ６０１０へ進み、所定のマウスのボタンがユーザによりクリックされたかどうかが判定される。クリックされたと判定された場合は、Ｙｅｓの矢印を通じてステップ６０２０へ進み、マウスがクリックされたときのポインタの位置（クリック位置）がどこであったかを判定する段階に入る。
【００５６】
ステップ６０２０では、クリック位置が最大化ボタン・イメージであるかどうかが判定される。ステップ６０２０で、クリック位置が最大化ボタン・イメージであると判断された場合は、処理はＹｅｓの矢印を通じてステップ６０３０へ進み、当該イベントはターゲット・ウィンドウの最大化イベントに変換され、オペレーティング・システムに送信される。その結果、ターゲット・ウィンドウの最大化ボタンを押したときと同じ効果が得られることとなる。その後、処理はステップ６１３０へ進み、終了する。
【００５７】
ステップ６０２０で、クリック位置が最大化ボタン・イメージではないと判定された場合は、処理はＮｏの矢印を通じてステップ６０４０へ進み、クリック位置が最小化ボタン・イメージであるかどうかが判定される。ステップ６０４０で、クリック位置が最小化ボタン・イメージであると判断された場合は、処理はＹｅｓの矢印を通じてステップ６０５０へ進み、当該イベントはターゲット・ウィンドウの最小化イベントに変換され、オペレーティング・システムに送信される。その結果、ターゲット・ウィンドウの最小化ボタンを押したときと同じ効果が得られることとなる。その後、処理はステップ６１３０へ進み、終了する。
【００５８】
ステップ６０４０で、クリック位置が最小化ボタン・イメージではないと判定された場合は、処理はＮｏの矢印を通じてステップ６０６０へ進み、クリック位置がクローズ・ボタン・イメージであるかどうかが判定される。ステップ６０６０で、クリック位置がクローズ・ボタン・イメージであると判断された場合は、処理はＹｅｓの矢印を通じてステップ６０７０へ進み、当該イベントはターゲット・ウィンドウのクローズ・イベントに変換され、オペレーティング・システムに送信される。その結果、ターゲット・ウィンドウのクローズ・ボタンを押したときと同じ効果が得られることとなる。その後、処理はステップ６１３０へ進み、終了する。
【００５９】
ステップ６０６０で、クリック位置がクローズ・ボタン・イメージであると判定されない場合は、処理はステップ６１３０へ進み、終了する。
【００６０】
ステップ６０１０で、マウスのボタンがクリックされたと判定されなかった場合は、処理はステップ６０８０へ進み、マウスによりドラッグ操作がされたかどうかが判定される。ドラッグ操作が行われなかった場合は、処理はＮｏの矢印を通じて、ステップ６１３０へ進み、終了する。ドラッグ操作が行われた場合、処理はステップ６０９０へ進み、ドラッグ操作の位置（ドラッグ位置）がどこであったかを判定する段階に入る。
【００６１】
ステップ６０９０では、ドラッグ位置がスクロールバー・イメージであるかどうかが判定される。ステップ６０９０で、ドラッグ位置がスクロールバー・イメージであると判定された場合は、処理はＹｅｓの矢印を通じてステップ６１００へ進み、当該イベントはターゲット・ウィンドウのスクロール・イベントに変換され、オペレーティング・システムに送信される。その結果、ターゲット・ウィンドウがスクロールされることとなる。その後、処理はステップ６１３０へ進み、終了する。
【００６２】
なお、ウィンドウ・イメージの中のスクロールバー・イメージを用いてターゲット・ウィンドウのスクロールを行う場合、ウィンドウ・イメージが小さいために、スクロール感度が敏感（センシティブ）になり過ぎて、スクロールの細かいコントロールが困難となる場合がある。そこで、ユーザの選択により、以下に述べる「遅延スクロール」の手法を用いることができるようにするとよい。
【００６３】
「遅延スクロール」は図１１に示すようにスクロールを操作できるようにすることにより実現される。すなわち、初期状態（１１０１０）において、スクロールバー・イメージをドラッグしたとき（１１０２０）に、ポインタと同じようにスクロールバー・イメージを動かすのではなく、マウスのボタンが押されている間だけドラッグしたポインタの後を追うようにスクロールバー・イメージが所定の速度で動くようにする（１１０３０⇒１１０４０⇒１１０５０）。そして、ポインタにスクロールバー・イメージが追いついた時点（１１０６０）もしくはマウスのボタンが離されたときにスクロールがそこで終了するようにする。このようにすれば、ポインタが急激に移動することを避けることができ、より細やかなスクロールが可能となる。
【００６４】
ステップ６０９０で、ドラッグ位置がスクロールバー・イメージではないと判定された場合は、処理はＮｏの矢印を通じてステップ６１１０へ進み、ドラッグ位置がタイトルバー・イメージまたはクライアント・エリア・イメージであるかどうかが判定される。ステップ６１１０で、ドラッグ位置がタイトルバー・イメージまたはクライアント・エリア・イメージであると判断された場合は、処理はＹｅｓの矢印を通じてステップ６１２０へ進み、当該イベントはターゲット・ウィンドウの移動イベントに変換され、オペレーティング・システムに送信される。その結果、ターゲット・ウィンドウの移動が行われることとなる。その後、処理はステップ６１３０へ進み、終了する。
【００６５】
ステップ６１１０で、ドラッグ位置がタイトルバー・イメージまたはクライアント・エリア・イメージであると判定されない場合は、処理はステップ６１３０へ進み、終了する。
【００６６】
上記の本発明の実施の形態は、説明を目的として記述されたものであって、すべての実施態様を記述するものではなく、本発明の実施の形態に開示された形式に発明を限定する意図ではない。上記の開示によれば、多くの変更例とバリエーションが実現可能である。本発明の範囲は発明の詳細な説明の記載により制限されるのではなく、特許請求の範囲により定まるものであることに留意されたい。
【００６７】
本発明の実施の形態を、ターゲット・ウィンドウの移動、最小化、最大化、クローズ、スクロールをウィンドウ・イメージを操作して行う例を用いて本発明を説明したが、本発明はウィンドウ・システムが採用する他のウィンドウに対する操作についても応用可能である。
【００６８】
また、ターゲット・ウィンドウに含まれるユーザ・インターフェイス部品に対応するユーザ・インターフェイス部品すべてをウィンドウ・イメージに反映する必要はなく、例えば、ユーザが設定した一部のみをウィンドウ・イメージに反映するようにしてもよい。
【００６９】
上記の仕様、例、データにより本発明の一態様の製造および使用が完全に説明される。本発明の多くの実施例が本発明の精神と範囲を離れることなく実現される。
【００７０】
本発明によれば、図１２（従来技術）と図８（本発明の適用例）から明らかであるように、ウィンドウ・システムにおいてポインタを大きく動かすことなく、かつ、ウィンドウに対する操作を行うことができることが理解される。本発明は、ターゲット・ウィンドウを省略化したウィンドウ・イメージを使用するので、ユーザにとって非常に直感的でわかり易い、ユーザ・フレンドリーなインターフェイスが実現される。
【００７１】
従来技術では、図１３に示すように表示画面からウィンドウ・システムにおいてウィンドウの一部がはみ出している場合は、表示画面からはみ出ていたユーザ・インターフェイス部品を表示画面内に表示するためにウィンドウの移動を行い、その後にウィンドウに対する操作を行わなければならなかったが、本発明によれば、図９に示すようにそのような場合でも適切かつ効率的にウィンドウに対する操作を行うことができる。
【００７２】
本発明によれば、「遅延スクロール」手法を用いることで、ウィンドウ・イメージが小さいことに起因する、スクロールがセンシティブになり過ぎる事態に対応することができ、ポインタを大きく動かすことなく、細やかにスクロール操作を行うことができる。
【図面の簡単な説明】
【図１】  本発明の実施の形態において使用されるコンピュータ・システムの外観の一例である。
【図２】  本発明の実施の形態において使用されるコンピュータ・システムのハードウェア構成の一例である。
【図３】  本発明の実施の形態におけるハードウェア、オペレーティング・システム、常駐プログラム、他のアプリケーションの関係のイメージを図示したものである。
【図４】  本発明の実施の形態におけるウィンドウ・システムの機能ブロック図である。
【図５】  本発明の実施の形態の処理の流れを示したフローチャートである。
【図６】  図５のフローチャートのステップ５１００の詳細を記述したフローチャートである。
【図７】  本発明の実施の形態におけるウィンドウ・イメージの一例である。
【図８】  本発明の実施の形態における本発明の適用した場合のユーザ・インターフェイスの画面表示の一例である。
【図９】  本発明の実施の形態における本発明の適用した場合のユーザ・インターフェイスの画面表示の一例である。
【図１０】本発明の実施の形態における常駐プログラムの設定パネルである。
【図１１】従来技術のユーザ・インターフェイスの画面表示表示の一例である。
【図１２】従来技術のユーザ・インターフェイスの画面表示表示の一例である。
【図１３】遅延スクロールを説明した図である。
【図１】
0003943383.tif 000002
【図２】
0003943383.tif 000003
【図３】
0003943383.tif 000004
【図４】
0003943383.tif 000005
【図５】
0003943383.tif 000006
【図６】
0003943383.tif 000007
【図７】
0003943383.tif 000008
【図８】
0003943383.tif 000009
【図９】
0003943383.tif 000010
【図１０】
0003943383.tif 000011
【図１１】
0003943383.tif 000012
【図１２】
0003943383.tif 000013
【図１３】
0003943383.tif 000014