JPH0559447B2 - - Google Patents

Info

Publication number
JPH0559447B2
JPH0559447B2 JP61112632A JP11263286A JPH0559447B2 JP H0559447 B2 JPH0559447 B2 JP H0559447B2 JP 61112632 A JP61112632 A JP 61112632A JP 11263286 A JP11263286 A JP 11263286A JP H0559447 B2 JPH0559447 B2 JP H0559447B2
Authority
JP
Japan
Prior art keywords
window
display
data
priority
windows
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
JP61112632A
Other languages
English (en)
Other versions
JPS62269275A (ja
Inventor
Keiichi Nakane
Hiroyuki Koreeda
Naomichi Nonaka
Hiroaki Aotsu
Teiji Kuwabara
Masanori Kawase
Kazunari Suzuki
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.)
Hitachi Ltd
Hitachi Micro Software Systems Inc
Original Assignee
Hitachi Ltd
Hitachi Micro Software Systems Inc
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 Hitachi Ltd, Hitachi Micro Software Systems Inc filed Critical Hitachi Ltd
Priority to JP61112632A priority Critical patent/JPS62269275A/ja
Priority to US06/920,425 priority patent/US4954818A/en
Publication of JPS62269275A publication Critical patent/JPS62269275A/ja
Publication of JPH0559447B2 publication Critical patent/JPH0559447B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)
  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、表示メモリを有するラスタ・スキヤ
ン型の表示装置における画面制御方法に係り、特
に複数のデータを一台の表示装置の画面上に同時
に表示するに好適な多重画面制御方法に関する。
〔従来の技術〕
従来の画面制御方法は、そのほとんどが一台の
表示装置に同時に複数のデータを表示することは
できないため、複数のデータを同時に見たい場合
には表示装置を複数台設置しなければならず、高
価なシステムになりがちであつた。ところで、今
日では、パーソナル・コンピユータをはじめとす
るパーソナル・ユースの機器においては、表示装
置を基本とする対話形処理が中心となつてきてい
る。このような状況において、複数のデータを一
台の表示装置に同時に表示することは、ユーザの
操作性および処理性を向上させる上で重要な問題
となり、内外の各社にて実施の徴しにある。この
点に関しては、日経エレクトロニクス、1984年、
1月30日号における“パーソナル・コンピユータ
操作性向上の決め手となるマルチウインドウ化ソ
フト”と題する記事に状況が詳述されている。ま
た、より具体的な多重画面制御方法の一例が、
BYTE,Feb.1983における‘The
LisaComputer System'に詳述されている。
〔発明が解決しようとする問題点〕
ところで、前述の多重画面制御方法において
は、各表示データの表示優先度とそれらを表示す
るタスク(要求元のプログラム)の実行優先度と
の関係が必ずしも明確ではない。このため、特に
マルチタスク・オペーテイング・システムの制御
下で各表示データを表示するタスクを制御してい
る場合に、各表示データの相互の表示関係が変つ
たりあるいは、最前面の表示データを操作者が更
新している場合に、他のタスクによる新たな表示
データが上書きされたりすることなどが生じ、正
常な画面操作が困難になることがあつた。
本発明の目的は、これらの問題点に鑑み、複数
のデータを同一の表示装置上に重ね合せを許して
同時に表示する際に所定の操作が終了するまで、
その時の表示優先度を固定して新たなデータの表
示を抑止することを可能とする多重画面制御方法
を提供することにある。
〔問題点を解決するための手段〕
上記目的を達成するため、表示メモリに格納す
る複数の表示データの各々に関して、その表示位
置、その相互の表示優先度を管理する第1の制御
テーブルと、表示中の複数データの内で最も優先
度の高いデータに関する優先ウインドウ宣言およ
び表示要求待ち行列を管理する第2の制御テーブ
ルを設けることにより、達成される。
〔作用〕
すなわち、最前面の表示データを表示中のタス
クが優先ウインドウ宣言を発行可能としておき、
この優先ウインドウ宣言が成されると第2の制御
テーブルに設定され、他のタスクが新に表示要求
を出したり、既に表示中のデータの表示優先度を
変更したりする場合、第2の制御テーブルの優先
ウインドウ宣言をチエツクすることにより、第2
の制御テーブルの表示要求待ち行列に待ち状態と
され、これら表示要求又は表示変更要求が抑止さ
れることになり、最前面の表示データを更新中の
操作者、タスクは他のデータ表示タスクから何の
干渉も受けずに処理を進めることが出来、あたか
も、自分がその表示画面を占有しているかの如き
操作が可能になる。
〔実施例〕
以下、本発明の一実施例を図を用いて説明す
る。
第2図は、本発明に係る計算機システム、たと
えばワード・プロセツサやパーソナル・コンピユ
ータの如きシステムの構成例を示すものである。
システムは、主メモリ(MM)10、処理装置
(CPU)11、図形表示装置(GPU)20、表示
デイスプレイ(D)19、磁気デイスク(DISC)
14、磁気デイスク制御装置(DC)13、キー
ボード(KB)16、KB制御装置(KBC)15、
マウス等のポインテイング・デバイス(PD)1
8、PD制御装置(PDC)17、プリンタ(PR)
29、PR制御装置(PRC)28および共通バス
12などから構成される。
またGPU20は第2図bに示すように、共有
メモリ(SM)21、図形表示処理装置(GP)
22、表示メモリ(FM)23、および表示デイ
スプレイ制御装置(DC)24を内部バス25に
て接続したものである。
第2図を用いて、表示の方法を簡単に説明す
る。同図aにおいて、CPU11にて実行中のプ
ログラムP1により、D19に図形あるいは文字
を表示する場合には、まず表示しようとする図形
あるいは文字データ(これらは一般的には図形描
画コマンド列や文字コード列である)をプログラ
ムP1によつてMM10からSM21に転送し、次
いでGP22に実行要求を出す。実行指示を受け
たGP22は、SM21から該図形データあるい
は文字データを取り出し、該データをD19上の
各表示点に対応したドツト・データに展開し、
FM23上の表示位置に対応した箇所に該ドツ
ト・データを格納する。一方、D19の表示制御
装置DC24は、一定周期でFM23をスキヤン
し、その内容に従つてD19に表示を行つてい
る。従つて、FM23に格納された該ドツト・デ
ータは、DC24によつて直ちにD19上に表示
されることになる。
第3図a〜fは本発明に係る多重画面表示方式
による表示例を説明するものである。第3図aは
D19の画面30の矩形表示領域(これを以後ウ
インドウと呼ぶ)31に一つの一般データを表示
した例であり、b,cも同様にウインドウ32,
33に夫々一つの一般データを表示した例であ
る。第3図dは、同図a,b,cの表示内容を、
本発明に係る多重画面表示方式を用いて画面30
に同時に表示した例である。ここでは、ウインド
ウは、31,32,33の順に表示されたものと
して、即ちウインドウ33の表示優先度が最高で
あるとして表わしてある。
第3図eは、同図dの状態において、特殊デー
タの一つであるメニユー・コマンドをウンドウ3
6に表示した例であり、第3図fは、同図dの状
態において、特殊データの一つである緊急メツセ
ージをウインドウ35に表示した例である。
ここで、メニユー・コマンドや緊急メツセージ
は、普通のデータとは異り、データそのものがほ
ぼ定式化されており、かつその表示応答性の良い
ことが要求されるため、普通のデータと区別して
特殊データと呼ぶこととする。これに対する普通
のデータは一般データと呼ぶことにする。この呼
称に合わせて、特殊データを表示するウインドウ
およびそれによつて隠される表示データの退避エ
リアを夫々特殊ウンドウ、特殊退避バツフアと呼
ぶ。また、一般データを表示するウインドウ、そ
の退避エリアを夫々、一般ウインドウ、一般退避
バツフアなどと呼ぶ。
ここで、上記で説明した多重画面表示例におい
て、表示データ、重なりデータについて夫々の格
納場所を説明する。第1図a,bは本発明に係る
多重画面表示方式をデータの格納場所に着目して
説明するための図面である。同図aにおいて、
MM10は後述の制御プログラム600,700,800,
900,100,110,120などを含むプログラム格納エ
リア1、後述の制御テーブル40〜45などを含
む制御テーブル格納エリア2、およびユーザのプ
ログラムや表示データなどを格納するデータ・エ
リア3から成つている。SM21は、CPU11に
よつてMM10のデータ・エリア3から送られて
来る表示に必要なデータを格納するコマンド・エ
リア4、デイスクのような外部メモリ14やMM
10に格納或は退避されていた表示用ドツトデー
タをFM23に転送するための送出バツフア・エ
リア5、およびFM23の表示ドツト・データを
外部メモリ14やMM10に退避あるいは格納す
るための受信バツフア6とから成る。FM23
は、D19に表示中のドツト・データを格納して
おく表示バツフア7、特殊データ用ウインドウに
よつて重ねられたドツト・データを退避する特殊
退避バツフア9、および一般データ用ウインドウ
同志によつて重ねられたウインドウのドツト・デ
ータを退避する一般退避バツフア8とから成る。
また外部メモリ14にはウインドウのドツト・デ
ータの退避エリア39を設ける。
さて、第1図bに示した画面30の如き多重画
面表示がされたとすると、FM23の表示バツフ
ア7には図示した画面のドツト・データが格納さ
れており、緊急メツセージのウインドウ35によ
つて重ねられた直前の表示ドツト・データがFM
23の特殊退避バツフア9に退避されている。ま
た、FM23の一般退避バツフア8には、ウイン
ドウ33を表示した時に退避されたウインドウ3
2の全体の表示ドツト・データが格納されてい
る。さらに、SM21の受信バツフア6には、ウ
インドウ32を表示した時に退避されたウインド
ウ31の全体の表示ドツト・データが格納されて
いる。そして、外部メモリ14の退避エリア39
には、ウインドウ31を表示した時に退避された
ウインドウ37の全体の表示ドツト・データが格
納されている。尚、ここでは、簡単のためにFM
23の一般退避バツフア8およびSM21の送信
バツフア5、受信バツフア6は夫々画面1面分し
か存在しないとして説明するが、それらは各々複
数画面分用意するのが一般的である。
第4図は本発明に係る制御テーブル類を示した
ものである。
ウインドウ状態管理ブロツク(WSMB)40
は、ウインドウ全体の状態を管理するものであ
り、以下のフイールドから構成されている。ウイ
ンドウ状態フラグ(STATUS)401は後述す
る優先ウインドウ宣言の有無を示すものであり、
現ウインドウ占有タスク番号(TN)402は最
前面のウインドウを使用中のタスク番号を示すも
のであり、ウインドウ占有待行列ポインタ
(WAITQ)403は優先ウインドウ宣言中など
の要因によりウインドウ使用を待たされているタ
スクの待行列ポインタであり、WCBリスト・ポ
インタ(WLIST)41は後述のウインドウ制御
ブロツク(WCB)42を接続するポインタであ
る。ここで、WAITQ403に作られるタスクの
待行列は、一般的なOSで用いられるように、タ
スク制御ブロツク(TCB)46をつなげるもの
とする。ウインドウ制御ブロツク(WCB)42
は、各々のウインドウの大きさや表示位置、表示
するデータ番号、ウインドウタイプ、ウインドウ
の重なりによる表示データの退避エリア情報など
を管理するためのものであり、ウインドウが定義
される度毎にWCBリストポインタ(WLST)4
1に表示優先度の高い順に接続される(即ち、
WLST41に該WCB42の先頭アドレスが格納
される。) WCB42の構成は、次に低い表示優先度を有す
るウインドウに関するWCBを指すWCBポインタ
(WPT)421、対応するウンドウ番号(WN)
422、そのウインドウ種別(WTYPE)42
3、表示すべきデータ番号(DN)424、ウイ
ンドウの左上隅座標(W1)425、右下隅座標
(W2)426、退避エリアを示す退避エリア種別
(SATYPE)427、退避エリア番号(SAN)
428などから成る。なお、WLST41、WCB
のWPT421を継ぐリストは双方向リストとす
る。
また、本実施例の以下の説明では、次の記号を
用いることとする。すなわち、WTYPE423と
しては1が一般ウインドウ、2は特種ウインドウ
を表わすこととし、またSATYPE427として
FがFM23の一般退避エリア、SがSM21の
受信バツフア、DがDISC14の退避エリアを現
わすこととする。
また、FM23の一般退避バツフア8、SM2
1の受信バツフア6、外部メモリ14の退避エリ
ア39の各エリアと退避されたウインドウ表示デ
ータの関係は、夫々、一般退避バツフア制御ブロ
ツク(FMSACB)43、受信バツフア制御ブロ
ツク(SMSACB)44、退避エリア制御ブロツ
ク(SSSACB)45にて管理する。
夫々の制御ブロツクの構成は類似しており、用
意した退避領域の数(CASEN)、使用中の領域
の数(USEDN)、および各領域に退避されたウ
インドウの番号(WN)とその領域の先頭番地
(ADDR)とから成つている。
これらの各フイールドの使用法は、以下の如く
である。たとえば、FMSACB43を例にとる
と、ある一般ウインドウAを表示しようとしたと
き、既にウインドウBが表示されていたとする。
このとき、FM23の一般退避バツフア8などへ
ウインドウBのデータを退避する訳であるが、ま
ずFMSACB43のCASEN431とUSEDN43
2とを比較し、前者の方が大きければFM23の
一般退避バツフアには末だ空きエリアがあると判
断する。そして、WN433が零であるかを調べ
て空きを見つけ、そのときに対応するADDR4
34より一般退避バツフア8内にある退避エリア
の先頭アドレスを得て、そのエリアへウインドウ
Bのデータを退避する。そして、そのときのWN
433にウインドウBのウインドウ番号を設定
し、さらにFMSACB43のUSEDN432を1
だけ加算する。一方、ウインドウBのデータを表
示画面上に回復する場合は、FMSACB43の
WN433がウインドウBのウインドウ番号に合
致するものを探し出し、そのときの対応する
ADDR434によつて示される一般退避バツフ
ア8内の退避エリアに格納されているウインドウ
BのデータをFM23の表示バツフア7へ回復す
る。そして、FMSACB43の該WN433を零
にクリアし、かつUSEDN432を1だけ減算す
る。
さて、本発明では、これまでに説明してきたよ
うにウインドウ間で重なり合つたデータの退避デ
ータとして、FM23の表示バツフア7に展開し
格納されるドツト・データを取扱う。このことに
より、表示位置の変更の際の表示データの再表示
に要する処理を、SM21に格納された図形ある
いは文字データからGP22を介して再びドツ
ト・データに展開する場合に比較し短時間で実行
できることができる。
また、本発明では、一般ウインドウ間で重なり
合つたデータの退避方法として、ウインドウを新
たに表示するときには、その直前に表示されたウ
インドウが何であつたかを記憶し、その直前に表
示されていたウインドウ全体のドツト・データを
退避する方法を採用する。この方法によつて、退
避回復のためのデータ転送回数が減少でき、退避
状況の管理の負担が軽減される。この点に関して
は、本出願人が先に出願した特願昭60−231191
号・「多重画面表示制御方式」に詳しい。
第5図a〜pは、本実施例に係る多重画面表示
方式の画面表示例とその時の制御テーブルに
WCB42の状態を併記したものである。
第6図〜第14図は、本実施例に係る多重画面
表示方式の処理手順を示したものである。本実施
例では、表示データの書込み(WRITE
WINDOW)600、表示済データの最優先表示
(POP UP WINDOW)800、表示領域の移動
((MOVE WINDOW)100、および表示デー
タの消去(CLEAR WINDOW)1200、優先
ウインドウ宣言(SET WRSV)1400、優先
ウインドウ解除(RESET WRSV)1500の
各コマンドの処理手順を示すことにする。
以下に第5図a〜pおよび第6図〜第14図を
用いて各処理手順を説明する。
() WRITE WINDOW 第5図a〜pは、WRITE WINDOWコマンド
を用いて画面30にウインドウ31,32,33
を次々に定義し、夫々データA,B,Cを表示し
て行く様子を示したものである。まず第5図aに
おける本コマンドの処理手順を第6図を用いて説
明する。GP22はウインドウ番号WN=1、ウ
インドウ種別WTYPE=1(一般)、セグメントデ
ータ番号DN=A、ウインドウ左上・右下座標
W1=A1、W2=A2を伴つた本コマンドを受ける
と、まずコマンドのパラメータWTYPEより表示
しようとするウインドウは特殊ウインドウか否か
を判定する(ブロツク602)。特殊ウインドウ
(WTYPE=2)であればブロツク610へ、そ
うでなければブロツク604へ処理を進める。今
の場合はWTYPE=1(一般)なので、ブロツク
604へ進み、さらにWLIST41に接続された
WCB42のWTYPE423を用いて既に特殊ウ
インドウが表示されているか否かを判定する。今
の場合は、該ウインドウが初めて表示されるので
判定は否となり、処理はブロツク606へ進む。
ブロツク606では、優先ウインドウ宣言が既に
成されているかをWSMB40のSTATUS401
を用いて判定する。今の場合は、ここでも判定は
否となり、ブロツク610へ制御を進める。ブロ
ツク610では、空いているWCB42aを獲得
し、WLST41で指されるWCBリストの先頭に
該WCB42aを挿入する。次いで、該WCB42
aにWN=1、WTYPE=1、DN=A、W1
A1、W2=A2を登録する(ブロツク620)。次
いで、WSMB40のSTATUS401に“優先ウ
インドウ宣言なし”TN402に本コマンドを発
行したタスクの番号を登録する(ブロツク62
5)。さらにWCB42aのWPT421を調べ既
に表示中のウインドウがあつたか否かを判定する
(ブロツク630)。今の場合は、該ウインドウが
初めて表示されるので、判定は否となり処理はブ
ロツク650へ進む。最後に、GP22は指定さ
れた該データAをドツト・データに展開し、FM
23のウインドウ座標A1,A2の矩形領域に相当
する部分に該ドツト・データを書き込む。この結
果、画面30は第5図aの如くなり、そのときの
WCB42aが同図gの如くなる。
ところで、ブロツク604にて既に特殊ウイン
ドウが表示されていると判定された場合、あるい
はブロツク606にて既に優先ウインドウ宣言が
されていると判定された場合には、新たなウイン
ドウを開くことを抑止し、ウインドウを開くこと
のできる状態まで、本コマンドを発行したタスク
を待たせることにする。そこで、上記の状況が発
生した場合には、ブロツク670にて、ウインド
ウ表示を要求したタスクのTCB46をウインド
ウ表示待ち状態にし、WSMB40のWAITQ4
03にそのTCB46をつなげる。次いでタスク
切換えのため、タスク・デイスパツチヤへ制御を
渡す(ブロツク680)。これにより、本コマン
ドを発行したタスクは、特殊ウインドウが表示消
去されるまで、あるいは優先ウインドウ宣言が取
消されるまで、待たされることになる。
次に、ウインドウ31の上にウインドウ番号
WN=2、ウインドウ種別WTYPE=1、セグメ
ントデータ番号DN=B、ウインドウ座標W1
B1、W2=B2を伴つたWRITE WINDOWコマン
ドにより、一般ウインドウ32を定義し、データ
Bを第5図bの如く表示する場合を考えてみる。
GP22における該コマンド処理手順はブロツク
602〜630までは前記と同様である。ブロツ
ク630における既に表示中のウインドウの有無
の判定は、今度はYES(即ち有)であるので、処
理はブロツク640へ進み、サブルーチン
(SAVE WINDOW)700を実行する。
SAVE WINDOW700の処理手順を第7図
に示す。SAVE WINDOW700は、ウインド
ウ種別を判定し、特種ウインドウ(WTYPE=
2)であれば、特殊退避バツフア9への重なりド
ツト情報の退避を行ない、一般ウインドウ
(WTYPE=1)であれば、一般退避バツフア8、
受信バツフア6、退避エリア39の何れか適当な
領域へ既に表示中のウインドウ中、最も優先度の
高いウインドウのドツト情報の退避を行なうもの
である。SAVE WINDOW700へ渡される引
数は、表示ドツト情報を退避したいウインドウに
対応するWCBのアドレスと、重ねようとする新
ウインドウのウインドウ種別である。今の場合
は、WCB42aのアドレスとなる。さて、
SAVE WINDOW700の処理においては、ま
ず、与えられたウインドウ種別より、特殊ウイン
ドウか否かを判定する(ブロツク715)。もし、
ここで特殊ウインドウであれば、ブロツク760
に進み、特殊ウインドウのWCBより特殊ウイン
ドウの位置座標W1,W2を得、それに対応する表
示バツフア7内のドツト情報を特殊退避バツフア
9へ退避し(ブロツク760)、本サブルーチン
を呼び出したルーチンへ制御を戻す(ブロツク7
80)。しかし、今の場合はウインドウ32は、
特殊ウインドウでなく、一般ウインドウであるの
で、ブロツク720以降に進み、夫々の退避エリ
アの状況に従い下記の処理を行う。
まず、FM23の一般退避バツフア8に空き領
域があればブロツク765〜775を処理し、指
定されたWCBより、重ね合せられるウインドウ
の座標W1,W2を得(今の場合A1,A2)、表示バ
ツフア7の対応する情報を空いている一般退避バ
ツフア8へ退避し、FMSACB43の対応するエ
リアに退避したウインドウ番号を設定し、ブロツ
ク780へ行き、呼出しルーチンへ戻る。
また、FM23の一般退避バツフア8がもし満
杯で、SM21の受信バツフア6に空き領域があ
る場合には、一般退避バツフア8の一ケースを受
信バツフア6に移し(ブロツク745〜755)、
その空いた一般退避バツフア8へ先と同様に表示
バツフア7内の重なり情報を退避する(ブロツク
770〜775)。
また、もしFM23の一般退避バツフア8も、
SM21の受信バツフア6も満杯の場合には、受
信バツフア6の一ケースを退避エリア39へ移し
(ブロツク30〜740)、空いた受信バツフア6
へ一般退避バツフア8の一ケースを移し(ブロツ
ク750〜755)、空いた一般退避バツフア8
へ先の説明と同様に表示バツフア7内の重なり情
報を退避する(ブロツク770〜775)。
今の場合には、一般退避バツフア8に空きがあ
るので、ブロツク765〜775を処理し、その
結果WCB42aのSATYPE427は同図hにみ
るように、一般退避バツフア8を示す‘F'が設定
され、SAN428には‘1'が設定される。そし
て、本サブルーチンの呼び出し元へ制御を戻す。
今の場合には、第6図のWRITE WINDOW60
0のブロツク650に制御が戻される。そこで、
GP22は、指定されたデータBをドツト・デー
タに展開し、FM23の表示バツフア7のウイン
ドウ座標B1,B2に相当する矩形領域に該ドツ
ト・データを書込む。この結果、画面30は第5
図bの如くなり、そのときのWBC42a,42
bの関係は同図hの如くなる。
さらに、第5図cの如くウインドウ31,32
の上にウインドウ33を定義してデータCを表示
する場合を考えてみる。GP22はウインドウ番
号3、ウインドウ種別1、セグメント・データ番
号C、ウインドウ座標W1=C1,W2=C2を伴つた
WRITE WINDOWコマンドを受取ることによ
り、既に説明したのと同じ第6図および第7図の
処理手順を実行する。この時、一般退避バツフア
8は1ケースしかないとすると、空きがないの
で、SAVE WINDOW700の処理はブロツク
750〜755,770〜780を実行し、一般
ウインドウ31の表示データは受信バツフア6
へ、一般ウインドウ32の表示データは一般退避
バツフア8へ退避される。この結果、WCB42
の関係は第5図iの如くなる。すなわち、一般ウ
インドウ31の表示データに関するWCB42a
のSATYPE427には、受信バツフア6を示す
‘S'が設定され、SAN428には‘1'が設定さ
れる。
() POP UP WINDOW 第5図dは、第5図cの状態において最も表示
優先度の低いウインドウ31をPOP UP
WINDOWコマンドを用いて最も表示優先度の高
いウインドウとして最前面に表示するようにした
結果を示したものである。本コマンドの処理手順
を第8図と第9図を用いて説明する。
GP22は、ウインドウ番号WN=1を伴つた
本コマンドを受けると、まず、第6図のWRITE
WINDOWコマンドでも説明したのと同様に、既
に特殊ウインドウが表示されているか否か、およ
び既に優先ウインドウ宣言が成されているか否か
を判定し(ブロツク802,804)、両者とも
否の場合のみ、ブロツク810へ進み、正規の処
理を行なう。もし、上記の2つの条件の内一方で
も成立すれば、該当タスクを待状態とし、タス
ク・デイスパツチヤへ制御を移す。
GP22は、ブロツク810で、指定された
WN=1に対応するWCB42aをWLST41で
指されるリストをサーチすることにより探し出
し、該WCB42aの先頭アドレスを求める(ブ
ロツク810)。このとき指定ウインンドウWN
=1よりも表示優先度の高いものがなかつた場合
には、本コマンド処理は直ちに終了する(ブロツ
ク820)。今の場合には、表示優先度の高いも
のが存在するので、制御はブロツク830へ進め
られる。GP22は、先に得たWCB42a先頭ア
ドレスをWLST41に登録することにより、
WLIST41にて示されるリストの先頭に該WCB
42aをつなぎ換える(ブロツク830)。次い
でGP22はサブルーチンSAVE WINDOW70
0を実行して新に重ねられる既表示情報を退避し
(ブロツク840)、引続きサブルーチン
RESUME WINDOW900を実行してそれまで
重なり合いにより退避されていたウインドウWN
=1に関するドツト情報を回復し該ウインドウの
すべてのデータを再表示させる。
ブロツク840にて、サブルーチンSAVE
WINDOW700に与えられる引数は、先に求め
たWCB42aを接続し直す前までに、WLST4
1のリストの先頭につながれていたWCB42c
の先頭アドレスとウインドウ種別WTYPEであ
る。サブルーチン700の処理手順は先に説明し
たので、ここでは省略するが、サブルーチン70
0を処理した結果、ウインドウ31は退避エリア
39へ、ウインドウ32は受信バツフア6へ、ウ
インドウ33は一般退避エリア8へ退避され、こ
の時の各制御テーブルの状態は第5図pの如くな
る。
ブロツク850にてサブルーチンRESUME
WINDOW900に渡される引数は、重なりデー
タを回復しようとするウインドウ31に対応する
WCB42a先頭アドレスである。RESUME
WINDOW900の処理手順を第9図に示す。
RESUME WINDOW900に制御を移した
GP22は、まずWCBt42aよりウインドウ3
1に対応するウインドウ番号、退避エリア種別、
退避エリア番号を求める(ブロツク905)。次
いで、退避エリア種別を判定し(ブロツク91
0)、夫々の退避エリア種別に応じた処理を行な
い(ブロツク915〜920,925〜930,
935〜940)、本サブルーチンの呼出し元へ
戻る(ブロツク945)。各退避エリア種別毎に
処理する内容は細かくは異なるが、マクロには以
下の如くである。即ち、対応する退避エリア制御
ブロツクより、指定されたWNに一致する退避エ
リアのアドレスを求め、該当エリアより退避デー
タを取出しFM23の表示バツフア7内の元のウ
インドウ表示エリアに相当する位置へ、該データ
を転送し、退避エリア制御ブロツクの該当エリア
をクリアし、使用中エリア数を−1しておく。今
の場合には、一般ウインドウ31の退避情報は外
部メモリ14の退避エリア39より取出される。
そして、全ての処理を終えたところで、POP
UP WINDOWコマンド800へ戻り、コマンド
全体の処理を終了する。以上の結果、画面30は
第5図dの如くなり、その時のWCBの関係は同
図jの如くなる。
() MOVE WINDOW 第5図eは、第5図dにおける最も表示優先度
の高い一般ウインドウ31の表示位置をMOVE
WINDOWコマンド100を用いて新らたなウイ
ンドウ34に移動させた結果を示したものであ
る。本コマンドの処理手順を第10図を用いて説
明する。
移動したいウインドウ番号WN=1、新しいウ
インドウ表示位置座標W1N=A5,W2N=A6を
伴つた本コマンドを受取つたGP22は、まず
WN=1に対応するWCB42aをWLST41に
て指されるWCBリストより探し出す(ブロツク
101)。次いで、SAVE WINDOWサブルーチ
ンを呼び出しFM23の表示バツフア7よりウイ
ンドウ位置A1,A2に相当する部分のドツト情報
を一般退避バツフア8に退避する(ブロツク10
2)。そして、WCB42aに新しいウインドウ位
置(A5,A6)を登録する(ブロツク103)。
ひき続き、そのウインドウエリアで隠されてい
た他のウインドウ内容を再表示するために第11
図に示すサブルーチンRESUME ALL WIN11
0を実行する(ブロツク104)。RESUME
ALL WIN110への引数はWCB42aの先頭
アドレスのみでよい。
RESUME ALL WIN110を実行しはじめた
GP22は、まず、FM23上のウインドウ位置
A1,A2に相当する領域をクリアする(ブロツク
115)。このとき背景色が指定されていれば、
背景色でその領域を塗りつぶす。
次いで、WLST41のリストより、最も優先
度の低いウインドウのWCBアドレスを求める。
(ブロツク120)そして、該ウインドウの退避
データを、RESUME WINDOWサブルーチン9
00を用いて再表示し(ブロツク125)、さら
に、次に表示優先度の高いウインドウのWCBア
ドレスを求め(ブロツク130)、WLST41の
リストの先頭に至るまで、先述のブロツク125
〜130の処理を実行する。この結果、必要なウ
インドウについてはその表示データは全て再現さ
れることになる。
以上の結果、画面30は第5図eの如くなり、
その時の各制御テーブルの状態は同図kの如くな
る。
() CLEAR WINDOW 第5図fは表示優先度の最も高いウインドウ3
4をCLEAR WINDOWコマンドを用いて消去し
た結果を示したものである。本コマンドの処理手
順を第12図を用いて説明する。尚、本コマンド
への引数はウインドウ番号WNとウインドウ種別
WTYPEだけでよい。
ウインドウ番号WN=1、ウインドウ種別
WTYPE=1を伴つたCLEAR WINDOWコマン
ド120を受付けたGP22は、直ちにWN=1
に対応するWCB42aの先頭アドレスを求める
(ブロツク1210)。次いで、WCB42aを
WLST41で示されるリストより削除し、空き
状態にする(ブロツク1230)。さらに、
WSMB40の優先ウインドウフラグSTATUS4
01、ウインドウ使用中タスク番号402をクリ
アする(ブロツク1231)。そして、特殊ウイ
ンドウか否かを判定し(ブロツク1240)、そ
うであればブロツク1260へ進み、特殊ウイン
ドウによつて隠されていた表示情報をフレーム・
メモリの特殊退避エリアより取出し、フレーム・
メモリの元の位置へ戻す。今の場合、一般ウイン
ドウについてであるので、ブロツク1250へ進
む。ブロツク1250では、サブルーチン
RESUME ALL WIN110を実行し、先の
MOVE WINDOW100の説明で述べたと同様
にして、ウインドウWN=1によつて隠されてい
たドツト情報を再表示する(ブロツク1250)。
最後に、ウインドウ表示待ちのタスクかあるか否
かをWSMB40のWAITQ403を用いて調べ、
タスクの待行列が存在すれば、該当タスクの待行
列を解除し、実行待状態とする(ブロツク127
0,1280)。以上の結果、画面30は第5図
f、関連制御テーブルは同図lの如くなる。
第5図mは、同図fの状態にて特殊ウインドウ
35が表示された場合の画面30を示したもので
ある。この処理は先に説明したWRITE
WINDOWコマンド600をウインドウ種別=2
(特殊)として発行することにより実行される。
この結果、関連制御テーブルは同図nの如くな
る。なお、特殊ウインドウによつて重ねられた部
分を退避するエリアは、FM23の特殊退避エリ
ア9に限られているため、WCBのSTYPE42
7には何も記録されない。
() SET WRSV 第13図は優先ウインドウ宣言コマンドSET
WRSV1400の処理手順を示したものである。
本コマンドを受けたGP22は、まず、本コマ
ンドを発行したタスクが現ウインドウ(最前面ウ
インドウ)を使用しているタスクか否かを
WSMB40のTN402を用いて判定する(ブ
ロツク1410)。その通りであれば、GP22は
処理をブロツク1420へ進め、WSMB40の
STATUS401内の優先ウインドウ宣言フラグ
を設定する。これにより、現ウインドウを使用中
のタスク以外によるウインドウの生成、変更を抑
止可能になる。
() RESET WRSV 第14図は優先ウインドウ解除コマンド
RESET WRSV1500の処理手順を示したも
のである。
本コマンドを受けたGP22は、まず本コマン
ドを発行したタスクが現ウインドウ(最前面ウイ
ンドウ)を使用中のタスクか否かを判定し(ブロ
ツク1510)、もしそうであれば、WSMB40
のSTATUS401内の優先ウインドウ宣言フラ
グをリセツトする(ブロツク1520)。次いで、
ウインドウ表示待ちのタスクがあるか否かを
WSMB40のWAITQ403を用いて判定し
(ブロツク1530)、もしそうならば、WAITQ
403につながれているタスクのTCBを全ては
ずし、それらを実行待行列にする。
以上説明してきたように、本実施例では、優先
ウインドウ宣言フラグを使用者が制御することに
より、ウインドウの表示内容を任意の期間保証で
き、使い勝手のよいウインドウ制御機能を提供す
ることが可能になる。
〔発明の効果〕
本発明によれば、複数のデータを同一表示装置
上に重ね合せを許して同時に表示するシステムに
於て、使用者による所定の操作が終了するまで、
必要に応じてその時の表示優先度を固定して、新
なデータの表示あるいは既表示データの表示優先
度の変更を抑止することができるという効果があ
る。
【図面の簡単な説明】
第1図は本発明に係る表示データの蓄積方法を
示す図、第2図は本発明に係る計算機システム構
成図、第3図は多重画面表示例を示す図、第4図
は本発明に係る制御テーブル構成図、第5図は多
重画面表示例とその時の制御テーブルの状態を示
す図、第6図〜第14図は本発明に係る多重画面
表示方式の処理手順を示す図である。 40……ウインドウ状態管理ブロツク、401
……ウインドウ状態フラグ、42……ウインドウ
制御ブロツク、600……WRITE WINDOW処
理手順、800……POP UP WINDOW処理手
順、100……MOVE WINDOW処理手順、1
200……CLEAR WINDOW処理手順、140
0……SET WRSV処理手順、1500……
RESET WRSV処理手順。

Claims (1)

  1. 【特許請求の範囲】 1 予め、処理に必要なプログラム及びデータを
    メモリに記憶するとともに、処理装置によつて、
    該プログラム及びデータに従つた処理を実行し、
    その結果形成された複数のウインドウに係る表示
    データを表示メモリの任意の位置に格納するとと
    もに、該複数のウインドウ各々の表示位置とその
    相互の優先度を該メモリに記憶し、表示装置に該
    表示メモリの内容を表示することにより、該複数
    のウインドウを重ね合せて表示する多重画面制御
    方法において、 上記処理装置による処理の実行後、使用者また
    は上記プログラムにより上記複数のウインドウの
    中の一つのウインドウについて優先ウインドウ宣
    言の設定が指示された際、上記処理装置は、当該
    一つのウインドウについて上記優先ウインドウ宣
    言がなされていることを上記メモリに記憶し、 上記優先ウインドウ宣言がされている際に、上
    記処理装置は、上記複数のウインドウ各々に関す
    る表示変更以外の処理を並行して実行する一方、
    上記複数のウインドウの内で最も優先度の高いウ
    インドウ以外のウインドウに対する表示変更の要
    求があつた場合、該要求の実行を抑止するととも
    に待ち状態として該要求を上記メモリに記憶し、 上記使用者またはプログラムにより上記優先ウ
    インドウ宣言の解除が指示された際、上記処理装
    置は、上記メモリ上の上記優先ウインドウ宣言を
    解除するとともに、上記待ち状態とされた要求を
    処理することを特徴とする多重画面制御方法。 2 上記表示変更の要求は、新たなウインドウの
    表示要求である特許請求の範囲第1項記載の多重
    画面表示情報処理方法。 3 上記表示変更の要求は、下位ウインドウの優
    先表示要求である特許請求の範囲第1項記載の多
    重画面制御方法。 4 上記上記複数のウインドウ各々の表示位置と
    その相互の表示優先度は、上記メモリ上の第1の
    制御テーブルとして管理され、上記優先ウインド
    ウ宣言および待ち状態とされた要求の行列は、第
    2の制御テーブルとして管理されることを特徴と
    する特許請求の範囲第1項記載の多重画面制御方
    法。 5 上記優先ウインドウ宣言の解除は、上記複数
    のウインドウの内で最も優先度の高いウインドウ
    が消去される際に同時に行なわれることを特徴と
    する特許請求の範囲第1項記載の多重画面制御方
    法。
JP61112632A 1985-10-18 1986-05-19 多重画面制御方法 Granted JPS62269275A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP61112632A JPS62269275A (ja) 1986-05-19 1986-05-19 多重画面制御方法
US06/920,425 US4954818A (en) 1985-10-18 1986-10-20 Multi-window display control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61112632A JPS62269275A (ja) 1986-05-19 1986-05-19 多重画面制御方法

Publications (2)

Publication Number Publication Date
JPS62269275A JPS62269275A (ja) 1987-11-21
JPH0559447B2 true JPH0559447B2 (ja) 1993-08-31

Family

ID=14591586

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61112632A Granted JPS62269275A (ja) 1985-10-18 1986-05-19 多重画面制御方法

Country Status (1)

Country Link
JP (1) JPS62269275A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1329282C (en) * 1988-06-30 1994-05-03 Barbara A. Barker Method for controlling the presentation of nested overlays
JPH0664526B2 (ja) * 1988-11-09 1994-08-22 株式会社日立製作所 マルチウィンド表示制御方法
JPH05127728A (ja) * 1991-10-31 1993-05-25 Fanuc Ltd 対話形数値制御装置における詳細データ表示方式
WO2003052569A1 (fr) * 2001-12-07 2003-06-26 Ntt Docomo, Inc. Terminal de communication mobile, procede et programme de commande d'execution d'applications et support d'enregistrement lisible par ordinateur

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60252390A (ja) * 1984-05-29 1985-12-13 富士通株式会社 画面管理制御方式
JPS6134590A (ja) * 1984-07-26 1986-02-18 フアナツク株式会社 画面制御方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60252390A (ja) * 1984-05-29 1985-12-13 富士通株式会社 画面管理制御方式
JPS6134590A (ja) * 1984-07-26 1986-02-18 フアナツク株式会社 画面制御方式

Also Published As

Publication number Publication date
JPS62269275A (ja) 1987-11-21

Similar Documents

Publication Publication Date Title
JP3659062B2 (ja) 計算機システム
JP4076239B2 (ja) 情報表示方法及びウィンドウ管理装置
US5898441A (en) Method and apparatus for integrating video capture and monitor
US5758110A (en) Apparatus and method for application sharing in a graphic user interface
EP0349458B1 (en) Method of dynamic actuation of background windows for priority applications
US5502839A (en) Object-oriented software architecture supporting input/output device independence
US5335323A (en) Computer human interface with multiapplication display
US4954818A (en) Multi-window display control system
JPS58195966A (ja) 多重タスク処理ワ−ド・プロセツサにおける使用者制御によるリソ−ス切換え方法
JP2006209774A (ja) コンテキストアウェアネスプラットフォームのためのシステムおよび方法
JPH0916366A (ja) イメージ表示の方法、装置及びデータ処理システム
JPH1153116A (ja) タッチパネル付き情報処理装置及びその制御方法
JPH0559447B2 (ja)
JP2776907B2 (ja) ヘルプ情報制御方法および装置
JP2523528B2 (ja) 多重画面表示計算機システム
JPH0786745B2 (ja) 多重画面表示制御装置
JP2564283B2 (ja) 多重画面表示計算機システム
JPS62166436A (ja) デ−タ処理システム
JPH0260195B2 (ja)
JPH07244720A (ja) データ処理方法およびそれを用いたシステム
JPH05100813A (ja) 計算機システム
JP2819940B2 (ja) ウィンドウ表示方法
JPH0511960A (ja) マルチウインドウ制御方式
JPS61170786A (ja) マルチウインドウ表示方法
JPH0743582B2 (ja) 多重画面表示用計算システム

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees