JPH11218562A - Gui処理システム - Google Patents

Gui処理システム

Info

Publication number
JPH11218562A
JPH11218562A JP30339798A JP30339798A JPH11218562A JP H11218562 A JPH11218562 A JP H11218562A JP 30339798 A JP30339798 A JP 30339798A JP 30339798 A JP30339798 A JP 30339798A JP H11218562 A JPH11218562 A JP H11218562A
Authority
JP
Japan
Prior art keywords
command
processing
execution
controller
view
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.)
Withdrawn
Application number
JP30339798A
Other languages
English (en)
Inventor
Satoshi Umetsu
聡 梅津
Takahiro Yamaguchi
隆弘 山口
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.)
Advantest Corp
Original Assignee
Advantest 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 Advantest Corp filed Critical Advantest Corp
Priority to JP30339798A priority Critical patent/JPH11218562A/ja
Publication of JPH11218562A publication Critical patent/JPH11218562A/ja
Withdrawn legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 操作性が良好なGUI処理システムを提供す
ること。 【解決手段】 GUI生成管理部を実現する基本オブジ
ェクトとして、試験の条件や結果を管理する“モデル”
と、モデルの内容を画面に表示する“ビュー”と、イベ
ントを検出してモデルやビューの処理に変換する“コン
トローラ”と、ビジュアルなフィードバックを与えるド
ラッグ・アンド・ドロップを実現する“ドラッグコント
ローラ”とを含んでいる。ドラッグコントローラを用い
ることにより、モデルの構造に影響を与えることなく、
GUIによるドラッグ・アンド・ドロップが可能にな
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、試験制御装置と1
あるいは複数の試験装置を相互接続して被測定物の試験
を行うGUI処理システムに関する。本明細書におい
て、被測定物(DUT:Device Under Test )とは、本
発明のGUI処理システムである試験システムによって
試験される装置、システム、機器、または機器の構成要
素をいう。試験には、製造評価、品質管理、修正、校
正、アライメント、調整、性能評価、診断、製品受入検
査などの周知の試験目的のために行われる各種の行為が
含まれる。
【0002】また、本明細書で用いられる「試験装置」
とは、例えば、信号発生器、変調器、復調器、入力/出
力装置、増幅器、ミキサ、符号器、復号器、オシロスコ
ープ、歪み率計、電力計、マルチメータ、減衰器、検出
器、スペクトラム・アナライザ、ネットワーク・アナラ
イザ、半導体試験装置、シンセサイザ、恒温槽、測定装
置などのような1つまたほそれ以上の電子機器、もしく
は電子装置を評価するための評価、試験、枚正、修理、
調整などをするために必要な受動型、または能動型の装
置や計測器を含むものとする。
【0003】また、本明細書で用いられる記憶手段とし
ての「メモリ」とは、RAM、ROM、およびEPRO
Mや、フロッピー・ディスク、ハードディスク、CDR
OMなどの永久記録保存装置、ならびに当該技術分野で
周知の他の種類のメモリを含むものとする。
【0004】
【従来の技術】従来の試験システムは、試験プログラム
を可視化するアプローチを採用し、試験装置に関して熟
練者でなくとも利用できる環境を提供している。可視化
とは、プログラムをデータの取得や演算、グラフ表示な
どを行うプログラム部品であるアイコン(icon)という
絵文字の集まりとして表示し、試験制御装置としてのコ
ンピュータの画面上で押しボタン付きポインティング装
置などを用いて、表示されているアイコン間を結線する
ことにより、プログラム実行順番を指定する手法をい
う。
【0005】試験システムの利用者は、メニューもしく
はツール・ボックスに格納されているこれらのアイコン
を押しボタン付きポインティング装置でポイントする
(ポインティング装置の押しボタンを押して、ポインテ
ィング装置を移動せずにポインティング装置の押しボタ
ンをリリースする)ことにより選択する。そして、プロ
グラミング用のウインドウ画面上で再度ポイントするこ
とにより各アイコンが画面上に配置される。それぞれの
アイコンごとに定まったいくつかの結線点が設定されて
おり、結線は、結線開始に対応するアイコンの結線点と
結線終了に対応するアイコンの結線点とを、押しボタン
付きポインティング装置によってそれぞれポイントする
ことにより行われる。
【0006】
【発明が解決しようとする課題】(a)ビジュアルなフ
ィードバックを与えるドラッグ・アンド・ドロップによ
るプログラミング GUI(グラフィカル・ユーザ・インタフェース)を用
いた操作環境におけるビジュアルなフィードバックを与
えるドラッグ・アンド・ドロップの重要性について最初
に説明する。GUIとは、例えば、押しボタンやアイコ
ンなどの画像を表示したディスプレイ上の範囲を、押し
ボタン付きポインティング装置で繰作することによりア
プリケーションを制御するものである。表現の便宜上、
押しボタンやアイコンなどを‘GUI部品’と表現す
る。GUIでは、押しボタン付きポインティング装置か
らの入力情報(イベント)を処理する対象となるGUI
部品を示すために、押しボタン付きポインティング装置
の動きに対応して移動する例えば矢印などのポインティ
ング・カーソル画像をディスプレイ上に表示する。ドラ
ッグ・アンド・ドロップとは、押しボタン付きポインテ
ィング装置のボタンをアイコンなどの表示画像上で押し
ながらポインティング装置を移動し(ドラッグ)、目的
とするGUI部品上でポインティング装置のボタンをリ
リースする(ドロップ)動作である。
【0007】試験システムは、ドラッグしたGUI部品
とドロップしたGUI部品の関係に対応したアプリケー
ション機能を起動する。例えば、ファイル消去機能の起
動は、消去対象ファイルの絵文字をもつアイコンをドラ
ッグして、ごみ箱の絵文字をもつアイコンにドロップす
ることにより実現できる。このように、GUI部品の絵
文字から起動されるアプリケーションの機能を類推でき
るようにしている。しかし、ドラッグしたGUI部品を
ドロップしようとしている対象が妥当なものであるか否
かをGUI部品の絵文字のみで判断させることは容易で
はなかった。
【0008】ポインティング・カーソルの絵文字をポイ
ンティング・カーソルの下にあるGUI部品へのドロッ
プの可否に応じて変化させることができれば、試験シス
テムの利用者をドロップ可能なGUI部品へビジュアル
に誘導することができる。この結果GUIの操作性は向
上する。しかし、このような方法は、従来存在していな
い。
【0009】さらに、ドラッグしたGUI部品の絵文字
をポインティング・カーソルに追従させると、ドロップ
するGUI部品の絵文字の隣接する位置にドラッグした
GUI部品の絵文字を表示することができ、これらの絵
文字により起動できるアプリケーション機能の模索を支
援することができる(図30)。このように、提供する
アプリケーション機能の模索を支援する意味で、ビジュ
アルなフィードバックを与えるドラッグ・アンド・ドロ
ップ機能が重要である。
【0010】しかし、従来の試験システムでのプログラ
ミングは、ドラッグ・アンド・ドロップではなく、a)
押しボタン付きポインティング装置のポイント操作によ
るアイコンの選択と、b)それぞれのアイコンごとに定
まった点をポイントすることによる結線方式を採用して
いた。アイコンの絵文字によりアイコンの機能を類推で
きるものの、各々のアイコンで提供される接続ポイント
が多い場合には、アイコンの機能と各接続点の機能を深
く理解しなければ、利用することができないという問題
点があった。さらに、結線動作においてポインティング
・カーソルに追従するのが線であるために、常に結線元
のアイコンと線を引き出した接続ポイントを、利用者が
記憶しておかなければならなかった。このため、グラフ
ィック・ディスプレイ装置の可視範囲外にあるアイコン
間を結線することが難しく、大規模プログラムを開発で
きない問題点があった。
【0011】大規模プログラムを開発する環境を試験シ
ステムで実現するには、ビジュアルなフィードバックを
与えるドラッグ・アンド・ドロップにて操作できる環境
が必要である。このためには、ビジュアルなフィードバ
ックを与えるドラッグ・アンド・ドロップが実現できる
GUI制御が必要である。 (b)GUIによるアプリケーション操作の取消と、取
り消した操作の再実行 仮に、上述したようなGUIを用いたビジュアルな操作
が可能になったとしても、試験用アプリケーションの操
作性をさらに向上させようとすると、GUIによるアプ
リケーションの操作を取り消す機能が必要になる。
【0012】図31は、GUIによるアプリケーション
の操作の実行と取り消しの具体例を示す図である。操作
は、まず、グラフィック・ディスプレイ上にDUTアイ
コン900と試験装置アイコン910が表示されている
状態(図31(a))から、DUTアイコン900をド
ラッグして試験装置アイコン910にドロップする(図
31(b))。この操作によって、グラフィック・ディ
スプレイ上でDUTアイコン900と試験装置アイコン
910が結線される(図31(c))。このようにして
結線が行われた後に、対応する試験用アプリケーション
による所定の試験が開始される。上述した例において、
GUIによるアプリケーションの繰作の取り消しを行う
と、グラフィック・ディスプレイ上では、操作が行われ
る前のDUTアイコン900と試験装置アイコン910
が結線されてない図31(a)に示す状態に戻る。ま
た、試験用アプリケーションでは、試験が中断され、試
験を開始する以前の状態に戻る。
【0013】操作取消機能があると、誤ったGUIによ
るアプリケーションの操作を行っても、すぐに元の状態
に戻すことができる。また、取り消した操作を再実行す
る機能があると、誤って繰作を取消しても、すぐに操作
を取消す以前の状態に戻すことができる。したがって、
失敗を恐れないでGUIによるアプリケーションの機能
を模索できるシステムが実現できる。このように、GU
Iによるアプリケーション操作の取消しと、取り消した
操作の再実行機能は、アプリケーションの操作性を向上
するために重要である。
【0014】従来の試験システムでは、エラー・メッセ
ージやヘルプ機能があるものの、操作取消機能や取り消
した操作を再実行する機能はない。このため、誤った操
作を行ったときに、エラー・メッセージなどを参照し
て、対応するヘルプ項目を見つけ出し、ヘルプ・メッセ
ージを参考に操作を取消すための作業を行わなければな
らなかった。さらに、適切なヘルプ機能を探しあてるに
は、システムの構成を知らなければならなかった。この
ため、試験システムを熟知した利用者でなければ、試験
システムを利用することができない問題点があった。 (c)GUI操作のデモンストレーション機能 同様に、仮にGUIを用いたビジュアルな操作が可能に
なった場合に、GUIによるアプリケーションの繰作法
を他の利用者に伝えるには、GUI操作をデモンストレ
ーションすることが有効である。GUI操作の自動デモ
ンストレーションとは、登録したGUIによるアプリケ
ーションの操作をコマ送りで再現する機能である。特
に、GUIによるアプリケーションの繰作手順を自動的
にデモンストレーションすることができれば、GUIに
よるアプリケーション操作のトレーニングを行わなくて
も、システムを利用することができる。
【0015】しかし、従来の試験システムでは、自動デ
モンストレーション機能をサポートしてない。このた
め、従来の試験システムでは、GUIによるアプリケー
ションの操作法を他の利用者に伝えることができないと
いう問題点があった。特に、試験システムの操作は、そ
の手順が重要な意味を有する場合も多く、その操作法を
有効に他の利用者に伝えることができれば便利である。
【0016】本発明は、このような点に鑑みて創作され
たものであり、その目的は、視覚的で操作性が良好な試
験システムを含むGUI処理システムを提供することに
ある。具体的には、ビジュアルなフィードバックを与
えるドラッグ・アンド・ドロップによる操作が可能にな
る(第1の目的)こと、GUIによるアプリケーショ
ン操作の取消しが可能になる(第2の目的)こと、G
UIによるアプリケーション操作の取り消した操作の再
実行が可能になる(第3の目的)こと、GUI操作の
自動デモンストレーションを行うことができる(第4の
目的)ことを本発明の目的としている。
【0017】
【課題を解決するための手段】本発明の内容を説明する
前にオブジェクトの概念について説明する。オブジェク
トとは、属性(データ)と処理とを一体化し、メモリに
格納したものである。図1は、オブジェクトの継承関係
を示す図である。また、図2はオブジェクトのメモリ上
での構成を示す図である。図1に示すように、派生オブ
ジェクトから基底オブジェクトに“継承”と記された矢
印が引かれている。これは、派生オブジェクトが基底オ
ブジェクトから継承されたオブジェクトであることを示
している。図2には、このような関係にある基底オブジ
ェクトと派生オブジェクトのメモリ上の構成が示されて
いる。
【0018】派生オブジェクトは、メモリの先頭に基底
オブジェクトをもつ。このため、派生オブジェクトのエ
ントリ・ポイントは、派生オブジェクトが内部にもつ基
底オブジェクトのエントリ・ポイントと同じアドレスを
示す。すなわち、派生オブジェクトを基底オブジェクト
としてあつかうことができる。このように派生オブジェ
クトがメモリの先頭に基底オブジェクトをもつことを
‘派生オブジェクトは、基底オブジェクトを継承する’
と表現する。また、派生オブジェクトが基底オブジェク
トを継承するとき、基底オブジェクトを親のオブジェク
ト、派生オブジェクトを子のオブジェクトと表現する。
【0019】図2に示す例では、派生オブジェクト内に
2つの‘処理1’が実装されている。メモリ上の派生オ
ブジェクトのエントリ・ポイント近くにある‘処理1’
は、基底オブジェクトで定義された処理である。別の
‘処理1’は、派生オブジェクトで定義される処理であ
る。
【0020】この派生オブジェクトに‘処理1’を要求
すると、次の手順で派生オブジェクトで定義される‘処
理1’が実行される。 (1)オブジェクトに‘処理1’の実行を要求する。 (2)オブジェクトは、要求された処理を子のオブジェ
クトから親のオブジェクトへと検索する。 (3)オブジェクトは、要求した処理の名称、処理の戻
り値、引数が一致した処理を検出し、それを実行する。
【0021】このため、派生オブジェクトを基底オブジ
ェクトとしてあつかうときでも、‘処理1’の実行を要
求すると、派生オブジェクトで定義されている‘処理
1’が実行される。ただし、子のオブジェクトであって
も、親のオブジェクトを指定して、親のオブジェクトの
処理を実行することはできる。また、親の基底オブジェ
クトに‘処理1’が実装されてないときは、基底オブジ
ェクトとしてあつかったオブジェクトに‘処理1’の実
行を要求できない。基底オブジェクトに実行を要求でき
るのは、基底オブジェクト内に定義されている処理だけ
である。
【0022】基底オブジェクトがもつ‘基底オブジェク
トの属性1’に対して、派生オブジェクトが内容を参照
したり、内容を変更したりすることが可能である。
【0023】アプリケーションの操作性を向上させるた
めに、アプリケーションの核となる機能に影響を与える
ことなく、アプリケーションの核の信頼性を維持しなが
ら、簡単にGUIの追加や変更ができることが重要であ
る。
【0024】従来からモデル・ビュー・コントローラ手
段(MVC)により、アプリケーションの核となる機能
に影響を与えることなく、簡単にGUIの追加や変更が
できるGUI生成管理手法が実現されていた。MVC
は、表計算ソフトウエアなどに用いられている。MVC
を用いると、数値データをもつモデルに対して棒グラフ
やパイ・チャートなどのスタティックな表示を、棒グラ
フやパイ・チャートなど各々のビューとコントローラを
生成するだけで、追加することができる。
【0025】MVCとは、アプリケーションの核の機能
であるサービスと表示の基となるデータを記憶するオブ
ジェクト(モデル)と、表示を行うオブジェクト(ビュ
ー)と、入力装置からの入力を受け付けるオブジェクト
(コントローラ)とのそれぞれにGUIの機能を分担さ
せ、ビューとコントローラが協力してGUIを動作させ
るものである。
【0026】上述したように、オブジェクトとは、デー
タと処理とを一体化し、メモリに格納したものである。
以下、オブジェクトに格納してあるデータを‘属性’と
表現する。オブジェクトに実行を要求できるのは、オブ
ジェクト内に定義されている処理だけとなる。
【0027】図3は、一般的なMVCの構造を示す図で
ある。 [モデル]:モデルとは、アプリケーションの核の機能
であるサービスと表示の基となるデータを記憶するオブ
ジェクトである。そして、従属するビューとコントロー
ラを登録し、従属するビューとコントローラのオブジェ
クトに表示の基となるデータのアップデートを通知す
る。モデルは、従属するビューとコントローラをオブザ
ーバとして記憶する。 [オブザーバ]:オブザーバとは、ビューとコントロー
ラを共通にあつかうためのオブジェクトである。 [ビュー]:ビューは、関連するモデルの情報を、画面
上に表示するオブジェクトである。そして、モデルのデ
ータを参照して表示の更新を行うアップデート手続きを
実装する。また、ビューは、ビューの生成時に関連する
コントローラの生成と初期設定を行う。ビューと共同作
業するオブジェクトは、コントローラとモデルである。 [コントローラ]:コントローラは、押しボタン付きポ
インティング装置からの入力であるイベントを受ける。
そして、イベントをモデルへのサービス要求やビューへ
の表示要求に変換する。コントローラと共同作業するオ
ブジェクトは、ビューとモデルである。
【0028】MVCでは、アプリケーションの核の機能
をもつモデルの構造を変えることなく、ビューとコント
ローラを追加できる。このため信頼性のあるモデルを1
度作成すると、アプリケーションの核の信頼性を落すこ
となくスタティックな表示が追加できる。
【0029】〔本発明で用いるオブジェクトの詳細〕モデル・ビュー・コントローラ手段と、ドラッグコント
ローラ手段を組み合わせたGUI生成管理手段 従来の試験システムは、ビジュアルなフィードバックを
与えるドラッグ・アンド・ドロップ操作機能を持たな
い。したがって、本発明の第1の目的を達成することが
できない。さらに、アプリケーションの核となる機能に
影響を与えることなく、ビジュアルなフィードバックを
与えるドラッグ・アンド・ドロップが簡単に実現できる
と、アプリケーションの核の信頼性を落すことなく、G
UI部品の追加や変更を簡単にできるようになる。
【0030】MVCを用いても、これらの処理を実現す
ることは可能である。しかし、このビジュアルなフィー
ドバックを与えるドラッグ・アンド・ドロップ操作をM
VC構造で実現するには、次の技術課題がある。例えば
ビジュアルなフィードバックを与えるドラッグ・アンド
・ドロップ操作をアイコン表示で実現するものとする。
このとき、ドラッグ対象アイコンのビューとコントロー
ラとは別に、ポインティング・カーソルの移動に伴い、
追従画像の移動処理やポインティング・カーソルのイメ
ージを変えるためのビューとコントローラが必要にな
る。MVCにおいてアイコンのコントローラは、イベン
トをモデルヘのサービス要求やビューヘの表示要求に変
換するのみである。このため、追従画像の移動処理とポ
インティング・カーソルのイメージを変えるダイナミッ
クな表示を管理するビューとコントローラを直接生成す
ることができない。したがって、アイコンのモデルが、
アイコンのコントローラからのサービス要求を受け、ダ
イナミックな表示を行うためのビューとコントローラを
生成することになる。
【0031】すなわち MVCでは ビジュアルなフィ
ードバックを与えるドラッグ・アンド・ドロップ操作機
能をもつビューをモデルに追加するには、アプリケーシ
ョンの核の機能をもつモデルの構造まで変更する必要が
ある。これは、アプリケーションの核の信頼性を落す点
で不都合である。
【0032】この課題を解決するためには、従来のモデ
ル・ビュー・コントローラ手段に、アプリケーションの
核の機能をもつモデルの構造を変更せずにコントローラ
がドラッグ・アンド・ドロップ動作を専門に担当するビ
ューとコントローラを生成し制御することが必要であ
る。本発明では、モデル・ビュー・コントローラ手段
と、ドラッグコントローラ手段を組み合わせたGUI生
成管理手段(MVCC)を新たに採用した。
【0033】MVCCとは、モデル・ビュー・コントロ
ーラのビューとコントローラをスタティックなGUI部
品(ウインドウ表示などのように、ユーザの特別な操作
がなくても、グラフィック・ディスプレイ上に表示され
ている部品)と、ダイナミックなGUI部品(ポインテ
ィング装置によるドラッグ・アンド・ドロップ操作途中
の表示を担当する部品)に分離し、スタティックなGU
I部品に対するドラッグ・アンド・ドロップなどの動作
を行う場合に、スタティックなGUI部品のコントロー
ラがダイナミックなGUI部品のビューとコントローラ
を生成し、処理をダイナミックなGUI部品のビューと
コントローラに委託する構造としている。
【0034】図4は、本発明のMVCCの構造を示す図
である。ドラッグコントローラ手段としてモデル・ビュ
ー・コントローラ手段に新たに追加されたオブジェクト
は、スタティック・ビュー、ダイナミック・ビュー、ド
ラッグ・ビュー、スタティック・コントローラ、ダイナ
ミック・コントローラ、ドラッグ・コントローラであ
る。以下、これらの各オブジェクトについて簡単に説明
する。
【0035】[スタティック・ビュー]:スタティック
な部品の画像を表示するオブジェクトである。スタティ
ック・ビューは、ビューを継承する。 [ダイナミック・ビュー]:ポインティング装置の繰作
中の動的な画像をあつかうオブジェクトである。ダイナ
ミック・ビューは、ビューを継承する。 [ドラッグ・ビュー]:ドラッグ中の動的な画像をあつ
かうオブジェクトである。ドラッグ・ビューは、ダイナ
ミック・ビューを継承する。 [スタティック・コントローラ]:スタティック・ビュ
ーに関するイベントの処理を実装するオブジェクトであ
る。スタティック・コントローラは、コントローラを継
承する。 [ダイナミック・コントローラ]:ダイナミック・ビュ
ーに関するイベントの処理を実装するオブジェクトであ
る。ダイナミック・コントローラは、コントローラを継
承する。 [ドラッグ・コントローラ]:ドラッグ・ビューに関す
るイベントの処理を実装するオブジェクトである。ドラ
ッグ・コントローラは、ダイナミック・コントローラを
継承する。
【0036】また、MVCCでは、スタティックな部品
とダイナミックな部品の組み合わせやダイナミックなビ
ューとコントローラをも自由に組み合わせることができ
る。このMVCCを使うと、プリケーションの核となる
機能に影響を与えることなく、ビジュアルなフィードバ
ックを与えるドラッグ・アンド・ドロップが簡単に実現
できる。
【0037】モデル・ビュー・コントローラ・コマンド
手段 従来のMVCでは、コントローラがイベントに対応する
モデルもしくはビューの実行処理を直接起動する構造で
あった。しかし、MVCでは、同じGUI部品のアイコ
ンであってもイベントで起動するモデルもしくはビュー
の実行処理の違いから異ったコントローラをつくらなけ
ればならないという問題があった。このため、コントロ
ーラの構造を変更しなければ処理を起動するイベントや
ビューを簡単に変更できなくなる。
【0038】コントローラとは別に、モデルもしくはビ
ューがもつ繰作の実行処理を起動するオブジェクト“コ
マンド”があれば、この問題を解決できる。つまり、モ
デルもしくはビューがもつ操作の実行処理をコントロー
ラが直接実行するのではなく、モデルもしくはビューが
もつ操作の実行処理をコントローラの要求によりコマン
ドが起動する構造にする。具体的には、(1)コントロ
ーラは、イベントに対応した処理としてコマンドを属性
としてメモリ上に記憶し、(2)イベントが発生すると
コントローラはイベントに対応するコマンドの実行起動
処理を実行する、といった構造とする。処理を起動する
イベントやビューを変更しても、コントローラのイベン
トに対応する属性にコマンドを記憶しなおすだけの変更
ですむことになる。
【0039】この結果、コントローラとコマンドの組み
合わせを自由に変更できるため、新たなコントローラを
作成しなくても、処理を起動するイベントやビューを簡
単に変更できるようになる。
【0040】本発明では モデル・ビュー・コントロー
ラ・コマンド手段を新たに採用した。図5は、新たに採
用したモデル・ビュー・コントローラ・コマンド手段の
構造を示す図である。以下、図5に示す各オブジェクト
について説明する。
【0041】[モデル]:モデルとは、アプリケーショ
ンの核の機能であるサービスと表示の基となるデータを
記憶するオブジェクトである。そして、従属するビュー
とコントローラを登録し、従属するビューとコントロー
ラのオブジェクトに表示の基となるデータのアップデー
トを通知する。モデルは、従属するビューとコントロー
ラをオブザーバとして記憶する。
【0042】[オブザーバ]:オブザーバとは、ビュー
とコントローラを共通にあつかうためのオブジェクトで
ある。
【0043】[ビュー]:ビューは、関連するモデルの
情報をグラフィック・ディスプレイ上に表示するオブジ
ェクトである、そして、モデルのデータを参照して表示
の更新を行うアップデート手続きを実装する。また、ビ
ューは、ビューの生成時に関連するコマンドを起動する
コントローラの生成と初期設定を行う。ビューと共同作
業するオブジェクトは、コマンドを起動するコントロー
ラとモデルである。
【0044】[コントローラ]:コントローラは、イベ
ント処理に対応して起動するコマンドを、イベント処理
名をもつ属性としてメモリ上に記憶する。コントローラ
は、押しボタン付きポインティング装置からの入力であ
るイベントを受ける。そして、イベント処理名をもつ属
性としてメモリ上に記憶されているコマンドの実行起動
処理を起動する。コントローラと共同作業するオブジェ
クトは、ビュー、モデル、コマンドである。
【0045】[コマンド]:引数をもたないコマンド、
引数をもつコマンドなどの子のオブジェクトの共通する
属性と処理を定義する。共通する処理とは、実行起動処
理と実行取消起動処理である。
【0046】[引数をもたないコマンド]:モデルもし
くはビューの引数をもたない実行処理と実行取消処理を
起動するオブジェクトである。実行起動処理により、モ
デルもしくはビューの引数をもたない実行処理を起動す
る。また、実行取消起動処理により、モデルもしくはビ
ューの引数をもたない実行取消処理を起動する。引数を
もたないコマンドは、コマンドを継承する。
【0047】[引数をもつコマンド]:モデルもしくは
ビューの引数をもつ実行処理と実行取消処理を起動する
ためのオブジェクトである。実行起動処理により、モデ
ルもしくはビューの引数をもつ実行処理を起動する。ま
た、実行取消起動処理により、モデルもしくはビューの
引数をもつ実行取消処理を起動する。引数をもつコマン
ドは、コマンドを継承する。
【0048】[マクロ・コマンド]:複数のコマンドを
保有するオブジェクトである。実行起動処理により、コ
マンドを登録した順にコマンドの実行起動処理を実行す
る。また、実行取消起動処理により、登録された逆順に
コマンドの実行取消起動処理を実行する。マクロ・コマ
ンドは、コマンドを継承する。
【0049】コマンド実行履歴スタック手段 コマンド実行履歴スタック手段は、コマンド記憶手段、
プッシュ手段、ポップ手段、コマンド実行履歴記憶手段
からなる。
【0050】コマンド記憶手段は、コマンドをメモリに
記憶する。プッシュ手段は、コマンド記憶の最後にコマ
ンドを追加する。ポップ手段は、最後に追加されている
コマンドをコマンド記憶から消去した上で取り出す。コ
マンド実行履歴記憶手段では、GUI操作で実行取消起
動処理を実行したコマンドをコントローラから受け取
り、プッシュ手段を利用してコマンド記憶に追加する。
【0051】コマンド記憶手段、プッシュ手段、ポップ
手段は、“コマンド・スタック”オブジェクトで実現さ
れる。
【0052】[コマンド・スタック]:コマンドを属性
としてメモリ上に記憶するオブジェクトである。コマン
ド・スタックは、プッシュ処理とポップ処理をもつ。プ
ッシュ処理では、引数で与えられたコマンドのコピー
を、既に属性としてメモリ上に記憶されているコマンド
の最後に追加する。ポップ処理では、すでに属性として
メモリ上に記憶されているコマンドの最後のコマンドを
返し、この属性から最後のコマンドを消去する。
【0053】コマンド実行履歴記憶手段は、コマンド・
スタックを属性としてメモリ上に記憶する“GUIマネ
ージャ”オブジェクトで実現される。
【0054】[GUIマネージャ]:実行履歴を記憶す
るためのコマンド・スタックと実行取り消し履歴を記憶
するためのコマンド・スタックを属性としてメモリ上に
記憶する。GUIマネージャは、プッシュ処理、操作の
実行処理、操作の実行取り消し処理をもつ。プッシュ処
理では、実行履歴を記憶するためのコマンド・スタック
のプッシュ処理を利用して、実行履歴を記憶するための
コマンド・スタックがもつコマンドを属性としてメモリ
上に記憶する。操作の取消処理では、まず、実行履歴を
格納するコマンド・スタックの‘ポップ処理’を実行す
る。つぎに、ポップ処理により得たコマンドを、取消履
歴を格納するコマンド・スタックの‘プッシュ処理’を
利用して取消履歴を格納するコマンド・スタックの属性
としてメモリ上に記憶する。最後に‘ポップ処理’によ
り得たコマンドの‘実行取消起動処理’を実行し、GU
Iによるアプリケーション操作を取り消す。操作の再実
行処理では、まず、取消履歴を格納するコマンド・スタ
ックの‘ポップ処理’を実行する。つぎに、ポップ処理
により得たコマンドを実行履歴を格納するコマンド・ス
タックの‘プッシュ処理’により、実行履歴を格納する
コマンド・スタックの属性としてメモリ上に記憶する。
最後にポップ処理により得たコマンドの‘実行起動処
理’を実行し、取り消されたGUIによるアプリケーシ
ョン操作を再実行する。
【0055】GUIマネージャは、GUI繰作により実
行起動処理を実行したコマンドをコントローラから受け
取り、プッシュ処理により受け取ったコマンドを実行履
歴を記憶するためのコマンド・スタックの属性としてメ
モリ上に記憶する。
【0056】このように、コマンド実行履歴スタック手
段のコマンド記憶手段、プッシュ手段、ポップ手段は、
GUIマネージャが属性としてもつ実行履歴を格納する
ためのコマンド・スタックで実現される。
【0057】操作取消手段 操作取消手段は、コマンド実行履歴スタック手段で説明
したGUIマネージャの操作の取消処理により実現され
る。
【0058】コマンド取消履歴スタック手段 コマンド取消履歴スタック手段は、コマンド記憶手段、
プッシュ手段、ポップ手段、コマンド取消履歴記憶手段
からなる。コマンド記憶手段、プッシュ手段、ポップ手
段は、コマンド実行履歴スタック手段で説明したコマン
ド・スタックで実現される。コマンド取消履歴記憶手段
は、コマンド実行履歴スタック手段で説明したGUIマ
ネージャにより実現される。GUIによるアプリケーシ
ョン操作の取り消しは、GUIマネージャの‘繰作の取
消処理’により行われる。この操作の取消処理により、
‘実行取消起動処理’が実行されたコマンドが、実行取
り消し履歴を記憶するためのコマンド・スタックの属性
としてメモリ上に記憶される。このように、コマンド取
消履歴スタック手段のコマンド記憶手段、プッシュ手
段、ポップ手段は、GUIマネージャが属性としてもつ
取消履歴を格納するためのコマンド・スタックで実現さ
れる。
【0059】操作再実行手段 操作再実行手段は、コマンド実行履歴スタック手段で説
明したGUIマネージャの操作の再実行処理により実現
される。
【0060】コマンド・ブロック実行手段 コマンド・ブロック実行手段は、コマンド実行履歴スタ
ック手段により記憶されたコマンド実行履歴にある特定
のブロックを選択し、ブロック中のコマンドを登録され
た順番に読み出してコマンドの実行起動処理を実行す
る。
【0061】コマンド・ブロック編集手段 コマンド・ブロック編集手段は、コマンド実行履歴スタ
ック手段により記憶されたコマンド実行履歴にある特定
のブロックを選択し、ブロックのコピーを生成する。ブ
ロックのあるコマンド以降のコマンドを消去して、消去
した部分に新たなコマンドを追加する。
【0062】〔本発明の作用と効果〕本発明のGUI処
理システムは、上述した各種のオブジェクトを用いてお
り、次に各オブジェクトを組み合わせて実現されるGU
I生成管理手段の作用と効果について説明する。
【0063】モデル・ビュー・コントローラ手段とドラ
ッグコントローラ手段とを組み合わせたGUI生成管理
手段 モデル・ビュー・コントローラ手段と、ドラッグコント
ローラ手段を組み合わせたGUI生成管理手段(MVC
C)を用いると、アプリケーションの核の機能をもつモ
デルの構造に影響を与えることなく、ビジュアルなフィ
ードバックを与えるドラッグ・アンド・ドロップ処理を
実現できるようになる。このため、第1の目的を実現す
ることができる。また、MVCCを用いると、ビジュア
ルなフィードバックを与えるドラッグ・アンド・ドロッ
プが簡単に実現できるため、大規模プログラムを開発す
る環境をGUI処理システムで実現することが可能にな
る。
【0064】従来のMVCでも、ビジュアルなフィード
バックを与えるドラッグ・アンド・ドロップを実現する
ことは可能である。しかし、従来のMVCでは、ドラッ
グ・アンド・ドロップ機能を実現するために、新たにド
ラッグ・アンド・ドロップを制御するモデルを追加する
必要があり、しかも、スタティックなビューおよびコン
トローラと、スタティックなビューおよびコントローラ
を管理するモデルの構造を変更しなければならなかっ
た。
【0065】これに対して、MVCCを用いると、スタ
ティックなコントローラのイベント処理を作成しなおす
のみで、ビジュアルなフィードバックを与えるドラッグ
・アンド・ドロップ機能を実現することができる。この
ため、スタティックなGUI部品にドラッグ・アンド・
ドロップ機能を追加するために作成しなおすオブジェク
トの総数は、MVCが4つのオブジェクトであるのに対
して、MVCCでは、1つのオブジェクトのみであり、
変更作業に要する手間を大幅に低減することができる。
【0066】すなわち、MVCCでは、MVCに比べて
1/4のオブジェクトを作成しなおすだけで、スタティ
ックなGUI部品にドラッグ・アンド・ドロップ機能を
追加することができる。さらに、MVCCでは、GUI
部品の追加や変更により、アプリケーションの核の機能
をもつモデルの構造に影響を与えることはない。
【0067】モデル・ビュー・コントローラ・コマンド
手段とドラッグコントローラ手段とを組み合わたGUI
生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、ドラ
ッグコントローラ手段とを組み合わたGUI生成管理手
段を用いると、アプリケーションの核の機能をもつモデ
ルの構造に影響を与えることなく、ビジュアルなフィー
ドバックを与えるドラッグ・アンド・ドロップ処理を実
現できる。このため、第1の目的を実現することができ
る。
【0068】MVCでは、スタティックなGUI部品を
追加するとき、GUI部品のコントローラを新たに作成
しなければならなかった。これに対して、モデル・ビュ
ー・コントローラ・コマンド手段を利用すると、コント
ローラは、イベントに対応したコマンドを属性としてメ
モリに記憶する構造になる。このため、コントローラを
継承した新しいGUI部品専用のオブジェクトを作らな
くても、既存のコントローラをコピーしたものの属性に
コマンドを登録するだけで新しいGUI部品を追加する
ことができる。また、コマンドも、起動する処理がある
メモリ上のエントリ・ポイントを属性としてメモリ上に
記憶する構造にすると、起動する処理ごとにコマンドを
継承したオブジェクトを新たに作成せずに利用できる。
【0069】このように、モデル・ビュー・コントロー
ラ・コマンド手段を用いると、新しい種類のオブジェク
トを作成しなくても、新しいGUI部品の表示と制御を
行うことができる。また、ドラッグコントローラ手段を
組み合わせることにより、既存のオブジェクトを全く作
成しなくても、スタティックな部品にドラッグ・アンド
・ドロップ機能を追加することができる。しかも、モデ
ル・ビュー・コントローラ・コマンド手段とドラッグコ
ントローラ手段とを組み合わたGUI生成管理手段で
は、GUI部品の追加や変更により、アプリケーション
の核の機能をもつモデルの構造に影響を与えることはな
い。
【0070】モデル・ビュー・コントローラ・コマンド
手段とコマンド実行履歴スタック手段と操作取消手段と
を組み合わせたGUI生成管理手段 モデル・ビュー・コントローラ・コマンド手段を用いた
ときに実現できる機能や効果は、前述した通りである。
【0071】このモデル・ビュー・コントローラ・コマ
ンド手段に、コマンド実行履歴スタック手段と操作取消
手段とを組み合わせると、第2の目的である繰作取り消
し機能を追加できる。コマンド実行履歴スタック手段に
より、実行起動処理を実行したコマンドが記憶される。
そして、操作取消手段により、コマンド実行履歴スタッ
ク手段のポップ手段により取り出したコマンドの実行取
消起動処理が実行される。この結果、GUIによるアプ
リケーションの繰作が取り消される。また、この操作の
取り消し機能には特に制限がないため、GUIによるア
プリケーションの操作を確実に取り消すことができる。
但し、実行したコマンドを保存する十分なメモリが必要
である。
【0072】モデル・ビュー・コントローラ・コマンド
手段と、ドラッグコントローラ手段と、コマンド実行履
歴スタック手段と、操作取消手段とを組み合わせたGU
I生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、ドラ
ッグコントローラ手段とを組み合わせることにより、上
述したように第1の目的であるビジュアルなフィードバ
ックを与えるドラッグ・アンド・ドロップ処理を実現す
ることができるが、さらにこれらの手段に、コマンド実
行履歴スタック手段と繰作取消手段とを組み合わせるこ
とにより、第2の目的である繰作取り消し機能を追加す
ることができる。また、これらを組み合わせた場合の操
作の取消機能には特に制限がないため、GUIによるア
プリケーションの操作を確実に取り消すことができる。
但し、実行したコマンドを保存する十分なメモリが必要
である。
【0073】モデル・ビュー・コントローラ・コマンド
手段と、ドラッグコントローラ手段と、コマンド実行履
歴スタック手段と、操作取消手段と、コマンド取消履歴
スタック手段と、繰作再実行手段とを組み合わせたGU
I生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、ドラ
ッグコントローラ手段と、コマンド実行履歴スタック手
段と、操作取消手段とを組み合わせることにより、上述
したように第1および第2の目的であるドラッグ・アン
ド・ドロップ処理と操作の取り消し機能が実現できる
が、さらにこれらの手段にコマンド取消履歴スタック手
段と操作再実行手段とを組み合わせることにより、第3
の目的である取り消した操作の再実行機能を追加するこ
とができる。
【0074】取り消した繰作の再実行機能は、コマンド
取消履歴スタック手段により、実行取消起動処理を実行
したコマンドを記憶し、操作再実行手段により、コマン
ド実行履歴スタック手段のポップ手段によって取り出し
たコマンドの実行起動処理を実行する手順により実現す
ることができる。また、これらを組み合わせた場合の操
作の取消機能には特に制限がないため、GUIによるア
プリケーションの操作を確実に取り消すことができる。
但し、実行したコマンドを保存する十分なメモリが必要
である。
【0075】また、モデル・ビュー・コントローラ・コ
マンド手段と、コマンド実行履歴スタック手段と、繰作
取消手役と、コマンド取消履歴スタック手段と、操作再
実行手段とを組み合わせたGUI生成管理手段を用いる
ことにより、第3の目的だけではなく、第4の目的であ
るデモンストレーション動作を実現することができる。
【0076】まず、マクロ・コマンドに予めデモンスト
レーションするコマンドを記憶する。次にマクロ・コマ
ンドの実行起動処理を実行する、この結果、マクロ・コ
マンドに記憶した順番に操作が再現できる。従って、G
UI操作をデモンストレーションすることが可能にな
る。このため、GUIによるアプリケーション操作のト
レーニングを行わなくても、システムを利用することが
できる環境が実現できる。
【0077】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、操作取消手
段と、コマンド取消履歴スタック手段と、操作再実行手
段と、ドラッグコントローラ手段とを組み合わせたGU
I生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、コマ
ンド実行履歴スタック手段と、操作取消手段と、コマン
ド取消履歴スタック手段と、操作再実行手段とを組み合
わせたときに実現できる機能や効果は上述した通りであ
り、これらにさらにドラッグコントローラ手段を追加す
ることにより、ビジュアルなフィードバックを与えるド
ラッグ・アンド・ドロップ処理を簡単に実現できる。
【0078】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、操作取消手
段と、コマンド・ブロック実行手段とを組み合わせたG
UI生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、コマ
ンド実行履歴スタック手段と、操作取消手段とを組み合
わせたときに実現できる機能や効果は上述した通りであ
り、これらにさらにコマンド・ブロック実行手段を追加
することにより、予めデモンストレーションするための
マクロコマンドを作成しなくても、コマンド実行履歴ス
タック手段のコマンド記憶からデモンストレーション内
容を構築することができる。したがって、デモンストレ
ーション動作を行うために必要な手間を低減することが
できる。
【0079】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、操作取消手
段と、コマンド・ブロック実行手段と、ドラッグコント
ローラ手段とを組み合わせたGUI生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、コマ
ンド実行履歴スタック手段と、操作取消手段と、コマン
ド・ブロック実行手段とを組み合わせたときに実現でき
る機能や効果は上述した通りであり、これらにさらにド
ラッグコントローラ手段を追加することにより、ビジュ
アルなフィードバックを与えるドラッグ・アンド・ドロ
ップ処理を簡単に実現できる。
【0080】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、操作取消手
段と、コマンド取消履歴スタック手段と、操作再実行手
段と、コマンド・ブロック実行手段とを組み合わせたG
UI生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、コマ
ンド実行履歴スタック手段と、操作取消手段と、コマン
ド取消履塵スタック手段と、操作再実行手段とを組み合
わせたときに実現できる機能や効果は上述した通りであ
り、これらにさらにコマンド・ブロック実行手段を追加
することにより、予めデモンストレーションするための
マクロコマンドを作成しなくても、コマンド実行履歴ス
タック手段もしくはコマンド取消履歴スタック手段のコ
マンド記憶からデモンストレーション内容を構築するこ
とができる。
【0081】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、操作取消手
段と、コマンド取消履歴スタック手段と、操作再実行手
段と、ドラッグコントローラ手段と、コマンド・ブロッ
ク実行手段とを組み合わせたGUI生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、コマ
ンド実行履歴スタック手段と、操作取消手段と、コマン
ド取消履歴スタック手段と、操作再実行手段と、ドラッ
グコントローラ手段とを組み合わせたときに実現できる
機能や効果は上述した通りであるが、これらにさらにコ
マンド・ブロック実行手段を追加することにより、予め
デモンストレーションするためのマクロコマンドを作成
しなくても、コマンド実行履歴スタック手段もしくはコ
マンド取消履歴スタック手段のコマンド記憶からデモン
ストレーション内容を構築することができる。
【0082】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、操作取消手
段と、コマンド・ブロック実行手段と、コマントブロッ
ク編集手段とを組み合わせたGUI生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、コマ
ンド実行履歴スタック手段と、繰作取消手段と、コマン
ド・ブロック実行手段とを組み合わせたときに実現でき
る機能や効果は上述した通りであり、これらにさらにコ
マンド・ブロック編集手段を追加することにより、コマ
ンド・ブロック実行手段により生成したデモンストレー
ション内容を変更することができる。
【0083】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、繰作取消手
段と、ドラッグコントローラ手段と、コマンド・ブロッ
ク実行手段と、コマンド・ブロック編集手段とを組み合
わせたGUI生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、コマ
ンド実行履歴スタック手段と、操作取消手段と、コマン
ド・ブロック実行手段とを組み合わせたときに実現でき
る機能や効果は上述した通りであるが、これらにさらに
コマンド・ブロック編集手段を追加することにより、コ
マンド・ブロック実行手段により生成したデモンストレ
ーション内容を変更することができる。
【0084】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、操作取消手
段と、コマンド取消履歴スタック手段と、操作再実行手
段と、コマンド・ブロック実行手段と、コマンド・ブロ
ック編集手段とを組み合わせたGUI生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、コマ
ンド実行履歴スタック手段と、操作取消手段と、コマン
ド取消履歴スタック手段と、繰作再実行手段と、コマン
ド・ブロック実行手段とを組み合わせたときに実現でき
る機能や効果は上述した通りであり、これらにさらにコ
マンド・ブロック編集手段を追加することにより、コマ
ンド・ブロック実行手段により生成したデモンストレー
ション内容を変更することができる。
【0085】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、操作取消手
段と、コマンド取消履歴スタック手段と、操作再実行手
段と、ドラッグコントローラ手段と、コマンド・ブロッ
ク実行手段と、コマンド・ブロック編集手段とを組み合
わせたGUI生成管理手段 モデル・ビュー・コントローラ・コマンド手段と、コマ
ンド実行履歴スタック手段と、操作取消手段と、コマン
ド取消履歴スタック手段と、操作再実行手段と、コマン
ド・ブロック実行手段とを組み合わせたときに実現でき
る機能や効果は上述した通りであるが、これらにさらに
コマンド・ブロック編集手段を追加することにより、コ
マンド・ブロック実行手段により生成したデモンストレ
ーション内容を変更することができる。
【0086】
【発明の実施の形態】図6は、本発明を適用した一実施
形態の試験システムの構成を示す図である。同図に示す
本実施形態の試験システムは、GUI処理部100と複
数の試験機器110とを含んで構成されている。GUI
処理部100は、利用者に対してビジュアルなフィード
バックを与えるGUI環境を実現するためのものであ
り、パーソナルコンピュータやワークステーションある
いはこれらの機能を有する処理ボード等によって実現さ
れる。また、GUI処理部100はバスインタフェース
部200に接続されており、このバスインタフェース部
200を通して、試験機器接続バス210に接続された
複数の試験機器110と接続されている。試験機器接続
バス210は、例えばTCP/IP等のコンピュータ・
ネットワークやシリアルポートあるいはパラレルポー
ト、IEEE488ポート等やこれらを組み合わせたも
のが用いられる。
【0087】上述したGUI処理部100は、CPU1
0、ビデオRAM12、グラフィックプロセッサ14、
ホストインタフェース部16、RAM DAC18、グ
ラフィックディスプレイ装置24、メモリ26、ポイン
ティング装置インタフェース部28、ポインティング装
置30、ポインティングカーソル表示処理部32、GU
I生成管理部34を含んで構成されている。
【0088】CPU10は、ホストインタフェース部1
6、メモリ26、ポインティング装置インタフェース部
28、ポインティングカーソル表示処理部32、GUI
生成管理部34とバス接続されており、GUI処理部1
00の全体を制御する。ビデオRAM12は、グラフィ
ックディスプレイ装置24に表示する画像データをドッ
ト単位で格納する。例えば、ビデオRAM12は、パッ
クド・ピクセル(Packed Pixel)方式で構成されてお
り、グラフィックディスプレイ装置24の表示画面の1
ドットが1バイトの大きさを持つ1ピクセル値に対応す
る。パックド・ピクセル方式では、通常は、ビデオRA
M12の表示画面のドット数に対応するメモリ領域を表
示領域として使用し、残りのメモリ領域(非表示領域)
をウインドウ画像やアイコン画像などのGUI部品の構
築や記憶に使用する。
【0089】グラフィックプロセッサ14は、CPU1
0から送られてくるコマンドを受け付け、ビデオRAM
12の設定を行う。また、グラフィックプロセッサ14
は、画面表示に必要な同期信号を生成するとともに、こ
の生成した同期信号に同期させてビデオRAM12の表
示領域のピクセルデータを読み出してRAM DAC1
8に送る。メモリ26は、グラフィックプロセッサ14
等の初期化や、フォントあるいは画像データの記憶等に
使用される。
【0090】RAM DAC18は、グラフィックプロ
セッサ14から送られてきたピクセルデータをビデオ信
号に変換するためのものであり、この変換されたビデオ
信号がグラフィックディスプレイ装置24に送られる。
このRAM DAC18は、ルックアップテーブル20
とDAC22を含んでいる。
【0091】図7は、ルックアップテーブル20とビデ
オRAM12の関係を示す図である。ルックアップテー
ブル20は、ビデオRAM12から読み出されたピクセ
ル値を、予め登録されているレッド(R)、グリーン
(G)、ブルー(B)の各デジタル値に変換する。この
ルックアップテーブル20から出力されるRGBの各デ
ジタル値は、DAC(デジタル−アナログ変換器)22
によってアナログのビデオ信号に変換され、グラフィッ
クディスプレイ装置24に送られる。グラフィックディ
スプレイ装置24は、送られてきたビデオ信号に基づい
て画面表示を行い、これによってGUIが実現される。
【0092】また、グラフィックディスプレイ装置24
における表示画面のGUI制御は、ポインティング装置
30によって行われる。ポインティング装置30は、押
しボタンスイッチを有しており、移動情報の他に押しボ
タンスイッチのオンオフ情報(例えば押しボタンを押下
した状態がオン状態に、押しボタンから指等を離したリ
リース状態がオフ状態に対応する)をポインティング装
置インタフェース部28を介してCPU10に送る。ポ
インティングカーソル表示処理部32は、ポインティン
グ装置30が指し示すグラフィックディスプレイ装置2
4の画面上の位置にポインティングカーソルを表示す
る。具体的には、ポインティングカーソル表示処理部3
2は、カーソル表示位置と、ビデオRAM12の非表示
領域に格納されているカーソル画像の位置を記憶し、こ
のビデオRAM12の非表示領域に格納されているカー
ソル画像を、ビデオRAM12の表示領域上のカーソル
表示位置を転送することによりカーソル表示を行う。こ
のポインティングカーソル表示処理部32は、システム
起動時にデフォルトのカーソル画像をビデオRAM12
の非表示領域上に生成し、この生成したカーソル画像の
領域を記憶する。その後のカーソル表示位置はポインテ
ィング装置30の移動を検出することにより取得する。
【0093】また、GUI生成管理部34は、オブジェ
クト生成部40、オブジェクト管理部42、オブジェク
ト検出部44、イベント検出通知部46を含んでいる。
オブジェクト生成部40は、オブジェクトを生成し、生
成したオブジェクトをメモリ26に記憶するものであ
る。オブジェクト管理部42は、オブジェクト生成部4
0で生成されたメモリ26上のオブジェクトを管理す
る。このオブジェクトの管理は、オブジェクトの種類、
名称、オブジェクトのエントリポイントのテーブルをメ
モリ26上に持つことにより行われる。
【0094】オブジェクト検出部44は、オブジェクト
の種類と名称を指定することにより、オブジェクトのエ
ントリポイントを検出する機能を有する。この機能は、
オブジェクト管理部42が持つテーブルを参照すること
により実現される。また、オブジェクト検出部44は、
グラフィックディスプレイ装置24の画面上の任意の位
置座標でのポインティング装置30のイベント処理を担
当するコントローラを検出する機能を有する。コントロ
ーラの検出は、オブジェクト管理部42が持つテーブル
を参照して位置座標上にあるビューを検出した後に、ビ
ューの属性値からコントローラを得るという手順によっ
て行われる。
【0095】イベント検出通知部46は、ポインティン
グ装置30からのイベントを検出し、イベントが発生し
た画面上の位置座標を取得する。そして、イベント検出
通知部46は、ポインティング装置30のイベント処理
を担当するコントローラをオブジェクト検出部44によ
り検出し、この検出したオブジェクトに対してイベント
の通知処理を行う。このイベント検出通知部46が検出
するイベントは、ポインティング装置30によるもので
あり、このイベントはボタンダウン、ボタンアップ、ド
ラッグのいずれかである。
【0096】図8は、イベント検出通知部46によるイ
ベントの検出通知処理の動作手順を示す流れ図である。
まず、イベント検出通知部46は、ポインティング装置
30の押しボタンの状態を検出して(ステップa1)、
押しボタンが押下された状態(押しボタンが押下された
状態を「ボタンダウン」と称する)にあるか否かを判定
する(ステップa2)。押しボタンが押下されない場合
には、ステップa1に戻って処理が繰り返される。
【0097】押しボタンが押下された場合には、‘ボタ
ンダウン終了通知処理’が行われる(ステップa3)。
‘ボタンダウン終了通知処理’では、イベント検出通知
部46は、オブジェクト検出部44を用いてイベント処
理を行うオブジェクトを検出し、イベントが発生した位
置座標を引数にして、検出したオブジェクトの‘ボタン
ダウン終了処理’を実行する。
【0098】次に、イベント検出通知部46は、ポイン
ティング装置30の移動を検出し(ステップa4)、移
動が行われたか否かを判定する(ステップa5)。ポイ
ンティング装置30の移動が行われた場合には、イベン
ト検出通知部46は、‘ドラッグ通知処理’を行い(ス
テップa6)、移動が行われなかった場合には、ポイン
ティング装置30の押しボタンの状態を検出する(ステ
ップa7)。
【0099】ステップa6における‘ドラッグ通知処
理’では、イベント検出通知部46は、オブジェクト検
出部44を用いてイベント処理を行うオブジェクトを検
出し、検出したオブジェクトによる‘ドラッグ処理’を
位置座標を引数として実行する。この‘ドラッグ処理’
が実行された後に、ステップa7に進んで、ポインティ
ング装置30の押しボタンの状態検出が行われる。
【0100】次に、イベント検出通知部46は、ステッ
プa6におけるポインティング装置30の押しボタンの
状態の検出結果に基づいて、押しボタンから利用者の指
や手が離されてリリース状態(この状態を「ボタンアッ
プ」と称する)にあるか否かを判定する(ステップa
8)。ボタンアップ状態にない場合には、上述したステ
ップa4に戻って処理が繰り返される。また、ボタンア
ップの状態の場合には、イベント検出通知部46は、ド
ラッグ処理が行われたか否かを判定する(ステップa
9)。ドラッグ処理が行われたか否かは、押しボタンが
押下された状態でのポインティング装置30の移動の有
無によって判断することができる。押しボタンが押下さ
れた状態でポインティング装置30の移動があった場合
には、ドラッグ処理が行われたものと判断され、次に
‘ドラッグ終了通知処理’が行われる(ステップa1
0)。また、ドラッグ処理が行われなかった場合には、
次に‘ボタンアップ終了通知処理’が行われる(ステッ
プa11)。
【0101】ステップa10における‘ドラッグ終了通
知処理’では、イベント検出通知部46は、オブジェク
ト検出部44を用いてイベント処理を行うオブジェクト
を検出し、検出したオブジェクトによる‘ドラッグ終了
通知処理’をポインティングカーソルの位置座標を引数
として実行する。また、ステップa11における‘ボタ
ンアップ終了通知処理’では、イベント検出通知部46
は、オブジェクト検出部44を用いてイベント処理を行
うオブジェクトを検出し、検出したオブジェクトによる
‘ボタンアップ終了通知処理’をボタンアップが発生し
たポインティングカーソルの位置座標を引数として実行
する。その後、上述したステップa1に戻って処理が繰
り返される。
【0102】次に、オブジェクト生成部40の概要を各
具体例に基づいて示す。 〔具体例1〕具体例1は、GUI生成管理部34にモデ
ル・ビュー・コントローラ手段とドラッグコントローラ
手段の機能(MVCC)を持たせた場合に対応してお
り、ビジュアルなフィードバックを与えるドラッグ・ア
ンド・ドロップ処理の実現方法が示されている。
【0103】図9および図10は、具体例1に対応する
GUI生成管理部34の基本オブジェクトの構成図であ
る。なお、図9および図10に共通に含まれる「オブザ
ーバ」は同一のものを示しており、図9と図10の全体
によりGUI生成管理部34の基本オブジェクトの構成
が示されている。各オブジェクトの特徴と共同作業を行
うオブジェクトを以下に示す。
【0104】“オブザーバ”: [特徴]:オブザーバは、ビューとコントローラを共通
にあつかうためのオブジェクトである。ビューとコント
ローラが共通にもつ‘アップデート処理’を定義する。 [共同作業オブジェクト]:モデル [属性]:なし [処理]: ・アップデート処理() オブザーバの‘アップデート処理’は、何も行わない。
子のオブジェクトをオブザーバとしてあつかったとき
に、子のオブジェクトの‘アップデート処理’が実行で
きるように用意した処理である。
【0105】“モデル”: [特徴]:アプリケーションの核の機能を備える。従属
するビューとコントローラを属性としてメモリ上に記憶
する。従属するビューとコントローラにデータの変更を
通知する。ドロップ要求が受け入れられる否かかの問い
合わせに対応する。 [共同作業するオブジェクト]:ビュー、コントローラ [属性]: ・オブザーバのエントリポイントのセット オブザーバのエントリ・ポイントとは、オブザーバのメ
モリ上のアドレス・データである。エントリ・ポイント
のセットとは、エントリ・ポイントを配列構造でもつこ
とである。
【0106】[処理]: ・アタッチ処理(オブザーバのエントリポイント) アタッチ処理は、引数で与えられるオブザーバを‘オブ
ザーバのエントリポイントのセット’属性に登録する。 ・デタッチ処理(オブザーバのエントリポイント) デタッチ処理は、引数で与えられるオブザーバを‘オブ
ザーバのエントリポイントのセット’属性から削除す
る。 ・通知処理() 通知処理とは、オブザーバの‘アップデート処理’を実
行する処理である。処理を実行する対象は、‘オブザー
バのエントリ・ポイントのセット’属性としてメモリ上
に記憶されているオブザーバである。 ・サービス処理() モデルが提供するサービス処理である。処理内容は、子
のオブザーバにより異なる。 ・ドロップ可否判定処理(モデルのエントリポイント) ドロップ可否判定処理とは、引数で与えられたモデルの
ドロップの可否を判定する処理である。 ・ドロップ処理(モデルのエントリポイント) アイコンのドラッグ・アンド・ドロップにより、モデル
に従属するビューにアイコンがドロップされたときの処
理である。引数には、ドロップされたアイコンのモデル
が指定される。処理内容は、子のオブジェクトにより異
なる。
【0107】“ビュー”: [特徴]:スタティック・ビューとダイナミック・ビュ
ーの共通する属性と処理を定義する。アップデート処理
を実装する。関係するコントローラを生成する。 [共同作業するオブジェクト]:コントローラ [属性]: ・コントローラのエントリポイント ビューと対に動作するコントローラのメモリ上のエント
リポイントを記憶する領域である。 ・表示座標 表示座標とは、画像を表示するためのグラフィック・デ
ィスプレイ(グラフィック・ディスプレイ装置24の表
示画面)上の位置座標(x,y)を記憶する領域であ
る。グラフィック・ディスプレイ上の位置座標は、ビデ
オRAM12の表示領域の座標と一致する。 ・ビデオRAM領域 ビデオRAM領域とは、ビデオRAM領域の非表示領域
に作成した画像のエントリポイントと画像の大ききを記
憶する領域である。
【0108】フォアグランド・カラー フォアグランド・カラーとは、画像の色をRGB値で記
憶する領域である。 ・バックグランド・カラー バックグランド・カラーとは、画像の背景色をRGB値
で記憶する領域である。 ・ボタンダウン受付フラグ ボタンダウン受付フラグは、整数型のデータである。ボ
タンダウン受付フラグは、ボタンダウンを許可するとき
1となり、ボタンダウンを許可しないとき0となる。 ・ボタンアップ受付フラグ ボタンアップ受付フラグは、整数型のデータである。ボ
タンアップ受付フラグは、ボタンアップを許可するとき
1となり、ボタンアップを許可しないとき0となる。 ・ドラッグ受付フラグ ドラッグ受付フラグは、整数型のデータである。ドラッ
グ受付フラグは、ドラッグを許可するとき1となり、ド
ラッグを許可しないとき0となる。
【0109】[処理]: ・イニシャライズ処理() 属性をクリアし、‘画像生成処理’と‘コントローラ生
成処理’を実行する処理である。 ・画像生成処理() ビデオRAM12の非表示領域にピクセル値の画像を生
成する処理である。‘画像生成処理’では、ルックアッ
プ・テーブル20を参照し、作成するGUI画像のカラ
ーに対応するピクセル値を取得する。ルック・アップ・
テーブル20に対応するカラー情報がないとき、ビュー
は、ルックアップ・テーブル20の空きテーブルに新た
にカラー値を設定し、そのピクセル値を取得する。そし
て、‘画像生成処理’は、取得したピクセル値により、
アイコン画像をビデオRAM12の連続した非表示領域
に生成する。そして、この領域を‘ビデオRAM領域’
属性としてメモリ26に記憶する。生成する画像は、子
のオブジェクトにより異なる。 ・コントローラ生成処理() 関連するコントローラを生成し、コントローラのイニシ
ャライズ処理を実行する処理である。 ・アップデート処理() 表示処理を実行する処理である。
【0110】表示処理() ビデオRAM領域属性が示すビデオRAM表示領域の画
像をビデオRAM12の表示領域に転送する処理であ
る。 ・ビデオRAM領域取得処理() ビデオRAM領域属性としてメモリ26に記憶した値を
読出す処理である。 ・ビデオRAM領域設定処理(ビデオRAM12上のエ
ントリポイント、画像の大きさ) ビデオRAM領域属性に引数の値を設定する処理であ
る。 ・表示座標取得処理() 表示座標属性を読み出す処理である。 ・表示座標設定処理(位置座標) 表示座標属性に引数の値を設定する処理である。 ・移動処理(位置座標) 引数で与えられた位置座標を、‘表示座標’属性に格納
する。そして、‘アップデート処理’を実行する。
【0111】“スタティック・ビュー”: [特徴]:ユーザに対してモデルの情報を表示する。関
連するスタティック・コントローラの生成と初期設定を
行う。アップデート処理を実装する。ドロップ要求の受
け入れをモデルに確認し、問い合わせを行ったダイナミ
ック・コントローラに通知する。 [共同作業するオブジェクト]:スタティック・コント
ローラ、モデル、ダイナミック・コントローラ [属性]: ・モデルのエントリポイント 表示の核のデータをもつモデルのメモリ26上のエント
リポイントを記憶する領域である。 [処理]: ・コントローラ生成処理() 関連するスタティック・コントローラを生成する。そし
て、スタティック・コントローラのイニシャライズ処理
を実行する。さらに、スタティック・コントローラの
‘モデルのエントリポイント’属性にモデルのエントリ
ポイントを格納する。 ・画像生成処理() ビデオRAM12の非表示領域にピクセル値の画像を生
成する処理である。生成する画像は、子のオブジェクト
により異なる。生成した領域を親のビューの‘ビデオR
AM領域’属性値としてメモリ上に記憶する。 ・ドロップ許可の問い合わせ処理() ポインティング・カーソル下にある最表面の画像を管理
するモデルの‘ドロップ可否判定処理’を実行する。
【0112】“ダイナミック・ビュー”: [特徴]:ドラッグなどのダイナミックなビューに共通
する属性と処理を定義する。関連するダイナミック・コ
ントローラの生成と初期設定を行う。 [共同作業するオブジェクト]:ダイナミック・コント
ローラ、スタティック・コントローラ [属性]: ・スタティック・コントローラのエントリポイント ダイナミック・ビューを生成したスタティック・コント
ローラのメモリ26上のエントリポイントを記憶する領
域である。 [処理]: ・コントローラ生成処理() 関連するダイナミック・コントローラを生成し、ダイナ
ミック・コントローラの‘イニシャライズ処理’を実行
する。 ・スタティック・コントローラのエントリポイント取得
処理() ‘スタティック・コントローラのエントリポイント’属
性に登録されているエントリポイントを読み出す。
【0113】“ドラッグ・ビュー”: [特徴]:ドラッグ動作に関する情報を表示する。ポイ
ンティング・カーソルのイメージを変更する。ポインテ
ィング・カーソル横にカーソルに追従する画像を表示す
る。関連するドラッグ・コントローラの生成と初期設定
を行う。 [共同作業するオブジェクト]:ドラッグ・コントロー
ラ、スタティック・ビュー [属性]: ・ドロップ可能カーソル画像のビデオRAM領域 ドロップ可能を示すカーソル画像のビデオ信号RAM1
2の非表示領域上のアドレス・データを格納する。 ・ドロップ不可能カーソル画像のビデオRAM領域 ドロップ不可能を示すカーソル画像のビデオRAM12
の非表示領域上のアドレス・データを格納する。 ・ノーマル・カーソル画像のビデオRAM領域 ドラッグ・ビューが起動される以前に利用されていたカ
ーソル画像のビデオRAM12の非表示領域上のアドレ
ス・データを格納する。 ・カーソル表示選択フラグ カーソル表示選択フラグは、整数型のデータである。カ
ーソル表示選択フラグは、ポインティング・カーソルを
ドロップ可能を示すカーソル画像にするときに1とな
り、ポインティング・カーソルをドロップ不可能を示す
カーソル画像にするとき0となる。
【0114】[処理]: ・コントローラ生成処理() 関連するドラッグ・コントローラを生成し、ドラッグ・
コントローラの‘イニシャライズ処理’実行する。 ・表示処理() 表示処理は、カーソル表示選択フラグを参照する。カー
ソル表示選択フラグが1の場合、‘ドロップ可能カーソ
ル画像のビデオRAM領域’属性をポインティング・カ
ーソル表示処理部32に格納する。カーソル表示選択フ
ラグが0の場合、‘ドロップ不可能カーソル画像のビデ
オRAM領域’属性をポインティング・カーソル表示処
理部32に格納する。さらに、表示処理は、‘ビデオR
AM格納領域’属性に格納されている画像を‘表示画
像’が示すビデオRAM12の表示領域に転送し、カー
ソルに追従する画像の表示を行う。 ・画像生成処理() ‘追従画像設定処理’と‘カーソル画像生成処理’を実
行する。 ・追従画像設定処理() カーソルに追従する画像を親のオブジェクトであるビュ
ーの‘ヒデオRAM領域’属性に格納する。格納するデ
ータは、ビデオRAM12の非表示額域のアドレスであ
る。 ・カーソル画像生成処理() ビデオRAM12の非表示領域にドロップ可能を示すカ
ーソル画像を生成し‘ドロップ可能カーソル画像のビデ
オRAM領域’属性に登録する。さらに、ビデオRAM
12の非表示領域にドロップ不可能を示すカーソル画像
を生成し、‘ドロップ不可能カーソル画像のビデオRA
M領域’属性に登録する。 ・ドロップ可能表示選択処理() ‘カーソル表示選択フラグ’属性を1にする。 ・ドロップ不可能表示選択処理() ‘カーソル表示選択フラグ’属性を0にする。
【0115】“コントローラ”: [特徴]:スタティック・コントローラとダイナミック
・コントローラの共通する属性と処理を定義する。利用
者によって入力されるイベントを受ける。イベントをモ
デルへのサービス要求やビューへの表示要求に変換す
る。アップデート処理を実装する。 [共同作業するオブジェクト]:ビュー [属性]: ・ビューのエントリ・ポイント ビューのメモリ26上のエントリポイントである。 ・ボタンダウン処理実行フラグ ボタンダウン・イベント処理実行フラグは、整数型のデ
ータである。ボタンダウン処理を許可するとき1にな
り、ボタンダウン処理を許可しないとき0となる。 ・ボタンアップ処理実行フラグ ボタンアップ・イベント処理実行フラグは、整数型のデ
ータである。ボタンアップ処理を許可するとき1とな
り、ボタンアップ処理を許可しないとき0となる。 ・ドラッグ処理実行フラグ ドラッグ処理実行フラグは、整数型のデータである。ド
ラッグ処理を許可するとき1となり、ドラッグ処理を許
可しないとき0となる。
【0116】[処理]: ・アップデート処理() ‘ビューのエントリ・ポイント’属性が示すビューの
‘ボタンダウン受付フラグ’、‘ボタンアップ受付フラ
グ’、‘ドラッグ受付フラグ’属性を、‘ボタンダウン
処理実行フラグ’、‘ボタンアップ処理実行フラグ’、
‘ドラッグ処理実行フラグ’属性にセットする。 ・イニシャライズ処理(ビューのエントリポイント) ‘ビューのエントリ・ポイント’属性に、引数で指定さ
れたビューのエントリポイントを格納する。 ・ボタンダウン終了処理(位置座標) ボタンダウン終了時の処理である。‘ボタンダウン処理
実行フラグ’属性が1のときのみ実行する。コントロー
ラ自体の‘ボタンダウン終了処理’は、何も行わない。
コントローラの子のオブジェクトの‘ボタンダウン終了
処理’が実行できるように用意した処理である。 ・ボタンアップ終了処理(位置座標) ボタンアップ終了時の処理である。‘ボタンアップ処理
実行フラグ’属性が1のときのみ実行する。コントロー
ラ自体の‘ボタンアップ終了処理’は、何も行わない。
コントローラの子のオブジェクトの‘ボタンアップ終了
処理’が実行できるように用意した処理である。 ・ドラッグ処理(位置座標) ポインティング装置30のドラッグ途中の処理である。
‘ドラッグ処理実行フラグ’属性が1のときのみ実行す
る。コントローラ自体の‘ドラッグ処理’は、何も行わ
ない。コントローラの子のオブジェクトの‘ドラッグ処
理’が実行できるように用意した処理である。 ・ドラッグ終了処理(位置座標) ドラッグ処理終了時の処理である。モデルの‘ドロップ
処理’を実行する。‘ドラッグ処理実行フラグ’属性が
1のときのみ実行する。
【0117】“スタティック・コントローラ”: [特徴]:利用者によって入力されるイベントを受け
る。イベントをモデルへのサービス要求やスタティック
・ビューへの表示要求に変換する。アップデート手続き
を実装する。ダイナミック・ビューを生成する。 [共同作業するオブジェクト]:スタティック・ビュ
ー、モデル、ダイナミック・ビュー [属性]: ・モデルのエントリポイント モデルのメモリ26上のエントリポイントである。 ・ダイナミック・ビューのエントリポイント ダイナミック・ビューのメモリ26上のエントリポイン
トである。 [処理]: ・ドラッグ処理(位置座標) ‘ダイナミック・ビューの生成処理’を実行する。 ・ドラッグ終了処理(位置座標) ダイナミック・ビューとダイナミック・コントローラを
消去する。そして、引数の位置座標上にある画像を管理
するモデルの‘ドロップ可否判定処理’を実行する。ド
ロップ可否判定の結果、ドロップが可能であれば、親の
コントローラの‘ドラッグ終了処理’を実行し、ドラッ
グ終了処理を終了する。ドロップが不可能であれば、処
理を終了する。 ・ダイナミック・ビューの生成処理() ダイナミック・ビューを生成し、ダイナミック・ビュー
の‘イニシャライズ処理’を実行する。そして、生成し
たダイナミック・ビューのエントリポイントを‘ダイナ
ミック・ビューのエントリポイント’属性に格納する。
さらに、ダイナミック・ビューの‘スタティック・コン
トローラのエントリポイント’属性にスタティック・コ
ントローラ自身のエントリポイントを格納する。
【0118】“ダイナミック・コントローラ”: [特徴]:ドラッグなどのダイナミックなコントローラ
の共通する属性と処理を定義する。利用者によって入力
されるイベントを受ける。イベントをダイナミック・ビ
ューへの表示要求に変換する。 [共同作業するオブジェクト]:ダイナミック・ビュー
およびスタティック・ビュー [属性]:なし [処理]: ・ドラッグ処理(位置座標) ダイナミック・コントローラの‘ドラッグ処理’は、何
も行わない。ドラッグ・コントローラなどの子のオブジ
ェクトの‘ドラッグ処理’が実行できるように用意した
処理である。 ・ドラッグ終了処理(位置座標) ダイナミック・コントローラの‘ドラッグ終了処理’
は、何も行わない。ドラッグ・コントローラなどの子の
オブジェクトの‘ドラッグ終了処理’が実行できるよう
に用意した処理である。
【0119】“ドラッグ・コントローラ”: [特徴]:ドラッグされてからポインティング装置30
のボタンをリリースするまでのイベントをドラッグ・ビ
ューへの処理に変換する。ドロップされたとき、ドロッ
プされたビューに対応するモデルに位置情報を送り、ド
ロップ処理を依頼する。アップデート手続きを実装す
る。 [共同作業するオブジェクト]:ドラッグ・ビュー [属性]:なし [処理]: ・ドラッグ処理(位置座標) ビューの‘ドロップ可否の問い合わせ処理’を実行し、
ドロップの可否を確認する。対象となるビューは、ポイ
ンティング・カーソル下にある最前面にある画像を管理
するビューである。ビューへドロップが可能であれば、
‘ドラッグ・ビューのドロップ可能表示選択処理’を実
行する。逆に、ビューへのドロップが不可能であれば、
ドラッグ・ビューの‘ドロップ不可能表示選択処理’を
実行する。・ドラッグ終了処理(位置座標) ドラッグ・ビューを生成したスタティック・ビューの
‘ドラッグ終了処理’を実行する。このスタティック・
ビューは、ドラッグ・ビューの‘スタティック・ビュー
のエントリポイントの取得処理’を実行することにより
得る。
【0120】MVCCは、上述した各種の基本オブジェ
クトを利用することにより、アイコンのドラッグ・アン
ド・ドロップを実現する。アイコンは、スタティック・
ビューを継承したアイコン・ビューとスタティック・コ
ントローラを継承したアイコン・コントローラから構成
される。
【0121】図11は、アイコン・ビューとアイコン・
コントローラの内容を示す図である。同図に示すアイコ
ン・ビューとアイコン・コントローラの特徴と共同作業
するオブジェクトを以下に示す。
【0122】“アイコン・ビュー”: [特徴]:アイコン画像の表示を行う。関連するアイコ
ン・コントローラの生成と初期設定を行う。 [共同作業するオブジェクト]:アイコン・コントロー
ラ [属性]: ・イメージ・データ アイコン上に表示する絵のビットマップを記憶する領域
である。 ・2次元表示属性 x軸とy軸方向の大きさを記憶する領域である。 [処理]: ・コントローラ生成処理() 従属するアイコン・コントローラを生成し、コントロー
ラの‘イニシャライズ処理’を実行する。 ・画像生成処理() アイコン・ビューの画像生成処理では、アイコンのイメ
ージ画像をビデオRAM12の非表示領域に生成する。
アイコンのイメージ画像の大きさは、2次元表示属性に
より定められる。また、イメージ画像は、‘イメージ・
データ’属性のビットマップ・データを用いる。作成し
た画像を格納するビデオRAM12の非表示領域は、ビ
ューの ‘ビデオRAM領域’属性に格納される。
【0123】“アイコン・コントローラ”: [特徴]:アイコン画像に対する利用者による入力のイ
ベントを受ける。ドラッグ終了処理を実装する。ドラッ
グ・ビューを生成する。 [共同作業するオブジェクト]:アイコン・ビュー、ド
ラッグ・ビュー [属性]:なし [処理]: ・ドラッグ・イベント処理(位置座標) ‘ドラッグ・ビューの生成処理’を実行する処理であ
る。 ・ドラッグ終了処理(位置座標) ドラッグ開始時に生成したドラッグ・ビューとドラッグ
・コントローラを消去する。そして、引数で指定された
位置座標上にある画像を管理するビューの‘ドロップの
可否の問い合わせ処理’を実行する。ビューの‘ドロッ
プの可否の問い合わせ処理’の結果、ドロップが可能で
あれば、親のコントローラの‘ドラッグ終了処理’を実
行する。ビューの‘ドロップの可否の問い合わせ処理’
の結果、ドロップが不可能であれば、処理を終了する。 ・ドラッグ・ビューの生成処理() ドラッグ・ビューを生成し、ドラッグ・ビューの‘イニ
シャライズ処理’を実行する。そして、生成したドラッ
グ・ビューのエントリポイントを‘ダイナミック・ビュ
ーのエントリポイント’属性に格納する。さらに、ドラ
ッグ・ビューの‘スタティック・コントローラのエント
リポイント’にアイコン・コントローラ自身のエントリ
ポイントを格納する。
【0124】図12は、オブジェクト生成管理部34に
よるアイコンのビューとコントローラを生成する手順を
示す流れ図である。
【0125】まず、MVCCは、モデルを生成し(ステ
ップb1)、次にアイコン・ビューを生成した後に(ス
テップb2)、生成したアイコン・ビユーのイニシャラ
イズ処理を実行する(ステップb3)。但し、アイコン
・ビュー自体はイニシャライズ処理をもたないため、親
のオブジェクトであるビューのイニシャライズ処理が実
行される。また、スタティック・ビューの‘モデルのエ
ントリポイント’属性にステップb1で生成したモデル
のエントリポイントを設定する。このスタティック・ビ
ューは、アイコン・ビューの親のオブジェクトである。
【0126】ビューのイニシャライズ処理では、MVC
Cは、コントローラ生成処理を実行する(ステップb
4)。このコントローラ生成処理は、同じ名称と引数を
もつ処理をアイコン・ビューがもっており、アイコン・
ビューのコントローラ生成処理が実行される。アイコン
・ビューのコントローラ生成処理では、アイコン・コン
トローラを生成し、生成したアイコン・コントローラの
エントリポイントを‘コントローラのエントリポイン
ト’属性としてメモリ26上に記憶する。
【0127】次に、MVCCは、アイコン・コントロー
ラのイニシャライズ処理を実行する(ステップb5)。
このとき、実行されるのは コントローラのイニシャラ
イズ処理である。イニシャライズ処理の引数に指定され
るのは、アイコン・ビューのエントリポイントである。
これは、アイコン・ビューを親のオブジェクトとしてあ
つかうことができるためである。そして、スタティック
・コントローラの‘モデルのエントリポイント’属性に
ステップb1で生成したモデルのエントリポイントを設
定する。このスタティック・コントローラは、アイコン
・コントローラの親のオブジェクトであり、コントロー
ラのイニシャライズ処理では、引数に指定されたアイコ
ン・ビューのエントリポイントを‘ビューのエントリポ
イント’属性に格納する。
【0128】次に、MVCCは、アイコン・ビューのエ
ントリポイントを引数に与え、モデルのアタッチ処理を
実行する(ステップb6)。モデルのアタッチ処理で
は、アイコン・ビューのエントリポイントをオブザーバ
のエントリポイントとして、‘オブザーバのエントリポ
イントのセット’属性に格納する。
【0129】最後に、MVCCは、アイコン・コントロ
ーラのエントリポイントを引数に与え、モデルのアタッ
チ処理を実行する(ステップb7)。モデルのアタッチ
処理では、アイコン・コントローラのエントリポイント
をオブザーバのエントリポイントとして、‘オブザーバ
のエントリポイントのセット’属性に格納する。以上
が、MVCCによるアイコンのビューとコントローラ生
成するシーケンスとなる。
【0130】次に、MVCCによるアイコンのドラッグ
・アンド・ドロップ処理の例を示す。この処理は、グラ
フィック・ディスプレイ上に表示されたソース(例えば
DUT)のアイコンをターゲット(例えば試験機器11
0)のアイコンにドラッグ・アンド・ドロップする処理
を示したものである。ソースのアイコンは、ソースのモ
デルに従属するアイコン・ビューとアイコン・コントロ
ーラからなる。また、ターゲットのアイコンは、ターゲ
ットのモデルに従属するアイコン・ビューとアイコン・
コントローラからなるものとする。
【0131】(1)ドラッグ開始処理 図13は、ドラッグ開始処理の手順を示す流れ図であ
る。
【0132】ステップa6は、図8に示した動作手順の
に含まれる‘ドラッグ通知処理’である。‘ドラッグ通
知処理’が実行されると、MVCCは、ソースのアイコ
ン・コントローラの‘ドラッグ処理’を実施し(ステッ
プc1)、この‘ドラッグ処理’では、さらに‘ドラッ
グ・ビューの生成処理’を実行する(ステップc2)。
また、MVCCは、この‘ドラッグ・ビューの生成処
理’では、ドラッグ・ビューを生成し、生成されたドラ
ッグ・ビューによって‘画像生成処理’を実行する(ス
テップc3)。‘画像生成処理’では、追従画像、ドロ
ップが可能であるときのカーソル画像、ドロップが不可
能であるときのカーソル画像が生成される。
【0133】‘画像生成処理’では、MVCCは、まず
‘追従画像生成処理’を実行し(ステップc4)、‘追
従画像生成処理’ではソース・アイコン・ビューの‘ビ
デオRAM領域取得処理’を実行して(ステップc
5)、ソース・アイコン画像のビデオRAM領域を取得
する。
【0134】次に、MVCCは、‘ヒデオRAM領域設
定処理’を実行し(ステップc6)、ソース・アイコン
の‘ビデオRAM領域’属性をドラッグ・ビューの‘ビ
デオRAM領域’属性にコピーする。
【0135】また、MVCCは、‘カーソル画生成処
理’を実行し(ステップc7)、ドロップが可能である
ときのカーソル画像、あるいはドロップが不可能である
ときのカーソル画像をビデオRAM12の非表示領域に
生成する。カーソル画生成処理では、生成したドロップ
が可能であるときのカーソル画像の情報が‘ドロップ可
能カーソル画像のビデオRAM領域’属性に格納され
る。また、生成したドロップが不可能であるときのカー
ソル画像の情報が‘ドロップ不可能力一ソル画像のビデ
オRAM領域’属性に格納される。
【0136】また、‘ダイナミック・ビューの生成処
理’では、ドラッグ・ビューを生成すると、ドラッグ・
ビューの‘イニシャライズ処理’を実行する(ステップ
c8)。ドラッグ・ビューの‘イニシャライズ処理’で
は、ドラッグ・ビューの‘コントローラ生成処理’が実
行される(ステップc9)。ドラッグ・ビューの‘コン
トローラ生成処理’では、コントローラを生成し、ドラ
ッグ・コントローラの‘イニシャライズ処理’が実行さ
れる(ステップc10)。ドラッグ・コントローラの
‘イニシャライズ処理’では、ドラッグ・ビューのエン
トリポイントを‘ビューのエントリポイント’属性に登
録する処理が行われる。
【0137】(2)ドラッグ中の処理 図14は、ドラッグ中の処理手順を示す図である。
【0138】ステップa6は、図8に示した動作手順に
含まれる‘ドラッグ通知処理’である。‘ドラッグ通知
処理’が実行されると、ドラッグ・コントローラの‘ド
ラッグ処理’が実行される(ステップd1)。スタティ
ック・コントローラがドラッグ・ビューを生成したとき
に、オブジェクト検出部44は、ドラッグ・コントロー
ラを検出する。そして、イベント検出通知部46は、ド
ラッグ・コントローラのドラッグ通知処理を実行する。
【0139】ドラッグ・コントローラの‘ドラッグ処
理’では、ターゲットのアイコン・ビューにドロップ可
否を問い合わせ、ドラッグ・ビューの属性を変更する。
まず、ドラッグ・コントローラの‘ドラッグ処理’で
は、‘ドロップ許可の問い合わせ処理’が実行される
(ステップd2)。問い合わせ処理の対象は、ポインテ
ィング・カーソル下にある画像を管理するスタティック
・ビューを継承するオブジェクトである。また、ドラッ
グ・コントローラの‘ドラッグ処理’では、引数の位置
座標をもとに、オブジェクト検出部44を用いて、ポイ
ンティング・カーソル下にある画像を管理するスタティ
ック・ビューが検出される。この例では、問い合わせの
対象をスタティック・ビューを継承するターゲットのア
イコン・ビューとする。
【0140】ターゲットのアイコン・ビューの‘ドロッ
プ許可の問い合わせ処理’では、ターゲットのモデルの
‘ドロップ可否判定処理’が実行される(ステップd
3)。なお、ターゲットのモデルは、ターゲットのアイ
コン・ビューの‘モデルのエントリポイント属性’に格
納されている。
【0141】次に、ドラッグ・コントローラの‘ドラッ
グ処理’において、ターゲットのアイコン・ビューの
‘ドロップ許可の問い合わせ処理’の結果をもとに、ド
ロップの可否判定が行われる(ステップd4)。ドロッ
プが可能な場合には、ドラッグ・コントローラの‘ドラ
ッグ処理’において、ドラッグ・ビューの‘ドロップ可
能表示選択処理’が実行される(ステップd5)。反対
に、ドロップが不可能な場合には、ドラッグ・コントロ
ーラの‘ドラッグ処理’において、ドラッグ・ビューの
‘ドロップ不可能表示選択処理’が実行される(ステッ
プd6)。
【0142】ドラッグ・ビューの‘ドロップ可能表示選
択処理’において、ドラッグ・ビューのカーソル表示選
択フラグ属性が1に設定される。また、ドラッグ・ビュ
ーの‘ドロップ不可能表示選択処理’において、ドラッ
グ・ビューのカーソル表示選択フラグ属性が0に設定さ
れる。
【0143】最後に、ドラッグ・コントローラの‘ドラ
ッグ処理’において、ドラッグ・ビューの‘表示座標設
定処理’(ステップd7)と、ドラッグ・ビューの‘ア
ップデート処理’(ステップd8)が実行される。‘表
示座標設定処理’で設定される座標は、‘ドラッグ処
理’に指定される引数の位置座標である。ドラッグ・ビ
ューの‘アップデート処理’では、ドラッグ・ビューの
‘表示処理’が実行される(ステップd9)。 (3)ドラッグ終了処理 図15は、ドラッグ終了の処理手順を示す図である。
【0144】ステップa10は、図8に示した動作手順
に含まれる‘ドラッグ終了通知処理’である。‘ドラッ
グ終了通知処理’が実行されると、ドラッグ・コントロ
ーラによって‘ドラッグ終了処理’が実行される(ステ
ップe1)。ドラッグ・コントローラの‘ドラッグ終了
処理’では、‘スタティック・コントローラのエントリ
ポイント’属性が参照され、ソースのアイコン・コント
ローラの‘ドラッグ終了処理’が実行される(ステップ
e2)。
【0145】ソースのアイコン・コントローラの‘ドラ
ッグ終了処理’では、まず、ダイナミック・ビューとダ
イナミック・コントローラが消去され、続いて、ターゲ
ットのアイコン・ビューの‘ドロップ許可の問い合わせ
処理’が実行される(ステップe3)。問い合わせ処理
の対象は、ポインティング・カーソル下にある画像を管
理するスタティック・ビューを継承するオブジェクトで
ある。
【0146】次に、引数の位置座標上にある画像を管理
するモデルの‘ドロップ可否判定処理’が実行され(ス
テップe4)、この結果に基づいてドロップの可否判定
が行われる(ステップe5)。ドロップ可否判定の結
果、ドロップが可能であれば、モデルの‘ドロップ処
理’が実行され(ステップe6)、ドラッグ終了処理を
終了する。ドロップが不可能であれば、そのままの状態
でドラッグ終了処理を終了する。
【0147】〔具体例2〕具体例2は、GUI生成管理
部34にモデル・ビュー・コントローラ・コマンド手段
とコマンド実行履歴スタック手段と操作取消手段とコマ
ンド取消履歴スタック手段と操作再実行手段の各機能を
持たせた場合に対応しており、操作取り消し処理、取り
消した操作の再実行処理、GUI操作の自動デモンスト
レーション処理の実現方法が示されている。
【0148】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、操作取消手
段と、コマンド取消履歴スタック手段と、操作再実行手
段とがGUI生成管理部34を構成する。図16および
図17は、具体例2に対応するGUI生成管理部34の
基本オブジェクトの構成図である。なお、図16および
図17の全体によりGUI生成管理部34の基本オブジ
ェクトの構成が示されている。各オブジェクトの特徴と
共同作業を行うオブジェクトを下記に示す。
【0149】“オブザーバ”:上述した具体例1の“オ
ブザーバ”と同様であり、詳細な説明は省略する。
【0150】“モデル”: [特徴]:アプリケーションの核の機能を備える。従属
するビューとコントローラを登録する。従属するビュー
とコントローラにデータの変更を通知する。 [共同作業するオブジェクト]:ビュー、コントローラ [属性]: ・オブザーバのエントリポイントのセット オブザーバのエントリ・ポイントとは、オブザーバのメ
モリ26上のアドレスデータである。エントリ・ポイン
トのセットとは、エントリ・ポイントを配列構造でもつ
ことである。
【0151】[処理]: ・アタッチ処理(オブザーバのエントリポイント) アタッチ処理は、引数で与えられるオブザーバを‘オブ
ザーバのエントリポイントのセット’属性に登録する。 ・デタッチ処理(オブザーバのエントリポイント) デタッチ処理は、引数で与えられるオブザーバを‘オブ
ザーバのエントリポイントのセット’属性から削除す
る。 ・通知処理() 通知処埋とは、オブザーバの‘アップデート処理’を実
行する処理である。処理を実行する対象は、‘オブザー
バのエントリポイントのセット’属性としてメモリ26
上に記憶されているオブザーバである。 ・サービス処理() モデルが提供するサービス処理である。処理内容は、子
のオブジェクトにより異なる。 ・サービス取消処理() モデルが提供するサービスを取り消す処理である。処理
内容は、子のオブジェクトにより異なる。
【0152】“ビュー”: [特徴]:アップデート処理を実装する。関係するコン
トローラを生成する。 [共同作業するオブジェクト]:コントローラ、モデル [属性]: ・モデルのエントリポイント モデルのメモリ26上のエントリポイントを記憶する領
域である。 ・コントローラのエントリポイント ビューと対に動作するコントローラのメモリ26上のエ
ントリポイントを記憶する領域である。 ・表示座標 表示座標とは、画像を表示するためのグラフィック・デ
ィスプレイ上の位置座標(x,y)を記憶する領域であ
る。グラフィック・ディスプレイ上の位置座標は、ビデ
オRAM12の表示領域の座標と一致する。 ・ビデオRAM領域 ビデオRAM領域とは、ビデオRAM領域の非表示領域
に作成した画像のエントリポイントと画像の大きさを記
憶する領域である。
【0153】フォアグランド・カラー フォアグランド・カラーとは、画像の色をRGB値で記
憶する領域である。 ・バックグランド・カラー バックグランド・カラーとは、画像の背景色をRGB値
で記憶する領域である。 ・ボタンダウン受付フラグ ボタンダウン受付フラグは、整数型のデータである。ボ
タンダウン受付フラグは、ボタンダウンを許可するとき
1となり、ボタンダウンを許可しないとき0となる。 ・ボタンアップ受付フラグ ボタンアップ受付フラグは、整数型のデータである。ボ
タンアップ受付フラグは、ボタンアップを許可するとき
1となり、ボタンアップを許可しないとき0となる。 ・ドラッグ受付フラグ ドラッグ受付フラグは、整数型のデータである。ドラッ
グ受付フラグは、ドラッグを許可するとき1となり、ド
ラッグを許可しないとき0となる。 [処理]: ・イニシャライズ処理() 属性をクリアし、‘画像生成処理’と‘コントローラ生
成処理’を実行する処理である。
【0154】画像生成処理() ビデオRAM12の非表示領域にピクセル値の画像を生
成する処理である。‘画像生成処理’では、ルックアッ
プ・テーブル20を参照し、作成するGUI画像のカラ
ーに対応するピクセル値を取得する。ルックアップ・テ
ーブル20に対応するカラー情報がないとき、ビュー
は、ルックアップ・テーブル20の空きテーブルに新た
にカラー値を設定し、そのピクセル値を取得する。そし
て、‘画像生成処理’は、取得したピクセル値により、
アイコン画像をビデオRAM12の連続した非表示領域
に生成する。そして、この領域を‘ビデオRAM領域’
属性としてメモリ26上に記憶する。生成する画像は、
子のオブジェクトにより異なる。 ・コントローラ生成処理() 関連するコマンドを起動するコントローラを生成し、コ
ントローラの‘イニシャライズ処理’を実行する処理で
ある。 ・アップデート処理() ‘表示処理’を実行する処理である。 ・表示処理() ‘ビデオRAM領域’属性が示すビデオRAM非表示領
域の画像をビデオRAM12の表示領域に転送する処理
である。
【0155】ビデオRAM領域取得処理() ‘ビデオRAM領域’属性としてメモリ26上に記憶し
た値を読み出す処理である。 ・ビデオRAM領域設定処理(ビデオRAM12上のエ
ントリポイント、画像の大きさ) ‘ビデオRAM領域’属性に引数の値を設定する処理で
ある。 ・表示座標取得処理() ‘表示座標’属性を読み出す処理である。 ・表示座標設定処理(位置座標) ‘表示座標’属性に引数の値を設定する処理である。 ・移動処理(位置座標) 引数で与えられた位置座標を、‘表示座標’属性に格納
する。そして、‘アップデート処理’を実行する。
【0156】“コントローラ”: [特徴]:利用者の入力によるイベントを受ける。イベ
ントをコマンドヘの実行処理起動要求に変換する。アッ
プデート処理を実装する。コマンドの実行起動処理を実
行するとコマンドのコピーを生成し、GUIマネージャ
に登録する。 [共同作業するオブジェクト]:ビュー、モデル、コマ
ンド、GUIマネージャ [属性]: ・モデルのエントリポイント モデルのメモリ26上のエントリポイントを記憶する領
域である。 ・ビューのエントリ・ポイント ビューのメモリ26上のエントリポイントを記憶する領
域である。 ・ボタンダウン処理実行フラグ ボタンダウン・イベント処理実行フラグは、整数型のデ
ータである。ボタンダウン処理を許可するとき1とな
り、ボタンダウン処理を許可しないとき0となる。
【0157】ボタンアップ処理実行フラグ ボタンアップ・イベント処理実行フラグは、整数型のデ
ータである。ボタンアップ処理を許可するとき1とな
り、ボタンアップ処理を許可しないとき0となる。 ・ドラッグ処理実行フラグ ドラッグ処理実行フラグは、整数型のデータである。ド
ラッグ処理を許可するとき1となり、ドラッグ処理を許
可しないとき0となる。 ・ボタンダウン処理コマンドのエントリポイント ボタンダウン終了時に実行処理を起動するコマンドのメ
モリ26上のエントリポイントを格納する。 ・ボタンアップ処理コマンドのエントリポイント ボタンアップ終了時の実行処理を起動するコマンドのメ
モリ26上のエントリポイントを格納する。 ・ドラッグ処理コマンドのエントリポイント ドラッグ終了時の実行処理を起動するコマンドのメモリ
26上のエントリポイントを格納する。
【0158】[処理]: ・アップデート処理() ‘ビューのエントリー・ポイント’属性が示すビューの
‘ボタンダウン受付フラグ’、‘ボタンアップ受付フラ
グ’、‘ドラッグ受付フラグ’属性を、‘ボタンダウン
処理実行フラグ’、‘ボタンアップ処理実行フラグ’、
‘ドラッグ処理実行フラグ’属性にセットする。 ・イニシャライズ処理(ビューのエントリポイント) 引数で指定されたビューのエントリポイントを‘ビュー
のエントリ・ポイント’属性に格納する。 ・ボタンダウン終了処理(位置座標) ‘ボタンダウン処理コマンドのエントリポイント属性に
指定されたコマンドの‘実行起動処理’を実行する。こ
の処理は、‘ボタンダウン処理実行フラグ’属性が1の
ときのみ実行される。また、コントローラは、コマンド
の‘実行起動処理’を実行すると、実行したコマンドの
コピーをメモリ26上に生成する。そして、生成したコ
ピーのエントリポイントを引数にして、GUIマネージ
ャの‘プッシュ処理’を実行する。このGUIマネージ
ャのエントリポイントは、オブジェクト検出部44を利
用して取得する。 ・ボタンアップ終了処理(位置座標) ‘ボタンアップ処理コマンドのエントリポイント’属性
に指定されたコマンドの‘実行起動処理’を実行する。
この処理は、‘ボタンアップ処理実行フラグ’属性が1
のときのみ実行される。また、コントローラは、コマン
ドの‘実行起動処理’を実行すると、実行したコマンド
のコピーをメモリ26上に生成する。そして、生成した
コピーのエントリポイントを引数にして、GUIマネー
ジャの‘プッシュ処理’を実行する。このGUIマネー
ジャのエントリポイントは、オブジェクト検出部44を
利用して取得する。
【0159】ドラッグ処理(位置座標) ポインティング装置30のドラッグ途中の処理である。
この処理は、‘ドラッグ処理実行フラグ’属性が1のと
きのみ実行される。 ・ドラッグ終了処理(位置座標) ‘ドラッグ処理コマンドのエントリポイント’属性に指
定されたコマンドの‘実行起動処理’を実行する。この
処理は、‘ドラッグ処理実行フラグ’属性が1のときの
み実行される。また、コントローラは、コマンドの‘実
行起動処理’を実行すると、実行したコマンドのコピー
をメモリ26上に生成する。そして、生成したコピーの
エントリポイントを引数にして、GUIマネージャの
‘プッシュ処理’を実行する。このGUIマネージャの
エントリポイントは、オブジェクト検出部44を利用し
て取得される。 ・ボタンダウン処理コマンドのエントリポイント設定処
理(コマンドのエントリポイント) 引数で指定されたコマンドのエントリポイントを‘ボタ
ンダウン処理コマンドのエントリポイント’属性に格納
する。 ・ボタンアップ処理コマンドのエントリポイント設定処
理(コマンドのエントリポイント) 引数で指定されたコマンドのエントリポイントを‘ボタ
ンアップ処理コマンドのエントリポイント’属性に格納
する。 ・ドラッグ処理コマンドのエントリポイント設定処理
(コマンドのエントリポイント) 引数で指定されたコマンドのエントリポイントを‘ドラ
ッグ処理コマンドのエントリポイント’属性に格納す
る。
【0160】“コマンド”: [特徴]:コマンドの子のオブジェクトの共通する属性
と処理を定義する。 [共同作業するオブジェクト]:モデル、ビュー、コン
トローラ [属性]: ・モデルもしくはビューのエントリポイント モデルもしくはビューのメモリ26上のエントリポイン
トを記憶する領域である。 [処理]: ・モデルもしくはビューのエントリポイント設定処理
(モデルもしくはビューのエントリポイント) 引数で与えられたモデルもしくはビューのエントリポイ
ントを‘モデルもしくはビューのエントリポイント’属
性に設定する処理である。 ・実行起動処理() コマンドの‘実行起動処理’は、何も行わない。コマン
ドの子のオブジェクトの‘実行起動処理’が実行できる
ように用意した処理である。 ・実行取消起動処理() コマンドの‘実行取消起動処理’は、何も行わない。コ
マンドの子のオブジェクトの‘実行取消起動処理’が実
行できるように用意した処理である。
【0161】“引数をもたないコマンド”: [特徴]:実行起動処理がモデルもしくはビューの引数
を指定しない処理を起動するように実装する。実行取消
起動処理がモデルもしくはビューの引数を指定しない操
作取り消し処理を起動するように実装する。 [共同作業するオブジェクト]:モデル、ビュー、コン
トローラ [属性]: ・実行処理のオフセット オブジェクトのエントリポイントから実行処理のエント
リポイントまでのメモリ26上のアドレスのオフセット
値を記憶する領域である。 ・実行取消処理のオフセット オブジェクトのエントリポイントから実行取消処理のエ
ントリポイントまでのメモリ26上のアドレスのオフセ
ット値を記憶する領域である。
【0162】[処理]: ・実行起動処理() ‘モデルもしくはビューのエントリポイント’属性に指
定されたオブジェクトの実行処理を実行する。実行する
処理は、‘実行処理のオフセット’属性に設定されてい
る処理である。 ・実行取消起動処理() ‘モデルもしくはビューのエントリポイント’属性に指
定されたオブジェクトの実行取消処理を実行する。実行
する処理は、‘実行取消処理のオフセット’属性に設定
されている処理である。 ・実行処理のオフセット設定処理(処理のオフセット) 引数で与えられた処理のオフセットを‘実行処理のオフ
セット属性’に設定する。 ・実行取消処理のオフセット設定処理(処理のオフセッ
ト) 引数で与えられた処理のオフセットを‘実行取消処理の
オフセット’属性に設定する。
【0163】“引数をもつコマンド”: [特徴]:実行起動処理が、モデルもしくはビューの引
数をもつ処理を起動するように実装する。実行取消起動
処理が、モデルもしくはビューの引数をもつ処理を起動
するように実装する。 [共同作業するオブジェクト]:モデル、ビュー、コン
トローラ [属性]: ・実行処理のオフセット オブジェクトのエントリポイントから実行処理のエント
リポイントまでのメモリ26上のアドレスのオフセット
値を記憶する領域である。 ・実行処理の引数のエントリポイント 実行処理を実行するときに指定する引数のエントリポイ
ントを格納する。 ・実行取消処理のオフセット オブジェクトのエントリポイントから実行取消処理のエ
ントリポイントまでのメモリ26上のアドレスのオフセ
ット値を記憶する領域である。 ・実行取消処理の引数のエントリポイント 実行取消処理を実行する際に指定する引数のエントリポ
イントを格納する。
【0164】[処理]: ・実行起動処理() ‘モデルもしくはビューのエントリポイント’属性に指
定されたオブジェクトの引数をもつ処理を実行する。実
行される処理は、実行処理のオフセット属性に設定され
ている処理である。このとき利用する引数は、‘実行処
理の引数のエントリポイント’属性で与えられる。 ・実行取消起動処理() モデルもしくはビューの引数をもつ処理を実行する。実
行される処理は、実行取消処理のオフセット属性に設定
されている処理である。このとき利用する引数は、‘実
行取消処理の引数のエントリポイント’属性で与えられ
る。 ・実行処理のオフセット設定処理(処理のオフセット) 引数で与えられた‘処理のオフセット’を‘実行処理の
オフセット’属性に設定する。 ・実行処理の引数のエントリポイント設定処理(引数の
エントリポイント) 引数で与えられたエントリポイントを‘実行処理の引数
のエントリポイン’属性に設定する。 ・実行取消処理のオフセット設定処理(処理のオフセッ
ト) 引数で与えられた‘処理のオフセット’を‘実行取消処
理のオフセット’属性に設定する。 ・実行取消処理の引数のエントリ・ポイント設定処理
(引数のエントリポイント) 引数で与えられたエントリポイントを‘実行取消処理の
引数のエントリポイント’属性に設定する。
【0165】“マクロ・コマンド”: [特徴]:コマンドを複合するオブジェクトである。実
行起動処理により、登録された順にコマンドの実行起動
処理を実行する。実行取消起動処理により、登録された
逆順にコマンドの実行取消起動処理を実行する。 [共同作業するオブジェクト]:コントローラ、コマン
ド [属性]: ・コマンドのエントリポイントのリスト コマンドのエントリポイントの配列データである。コマ
ンドのエントリポイントを順序をつけて記憶する。 [処理]: ・アタッチ処理(コマンドのエントリポイント) 引数で与えられたコマンドのエントリポイントを、‘コ
マンドのエントリポイントのリスト’属性の最後に登録
する処理である。 ・デタッチ処理(コマンドのエントリポイント) ‘コマンドのエントリポイントのリスト’属性から、引
数で与えられたコマンドのエントリポイントを削除する
処理である。 ・実行起動処理() ‘コマンドのエントリポイントのリスト’属性に登録さ
れた順にコマンドの‘実行起動処理’を実行する。 ・実行取消起動処理() ‘コマンドのエントリポイントのリスト’属性に登録さ
れた逆順にコマンドの‘実行取消起動処理’を実行す
る。
【0166】“コマンド・スタック”: [特徴]:コマンドをメモリ26に記憶する。 [共同作業するオブジェクト]:GUIマネージャ [属性]: ・コマンドのエントリポイントのリスト コマンドのエントリポイントの配列データである。 [処理]: ・プッシュ処理(コマンドのエントリポイント) 引数で与えられたコマンドのエントリポイントを、‘コ
マンドのエントリポイントのリスト’属性の最後に登録
する処理である。 ・ポップ処理() ‘コマンドのエントリポイントのリスト’属性の最後に
登録されたコマンドのエントリポイントを取り出す。取
り出したコマンドのエントリポイントは、‘実行コマン
ドのエントリポイントのリスト’属性から消去する。 ・コマンド・ブロック取得処理(開始番号、終了番号) 引数の開始番号と終了番号は、ともに整数型のデータで
ある。‘コマンドのエントリポイントのリスト’で記憶
されている配列データの引数で与えられた開始番号から
終了番号までのコマンドのエントリポイントの配列デー
タを読み出す処理である。 ・繰作の再実行処理() ‘繰作の再実行処理’では、‘取消コマンドのエントリ
ポイントのリスト’属性の最後に登録されたコマンドを
取得する。そして、‘取消コマンドのエントリポイント
のリスト’属性の最後に登録されたコマンドを消去す
る。取得したコマンドは、‘プッシュ処理’により‘実
行コマンドのエントリポイントのリスト’属性の最後に
登録する。最後に、取り出したコマンドの‘実行起動処
理’を実行する。
【0167】“GUIマネージャ”: [特徴]:コマンドの実行履歴と取消履歴を保存するオ
ブジェクトである。GUIマネージャはシステムの起動
時に生成される。 [共同作業するオブジェクト]:コマンド・スタック [属性]: ・実行履歴を格納するコマンド・スタックのエントリポ
イント GUI操作により実行起動処理が実行されたコマンドを
メモリに保存するためのコマンド・スタックを格納する
領域である。GUIマネージャが生成されると、実行履
歴を格納するためのコマンド・スタックが生成される。
そして、生成されたコマンド・スタックのエントリポイ
ントがこの属性に格納される。 ・取消履歴を格納するコマンド・スタックのエントリポ
イント GUI操作により実行取消起動処理が実行されたコマン
ドをメモリ26に保存するためのコマンド・スタックを
格納する領域である。GUIマネージャが生成される
と、取消履歴を格納するためのコマンド・スタックが生
成され、生成されたコマンド・スタックのエントリポイ
ントがこの属性に格納される。 [処理]: ・プッシュ処理(コマンドのエントリポイント) ‘実行履歴を格納するコマンド・スタックのエントリポ
イント’属性に登録されているコマンド・スタックの
‘プッシュ処理’を、引数で与えられたコマンドのエン
トリポイントを引数として実行する処理である。 ・繰作の取消処理() 操作の取消処理では、まず、‘実行履歴を格納するコマ
ンド・スタックのエントリポイント’属性に登録されて
いるコマンド・スタックの‘ポップ処理’を実行する。
つぎに、‘ポップ処理’により得たコマンドのエントリ
ポイントを引数に指定して、‘取消履歴を格納するコマ
ンド・スタックのエントリポイント’属性に登録されて
いるコマンド・スタックの‘プッシュ処理’を実行す
る。最後に‘ポップ処理’により得たコマンドの‘実行
取消起動処理’を実行する。 ・操作の再実行処理() 操作の再実行処理では、まず、‘取消履歴を格納するコ
マンド・スタックのエントリポイント’属性に登録され
ているコマンド・スタックの‘ポップ処理’を実行す
る。つぎに、‘ポップ処理’により得たコマンドのエン
トリポイントを引数に指定して‘プッシュ処理’を実行
する。最後に‘ポップ処理’により得たコマンドの‘実
行起動処理’を実行する。
【0168】次に、モデル・ビュー・コントローラ・コ
マンド手段、コマンド実行履歴スタック手段、繰作取消
手段、コマンド取消履歴スタック手段および操作再実行
手段を組み合わせたGUI生成管理部34によるGUI
操作の取消と再実行の処理を説明する。この例では、押
しボタン付きポインティング装置30のボタンアップに
よりビューの画像を移動し、モデルのサービス処理を実
行するものとする。また、操作対象のモデル、ビュー、
コントローラは、既に構築されているものとする。
【0169】(1)コマンドの生成 図18および図19は、オブジェクト生成管理部34に
よるコマンドの生成処理の手順を示す流れ図である。
【0170】まず、マクロ・コマンドが生成され(ステ
ップf1)、次に、ビューの移動を行うために必要な
「引数をもつコマンド」が生成される(ステップf
2)。この、引数を持つコマンドにおいては、‘モデル
もしくはビューのエントリポイントの設定処理’が行わ
れる(ステップf3)。設定処理を実行するときの引数
には、ビューのエントリポイントが与えられる。また、
モデルもしくはビューのエントリポイントの設定処理で
は、コマンドの‘モデルもしくはビューのエントリポイ
ント’属性に引数で与えられたビューのエントリポイン
トが設定される。
【0171】次に、ビューの移動処理のオフセット値の
算出が行われる(ステップf4)。ビューの移動処理の
オフセット値とは、ビューオブジェクトのエントリポイ
ントから、ビューの移動処理が格納されているエントリ
ポイントまでのアドレスの差分である。
【0172】ビューの移動処理のオフセット値が算出さ
れた後に、引数をもつコマンドによって‘実行処理のオ
フセット設定処理’が実行される(ステップf5)。こ
のとき指定する引数は、ステップf4で得たオフセット
値である。‘実行処理のオフセット設定処理’では、引
数で与えられたオフセットが‘実行処理のオフセット’
属性に設定される。また、引数をもつコマンドによって
‘実行取消処理のオフセット設定処理’が実行される
(ステップf6)。このとき指定する引数は、ステップ
f4で得たオフセット値である。‘実行取消処理のオフ
セット設定処理’では、引数で与えられたオフセットが
‘実行取消処理のオフセット’属性に設定される。
【0173】次に、ボタンアップにより移動する位置座
標が生成され(ステップf7)、この生成された位置座
標がメモリ26に書き込まれる。そして、引数をもつコ
マンドによって‘実行処理の引数のエントリポイント設
定処理’が実行される(ステップf8)。このとき指定
する引数は、ステップf7で格納したメモリ26のエン
トリポイントである。
【0174】また、移動前の位置座標が生成され(ステ
ップf9)、メモリ26に書き込まれる。そして、引数
をもつコマンドによって‘実行取消処理の引数のエント
リポイント設定処理’が実行される(ステップf1
0)。このとき指定する引数は、ステップf9で格納し
たメモリ26のエントリポイントである。また、上述し
たステップf1で生成されたマクロ・コマンドによって
‘アタッチ処理’が実行される(ステップf11)。そ
して、生成した引数をもつコマンドが、マクロ・コマン
ドの‘コマンドのエントリポイントのリスト’属性に格
納される。
【0175】このようにしてビューの移動を行うために
必要な「引数をもつコマンド」を用いた一連の処理が行
われ、次に、モデルのサービス処理を起動するために必
要な「引数をもたないコマンド」を生成およびこれに付
随する処理が行われる。
【0176】まず、モデルのサービス処理を起動するた
めの引数をもたないコマンドが生成される(ステップf
12)。次に、生成した引数をもたないコマンドにおい
て‘モデルもしくはビューのエントリポイントの設定処
理’が行われる(ステップf13)。設定処理を実行す
るときの引数には、モデルのエントリポイントが与えら
れる。
【0177】次に、モデルのサービス処理のオフセット
値が算出される(ステップf14)。そして、引数をも
たないコマンドによって‘実行処理のオフセット設定処
理’が実行される(ステップf15)。このとき指定す
る引数は、ステップf14で得たオフセット値である。
【0178】また、モデルのサービス取消処理のオフセ
ット値が算出され(ステップf16)、引数をもたない
コマンドによって‘実行取消処理のオフセット設定処
理’が実行される(ステップf17)。このとき指定す
る引数は、ステップf16で得たオフセット値である。
また、上述したステップf1で生成したマクロ・コマン
ドの‘アタッチ処理’が実行され(ステップf18)、
生成した引数をもたないコマンドがマクロ・コマンドの
‘コマンドのエントリポイントのリスト’属性に格納さ
れる。
【0179】次に、コントローラにおいて‘ボタンアッ
プ処理コマンドのエントリポイント設定処理’が実行さ
れる(ステップf19)。このとき指定する引数は、ス
テップf1で生成したマクロ・コマンドのエントリポイ
ントである。
【0180】(2)ビューのボタンアップ処理によるコ
マンドの実行起動処理の起動 図20は、オブジェクト生成管理部34によるコマンド
の実行起動処理の手順を示す流れ図である。
【0181】ステップa11は、図8に示した動作手順
に含まれる‘ボタンアップ終了通知処理’である。‘ボ
タンアップ終了通知処理’が実行されると、コントロー
ラによって‘ボタンアップ終了処理’が実行される(ス
テップg1)。コントローラの‘ボタンアップ終了処
理’では、‘ボタンアップ処理コマンドのエントリポイ
ント’属性が参照され、ボタンアップ処理コマンドのコ
ピーがメモリ26上に生成される。そして、生成したコ
ピーのエントリポイントを引数にして、GUIマネージ
ャの‘プッシュ処理’が実行される(ステップg2)。
【0182】また、コントローラの‘ボタンアップ終了
処理’では、‘ボタンアップ処理コマンドのエントリポ
イント’属性に格納されているマクロ・コマンドによっ
て‘実行起動処理’が実行される(ステップg3)。
【0183】マクロ・コマンドの‘実行起動処理’で
は、‘コマンドのエントリポイントのリスト’属性に登
録された順番に、コマンドによる‘実行起動処理’が実
行される。この例では、ビューを移動するための‘引数
をもつコマンド’、モデルのサービス処理を実行するた
めの‘引数をもたないコマンド’の順番で‘コマンドの
エントリポイントのリスト’属性に登録されている。
【0184】まず、マクロ・コマンドの‘実行起動処
理’では、‘引数をもつコマンド’による‘実行起動処
理’が実行される(ステップg4)。この‘引数をもつ
コマンド’による‘実行起動処理’では、属性を参照し
て、ステップg5のビューの移動処理が実行される。
【0185】次に、マクロ・コマンドの‘実行起動処
理’では、‘引数をもたないコマンド’による‘実行起
動処理’が実行される(ステップg6)。この‘引数を
もたないコマンド’による‘実行起動処理’では、属性
を参照して、ステップg7のモデルの‘サービス処理’
が実行される。
【0186】(3)GUI操作の取消 図21は、オブジェクト生成管理部34によるGUI操
作の取消処理の手順を示す流れ図である。
【0187】GUI操作の取消は、GUIマネージャに
よって‘操作の取消処理’を実行することにより行われ
る(ステップh1)。GUIマネージャの‘操作の取消
処理’では、まず、‘実行履歴を格納するコマンド・ス
タックのエントリポイント’属性に登録されているコマ
ンド・スタックによって‘ポップ処理’が実行される。
この例では、マクロ・コマンドが得られる。次に、GU
Iマネージャの‘操作の取消処理’において、得たコマ
ンドのエントリポイントを引数に指定して、‘実行履歴
を格納するコマンド・スタックのエントリポイント’属
性に登録されているコマンド・スタックによって‘プッ
シュ処理’が実行される。最後にGUIマネージャの
‘操作の取消処理’において、取得したマクロ・コマン
ドによって‘実行取消起動処理’が実行される(ステッ
プh2)。
【0188】マクロ・コマンドの‘実行取消起動処理’
では、‘コマンドのエントリポイントのリスト’属性に
登録された逆の順番にコマンドを実行する。この例で
は、ビューを移動するための‘引数をもつコマンド’、
モデルのサービス処理を実行するための‘引数をもたな
いコマンド’の順番で‘コマンドのエントリポイントの
リスト’属性に登録されている。
【0189】まず、マクロ・コマンドの‘実行取消起動
処理’において、‘引数をもたないコマンド’による
‘実行取消起動処理’が実行される(ステップh3)。
この‘引致をもたないコマンド’の‘実行取消起動処
理、では、属性を参照して、モデルによる‘サービス取
消処理’が実行される(ステップh4)。
【0190】次に、マクロ・コマンドの‘実行取消起動
処理’において、‘引数をもつコマンド’による‘実行
取消起動処理’が実行される(ステップh5)。この
‘引数をもつコマンド’の‘実行起動処理’では、属性
を参照して、ビューによる‘移動処理’が実行される
(ステップh6)。
【0191】(4)GUI操作の再実行 図22は、オブジェクト生成管理部34によるGUI繰
作の再実行処理の手順を示す流れ図である。
【0192】取消したGUI操作の再実行は、GUIマ
ネージャによって‘操作の再実行処理’を実行すること
により行われる(ステップj1)。GUIマネージャの
‘操作の再実行処理’では、まず、‘取消履歴を格納す
るコマンド・スタックのエントリポイント’属性に登録
されているコマンド・スタックによって‘ポップ処理’
が実行される。次に、得られたコマンドのエントリポイ
ントを引数に指定して、GUIマネージャによって‘プ
ッシュ処理’が実行される(ステップj2)。最後に
‘ポップ処理’により得られたコマンドによって‘実行
起動処理’が実行される。この例では、マクロ・コマン
ドが取得され、マクロ・コマンドによって‘実行起動処
理’が実行される(ステップj3)。
【0193】マクロ・コマンドの‘実行起動処理’で
は、‘コマンドのエントリポイントのリスト’属性に登
録された順番に、コマンドの‘実行起動処理’が実行さ
れる。この例では、ビューを移動するための‘引数をも
つコマンド’、モデルのサービス処理を実行するための
‘引数をもたないコマンド’の順番で‘コマンドのエン
トリポイントのリスト’属性に登録されている。
【0194】まず、マクロ・コマンドの‘実行起動処
理’において、‘引数をもつコマンド’による‘実行起
動処理’が実行される(ステップj4)。この‘引数を
もつコマンド’の‘実行起動処理’では、属性を参照し
て、ビューによる‘移動処理’が実行される(ステップ
j5)。
【0195】次に、マクロ・コマンドの‘実行起動処
理’において、‘引数をもたないコマンド’による‘実
行起動処理’が実行される(ステップj6)。この‘引
数をもたないコマンド’による‘実行起動処理’では、
属性を参照して、モデルによる‘サービス処理’が実行
される(ステップj7)。
【0196】このように、自動デモンストレーション機
能は、マクロ・コマンドに予めデモンストレーションす
るコマンドを記憶し、マクロ・コマンドによって‘実行
起動処理’を実行することにより実現することができ
る。
【0197】〔具体例3〕具体例3は、GUI生成管理
部34に、モデル・ビュー・コントローラ・コマンド手
段、コマンド実行履歴スタック手段、操作取消手段、コ
マンド取消履歴スタック手段、操作再実行手段、ドラッ
グコントローラ手段、コマントブロック実行手段および
コマンド・ブロック編集手段の各機能を持たせた場合に
対応しており、操作の実行や取り消しにより生成された
コマンドのブロックを利用して、GUI繰作の自動デモ
ンストレーション・シーケンスの生成や編集を実現する
方法が示されている。
【0198】モデル・ビュー・コントローラ・コマンド
手段と、コマンド実行履歴スタック手段と、操作取消手
段と、コマンド取消履歴スタック手段と、操作再実行手
段と、ドラッグコントローラ手段と、コマンド・ブロッ
ク実行手段と、コマンド・ブロック編集手段とがGUI
生成管理部34を構成する。図23〜図26は、具体例
3に対応するGUI生成管理部34の基本オブジェクト
の構成図である。なお、図23および図24に共通に含
まれる「オブザーバ」は同一のものを示しており、図2
3〜図26の全体によりGUI生成管理部34の基本オ
ブジェクトの構成が示されている。各オブジェクトの特
徴と共同作業を行うオブジェクトを以下に示す。
【0199】“オブザーバ”:上述した具体例1の“オ
ブザーバ”と同様であり、詳細な説明は省略する。
【0200】“モデル”: [特徴]:アプリケーションの核の機能を備える。従属
するビューとコントローラを属性としてメモリ26上に
記憶する。従属するビューとコントローラにデータの変
更を通知する。ドロップ要求が受け入れられるか否かの
問い合わせに対応する。 [共同作業するオブジェクト]:ビュー、コントロー
ラ、コマンド [属性]: ・オブザーバのエントリポイントのセット オブザーバのエントリ・ポイントとは、オブザーバのメ
モリ上のアドレス・データである。エントリ・ポイント
のセットとは、エントリ・ポイントを配列構造でもつこ
とである。 [処理]: ・アタッチ処理(オブザーバのエントリポイント) アタッチ処理は、引数で与えられるオブザーバを‘オブ
ザーバのエントリポイントのセット’属性に登録する。 ・デタッチ処理(オフザーバのエントリポイント) デタッチ処理は、引数で与えられるオブザーバを‘オブ
ザーバのエントリポイントのセット’属性から削除す
る。 ・通知処理() 通知処理とは、オブザーバの‘アップデート処理’を実
行する処理である。処理を実行する対象は、‘オブザー
バのエントリ・ポイントのセット’属性としてメモリ2
6上に記憶されているオブザーバである。 ・ドロップ可否判定処理(モデルのエントリポイント) ドロップ可否判定処理とは、引数で与えられたモデルの
ドロップ可否を判定する処理である。 ・ドロップ処理(モデルのエントリポイント) アイコンのドラッグ・アンド・ドロップにより、モデル
に従属するビューにアイコンがドロップされたときの処
理である。引数には、ドロップされたアイコンのモデル
が指定される。処理内容は、子のオブジェクトにより異
なる。 ・サービス処理() モデルが提供するサービス処理である。処理内容は、子
のオブジェクトにより異なる。 ・サービスの取消処理() モデルが提供するサービスを取り消す処理である。処理
内容は、子のオブジェクトにより異なる。
【0201】“ビュー”、“スタティック・ビュー”、
“ダイナミック・ビュー”、“ドラッグ・ビュー”、
“ダイナミック・コントローラ”、“ドラッグ・コント
ローラ”のそれぞれについては、上述した具体例1で説
明したものと同じであり、詳細な説明は省略する。
【0202】同様に、“コマンドを起動するコントロー
ラ”、“スタティック・コントローラ”、“コマン
ド”、“引数をもたないコマンド”、“引数をもつコマ
ンド”、“マクロ・コマンド”、“コマンド・スタッ
ク”のそれぞれについては、上述した具体例2で説明し
たものと同じであり、詳細な説明は省略する。
【0203】“GUIマネージャ”: [特徴]:コマンドの実行履歴と取消履歴を保存するオ
ブジェクトである。GUIマネージャはシステムの起動
時に生成される。 [共同作業するオブジェクト]:コマンド・スタック、
コマンド・エディタ [属性]: ・実行履歴を格納するコマンド・スタックのエントリポ
イント GUI操作により実行起動処理が実行されたコマンドを
メモリに保存するためのコマンド・スタックを格納する
領域である。GUIマネージャが生成されると、実行履
歴を格納するためのコマンド・スタックが生成される。
そして、生成されたコマンド・スタックのエントリポイ
ントがこの属性に格納される。 ・取消履歴を格納するコマンド・スタックのエントリポ
イント GUI操作により実行取消起動処理が実行されたコマン
ドをメモリ26に保存するためのコマンド・スタックを
格納する領域である。GUIマネージャが生成される
と、取消履歴を格納するためのコマンド・スタックが生
成される。生成されたコマンド・スタックのエントリポ
イントがこの属性に格納される。
【0204】[処理]: ・プッシュ処理(コマンドのエントリポイント) ‘実行履歴を格納するコマンド・スタックのエントリポ
イント’属性に登録されているコマンド・スタックの
‘プッシュ処理’を、引数で与えられたコマンドのエン
トリポイントを引数として実行する処理である。また、
引数で与えられたコマンドのエントリポイントを引数と
してコマンド・エディタの‘追加登録処理’を実行す
る。 ・操作の取消処理() 操作の取消処理では、まず、‘実行履歴を格納するコマ
ンド・スタックのエントリポイント’属性に登録されて
いるコマンド・スタックの‘ポップ処理’を実行する。
次に、得たコマンドのエントリポイントを引数に指定し
て、‘取消履歴を格納するコマンド・スタックのエント
リ・ポイント’属性に登録されているコマンド・スタッ
クの‘プッシュ処理’を実行する。最後に‘ポップ処
理’により得たコマンドの‘実行取消起動処理’を実行
する。 ・操作の再実行処理() 操作の再実行処理では、まず、‘取消履歴を格納するコ
マンド・スタックのエントリポイント’属性に登録され
ているコマンド・スタックの‘ポップ処理’を実行す
る。次に、得たコマンドのエントリポイントを引数に指
定して‘プッシュ処理’を実行する。最後に‘ポップ処
理’により得たコマンドの‘実行起動処理’を実行す
る。
【0205】“コマンド・エディタ”: [特徴]:コマンドを属性としてメモリ26上に記憶す
る。記憶した順番にコマンドの実行起動処理を実行でき
る(操作のデモンストレーション)。属性としてメモリ
26上に記憶したコマンドのステップ実行ができる。属
性としてメモリ26上に記憶されているあるコマンド以
降のコマンドを消去して、新たなコマンドを追加でき
る。 [共同作業するオブジェクト]:コマンド・スタック、
GUIマネージャ [属性]: ・実行履歴を格納するコマンド・スタックのエントリポ
イント GUI操作により実行起動処理が実行されたコマンドを
メモリ26に保存するためのコマンド・スタックを格納
する領域である。コマンド・エディタが生成されると、
実行履歴を格納するためのコマンド・スタックが生成さ
れる。そして、生成されたコマンド・スタックのエント
リポイントがこの属性に格納される。 ・取消履歴を格納するコマンド・スタックのエントリポ
イント GUI操作により実行取消起動処理が実行されたコマン
ドをメモリ26に保存するためのコマンド・スタックを
格納する領域である。コマンド・エディタが生成される
と、取消履歴を格納するためのコマンド・スタックが生
成される。そして、生成されたコマンド・スタックのエ
ントリポイントがこの属性に格納される。 ・GUI操作追加受付フラグ GUI操作追加受付フラグは、整数型のデータである。
GUI操作追加受付フラグは、‘実行履歴を格納するコ
マンド・スタックのエントリポイント’属性に登録され
ているコマンド・スタックにGUI操作の追加を許可す
るとき1となり、GUI操作の追加を許可しないとき0
となる。
【0206】[処理]: ・コマンド格納処理(コマンド・スタックのエントリポ
イント) コマンド格納処理では、まず、引数で与えられたコマン
ド・スタックのエントリポイントが示すコマンド・スタ
ックの内容を‘実行履歴を格納するコマンド・スタック
のエントリポイント’属性が示すコマンド・スタックの
内容をコピーする。次に、‘取消コマンド消去処理’を
実行する。 ・実行コマンドのプッシュ処理(コマンドのエントリポ
イント) ‘実行履歴を格納するコマンド・スタックのエントリポ
イント’属性に登録されているコマンド・スタックの
‘プッシュ処理’を、引数で与えられたコマンドのエン
トリポイントを引数として実行する処理である。 ・実行コマンドのポップ処理() ‘実行履歴を格納するコマンド・スタックのエントリポ
イント’属性に登録されているコマンド・スタックの
‘ポップ処理’を実行する処理である。 ・取消コマンドのプッシュ処理(コマンドのエントリポ
イント) ‘取消履歴を格納するコマンド・スタックのエントリポ
イント’属性に登録されているコマンド・スタックの
‘プッシュ処理’を、引数で与えられたコマンドのエン
トリポイントを引数として実行する処理である。 ・取消コマンドのポップ処理() ‘取消履歴を格納するコマンド・スタックのエントリポ
イント’属性に登録されているコマンド・スタックの
‘ポップ処理’を実行する処理である。 ・取消コマンド消去処理() ‘取消履歴を格納するコマンド・スタックのエントリポ
イント’属性が示すコマンド・スタックの‘コマンドの
エントリポイントのリスト’の内容を消去する。
【0207】コマンドの実行取消処理() コマンドの再実行処理では、まず、‘実行コマンドのポ
ップ処理’を実行する。次に、‘実行コマンドのポップ
処理’により得たコマンドのエントリポイントを引数に
‘取消コマンドのプッシュ処理’を実行する。最後に、
‘実行コマンドのポップ処理’により得たコマンドの
‘実行取消起動処理’を実行する。 ・コマンドの再実行処理() コマンドの再実行処理では、まず、‘取消コマンドのポ
ップ処理’を実行する。次に、‘取消コマンドのポップ
処理’により得たコマンドのエントリポイントを引数に
‘実行コマンドのプッシュ処理’を実行する。最後に、
‘取消コマンドのポップ処理’により得たコマンドの
‘実行起動処理’を実行する。 ・リセット処理() ‘実行履歴を格納するコマンド・スタックのエントリポ
イント’属性に登録されているコマンド・スタックの
‘コマンドのエントリポイントのリスト’属性の内容が
空になるまで‘コマンドの実行取消処理’を繰り返し実
行する処理である。 ・デモンストレーション処理() デモンストレーション処理では、まず、‘りセット処
理’を実行する。次に、‘実行履歴を格納するコマンド
・スタックのエントリポイント’属性に登録されている
コマンド・スタックの‘コマンドのエントリポイントの
リスト’属性の内容が空になるまで‘コマンドの再実行
処理’を繰り返し実行する処理である。 ・編集開始処理() 編集開始処理では まず、‘取消コマンド消去処理’を
実行する。次に、‘GUI操作追加受付フラグ’属性の
値をGUI操作の追加を許可する1にする。 ・編集終了処理() ‘GUI操作追加受付フラグ’属性の値をGUI操作の
追加を許可しない0にする。 ・追加登録処理(コマンドのエントリポイント) ‘GUI操作追加受付フラグ’属性の内容がGUI操作
の追加を許可する1であったとき、‘実行コマンドのプ
ッシュ処理’を、引数で与えられたコマンドのエントリ
ポイントを引数として実行する。‘GUI操作追加受付
フラグ’属性の内容がGUI操作の追加を許可しない0
であったとき、何も行わない。
【0208】このような基本オブジェクトを利用して、
ビジュアルなフィードバックを与えるドラッグ・アンド
・ドロップ処理、操作取り消し機能、取り消した繰作の
再実行、GUI繰作の自動デモンストレーションを実現
する。
【0209】ビジュアルなフィードバックを与えるドラ
ッグ・アンド・ドロップ処理の実現手法は、上述した具
体例1と同じである。また、操作取り消し機能、取り消
した操作の再実行、GUI操作の自動デモンストレーシ
ョンの処理の実現手法は、基本的には上述した具体例2
と同じである。
【0210】具体例1や具体例2と異なる点は、デモン
ストレーション内容をコマンド・エディタにより編集す
る機能が追加されていることである。また、コマンド・
エディタを用いるとデモンストレーション内容は、予め
マクロ・コマンドを作成しなくても、GUIマネージャ
のもつコマンド・スタックにある内容から作成すること
ができる。以下に詳細内容を示す。
【0211】(1)コマンド・エディタへのコマンドの
登録 GUIマネージャがもつ‘実行履歴を格納するコマンド
・スタックのエントリポイント’属性を引数として、コ
マンド・エディタによる‘コマンド格納処理’が実行さ
れる。すると、実行してきたGUI繰作の内容の全て
が、デモンストレーション内容として、コマンド・エデ
ィタに登録される。
【0212】(2)コマンド・エディタによるデモンス
トレーションの実行 コマンド・エディタによる‘デモンストレーション処
理’が実行されると、‘コマンド格納処理’により登録
されたGUI操作の再現が行われる。
【0213】(3)GUIによるアプリケーション操作
の変更点の検索 コマンド・エディタによって‘リセット処理’が実行さ
れると、‘コマンド格納処理’により登録されたGUI
繰作がすべて取り消された状態になる。次に、‘コマン
ドの再実行処理’によりGUIによるアプリケーション
の操作内容を再現していき、変更するGUIによるアプ
リケーションの操作になるまでコマンド・エディタによ
る‘コマンドの再実行処理’の実行が繰り返される。こ
のような処理により、デモンストレーション内容を変更
するGUI画像を検索することができる。
【0214】(4)デモンストレーション内容の変更 (a)デモンストレーション内容の変更の開始 変更の開始は、コマンド・エディタによって‘編集開始
処理’を実行することにより行われる。図27は、コマ
ンド・エディタによる編集開始処理の手順を示す図であ
る。
【0215】編集開始処理を行った時点の取消履歴を格
納するコマンド・スタックの内容には、編集開始処理を
行った以降のGUIによるアプリケーション操作の内容
が記憶されている。このため、コマンド・エディタの編
集開始処理(ステップk1)では、まず、取消コマンド
消去処理を実行し(ステップk2)、取消履歴を格納す
るコマンド・スタックの内容を消去する。次に、‘GU
I操作追加受付フラグ’属性の値をGUI操作の追加を
許可する1にする(ステップk3)。すると、GUI操
作により実行されたコマンドが、コマンド・エディタに
よる‘追加登録処理’により、コマンド・エディタの
‘実行履歴を格納するコマンド・スタックのエントリポ
イント’属性が示すコマンド・スタックに格納される。
この結果、デモンストレーション内容が追加される。
【0216】図28は、コマンド・エディタによる‘追
加登録処理’の手順を示す図である。コントローラによ
ってコマンドの‘実行起動処理’が起動されると、GU
Iマネージャによる‘プッシュ処理’が実行される(ス
テップm1)。この‘プッシュ処理’においては、コマ
ンド・エディタによる‘追加登録処理’が実行される
(ステップm2)。
【0217】コマンド・エディタの‘追加登録処理’で
は、まず、コマンド・エディタの‘GUI操作追加受付
フラグ’属性が参照される(ステップm3)。‘GUI
操作追加受付フラグ’属性の内容がGUI操作の追加を
許可しない0であったときには、何も行わないで処理を
終了する。また、‘GUI操作追加受付フラグ’属性の
内容がGUI操作の追加を許可する1であったときに
は、コマンド・エディタの‘実行コマンドのプッシュ処
理’が実行される(ステップm4)。
【0218】コマンド・エディタの‘実行コマンドのプ
ッシュ処理’では、実行履歴を格納するコマンド・スタ
ックによる‘プッシュ処理’が実行され、‘実行起動処
理’が起動されたコマンドがコマンド・スタックに格納
される(ステップm5)。
【0219】コマンド・エディタによる‘編集開始処
理’では、‘GUI操作追加受付フラグ’属性の値がG
UI操作の追加を許可する1に設定される。この結果、
コマンド・エディタの‘追加登録処理’により、実行履
歴を格納するコマンド・スタックに‘実行起動処理’を
実行したコマンドが格納される。したがって、コマンド
・エディタのデモンストレーション内容が追加される。
【0220】(b)デモンストレーション内容の変更の
終了 変更の終了は、コマンド・エディタによって‘編集終了
処理’を実行することにより行われる。図29は、コマ
ンド・エディタによる編集終了処理の手順を示す図であ
る。
【0221】コマンド・エディタによる編集終了処理が
実行されると(ステップn1)、‘GUI操作追加受付
フラグ’属性の値がGUI繰作の追加を許可しない0に
設定される(ステップn2)。この結果、コマンド・エ
ディタの‘追加登録処理’によるコマンド・エディタの
実行履歴を格納するコマンド・スタックに、‘実行起動
処理’を実行したコマンドが格納されなくなり、デモン
ストレーション内容が追加されなくなる。
【0222】(5)編集した内容のデモンストレーショ
ン 編集した内容のデモンストレーションは、コマンド・エ
ディタによる‘デモンストレーション処理’を実行する
ことにより行われる。
【0223】このように、本実施形態の試験システムの
GUI処理部100に含まれるGUI生成管理部34
は、基本オブジェクトとして、“モデル”、“ビュ
ー”、“コントローラ”、“コマンド”、“ドラッグコ
ントローラ”、“コマンド・スタック”、“GUIマネ
ージャ”、“コマンド・エディタ”等を含んでおり、こ
れらによって、ビジュアルなフィードバックを与える
ドラッグ・アンド・ドロップによる操作、GUIによ
るアプリケーション操作の取消し、GUIによるアプ
リケーション操作の取り消した操作の再実行、GUI
操作の自動デモンストレーションの実施を可能としてい
る。
【0224】なお、本発明は上記実施形態に限定される
ものではなく、本発明の要旨内で種々の変形実施が可能
である。例えば、上述した実施形態では、GUI処理シ
ステムの一つとして試験システムを考えたが、画面上の
アイコンをドラッグ・アンド・ドロップすることによっ
て所定のアプリケーションの実行や取り消しを行う汎用
的な処理システムに本発明を適用することができる。
【0225】
【発明の効果】上述したように、本発明によれば、操作
性が良好なGUI処理システムを実現することができ
る。具体的には、モデル・ビュー・コントローラ手段
と、ドラッグコントローラ手段を組み合わせたGUI生
成管理手段を用いることにより、アプリケーションの核
の機能をもつモデルの構造に影響を与えることなく、ビ
ジュアルなフィードバックを与えるドラッグ・アンド・
ドロップ処理を実現することができる。
【0226】また、モデル・ビュー・コントローラ・コ
マンド手段を用いてGUI生成管理手段を構成すること
により、モデルあるいはビューがもつ操作の実行処理を
コントローラが直接実行するのではなく、コマンドが起
動する構造にすることにより、処理を起動するイベント
やビューを変更しても、コントローラのイベントに対応
する属性にコマンドを記憶し直すだけの変更ですむ。こ
のため、コントローラとコマンドの組み合わせを自由に
変更することができ、新たなコントローラを作成しなく
ても、処理を起動するイベントやビューを簡単に変更す
ることができる。
【0227】また、上述したモデル・ビュー・コントロ
ーラ・コマンド手段とドラッグコントローラ手段とを組
み合わせたGUI生成管理手段を用いることにより、ア
プリケーションの核の機能をもつモデルの構造に影響を
与えることなく、ビジュアルなフィードバックを与える
ドラッグ・アンド・ドロップ処理を実現でき、しかも、
新たなコントローラを作成しなくても、処理を起動する
イベントやビューを簡単に変更することができる。
【0228】また、上述したモデル・ビュー・コントロ
ーラ・コマンド手段とコマンド実行履歴スタック手段と
操作取消手段とを組み合わせたGUI生成管理手段を用
いることにより、簡単にGUIによるアプリケーション
の繰作の取り消しを行うことができる。また、さらにコ
マンド取消履歴スタック手段と操作再実行手段とを追加
してGUI生成管理手段を構成することにより、簡単に
GUIによる取り消した操作の再実行を行うことができ
る。また、さらにコマンド・ブロック実行手段あるいは
これに加えてコマンド・ブロック編集手段を追加するこ
とにより、デモンストレーション内の構築やその内容編
集を容易に行うことができる。
【図面の簡単な説明】
【図1】オブジェクトの継承関係を示す図である。
【図2】オブジェクトのメモリ上での構成を示す図であ
る。
【図3】一般的なMVCの構造を示す図である。
【図4】本発明のMVCCの構造を示す図である。
【図5】新たに採用したモデル・ビュー・コントローラ
・コマンド手段の構造を示す図である。
【図6】一実施形態の試験システムの構成を示す図であ
る。
【図7】ルックアップテーブルとビデオRAMの関係を
示す図である。
【図8】イベント検出通知部によるイベントの検出通知
処理の動作手順を示す流れ図である。
【図9】具体例1に対応するGUI生成管理部の基本オ
ブジェクトの構成図である。
【図10】具体例1に対応するGUI生成管理部の基本
オブジェクトの構成図である。
【図11】アイコン・ビューとアイコン・コントローラ
の内容を示す図である。
【図12】オブジェクト生成管理部によるアイコンのビ
ューとコントローラを生成する手順を示す流れ図であ
る。
【図13】ドラッグ開始処理の手順を示す流れ図であ
る。
【図14】ドラッグ中の処理手順を示す図である。
【図15】ドラッグ終了の処理手順を示す図である。
【図16】具体例2に対応するGUI生成管理部の基本
オブジェクトの構成図である。
【図17】具体例2に対応するGUI生成管理部の基本
オブジェクトの構成図である。
【図18】オブジェクト生成管理部によるコマンドの生
成処理の手順を示す流れ図である。
【図19】オブジェクト生成管理部によるコマンドの生
成処理の手順を示す流れ図である。
【図20】オブジェクト生成管理部によるコマンドの実
行起動処理の手順を示す流れ図である。
【図21】オブジェクト生成管理部によるGUI操作の
取消処理の手順を示す流れ図である。
【図22】オブジェクト生成管理部によるGUI繰作の
再実行処理の手順を示す流れ図である。
【図23】具体例3に対応するGUI生成管理部の基本
オブジェクトの構成図である。
【図24】具体例3に対応するGUI生成管理部の基本
オブジェクトの構成図である。
【図25】具体例3に対応するGUI生成管理部の基本
オブジェクトの構成図である。
【図26】具体例3に対応するGUI生成管理部の基本
オブジェクトの構成図である。
【図27】コマンド・エディタによる編集開始処理の手
順を示す図である。
【図28】コマンド・エディタによる‘追加登録処理’
の手順を示す図である。
【図29】コマンド・エディタによる編集終了処理の手
順を示す図である。
【図30】アイコンによるドラッグ・アンド・ドロップ
処理の説明図である。
【図31】GUIによるアプリケーションの操作の実行
と取り消しの具体例を示す図である。
【符号の説明】
10 CPU 12 ビデオRAM 14 グラフィックプロセッサ 24 グラフィックディスプレイ 26 メモリ 30 ポインティング装置 34 GUI生成管理部 40 オブジェクト生成部 42 オブジェクト管理部 44 オブジェクト検出部 46 イベント検出通知部 100 GUI処理部 110 試験機器

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 被測定物を試験するための試験機器を制
    御するアプリケーションの操作を、画面上にアイコンや
    ボタンなどの画像を表示し、ポインティング装置を用い
    てこれらの画像を選択することにより行うGUI処理シ
    ステムであって、 試験の条件や試験結果などのデータを管理するモデル手
    段と、前記モデル手段の内容を画面上に表示するビュー
    手段と、ポインティング装置からの入力情報であるイベ
    ントを検出して前記モデル手段あるいは前記ビュー手段
    への処理に変換するコントローラ手段とを含むモデル・
    ビュー・コントローラ手段と、 ビジュアルなフィードバックを与えるドラッグ・アンド
    ・ドロップを実現するドラッグコントローラ手段と、 を組み合わせたグラフィカル・ユーザ・インタフェース
    生成管理手段を有することを特徴とするGUI処理シス
    テム。
  2. 【請求項2】 画面上にアイコンやボタンなどの画像を
    表示し、これらの画像をポインティング装置を用いて選
    択することにより、所定のアプリケーションの操作を実
    行するGUI処理システムであって、 前記アプリケーションを実行する場合の条件や実行結果
    データを管理するモデル手段と、前記モデル手段の内容
    を画面上に表示するビュー手段と、ポインティング装置
    からの入力情報であるイベントを検出して前記モデル手
    段あるいは前記ビュー手段への処理に変換するコントロ
    ーラ手段とを含むモデル・ビュー・コントローラ手段
    と、 ビジュアルなフィードバックを与えるドラッグ・アンド
    ・ドロップを実現するドラッグコントローラ手段と、 を組み合わせたグラフィカル・ユーザ・インタフェース
    生成管理手段を有することを特徴とするGUI処理シス
    テム。
  3. 【請求項3】 被測定物を試験するための試験機器を制
    御するアプリケーションの操作を、画面上にアイコンや
    ボタンなどの画像を表示し、ポインティング装置を用い
    てこれらの画像を選択することにより行うGUI処理シ
    ステムであって、 試験の条件や試験結果などのデータを管理するモデル手
    段と、 前記モデル手段の内容を画面上に表示するビュー手段
    と、 ポインティング装置からの入力情報であるイベントを検
    出し、この検出したイベントに対応する所定のコマンド
    を起動するコントローラ手段と、 前記イベントに対応する前記モデル手段あるいは前記ビ
    ュー手段の実行処理と実行取消処理を起動するコマンド
    手段と、 を組み合わせたモデル・ビュー・コントローラ・コマン
    ド手段によるグラフィカル・ユーザ・インタフェース生
    成管理手段を備えることを特徴とするGUI処理システ
    ム。
  4. 【請求項4】 画面上にアイコンやボタンなどの画像を
    表示し、これらの画像をポインティング装置を用いて選
    択することにより、所定のアプリケーションの操作を実
    行するGUI処理システムであって、 前記アプリケーションを実行する場合の条件や実行結果
    データを管理するモデル手段と、 前記モデル手段の内容を画面上に表示するビュー手段
    と、 ポインティング装置からの入力情報であるイベントを検
    出し、この検出したイベントに対応する所定のコマンド
    を起動するコントローラ手段と、 前記イベントに対応する前記モデル手段あるいは前記ビ
    ュー手段の実行処理と実行取消処理を起動するコマンド
    手段と、 を組み合わせたモデル・ビュー・コントローラ・コマン
    ド手段によるグラフィカル・ユーザ・インタフェース生
    成管理手段を備えることを特徴とするGUI処理システ
    ム。
  5. 【請求項5】 請求項3または4において、 ビジュアルなフィードバックを与えるドラッグ・アンド
    ・ドロップを実現するドラッグコントローラ手段をさら
    に備えており、前記グラフィカル・ユーザ・インタフェ
    ース生成管理手段に前記ドラッグコントローラ手段を含
    めることを特徴とするGUI処理システム。
  6. 【請求項6】 請求項3〜5のいずれかにおいて、 実行起動処理を実行したコマンドを記憶手段に保存する
    コマンド記憶を管理するコマンド記憶手段と、前記コマ
    ンド記憶の最後に新たなコマンドを追加するプッシュ手
    段と、前記コマンド記憶の最後に追加されたコマンドを
    取り出すポップ手段と、前記ポインティング装置を用い
    た操作によって実行起動処理を実行したコマンドを前記
    プッシュ手段を利用して前記コマンド記憶に追加するコ
    マンド実行履歴記憶手段とを含むコマンド実行履歴スタ
    ック手段と、 前記コマンド実行履歴スタック手段の前記ポップ手段に
    より取り出したコマンドの実行取消起動処理を実行する
    操作取消手段と、 をさらに備え、前記コマンド実行履歴スタック手段と前
    記操作取消手段とを前記グラフィカル・ユーザ・インタ
    フェース生成管理手段に含めることを特徴とするGUI
    処理システム。
  7. 【請求項7】 請求項6において、 実行起動処理を実行したコマンドを記憶手段に保存する
    コマンド記憶を管理するコマンド記憶手段と、前記コマ
    ンド記憶の最後に新たなコマンドを追加するプッシュ手
    段と、前記コマンド記憶の最後に追加されたコマンドを
    取り出すポップ手段と、前記ポインティング装置を用い
    た操作によって実行取消起動処理を実行したコマンドを
    前記プッシュ手段を利用して前記コマンド記憶に追加す
    るコマンド取消履歴記憶手段とを含むコマンド取消履歴
    スタック手段と、 前記コマンド取消履歴スタック手段の前記ポップ手段に
    より取り出したコマンドの実行起動処理を実行する操作
    再実行手段と、 をさらに備え、前記コマンド取消履歴スタック手段と前
    記操作再実行手段とを前記グラフィカル・ユーザ・イン
    タフェース生成管理手段に含ませることを特徴とするG
    UI処理システム。
  8. 【請求項8】 請求項6または7において、 前記コマンド記憶に含まれる特定のブロックを選択し、
    前記ブロック中のコマンドを読み出して、登録された順
    番にコマンドの実行起動処理を実行するコマンド・ブロ
    ック実行手段をさらに備え、前記コマンド・ブロック実
    行手段を前記グラフィカル・ユーザ・インタフェース生
    成管理手段に含ませることを特徴とするGUI処理シス
    テム。
  9. 【請求項9】 請求項8において、 前記コマンド記憶にある特定のブロックを前記記憶手段
    に記憶するとともに、前記ブロックに記憶された所定の
    コマンド以降のコマンドを消去して、新たなコマンドを
    追加するコマンド・ブロック編集手段をさらに備え、前
    記コマンド・ブロック編集手段を前記グラフィカル・ユ
    ーザ・インタフェース生成管理手段に含ませることを特
    徴とするGUI処理システム。
JP30339798A 1997-10-10 1998-10-09 Gui処理システム Withdrawn JPH11218562A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30339798A JPH11218562A (ja) 1997-10-10 1998-10-09 Gui処理システム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP29334997 1997-10-10
JP9-293349 1997-10-10
JP30339798A JPH11218562A (ja) 1997-10-10 1998-10-09 Gui処理システム

Publications (1)

Publication Number Publication Date
JPH11218562A true JPH11218562A (ja) 1999-08-10

Family

ID=26559373

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30339798A Withdrawn JPH11218562A (ja) 1997-10-10 1998-10-09 Gui処理システム

Country Status (1)

Country Link
JP (1) JPH11218562A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011013768A (ja) * 2009-06-30 2011-01-20 Nippon Telegr & Teleph Corp <Ntt> シナリオ作成方法、その装置、プログラム及び記録媒体
JP2014106720A (ja) * 2012-11-27 2014-06-09 Toshiba Mitsubishi-Electric Industrial System Corp プログラマブルコントローラの試験装置
US10448100B2 (en) 2015-05-28 2019-10-15 Samsung Electronics Co., Ltd. Display apparatus and control method thereof

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011013768A (ja) * 2009-06-30 2011-01-20 Nippon Telegr & Teleph Corp <Ntt> シナリオ作成方法、その装置、プログラム及び記録媒体
JP2014106720A (ja) * 2012-11-27 2014-06-09 Toshiba Mitsubishi-Electric Industrial System Corp プログラマブルコントローラの試験装置
US10448100B2 (en) 2015-05-28 2019-10-15 Samsung Electronics Co., Ltd. Display apparatus and control method thereof

Similar Documents

Publication Publication Date Title
US20020109734A1 (en) GUI processing system for performing an operation of an application which controls testing equipment
US7757207B2 (en) Form skin and design time WYSIWYG for .net compact framework
CA2116772C (en) Procedural user interface
JP2006092570A (ja) プログラムを構成するためのシステム及び方法
JPH09510567A (ja) ドキュメント・プロキシィ・フレームワーク
US20130080879A1 (en) Methods and apparatus providing document elements formatting
CN111800454A (zh) 一种可视化数据展示系统及可视化页面投屏方法
US5570281A (en) Method and system for facilitating visual connections between objects using handles
JPH10154070A (ja) ユーザインタフェース設計装置及び方法
JP2000099317A (ja) ユーザインタフェース設計装置及び方法
JP3713466B2 (ja) プログラム作成支援方法、プログラム作成支援プログラム及びプログラム作成支援装置
JPH11218562A (ja) Gui処理システム
JP2009223568A (ja) シナリオ生成装置及びプログラム
JP2007066077A (ja) Gui生成方法、gui生成装置、コンピュータプログラム及び記憶媒体
JPH06131168A (ja) ユーザインタフェース作成支援装置
JP2937275B2 (ja) 図形処理方法
JPH09106337A (ja) ユーザーインタフェース生成装置
JPH07318380A (ja) データ計測支援装置およびデータ計測支援方法
JP2009015455A (ja) 情報表示装置、情報表示方法および情報表示プログラム
US20010002834A1 (en) Method for inputting and acquiring requirement
JP2000010769A (ja) ユーザインタフェース設計装置及び方法
EP0967463A2 (en) Measuring instrument comprising a help system
JP2012064156A (ja) 情報処理装置とその処理方法及びプログラム
JP2511647B2 (ja) デ―タ処理システム上に可視インタフェ―スを構築する方法及び装置
JP3965816B2 (ja) ユーザ管理方法及びそのシステム

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20060110