[go: up one dir, main page]

JP3943383B2 - A computer system having a window system, a method for operating a window, and a computer program. - Google Patents

A computer system having a window system, a method for operating a window, and a computer program. Download PDF

Info

Publication number
JP3943383B2
JP3943383B2 JP2001380274A JP2001380274A JP3943383B2 JP 3943383 B2 JP3943383 B2 JP 3943383B2 JP 2001380274 A JP2001380274 A JP 2001380274A JP 2001380274 A JP2001380274 A JP 2001380274A JP 3943383 B2 JP3943383 B2 JP 3943383B2
Authority
JP
Japan
Prior art keywords
window
image
user interface
computer system
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001380274A
Other languages
Japanese (ja)
Other versions
JP2003195997A (en
Inventor
誠 古郷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2001380274A priority Critical patent/JP3943383B2/en
Publication of JP2003195997A publication Critical patent/JP2003195997A/en
Application granted granted Critical
Publication of JP3943383B2 publication Critical patent/JP3943383B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)

Description

【0001】
【産業上の利用分野】
本発明は、情報処理技術に関し、より詳細には、ウィンドウ・システムにおいて効率的にウィンドウに対する操作をするための方法、コンピュータ・プログラム、コンピュータ・システムに関する。
【0002】
【従来の技術】
近年のパーソナル・コンピュータ(PC)やワークステーションなどで使用されるUNIX(R)やLinux(R)で採用されているX−Windowシステム、マイクロソフト社のWindows(R)、IBM社のOS/2、アップル社のMacOSなどのオペレーティング・システムは、マルチ・ウィンドウ・システムを採用する。
【0003】
これらのオペレーティング・システムにおいて採用されるウィンドウ・システムでは、例えば図12に示すように、ウィンドウの移動、サイズの変更、スクロールといったウィンドウに対する操作を提供するユーザ・インターフェイス部品(タイトルバー8010、最小化ボタン8020、最大化ボタン8030、クローズ・ボタン8040、スクロールバー8050など)は、操作対象であるターゲット・ウィンドウ8100の外周部に集中して配置されている。
【0004】
このことが原因となり、ターゲット・ウィンドウ8100に対する操作を行うときにポインタ8000を大きく移動させなければならないことがある。例えば、ポインタ8000がターゲット・ウィンドウ8100のクライアント・エリア8060の左下の方に存在するときにクローズ・ボタン8040を操作しようとする場合を考えると、その移動量はかなり大きなものとなり得ることが理解される。
【0005】
ウィンドウ・システムを表示する表示装置(CRTやLCDなど)の解像度は、近年、関連技術の進歩のおかげで著しく増加しており、個々のウィンドウのサイズも大きくなってきている。それがさらに、ユーザにポインタの大きな移動を強いており、これらは頻繁に行う操作であるので、合計すると大きな作業時間の損失となり得る。
【0006】
また、図13に示すようにターゲット・ウィンドウ8100の一部分(この場合は、ウィンドウの右端部分)が表示装置の画面9000の外側にはみ出している場合がある。このような場合、ポインタ8000は画面9000の外側で通常操作をすることができないために、画面9000の外側にはみ出した部分に存在するユーザ・インターフェイス部品(例えば、クローズ・ボタン8040)を使用してターゲット・ウィンドウ8100のウィンドウに対する操作を行うことができなかった。その結果として、はみ出ていたユーザ・インターフェイス部品を表示画面内に表示するためにウィンドウの移動を行い、その後にウィンドウに対する操作を行わなければならず、ユーザは非常に不便な操作環境の使用を強いられていた。
【0007】
また、別のユーザ・インターフェイスとして、アプリケーション・プログラムに対する操作をボタン化し、そのボタンを別のウィンドウにまとめて表示しておくというものがあったが、ウィンドウに対する操作を行うものは存在しなかった。また、そのインターフェイスはどのボタンがどの操作を表すものであるかが非常にわかりにくいものであったので、ユーザにとって直感的でわかり易いとはとても言えるようなものではなかった。
【0008】
【発明が解決しようとする課題】
本発明の目的は、ポインタを大きく動かすことなく操作が可能であり、かつ、直感的でわかり易いユーザ・フレンドリーな、ウィンドウ・システムにおけるユーザ・インターフェイスを提供することである。
【0009】
本発明の別の目的は、表示画面からウィンドウ・システムのウィンドウの一部分がはみ出している場合でも、そのウィンドウに対して適切かつ効率的にウィンドウに対する操作を行うことができる、ウィンドウ・システムにおけるユーザ・インターフェイスを提供することである。
【0010】
本発明のさらなる目的は、ポインタを大きく動かすことなく細やかなスクロール操作を容易に行うことを可能とする、ウィンドウ・システムにおけるユーザ・インターフェイスを提供することである。
【0011】
【課題を解決するための手段】
本発明は上述の目的を達成するために、操作対象のターゲット・ウィンドウを縮小し、省略表示したイメージである「ウィンドウ・イメージ」を導入する。本発明では、ウィンドウ・イメージを操作することにより操作対象であるターゲット・ウィンドウに対する操作がされる。
【0012】
上述の目的は、具体的にはウィンドウ・システムを備えたコンピュータ・システムであって、ウィンドウ・システムの操作対象のターゲット・ウィンドウに含まれるユーザ・インターフェイス部品を検出する手段と、検出されたユーザ・インターフェイス部品の全部または一部に対応するユーザ・インターフェイス部品イメージを含むウィンドウ・イメージを生成する手段と、生成されたウィンドウ・イメージを表示する手段を含み、ウィンドウ・イメージを操作することにより、ターゲット・ウィンドウに対する操作がされるコンピュータ・システムにより達成される。
【0013】
前述のコンピュータ・システムにおいては、ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージは、タイトルバー・イメージ、最小化ボタン・イメージ、最大化ボタン・イメージ、クローズ・ボタン・イメージ、スクロールバー・イメージのうちの少なくとも1つを含み、当該ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージの操作に応じて、対応する操作が前記ターゲット・ウィンドウに対してなされるようにすることができる。
【0014】
前述のコンピュータ・システムにおいては、ウィンドウ・イメージが透明または半透明であるようにすることができる。透明または半透明とすることによりウィンドウ・イメージを表示しているときも、後ろのウィンドウの視認性を害さないようにすることができる。また、ウィンドウ・イメージがポインタの近傍に表示されるようにすることもできる。近傍に表示されるようにすれば、ウィンドウ・イメージに対する操作の際にポインタの移動量を少なくすることができる。
【0015】
前述のコンピュータ・システムにおいては、ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージはスクロールバー・イメージを含み、スクロールバー・イメージを操作したときに遅延スクロールによりターゲット・ウィンドウがスクロールされるようにすることもできる。
【0016】
前述のコンピュータ・システムにおいては、ウィンドウ・イメージに含まれる所定のユーザ・インターフェイス部品イメージがドラッグ操作されたことに応じて、ターゲット・ウィンドウが移動するようにすることもできる。
【0017】
前述のコンピュータ・システムにおいては、検出する手段は、ターゲット・ウィンドウのクライアント・エリアに存在するユーザ・インターフェイス部品を検出する手段を有し、ウィンドウ・イメージは、クライアント・エリアに存在するユーザ・インターフェイス部品に対応するユーザ・インターフェイス部品イメージをクライアント・エリア・イメージに含むようにすることもできる。
【0018】
なお、本発明は前述した「コンピュータ・システム」としての発明の他、「ウィンドウに対する操作をするための方法」あるいは「ウィンドウに対する操作をするためのコンピュータ・プログラム」として把握することも可能である。
【0019】
【発明の実施の形態】
本発明の実施の形態を図面を参照して詳細に説明する。本発明は多くの異なる態様で実施可能であり、本実施の形態の記載内容に限定して解釈すべきではない。本実施の形態の全体を通して同じ要素には同じ番号を付している。
【0020】
本発明の実施の形態において使用されるコンピュータ・システム100の外観の一例を図1に図示する。コンピュータ・システム100には、システム・ユニット110、ディスプレイ12、キーボード6、マウス7、フレキシブル・ディスク装置20のようなリムーバブル・ストレージが含まれ得る。コンピュータ・システム100には、追加の入力デバイスとしてジョイスティック、タッチパッド、トラックボール、マイクロフォンなども含まれ得る。コンピュータ・システム100は、パーソナル・コンピュータ(PC)やワークステーションのような、どのような適当なコンピュータ・システムによっても実現され得る。また、ここではコンピュータ・システムとして表されているけれども、他の本発明の実施例ではネットワーク・コンピュータのような他の種類のデータ処理システムでも実現され得ることは勿論である。
【0021】
図2に本発明の実施の形態において使用されるコンピュータ・システム100のより詳細なハードウェア構成の一例を図示する。コンピュータ・システム100は、中央処理装置(CPU)1とメインメモリ4を含んでいる。CPU1とメインメモリ4は、バス2を介して、補助記憶装置としてのハードディスク装置13と接続されている。また、フレキシブル・ディスク装置20、MO装置28、CD−ROM装置26,29などのリムーバブル・ストレージ(記録メディアを交換可能な外部記憶システム)が関連するフレキシブル・ディスク・コントローラ19、IDEコントローラ25、SCSIコントローラ27などを介してバス2へ接続されている。
【0022】
フレキシブル・ディスク装置20、MO装置28、CD−ROM装置26,29などのリムーバブル・ストレージには、それぞれフレキシブル・ディスク、MO、CD−ROMなどの記憶媒体が挿入され、このフレキシブル・ディスク等やハードディスク装置13、ROM14には、オペレーティング・システムと協働してCPU等に命令を与え、本発明を実施するためのコンピュータ・プログラムのコードを記録することができる。メインメモリ4にロードされることによってコンピュータ・プログラムは実行される。コンピュータ・プログラムは圧縮し、また複数に分割して複数の媒体に記録することもできる。
【0023】
コンピュータ・システム100は、さらに、ユーザ・インターフェイス・ハードウェアとして、マウス7(他のポインティング・デバイスと置換可能である)、キーボード6や視覚データをユーザに提示するためのディスプレイ12を含み得る。また、パラレルポート16を介してプリンタ(図示せず)と接続することや、シリアルポート15を介してモデム(図示せず)を接続することが可能である。コンピュータ・システム100は、シリアルポート15及びモデムを介し、また、通信アダプタ18(イーサネット(R)・カードやトークンリング・カード)等を介してネットワークに接続し、他のコンピュータ等と通信を行うことが可能である。
【0024】
スピーカ23は、オーディオ・コントローラ21によってD/A変換(デジタル/アナログ変換)された音声信号をアンプ22を介して受け取り、音声として出力する。また、オーディオ・コントローラ21は、マイクロフォン24から受け取った音声情報をA/D変換(アナログ/デジタル変換)し、システム外部の音声情報をシステムに取り込むことを可能にしている。
【0025】
以上の説明により、本発明の実施の形態におけるコンピュータ・システム100は、メインフレーム、ワークステーション、通常のパーソナルコンピュータ(PC)、ラップトップPC、ノートブックPC、パームトップPC、ネットワーク・コンピュータ等の情報処理装置、または、これらの組み合わせによって実現されることが容易に理解されるであろう。ただし、これらの構成要素は例示であり、そのすべての構成要素が本発明の必須構成要素となるわけではない。
【0026】
特に、ここで説明したハードウェア構成のうち、フレキシブル・ディスク装置20、MO装置28、CD−ROM装置26,29などのリムーバブル・ストレージ、パラレルポート16、プリンタ、シリアルポート15、モデム、通信アダプタ18、スピーカ23、オーディオ・コントローラ21、アンプ22、マイクロフォン24などはなくても、コンピュータ・システム100において本発明は実現可能であるので、本発明の実施の形態におけるコンピュータ・システム100に含めなくともよい。
【0027】
本発明の実施に使用されるコンピュータ・システム100の各ハードウェア構成要素を、複数のマシンを組み合わせ、それらに機能を配分し実施する等の種々の変更は当業者によって容易に想定され得るものであり、それらの変更が本発明の思想に包含される概念であることは勿論である。
【0028】
本発明の実施の形態のコンピュータ・システム100では、ハードウェア3000などを管理し、アプリケーションがこれを利用できるようにする基本ソフトウェアであるオペレーティング・システム3100が実行される。コンピュータ・システム100のオペレーティング・システム3100としては、Linux(R)、マイクロソフト社のWindows(R)オペレーティング・システム、IBM社のOS/2,AIX、アップル社のMacOS、などが採用され得るがこれらのオペレーティング・システムに限定されるものではない。また、オペレーティング・システム3100上で本発明を実現するための常駐プログラム3200や他のアプリケーション・プログラム3300が実行される。ハードウェア3000、オペレーティング・システム3100、常駐プログラム3200、他のアプリケーション・プログラム3300の関係のイメージの一例を図3に示す。
【0029】
図4に本発明の実施の形態におけるコンピュータ・システム100の機能ブロック図を示す。図4の機能ブロック図の各構成要素は、図2に示したハードウェア構成を有するコンピュータ・システムにおいてハードウェアとソフトウェアを協働させることにより実現することができる。
【0030】
本実施の形態のコンピュータ・システム100は、イベント発生部4110、ウィンドウ管理部4120、表示部4130を含む。これらの機能ブロック要素は、コンピュータ・システム100において実行されるオペレーティング・システム3100により実現され得る。
【0031】
本実施の形態のコンピュータ・システム100は、さらに、常駐プログラム・パラメータ設定部4210、イベント監視部4220、モード切替部4230、ウィンドウ・イメージ生成・消去部4240、ウィンドウ・イメージ/ターゲット・ウィンドウ操作イベント変換部4250をさらに含む。これらの機能ブロック要素は本発明の実施のための常駐プログラム3200により実現され得る。
【0032】
イベント発生部4110は、キーボード6、マウス7などがユーザにより操作されたことなどに応じて、イベントを発生する。本実施の形態においては、イベント発生部4110で発生されたイベントはイベント監視部4220により監視され、検出される。
【0033】
ウィンドウ管理部4120は、ウィンドウ・システムにおけるウィンドウ(操作対象であるターゲット・ウィンドウを含む。)を管理(生成・操作・消去など)する。例えば、イベント発生部4110によりウィンドウに対する操作イベントが発生された場合に、ウィンドウ管理部4120は当該ウィンドウのプロパティを変更した上で、変更後のウィンドウを表示するために表示部4130に命令を出す。
【0034】
表示部4130は、ウィンドウ管理部4120やウィンドウ・イメージ生成・消去部4240などから受け取った表示データを処理し、表示装置(CRT12など)に表示する。表示部4130により、ユーザはコンピュータ・システム100から視覚的に情報を入手することができるようになる。
【0035】
常駐プログラム・パラメータ設定部4210は、常駐プログラムの実行パラメータを設定する手段をユーザに提供する。具体的には、図10に示すような設定パネルが表示画面に表示され、設定パネルのガイドに従ってユーザが常駐プログラムの実行パラメータを設定する。常駐プログラム・パラメータ設定部4210により設定された実行パラメータに従って、後述するイベント監視部4220、モード切替部4230、ウィンドウ・イメージ生成・消去部4240、ウィンドウ・イメージ/ターゲット・ウィンドウ操作イベント変換部4250は動作する。
【0036】
本発明の実施の形態では、常駐プログラム・パラメータ設定部4210により設定される実行パラメータには、ウィンドウ・イメージ表示条件(どのイベントがあったときにウィンドウ・イメージを生成・表示するか)が含まれ、「マウスの第3ボタンが押される」もしくは「指定されたショートカットキーが押される」ことでウィンドウ・イメージを表示することができるようにすることができる。
【0037】
また本発明の実施の形態では、実行パラメータはウィンドウ・イメージ消去条件(どのイベントがあったときにウィンドウ・イメージを消去・非表示するか)を含み、「マウスの第3ボタンが押される」、「指定されたショートカットキーが押される」、「ウィンドウのフォーカスが移動する」もしくは「マウスポインタがウィンドウ・イメージから指定された距離離れる」ことでウィンドウ・イメージを消去するようにすることができる。
【0038】
さらに本発明の実施の形態では、実行パラメータはウィンドウ・イメージ・プロパティを含む。具体的には、ウィンドウ・イメージにスクロールバー・イメージを表示するかどうか、遅延スクロール(後述する)を使用するかどうか、クライアント・エリア・イメージをドラッグすることによりターゲット・ウィンドウを移動するかどうか、クライアント・エリアのボタンをウィンドウ・イメージに表示するかどうかを設定することができるようにされている。
【0039】
なお、クライアント・エリアのボタンをウィンドウ・イメージに表示する機能を実現するために、常駐プログラムにターゲット・ウィンドウのクライアント・エリアに存在するボタンなどのユーザ・インターフェイス部品を検出し、ウィンドウ・イメージのクライアント・エリア・イメージに対応するユーザ・インターフェイス部品イメージを表示させるようにするとよい。この場合、クライアント・エリア・イメージに表示されたユーザ・インターフェイス部品イメージを操作することにより、ターゲット・ウィンドウのユーザ・インターフェイス部品を操作したのと同様の効果が発生するようにするとよい。
【0040】
イベント監視部4220は、イベント発生部4110を監視し、実行パラメータなどにより定められたイベントを検出したときに、必要に応じて、モード切替部4230、ウィンドウ・イメージ生成・消去部4240、ウィンドウ・イメージ/ターゲット・ウィンドウ操作イベント変換部4250などにそのイベントの検出を通知する。
【0041】
モード切替部4230は、イベント監視部4220がウィンドウ操作のモード(以下、単に「モード」という。)を切り替えるイベントを検出したときに、当該イベントに関する通知をイベント監視部4220から受け取り、モードの切り替えを行う。モードには、常駐プログラム3200が起動しており、かつ、ウィンドウ・イメージが表示された状態の「ウィンドウ・イメージ操作モード」と常駐プログラム3200が起動しているが、ウィンドウ・イメージが表示されていない状態の「待機モード」が含まれる。
【0042】
ウィンドウ・イメージ生成・消去部4240は、モードが待機モードからウィンドウ・イメージ操作モードに切り替わったときに、モード切替部4230から通知を受け取ったことに応じてウィンドウ管理部4120からターゲット・ウィンドウにいずれのユーザ・インターフェイス部品が含まれているかの情報を受け取り、当該情報に基いて、当該ユーザ・インターフェイス部品に対応するユーザ・インターフェイス部品を含むウィンドウ・イメージを生成し、表示部4130にそのウィンドウ・イメージの表示を命令する。また、モードがウィンドウ・イメージ操作モードから待機モードに切り替わったときに、ウィンドウ・イメージを消去することもする。
【0043】
ウィンドウ・イメージ/ターゲット・ウィンドウ操作イベント変換部4250は、ウィンドウ・イメージに対してなされた操作イベントをターゲット・ウィンドウ操作イベントに変換し、オペレーティング・システム3100に送信し、ウィンドウ管理部4120に当該ターゲット・ウィンドウ操作イベントを実行させる。
【0044】
図5は、本発明の実施の形態の処理の流れの一例を示したフローチャートである。
【0045】
処理はステップ5000から開始する。次に処理はステップ5010へ進み、常駐プログラムが起動する。常駐プログラムは、コンピュータ・システム(オペレーティング・システム)が起動するときに同時に起動するようにしてもよいし、独立の起動操作により起動するようにしてもよい。また、例えば、ウェブ・ブラウザのような特定のプログラムの起動に応じて起動するようにしてもよい。
【0046】
ステップ5010で常駐プログラムが起動した後、処理はステップ5020へ進み、イベント入力の監視が開始される。次に、常駐プログラムの終了イベントが発生したかどうかがステップ5030で判定される。終了イベントが発生した場合は、常駐プログラムが終了され、Yesの矢印を通じてステップ5110へ進み、処理は終了する。終了イベントが発生していない場合は、処理はNoの矢印を通じてステップ5040へ進み、現在のモードが、ウィンドウ・イメージ操作モードであるか、あるいは待機モードであるかが判定される。
【0047】
ステップ5040でモードがウィンドウ・イメージ操作モードではない、すなわち、待機モードであると判定された場合、処理はNoの矢印を通じてステップ5050へ進む。ステップ5050では、ウィンドウ・イメージ操作モードへの切り替えイベントが発生したかどうかが判定される。ステップ5050で、ウィンドウ・イメージ操作モードへの切り替えイベントが発生していないと判定された場合は、Noの矢印を通じてステップ5020へ戻り、再びイベント入力の監視が行われる。
【0048】
ステップ5050で、ウィンドウ・イメージ操作モードへの切り替えイベントが発生したと判定された場合は、処理はステップ5060へ進み、モードをウィンドウ・イメージ操作モードに変更し、ウィンドウ・イメージを生成し、表示装置に表示する。ウィンドウ・イメージの生成は、オペレーティング・システムのAPI(Application Program Interface)を使用して、ターゲット・ウィンドウに含まれるユーザ・インターフェイス部品を検出し、検出されたユーザ・インターフェイス部品の全部または一部に対応するユーザ・インターフェイス部品イメージをウィンドウ・イメージに含ませるようにするとよい。また、ウィンドウ・イメージはポインタの近傍に表示されるようにすれば、ウィンドウ・イメージに対する操作の際にポインタの移動量を少なくすることができる。ウィンドウ・イメージを表示した後、処理はステップ5020へ戻り、再びイベント入力の監視が行われる。
【0049】
図7に、ウィンドウ・イメージ7000の一例を示す。本実施の形態においては、ウィンドウ・イメージ7000を操作して行うターゲット・ウィンドウのウィンドウ操作イベントは、ウィンドウの最大化、最小化、クローズ、移動、スクロールであるとする。ウィンドウ・イメージ7000は、タイトルバー・イメージ7010、最小化ボタン・イメージ7020、最大化ボタン・イメージ7030、クローズ・ボタン・イメージ7040、スクロールバー・イメージ7050、クライアント・エリア・イメージ7060を含む。
【0050】
これらは、図12に示すターゲット・ウィンドウ8100のタイトルバー8010、最小化ボタン8020、最大化ボタン8030、クローズ・ボタン8040、スクロールバー8050、クライアント・エリア8060に対応するものである。ウィンドウ・イメージ7000は透明または半透明とすることができる。透明または半透明とすることによりウィンドウ・イメージを表示しているときも、後ろのウィンドウの視認性を害さないようにすることができる。
【0051】
ステップ5040でモードがウィンドウ・イメージ操作モードであると判定された場合、処理はYesの矢印を通じてステップ5070へ進む。ステップ5070では、待機モードへの切り替えイベントが発生したかどうかが判定される。ステップ5070で、待機モードへの切り替えイベントが発生したと判定された場合は、処理はYesは矢印を通じてステップ5080へ進み、モードが待機モードに変更され、ウィンドウ・イメージが消去される。
【0052】
ステップ5070で、待機モードへの切り替えイベントが発生したと判定されなかった場合は、処理はステップ5090へ進む。ステップ5090では、ウィンドウ・イメージに対する操作イベントが発生したかどうかが判定される。ステップ5090でウィンドウ・イメージに対する操作イベントが発生しなかったと判定された場合は、処理はステップ4020へ戻り、イベント入力の監視が再び行われる。
【0053】
ステップ5070で、ウィンドウ・イメージに対する操作イベントが発生したと判定された場合は、処理はステップ5100へ進む。ステップ5100では、当該ウィンドウ・イメージに対する操作イベントがターゲット・ウィンドウに対する操作イベントに変換される。変換された操作イベントはオペレーティング・システムに送信され、オペレーティング・システムのウィンドウ管理部4120により、ターゲット・ウィンドウに対して操作が施される。その後、処理はステップ4020へ戻り、イベント入力の監視が再び行われる。
【0054】
図5のステップ5100のウィンドウ・イメージに対する操作イベントのターゲット・ウィンドウに対する操作イベントへの変換を、図6を使用して詳細に説明する。なお、本発明の実施の形態では、ターゲット・ウィンドウの移動、最小化、最大化、クローズ、スクロールをウィンドウ・イメージを操作して行う場合を説明する。
【0055】
処理はステップ6000から開始する。次に、ステップ6010へ進み、所定のマウスのボタンがユーザによりクリックされたかどうかが判定される。クリックされたと判定された場合は、Yesの矢印を通じてステップ6020へ進み、マウスがクリックされたときのポインタの位置(クリック位置)がどこであったかを判定する段階に入る。
【0056】
ステップ6020では、クリック位置が最大化ボタン・イメージであるかどうかが判定される。ステップ6020で、クリック位置が最大化ボタン・イメージであると判断された場合は、処理はYesの矢印を通じてステップ6030へ進み、当該イベントはターゲット・ウィンドウの最大化イベントに変換され、オペレーティング・システムに送信される。その結果、ターゲット・ウィンドウの最大化ボタンを押したときと同じ効果が得られることとなる。その後、処理はステップ6130へ進み、終了する。
【0057】
ステップ6020で、クリック位置が最大化ボタン・イメージではないと判定された場合は、処理はNoの矢印を通じてステップ6040へ進み、クリック位置が最小化ボタン・イメージであるかどうかが判定される。ステップ6040で、クリック位置が最小化ボタン・イメージであると判断された場合は、処理はYesの矢印を通じてステップ6050へ進み、当該イベントはターゲット・ウィンドウの最小化イベントに変換され、オペレーティング・システムに送信される。その結果、ターゲット・ウィンドウの最小化ボタンを押したときと同じ効果が得られることとなる。その後、処理はステップ6130へ進み、終了する。
【0058】
ステップ6040で、クリック位置が最小化ボタン・イメージではないと判定された場合は、処理はNoの矢印を通じてステップ6060へ進み、クリック位置がクローズ・ボタン・イメージであるかどうかが判定される。ステップ6060で、クリック位置がクローズ・ボタン・イメージであると判断された場合は、処理はYesの矢印を通じてステップ6070へ進み、当該イベントはターゲット・ウィンドウのクローズ・イベントに変換され、オペレーティング・システムに送信される。その結果、ターゲット・ウィンドウのクローズ・ボタンを押したときと同じ効果が得られることとなる。その後、処理はステップ6130へ進み、終了する。
【0059】
ステップ6060で、クリック位置がクローズ・ボタン・イメージであると判定されない場合は、処理はステップ6130へ進み、終了する。
【0060】
ステップ6010で、マウスのボタンがクリックされたと判定されなかった場合は、処理はステップ6080へ進み、マウスによりドラッグ操作がされたかどうかが判定される。ドラッグ操作が行われなかった場合は、処理はNoの矢印を通じて、ステップ6130へ進み、終了する。ドラッグ操作が行われた場合、処理はステップ6090へ進み、ドラッグ操作の位置(ドラッグ位置)がどこであったかを判定する段階に入る。
【0061】
ステップ6090では、ドラッグ位置がスクロールバー・イメージであるかどうかが判定される。ステップ6090で、ドラッグ位置がスクロールバー・イメージであると判定された場合は、処理はYesの矢印を通じてステップ6100へ進み、当該イベントはターゲット・ウィンドウのスクロール・イベントに変換され、オペレーティング・システムに送信される。その結果、ターゲット・ウィンドウがスクロールされることとなる。その後、処理はステップ6130へ進み、終了する。
【0062】
なお、ウィンドウ・イメージの中のスクロールバー・イメージを用いてターゲット・ウィンドウのスクロールを行う場合、ウィンドウ・イメージが小さいために、スクロール感度が敏感(センシティブ)になり過ぎて、スクロールの細かいコントロールが困難となる場合がある。そこで、ユーザの選択により、以下に述べる「遅延スクロール」の手法を用いることができるようにするとよい。
【0063】
「遅延スクロール」は図11に示すようにスクロールを操作できるようにすることにより実現される。すなわち、初期状態(11010)において、スクロールバー・イメージをドラッグしたとき(11020)に、ポインタと同じようにスクロールバー・イメージを動かすのではなく、マウスのボタンが押されている間だけドラッグしたポインタの後を追うようにスクロールバー・イメージが所定の速度で動くようにする(11030⇒11040⇒11050)。そして、ポインタにスクロールバー・イメージが追いついた時点(11060)もしくはマウスのボタンが離されたときにスクロールがそこで終了するようにする。このようにすれば、ポインタが急激に移動することを避けることができ、より細やかなスクロールが可能となる。
【0064】
ステップ6090で、ドラッグ位置がスクロールバー・イメージではないと判定された場合は、処理はNoの矢印を通じてステップ6110へ進み、ドラッグ位置がタイトルバー・イメージまたはクライアント・エリア・イメージであるかどうかが判定される。ステップ6110で、ドラッグ位置がタイトルバー・イメージまたはクライアント・エリア・イメージであると判断された場合は、処理はYesの矢印を通じてステップ6120へ進み、当該イベントはターゲット・ウィンドウの移動イベントに変換され、オペレーティング・システムに送信される。その結果、ターゲット・ウィンドウの移動が行われることとなる。その後、処理はステップ6130へ進み、終了する。
【0065】
ステップ6110で、ドラッグ位置がタイトルバー・イメージまたはクライアント・エリア・イメージであると判定されない場合は、処理はステップ6130へ進み、終了する。
【0066】
上記の本発明の実施の形態は、説明を目的として記述されたものであって、すべての実施態様を記述するものではなく、本発明の実施の形態に開示された形式に発明を限定する意図ではない。上記の開示によれば、多くの変更例とバリエーションが実現可能である。本発明の範囲は発明の詳細な説明の記載により制限されるのではなく、特許請求の範囲により定まるものであることに留意されたい。
【0067】
本発明の実施の形態を、ターゲット・ウィンドウの移動、最小化、最大化、クローズ、スクロールをウィンドウ・イメージを操作して行う例を用いて本発明を説明したが、本発明はウィンドウ・システムが採用する他のウィンドウに対する操作についても応用可能である。
【0068】
また、ターゲット・ウィンドウに含まれるユーザ・インターフェイス部品に対応するユーザ・インターフェイス部品すべてをウィンドウ・イメージに反映する必要はなく、例えば、ユーザが設定した一部のみをウィンドウ・イメージに反映するようにしてもよい。
【0069】
上記の仕様、例、データにより本発明の一態様の製造および使用が完全に説明される。本発明の多くの実施例が本発明の精神と範囲を離れることなく実現される。
【0070】
本発明によれば、図12(従来技術)と図8(本発明の適用例)から明らかであるように、ウィンドウ・システムにおいてポインタを大きく動かすことなく、かつ、ウィンドウに対する操作を行うことができることが理解される。本発明は、ターゲット・ウィンドウを省略化したウィンドウ・イメージを使用するので、ユーザにとって非常に直感的でわかり易い、ユーザ・フレンドリーなインターフェイスが実現される。
【0071】
従来技術では、図13に示すように表示画面からウィンドウ・システムにおいてウィンドウの一部がはみ出している場合は、表示画面からはみ出ていたユーザ・インターフェイス部品を表示画面内に表示するためにウィンドウの移動を行い、その後にウィンドウに対する操作を行わなければならなかったが、本発明によれば、図9に示すようにそのような場合でも適切かつ効率的にウィンドウに対する操作を行うことができる。
【0072】
本発明によれば、「遅延スクロール」手法を用いることで、ウィンドウ・イメージが小さいことに起因する、スクロールがセンシティブになり過ぎる事態に対応することができ、ポインタを大きく動かすことなく、細やかにスクロール操作を行うことができる。
【図面の簡単な説明】
【図1】 本発明の実施の形態において使用されるコンピュータ・システムの外観の一例である。
【図2】 本発明の実施の形態において使用されるコンピュータ・システムのハードウェア構成の一例である。
【図3】 本発明の実施の形態におけるハードウェア、オペレーティング・システム、常駐プログラム、他のアプリケーションの関係のイメージを図示したものである。
【図4】 本発明の実施の形態におけるウィンドウ・システムの機能ブロック図である。
【図5】 本発明の実施の形態の処理の流れを示したフローチャートである。
【図6】 図5のフローチャートのステップ5100の詳細を記述したフローチャートである。
【図7】 本発明の実施の形態におけるウィンドウ・イメージの一例である。
【図8】 本発明の実施の形態における本発明の適用した場合のユーザ・インターフェイスの画面表示の一例である。
【図9】 本発明の実施の形態における本発明の適用した場合のユーザ・インターフェイスの画面表示の一例である。
【図10】本発明の実施の形態における常駐プログラムの設定パネルである。
【図11】従来技術のユーザ・インターフェイスの画面表示表示の一例である。
【図12】従来技術のユーザ・インターフェイスの画面表示表示の一例である。
【図13】遅延スクロールを説明した図である。
[0001]
[Industrial application fields]
The present invention relates to information processing technology, and more particularly, to a method, a computer program, and a computer system for efficiently operating a window in a window system.
[0002]
[Prior art]
X-Windows system adopted in UNIX (R) and Linux (R) used in recent personal computers (PCs) and workstations, Microsoft Windows (R), IBM OS / 2, Operating systems such as Apple's MacOS employ a multi-window system.
[0003]
In the window systems employed in these operating systems, for example, as shown in FIG. 12, user interface components (title bar 8010, minimize button) that provide operations for windows such as moving, resizing, and scrolling windows. 8020, a maximize button 8030, a close button 8040, a scroll bar 8050, and the like) are concentrated on the outer periphery of the target window 8100 that is the operation target.
[0004]
This may cause the pointer 8000 to be moved greatly when performing operations on the target window 8100. For example, considering that the user wants to operate the close button 8040 when the pointer 8000 is in the lower left of the client area 8060 of the target window 8100, it is understood that the amount of movement can be quite large. The
[0005]
The resolution of display devices (such as CRTs and LCDs) that display window systems has increased significantly in recent years due to advances in related technology, and the size of individual windows has also increased. In addition, it forces the user to move the pointer a lot, and these are frequently performed operations, so that the total work time can be lost.
[0006]
In addition, as shown in FIG. 13, a part of the target window 8100 (in this case, the right end portion of the window) may protrude beyond the screen 9000 of the display device. In such a case, since the pointer 8000 cannot be operated normally outside the screen 9000, a user interface component (for example, a close button 8040) existing outside the screen 9000 is used. The operation on the window of the target window 8100 could not be performed. As a result, the user interface parts must be moved to display the protruding user interface parts in the display screen, and then the window must be operated, and the user is forced to use a very inconvenient operating environment. It was done.
[0007]
Further, as another user interface, there is a method in which operations for an application program are converted into buttons and the buttons are displayed in a separate window, but there is no device for performing operations on the window. Also, the interface was very difficult to understand which button represents which operation, so it was not very intuitive for the user.
[0008]
[Problems to be solved by the invention]
An object of the present invention is to provide a user interface in a window system that can be operated without greatly moving a pointer and that is intuitive and easy to understand.
[0009]
Another object of the present invention is to enable a user in a window system to perform operations on a window appropriately and efficiently even when a part of the window of the window system protrudes from the display screen. Is to provide an interface.
[0010]
It is a further object of the present invention to provide a user interface in a window system that makes it possible to easily perform fine scroll operations without greatly moving the pointer.
[0011]
[Means for Solving the Problems]
In order to achieve the above-mentioned object, the present invention introduces a “window image” which is an image displayed by omitting the target window to be manipulated. In the present invention, an operation on a target window that is an operation target is performed by manipulating a window image.
[0012]
The above object is specifically a computer system having a window system, a means for detecting a user interface component included in a target window to be operated by the window system, and a detected user interface. Means for generating a window image including a user interface part image corresponding to all or part of the interface part; and means for displaying the generated window image. This is accomplished by a computer system that operates on windows.
[0013]
In the above-mentioned computer system, the user interface part image included in the window image is a title bar image, a minimize button image, a maximize button image, a close button image, or a scroll bar image. In response to an operation of a user interface component image included in the window image, a corresponding operation can be performed on the target window.
[0014]
In the computer system described above, the window image can be transparent or translucent. By making it transparent or translucent, the visibility of the back window can be prevented from being impaired even when the window image is displayed. A window image can also be displayed near the pointer. If it is displayed in the vicinity, it is possible to reduce the amount of movement of the pointer when operating the window image.
[0015]
In the above computer system, the user interface part image included in the window image includes a scroll bar image, and when the scroll bar image is operated, the target window is scrolled by delayed scrolling. You can also.
[0016]
In the above-described computer system, the target window can be moved in response to a predetermined user interface part image included in the window image being dragged.
[0017]
In the above computer system, the detecting means includes means for detecting a user interface component existing in the client area of the target window, and the window image is a user interface component existing in the client area. The user interface part image corresponding to can be included in the client area image.
[0018]
In addition to the invention as the “computer system” described above, the present invention can also be understood as “a method for operating a window” or “a computer program for operating a window”.
[0019]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described in detail with reference to the drawings. The present invention can be implemented in many different modes and should not be construed as limited to the description of the embodiment. Throughout this embodiment, the same numbers are assigned to the same elements.
[0020]
An example of the external appearance of the computer system 100 used in the embodiment of the present invention is shown in FIG. The computer system 100 may include a removable storage such as the system unit 110, the display 12, the keyboard 6, the mouse 7, and the flexible disk device 20. Computer system 100 may also include joysticks, touchpads, trackballs, microphones, etc. as additional input devices. Computer system 100 may be implemented by any suitable computer system, such as a personal computer (PC) or workstation. Also, although represented here as a computer system, it should be understood that other embodiments of the present invention may be implemented in other types of data processing systems such as network computers.
[0021]
FIG. 2 shows an example of a more detailed hardware configuration of the computer system 100 used in the embodiment of the present invention. The computer system 100 includes a central processing unit (CPU) 1 and a main memory 4. The CPU 1 and the main memory 4 are connected to a hard disk device 13 as an auxiliary storage device via the bus 2. In addition, the flexible disk controller 19, IDE controller 25, SCSI, etc. related to the removable storage (external storage system in which the recording medium can be exchanged) such as the flexible disk device 20, the MO device 28, and the CD-ROM devices 26 and 29 are associated. It is connected to the bus 2 via the controller 27 and the like.
[0022]
Removable storage devices such as the flexible disk device 20, the MO device 28, and the CD-ROM devices 26 and 29 are inserted with storage media such as a flexible disk, an MO, and a CD-ROM, respectively. In the device 13 and the ROM 14, a code of a computer program for carrying out the present invention can be recorded by giving an instruction to the CPU or the like in cooperation with the operating system. The computer program is executed by being loaded into the main memory 4. The computer program can be compressed or divided into a plurality of pieces and recorded on a plurality of media.
[0023]
The computer system 100 may further include a mouse 7 (which can be replaced with another pointing device), a keyboard 6 and a display 12 for presenting visual data to the user as user interface hardware. Further, it is possible to connect to a printer (not shown) via the parallel port 16 and to connect a modem (not shown) via the serial port 15. The computer system 100 is connected to a network via a serial port 15 and a modem, and via a communication adapter 18 (Ethernet (R) card or token ring card), and communicates with other computers. Is possible.
[0024]
The speaker 23 receives an audio signal D / A converted (digital / analog converted) by the audio controller 21 via the amplifier 22 and outputs it as audio. The audio controller 21 performs A / D conversion (analog / digital conversion) on the audio information received from the microphone 24, and allows the audio information outside the system to be taken into the system.
[0025]
As described above, the computer system 100 according to the embodiment of the present invention has information on a mainframe, a workstation, a normal personal computer (PC), a laptop PC, a notebook PC, a palmtop PC, a network computer, and the like. It will be readily understood that this is realized by the processing device or a combination thereof. However, these constituent elements are examples, and not all the constituent elements are essential constituent elements of the present invention.
[0026]
In particular, among the hardware configurations described here, removable storage such as the flexible disk device 20, the MO device 28, the CD-ROM devices 26 and 29, the parallel port 16, the printer, the serial port 15, the modem, and the communication adapter 18. The present invention can be realized in the computer system 100 without the speaker 23, the audio controller 21, the amplifier 22, the microphone 24, etc., and therefore may not be included in the computer system 100 in the embodiment of the present invention. .
[0027]
Various modifications such as combining a plurality of machines with each hardware component of the computer system 100 used to implement the present invention and allocating and executing functions to those machines can be easily assumed by those skilled in the art. Of course, these changes are concepts included in the idea of the present invention.
[0028]
In the computer system 100 according to the embodiment of the present invention, an operating system 3100 is executed which is basic software that manages the hardware 3000 and the like and enables applications to use it. As the operating system 3100 of the computer system 100, Linux (R), Microsoft Windows (R) operating system, IBM OS / 2, AIX, Apple MacOS, etc. may be employed. It is not limited to operating systems. In addition, a resident program 3200 and other application programs 3300 for implementing the present invention are executed on the operating system 3100. An example of the relationship between the hardware 3000, operating system 3100, resident program 3200, and other application programs 3300 is shown in FIG.
[0029]
FIG. 4 shows a functional block diagram of the computer system 100 according to the embodiment of the present invention. Each component of the functional block diagram of FIG. 4 can be realized by cooperating hardware and software in a computer system having the hardware configuration shown in FIG.
[0030]
The computer system 100 according to the present embodiment includes an event generation unit 4110, a window management unit 4120, and a display unit 4130. These functional block elements may be implemented by an operating system 3100 that executes in the computer system 100.
[0031]
The computer system 100 of the present embodiment further includes a resident program / parameter setting unit 4210, an event monitoring unit 4220, a mode switching unit 4230, a window image generation / deletion unit 4240, and a window image / target window operation event conversion. A portion 4250 is further included. These functional block elements can be realized by a resident program 3200 for implementing the present invention.
[0032]
The event generation unit 4110 generates an event in response to the operation of the keyboard 6, the mouse 7, and the like by the user. In the present embodiment, an event generated by event generation unit 4110 is monitored and detected by event monitoring unit 4220.
[0033]
The window management unit 4120 manages (creates, operates, deletes, etc.) windows (including target windows that are operation targets) in the window system. For example, when an operation event for a window is generated by the event generation unit 4110, the window management unit 4120 changes the property of the window and issues a command to the display unit 4130 to display the changed window.
[0034]
The display unit 4130 processes display data received from the window management unit 4120, the window image generation / deletion unit 4240, and the like, and displays the data on a display device (CRT 12 or the like). Display unit 4130 allows the user to obtain information visually from computer system 100.
[0035]
The resident program / parameter setting unit 4210 provides a user with a means for setting an execution parameter of the resident program. Specifically, a setting panel as shown in FIG. 10 is displayed on the display screen, and the user sets the execution parameters of the resident program according to the guide of the setting panel. According to the execution parameters set by the resident program / parameter setting unit 4210, an event monitoring unit 4220, a mode switching unit 4230, a window image generation / deletion unit 4240, and a window image / target window operation event conversion unit 4250 described later operate. To do.
[0036]
In the embodiment of the present invention, the execution parameter set by the resident program parameter setting unit 4210 includes a window image display condition (when an event occurs, a window image is generated / displayed). The window image can be displayed by “pressing the third mouse button” or “pressing the designated shortcut key”.
[0037]
In the embodiment of the present invention, the execution parameter includes a window image erasing condition (which event erases / hides the window image), and “the third button of the mouse is pressed”, The window image can be erased by “the specified shortcut key is pressed”, “the window focus is moved”, or “the mouse pointer is moved away from the window image by a specified distance”.
[0038]
Further, in an embodiment of the present invention, the execution parameters include window image properties. Specifically, whether to display a scrollbar image in the window image, whether to use delayed scrolling (described below), whether to move the target window by dragging the client area image, It is possible to set whether to display the button of the client area in the window image.
[0039]
In order to realize the function to display the client area buttons in the window image, the resident program detects the user interface parts such as buttons in the client area of the target window, and the window image client A user interface part image corresponding to the area image may be displayed. In this case, by manipulating the user interface part image displayed in the client area image, the same effect as that obtained by manipulating the user interface part of the target window may be generated.
[0040]
The event monitoring unit 4220 monitors the event generation unit 4110 and detects an event defined by an execution parameter or the like, as necessary, a mode switching unit 4230, a window image generation / deletion unit 4240, a window image. / The target window operation event conversion unit 4250 is notified of the detection of the event.
[0041]
When the event monitoring unit 4220 detects an event for switching the window operation mode (hereinafter simply referred to as “mode”), the mode switching unit 4230 receives a notification regarding the event from the event monitoring unit 4220 and switches the mode. Do. In the mode, the resident program 3200 is activated and the “window image operation mode” in which the window image is displayed and the resident program 3200 are activated, but the window image is not displayed. The state “standby mode” is included.
[0042]
When the mode is switched from the standby mode to the window image operation mode, the window image generation / deletion unit 4240 receives any notification from the mode switching unit 4230 to display any of the target windows from the window management unit 4120. Based on the information, a window image including a user interface component corresponding to the user interface component is generated, and the window image of the window image is displayed on the display unit 4130. Command display. Further, when the mode is switched from the window image operation mode to the standby mode, the window image is deleted.
[0043]
The window image / target window operation event conversion unit 4250 converts an operation event performed on the window image into a target window operation event, transmits the event to the operating system 3100, and sends the target event to the window management unit 4120. Causes a window operation event to be executed.
[0044]
FIG. 5 is a flowchart showing an example of a processing flow according to the embodiment of the present invention.
[0045]
The process starts at step 5000. Next, the process proceeds to step 5010, where the resident program is activated. The resident program may be started simultaneously when the computer system (operating system) is started, or may be started by an independent starting operation. Further, for example, it may be activated in response to activation of a specific program such as a web browser.
[0046]
After the resident program is started in step 5010, the process proceeds to step 5020, and event input monitoring is started. Next, it is determined in step 5030 whether an end event of the resident program has occurred. When the end event occurs, the resident program is ended, and the process proceeds to step 5110 through the Yes arrow, and the process ends. If the end event has not occurred, the process proceeds to step 5040 through an arrow No to determine whether the current mode is the window image operation mode or the standby mode.
[0047]
If it is determined in step 5040 that the mode is not the window image operation mode, that is, the standby mode, the process proceeds to step 5050 through the No arrow. In step 5050, it is determined whether a switching event to the window image operation mode has occurred. If it is determined in step 5050 that the event for switching to the window / image operation mode has not occurred, the process returns to step 5020 through the arrow No and the event input is monitored again.
[0048]
If it is determined in step 5050 that a switching event to the window image operation mode has occurred, the process proceeds to step 5060 to change the mode to the window image operation mode, generate a window image, and display the display device. To display. Window image generation uses the operating system API (Application Program Interface) to detect user interface components contained in the target window and support all or part of the detected user interface components The user interface component image to be included may be included in the window image. Further, if the window image is displayed in the vicinity of the pointer, the amount of movement of the pointer can be reduced when operating the window image. After displaying the window image, the process returns to step 5020 to monitor the event input again.
[0049]
FIG. 7 shows an example of the window image 7000. In the present embodiment, it is assumed that window operation events of the target window performed by operating the window image 7000 are window maximization, minimization, close, movement, and scroll. The window image 7000 includes a title bar image 7010, a minimize button image 7020, a maximize button image 7030, a close button image 7040, a scroll bar image 7050, and a client area image 7060.
[0050]
These correspond to the title bar 8010, the minimize button 8020, the maximize button 8030, the close button 8040, the scroll bar 8050, and the client area 8060 of the target window 8100 shown in FIG. The window image 7000 can be transparent or translucent. By making it transparent or translucent, the visibility of the back window can be prevented from being impaired even when the window image is displayed.
[0051]
If it is determined in step 5040 that the mode is the window image operation mode, the process proceeds to step 5070 through a Yes arrow. In step 5070, it is determined whether an event for switching to the standby mode has occurred. If it is determined in step 5070 that an event for switching to the standby mode has occurred, Yes proceeds to step 5080 through the arrow, the mode is changed to the standby mode, and the window image is deleted.
[0052]
If it is not determined in step 5070 that an event for switching to the standby mode has occurred, the process proceeds to step 5090. In step 5090, it is determined whether an operation event has occurred for the window image. If it is determined in step 5090 that an operation event for the window image has not occurred, the process returns to step 4020 to monitor the event input again.
[0053]
If it is determined in step 5070 that an operation event has occurred for the window image, the process proceeds to step 5100. In step 5100, an operation event for the window image is converted into an operation event for the target window. The converted operation event is transmitted to the operating system, and the window management unit 4120 of the operating system performs an operation on the target window. Thereafter, the process returns to step 4020, and the event input is monitored again.
[0054]
The conversion of the operation event for the window image in step 5100 of FIG. 5 into the operation event for the target window will be described in detail with reference to FIG. In the embodiment of the present invention, a case where the target window is moved, minimized, maximized, closed, and scrolled by operating the window image will be described.
[0055]
The process starts at step 6000. Next, proceeding to step 6010, it is determined whether or not a predetermined mouse button has been clicked by the user. If it is determined that the mouse has been clicked, the process proceeds to step 6020 through the Yes arrow, and the process enters a stage where the position of the pointer (click position) when the mouse is clicked is determined.
[0056]
In step 6020, it is determined whether the click position is a maximize button image. If it is determined in step 6020 that the click position is a maximize button image, the process proceeds to step 6030 through the Yes arrow, and the event is converted to a target window maximize event, which is sent to the operating system. Sent. As a result, the same effect as when the maximize button of the target window is pressed is obtained. Thereafter, the process proceeds to step 6130 and ends.
[0057]
If it is determined in step 6020 that the click position is not the maximize button image, the process proceeds to step 6040 through the No arrow to determine whether the click position is the minimize button image. If it is determined in step 6040 that the click position is a minimize button image, the process proceeds to step 6050 through the Yes arrow, and the event is converted to a target window minimize event, which is sent to the operating system. Sent. As a result, the same effect is obtained as when the minimize button of the target window is pressed. Thereafter, the process proceeds to step 6130 and ends.
[0058]
If it is determined in step 6040 that the click position is not the minimized button image, the process proceeds to step 6060 through the No arrow to determine whether the click position is a close button image. If it is determined in step 6060 that the click position is the close button image, the process proceeds to step 6070 through the Yes arrow, and the event is converted into a target window close event, which is then sent to the operating system. Sent. As a result, the same effect as when the close button of the target window is pressed can be obtained. Thereafter, the process proceeds to step 6130 and ends.
[0059]
If it is not determined in step 6060 that the click position is the close button image, the process proceeds to step 6130 and ends.
[0060]
If it is not determined in step 6010 that the mouse button has been clicked, the process proceeds to step 6080 to determine whether or not a drag operation has been performed with the mouse. If the drag operation has not been performed, the process proceeds to step 6130 through the arrow No and ends. If a drag operation has been performed, the process advances to step 6090 to enter a stage for determining where the drag operation position (drag position) was.
[0061]
In step 6090, it is determined whether the drag position is a scroll bar image. If it is determined in step 6090 that the drag position is a scroll bar image, the process proceeds to step 6100 through the Yes arrow, and the event is converted into a target window scroll event and sent to the operating system. Is done. As a result, the target window is scrolled. Thereafter, the process proceeds to step 6130 and ends.
[0062]
In addition, when scrolling the target window using the scroll bar image in the window image, the scroll sensitivity becomes too sensitive (sensitive) because the window image is small, making it difficult to control the scrolling details. It may become. Therefore, it is preferable to use the “delayed scrolling” method described below according to the user's selection.
[0063]
“Delayed scrolling” is realized by enabling the scrolling operation as shown in FIG. That is, in the initial state (11010), when the scroll bar image is dragged (11020), the scroll bar image is not moved in the same manner as the pointer, but the dragged pointer is pressed only while the mouse button is pressed. The scroll bar image is moved at a predetermined speed so as to follow the following (11030 → 11040 → 11050). Then, when the scroll bar image catches up with the pointer (11060) or when the mouse button is released, the scrolling is ended there. In this way, it is possible to avoid a sudden movement of the pointer, and finer scrolling is possible.
[0064]
If it is determined in step 6090 that the drag position is not a scroll bar image, the process proceeds to step 6110 through a No arrow to determine whether the drag position is a title bar image or a client area image. Is done. If it is determined in step 6110 that the drag position is the title bar image or the client area image, the process proceeds to step 6120 through the Yes arrow, and the event is converted into a target window moving event. Sent to the operating system As a result, the target window is moved. Thereafter, the process proceeds to step 6130 and ends.
[0065]
If it is not determined in step 6110 that the drag position is the title bar image or the client area image, the process proceeds to step 6130 and ends.
[0066]
The above-described embodiments of the present invention have been described for the purpose of explanation, and are not intended to describe all embodiments, and are intended to limit the invention to the form disclosed in the embodiments of the present invention. is not. Many variations and variations are possible according to the above disclosure. It should be noted that the scope of the present invention is not limited by the description of the detailed description of the invention, but is defined by the claims.
[0067]
The embodiment of the present invention has been described by using an example in which the target window is moved, minimized, maximized, closed, and scrolled by manipulating the window image. The present invention can also be applied to operations on other windows that are employed.
[0068]
Also, it is not necessary to reflect all user interface parts corresponding to user interface parts included in the target window in the window image. For example, only a part set by the user is reflected in the window image. Also good.
[0069]
The above specifications, examples and data provide a complete description of the manufacture and use of one aspect of the invention. Many embodiments of the invention can be implemented without departing from the spirit and scope of the invention.
[0070]
According to the present invention, as is clear from FIG. 12 (prior art) and FIG. 8 (application example of the present invention), the window system can be operated without moving the pointer greatly. Is understood. Since the present invention uses a window image in which the target window is omitted, a user-friendly interface that is very intuitive and easy to understand for the user is realized.
[0071]
In the prior art, when a part of the window protrudes from the display screen in the window system as shown in FIG. 13, the window is moved in order to display the user interface component protruding from the display screen in the display screen. However, according to the present invention, the window operation can be appropriately and efficiently performed even in such a case as shown in FIG.
[0072]
According to the present invention, by using the “delayed scrolling” method, it is possible to cope with a situation where scrolling becomes too sensitive due to a small window image, and it is possible to scroll finely without moving the pointer greatly. The operation can be performed.
[Brief description of the drawings]
FIG. 1 is an example of the external appearance of a computer system used in an embodiment of the present invention.
FIG. 2 is an example of a hardware configuration of a computer system used in the embodiment of the present invention.
FIG. 3 illustrates an image of a relationship among hardware, an operating system, a resident program, and other applications in the embodiment of the present invention.
FIG. 4 is a functional block diagram of the window system in the embodiment of the present invention.
FIG. 5 is a flowchart showing a flow of processing according to the embodiment of the present invention.
FIG. 6 is a flowchart describing details of step 5100 in the flowchart of FIG. 5;
FIG. 7 is an example of a window image in the embodiment of the present invention.
FIG. 8 is an example of a screen display of the user interface when the present invention is applied in the embodiment of the present invention.
FIG. 9 is an example of a screen display of the user interface when the present invention is applied in the embodiment of the present invention.
FIG. 10 is a resident program setting panel according to the embodiment of the present invention.
FIG. 11 is an example of a screen display display of a conventional user interface.
FIG. 12 is an example of a screen display display of a conventional user interface.
FIG. 13 is a diagram illustrating delayed scrolling.

Claims (9)

ウィンドウ・システムを備えたコンピュータ・システムであって、
前記ウィンドウ・システムの操作対象のターゲット・ウィンドウに含まれるユーザ・インターフェイス部品を検出する手段と、
前記検出されたユーザ・インターフェイス部品の全部または一部に対応するユーザ・インターフェイス部品イメージを含むウィンドウ・イメージを生成する手段と、
前記ウィンドウ・システムにおいて、前記生成されたウィンドウ・イメージを表示する手段を含み、
前記ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージを操作することにより、前記ターゲット・ウィンドウの対応するユーザ・インターフェイス部品に対する操作がされる、
コンピュータ・システム。
A computer system with a window system,
Means for detecting a user interface component included in a target window to be operated by the window system;
Means for generating a window image including user interface component images corresponding to all or part of the detected user interface components;
Means for displaying the generated window image in the window system ;
By operating a user interface part image included in the window image , an operation is performed on a corresponding user interface part of the target window.
Computer system.
前記ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージは、タイトルバー・イメージ、最小化ボタン・イメージ、最大化ボタ
ン・イメージ、クローズ・ボタン・イメージ、スクロールバー・イメージのうちの少なくとも1つを含み、
当該ウィンドウ・イメージに含まれるユーザ・イン ターフェイス部品イメージの操作に応じて、対応する操作が前記ターゲット・ウィンドウに対してなされる、
請求項1記載のコンピュータ・システム。
The user interface component image included in the window image includes at least one of a title bar image, a minimize button image, a maximize button image, a close button image, and a scroll bar image.
In accordance with the operation of the user interface part image included in the window image, a corresponding operation is performed on the target window.
The computer system according to claim 1.
前記ウィンドウ・イメージが透明または半透明である、請求項1記載のコンピュータ・システム。  The computer system of claim 1, wherein the window image is transparent or translucent. 前記ウィンドウ・イメージがポインタの近傍に表示される、請求項1記載のコンピュータ・システム。  The computer system of claim 1, wherein the window image is displayed in the vicinity of a pointer. 前記ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージはスクロールバー・イメージを含み、
前記スクロールバー・イメージを操作したときに遅延スクロールによりターゲット・ウィンドウがスクロールされる、
請求項1記載のコンピュータ・システム。
The user interface part image included in the window image includes a scroll bar image,
The target window is scrolled by delayed scrolling when the scroll bar image is operated;
The computer system according to claim 1.
前記ウィンドウ・イメージに含まれる所定のユーザ・インターフェイス部品イメージがドラッグ操作されたことに応じて、前記ターゲット・ウィンドウが移動する、請求項1記載のコンピュータ・システム。  The computer system according to claim 1, wherein the target window moves in response to a drag operation of a predetermined user interface component image included in the window image. 前記検出する手段は、前記ターゲット・ウィンドウのクライアント・エリアに存在するユーザ・インターフェイス部品を検出する手段を有し、
前記ウィ ンドウ・イメージは、前記クライアント・エリアに存在するユーザ・インターフェイス部品に対応するユーザ・インターフェイス部品イメージをクライアント・
エリア・イメージに含む、
請求項1記載のコンピュータ・システム。
The means for detecting comprises means for detecting a user interface component present in a client area of the target window;
The window image is a user interface component image corresponding to a user interface component existing in the client area.
Include in area image,
The computer system according to claim 1.
ウィンドウ・システムを備えたコンピュータ・システムにおいて、前記ウィンドウ・システムの操作対象であるターゲット・ウィンドウを操作するための方法であって、
前記ターゲット・ウィンドウに含まれるユーザ・インターフェイス部品を検出するステップと、
前記検出されたユーザ・インターフェイス部品の全部または一部に対応するユーザ・インターフェイス部品イメージを含むウィンドウ・イメージを生成するステップと、
前記ウィンドウ・システムにおいて、前記生成されたウィンドウ・イメージを表示するステップを含み、
前記ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージを操作することにより、前記ターゲット・ウィンドウの対応するユーザ・インターフェイス部品に対する操作がされる、
方法。
In a computer system comprising a window system, a method for operating a target window which is an operation target of the window system,
Detecting user interface components included in the target window;
Generating a window image including user interface component images corresponding to all or part of the detected user interface components;
Displaying the generated window image in the window system ;
By operating a user interface part image included in the window image , an operation is performed on a corresponding user interface part of the target window.
Method.
ウィンドウ・システムを備えたコンピュータ・システムにおいて、前記ウィンドウ・システムの操作対象であるターゲット・ウィンドウを操作をするためのコンピュータ・プログラムであって、前記コンピュータ・システムに、
前記ターゲット・ウィンドウに含まれるユーザ・インターフェイス部品を検出する手順と、
前記検出されたユーザ・インターフェイス部品の全部または一部に対応するユーザ・インターフェイス部品イメージを含むウィンドウ・イメージを生成する手順と、
前記ウィンドウ・システムにおいて、前記生成されたウィンドウ・イメージを表示する手順を実行させ、
前記ウィンドウ・イメージに含まれるユーザ・インターフェイス部品イメージを操作することにより、前記ターゲット・ウィンドウの対応するユーザ・インターフェイス部品に対する操作がされる、
コンピュータ・プログラム。
In a computer system having a window system, a computer program for operating a target window that is an object of operation of the window system, the computer system comprising:
Detecting user interface components included in the target window;
Generating a window image including user interface component images corresponding to all or part of the detected user interface components;
In the window system, a procedure for displaying the generated window image is executed.
By operating a user interface part image included in the window image , an operation is performed on a corresponding user interface part of the target window.
Computer program.
JP2001380274A 2001-12-13 2001-12-13 A computer system having a window system, a method for operating a window, and a computer program. Expired - Fee Related JP3943383B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001380274A JP3943383B2 (en) 2001-12-13 2001-12-13 A computer system having a window system, a method for operating a window, and a computer program.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001380274A JP3943383B2 (en) 2001-12-13 2001-12-13 A computer system having a window system, a method for operating a window, and a computer program.

Publications (2)

Publication Number Publication Date
JP2003195997A JP2003195997A (en) 2003-07-11
JP3943383B2 true JP3943383B2 (en) 2007-07-11

Family

ID=27591398

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001380274A Expired - Fee Related JP3943383B2 (en) 2001-12-13 2001-12-13 A computer system having a window system, a method for operating a window, and a computer program.

Country Status (1)

Country Link
JP (1) JP3943383B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7956849B2 (en) 2006-09-06 2011-06-07 Apple Inc. Video manager for portable multifunction device
US7864163B2 (en) * 2006-09-06 2011-01-04 Apple Inc. Portable electronic device, method, and graphical user interface for displaying structured electronic documents
US8842074B2 (en) 2006-09-06 2014-09-23 Apple Inc. Portable electronic device performing similar operations for different gestures

Also Published As

Publication number Publication date
JP2003195997A (en) 2003-07-11

Similar Documents

Publication Publication Date Title
JP3627241B2 (en) Multi-user / multi-pointing device graphical user interface system
US6720982B1 (en) Misoperation prevention method and apparatus, and storage medium for storing software product for preventing misoperation
US6714221B1 (en) Depicting and setting scroll amount
US7480863B2 (en) Dynamic and intelligent hover assistance
US8316312B2 (en) Method, display system, and computer software for controlling icon appearance
US7239305B1 (en) Information processing system and screen display method
JP3872322B2 (en) Input method, input system and program corresponding to touch panel
US20090027334A1 (en) Method for controlling a graphical user interface for touchscreen-enabled computer systems
US20060271878A1 (en) Information processing apparatus capable of displaying a plurality of windows
JP2012208962A (en) Arrangement of virtual input device onto touch screen type user interface
JP2010009534A (en) Electronic device and display method
JP2009211241A (en) Display screen setting program, information processing apparatus and display screen setting method
JP3454285B2 (en) Data processing device and data processing method
JPH1165769A (en) Touch panel display control method and recording medium for recording the same
US20060277491A1 (en) Information processing apparatus and display control method
US6181338B1 (en) Apparatus and method for managing windows in graphical user interface environment
US20050138575A1 (en) Information processing apparatus with display
JP2005092476A (en) Multi-user / multi-pointing device graphical user interface system
JP2003345483A (en) Information processing apparatus and window size control method used in the information processing apparatus
JP5487287B2 (en) Electronic device and display method
JP6195646B1 (en) Information processing apparatus, input method, and program
JP2007323346A (en) Information processing apparatus and display method
JP3943383B2 (en) A computer system having a window system, a method for operating a window, and a computer program.
KR20080064390A (en) Touch screen device
US20140380188A1 (en) Information processing apparatus

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060228

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060519

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060524

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070222

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070320

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070405

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110413

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees