JPH05233196A - ディスプレイ・スクリーン上に複数のウィンドウを能率的に表示するための方法及び装置 - Google Patents

ディスプレイ・スクリーン上に複数のウィンドウを能率的に表示するための方法及び装置

Info

Publication number
JPH05233196A
JPH05233196A JP4288571A JP28857192A JPH05233196A JP H05233196 A JPH05233196 A JP H05233196A JP 4288571 A JP4288571 A JP 4288571A JP 28857192 A JP28857192 A JP 28857192A JP H05233196 A JPH05233196 A JP H05233196A
Authority
JP
Japan
Prior art keywords
window
area
block
windows
time
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.)
Granted
Application number
JP4288571A
Other languages
English (en)
Other versions
JPH0772857B2 (ja
Inventor
Cary L Bates
ケアリ・リー・ベイツ
Jeffrey M Ryan
ジェフリ・マイケル・ライアン
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
Publication of JPH05233196A publication Critical patent/JPH05233196A/ja
Publication of JPH0772857B2 publication Critical patent/JPH0772857B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/328Computer systems status display
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Digital Computer Display Output (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】 (修正有) 【目的】 コンピュータのディスプレイ・スクリーン上
にウィンドウを区別的及び比例的に表示するための方法
及び装置を提供する。 【構成】 ディスプレイ・スクリーン17上に表示され
るウィンドウ21〜26のそれぞれが活動状態(「イン
・フォーカス状態」としても知られている)にある時間
の長さがモニタされる。ユーザからのコマンドを受け取
った時、より長い時間活動状態にあったウィンドウは、
より短い時間活動状態にあったウィンドウよりもより区
別的に表示される。すなわち、ウィンドウ21〜26
は、ウィンドウのそれぞれが活動状態にあった時間の長
さに比例するウィンドウ・サイズを持ってディスプレイ
・スクリーン17上に表示される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、データ処理分野に関
する。より詳細には、この発明は、コンピュータのディ
スプレイ・スクリーン上でのウィンドウの比例表示に関
する。
【0002】
【従来の技術】アップル・コンピュータ社により最初に
市販され、後にマイクロソフト社によりその「Windows
」プログラムに採用され、IBM社によりOS/2及
びPresentation Manager(プレゼンテーション・マネジ
ャ)に採用された「グラフィカル・ユーザ・インターフ
ェース」として知られているものを使用するコンピュー
タ・システムは、かなり最近の従来技術である。これら
のグラフィカル・ユーザ・インターフェース・システム
の一つの共通の特徴は、コンピュータのディスプレイ・
スクリーン上に多数のウィンドウまたは表示窓を同時に
存在させることができることである。コンピュータのデ
ィスプレイ・スクリーン上に表示されたウィンドウのそ
れぞれにおいて、異なるアプリケーション・プログラム
を同時に実行する(またはユーザからの入力を待つ)こ
とができる。また、単一のアプリケーション・プログラ
ムは多数の異なるウィンドウを生成することができる。
ユーザは、異なるウィンドウ間であちらこちらに移動を
行うためにマウスまたは他の入力装置を使用することが
でき、それによって多数の異なるタスクを実行する。
【0003】これらのグラフィカル・ユーザ・インター
フェース・システムは、DOS(一度に一つのアプリケ
ーション・プログラムだけを実行及び表示することがで
きる)のようなより一般的なオペレーティング・システ
ムを越える多くの利点を提供するが、この付加的な機能
はユーザに対して新たな問題を発生させた。グラフィカ
ル・ユーザ・インターフェース・システムは、コンピュ
ータのスクリーン上にほぼ無制限の数のウィンドウを表
示する能力を提供するが、これはこれらのほぼ無制限の
数のウィンドウを、ユーザがそれらを見ることができる
ようにコンピュータのスクリーン上に表示することがで
きることを意味しない。事実、これらのウィンドウの大
多数が他のウィンドウによって部分的または完全に覆わ
れてしまうことが十分にありうる。この問題は二つのウ
ィンドウの場合に起こりうるが、これよりも多数のウィ
ンドウが使用される時にはより顕著となる。
【0004】ウィンドウのいくつかが部分的または完全
に覆われた時には、ユーザは非常に多くの努力をするこ
となくそれらの多くを見つけることができないため、ユ
ーザが種々のウィンドウ間であちらこちらにうまく移動
を行うことは非常に難しくなる。グラフィカル・ユーザ
・インターフェース・システムにおけるこの制限は、実
際に同時に使用し、表示し、またはウィンドウによって
同時に表示することができる異なるタスクまたはアプリ
ケーション・プログラムの数を厳しく制限することによ
ってそのようなシステムを得るという本当の目的をだい
なしにしてしまいがちである。
【0005】
【発明が解決しようとする課題】この発明の主要な目的
は、グラフィカル・ユーザ・インターフェース・システ
ムの性能を高めることにある。
【0006】この発明の他の目的は、ユーザが部分的ま
たは完全に覆われたウィンドウを見つけるためのより能
率的な方法を提供することにある。
【0007】この発明の他の目的は、ユーザが部分的ま
たは完全に覆われたウィンドウを見つけるのを助けるた
めにコンピュータのディスプレイ・スクリーン上にウィ
ンドウを区別的に表示することにある。
【0008】この発明の他の目的は、ユーザが部分的ま
たは完全に覆われたウィンドウを見つけるのを助けるた
めにコンピュータのディスプレイ・スクリーン上にウィ
ンドウを比例的に表示することにある。
【0009】上記及び他の目的は、ここに開示される、
コンピュータのディスプレイ・スクリーン上にウィンド
ウを比例的に表示するための方法及び装置によって達成
される。
【0010】
【課題を解決するための手段】コンピュータのディスプ
レイ・スクリーン上にウィンドウを区別的及び比例的に
表示するための方法及び装置が開示される。ディスプレ
イ・スクリーンに表示されるウィンドウのそれぞれが活
動状態(「イン・フォーカス状態」としても知られてい
る)にある時間の長さがモニタされる。ユーザからのコ
マンドを受け取った時、より長い時間活動状態にあった
ウィンドウは、より短い時間活動状態にあったウィンド
ウよりもより区別的に表示される。すなわち、ウィンド
ウは、ウィンドウのそれぞれが活動状態にあった時間の
長さに比例するウィンドウ・サイズを有してディスプレ
イ・スクリーン上に表示される。例えば、40%の時間
活動状態にあったウィンドウは、指定されたウィンドウ
・タイル表示領域の40%のサイズを有するであろう。
最小ウィンドウ・タイル表示しきい値を越えるに十分に
長い時間活動状態になかったウィンドウは、指定された
ウィンドウ・タイル表示領域の外側または下側にアイコ
ンとして表示され、ウィンドウの活動のパーセントの計
算には含まれない。
【0011】ウィンドウのリストは活動の降順1−Nに
分類される。ここで、N=ウィンドウの数、である。ウ
ィンドウ・タイル表示領域はまず、二つの領域、すなわ
ちH1領域とH2領域とに分割される。もしウィンドウ
・タイル表示領域の幅がその高さ以上であれば、この分
割は垂直方向に行われ、そうでなければ水平方向に行わ
れる。この分割は、第1から第Nのウィンドウが活動状
態にあった時間の長さに対する第1及び第2のウィンド
ウが活動状態にあった時間の長さにH1領域が比例する
ように行われ、それによって第1から第Nのウィンドウ
が活動状態にあった時間の長さに対する第3から第Nの
ウィンドウが活動状態にあった時間の長さにH2領域が
比例するようにする。
【0012】この分割が行われた後、H1領域はQ1領
域とQ2領域とに分割される。もしH1領域の幅がその
高さ以上であれば、この分割は垂直方向に行われ、そう
でなければ水平方向に行われる。この分割は、第1及び
第2のウィンドウが活動状態にあった時間の長さに対す
る第1のウィンドウが活動状態にあった時間の長さにQ
1領域が比例するように行われる。
【0013】この分割が行われた後、H2領域はQ3領
域とQ4領域とに分割される。以前と同様に、もしH2
領域の幅がその高さ以上であれば、この分割は垂直方向
に行われ、そうでなければ水平方向に行われる。この分
割は、第3から第Nのウィンドウが活動状態にあった時
間の長さに対する第3のウィンドウが活動状態にあった
時間の長さにQ3領域が比例するように行われる。
【0014】第1、第2及び第3の最も高い活動状態に
あるウィンドウは、それぞれQ1、Q2及びQ3領域に
表示される。もし四つのウィンドウしかなければ、第4
のウィンドウはQ4領域に表示される。もし四つよりも
多くのウィンドウがあれば、Q4領域は、必要に応じ
て、ウィンドウ・タイル表示領域、H1領域及びH2領
域が分割されたのと同一の方法で再帰的に分割される。
この分割は、最小ウィンドウ・タイル表示しきい値を越
えるに十分に長い時間活動状態にあったそれぞれのウィ
ンドウを表示するための領域ができるまで再帰的に継続
される。
【0015】
【実施例】図1はこの発明のコンピュータ・システムの
ブロック図を示す。コンピュータ・システム10は、そ
れぞれシステム・ユニット11に接続されたディスプレ
イ17、キーボード18及び入力装置19を有する。シ
ステム・ユニット11は、メモリ13、記憶装置14及
びディスプレイ・アダプタ15に接続された処理装置1
2を含む。処理装置12は、図16〜図28のフロー・
チャートにおいてより詳細に述べられるように、この発
明を実施するために適当にプログラムされている。記憶
装置14及びメモリ13は、制御データ30及びウィン
ドウ・データ40を含む。
【0016】好ましい実施例において、コンピュータ・
システム10はIBM社のPS/2であり、ここでは処
理装置12はインテル社の80386マイクロプロセッ
サである。ディスプレイ・アダプタ15はIBM社の8
513ディスプレイ・アダプタであり、ディスプレイ1
7はIBM社の8513ディスプレイである。入力装置
19は好ましくはIBM社のマウスであるが、トラック
・ボール、ライト・ペンまたは他の入力装置であっても
よい。記憶装置14はオペレーティング・システム・ソ
フトウェアを含み、これはWordPerfect for Presentati
on Managerのような好ましくは一つまたはそれ以上のO
S/2アプリケーション・プログラムまたはマイクロソ
フト社のWord for WindowsのようなオプショナルのDO
Sアプリケーション・プログラムはもちろん、好ましく
はPresentation Managerを有するがマイクロソフト社の
Windows 3.0はオプショナルであるOS/2であって
よい。実行時には、これらのプログラムは部分的または
完全にメモリ13内に導入され、処理装置12により実
行される。
【0017】コンピュータ・システム10は、アップル
・コンピュータ社のマッキントッシュのような他のマイ
クロコンピュータ、IBM社のAS/400のようなミ
ニコンピュータまたはIBM社の390のようなメイン
・フレーム・コンピュータなどの他のタイプのコンピュ
ータ・システムであってもよく、いずれもこの発明の思
想及び範囲に含まれる。さらに、コンピュータ・システ
ム10は、IBM社のAS/400のようなより大型の
コンピュータ・システムに接続された上述のようなマイ
クロコンピュータとすることもできる。
【0018】ディスプレイ17はウィンドウ21〜26
を含む。この発明の目的のために、「ウィンドウ」また
は表示窓はディスプレイ・スクリーンのほぼ全体からデ
ィスプレイ・スクリーンの非常に小さな部分までのどこ
をも占めることができ、OS/2のようなマルチタスキ
ング環境やDOSのような単一タスキング環境における
他のウィンドウとともに表示することができる。ウィン
ドウの数が増加するにつれて、図1のディスプレイ17
に示されているように、多くのウィンドウが他のウィン
ドウによって部分的または完全に覆われるようになる。
【0019】図2は図1のディスプレイ17上のウィン
ドウ21〜26をより詳細に示す。図2は、ユーザがそ
のコンピュータ上で数分間または数時間タスクを実行し
た後に典型的なディスプレイ・スクリーンがどのように
見えるかの例である。すなわち、我々のユーザが、年間
納税計画のある目的を実行するためにそのコンピュータ
を使用している。6個のウィンドウが示されているが、
ディスプレイ・スクリーン上には、1個から数十個のウ
ィンドウを表示することができる。なお、ウィンドウ2
5は残りのウィンドウよりもより暗い境界線を有し、他
のウィンドウのいずれも重なっていない。これは、ウィ
ンドウ25が活動状態のウィンドウであるか、または、
「イン・フォーカス状態」にあると考えられるかをユー
ザに示す。ウィンドウが「イン・フォーカス状態」にあ
る時には、ユーザは、そのウィンドウに含まれているデ
ータを入力し、または操作することができる。
【0020】ウィンドウ21、22、23、24及び2
6は、他のウィンドウによって少なくとも部分的に覆わ
れている。ウィンドウ22は完全に覆われている。ウィ
ンドウ24及び26はほとんど完全に覆われているが、
もしこれらのウィンドウに含まれているデータのいずれ
かがユーザに表示されるならばほとんど覆われない。
【0021】我々の架空のユーザである納税者タミー
(Tammy)は、クリスマスの直前の土曜日の早朝に(彼女
は8月にクリスマスの買物を済ませていた)、年間納税
計画の彼女の目的の実行を開始した。タミーは、彼女の
納税計画を手助けするために数個のアプリケーション・
プログラムを同時に使用する。タミーはExcel 及びLotu
s 上にスプレッドシート・データを有し、WordPerfect
上でIRS宛の手紙と彼女の会計係宛のメモとを書いて
おり、Quicken 上に彼女の財務情報を有し、TurboTax上
に彼女の税金データを入力する。彼女はまた、File Man
ager(ファイル・マネジャ)として知られているOS/
2アプリケーション・プログラムを使用しており、これ
はタミーがOS/2上でディレクトリ及びファイルの他
の特徴を管理するのを助ける。
【0022】タミーはウィンドウからウィンドウへとぐ
るりとジャンプを行い−彼女がPresentation Managerに
関して特に好きな特徴−ウィンドウ25のデータの操作
に最も最近時間を費やした(すなわち、Lotus 1−2−
3上でスプレッドシートを使用して)。しかし今、タミ
ーは朝の多くの時間を使用したプログラム、すなわちQu
icken に戻りたい。タミーはディスプレイを手早くスキ
ャンするが、Quickenを含むウィンドウがどこにあるか
は簡単にはわからないことを発見するだけである。彼女
は、ウィンドウ21、23及び25を、これらのウィン
ドウがQuickenを含んでいないことを知るために、十分
に見ることができる。しかし、Quickenは、部分的に覆
われたウィンドウ24または26や完全に覆われたウィ
ンドウ22の中にあることがある。タミーは試行錯誤で
それぞれのウィンドウの中を見るが(覆われたウィンド
ウ上にマウス・ポインタを移動し、マウスのボタンをダ
ブル・クリックしてウィンドウを活動状態にする)、こ
の技術は非常に煩わしく、スクリーン上に多数のウィン
ドウがある時や一つ以上のウィンドウが完全に覆われて
いる時には使用されない。
【0023】タミーにとって幸運なことに、彼女のコン
ピュータ・システムはこの発明のコンピュータ・システ
ム10である。このため、彼女は、彼女のウィンドウ
を、それらが活動状態または「イン・フォーカス状態」
にあった時間の長さに比例するサイズに表示されるよう
に迅速にサイズ変更する能力を有する。後により詳細に
述べられるように、図16〜図28のフロー・チャート
を実行するように適当にプログラムされた、コンピュー
タ・システム10の処理装置12は、ディスプレイ・ス
クリーンに表示されたウィンドウのそれぞれが活動状態
または「イン・フォーカス状態」にある時間の長さをモ
ニタする。タミーがディスプレイ・ウィンドウ・タイル
表示モードを選択した時には、より長い時間活動状態に
あったウィンドウは、より短い時間活動状態にあったウ
ィンドウよりもより区別的に表示される。活動状態のウ
ィンドウがより区別的に表示される実際の方法は、ディ
スプレイ・ウィンドウ・タイル表示モードに対してタミ
ーが選択するパラメータに依存する。
【0024】もしタミーがディスプレイ・ウィンドウ・
タイル表示モードの比例した最適化パラメータを得るこ
とができれば、彼女はこの発明の好ましい実施例を使用
しており、ディスプレイ・スクリーン17は図8に示す
ように見える。コンピュータ・システム10は、彼女が
今日コンピュータの使用を開始して以来タミーの活動を
モニタしてきており、彼女が40%の時間をTurbotax
に、35%の時間をQuicken に、10%の時間をExcel
に、7%の時間をWordPerfect に、5%の時間をLotus
1−2−3に、3%の時間をFile Managerに使用したこ
とを知っている。コンピュータ・システム10は、図4
〜図7に示されているように、指定されたウィンドウ・
タイル表示領域を、ウィンドウのそれぞれが活動状態に
あった時間の長さに比例する複数の領域に分割する。最
適化パラメータが得られたので、それぞれのセグメント
は、もしそのセグメントの幅がその高さ以上であれば垂
直方向に分割され、そうでなければ水平方向に分割され
る。File Managerは、5%の指定された最小しきい値ウ
ィンドウ・サイズを越えなかったので、ウィンドウとし
て示されていない。従って、File Managerは、ウィンド
ウ・タイル表示領域の外側にアイコンとして表示され
る。他のウィンドウの比例する領域のサイズを決定する
時には、File Managerが活動状態にあった時間は無視さ
れる。
【0025】もしタミーが比例するパラメータを得るこ
とができたが、最適化パラメータは得ることができなか
ったならば、彼女はこの発明の第1の他の実施例を使用
しており、ディスプレイ・スクリーン17は図9に示さ
れるように見える。以前のように、コンピュータ・シス
テム10は、指定されたウィンドウ・タイル表示領域
を、ウィンドウのそれぞれが活動状態にあった時間の長
さに比例する複数の領域に分割する。最適化パラメータ
が得られなかったので、ウィンドウ・タイル表示領域が
必要とされる数の領域に分割されるまで、第1のセグメ
ントが垂直方向に分割され、その次の「子」領域が水平
方向に分割され、次に垂直方向に分割される、等々され
る。以前のように、File Managerはウィンドウ・タイル
表示領域の外側にアイコンとして表示される。
【0026】もしタミーが比例するパラメータを得るこ
とができなかったが、最適化パラメータは得ることがで
きたならば、彼女はこの発明の第2の他の実施例を使用
しており、ディスプレイ・スクリーン17は図10に示
されるように見える。以前と違って、コンピュータ・シ
ステム10は、指定されたウィンドウ・タイル表示領域
を四つの等しい領域に分割する。最適化パラメータが得
られたので、それぞれのセグメントは、もしそのセグメ
ントの幅がその高さ以上であれば、垂直方向に分割さ
れ、そうでないならば水平方向に分割される。以前のよ
うに、File Managerはウィンドウ・タイル表示領域の外
側にアイコンとして表示される。
【0027】もしタミーが比例するパラメータを得るこ
とができず、最適化パラメータも得ることができなかっ
たならば、彼女はこの発明の第3の他の実施例を使用し
ており、ディスプレイ・スクリーン17は図11に示さ
れるように見える。コンピュータ・システム10は、指
定されたタイル表示領域を四つの等しい領域に分割す
る。最適化パラメータが得られなかったので、ウィンド
ウ・タイル表示領域が必要とされる数の領域に分割され
るまで、第1のセグメントは垂直方向に分割され、第2
のセグメントは水平方向に分割される、等々される。以
前のように、FileManagerはウィンドウ・タイル表示領
域の外側にアイコンとして表示される。
【0028】英語圏の文化では、図8〜図11に示され
ているように左から右にウィンドウを構成することが所
望の区別性の順序でウィンドウを構成する最適な方法で
あると考えるが、比例するサイズであろうとなかろう
と、他の文化では右から左へのアプローチを好むかも知
れない。後にわかるように、この発明は、これらの文化
の違いに適合するために多少変更することができる。
【0029】図12は図1の制御データ30をより詳細
に示す。好ましい実施例においては、後述のように、制
御データ30は記憶装置14に記憶され、メモリ13に
読み取られる。制御データ30は、この発明のウィンド
ウ・タイミング機能を実行するために、図16〜図28
のフロー・チャートによって使用され、更新される情報
を含む。
【0030】オン/オフ・フラグ31は、この発明のウ
ィンドウ・タイミング機能がオンであるかオフであるか
の情報を絶えず得る。タイマ32は現在のシステム・タ
イマの値の情報を絶えず得る。好ましい実施例において
は、タイマ32は、タイマがスタートまたはリセットさ
れてから経過した時間間隔の数(サンプリング・レート
33によって決定される)を表す9桁の値である。中断
フラグ34は、後により詳細に述べられるように、ウィ
ンドウ・タイミング機能が中断されたか否かの情報を絶
えず得る。最後のイベント・フラグ36は、ユーザの活
動をモニタするために使用される。このデータは、ウィ
ンドウが長い時間イン・フォーカス状態にあるが、ユー
ザから生じる活動はない状態(すなわち、コーヒー・ブ
レイクなど)を検査し、指定された非活動タイム・アウ
ト期間が経過した時にウィンドウ・タイミング機能を自
動的に中断するために使用される。非活動タイム・アウ
ト・フラグ37は、指定された非活動タイム・アウト期
間を含む。保管フラグ38は、ユーザがウィンドウ・デ
ータ40を保存したいか否かの情報を絶えず得る。
【0031】タイル表示領域51は、ウィンドウ・タイ
ル表示操作のために保管されたスクリーンの領域を示
す。最初の二つの数はタイル表示領域の上部左の角のx
及びy座標を示す。ここで、ディスプレイ・スクリーン
の下部左の角は、図3に示されるように(0、0)であ
る。もちろん、下部左の角以外の他の原点を選択するこ
ともできる。最後の二つの数は、タイル表示領域の下部
右の角のx及びy座標を示す。好ましい実施例において
は、これらの座標は文字の代わりにミリメートルで測ら
れ、従ってディスプレイの高さと幅との間の適切なアス
ペクト比を保つことができる。画素のような他の測定単
位を使用することもできる。好ましい実施例において
は、ディスプレイ17は、幅が約200mm、高さが約
155mmの表示領域を有するIBM社の8513ディ
スプレイである。従って、この表示領域の上部左の角の
x及びy座標は(0、155)であり、下部右の角のx
及びy座標は(200、0)である。図3に示されてい
る我々の例のスクリーンにおいては、タイル表示領域6
2は、座標が(0、140)の上部左の角63と座標が
(200、0)の下部右の角64とを有するものとして
示されている。従って、制御データ30のタイル表示領
域51は、0、140、200、0を含む。非タイル表
示領域61は、アイコン及び他の非タイル表示の使用の
ために、ディスプレイ・スクリーン上に保管される。
【0032】領域52は比例タイル表示がオンであるか
オフであるかの指標を含む。もし領域52がオンであれ
ば、この発明は、ウィンドウが活動状態にあった時間の
長さに基づいてタイル表示領域を比例的に分割する。も
し領域52がオフであれば、この発明は、タイル表示領
域を四つの等しい象限に分割し、次に第4の象限を、最
小タイル表示のパーセントを越えるそれぞれのウィンド
ウに対して一つの領域ができるまで再帰的に分割する。
好ましい実施例においては、この領域はオンである。
【0033】領域53は最適化がオンであるかオフであ
るかの指標を含む。もし領域53がオンであれば、この
発明は、もしセグメントの幅がその高さ以上であればセ
グメントを垂直方向に分割し、もしセグメントの幅がそ
の高さよりも小さければセグメントを水平方向に分割す
る。もし領域53がオフであれば、この発明は、セグメ
ントの垂直方向の分割と水平方向の分割とを逆にする。
好ましい実施例においては、この領域はオンである。
【0034】領域54は最小タイル表示パーセントの指
標を含む。最小タイル表示パーセントよりも少ない時間
活動状態にあったウィンドウは、ウィンドウの代わりに
アイコンとして表示される。これは、ウィンドウが小さ
くなり過ぎて読み取り不能となったり使用不能となった
りしないように行われる。例えば、もしウィンドウが1
000の時間間隔のうちの30の時間間隔の間(または
3%の時間)活動状態にあったとすると、このウィンド
ウは、もし5%の最小タイル表示パーセントが領域54
で指定されれば、アイコンとして表示される。なお、ア
イコンは、スクリーン上の他の得られるスペースの中
か、もし得られるスペースがなければウィンドウ・タイ
ル表示領域の下側に、ウィンドウ・タイル表示領域の外
側に表示される。
【0035】図13は図1のウィンドウ・データ40を
より詳細に示す。好ましい実施例においては、後述のよ
うに、ウィンドウ・データ40はユーザの選択によって
記憶装置14に記憶され、メモリ13に読み取られる。
ウィンドウ・データ40は、この発明のウィンドウ・タ
イミング機能及びウィンドウ・タイル表示機能を実行す
るために、図16〜図28のフロー・チャートよって使
用され、更新される情報を含む。ウィンドウ・データ4
0はカラム41〜44に配置される。この発明のウィン
ドウ・タイミング機能がオンであった時にある時点で活
動状態にあったそれぞれのオープン・ウィンドウは、メ
モリ13内のウィンドウ・データ40に含まれる。カラ
ム41はこれらのウィンドウの名称または他の識別子を
含む。カラム42はウィンドウのそれぞれがイン・フォ
ーカス状態とされた最後の時のタイマ32の値を含む。
カラム43は、ウィンドウ・データ40の中のウィンド
ウのそれぞれがイン・フォーカス状態にあった時間間隔
の総数を含む。カラム44は、図23〜図27のフロー
・チャートによって決定されるように、表示すべきウィ
ンドウの上部左及び下部右の角のx及びy座標を含む。
【0036】図14は、活動の降順に分類された後のウ
ィンドウ・データ40を示す。
【0037】図15はウィンドウ・タイミング機能パラ
メータを示す。これらのパラメータには通常はデフォル
ト値が割り当てられるが、可能な変更に対する要求の際
にユーザに表示することができる。第1のパラメータ
は、ウィンドウ・タイミング機能がオンであるかオフで
あるかについて質問する。ウィンドウがより一般的な方
法で動作することをユーザが好む時がある。次のパラメ
ータはサンプリング・レートである。これは、ユーザが
ウィンドウ・タイミング機能の細分性のレベルを制御す
ることを可能とする。次のパラメータは非活動タイム・
アウト期間を指定する。次のパラメータは、ユーザがウ
ィンドウ・タイミングを中断したいかどうかについて質
問する。このパラメータは、図15に示されているスク
リーンによって選択することができ、あるいは、このパ
ラメータをオンまたはオフに切り替えるために特殊なキ
ー配列とすることもできる。このパラメータは、浴室で
の休息または他の中断の影響を最小にするのに非常に役
に立つ。次のパラメータは、この計算セッションの間に
生成されたウィンドウ・データ40を次の計算セッショ
ンのために保管すべきか否かについて質問する。もしそ
うであれば、ウィンドウ・データ40は、ウィンドウが
クローズされる時に、メモリ13から記憶装置14に書
き込まれる。次のパラメータは、ウィンドウ・タイミン
グをリセットすべきか否かについて質問する。特にもし
ユーザが現在、以前に実行されたものと完全に無関係の
タスクを実行しているならば、計算セッションの中間で
開始するのか望ましい。もしユーザがウィンドウ・タイ
ミングをリセットすべきであることを指定すれば、全て
のウィンドウは、あたかもそれらがこのセッションの間
活動状態になかったかのように新たに開始する。
【0038】次のパラメータは、所望のタイル表示領域
の上部左及び下部右の角のx及びy座標をユーザに促
す。次のパラメータは、比例タイル表示がオンであるべ
きかオフであるべきかについて質問する。次のパラメー
タは、最適化がオンであるべきかオフであるべきかにつ
いて質問する。最後のパラメータは、ユーザが最小タイ
ル表示パーセントを指定することを可能とする。
【0039】次に、図16〜図28のフロー・チャート
に示されているこの発明の動作をより詳細に説明する。
図16〜図20を参照すると、ブロック101は制御デ
ータ30を記憶装置14からメモリ13にロードする。
ブロック102はタイマ32と制御データ30における
最後のイベント・フラグ36とを初期化する。ブロック
103はタイマ32をスタートさせる。これは、図22
のフロー・チャートの実行を初期化することによって行
われる。図22を参照すると、ブロック201は、図1
6のブロック198からタイマを停止するための何らか
の指標を受け取ったか否かについて質問する。もし受け
取ったならば、プログラムはブロック299で終了す
る。もし受け取っていないならば、ブロック202は制
御データ30におけるサンプリング・レート33が経過
するのを待つ。ブロック205は、制御データ30にお
ける中断フラグ34がFALSEであるか否かを見るた
めに検査を行う。もしこのフラグがFALSEでなけれ
ば(好ましい実施例においてはTRUEまたはTRUE
2)、これはウィンドウ・タイミングを中断すべきであ
ることの指標である。後により詳細に述べられるよう
に、もし彼女がサンプリングを中断したいことをユーザ
が示したならば、あるいは、非活動タイム・アウト期間
が終了したならば、この条件は存在しうる。もしこの条
件が存在しないならば、制御のフローはループをブロッ
ク201に戻る。もしブロック205が中断がFALS
Eであることを示せば、ブロック208は、一つ以上の
タイマ期間が経過したことを示すために、制御データ3
0におけるタイマ32を1だけ増加させる。
【0040】再び図16を参照すると、ブロック103
がタイマをスタートさせた後、ブロック110は処理す
べきウィンドウ・イベントがあるか否かを見るために検
査を行う。好ましい実施例においては、「ウィンドウ・
イベント」は、この発明によって生成されるイベントと
ともに、ウィンドウにデータを入力したり、テキスト・
カーソルまたはマウス・カーソルを移動したり、スクロ
ール・バー上にクリックしたりするなどのような、Pres
entation Managerによって生成された任意のイベントで
ある。もしブロック110が否定的に答えられるなら
ば、ブロック112は全てのウィンドウがクローズされ
たか否かを見るために検査を行う。もしそうであれば、
ブロック198はタイマ32を停止し、もし保管フラグ
38がオンであるならば、記憶装置14に制御データ3
0を書き込む。プログラムはその後、ブロック199で
終了する。もしブロック112が全てのウィンドウがク
ローズされなかったことを示すならば、ブロック115
は、制御データ30における非活動タイム・アウト37
が経過したか否かを見るために検査を行う。これは、タ
イマ32から最後のイベント36を減じ、その結果にサ
ンプリング・レート33を乗じ、60で除すことによっ
て行われる。もしこの結果が非活動タイム・アウト期間
37における値よりも大きければ、ブロック115は肯
定的に答えられ、ブロック118は中断ウィンドウ・イ
ベントを自動的に生成する。いずれにしても、制御のフ
ローはブロック110に戻る。
【0041】処理すべきウィンドウ・イベントがあるこ
とをブロック110が示す時、ブロック104はこれが
オープン・ウィンドウ・イベントであるか否かを見るた
めに検査を行う。もしそうであれば、ブロック105
は、同一の名前を持つウィンドウがメモリ13内にすで
にあるか否かを見るために検査を行う。もしそうであれ
ば、このウィンドウはブロック106において新たな名
前(すなわち、TurboTax2)を与えられる。いずれにし
ても、もし何らかのそのようなデータが前のセッション
から保管され、及び、もし保管フラグ38がオンであれ
ば、ブロック107は記憶装置14からのレコードにお
けるこのウィンドウをメモリ13にロードする。その
後、ブロック108において通常のウィンドウ処理が実
行される。
【0042】ブロック121はこれがクローズ・ウィン
ドウ・イベントであったか否かを見るために検査を行
う。もしそうであれば、メモリ13におけるウィンドウ
・データ40からウィンドウを、ユーザがウィンドウ・
ディスプレイ・モードを選択した時にそれが再び現れな
いようにするために取り除くのが適当である。この機能
はブロック122によって実行される。ブロック122
はまた、もし保管フラグ38がオンであれば、このウィ
ンドウ・レコードを記憶装置14に書き込む。ブロック
123は次に、このイベントに対する通常のウィンドウ
処理を実行する。
【0043】もしブロック121が否定的に答えられれ
ば、ブロック120はこのイベントがゲット・フォーカ
ス・イベントであるか否かについて質問する。好ましい
実施例においては、「ゲット・フォーカス」イベント
は、ウィンドウが活動状態にされ、あるいは「イン・フ
ォーカス状態」にされる時にはいつでも、Presentation
Managerによって生成される。もしブロック120が肯
定的に答えられれば、ブロック125はフォーカスが合
うウィンドウを登録する。この登録は、図21のフロー
・チャートを活性化させることによって行われる。
【0044】図21を参照すると、ブロック301はウ
ィンドウ・データ30におけるオン/オフ・フラグ31
がオンであるか否かを見るために検査を行う。もしオン
でなければ、プログラムはブロック399で直ちに終了
する。もしこのフラグがオンであれば、ブロック303
は現在の時刻を制御データ30におけるタイマ32から
得る。ブロック304は、イン・フォーカス状態にすべ
きウィンドウがウィンドウ・データ40に存在するか否
かを見るために検査を行う。もし存在しなければ、ブロ
ック306はウィンドウ・データ40におけるこのウィ
ンドウに対する新たなレコードを生成する。イン・フォ
ーカス・カラム42、全カラム43及び領域カラム44
にはゼロが配置される。もしブロック304が否定的に
答えられれば、ブロック308は、ウィンドウ・データ
40においてイン・フォーカス状態とすべきこのウィン
ドウに関連するウィンドウ・レコードを使用する。
【0045】ブロック310は、これが「ゲット・フォ
ーカス」ウィンドウ・イベントであるか「ルーズ・フォ
ーカス」ウィンドウ・イベントであるかについて質問す
る。我々のイベントは「ゲット・フォーカス」イベント
であるから、ブロック315は制御データ30からのタ
イマ32の現在の値をこのウィンドウに対するイン・フ
ォーカス・カラム42に入れ、プログラムはブロック3
99で終了する。
【0046】図16及び図17を参照すると、ブロック
125が図21のフロー・チャートを活性化することに
よってフォーカスが合うウィンドウを登録し、ブロック
126はこのイベントに対する通常のウィンドウ処理を
実行する。好ましい実施例においては、Presentation M
anagerが選択されたウィンドウをイン・フォーカス状態
にする。
【0047】もしブロック120が否定的に答えられれ
ば、ブロック130はこれがルーズ・フォーカス・ウィ
ンドウ・イベントであるか否かについて質問する。好ま
しい実施例においては、「ルーズ・フォーカス」イベン
トは、他のウィンドウがイン・フォーカス状態とされて
いるためにウィンドウがもはや活動状態にない時にはい
つでも、Presentation Managerによって生成される。も
しブロック130が肯定的に答えられれば、ブロック1
35はフォーカスを失ったウィンドウを登録する。すで
に述べたように、この登録は、ブロック310(図2
1)がこれがルーズ・フォーカス・イベントであること
を決定し、ブロック315の代わりにブロック320が
実行されることを除いて、図21のフロー・チャートを
再び活性化することによって行われる。ブロック320
は、どれ位の間それが活動状態にあったかを示すため
に、このウィンドウに対するウィンドウ・データ40の
全カラム43における値を更新する。このウィンドウに
対するイン・フォーカス・カラム42に含まれる値が、
制御データ30におけるタイマ32の現在の値から減じ
られる。この結果は、このウィンドウに対する全カラム
43における現在の値に加えられ、その和がこのウィン
ドウに対する全カラム43に置かれる。
【0048】再び図16及び図17を参照すると、ブロ
ック135が図21のフロー・チャートを活性化するこ
とによってフォーカスを失ったウィンドウを登録した
後、ブロック136はこのイベントに対する通常のウィ
ンドウ処理を実行する。好ましい実施例においては、Pr
esentation Managerは選択を解除されたウィンドウから
フォーカスを外す。
【0049】もしブロック130が否定的に答えられれ
ば、ブロック150(図18及び図19)は中断ウィン
ドウ・イベントが生成されたか否かを見るために検査を
行う。図16及び図17のブロック118(タイム・ア
ウト期間が終了)によって、あるいはもしユーザが図1
5における彼女のメニューにおいてタイミングを中断さ
せなければならないことを示したならば、このイベント
は生成することができる。もしイベントがユーザによっ
て生成されたならば、ブロック151は制御データ30
における中断フラグ34をTRUEに設定する。もしイ
ベントがブロック118によって生成されたならば、ブ
ロック151は制御データ30における中断フラグ34
をTRUE2に設定する。いずれにしても、この結果、
図22のフロー・チャートを独立に実行するブロック2
05は否定的に答えられ、それによってブロック208
が飛ばされる。
【0050】再び図18及び図19を参照すると、もし
ブロック150が否定的に答えられれば、ブロック15
5は再開ウィンドウ・イベントが生成されたか否かを見
るために検査を行う。図28のブロック1050(タイ
ム・アウト期間は終了したが、ユーザは今ユーザの活動
によって生じたウィンドウ・イベントを実行した)によ
って、あるいはもしユーザが図15における彼女のメニ
ューにおいてタイミングを中断しなければならないこと
を示したならば、このイベントは生成することができ
る。いずれにしても、ブロック156は制御データ30
における中断フラグ34をFALSEに設定する。この
結果、図22のフロー・チャートを独立に実行するブロ
ック205が肯定的に答えられ、それによってブロック
208が実行される。
【0051】再び図18及び図19を参照すると、もし
ブロック155が否定的に答えられれば、ブロック16
0はリセット・ウィンドウ・イベントが生成されたか否
かを見るために検査を行う。もしユーザが図15におけ
る彼女のメニューにおいてタイミングをリセットしなけ
ればならないことを示したならば、このイベントは生成
される。ブロック161はウィンドウ・データ40にお
ける全てのウィンドウを通ってループをつくり、ブロッ
ク162はイン・フォーカス・カラム42、全カラム4
3及び領域カラム44の全ての値をゼロに設定する。処
理すべきウィンドウ・データ40にウィンドウ・レコー
ドがもうない時には、ブロック161は否定的に答えら
れ、制御のフローはブロック163に移る。
【0052】ブロック163は保管ウィンドウ・イベン
トが生成されたか否かを見るために検査を行う。もし図
15における彼女のメニューにおいて保管パラメータの
値を変更したならば、このイベントは生成される。もし
変更が行われれば、ブロック164は制御データ30に
おける保管フラグ38を、ユーザによって指定されるよ
うにオンまたはオフに設定する。
【0053】ブロック165は、ウィンドウ・タイミン
グ・ターン・オフ・イベントが生成されたか否かを見る
ために検査を行う。もしユーザが図15における彼女の
メニューにおいてウィンドウ・タイミングを停止しなけ
ればならないことを示したならば、このイベントは生成
される。もしそうであれば、ブロック166は制御デー
タ30におけるオン/オフ・フラグ31をオフに設定す
る。ブロック168は、ウィンドウ・データ40におけ
る全てのウィンドウを通ってループをつくり、ブロック
169はイン・フォーカス・カラム42及び全カラム4
3の全ての値をゼロに設定する。処理すべきウィンドウ
・データ40にウィンドウ・レコードがもうない時に
は、ブロック168は否定的に答えられ、制御のフロー
はブロック170に移る。
【0054】ブロック170は、ウィンドウ・タイミン
グ・ターン・オン・イベントが生成されたか否かを見る
ために検査を行う。もしユーザが図15における彼女の
メニューにおいてウィンドウ・タイミングをオンしなけ
ればならないことを示したならば、このイベントは生成
される。もしそうであれば、ブロック171は制御デー
タ30におけるオン/オフ・フラグ31をオンに設定す
る。いずれにしても、制御のフローはブロック175に
移る。
【0055】ブロック175は、サンプリング・レート
設定ウィンドウ・イベントが生成されたか否かを見るた
めに検査を行う。もしユーザが図15における彼女のメ
ニューにおいてサンプリング・レートに対する値をうめ
たならば、このイベントは生成される。もしそうであれ
ば、ブロック176は制御データ30におけるサンプリ
ング・レート領域33をユーザによって設定された値に
設定する。
【0056】ブロック177は、タイル表示領域定義ウ
ィンドウ・イベントが生成されたか否かを見るために検
査を行う。もしユーザが図15における彼女のメニュー
においてタイル表示領域の上部左及び下部右の角のx及
びy座標をうめたならば、このイベントは生成される。
もしそうであれば、ブロック178は制御データ30の
領域51に対するタイル表示領域の座標をユーザによっ
て設定された値に入力する。
【0057】ブロック180は、比例タイル表示領域イ
ネーブル・イベントが生成されたか否かを見るために検
査を行う。もしユーザが図15における彼女のメニュー
においてウィンドウ・タイル表示モードの比例タイル表
示パラメータをオンしなければならないことを示したな
らば、このイベントは生成される。もしそうであれば、
ブロック181は制御データ30における比例タイル表
示フラグ52をオンに設定する。
【0058】ブロック182は、比例タイル表示ディス
エーブル・ウィンドウ・イベントが生成されたか否かを
見るために検査を行う。もしユーザが図15における彼
女のメニューにおいてウィンドウ・タイル表示モードの
比例タイル表示パラメータをオフしなければならないこ
とを示したならば、このイベントは生成される。もしそ
うであれば、ブロック183は制御データ30における
比例タイル表示フラグ52をオフに設定する。
【0059】ブロック185は、最適化イネーブル・ウ
ィンドウ・イベントが生成されたか否かを見るために検
査を行う。もしユーザが図15における彼女のメニュー
においてウィンドウ・タイル表示モードの最適化パラメ
ータをオンしなければならないことを示したならば、こ
のイベントは生成される。もしそうであれば、ブロック
186は制御データ30における最適化フラグ53をオ
ンに設定する。
【0060】ブロック187は、最適化ディスエーブル
・ウィンドウ・イベントが生成されたか否かを見るため
に検査を行う。もしユーザが図15における彼女のメニ
ューにおいてウィンドウ・タイル表示モードの最適化パ
ラメータをオフしなければならないことを示したなら
ば、このイベントは生成される。もしそうであれば、ブ
ロック183は制御データ30における最適化フラグ5
3をオフに設定する。
【0061】ブロック190は、最小タイル表示パーセ
ント設定ウィンドウ・イベントが生成されたか否かを見
るために検査を行う。もしユーザが図15における彼女
のメニューにおいて最小タイル表示パーセントに対する
値をうめたならば、このイベントは生成される。もしそ
うであれば、ブロック191は制御データ30における
最小タイル表示パーセント領域54をユーザによって設
定された値に設定する。
【0062】ブロック195は、処理すべき他のウィン
ドウ・イベントがあるか否かを見るために検査を行う。
もしそうであれば、ブロック196はこのイベントに対
する通常のウィンドウ処理を実行する。いずれにして
も、制御のフローはループを図16及び図17のブロッ
ク115に戻る。
【0063】図16〜図19及び図22のフロー・チャ
ートは独立に実行しているが、図23のフロー・チャー
トも処理装置12内で独立に実行している。このフロー
・チャートは、図8〜図11に示されているように、ユ
ーザがこの発明のウィンドウ・タイミング機能を使用し
て彼女のウィンドウを再配置したいか否かを見るために
ユーザ入力をモニタする。図23を参照すると、ブロッ
ク401は、ユーザがディスプレイ・ウィンドウ・タイ
ル表示モードを選択したか否かを見るために検査を行
う。もしブロック401がディスプレイ・ウィンドウ・
タイル表示モードが選択されなかったと決定したなら
ば、ブロック403は全てのウィンドウがクローズされ
たか否かを見るために検査を行う。もしそうであれば、
プログラムはブロック499で終了する。もしそうでな
ければ、プログラムは、ディスプレイ・ウィンドウ・タ
イル表示モードが選択されたか否かを見るための検査を
再び行うためにループをブロック401に戻る。好まし
い実施例においては、ディスプレイ・ウィンドウ・タイ
ル表示モードは指定されたキー配列によって選択され
る。例えば、ALT−Wを使用することができる。ある
いは、マウス・ボタンの組み合わせを使用することもで
き、ユーザはメニューや、ディスプレイ・スクリーン上
のボタンのアイコンまたは表示上でクリックを行うこと
によってモードを選択することもできる。いずれにして
も、ブロック401がディスプレイ・ウィンドウ・タイ
ル表示モードが選択されたことを決定すると直ちに、ブ
ロック407は、現在イン・フォーカス状態にあるウィ
ンドウに対する全カラム43を、タイマ32の現在の値
からイン・フォーカス状態にあるカラム42の値を減じ
たものに等しく設定し、この結果を全カラム43に現在
ある値に加える。この機能は、図21のブロック320
によって実行されるものと同一であり、現在イン・フォ
ーカス状態にあるウィンドウに関する最も最新の情報が
使用されることを保証する。ブロック407はまた、こ
のウィンドウに対するイン・フォーカス状態のカラム4
2をタイマ32の現在の値に等しく設定する。
【0064】ブロック901は、通常の方法で全てのデ
ィスプレイの表示を消去する。ブロック903は、ウィ
ンドウ・データ40におけるウィンドウ・レコードを、
全カラム43における値によって、最も高いものから最
も低いものに、活動の順に分類する。従って、最も高い
活動状態にあるウィンドウはウィンドウ・データ40の
最上部における第1のレコードとなり、最も低い活動状
態にあるウィンドウはウィンドウ・データ40の底部に
おける最後のレコードとなるであろう。ブロック905
は、いずれかのウィンドウが最小しきい値パーセントよ
りも活動状態が低かったか否かを見るために、ウィンド
ウ・データ40におけるウィンドウ・レコードの検査を
行う。これは、全ての活動状態にあるウィンドウの非識
別制御データ30がそれぞれのウィンドウが活動状態に
あったパーセントに達するための全時間でそれぞれのウ
ィンドウに対するウィンドウ・データ40における全カ
ラム43の値を除し、これに100を乗じ、この値を制
御データ30の領域54に含まれている最小しきい値パ
ーセントと比較することによって、行われる。ブロック
905がこの最小しきい値パーセント以下であると決定
するそれぞれのウィンドウに対して、ブロック905
は、後の使用のために制御データ40の領域カラム44
に「ICON」を入れる。制御のフローは次にブロック
1100に移り、ここで図24のウィンドウ・タイル表
示領域計算サブルーチンが呼び出される。活動によって
分類された、処理すべき全てのウィンドウのウィンドウ
・リストはこのサブルーチンに渡される。
【0065】図24のウィンドウ・タイル表示計算サブ
ルーチンは計算を行い、領域カラム44における値「I
CON」をまだ有していないそれぞれのウィンドウに対
するウィンドウ・データ40の領域カラムに対する値を
うめる。ブロック1101は四つの象限の重みを割り当
てることによって開始する。第1の象限(Q1wt)
は、ウィンドウ・データ40における第1のウィンドウ
・レコード(すなわち、最も高い活動状態にある)に対
する全カラム43に含まれている値を与えられる。同様
に、第2の象限(Q2wt)は、ウィンドウ・データ4
0における第2のウィンドウ・レコード(すなわち、次
に高い活動状態にある)に対する全カラム43に含まれ
ている値を与えられる。第3の象限(Q3wt)は、ウ
ィンドウ・データ40における第3のウィンドウ・レコ
ード(すなわち、最も高い活動状態にある)に対する全
カラム43に含まれている値を与えられる。第4の象限
(Q4wt)は、ウィンドウ・データ40におけるウィ
ンドウの残りの和に対する全カラム43に含まれている
値を与えられる。なお、ブロック1101は、もし「I
CON」の表示がウィンドウに対する領域44にあるな
らば、いずれの象限の重みに対する全カラム43におけ
る値も使用しない。その代わり、これらの重みに「0」
が加えられる。「0」はまた、もしウィンドウが存在し
なければ、重みに対して使用される。
【0066】ウィンドウ・データ40に示されている我
々の例のデータ(図14に示されているように分類され
ている)を使用して、ブロック1101は、Q1wt、
Q2wt、Q3wt及びQ4wtに対して、それぞれ4
00、350、100及び120の重みを割り当てる。
Q4wtは、WordPerfect 及びLotus 1−2−3に対す
る全カラム43における値を加えることによって決定さ
れる(70+50)。ブロック905はこのウィンドウ
が最小しきい値パーセントを越えなかったことを決定
し、カラム44に「ICON」を入れたので、File Man
agerに対する全カラム43における値(30)は0で置
換され、Q4wtに加えられる。
【0067】ブロック1105は次に、H1wtを決定
するためにQ1wt及びQ2wtの重みを結合するとと
もに、H2wtを決定するためにQ3wt及びQ4wt
の重みを結合する。我々の例においては、H1wt=7
50(400+350)、H2wt=220(100+
120)である。次に、図25〜図27のセグメント分
割サブルーチン1200が、ブロック1200Aにおい
て初めて呼び出される。以下の入力パラメータがサブル
ーチンに渡される。すなわち、タイル表示領域の座標
(我々の例においては0、140、200、0−図3参
照)、H1wt(750)及びH2wt(120)であ
る。出力パラメータの領域H1及び領域H2もまた、サ
ブルーチン1200に渡される。サブルーチン1200
は、指定されたセグメント(タイル表示領域)を分割
し、それがセグメントを(領域H1及び領域H2)に分
割する二つの領域の上部左及び下部右の角のx及びy座
標を元に戻す。
【0068】図25〜図27を参照すると、ブロック1
201は、図24から第1の入力パラメータとして渡さ
れるセグメントの幅及び高さを計算する。幅は、セグメ
ントの下部右の角のx座標(我々の例においては20
0)からセグメントの上部左の角のx座標(我々の例に
おいては0)を減ずることによって計算される。高さ
は、セグメントの上部左の角のy座標(我々の例におい
ては140)からセグメントの下部右の角のy座標(我
々の例においては0)を減ずることによって計算され
る。従って、ブロック1201は、我々のセグメントの
幅が200であり、高さが140であることを決定す
る。ブロック1205は、このセグメントが分割される
二つの領域のx及びy座標を、セグメント自身のx及び
y座標と同一の値に初期化する。このため、我々の例に
おいては、両セグメントは、0、140の上部左(U
L)のx及びy座標と200、0の下部右(LR)のx
及びy座標とを有するであろう。
【0069】ブロック1210は、Wt1+Wt2が入
力パラメータ>0として渡されたか否かについて質問す
る。もし渡されていなければ、これらのセグメントに入
れるべきウィンドウがないので、セグメントは二つの領
域に分割されず、サブルーチンはブロック1298にお
いて呼び出された所に戻る。もしブロック1210が肯
定的に答えられたならば、領域に入れるべきウィンドウ
は少なくとも一つあり、制御のフローはブロック121
5に続く。
【0070】ブロック1215は、制御データ30にお
ける比例タイル表示フラグ52がオンであるか否かを見
るために検査を行う。もしオンであれば、ブロック12
20は、制御データ30における最適化フラグ53がオ
ンであるか否かを見るために検査を行う。もしオンであ
れば、好ましい実施例におけると同様に、制御のフロー
はブロック1230に移る。ブロック1230は、セグ
メントの幅がその高さ以上であるか否かを見るために検
査を行う。もしそうであれば、それはより良く見える
(そして、もしセグメントが垂直方向に分割されるなら
ば、「最適化」されたものである)。これはブロック1
235によって実行される。ブロック1235は、領域
1の下部右(LR)のx座標と領域2の上部左(UL)
のx座標とを、分割すべきセグメントのULx座標とセ
グメントの幅にWt1/(Wt1+Wt2)を乗じたも
のとを加えたものに等しく設定する。この動作は図4に
示されている。ブロック1235は、領域1のLRx座
標を200(ブロック1205において初期化された)
から以下のように変更することによって、セグメント
(タイル表示領域)を分割する。すなわち、領域1のL
Rx=0+(200×750/(750+220))=
155である。領域2のULx座標も155に変更され
る。なお、Presentation Managerの下においてはウィン
ドウ座標は通常は整数として表現されなければならない
ので、領域1のLRx及び領域2のULx座標の値15
5は実際には154.63918を丸めたものである。
この丸め演算はウィンドウ領域が±0.5mmの丸め誤
差で比例することを意味するが、この発明の目的に対し
て、これは「比例」と同一であると考えられる。ブロッ
ク1235が実行された後、サブルーチンはブロック1
299から図24のブロック1200Bに戻り、領域H
1及び領域H2に対する座標(領域1及び領域2に対す
る値を使用する)を出力パラメータとして戻す。
【0071】再び図24を参照すると、図25〜図27
のセグメント分割サブルーチン1200は次に、ブロッ
ク1200Bにおいて2回目の呼び出しを受ける。以下
の入力パラメータがサブルーチンに渡される。すなわ
ち、領域H1の座標(我々の例においては0、140、
155、0−図4参照)、Q1wt(400)及びQ2
wt(350)である。出力パラメータの領域Q1及び
領域Q2もサブルーチン1200に渡される。サブルー
チン1200は、領域H1を領域Q1及び領域Q2に分
割し、これらの二つの領域の上部左及び下部右の角のx
及びy座標を戻す。
【0072】再び図25〜図27を参照すると、ブロッ
ク1201は、以前と同様に、図24から第1の入力パ
ラメータとして渡されたセグメントの幅及び高さを計算
する。ブロック1201は、領域H1の幅が140であ
り、高さが140であると決定する。ブロック1205
は、このセグメントが分割される二つの領域のx及びy
座標を、セグメント自身のx及びy座標(我々の例にお
いては0、140、155、0)と同一の値に初期化す
る。
【0073】制御のフローは、以前のようにブロック1
215、1220及び1230を通り、ブロック123
5は領域H1を垂直方向に分割する。ブロック1235
は、領域1の下部右(LR)のx座標と領域2の上部左
(UL)のx座標とを、分割すべきセグメントのULx
座標とセグメントの幅にWt1/(Wt1+Wt2)を
乗じたものとを加えたものに等しく設定する。この動作
は図5に示されている。ブロック1235は、領域1の
LRx座標を155(ブロック1205において初期化
された)から以下のように変更することによって、セグ
メント(領域H1)を分割する。すなわち、領域1のL
Rx=0+(155×400/(400+350))=
83である。領域2のULx座標も83に変更される。
ブロック1235が実行された後、サブルーチンはブロ
ック1299から図24のブロック1200Cに戻り、
領域Q1及び領域Q2に対する座標(領域1及び領域2
に対する値を使用する)を出力パラメータとして戻す。
【0074】再び図24を参照して、セグメント分割サ
ブルーチン1200は次に、ブロック1200Cにおい
て3回目の呼び出しを受ける。以下の入力パラメータが
サブルーチンに渡される。すなわち、領域H2の座標
(我々の例においては155、140、200、0−図
5参照)、Q3wt(100)及びQ4wt(120)
である。出力パラメータの領域Q3及び領域Q4も、サ
ブルーチン1200に渡される。サブルーチン1200
は、領域H2を領域Q3及び領域Q4に分割し、これら
の二つの領域の上部左及び下部右の角のx及びy座標を
戻す。
【0075】再び図25〜図27を参照すると、ブロッ
ク1201は、以前と同様に、図24から第1の入力パ
ラメータとして渡されたセグメントの幅及び高さを計算
する。ブロック1201は、領域H1の幅が45であ
り、高さが140であることを決定する。ブロック12
05は、このセグメントが分割される二つの領域のx及
びy座標を、セグメント自身のx及びy座標(我々の例
においては155、140、200、0)と同一の値に
初期化する。
【0076】制御のフローは以前のようにブロック12
15及び1220を通るが、領域H2の幅がその高さよ
りも小さいので、ブロック1230は今度は否定的に答
えられる。従って、制御のフローは、領域H2を水平方
向に分割するために、ブロック1240に移る。ブロッ
ク1240は、領域1の下部右(LR)のy座標と領域
2の上部左(UL)のy座標とを、分割すべきセグメン
トのULy座標から、セグメントの高さにWt1/(W
t1+Wt2)を乗じたものを減じたものに等しく設定
する。この動作は図6に示されている。ブロック124
0は、領域1のLRy座標を0(ブロック1205にお
いて初期化された)から以下のように変更することによ
って、セグメント(領域H2)を分割する。すなわち、
領域1のLRy=140−(l40×100/(100
+120))=76である。領域2のULy座標も76
に変更される。ブロック1240が実行された後、サブ
ルーチンはブロック1299から図24のブロック11
15に戻り、領域Q3及び領域Q4に対する座標(領域
1及び領域2に対する値を使用する)を出力パラメータ
として戻す。
【0077】再び図24を参照すると、ブロック111
5は、最初の三つのウィンドウに対して計算された座標
をウィンドウ・データ40の領域44に書き込む。我々
の例においては、最も高い活動状態にあるウィンドウ
(Turbotax)に対する領域44は、領域Q1の座標0、
140、83、0でうめられる。次に高い活動状態にあ
るウィンドウ(Quicken)に対する領域44は、領域Q2
の座標83、140、155、0でうめられる。次に高
い活動状態にあるウィンドウ(Excel)に対する領域44
は、領域Q3の座標155、140、200、76でう
められる。これは図14に示されている。
【0078】ブロック1120は、処理する必要がある
ウィンドウがまだ存在するか否かについて質問する。こ
れは、もし領域がまだ生成されていなかったウィンドウ
があるか否かを見るために、サブルーチン1000に渡
されたウィンドウ・リストの検査を行うことによって行
われる。我々の例においては我々は処理が残されたウィ
ンドウ・リストにおける第4及び第5のウィンドウを有
するので、ブロック1120は肯定的に答えられる。
【0079】ブロック1130は、ブロック1101、
1105、1200A、1200B、1200C、11
15及び1120を実行することによって、ウィンドウ
・タイル表示計算サブルーチン1100を再帰的に繰り
返す。これは、領域44に「ICON」を有しないィン
ドウ・データ40におけるそれぞれのウィンドウに対し
て一つの領域ができるように領域Q4を十分な領域にさ
らに分割するために行われる。サブルーチン1100が
呼び出されるたびに、サブルーチン1100に渡された
ウィンドウ・リストは、領域がまだ生成されていなかっ
たウィンドウだけを含む。我々の例においては、サブル
ーチン1100に渡されたウィンドウ・リストは、図1
4に示されるように分類された、ウィンドウ・データ4
0における第4及び第5のウィンドウ(すなわち、Word
Perfect MY.TXT及びLotus1−2−3)を含むで
あろう。もしサブルーチン1100に渡されたウィンド
ウ・リストに三つ以上のウィンドウが残されていれば、
ブロック1130は、ウィンドウ・リストに三つまたは
それよりも少数のウィンドウが残されるまでサブルーチ
ン1100を多数回呼び出し、その時点でサブルーチン
1100は最後の実行を行う。
【0080】我々の例において我々はウィンドウ・リス
トにサブルーチン1100に渡された二つのウィンドウ
だけを有しているので、ブロック1130は、サブルー
チン1100を1回呼び出す。従って、ブロック110
1は再び実行され、象限の重みは以下のように割り当て
られる。すなわち、Q1wt=70、Q2wt=50、
Q3wt=0及びQ4wt=0である。ブロック110
5は、H1wt=120及びH2wt=0となるように
象限の重みを結合する。セグメント分割サブルーチン1
200は次に、ブロック1200Aにおいて再び呼び出
される。以下の入力パラメータがサブルーチンに渡され
る。すなわち、領域Q4の座標(我々の例においては1
55、76、200、0−図6参照)、H1wt(12
0)及びH2wt(0)である。出力パラメータの領域
Q4−H1及び領域Q4−H2もサブルーチン1200
に渡される。サブルーチン1200は領域Q4を領域Q
4−H1及び領域Q4−H2に分割し、これらの二つの
領域の上部左及び下部右の角のx及びy座標を戻す。
【0081】再び図25〜図27を参照すると、ブロッ
ク1201は、以前のように、図24から第1の入力パ
ラメータとして渡されたセグメントの幅及び高さを計算
する。ブロック1201は、領域Q4の幅が45であ
り、高さが76であると決定する。ブロック1205
は、このセグメントが分割される二つの領域のx及びy
座標を、セグメント自身のx及びy座標(我々の例にお
いては155、76、200、0)と同一の値に初期化
する。
【0082】制御のフローは以前のようにブロック12
15及び1220を通るが、領域Q4の幅がその高さよ
りも小さいので、ブロック1230は今度は否定的に答
えられる。従って、制御のフローは、領域Q4を水平方
向に分割するために、ブロック1240に移る。ブロッ
ク1240は、領域1の下部右(LR)のy座標と領域
2の上部左(UL)のy座標とを、分割すべきセグメン
トのULy座標から、セグメントの高さにWt1/(W
t1+Wt2)を乗じたものを減じたものに等しく設定
する。この動作は図6に示されている。ブロック124
0は、領域1のLRy座標を0(ブロック1205にお
いて初期化された)から以下のように変更することによ
って、セグメント(領域Q4)を分割することを試み
る。すなわち、領域1のLRy=76−(76×120
/(120+0))=0である。領域2のULy座標も
同様に0に変更される。なお、ULy座標及びLRy座
標は両方とも0であるので、領域2は全く幅を有してい
ない。これは、この領域に入ってくるウィンドウはな
く、この領域はそれ以上分割されないことを示す。ブロ
ック1240が実行された後、サブルーチンはブロック
1299から図24のブロック1200Bに戻り、領域
Q4−H1及び領域Q4−H2に対する座標(領域1及
び領域2に対する値を使用する)を出力パラメータとし
て戻す。後にわかるように、領域Q4−H2は一度も使
用されず、従ってこの領域が0の幅を有していても構わ
ない。
【0083】再び図24を参照すると、図25〜図27
のセグメント分割サブルーチン1200は次に、ブロッ
ク1200Bにおいてブロック1130によって2回目
の呼び出しを受ける。以下の入力パラメータがサブルー
チンに渡される。すなわち、領域Q4−H1の座標(我
々の例においては155、76、200、0−図7参
照)、Q1wt(70)及びQ4wt(50)である。
出力パラメータの領域Q4−Q1及び領域Q4−Q2も
サブルーチン1200に渡される。サブルーチン120
0は領域Q4−H1を領域Q4−Q1及び領域Q4−Q
2に分割し、これらの二つの領域の上部左及び下部右の
角のx及びy座標を戻す。
【0084】領域Q4−H1を水平方向に分割するため
に、制御のフローは以前のようにブロック1215、1
220及び1230を通ってブロック1240に移る。
ブロック1240は、領域1の下部右(LR)のy座標
と領域2の上部左(UL)のy座標とを、分割すべきセ
グメントのULy座標から、セグメントの高さにWt1
/(Wt1+Wt2)を乗じたものを減じたものに等し
く設定する。この動作は図6に示されている。ブロック
1240は、領域1のLRy座標を0(ブロック120
5において初期化された)から以下のように変更するこ
とによって、セグメント(領域Q4−H1)を分割す
る。すなわち、領域1のLRy=76−(76×120
/(70+50))=32である。領域2のULy座標
も32に変更される。ブロック1240が実行された
後、サブルーチンはブロック1299から図24のブロ
ック1200Cに戻り、領域Q4−Q1及び領域Q4−
Q2に対する座標(領域1及び領域2に対する値を使用
する)を出力パラメータとして戻す。
【0085】再び図24を参照すると、図25〜図27
のセグメント分割サブルーチン1200は次に、ブロッ
ク1200Cにおいてブロック1130によって3回目
の呼び出しを受ける。以下の入力パラメータがサブルー
チンに渡される。すなわち、領域Q4−H2の座標(我
々の例においては155、0、200、0)、Q3wt
(0)及びQ4wt(0)である。出力パラメータの領
域Q4−Q3もサブルーチン1200に渡される。しか
し、サブルーチン1200が我々の重なった幅0の領域
Q4−H2を分割する機会を有する前に、ブロック12
10はWt1及びWt2を加え合わせ、それらが0以下
であることを決定する。これは、ウィンドウに対してす
でに十分な領域があることを示し、サブルーチンはブロ
ック1298から図24のブロック1115に戻る。こ
れらの二つの領域の上部左及び下部右の角のx及びy座
標に対する初期化された値は戻され、それによって領域
Q4−H2が分割されなかったことを示す。
【0086】再び図24を参照すると、ブロック111
5は、最初の三つのウィンドウに対して計算された領域
に対する座標をウィンドウ・データ40の領域44に書
き込む。我々の例においては、次に最も高い活動状態に
あるウィンドウ(WordPerfect)に対する領域44は、領
域Q4−Q1の座標155、76、200、32でうめ
られる。次の最も高い活動状態にあるウィンドウ(Lotu
s 1−2−3)に対する領域44は、領域Q4−Q2の
座標155、32、200、0でうめられる。これが最
後のウィンドウであるので、ブロック1115の実行は
ここで停止する。
【0087】ブロック1120は、処理する必要がある
ウィンドウがまだ存在するか否かについて質問する。こ
れは、それに対して領域が生成されなかった、サブルー
チン1100に渡されたウィンドウ・リストにウィンド
ウが残されているか否かを見るために検査を行うことに
よって行われる。我々の例において我々はサブルーチン
1100に渡された我々のウィンドウ・リストに二つの
ウィンドウを有していたため及びこれらのウィンドウの
両方に対して領域が生成されたため、ブロック1120
は否定的に答えられる。ブロック1130はいわゆる再
帰的に呼び出し可能なサブルーチン1100であるの
で、サブルーチンはブロック1149においてブロック
1130からブロック1139に戻る。ブロック113
9は図23におけるブロック1150に戻る。
【0088】図23を参照すると、ブロック1150及
び1155は、ウィンドウ・データ40におけるそれぞ
れのウィンドウに対する領域44において図24〜図2
7のフロー・チャートによって提供されるデータに従っ
て、ディスプレイ・スクリーン上にウィンドウを位置決
めする。領域44に「ICON」を有する任意のウィン
ドウに対して、アイコンが生成される(Presentation M
anagerを使用して)。図8は我々の例のウィンドウがど
のようにユーザに表示されるかを示す。全てのウィンド
ウが処理されたことをブロック1150が示した時、ブ
ロック1160は分類されたウィンドウ・リストにおけ
る最初のウィンドウ(最も高い活動状態にあるウィンド
ウ)にフォーカスを与える。プログラムは次に、ユーザ
がディスプレイ・ウィンドウ・タイル表示モードを選択
するか否かを再び見るために、ループをブロック401
に戻る。
【0089】次に、まだ説明していない三つの他の実施
例を説明するために、図24〜図27に戻る。分割すべ
きセグメントがそれ自身、より大きなセグメントから垂
直方向または水平方向に分割されたか否かを示すため
に、セグメント分割サブルーチン1200に付加的なパ
ラメータが渡されることを除いて、図24は以前に説明
したと同様に動作する。「水平」パラメータはサブルー
チンが呼び出された時に初めて渡される。もし納税者タ
ミーが比例するパラメータを得ることができたが、最適
化パラメータは得ることができなかったならば、彼女は
この発明の第1の他の実施例を使用しており、ディスプ
レイ・スクリーン17は図9に示されるように見える。
この実施例においては、最適化パラメータが得られない
ので、ブロック1220は否定的に答えられる。ブロッ
ク1245はスイッチとして働き、セグメントが分割
(それによって垂直方向の分割を実行する)される最初
の時にブロック1235を実行させ、セグメントがさら
に分割される次の時にブロック1240を実行させ、そ
れによって水平方向の分割を実行する。タイル表示領域
の領域H1及び領域H2への分割は垂直方向に行われ
る。領域H1の領域Q1及び領域Q2への分割は水平方
向に行われる。領域H2の領域Q3及び領域Q4への分
割は水平方向に行われる。必要に応じて、領域Q4のさ
らなる分割が垂直方向に行われ、次に水平方向に行われ
る、等々される。サブルーチンは、それがブロック12
99において呼び出された所に戻る。セグメントがどの
ように分割されたかに関する情報も、ブロック1299
において戻される。
【0090】もしタミーが比例するパラメータを得るこ
とができなかったが、最適化パラメータは得ることがで
きたならば、彼女はこの発明の第2の他の実施例を使用
しており、ディスプレイ・スクリーン17は図10に示
されるように見える。この実施例においては、ブロック
1215は否定的に答えられる。ブロック1250は、
Wt2=0であるか否かを決定する。もしこれが真であ
れば、領域を見つけるためのウィンドウは一つしかな
く、従ってセグメントは分割されない。その代わり、ブ
ロック1251は、領域1の座標をブロック1205に
おいて初期化されたと同一の値に保つが、この領域が存
在しないことを示すために領域2の座標を0、0、0、
0に変更する。サブルーチンは、それがブロック129
7において呼び出された所に戻る。もしブロック125
0が否定的に答えられれば、ブロック1255は最適化
パラメータが得られるか否かについて質問する。この実
施例においてはそれは得られるので、ブロック1255
は肯定的に答えられる。ブロック1260は以前に述べ
たブロック1230と同様に働き、もしその幅が高さ以
上であれば、セグメントを垂直方向に分割し、そうでな
ければセグメントを水平方向に分割する。ブロック12
65は、以前に述べたブロック1235とほとんど同様
に動作するが、ブロック1265はセグメントをいつも
等分割する。同様に、ブロック1270は以前に述べた
ブロック1240とほとんど同様に動作するが、ブロッ
ク1275はセグメントをいつも等分割する。ブロック
1265または1270が実行された後、サブルーチン
はそれがブロック1296において呼び出された所に戻
る。セグメントがどのように分割されたかに関する情報
もブロック1296において戻される。
【0091】もしタミーが比例するパラメータを得るこ
とができず、最適化パラメータも得ることができなかっ
たならば、彼女はこの発明の第3の他の実施例を使用し
ており、ディスプレイ・スクリーン17は図11に示さ
れるように見える。図11は図10と同一に見えるが、
これはしばしば正しくない。この実施例においては、ブ
ロック1255は否定的に答えられる。ブロック127
5は以前に述べたブロック1245と同様に動作する。
【0092】図16〜図19、図22及び図23のフロ
ー・チャートとともに処理装置12において独立に実行
する図28について説明する。ブロック1001は、処
理すべきウィンドウ・イベントがあるか否かを見るため
に検査を行う。これは、図16及び図17のブロック1
10によって行われるのと同一の検査である。もしブロ
ック1001が処理すべきウィンドウ・イベントがない
ことを決定すれば、ブロック1003は全てのウィンド
ウがクローズされたか否かを見るために検査を行う。も
しそうであれば、プログラムはブロック1099におい
て終了する。もしそうでなければ、プログラムは、処理
すべきウィンドウ・イベントがあるか否かを見るために
再び検査を行うために、ループをブロック1001に戻
る。いったんブロック1001が肯定的に答えられれ
ば、ブロック1010はウィンドウ・イベントを得る。
ブロック1020は、このウィンドウ・イベントがユー
ザの処置によって生じたものであるか否かについて質問
する。もしそうでなければ、プログラムは、処理すべき
他のウィンドウ・イベントを探すためにループをブロッ
ク1001に戻る。なお、図16〜図19は実際にイベ
ントを実行する−図28はこの発明のウィンドウ・タイ
ミング機能にインパクトを与える特定のイベントを探す
だけである。もしブロック1020が肯定的に答えられ
れば、ブロック1050は制御データ30の中断フラグ
34がTRUE2に等しいか否かを見るために検査を行
う。もしこのフラグがTRUE2に等しければ、ウィン
ドウ・タイミング機能は非活動タイム・アウトにより中
断された。ユーザは今や何かを行ったので、ウィンドウ
・タイミング機能を再スタートさせるのが適当である。
これは、ブロック1055において、図22のブロック
205が肯定的に答えられ、ウィンドウ・データ30に
おけるタイマ・フラグ32がブロック208によって増
加されるように中断フラグ34の値をFALSEに変更
することによって行われる。
【0093】再び図28を参照すると、ブロック105
0がどのように答えられるかとは無関係に、制御のフロ
ーはブロック1060に移り、ここで最後のイベント・
フラグ36が制御データ30におけるタイマ32の値に
設定される。従って、最後のイベント・フラグ36は、
ディスプレイ・スクリーン上のウィンドウの一つに対す
るユーザの活動を示すイベントが生じた最後の時間を含
む。この情報は、指定された非活動タイム・アウトが越
えられたか否かを見るための検査を行うために、図16
及び図17のブロック115及び118によって使用さ
れる。制御のフローはループをブロック1001に戻
る。
【0094】以上、この発明を好ましい実施例及びいく
つかの他の実施例について説明したが、当業者ならば、
この発明の思想、範囲及び教示から逸脱することなく、
詳細における種々の変更を行うことができることがわか
るであろう。例えば、最も高い活動状態にあるウィンド
ウの位置は、図25〜図27のブロック1235、12
40、1265及び1270に多少変更を加えるだけ
で、スクリーンの左の代わりに、スクリーンの右側にす
ることができる。このため、何が最も高い活動状態にあ
るウィンドウに対する最も区別的な表示であると考えら
れるかについての文化的または個人的な相違を考慮に入
れることができる。従って、ここに開示されたものは、
特許請求の範囲において規定されたように限定されるだ
けである。
【0095】
【発明の効果】この発明は、コンピュータのディスプレ
イ・スクリーン上にウィンドウを区別的及び比例的に表
示するための方法及び装置を提供する。
【図面の簡単な説明】
【図1】この発明のコンピュータ・システムのブロック
図である。
【図2】ユーザがそのコンピュータ上で数分間または数
時間タスクを実行した後にどのようにウィンドウが表示
されるかを示す略線図である。
【図3】ディスプレイ・スクリーンの行及び列をどのよ
うにx及びy座標にマップすることができるかを示す略
線図である。
【図4】ディスプレイ・スクリーンのウィンドウ・タイ
ル表示領域がどのようにこの発明による領域に分割され
るかを示す略線図である。
【図5】ディスプレイ・スクリーンのウィンドウ・タイ
ル表示領域がどのようにこの発明による領域に分割され
るかを示す略線図である。
【図6】ディスプレイ・スクリーンのウィンドウ・タイ
ル表示領域がどのようにこの発明による領域に分割され
るかを示す略線図である。
【図7】ディスプレイ・スクリーンのウィンドウ・タイ
ル表示領域がどのようにこの発明による領域に分割され
るかを示す略線図である。
【図8】この発明の好ましい実施例においてどのように
ウィンドウが比例的に表示されるかを示す略線図であ
る。
【図9】この発明の第1の他の実施例においてどのよう
にウィンドウが比例的に表示されるかを示す略線図であ
る。
【図10】この発明の第2の他の実施例においてどのよ
うにウィンドウが区別的にしかし非比例的に表示される
かを示す略線図である。
【図11】この発明の第3の他の実施例においてどのよ
うにウィンドウが区別的にしかし非比例的に表示される
かを示す略線図である。
【図12】この発明の制御データを示す略線図である。
【図13】分類される前のこの発明のウィンドウ・デー
タを示す略線図である。
【図14】分類された後のこの発明のウィンドウ・デー
タを示す略線図である。
【図15】この発明のユーザが変更可能なパラメータを
設定するために使用されるスクリーンの一例を示す略線
図である。
【図16】この発明のフロー・チャートである。
【図17】この発明のフロー・チャートである。
【図18】この発明のフロー・チャートである。
【図19】この発明のフロー・チャートである。
【図20】この発明のフロー・チャートである。
【図21】この発明のフロー・チャートである。
【図22】この発明のフロー・チャートである。
【図23】この発明のフロー・チャートである。
【図24】この発明のフロー・チャートである。
【図25】この発明のフロー・チャートである。
【図26】この発明のフロー・チャートである。
【図27】この発明のフロー・チャートである。
【図28】この発明のフロー・チャートである。
【符号の説明】
10 コンピュータ・システム 11 システム・ユニット 12 処理装置 13 メモリ 14 記憶装置 15 ディスプレイ・アダプタ 17 ディスプレイ 18 キーボード 19 入力装置 21〜26 ウィンドウ 30 制御データ 40 ウィンドウ・データ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジェフリ・マイケル・ライアン アメリカ合衆国、ミネソタ州バイロン、セ カンドストリート ノースウエスト 6

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 ディスプレイ・スクリーン上に複数のウ
    ィンドウを能率的に表示するための方法であって、 上記複数のウィンドウのそれぞれが活動状態にあった時
    間の長さをモニタするステップと、 第Nのウィンドウが最小しきい値を越えるに十分に長い
    時間活動状態になかったことを決定するステップと、 第1のウィンドウから第(N−1)のウィンドウを活動
    の降順に区別的に表示するステップと、 第Nのウィンドウをアイコンとして表示するステップと
    を有する上記方法。
  2. 【請求項2】 ディスプレイ・スクリーン上に複数のウ
    ィンドウを能率的に表示するための方法であって、 上記複数のウィンドウのそれぞれが活動状態にあった時
    間の長さをモニタするステップと、 上記複数のウィンドウのそれぞれを活動状態にある時間
    の長さに比例するサイズで表示するステップとを有する
    上記方法。
  3. 【請求項3】 上記表示するステップは、 上記ディスプレイ・スクリーン上でタイル表示領域を決
    定するステップと、 上記タイル表示領域をH1領域とH2領域とに分割する
    ステップと、 上記H1領域をQ1領域とQ2領域とに分割するステッ
    プと、 上記H2領域をQ3領域とQ4領域とに分割するステッ
    プとをさらに有する請求項2記載の方法。
  4. 【請求項4】 上記タイル表示領域を分割するステップ
    は、上記第1のウィンドウから上記第Nのウィンドウが
    活動状態にあった時間の長さに対する上記第1のウィン
    ドウ及び上記第2のウィンドウが活動状態にあった時間
    の長さに上記H1領域のサイズが比例し、上記第1のウ
    ィンドウから上記第Nのウィンドウが活動状態にあった
    時間の長さに対する上記第3のウィンドウから上記第N
    のウィンドウが活動状態にあった時間の長さに上記H2
    領域のサイズが比例するように実行される請求項3記載
    の方法。
  5. 【請求項5】 上記H1領域を分割するステップは、上
    記第1のウィンドウ及び上記第2のウィンドウが活動状
    態にあった時間の長さに対する上記第1のウィンドウが
    活動状態にあった時間の長さに上記Q1領域のサイズが
    比例し、上記第1のウィンドウ及び上記第2のウィンド
    ウが活動状態にあった時間の長さに対する上記第2のウ
    ィンドウが活動状態にあった時間の長さに上記Q2領域
    のサイズが比例するように実行される請求項4記載の方
    法。
  6. 【請求項6】 上記H2領域を分割するステップは、上
    記第3のウィンドウから上記第Nのウィンドウが活動状
    態にあった時間の長さに対する上記第3のウィンドウが
    活動状態にあった時間の長さに上記Q3領域のサイズが
    比例し、上記第3のウィンドウから上記第Nのウィンド
    ウが活動状態にあった時間の長さに対する上記第4のウ
    ィンドウから上記第Nのウィンドウが活動状態にあった
    時間の長さに上記Q4領域のサイズが比例するように実
    行される請求項5記載の方法。
  7. 【請求項7】 上記Q1領域に上記第1のウィンドウを
    表示するステップと、 上記Q2領域に第2のウィンドウを表示するステップ
    と、 上記Q3領域に第3のウィンドウを表示するステップと
    をさらに有する請求項6記載の方法。
  8. 【請求項8】 上記第4のウィンドウから上記第Nのウ
    ィンドウがイン・フォーカス状態にあった時間の長さに
    対する上記第4のウィンドウがイン・フォーカス状態に
    あった時間の長さにQ4−Q1領域のサイズが比例し、
    上記第4のウィンドウから上記第Nのウィンドウがイン
    ・フォーカス状態にあった時間の長さに対する上記第5
    のウィンドウがイン・フォーカス状態にあった時間の長
    さにQ4−Q2領域のサイズが比例するように、上記Q
    4領域を上記Q4−Q1領域と上記Q4−Q2領域とに
    分割するステップであってN=5であるものと、 上記Q4−Q1領域に上記第4のウィンドウを表示する
    ステップと、 上記Q4−Q2領域に上記第5のウィンドウを表示する
    ステップとをさらに有する請求項7記載の方法。
  9. 【請求項9】 ディスプレイ・スクリーン上に複数のウ
    ィンドウを能率的に表示するための方法であって、 上記複数のウィンドウのそれぞれが活動状態にあった時
    間の長さをモニタするステップと、 上記ディスプレイ・スクリーン上でタイル表示領域を決
    定するステップと、 上記タイル表示領域をH1領域とH2領域とに等分割す
    るステップと、 上記H1領域をQ1領域とQ2領域とに等分割するステ
    ップと、 上記H2領域をQ3領域とQ4領域とに等分割するステ
    ップと、 上記Q1領域に上記第1のウィンドウを表示するステッ
    プと、 上記Q2領域に上記第2のウィンドウを表示するステッ
    プと、 上記Q3領域に上記第3のウィンドウを表示するステッ
    プとを有する上記方法。
  10. 【請求項10】 上記Q4領域をQ4−Q1領域とQ4
    −Q2領域とに等分割するステップと、 上記Q4−Q1領域に上記第4のウィンドウを表示する
    ステップと、 上記Q4−Q2領域に上記第5のウィンドウを表示する
    ステップとをさらに有する請求項9記載の方法。
  11. 【請求項11】 第6のウィンドウが最小しきい値を越
    えるに十分に長い時間活動状態になかったことを決定す
    るステップと、 上記第6のウィンドウをアイコンとして表示するステッ
    プとをさらに有する請求項10記載の方法。
  12. 【請求項12】 ディスプレイ・スクリーン上に複数の
    ウィンドウを能率的に表示するためのコンピュータ・シ
    ステムであって、 処理装置と上記処理装置に接続されたメモリと上記処理
    装置に接続された記憶装置と上記処理装置に接続された
    ディスプレイ・アダプタとを有するシステム・ユニット
    と、 上記システム・ユニットに接続されたディスプレイと、 上記複数のウィンドウのそれぞれが活動状態にあった時
    間の長さをモニタするための、上記処理装置における手
    段と、 上記ディスプレイ上に上記複数のウィンドウのそれぞれ
    を活動状態にある時間の長さに比例するサイズで表示す
    るための、上記処理装置における手段とを有する上記コ
    ンピュータ・システム。
  13. 【請求項13】 ディスプレイ・スクリーン上に複数の
    ウィンドウを能率的に表示するためのプログラム・プロ
    ダクトであって、 上記複数のウィンドウのそれぞれが活動状態にあった時
    間の長さをモニタするための手段と、 上記複数のウィンドウのそれぞれを活動状態にある時間
    の長さに比例するサイズで表示するための手段とを有す
    る上記プログラム・プロダクト。
JP4288571A 1991-12-20 1992-10-27 ディスプレイ・スクリーン上に複数のウィンドウを能率的に表示するための方法及び装置 Expired - Lifetime JPH0772857B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/811,548 US5390295A (en) 1991-12-20 1991-12-20 Method and apparatus for proportionally displaying windows on a computer display screen
US811548 1991-12-20

Publications (2)

Publication Number Publication Date
JPH05233196A true JPH05233196A (ja) 1993-09-10
JPH0772857B2 JPH0772857B2 (ja) 1995-08-02

Family

ID=25206852

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4288571A Expired - Lifetime JPH0772857B2 (ja) 1991-12-20 1992-10-27 ディスプレイ・スクリーン上に複数のウィンドウを能率的に表示するための方法及び装置

Country Status (9)

Country Link
US (1) US5390295A (ja)
EP (1) EP0548645B1 (ja)
JP (1) JPH0772857B2 (ja)
KR (1) KR960001098B1 (ja)
CN (1) CN1034031C (ja)
BR (1) BR9204649A (ja)
CA (1) CA2075440C (ja)
DE (1) DE69224603T2 (ja)
TW (1) TW209287B (ja)

Families Citing this family (158)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0651738A (ja) * 1992-07-27 1994-02-25 Canon Inc コンピュータシステムの情報表示装置
US5621429A (en) * 1993-03-16 1997-04-15 Hitachi, Ltd. Video data display controlling method and video data display processing system
US5544352A (en) * 1993-06-14 1996-08-06 Libertech, Inc. Method and apparatus for indexing, searching and displaying data
BR9405492A (pt) * 1993-06-30 1999-09-08 Sega Enterprises Kk Sistema de processamento de imagem e seu processo e sistema eletronico que possui um sistema de processamento de imagem.
JP3363529B2 (ja) * 1993-07-22 2003-01-08 富士通株式会社 動画表示装置
US5544300A (en) * 1993-11-12 1996-08-06 Intel Corporation User interface for dynamically converting between a single top level window and multiple top level windows
US5572649A (en) * 1993-11-12 1996-11-05 Intel Corporation Process for dynamically switching between a single top level window and multiple top level windows
US5796402A (en) * 1993-12-03 1998-08-18 Microsoft Corporation Method and system for aligning windows on a computer screen
US5657463A (en) * 1994-01-19 1997-08-12 Apple Computer, Inc. Method and apparatus for positioning a new window on a display screen based on an arrangement of previously-created windows
US5487143A (en) * 1994-04-06 1996-01-23 Altera Corporation Computer user interface having tiled and overlapped window areas
US5564004A (en) * 1994-04-13 1996-10-08 International Business Machines Corporation Method and system for facilitating the selection of icons
US5577187A (en) * 1994-05-20 1996-11-19 Microsoft Corporation Method and system for tiling windows based on previous position and size
US5642490A (en) * 1994-06-24 1997-06-24 International Business Machines Corporation Providing icon placement alternatives for dynamically added container records
US5555364A (en) * 1994-08-23 1996-09-10 Prosoft Corporation Windowed computer display
EP0727734B1 (en) * 1994-08-31 2005-06-15 NJK Corp. Method of automatically generating operation buttons for computer processing
US5812804A (en) * 1994-12-16 1998-09-22 International Business Machines Corporation Display apparatus for tossing windows
US5874960A (en) * 1995-07-05 1999-02-23 Microsoft Corporation Method and system for sharing applications between computer systems
US6466241B1 (en) * 1995-07-17 2002-10-15 Gateway, Inc. Method and apparatus for managing program activation through use of a favorite program button menu
US6359636B1 (en) 1995-07-17 2002-03-19 Gateway, Inc. Graphical user interface for control of a home entertainment system
US5712995A (en) * 1995-09-20 1998-01-27 Galileo Frames, Inc. Non-overlapping tiling apparatus and method for multiple window displays
US5856826A (en) * 1995-10-06 1999-01-05 Apple Computer, Inc. Method and apparatus for organizing window groups and windows in a table
JP3461412B2 (ja) * 1995-10-11 2003-10-27 シャープ株式会社 データ処理装置およびデータ処理方法
US5754809A (en) * 1995-12-12 1998-05-19 Dell U.S.A., L.P. Perspective windowing technique for computer graphical user interface
US5764215A (en) * 1996-02-20 1998-06-09 International Business Machines Corporation Method and system for generating a global hit test data structure using scan line compression of windows in a graphical user interface
CA2175148C (en) * 1996-04-26 2002-06-11 Robert Cecco User interface control for creating split panes in a single window
US5995103A (en) * 1996-05-10 1999-11-30 Apple Computer, Inc. Window grouping mechanism for creating, manipulating and displaying windows and window groups on a display screen of a computer system
US5920315A (en) * 1996-07-17 1999-07-06 International Business Machines Corporation Multi-pane window with recoiling workspaces
US5859639A (en) * 1996-07-17 1999-01-12 International Business Machines Corporation Mechanism to control visible presence of desktop objects in a graphical user interface
US5796403A (en) * 1996-09-27 1998-08-18 Adams; James S. Method of display categorization in a multi-window display
US5892511A (en) * 1996-09-30 1999-04-06 Intel Corporation Method for assisting window selection in a graphical user interface
US5812135A (en) * 1996-11-05 1998-09-22 International Business Machines Corporation Reorganization of nodes in a partial view of hierarchical information
US6604242B1 (en) * 1998-05-18 2003-08-05 Liberate Technologies Combining television broadcast and personalized/interactive information
CA2483488A1 (en) * 1997-02-19 1998-08-19 Gallium Software Inc. User interface and method for maximizing the information presented on a screen
TW347518B (en) * 1997-03-06 1998-12-11 Samsung Electronics Co Ltd Display screen split method of a computer system
US5973691A (en) * 1997-04-30 1999-10-26 Sony Corporation Display of multiple images based on a temporal relationship among them with various operations available to a user as a function of each displayed image size
US6326970B1 (en) * 1997-05-16 2001-12-04 Liberate Technologies TV centric layout
US5933140A (en) * 1997-06-30 1999-08-03 Sun Microsystems, Inc. Child window containing context-based help and a miniaturized web page
JP3079079B2 (ja) * 1998-01-07 2000-08-21 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 画面表示装置及び画面表示制御方法
US6584479B2 (en) * 1998-06-17 2003-06-24 Xerox Corporation Overlay presentation of textual and graphical annotations
US6335743B1 (en) 1998-08-11 2002-01-01 International Business Machines Corporation Method and system for providing a resize layout allowing flexible placement and sizing of controls
US6608633B1 (en) * 1998-10-30 2003-08-19 Sony Corporation Visual display of categorical information through visual factors such as scale and location
US7117452B1 (en) 1998-12-15 2006-10-03 International Business Machines Corporation System and method for customizing workspace
US6460015B1 (en) 1998-12-15 2002-10-01 International Business Machines Corporation Method, system and computer program product for automatic character transliteration in a text string object
US7099876B1 (en) 1998-12-15 2006-08-29 International Business Machines Corporation Method, system and computer program product for storing transliteration and/or phonetic spelling information in a text string class
US6389386B1 (en) 1998-12-15 2002-05-14 International Business Machines Corporation Method, system and computer program product for sorting text strings
US6496844B1 (en) 1998-12-15 2002-12-17 International Business Machines Corporation Method, system and computer program product for providing a user interface with alternative display language choices
US6353451B1 (en) * 1998-12-16 2002-03-05 Intel Corporation Method of providing aerial perspective in a graphical user interface
US6590594B2 (en) * 1999-03-25 2003-07-08 International Business Machines Corporation Window scroll-bar
WO2000077974A1 (en) 1999-06-11 2000-12-21 Liberate Technologies Hierarchical open security information delegation and acquisition
US7124360B1 (en) * 1999-08-04 2006-10-17 William Drenttel Method and system for computer screen layout based on a recombinant geometric modular structure
US6392672B1 (en) * 1999-09-17 2002-05-21 Conexant Systems, Inc. Adding method for ordered sorting of a group of windows on a display
US6445400B1 (en) * 1999-09-23 2002-09-03 International Business Machines Corporation Computer controlled user interactive display system with each of a plurality of windows having a border of a color varied to reflect a variable parameter being tracked for the window
EP1249013A1 (de) * 2000-01-21 2002-10-16 Siemens Aktiengesellschaft Verfahren zum gleichzeitigen überlappungsfrei darstellen von mindestens zwei datenvisualisierungsfenstern auf der anzeigefläche eines monitors einer datenverarbeitungsanlage
US20020044161A1 (en) * 2000-05-22 2002-04-18 Kazuaki Sugai Multi-window display system and method for displaying video data and storage medium
US20020080184A1 (en) * 2000-07-13 2002-06-27 Clayton Wishoff Application container for a graphical user environment
US6931604B2 (en) * 2000-12-18 2005-08-16 Derek Graham Lane Method of navigating a collection of interconnected nodes
US7568001B2 (en) * 2001-01-30 2009-07-28 Intervoice, Inc. Escalated handling of non-realtime communications
US7254641B2 (en) * 2001-01-30 2007-08-07 Intervoice, Inc. Digital multimedia contact center with tier escalation and deescalation in response to changed criteria
US6934743B2 (en) * 2001-03-14 2005-08-23 Wireless 3G Method and apparatus for displaying intermediate content messages in the unused portion of a web browser display space
US20080059571A1 (en) * 2001-03-14 2008-03-06 Khoo Soon H Displaying Advertising Messages in the Unused Portion and During a Context Switch Period of a Web Browser Display Interface
US20020135614A1 (en) * 2001-03-22 2002-09-26 Intel Corporation Updating user interfaces based upon user inputs
US9715252B2 (en) 2011-08-24 2017-07-25 Z124 Unified desktop docking behavior for window stickiness
US9405459B2 (en) 2011-08-24 2016-08-02 Z124 Unified desktop laptop dock software operation
US20130104062A1 (en) * 2011-09-27 2013-04-25 Z124 Unified desktop input segregation in an application manager
US9268518B2 (en) 2011-09-27 2016-02-23 Z124 Unified desktop docking rules
KR100425667B1 (ko) * 2001-12-03 2004-04-06 엘지전자 주식회사 데이터스트림의 속성정보 처리방법 및 장치
US20030142140A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Adjusting the tint of a translucent window to convey status
US6954905B2 (en) * 2002-01-28 2005-10-11 International Business Machines Corporation Displaying transparency characteristic aids
US20030142137A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Selectively adjusting the order of windows in response to a scroll wheel rotation
US20030142141A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Displaying specified resource usage
US20030142133A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Adjusting transparency of windows to reflect recent use
US7146573B2 (en) * 2002-01-28 2006-12-05 International Business Machines Corporation Automatic window representation adjustment
US7046254B2 (en) * 2002-01-28 2006-05-16 International Business Machines Corporation Displaying transparent resource aids
US20030142149A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Specifying audio output according to window graphical characteristics
US20030142143A1 (en) * 2002-01-28 2003-07-31 International Business Machines Corporation Varying heights of application images to convey application status
US7742609B2 (en) * 2002-04-08 2010-06-22 Gibson Guitar Corp. Live performance audio mixing system with simplified user interface
US20030222921A1 (en) * 2002-06-04 2003-12-04 Bernard Rummel Automatic layout generation using algorithms
US20030222922A1 (en) * 2002-06-04 2003-12-04 Bernard Rummel Automatic layout generation
US20040001101A1 (en) * 2002-06-27 2004-01-01 Koninklijke Philips Electronics N.V. Active window switcher
US7516475B1 (en) * 2002-07-01 2009-04-07 Cisco Technology, Inc. Method and apparatus for managing security policies on a network
US7274787B1 (en) 2002-08-16 2007-09-25 Intervoice, Inc. Scheduled return to queue with priority (SRQP)
US7230946B2 (en) 2002-08-16 2007-06-12 Nuasis Corporation Remote agent access method to a VoIP contact center where high QoS is not supported
AU2003257054A1 (en) * 2002-08-16 2004-03-03 Nuasis Corporation Escalated handling of non-realtime communications
US8171420B2 (en) * 2002-08-16 2012-05-01 Intervoice, Inc. Automatic management of the visual space while performing a task
JP2004223110A (ja) 2003-01-27 2004-08-12 Nintendo Co Ltd ゲーム装置、ゲームシステムおよびゲームプログラム
NO20031586L (no) * 2003-04-08 2004-10-11 Favourite Systems As Vindussystem for datainnretning
US8127248B2 (en) * 2003-06-20 2012-02-28 Apple Inc. Computer interface having a virtual single-layer mode for viewing overlapping objects
WO2004114113A1 (en) * 2003-06-20 2004-12-29 Apple Computer, Inc. Computer interface having a virtual single-layer mode for viewing overlapping objects
US7568167B2 (en) * 2003-06-26 2009-07-28 Microsoft Corporation Non-persistent user interface for real-time communication
US20050055645A1 (en) * 2003-09-09 2005-03-10 Mitutoyo Corporation System and method for resizing tiles on a computer display
US20050166158A1 (en) * 2004-01-12 2005-07-28 International Business Machines Corporation Semi-transparency in size-constrained user interface
US7272790B2 (en) * 2004-03-05 2007-09-18 Nokia Corporation Method and device for automatically selecting a frame for display
US7694233B1 (en) 2004-04-30 2010-04-06 Apple Inc. User interface presentation of information in reconfigured or overlapping containers
KR101117835B1 (ko) * 2004-05-06 2012-03-22 다카토시 야나세 윈도우 표시시스템, 윈도우 표시방법, 프로그램 개발지원장치 및 서버장치
JP2005345549A (ja) * 2004-05-31 2005-12-15 Sumitomo Electric Ind Ltd 光モジュール
GB0416038D0 (en) * 2004-07-16 2004-08-18 Portland Press Ltd Document display system
US20060020903A1 (en) * 2004-07-26 2006-01-26 Shih-Yang Wang Window split system and method
US20060184891A1 (en) * 2005-02-17 2006-08-17 Parker Jason M Simplified interactive graphical user interfaces for display systems by removal of inactive windows after a time-out period
US20060224992A1 (en) * 2005-04-01 2006-10-05 Microsoft Corporation Graphical user interface management
US20060248150A1 (en) * 2005-04-29 2006-11-02 International Business Machines Corporation Methods and apparatus for managing and distinguishing instant messaging sessions and threads
US7546547B2 (en) 2005-05-26 2009-06-09 International Business Machines Corporation Method, apparatus and computer program product for implementing automatic reapportionment of graphical subwindows based upon sensed, dynamic changes
US8208072B2 (en) * 2005-08-05 2012-06-26 Samsung Electronics Co., Ltd. Apparatus for providing multiple screens and method of dynamically configuring multiple screens
KR100757867B1 (ko) * 2005-08-30 2007-09-11 삼성전자주식회사 멀티태스킹 환경에서의 사용자 인터페이스 방법 및 장치
US7783990B2 (en) 2006-05-05 2010-08-24 Microsoft Corporation Association of display elements
US8627225B2 (en) * 2006-06-09 2014-01-07 Honeywell International Inc. Apparatus and methods for ensuring closure of displays
US7681144B2 (en) * 2006-06-13 2010-03-16 Mlb Advanced Media, L.P. Prioritized presentation of content
US20080010608A1 (en) * 2006-07-05 2008-01-10 Honeywell International, Inc. Apparatus and methods for ensuring visibility of display window
KR101315953B1 (ko) * 2006-11-23 2013-10-08 엘지전자 주식회사 이동통신 단말기 및 이를 이용한 멀티화면 제공방법
US8527881B2 (en) * 2007-01-30 2013-09-03 Oracle International Corporation Enterprise web browser extension
KR100801993B1 (ko) * 2007-03-12 2008-02-12 김기연 멀티화면 콘텐츠 구현방법 및 구현 시스템
USD609714S1 (en) * 2007-03-22 2010-02-09 Fujifilm Corporation Electronic camera
US9489216B2 (en) * 2007-07-26 2016-11-08 Sap Se Active tiled user interface
US8468462B2 (en) * 2007-10-09 2013-06-18 Honeywell International, Inc. Display management in a multi-window display
US20090132954A1 (en) * 2007-11-20 2009-05-21 Honeywell International Inc. Apparatus and method for isolating problems in content loaded into a human-machine interface application
US8555193B2 (en) * 2008-01-17 2013-10-08 Google Inc. System for intelligent automated layout and management of interactive windows
US8434019B2 (en) * 2008-06-02 2013-04-30 Daniel Paul Nelson Apparatus and method for positioning windows on a display
US9405847B2 (en) * 2008-06-06 2016-08-02 Apple Inc. Contextual grouping of a page
US8312384B2 (en) * 2008-06-11 2012-11-13 Honeywell International Inc. Apparatus and method for fault-tolerant presentation of multiple graphical displays in a process control system
TWI386843B (zh) * 2008-07-03 2013-02-21 Wistron Corp 螢幕顯示區分割方法、螢幕顯示區分割系統,及電腦程式產品
US8306522B1 (en) * 2008-12-23 2012-11-06 Sprint Communications Company L.P. Dynamic interface for mobile devices
CN101465107B (zh) * 2008-12-31 2010-12-08 华为终端有限公司 一种显示装置、使用该显示装置的终端及显示方法
JP5470861B2 (ja) * 2009-01-09 2014-04-16 ソニー株式会社 表示装置及び表示方法
JP5133919B2 (ja) * 2009-02-19 2013-01-30 株式会社沖データ アプリケーションプログラム及び画像処理装置
KR101640460B1 (ko) 2009-03-25 2016-07-18 삼성전자 주식회사 휴대 단말기의 분할 화면 운용 방법 및 이를 지원하는 휴대 단말기
DE102009002136B4 (de) 2009-04-02 2014-10-30 Trumpf Werkzeugmaschinen Gmbh + Co. Kg Verfahren zum Darstellen einer aktuellen Taskliste auf der graphischen Benutzeroberfläche eines Steuerungscomputers einer Bearbeitungsmaschine
US8621387B2 (en) * 2009-06-08 2013-12-31 Apple Inc. User interface for multiple display regions
US8970448B2 (en) 2009-06-18 2015-03-03 Hiperwall, Inc. Systems, methods, and devices for manipulation of images on tiled displays
KR101636570B1 (ko) * 2009-10-28 2016-07-20 엘지전자 주식회사 출력표시영역 제어 장치 및 방법
US20110252356A1 (en) * 2010-04-13 2011-10-13 Robert Paul Morris Methods, systems, and computer program products for identifying an idle user interface element
US20120036471A1 (en) * 2010-08-04 2012-02-09 Misys Tool bars along lateral edges of a mobile computing device display
US20120311474A1 (en) * 2011-06-02 2012-12-06 Microsoft Corporation Map-based methods of visualizing relational databases
US20130104051A1 (en) 2011-09-27 2013-04-25 Z124 Unified desktop big brother application pools
US20160124698A1 (en) 2011-08-24 2016-05-05 Z124 Unified desktop triad control user interface for an application launcher
US20140040819A1 (en) * 2011-09-09 2014-02-06 Adobe Systems Incorporated Methods and systems for managing the presentation of windows on a display device
US9424439B2 (en) 2011-09-12 2016-08-23 Microsoft Technology Licensing, Llc Secure data synchronization
US8842057B2 (en) 2011-09-27 2014-09-23 Z124 Detail on triggers: transitional states
US11416131B2 (en) * 2011-09-27 2022-08-16 Z124 Unified desktop input segregation in an application manager
US20130080899A1 (en) 2011-09-27 2013-03-28 Paul E. Reeves Unified desktop big brother applications
US9164544B2 (en) 2011-12-09 2015-10-20 Z124 Unified desktop: laptop dock, hardware configuration
KR20130072744A (ko) * 2011-12-22 2013-07-02 삼성전자주식회사 휴대용 단말기에서 동적 디스플레이 분할을 위한 방법 및 장치
US9292158B2 (en) * 2012-04-17 2016-03-22 Franz Antonio Wakefield Method, system, apparatus, and tangible portable interactive electronic device storage medium; that processes custom programs and data for a user by creating, displaying, storing, modifying, performing adaptive learning routines, and multitasking; utilizing cascade windows on an electronic screen display in a mobile electronic interactive device GUI (graphical user interface) system
CN102780650A (zh) * 2012-07-21 2012-11-14 上海量明科技发展有限公司 即时通信交互界面调整的方法及客户端
KR101961860B1 (ko) 2012-08-28 2019-03-25 삼성전자주식회사 사용자 단말 장치 및 그 제어 방법
KR101957173B1 (ko) 2012-09-24 2019-03-12 삼성전자 주식회사 터치 디바이스에서 멀티윈도우 제공 방법 및 장치
US9977413B2 (en) 2013-03-11 2018-05-22 Honeywell International Inc. Apparatus and method for managing open windows in a graphical display for a representation of a process system
WO2014146292A1 (en) * 2013-03-22 2014-09-25 Nokia Corporation Selecting user interface view
KR20140142863A (ko) * 2013-06-05 2014-12-15 한국전자통신연구원 그래픽 편집기 제공 장치 및 그 방법
US10402034B2 (en) * 2014-04-02 2019-09-03 Microsoft Technology Licensing, Llc Adaptive user interface pane manager
US9870188B2 (en) * 2014-08-18 2018-01-16 Lenovo (Singapore) Pte. Ltd. Content visibility management
US10338765B2 (en) * 2014-09-05 2019-07-02 Microsoft Technology Licensing, Llc Combined switching and window placement
US10209849B2 (en) 2015-01-21 2019-02-19 Microsoft Technology Licensing, Llc Adaptive user interface pane objects
US10042655B2 (en) 2015-01-21 2018-08-07 Microsoft Technology Licensing, Llc. Adaptable user interface display
KR20180024238A (ko) * 2016-08-29 2018-03-08 삼성전자주식회사 번-인을 감소시키기 위한 전자 장치 및 컴퓨터 판독 가능한 기록 매체
CN107015721A (zh) * 2016-10-20 2017-08-04 阿里巴巴集团控股有限公司 一种应用界面的管理方法和装置
KR101873655B1 (ko) * 2016-11-30 2018-07-02 엘에스산전 주식회사 모니터링 화면 표시 방법
US11416140B2 (en) * 2018-01-18 2022-08-16 Hewlett-Packard Development Company, L.P. Touchscreen devices to transmit input selectively
US10831331B2 (en) * 2018-03-09 2020-11-10 International Business Machines Corporation Window control for simultaneously running applications
CN112351324A (zh) * 2020-10-27 2021-02-09 深圳Tcl新技术有限公司 模拟鼠标控制方法、装置、设备及计算机可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63191221A (ja) * 1987-02-04 1988-08-08 Hitachi Ltd 計算機システムの表示画面分割方式
JPS6428723A (en) * 1987-07-24 1989-01-31 Mitsubishi Electric Corp Multi-window control system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4660154A (en) * 1984-04-06 1987-04-21 Tektronix, Inc. Variable size and position dialog area display system
JPS62276673A (ja) * 1986-05-26 1987-12-01 Toshiba Corp マルチウインドウ表示装置
JPH01267725A (ja) * 1988-04-20 1989-10-25 Hitachi Ltd マルチウインドウシステムにおけるウインドウ操作方式
US5060170A (en) * 1989-08-09 1991-10-22 International Business Machines Corp. Space allocation and positioning method for screen display regions in a variable windowing system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63191221A (ja) * 1987-02-04 1988-08-08 Hitachi Ltd 計算機システムの表示画面分割方式
JPS6428723A (en) * 1987-07-24 1989-01-31 Mitsubishi Electric Corp Multi-window control system

Also Published As

Publication number Publication date
CA2075440C (en) 1996-11-19
BR9204649A (pt) 1993-06-22
JPH0772857B2 (ja) 1995-08-02
EP0548645B1 (en) 1998-03-04
CA2075440A1 (en) 1993-06-21
DE69224603T2 (de) 1998-11-05
EP0548645A1 (en) 1993-06-30
CN1034031C (zh) 1997-02-12
DE69224603D1 (de) 1998-04-09
KR960001098B1 (ko) 1996-01-18
TW209287B (ja) 1993-07-11
CN1073787A (zh) 1993-06-30
US5390295A (en) 1995-02-14

Similar Documents

Publication Publication Date Title
JPH05233196A (ja) ディスプレイ・スクリーン上に複数のウィンドウを能率的に表示するための方法及び装置
JP2965103B2 (ja) コンピュータ表示画面にウィンドウを表示するための方法及び装置
US5640498A (en) Accessbar arbiter
US5548702A (en) Scrolling a target window during a drag and drop operation
US5745115A (en) Graphical user interface having a shared menu bar for opened applications
US5420605A (en) Method of resetting a computer video display mode
JP3431795B2 (ja) ウィンドウのサイズ変更方法及びコンピュータ・システム
US6049326A (en) System and method for dual browser modes
US6002400A (en) Method and apparatus for handles to components in graphical windows user interface
US5482050A (en) Method and system for providing safe patient monitoring in an electronic medical device while serving as a general-purpose windowed display
US5777616A (en) Data processing system and method for invoking a function of a multifunction icon in a graphical user interface
JP2659917B2 (ja) グラフィック操作方法及び装置、グラフィック・ユーザ・インターフェースを提供する方法並びにユーザ操作可能多重オーバラップ・オブジェクトの選択された1つへのアクセスを提供する装置
JP2572471B2 (ja) アイコンを動的に変更する方法及び装置
US20060224992A1 (en) Graphical user interface management
US6184883B1 (en) Computer system, program product and method utilizing in-focus switch delay for user interface components
JPH0754506B2 (ja) オーバーラツプしたプログラムのアクセス方法
JPH0467647B2 (ja)
US5900872A (en) Method and apparatus for controlling the tracking of movable control elements in a graphical user interface
JP2002099370A (ja) 仮想デスクトップ間をスイッチするための方法、システム、およびコンピュータ・プログラム製品
KR20030076563A (ko) 컴퓨터 디스플레이에서 뷰를 조정하기 위한 방법, 시스템및 컴퓨터 프로그램
US6337702B1 (en) Method and system for graphically indicating a valid input within a graphical user interface
US5732228A (en) Method and system for per widget graphical pointer control within a data processing system graphical user interface
JPH036631A (ja) 適用業務プログラムの状況の監視方法
KR20050094850A (ko) 컴퓨터 스크린 상에 뷰들 생성
JPH07200242A (ja) データ選択方法