JPH04157528A - グラフィカル・ユーザインターフェースの編集装置 - Google Patents

グラフィカル・ユーザインターフェースの編集装置

Info

Publication number
JPH04157528A
JPH04157528A JP2283759A JP28375990A JPH04157528A JP H04157528 A JPH04157528 A JP H04157528A JP 2283759 A JP2283759 A JP 2283759A JP 28375990 A JP28375990 A JP 28375990A JP H04157528 A JPH04157528 A JP H04157528A
Authority
JP
Japan
Prior art keywords
editing
user interface
graphical user
event
gui
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
JP2283759A
Other languages
English (en)
Other versions
JPH0756628B2 (ja
Inventor
Masatake Iwata
岩田 正武
Atsushi Kurabe
倉部 淳
Hiroshi Ichiji
伊知地 宏
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2283759A priority Critical patent/JPH0756628B2/ja
Priority to US07/775,767 priority patent/US5335320A/en
Publication of JPH04157528A publication Critical patent/JPH04157528A/ja
Publication of JPH0756628B2 publication Critical patent/JPH0756628B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、ワークステーションやパーソナルコンピュ
ータ等に環境提供されたグラフィカル・ユーザインター
フェースを通じて新たなグラフィ゛カルーユーザインタ
ーフェースの構築、或いは編集を行うグラフィカル・ユ
ーザインターフェースの編集装置に関し、特に、汎用の
OS(オペレーティングシステム)上で、こうしたユー
ザインターフェースの、効率よい、しかも柔軟性に富ん
だ構築、編集を可能ならしめる編集装置の具現に関する
[従来の技術] ワークステーションやパーソナルコンピュータ等に視覚
的な操作環境を提供するブラフイカルミユーザインター
フェース(以下、GUIと略称する)は、これらワーク
ステーションやパーソナルコンピュータ等を通じての知
的生産を著しく高め得る手段或いは技術として、近年、
大いに注目を集めている。
例えば、 ◆rGMW(ギブ・ミー・モア・ウィンドウズ)ウィン
ドウ・システム上のアプリケーション構築について」大
谷浩司 拙著 コンピュータソフトウェア Vol、17   No、1   (1990,1,1
6)P、45−60◆「ヒユーマンインタフェースの最
先端」日本ソフトウェア科学会 平成2年1月18日発
行P、29−46  rグラフィカルなユーザ・インタ
ーフェースとその開発環境について」萩谷昌己著◆「υ
Ser Interface Management 
5ysteIIs  (ユーザ中インターフェース・マ
ネージメント・システム、□ J  G、E、Pfaf
f (ジー・イー・ファフ)編Springer−Ve
rlag  (スブリンガー出版)1983.11.1
−3 P、9−20 r Report on Dialog
ue 5pecification To−ols  
(リポート・オン・ダイアログ・スペシフィケーション
・ツールズ) J  M、Green (エム・クリー
ン)著 ◆rHuman−Computer Interfac
e Development: C−oncepts 
and Systems for Its Manag
ement (ツユ−マン−コンピュータ・インターフ
ェース・デベロップメント:コンセプト・アンド・シス
テムズ書フォー拳イッツ・マネージメント)」H,RE
X )IARTSON  (エイチ・レックス・ハート
ソン)DEBORAHHIX  (デボアー・ヒックス
)共著ACM Computing 5urveys 
 Vol、21  No、l  1989,3P、5−
92 等々は何れも、GUIについて考察された文献であり、
この他にも、様々な形で、GUIに関する研究や開発が
進められている。
ところで、このようなGUIとしては、これまでも、r
Star(スター:ゼロックス社)」などに見られるよ
うないくつかの実用されている技術もあるが、そのほと
んどは、O8(オペレーティングシステム)自体に組み
込まれていてユーザ自身による改良やカスタマイズの困
難なシステムであったり、また、UNIX(ユニックス
)等の汎用O3上でこうしたGUI環境を提供するX(
エックス)ウィンドウにしても、その開発環境として標
準になりつつあるいくつかのGUIシステムを見る限り
においては、 (1)ユーザの誤った操作を有効に保護することができ
ない。例えば、こうしたGUI環境を通じて新たなGU
Iを設計或いは編集する場合に、現実には有り得ないよ
うな部品(GU1部品)の配置が指定されたような場合
でもこれをGUIデータとして受け入れてしまう。
(2)′GUIにあっては通常、マウスやキーボード等
の入力装置を通してのユーザ入力をイベントとして受け
取り、この受け取ったイベントを解析して、予め定義−
された何らかの処理を実行することとなるが、このイベ
ント1こ対する解釈の仕方が固定されていて、多様の処
理を定義するためには、イベントの発生の・させ方も多
様に定義する必要がある。すなわちユーザにしてみれば
、操作を進めていく過程において多様の入力方法が強り
られることとなる。
(3)各GU1部品毎に決められたサイズのメモリ領域
を割り当てて、そのメモリ領域の中に必要なデータを格
納するようにしていることから、もしも異なるGUI環
境を通じて新たなGUIの設計或いは編集を行おうとす
る場合には、その利用するGUI環境での部品に合わせ
て編集装置自体を修正する必要がある。
(4)また、GUI定義言語の構造も、GUI環境環境
面定されていることから、異なるGUI環境を通じて新
たなGUIの設計或いは編集を行おうとする場合にはや
はり、その利用するGUI環境での部品に合わせて編集
装置自体を修正する必要がある。
(5)新たに定義したGUJ構築用部品をGU1部品の
データベースに登録するためには、その定義した部品の
属性名と属性値とをユーザがいちいちタイプ入力しなけ
ればならず、その手続が一面倒である。
等々、実用上は、また汎用性を考える場合:こは、尚斉
くの問題嘴抱えている。、    −[発明が解決しよ
うとする課題] 上述のように、従来のGUI開発環境にあっては、たと
えそれか、汎用O8上での構築か可能なものであっても
、上記(1)〜(5)として挙げたような多くの課題を
残すものであり、特にその汎用性を考える上では、これ
らの早急な解決が望まれている。
この発明は、こうした実情に鑑みてなされたものであり
、汎用のO8上に構築されるGUIを通してGUIの新
たな設計や編集を行う場合であっても、上記の課題を解
決して、効率の良い、柔軟性に富んだGUI編集を可能
にするGUIの編集装置を提供することを目的とするも
のである。
すなわちこの発明は、ユーザの誤った操作を効果的に保
護することのできるGUIの編集装置を提供することを
目的とする。
またこの発明は、最小限のイベントに対して、より多様
の処理を定義することのできるGUIの編集装置を提供
することを目的とする。
またこの発明は、GU1部品のサイズやGUI定義言語
によって規定されることなく、より多くのGUI構築環
境下で汎用的にGUI編集を行うことのできるGUIの
編集装置を提供することを目的とする。
またこの発明は、新たに設計、或いは編集したGUI構
築用部品のGUI部品データベースへの登録手続を大幅
に簡略することのできるGUIの編集装置を提供するこ
とを目的とする。
[課題を解決するための手段] こうした目的を達成するために、この発明では、複数の
GU1部品を管理するブラウザ手段と、これら部品を単
位要素として構成、編集されるGUIデータを管理する
編集データ管理手段と、入力装置を通じてのユーザ入力
をGUIのイベントとして受け取り、この受け取ったイ
ベントを解析して前記ブラウザ手段及び編集データ管理
手段の処理態様を決定する編集動作解析手段と、を具え
るGUI開発環境を前提として、前記ブラウザ手段によ
り管理される各GUI部品に対し、前記イベントについ
ての制約条件を予め設定するとともに、前記編集動作解
析手段には、前記イベントか、その対象となるグラフィ
カル・ユーザインターフェース部品の制約条件を満たす
とき、当該イベントについて予め定義された処理指令を
前記編集データ管理手段に対して送出し、同イベントが
、その対象となるグラフィカル・二−ザインターフエ〜
ス部品の制約条件を満たし得ないとき、当該イベントに
対応するユーザ入力を拒否する手段を設けるようにする
またこの発明では、上記GUN開発纏境の前提のもとに
、前記編集動作解析手段に対し、容具なる編集内容に対
応した複数の解析モードを有してこれら解析モード別に
前記受け取ったイベントに対応する処理指令が定義され
ているとともに、これら各解析モード毎にその対象とさ
れるイベントの発生に応じたモード遷移態様が定義され
たモード変換テーブルを設け、都度の解析モードに応じ
て前記受け取ったイベントに対応する処理指令が決定さ
れ、同イベントの内容及び前記モード変換テーブルに基
づいて解析モードが遷移されるようにする。
またこの発明では、同GUI開発環境の前提のもとに、
前記編集データ管理手段に対し、前記編集されるGUI
データを、前記GUI部品の持つ属性に従って、その種
類別に分類し、本構造のデータとして管理する手段を設
けるようにする。
またこの発明では、同GU?開発環境の前提のもとに、
前記編集データ管理手段に対し、前記編集動作解析手段
を通じたユーザ入力の解析に基づく部品移動指令によっ
て取り込まれる前記GUI部品に対してその都度独自の
識別子を設定する手段を設けるとともに、前記ブラウザ
手段に対し、前記編集動作解析手段を通じたユーザ入力
の解析に基づく部品登録指令によって前記GUIデータ
が取り込まれたとき、該データに対してGUI部品毎に
設定された前記識別子に基づき、これら識別子によって
識別される各部品の属性を前記編集データ管理手段から
併せ受け取り、当該GUIデータに含まれる部品とその
属性を自ら管理する部品データベースに追加する手段を
設けるようにする。
[作用] 上記のように、各GU1部品に対して制約条件(例えば
「置くことのできる部品の種類」などを定めたもの)を
設定するとともに、編集動作解析手段に対してこの制約
条件に基づくイベント(ユーザ入力)の適否判断を行わ
せるようにすることで、少なくともユーザの誤操作に基
づ<GUIデータのバグは回避され、GUIデータとし
ての品質も好適に保たれるようになる。
また、編集動作解析手段に対して、上記のように「モー
ド」といった概念を適用し、これが上記変換テーブルの
もとに、イベントが発生される都度、その内容に応じて
遷移(変換)されるようにすることで、同一のイベント
、すなわち同一のユーザ入力内容に対する処理内容を多
岐に定義することができるようになる。すなわちこのこ
とは、GUI編集装置としてのより多くの機能が、ユー
ザによる最小限の入力操作を通じて、円滑に実現される
ようになることを意味する。
また上記のように、編集データ管理手段に対して、その
編集されるGUIデータを木構造のデータとして管理さ
せるようにすれば、その構造さえ判別できるGUI開発
環境であれば如何なる環境のものであっても、こうした
GUIデータ或いはGU1部品を流用することが可能と
なる。
なおこの場合、上記管理する木構造のデータを更に5式
(Symbollc expression ニシンポ
リツク・エクスプレッションの略。人工知能用言語であ
る「LIsP(リスプ)」において多く用いられる)の
形式で保存するようにすれば、上記GUIデータやGU
I部品の更に汎用的な利用が可能となる。
また上記のように、編集データ管理手段において、その
取り込まれるGUI部品に対し識別子を設定するように
し、ブラウザ手段において、この編集データ管理手段と
の情報授受に基づき、その取り込まれるGUIデータか
ら、上記識別子によって識別される部品及びその属性を
採取しかつ、これをその管理する部品データベースに追
加するようにすることで、ユーザがいちいち当該部品に
関する部品登録のための記述を行わなくとも、半自動的
に、すなわち部品登録のためのイベントを前記編集動作
解析手段に解釈させるだけの操作を通じて、所望とされ
る部品のデータベース登紳が実現されるようになる。
[実施例] 第1図に、この発明にがかるGUI(グラフィカル・ユ
ーザインターフェース)の編集装置の一実施例を示す。
この実施例では便宜上、GUIの部品として、汎用O5
であるUNIX上でのGUI構築環境の1つとしてしら
れているXウィンドウシステム・バージョン11の、A
thena  Widget(アテナ・ライジェット)
を使用する場合について説明する。
すなわち第1図において、GUIIは、表示装置DDの
制御プログラムとして、表示装置DD上にAthena
  Widgetで定義されたGUI編集用の画面を視
覚的に表示制御するXウィンドウシステムからなる。そ
してこのGUIIでは、これら表示情報に対するキーボ
ードやマウスなどの図示しない入力装置を通じてユーザ
入力があった場合、これをイベントとして受け取って、
そのイベント内容を、編集装置本体である処理装置2に
メツセージとして通知する。実施例の編集装置では、以
下に説明する全ての処理が、このGUll (Xウィン
ドウシステム)との間でのメツセージ通信を通じて実行
される。第2図に、このGUllによる表示装置DDを
通じての表示制御画面の一例を示す。
因みにこの第2図に示す画面において、11は、GU1
部品(widget)表示用のウィンドウであるブラウ
ザエリア、12は、GUIデータの編集(設計)用のウ
ィンドウである編集用エリア、13a、13b及び13
cは、各々redit(エデイツト)」メニュー、rf
ile(ファイル)」メニュー、及び「main(メイ
ン)」メニューをプルダウン表示させるためのメニュー
ボタン、14は、上記ブラウザエリア11に所望のGU
I部品を表示させるためのブラウジングボタン、をそれ
ぞれ示している。後に詳述する’G U 1データの編
集(設計)操作、或いは新たに定義するGU1部品の登
録操作等は、全てこのG U−1画面を通して実行され
るようになる。
また、第1図において、上記GUIIを通してユーザ入
力によるイベントが通知される処理装置2は、大きくは
、該通知されるイベントを都度の編集状態に応して解析
する部分である編集動作解析部21と、上記ブラウザエ
リア11を通じて操作されるGU1部品の管理を主に行
う部分であるブラウザ22と、上記編集用エリア12を
通じて設計或いは編集されるGUIデータを管理する部
分である編集データ管理部23とを具えて構成される。
この処理装置2では上述のように、該編集装置の本体と
して、これら各部の協働した動作を通じて、ユーザによ
るGUI編集作業を裏面から支えるようになる。
なお、この編集装置では、GUIを構成する各部品をオ
ブジェクトとして捉えている。このため、これら部品を
クラスという概念で分類することかできるようになる。
ここでいうクラスとは、同し特徴を持つオブジェクトの
仕様を定義したものである。
またここでは、オブジェクト指向における継承(fnh
eritance )の考えを取り入れている。これに
より、上記クラスの定義を行うにも、その上位クラスと
の差分のみを記述することで足りるようになる。
以下に、処理装置2を構成する上記各部の機能について
詳述する。
まず、編集データ管理部23は、上記のように、編集用
エリア12(第2図)に呼び出された各GU1部品の編
集内容をGUIデータとして管理する部分である。この
編集データ管理部23では、第1図に併記するように、
各GU1部品を上述したオブジェクトとして捉えること
により、同部品をそれら各々の持つ属性に従ってカテゴ
リに分類し、木構造を用いて管理する。因みに、ここて
のカテゴリは、上記クラスに対応し、下位のカテゴリの
定義には、その上位のカテゴリとの差分のみか用いられ
る。
またこの編集データ管理部23は、編集用エリア12(
第2図)に呼び出された部品に対してその各々に個別の
識別子を設定する機能も併せ持つ。
これら設定された識別子の値は、その都度、編集動作解
析部21に返される。
また、ブラウザ22は、上記のように、ブラウザエリア
11(第2図)を通じて操作される各GU1部品を管理
する部分である。このブラウザ22においても、これら
GU1部品の管理には、上記同様のオブジェクト指向が
採用されている。
また、このブラウザ22は更に、ユーザにより新たなG
UI部品として登録すべく部品が指定された場合、該指
定された部品とその属性を、上記編集データ管理部23
で設定された識別子に基づき、自動的にその部品データ
ベースに追加する機能をも併せ有する。
なお、このブラウザ22にて管理される各GU1部品に
は、同第1図に併記するように、それら部品の配置態様
や取扱いに関しての「制約条件」か予め記述定義されて
おり、これら部品を用いた編集操作に際しては、対象と
なる部品間における該「制約条件」が満たされているか
否かが、編集動作解析部21によってその都度参照され
る。この「制約条件」には、「置くことのできる部品の
種類」などが記述されている。例えば、ボタンとして定
義された部品の上に、他のボタン、或いはウィンドウと
して定義された部品が配置されてはならない。
編集動作解析部21は、上記のように、GUllを通じ
て通知されるイベントを都度の編集状態に応して解析す
る部分である。すなわちこの編集動作解部21は、容具
なる編集内容に対応した複数の解析モードを有して、こ
れら解析モード別に上記通知されるイベントに対応する
アクションが定義されているとともに、これら各解析モ
ード毎にその対象とされるイベントの発生に応じたモー
ド遷移態様が定義されたモード変換テーブル10を具え
、都度の解析モードに応じて同通知されるイベントに対
応するアクションを決定し、該イベントの内容及びモー
ド変換テーブル10に基づいて解析モードが遷移される
。このモード変換テーブル10の一例を第3図A及びB
に示す。
すなわちこの編集動作解析部21は、それぞれ第3図A
及びBにその意味が示されるrNOMAL(ノーマル)
」モード、rSSELECT (シングル・セレクト)
」モード、rMSELECT(マルチ・セレクト)」モ
ード、rcOPY (コピー)」モード、rMOVE 
(ムーブ)」モード、rDIREcTMOVE (ダイ
レクトムーブ)」モード、rCONSTRAINTSM
OVE (コンストレインツムーブ)」モード、rRE
sIZE(リサイズ)」モード、rCREATE (ク
リエイト)」モード、rPROPsHEET (プロパ
ティシート)」モード、rTEXT I NPUT(テ
キストインプット)」モード、及びrcONFIRM(
コンファメイション)」モード、といった12の基本モ
ードを有し、上記イベントが通知される都度、 (1)その時点のモードに応じて、当該イベントの解釈
を行う。
(2)解釈されるイベント内容に基づいて、当該モード
において予め定義されているアクションを起動する。
(3)第3図A及びBに示されるモード変換テーブルに
基づいて、当該イベント内容に対応したモードへ遷移す
る。
といった動作を繰り返し実行する。例えば、上記イベン
トが「マウスの左ボタンが押された状態」といったイベ
ントであった場合、この編集動作解析部21は、rNO
RMALJモードにおいては「選べ」といったアクショ
ンを起動するように定義され、rMOVEJモードにお
いては「ここに置け」といったアクションを起動するよ
うに定義される。また更に、上記rNORMALJモー
ドにおける当該イベントが編集用エリア12(第2図)
にある部品上でのクリック(マウスボタンを押してすぐ
に離す操作)につながるものであれば、同編集動作解析
部21はその後rSSELECTJモードに遷移され、
同じ< rNORMALJモードにおける当該イベント
かブラウザエリア11(第2図)にある部品上でのドラ
ッグ(マウスボタンを押した状態でそのまま移動させる
操作)につながるものてあれば、同編集動作解析部21
はその後rCREATEJモードに遷移される。他方の
「MOvE」モードにおいては、当該イベントが移動先
でのクリックにつながるものであれば、同編集動作解析
部21はその後rSSELECTJモードに遷移される
また、この編集動作解析部21は、上述のように、ユー
ザによるGU1部品の編集操作の都度、その発生される
イベントがこれら各GU1部品に定義されている「制約
条件」が満たされるイベントであるか否かを監視する機
能も併せ持つものであり、実際には、上記モードとイベ
ントとに応じて定義されているアクションも、都度のイ
ベントがその対象とするGU1部品の制約条件を満たす
ときにのみその起動を行い、同GU1部品の制約条件を
満たし得ないときには、適宜のエラー処理(例えばGU
IIを通じて表示装置DDにエラーメツセージを表示さ
せる等の処理)を行って、当該イベントに対応するユー
ザ入力を拒否するよう動作する。
以上、編集動作解析部21、ブラウザ22及び編集デー
タ管理部23によって構成される処理装置2を通じて、
該実施例編集装置としての実質的なGUIデータの編集
処理が進められることとなる。
また、同第1図に示すこの編集装置において、記憶装置
3は、上記処理装置2のブラウザ22を通じて管理され
るGU1部品、及び同処理装置2の編集データ管理部2
3を通じて管理されるGUIデータを格納保持するため
の装置である。
次に、具体的な編集操作に基づく該実施例編集装置全体
としての動作について説明する。
はじめに、編集中のGUIデータに部品を追加すること
を例に、その際の編集操作に対応する該編集装置として
の動作を説明する。すなわちこの場合、ユーザは、先の
第2図に例示したGUIの編集画面を通じて、そのブラ
ウザエリア11から所望の部品を選択し、これを編集用
エリア12内の所望位置に配置する(例えばドラッグす
る)といった操作を行うことになる。
さていま、編集作業の過程において、上記編集動作解析
部21のモードが例えばrS S E L E CT(
シングルセレクト)」モードにあり(例えばrNORM
AL (ノーマル)」モードからは、編集用エリア12
の部品上でマウスの左ボタンがクリックされることで、
このrSSELECTJモードに遷移される二第3図A
参照)、この状態でブラウザエリア11に表示されてい
るGU1部品がドラッグ(正確には左ボタンが押下)さ
れたとすると、編集動作解析部21ではその旨解析し、
第4図に示すアルゴリズムに基づいて以下に列記する態
様での処理を開始することとなる。
すなわち編集動作解析部21は、前記GUIIからのイ
ベント通知によってこのブラウザエリア11での部品の
指定、並びにそのドラッグ(正確にはマウス左ボタンの
押下)を認知すると(第4図ステップ511)、 (1)モード変換テーブル10(第3図A)に基づき、
モードをrCREATE (クリエイト)」に遷移した
状態で(第4図ステップ512)、そのドラッグ先、す
なわち編集用エリア12ての、押下されたマウスボタン
のリリースを待つ。このリリースされる位置が、当該部
品の配置指定位置となる。なお、これらrCREATE
Jモードへの遷移、及び選択部品の編集用エリア12へ
の配置指定は、第2図に例示した編集画面のredit
Jボタン13Mを通じたメニニー操作によっても、同様
に行うことができる。因みにこの場合、該reditJ
ボタン13aをマウスクリックすることで「部品の追加
」といった項目を含むプルダウンメニューが開かれるも
のとし、該編集動作解析部21では、その後ユーザによ
ってこの「部品の追加」の項目が選ばれることでrcR
EATEjモードへの遷移を行い、更にユーザによって
編集用エリア12上の適宜位置がマウスクリックされる
ことで当該部品の配置位置の指定が行われた旨判断する
(2)こうした手順(例えばマウスボタンのリリース)
を通じて部品の配置位置か指定されると(第4図ステッ
プ513)、この指定された位置が有効か否かの判定を
行う(第4図ステップ514)。
例えば、その位置が編集用エリア12の外であったり、
或いはこの追加される部品が「ボタン」のようなもので
あった場合に、その指定位置が先に配置定義されている
ウィンドウの外であったり、いわゆる無効な位置指定が
なされたと判断される場合には、その旨のエラーメツセ
ージをGUIIを通じて表示装置DD上に表示するなど
のエラー処理を行って(第4図ステップ515)、当該
イベントを拒否する。
(3)上記指定位置の判定において有効と判断される場
合には次いで、先に配置されている部品の属性から前記
「制約条件」を取り出し、この制約条件が満たされるか
否かの判定を行う(第4図ステップ516)。前述のよ
うに、例えばボタンとして定義された部品の上には、他
のボタン、或いはウィンドウとして定義された部品が配
置されてはならない。もしもこの「制約条件」が満たさ
れなかった場合には、上記同様、エラー処理を行って(
第4図ステップ517)、当該イベントを拒否する。
(4)これらの判定において何れも有効と判断される場
合には、当該GUI部品の情報を編集データに追加する
ために、編集データ管理部23に対して追加指令(rA
dd(アット)命令」)を送出する(第4図ステップ5
18)。この追加指令を受けた編集データ管理部23で
は、当該GU1部品の情報をその管理している編集デー
タに追加するとともに、同GUI部品に対して新たに個
有の識別子を設定し、この設定した識別子を編集動作解
析部21に返す処理を行う。なお、この編集データ管理
部23が、該追加したGU1部品についても、これをそ
の属性に従ってカテゴリに分類し、木構造を用いて管理
するようになることは前述した通りである。
(5)最後に、上記マウスボタンの、編集用エリア12
上でのリリースを通じて、rSSELECTJモードに
遷移しく第3図B参照)、次のイベント発生に備えて待
機する。
といった一連の処理を実行する。
編集動作解析部21によるこうした処理を通じて、また
更には、編集データ管理部23の上述した部品情報追加
処理を通じて、ユーザによって追加指定されたGUI部
品が安全かつ確実に、しかも汎用性を持って、編集中の
GUIデータに取り込まれるようになる。なお、第3図
Aに示したモード変換テーブルからも明らかなように、
例えばその後、編集画面のバックグランド上でマウスの
左ボタンがクリックされれば、該編集装置(正確には編
集動作解析部21)は、初期状態として定義されている
rNORMALJモードに戻ることとなる。
次に、編集用エリア12にあるGU1部品を、前記ブラ
ウザ22の部品データベースに登録することを例に、そ
の際の操作に対応する該編集装置としての動作を説明す
る。この場合ユーザは、先の第2図に例示したGUIの
編集画面を通して、その編集用エリア12にある登録所
望GU1部品を選択し、これをブラウザエリア11内に
ドラッグするといった操作を行うことになる。
さていま、編集作業の過程において、上記同様編集動作
解析部21のモードか例えばrSSELECT (シン
グルセレクト)」モードにあり、この状態で編集用エリ
ア12に表示されているGU1部品がドラッグ(正確に
は左ボタンが押下)されたとすると、編集動作解析部2
1ではその旨解析し、第5図に示すアルゴリズムに基づ
き以下に列記する態様での処理を開始することとなる。
すなわち編集動作解析部21は、前記GUIIからのイ
ベント通知によってこの編集用エリア12での部品の指
定、並びにそのドラッグ(正確にはマウス左ボタンの押
下)を認知すると(第5図ステップ521)、 (1)モード変換テーブル10(第3図A)に基づき、
モードをrDIREcTMOVE (ダイレクトムーブ
)」に遷移した状態で(第5図ステップ522)、その
ドラッグ先、すなわちブラウザエリア11ての、押下さ
れたマウスボタンのリリースを待つ。
(2)マウスボタンのリリースを通じて部品の登録が指
定されると(第5図ステップ823)、この登録位置が
有効か否かの判定を行う(第5図ステップ524)。例
えばその位置がブラウザエリア11の外であったりした
場合、すなわち無効な位置の指定がなされた場合には、
その旨のエラーメツセージをGUIIを通じて表示装置
DD上に表示するなどのエラー処理を行って(第5図ス
テップ525)、当該イベントを拒否する。
(3)上記登録位置の判定において有効と判断される場
合には次いで、置かれている部品の属性から前記「制約
条件」を取り出し、この制約条件が満たされるか否かの
判定を行う(第5図ステップ526)。ただし、ブラウ
ザ22ではいかなる部品も受け入れる。このため通常は
、この過程でエラー処理(第5図ステップ527)が行
われることはない。
(4)これらの判定において何れも有効と判断される場
合には、当該GUI部品の情報をブラウザ22の部品デ
ータベースに追加登録するために、該ブラウザ22に対
し、登録指令と当該GU1部品に対して前記編集データ
管理部23が設定付加した識別子とを併せ渡す(第5図
ステップ528)。
これを受けたブラウザ22では、編集動作解析部21を
介し、編集データ管理部23との間で次に列記する処理
を実行して、その指定されたGU1部品の情報を自ら管
理する部品データベースに追加登録する(第5図ステッ
プ529)。
(4−1)ブラウザ22はまず、編集データ管理部23
に上記受け取った識別子を渡して関数を呼び出し、当該
部品の属性とその属性値とを返し値として受け取る。
(4−2)この受け取った部品の属性とその属性値を、
上記ユーザによるドラッグ操作を通じて登録指示された
GU1部品の情報としてデータベースに追加する。
(5)編集動作解析部21では、上記マウスボタンの、
ブラウザエリア11上でのリリースを通じて、rssE
LEcTJモードに遷移しく第3図B参照)、次のイベ
ント発生に備えて待機する。
といった一連の処理を実行する。
編集動作解析部21によるこうした処理を通じて、また
更には、ブラウザ22の上述した部品登録処理を通じて
、ユーザによって登録指定されたGU1部品が簡単かつ
確実に、しかも汎用性を持って、GU1部品データベー
スに追加登録されるようになる。この場合もその後、編
集画面のバックグランド上でマウスが左クリックされる
ようなことがあれば、該編集装置(正確には編集動作解
析部21)は、初期状態として定義されているrNOR
MALJモードに戻る。
最後に、この実施例編集装置によって扱われるGU1部
品のデータ構造について、その記憶装置3上での管理構
造、及びファイル上での管理構造を、それぞれ第6図及
び第7図を併せ参照して説明する。
先にも述べたように、この編集装置によって扱われるG
UI部品のデータは、属性とその属性値とによって表現
されている。そして属性は、その性質に応じてカテゴリ
毎にまとめられ、木構造を用いて記述されている。この
場合、カテゴリは構造体rcategoryJで、属性
名は構造体rPropJで、そして属性値は構造体「V
a 1ueJで、それぞれ表記することができる。以下
に、C言語によって表記した場合のこれら各レコードを
示す。
5truct Category i l*構造体の指定*1 structClass *next。
l零次のカテゴリレコードへのポインタ*1char 
 *nase。
l*属性のカテゴリの名前*/ 5truct Props *propl*カテゴリに
属する属性へのポインタ*/struct  Prop
  1 1*木構造の指定*1 struct Props *next。
l零次の属性レコードへのポインタ*/char *n
ame。
l*属性の名前*1 struct Value *valuel*属性の値
へのポインタ*1 struct Value 1 !本構造体の指定*1 ehar* SV l本文字列型の値*l ここで、こうした部品が、その属性に基づき、どのよう
に分類されるかを、−例を挙げて説明する。
例えば、先の第2図においてその編集用エリア12上に
例示する部品Wの場合、その位置を示す属性としてr(
x、y)Jの属性を持つとともに、同部品Wの上に表示
される文字列「1abelJ’の属性を持つ。因みに、
これらrxJ、ryJ及びrlabelJの型は全てr
char (キャラクタ型)」ポインタであり、値はそ
れぞれ「200」、r300J及び「”LABEL”」
であるとする。
ここに、属性の種類として、位置の属性と部品上に表示
される文字列の属性とが定義されたことになる。
ところで、これら属性の内容を考察して明らかなように
、上記位置の属性は全ての部品が持つものの、上記部品
上に表示される文字列の属性は全ての部品が持つとは限
らない。すなわち、上記の例のような「コマンドボタン
」の場合には、こうした文字列の属性を持つが、「スク
ロールバー」のような部品の場合には、こうした文字列
の属性は持たない。
以上により、上記位置の属性は、全ての部品に通用する
メジャーなカテゴリとして、カテゴリ「ma jorP
rop (メジャープロパティ)」に分類することがで
き、他方の文字列の属性は、全ての部品には通用しない
マイナーなカテゴリとして、カテゴリ「m1narPr
op (フイナーブロバティ)」に分類することができ
ることが判る。
さて、こうしてカテゴリ毎に分類されるGU1部品のデ
ータが前記記憶装置3上に保存される場合、その情報は
、上記カテゴリレコード[majorPropJ及びr
minarPropJの別に、その各関連するデータの
エリアが、例えば第6図に示される態様で、該記憶装置
3上に割り当てられる。
すなわちこの例においては、レコード「majorPr
opJの領域が、記憶装置3上の番地「10」に、他方
のレコードrminarPr。
p」の領域が、同記憶装置3上の番地「20」にそれぞ
れ割り当てられ、更に、これらカテゴリレコードの鎖を
作るために、レコード「majorPropJの「Ne
xtJフィールドには、レコードrminarProp
Jの記憶番地である「20」が、またレコードrmin
arPropJのrNextJフィールドには、次がな
いことを示す「n1lJが格納されている。また、同記
憶装置3上には、上記rxJ、ryJ及びrlabel
Jの各属性名を格納するレコード「PropJの領域も
併せ割り当てられる。これらrxJ、ryJ及びrla
belJの領域は、記憶装置3のそれぞれ番地「30」
、番地「40」及び番地「60」にある。そして更に、
同じカテゴリに分類される属性のレコードを鎖状に関連
付けるために、rxJのrNextJフィールドには、
ryJの記憶番地である「40」が格納されるとともに
、カテゴリレコードrmajorPropJの「Pro
pJフィールドにはこのrxJの記憶番地である「30
」が、またカテゴリレコードrminarPropJの
rP r o pJフィールドには上記rlabelJ
の記憶番地である「60」が、それぞれ格納されている
。ryJのrNextJフィールドとrlabelJの
rNextJフィールドとには、次がないことを示すr
nilJが格納されている。また、同記憶装置3には、
上記rxJ、ryJ及び「1abelJの各値を格納す
るレコード「ValueJの領域も、それぞれ番地「5
0」、番地「80」及び番地「70」に割り当てられて
いる。これらの番地は、これらレコードrxJ、ryJ
及びriabelJの各「va 1 ueJフィールド
によって示されており、これらレコードrValueJ
の各rsvJフィールドには、各々上述したr200J
、r300J及び「”LABEL”」の値が格納されて
いる。
このように、この実施例編集装置では、各部品毎に固定
の領域を割り当てることなく、上記構造を有するデータ
として記憶装置上での部品管理を行うことにより、GU
I環境によって限定されない汎用性に富んだ部品管理を
実現している。
一方、こうしたGU1部品の編集(設計)情報、すなわ
ちファイル上での論理的な管理構造は、例えば上記の例
の部品(第2図、編集エリア12上のボタン部品W)の
場合、第7図に示される態様の木構造によって表現され
る。
すなわち、こうした部品の情報は、同第7図に示される
ように、アイテムとそのアイテムの組によって記述され
る。上述のように、各アイテムは、類似した性質のもの
同士がカテゴリにまとめられ、更に各カテゴリも、類似
した種類のもの同士が上位のカテゴリにまとめられる階
層構造となっている。この実施例編集装置においては、
これを8式を用いて表記する。
8式とは、前記のように、人工知能用言語である「LI
sP(リスプ)」において多く用いられるrsysbo
lic expression  (シンボリックφエ
クスプレッション)」の略である。この8式では、アイ
テムの構造を「かり二〇」の組み合せを用いて表記する
ものであり、同じ階層にあるアイテムについは、これを
同じ組の「かっ二〇」の中に記述し、それより1つ下の
階層にあるアイテムについては、これを上位の「かっこ
OJの中に包含される別の組の「かっこ0」の中に記述
することで、その階層構造を表現するようにしている。
例えば、第7図に例示される上記の部品のように、カテ
ゴリ「majorPropJとカテゴリrminarP
ropJとの2種のカテゴリを持つとともに、カテゴリ
「majorPropJはrxJ及びryJの属性を持
ち、カテゴリ「m1narPropJは、rlabel
Jの属性を持ち、更にこれら属性の値が、それぞれr2
00J、r300J及び「”LABEL”」であるとす
ると、この部品の情報は、該8式によって、(Objl
nfo  C+++ajorProp (x ”200
”)(y ”300”))(sinarProp (l
abel ”LABEL”)))のように表記されるこ
ととなる。
このように、この実施例編集装置では、編集(設計)情
報についても、その定義言語を固定することなく、8式
によって汎用的に表記される階層構造によって管理する
こととしたことから、ここでも、GUI環境によって限
定されない汎用性に富んだ情報管理が実現されるように
なる。
なお、この実施例では便宜上、Xウィンドウシステム・
バージョン11の、Athena  Widget  
(アテナΦウィジェット)を利用してGUlの編集装置
を構成する場合について説明したが、この発明にかかる
編集装置が、こうした環境やO8(オペレーティングシ
ステム)に限定されることなく、他のGUI環境、更に
は他のO8を通じて構築されるGUI環境にあっても、
同様に適用できるものであることは勿論である。
[発明の効果] 以上説明したように、この発明によれば、編集装置自体
がGUIとしての基本的なマン・、マシン拳インターフ
ェースとして介在して、これらマン・マシン間の、或い
はO8との間での、これまでの制限や不都合を吸収する
よう振る舞うことから、汎用のO8上であれ、効率の良
い、柔軟性に富んだGUI編集が実現されるようになる
特にこの発明によれば、各GU1部品に対して制約条件
を設定するとともに、編集動作解析手段に対してこの制
約条件に基づくイベント(ユーザ入力)の適否判断を行
わせるようにしたことから、ユーザの誤操作を保護して
、GUIデータとしての品質を高く保つことができるよ
うになる。
またこの発明によれば、編集動作解析手段に対して複数
の解析モードを設定し、都度のイベントの解釈をこれら
解析モードに応じて自動的に変えるようにしたことから
、高度なGUI編集も円滑に、しかも高能率に実現でき
るようになる。
またこの発明によれば、都度編集されるGUIデータを
本構造のデータとして管理するようにしたことから、如
何なるGUI開発環境にあっても、これを流用して汎用
的なGUI開発を行うことができるようになる。
そしてこの発明によれば、部品登録のためのイベントを
編集動作解析手段に解釈させるだけのユーザ操作を通じ
て、所望とされる部品のデータベース登録が半自動的に
行われるようにしたことから、ユーザによる改良やカス
タマイズ等も非常に容易に実現されるようになる。
【図面の簡単な説明】
第1図は、この発明にかかるGUIの編集装置の一実施
例についてその構成を示すブロック図である。 第2図は、該編集装置における編集画面の一例を示す平
面図である。 第3図は、第1図に示される編集動作解析部のモード変
−テーブルについてその内容を例示した略図である。 第4図は、編集中のGUIデータに部品を追加すること
を例にとって同編集装置の処理の流れを例示するフロー
チャートである。 第5図は、編集用エリアにあるGUI部品を新たに部品
登録することを例にとって同編集装置の処理の流れを例
示するフローチャートである。 第6図は、同編集装置で扱われるGU1部品データの記
憶装置上での管理態様を模式的に示す略図である。 第7図は、同編集装置で編集されるGUI情報のファイ
ル上での管理構造を模式的に示す略図である。 1、、、GU I、2.、、処理装置、301.記憶装
置、21 、、、編集動作解析部、22.、、ブラウザ
、23、、、編集データ管理部、10.、、モード変換
テーブル、11 、、、ブラウザエリア、12.、、編
集用エリア、DD、、、表示装置、Wl、1部品。 第1図 第3図A 第4図 第5図

Claims (4)

    【特許請求の範囲】
  1. (1)複数のグラフィカル・ユーザインターフェース部
    品を管理するブラウザ手段と、これら部品を単位要素と
    して構成、編集されるグラフィカル・ユーザインターフ
    ェースデータを管理する編集データ管理手段と、入力装
    置を通じてのユーザ入力をグラフィカル・ユーザインタ
    ーフェースのイベントとして受け取り、この受け取った
    イベントを解析して前記ブラウザ手段及び編集データ管
    理手段の処理態様を決定する編集動作解析手段と、を具
    えるグラフィカル・ユーザインターフェースの編集装置
    であって、 前記ブラウザ手段により管理される各グラフィカル・ユ
    ーザインターフェース部品は、前記イベントについての
    制約条件を有し、 前記編集動作解析手段は、前記イベントが、その対象と
    なるグラフィカル・ユーザインターフェース部品の制約
    条件を満たすとき、当該イベントについて予め定義され
    た処理指令を前記編集データ管理手段に対して送出し、
    同イベントが、その対象となるグラフィカル・ユーザイ
    ンターフェース部品の制約条件を満たし得ないとき、当
    該イベントに対応するユーザ入力を拒否する グラフィカル・ユーザインターフェースの編集装置。
  2. (2)複数のグラフィカル・ユーザインターフェース部
    品を管理するブラウザ手段と、これら部品を単位要素と
    して構成、編集されるグラフィカル・ユーザインターフ
    ェースデータを管理する編集データ管理手段と、入力装
    置を通じてのユーザ入力をグラフィカル、ユーザインタ
    ーフェースのイベントとして受け取り、この受け取った
    イベントを解析して前記ブラウザ手段及び編集データ管
    理手段の処理態様を決定する編集動作解析手段と、を具
    えるグラフィカル・ユーザインターフェースの編集装置
    であって、 前記編集動作解析手段は、各異なる編集内容に対応した
    複数の解析モードを有して、これら解析モード別に前記
    受け取ったイベントに対応する処理指令が定義されてい
    るとともに、これら各解析モード毎にその対象とされる
    イベントの発生に応じたモード遷移態様が定義されたモ
    ード変換テーブルを具え、都度の解析モードに応じて前
    記受け取ったイベントに対応する処理指令を決定し、同
    イベントの内容及び前記モード変換テーブルに基づいて
    解析モードが遷移される グラフィカル・ユーザインターフェースの編集装置。
  3. (3)複数のグラフィカル・ユーザインターフェース部
    品を管理するブラウザ手段と、これら部品を単位要素と
    して構成、編集されるグラフィカル・ユーザインターフ
    ェースデータを管理する編集データ管理手段と、入力装
    置を通じてのユーザ入力をグラフィカル・ユーザインタ
    ーフェースのイベントとして受け取り、この受け取った
    イベントを解析して前記ブラウザ手段及び編集データ管
    理手段の処理態様を決定する編集動作解析手段と、を具
    えるグラフィカル・ユーザインターフェースの編集装置
    であって、 前記編集データ管理手段は、前記編集されるグラフィカ
    ル・ユーザインターフェースデータを、前記グラフィカ
    ル・ユーザインターフェース部品の持つ属性に従って、
    その種類別に分類し、木構造のデータとして管理する グラフィカル・ユーザインターフェースの編集装置。
  4. (4)複数のグラフィカル・ユーザインターフェース部
    品を管理するブラウザ手段と、これら部品を単位要素と
    して構成、編集されるグラフィカル・ユーザインターフ
    ェースデータを管理する編集データ管理手段と、入力装
    置を通じてのユーザ入力をグラフィカル・ユーザインタ
    ーフェースのイベントとして受け取り、この受け取った
    イベントを解析して前記ブラウザ手段及び編集データ管
    理手段の処理態様を決定する編集動作解析手段と、を具
    えるグラフィカル・ユーザインターフェースの編集装置
    であって、 前記編集データ管理手段は、前記編集動作解析手段を通
    じたユーザ入力の解析に基づく部品移動指令によって取
    り込まれる前記グラフィカル・ユーザインターフェース
    部品に対してその都度独自の識別子を設定し、 前記ブラウザ手段は、前記編集動作解析手段を通じたユ
    ーザ入力の解析に基づく部品登録指令によって前記グラ
    フィカル・ユーザインターフェースデータが取り込まれ
    たとき、該データに対してグラフィカル・ユーザインタ
    ーフェース部品毎に設定された前記識別子に基づき、こ
    れら識別子によって識別される各部品の属性を前記編集
    データ管理手段から併せ受け取り、当該グラフィカル・
    ユーザインターフェースデータに含まれる部品とその属
    性を自ら管理する部品データベースに追加する グラフィカル・ユーザインターフェースの編集装置。
JP2283759A 1990-10-22 1990-10-22 グラフィカル・ユーザインターフェースの編集装置 Expired - Lifetime JPH0756628B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2283759A JPH0756628B2 (ja) 1990-10-22 1990-10-22 グラフィカル・ユーザインターフェースの編集装置
US07/775,767 US5335320A (en) 1990-10-22 1991-10-15 Graphical user interface editing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2283759A JPH0756628B2 (ja) 1990-10-22 1990-10-22 グラフィカル・ユーザインターフェースの編集装置

Publications (2)

Publication Number Publication Date
JPH04157528A true JPH04157528A (ja) 1992-05-29
JPH0756628B2 JPH0756628B2 (ja) 1995-06-14

Family

ID=17669750

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2283759A Expired - Lifetime JPH0756628B2 (ja) 1990-10-22 1990-10-22 グラフィカル・ユーザインターフェースの編集装置

Country Status (2)

Country Link
US (1) US5335320A (ja)
JP (1) JPH0756628B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319681A (ja) * 1994-05-23 1995-12-08 Nec Corp 例示によるプログラミング方式
US5905486A (en) * 1997-03-03 1999-05-18 International Business Machines Corporation Mobile client computer programmed to combine cursor, control and input functions
US7530024B2 (en) 1993-07-30 2009-05-05 Canon Kabushiki Kaisha System using icons representative for controlling data input and output relationship between a network of multimedia devices

Families Citing this family (128)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0515739A1 (en) * 1991-05-31 1992-12-02 International Business Machines Corporation Program code generator
JP2967961B2 (ja) * 1991-12-16 1999-10-25 インターナショナル・ビジネス・マシーンズ・コーポレイション 月別の予定表表示の提示方法
JPH0785216B2 (ja) * 1992-02-07 1995-09-13 インターナショナル・ビジネス・マシーンズ・コーポレイション メニュー表示装置および方法
JPH07111675B2 (ja) * 1992-02-28 1995-11-29 インターナショナル・ビジネス・マシーンズ・コーポレイション ウィンドウ表示装置および方法
CA2101864A1 (en) * 1992-08-27 1994-02-28 Claudia Carpenter Customizable program control interface for a computer system
US5790120A (en) * 1992-08-27 1998-08-04 Starfish Software, Inc. Individually configurable panel user interface with selective launching, sticky windows, hot keys, start up options and configurable background
JP2525546B2 (ja) * 1992-09-08 1996-08-21 インターナショナル・ビジネス・マシーンズ・コーポレイション グラフィックリソ―ス・エディタ
US5353401A (en) * 1992-11-06 1994-10-04 Ricoh Company, Ltd. Automatic interface layout generator for database systems
US5666500A (en) * 1992-12-24 1997-09-09 International Business Machines Corporation Workstation user interface for use in conjunction with a host data processing system
US5515496A (en) * 1992-12-24 1996-05-07 Apple Computer, Inc. Computer system with direct manipulation interface and method of operating same
US5596702A (en) * 1993-04-16 1997-01-21 International Business Machines Corporation Method and system for dynamically sharing user interface displays among a plurality of application program
US6031534A (en) * 1993-04-28 2000-02-29 Microsoft Corporation Operating system function for specifying a checked image representation and an unchecked image representation of a menu item
US5977966A (en) * 1993-04-28 1999-11-02 Microsoft Corporation System-provided window elements having adjustable dimensions
US5710926A (en) * 1993-09-03 1998-01-20 Maurer; Joseph Clark Developers tool for object-oriented programming
BE1007551A3 (nl) * 1993-09-24 1995-08-01 Philips Electronics Nv Werkwijze voor het in een rekenmachine automatisch herstellen van consistentie in een hierarchische objektstruktuur na een interaktie door een gebruiker en rekenmachine voorzien van zo een systeem voor automatische consistentieherstelling.
CA2136367A1 (en) * 1993-12-20 1995-06-21 John Scott Anderson Dynamically specifying invocations in compiled objects
US5721848A (en) * 1994-02-04 1998-02-24 Oracle Corporation Method and apparatus for building efficient and flexible geometry management widget classes
US5600776A (en) * 1994-07-07 1997-02-04 International Business Machines Corporation Method and apparatus for automatically organizing user interface objects for multiple users on a single workstation
JP3487644B2 (ja) * 1994-07-19 2004-01-19 シャープ株式会社 グラフィカル・ユーザ・インターフェース作成装置
US5642511A (en) * 1994-12-16 1997-06-24 International Business Machines Corporation System and method for providing a visual application builder framework
US5870552A (en) * 1995-03-28 1999-02-09 America Online, Inc. Method and apparatus for publishing hypermedia documents over wide area networks
US5724506A (en) * 1995-05-05 1998-03-03 Apple Computer, Inc. Replaceable and extensible connection dialog component of a network component system
US6543046B1 (en) * 1995-07-20 2003-04-01 Accenture Llp Apparatus and method for navigating objects within a computer-implemented object environment
US5956024A (en) * 1995-08-08 1999-09-21 Continental Cablevision, Inc. Graphical user interface for customer service representatives for subscriber management systems
US5737555A (en) * 1995-11-13 1998-04-07 International Business Machines Corporation Method for rapid repositioning of a display pointer in a preferred order
US5764226A (en) * 1995-12-29 1998-06-09 International Business Machine Corp. Reusable and modifiable data entry interface part
US5801689A (en) * 1996-01-22 1998-09-01 Extended Systems, Inc. Hypertext based remote graphic user interface control system
US5982371A (en) 1996-01-29 1999-11-09 Sun Microsystems, Inc. Method and apparatus for executing and displaying output of an environment in a host environment
US6542166B1 (en) * 1996-05-09 2003-04-01 National Instruments Corporation System and method for editing a control
US6515682B1 (en) * 1996-05-09 2003-02-04 National Instruments Corporation System and method for editing a control utilizing a preview window to view changes made to the control
US5870088A (en) * 1996-05-09 1999-02-09 National Instruments Corporation System and method for editing a control via direct graphical user interaction
JPH1091412A (ja) * 1996-07-25 1998-04-10 Toshiba Corp 表示部品選択装置及び表示部品選択方法
US6073241A (en) * 1996-08-29 2000-06-06 C/Net, Inc. Apparatus and method for tracking world wide web browser requests across distinct domains using persistent client-side state
DE69721424T2 (de) * 1996-09-30 2004-05-06 Kabushiki Kaisha Toshiba, Kawasaki Vorrichtung und Verfahren zum Edieren einer graphischen Benutzerschnittstelle
US6120550A (en) 1996-10-28 2000-09-19 Altera Corporation Design file templates for implementation of logic designs
US5920312A (en) * 1996-10-31 1999-07-06 Ncr Corporation System and method for building testing and integrating a graphical dynakey user interface
US6002395A (en) * 1996-10-31 1999-12-14 Ncr Corporation System and method for building, testing and integrating a graphical touch user interface
US6366581B1 (en) 1997-04-02 2002-04-02 Fujitsu Network Communications, Inc. Method and apparatus for generating permanent virtual connections using graphical user interface
US6323864B1 (en) 1997-06-30 2001-11-27 Sun Microsystems, Inc. Using and accessing information from fonts in multiple formats
US6320592B1 (en) 1997-06-30 2001-11-20 Sun Microsystems, Inc. Method and apparatus for separating image data from a color system in image processing
US6271864B1 (en) 1997-06-30 2001-08-07 Sun Microsystems, Inc. Representing a path as an object with transformation capability
US6034694A (en) 1997-06-30 2000-03-07 Sun Microsystems, Inc. Method and apparatus for pixel composition
JP2001502096A (ja) * 1997-07-15 2001-02-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 電子民生機器のグラフィカルユーザインターフェースを設計するための方法とシステム
US6018339A (en) * 1997-08-15 2000-01-25 Stevens; Susan Automatic visual correction for computer screen
US6080204A (en) * 1997-10-27 2000-06-27 Altera Corporation Method and apparatus for contemporaneously compiling an electronic circuit design by contemporaneously bipartitioning the electronic circuit design using parallel processing
DE19818819A1 (de) * 1997-11-20 1999-05-27 Mitsubishi Electric Corp Schirm-Erstellungseditor mit Schirmübergangs-Editierfunktion
EP0919896A1 (de) * 1997-12-01 1999-06-02 Siemens Aktiengesellschaft Verfahren zur bildschirmgestützten Definition und Parametrierung von Schnittstellen
US6075531A (en) * 1997-12-15 2000-06-13 International Business Machines Corporation Computer system and method of manipulating multiple graphical user interface components on a computer display with a proximity pointer
US6091395A (en) * 1997-12-15 2000-07-18 International Business Machines Corporation Computer system and method of manipulating a graphical user interface component on a computer display through collision with a pointer
US8752010B1 (en) * 1997-12-31 2014-06-10 Honeywell International Inc. Dynamic interface synthesizer
JP3507681B2 (ja) * 1998-01-08 2004-03-15 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理方法及び情報処理装置、情報処理システム、情報処理装置を制御するプログラムを格納した記憶媒体
US6304259B1 (en) * 1998-02-09 2001-10-16 International Business Machines Corporation Computer system, method and user interface components for abstracting and accessing a body of knowledge
US6308187B1 (en) 1998-02-09 2001-10-23 International Business Machines Corporation Computer system and method for abstracting and accessing a chronologically-arranged collection of information
US6874123B1 (en) 1998-02-09 2005-03-29 International Business Machines Corporation Three-dimensional model to facilitate user comprehension and management of information
US6275227B1 (en) 1998-02-09 2001-08-14 International Business Machines Corporation Computer system and method for controlling the same utilizing a user interface control integrated with multiple sets of instructional material therefor
US6412021B1 (en) 1998-02-26 2002-06-25 Sun Microsystems, Inc. Method and apparatus for performing user notification
US6184885B1 (en) 1998-03-16 2001-02-06 International Business Machines Corporation Computer system and method for controlling the same utilizing logically-typed concept highlighting
US6307552B1 (en) 1998-03-16 2001-10-23 International Business Machines Corporation Computer system and method for controlling the same utilizing an abstraction stack with a sequence of predetermined display formats
US6859213B1 (en) 1998-03-23 2005-02-22 Sun Microsystems, Inc. Method and apparatus for selecting attachments
US6594708B1 (en) 1998-03-26 2003-07-15 Sun Microsystems, Inc. Apparatus and method for object-oriented memory system
US6055526A (en) * 1998-04-02 2000-04-25 Sun Microsystems, Inc. Data indexing technique
US6675054B1 (en) 1998-04-20 2004-01-06 Sun Microsystems, Inc. Method and apparatus of supporting an audio protocol in a network environment
US6438141B1 (en) 1998-04-20 2002-08-20 Sun Microsystems, Inc. Method and management of communications over media of finite bandwidth
US6223289B1 (en) 1998-04-20 2001-04-24 Sun Microsystems, Inc. Method and apparatus for session management and user authentication
US6230296B1 (en) 1998-04-20 2001-05-08 Sun Microsystems, Inc. Method and apparatus for providing error correction
US6367056B1 (en) 1998-04-23 2002-04-02 Altera Corporation Method for incremental timing analysis
US6434694B1 (en) 1998-06-29 2002-08-13 Sun Microsystems, Inc. Security for platform-independent device drivers
US6618767B1 (en) 1998-11-17 2003-09-09 Sun Microsystems, Inc. Mechanism by which devices on unforeseen platform variants may be supported without re-release of core platform kernel software
US6311320B1 (en) 1998-12-07 2001-10-30 Lsi Logic Corporation Alterable scripting tool and method
US6463552B1 (en) 1998-12-07 2002-10-08 Lsi Logic Corporation Scripting method and apparatus for testing devices
US6442633B1 (en) 1999-03-23 2002-08-27 Sun Microsystems, Inc. Reduced transistors data switch port wherein each of a plurality of transmission gates is coupled to both first and second control signals for selectively enabling
US6381712B1 (en) 1999-06-30 2002-04-30 Sun Microsystems, Inc. Method and apparatus for providing an error messaging system
WO2001020448A2 (en) * 1999-09-17 2001-03-22 Cddb, Inc. System for creating dynamic graphical user interfaces
US6581066B1 (en) * 1999-11-29 2003-06-17 Xerox Corporation Technique enabling end users to create secure command-language-based services dynamically
US7017143B1 (en) * 1999-12-01 2006-03-21 Microsoft Corporation External resource files for application development and management
JP2001306308A (ja) * 2000-04-11 2001-11-02 Sap Ag データ中心アプリケーションのクラス定義方法
US6910208B1 (en) * 2000-04-25 2005-06-21 Microsoft Corporation System and method of providing replaceable and extensible user interface for the installation of a suite of applications
US6760019B1 (en) * 2000-06-01 2004-07-06 Sun Microsystems, Inc. Methods and apparatus for facilitating the sharing of computer graphics operations
US8006192B1 (en) * 2000-10-04 2011-08-23 Apple Inc. Layered graphical user interface
DE10065323C2 (de) * 2000-12-31 2003-10-30 Siemens Ag Verfahren zur Steuerung der Anordnung von graphischen Elementen
US7904358B2 (en) * 2001-02-28 2011-03-08 Goldman Sachs & Co. Computerized interface for monitoring financial information and executing financial transactions
US7216289B2 (en) * 2001-03-16 2007-05-08 Microsoft Corporation Method and apparatus for synchronizing multiple versions of digital data
WO2003032111A2 (en) * 2001-10-09 2003-04-17 Grey Zone, Inc. Data driven access to tools
US20030202014A1 (en) * 2002-04-25 2003-10-30 International Business Machines Corporation Graphical user interface development tool
US20030227482A1 (en) * 2002-06-05 2003-12-11 Thomas Bach User interface builder
US20030229646A1 (en) * 2002-06-05 2003-12-11 Thomas Bach Retrieving data for generating view components
US20040017397A1 (en) * 2002-06-05 2004-01-29 Thomas Bach Controllers and subcontrollers generating user interface displays
US20040143812A1 (en) * 2003-01-14 2004-07-22 Vladimir Bernstein Automatic software design tool for building web and other applications wherein components are linked through connected command and control and data variables
WO2004066263A2 (en) * 2003-01-15 2004-08-05 Owned Llc Electronic musical performance instrument with creative flexibility
US7765523B2 (en) * 2003-07-10 2010-07-27 Computer Associates Think, Inc. System and method for generating a web-enabled graphical user interface plug-in
US7761842B2 (en) 2003-07-11 2010-07-20 Computer Associates Think, Inc. System and method for generating a graphical user interface (GUI) element
US20050010877A1 (en) * 2003-07-11 2005-01-13 Arthur Udler System and method for dynamic generation of a graphical user interface
CN1627765B (zh) * 2003-12-10 2010-09-01 松下电器产业株式会社 便携式信息终端装置
US8028239B1 (en) * 2003-12-19 2011-09-27 Microsoft Corporation Context-based management user interface supporting extensible subtractive filtering
US20050177540A1 (en) * 2004-01-30 2005-08-11 Mihael Ankerst Large-scale visualization of temporal data
US8037102B2 (en) 2004-02-09 2011-10-11 Robert T. and Virginia T. Jenkins Manipulating sets of hierarchical data
US7577938B2 (en) * 2004-02-20 2009-08-18 Microsoft Corporation Data association
US20050188350A1 (en) * 2004-02-20 2005-08-25 Microsoft Corporation Data binding
US7849412B2 (en) * 2004-05-21 2010-12-07 Computer Associates Think, Inc. System and method for generating a web control in a Windows development environment
US9646107B2 (en) 2004-05-28 2017-05-09 Robert T. and Virginia T. Jenkins as Trustee of the Jenkins Family Trust Method and/or system for simplifying tree expressions such as for query reduction
US7620632B2 (en) 2004-06-30 2009-11-17 Skyler Technology, Inc. Method and/or system for performing tree matching
US7627591B2 (en) 2004-10-29 2009-12-01 Skyler Technology, Inc. Method and/or system for manipulating tree expressions
US7801923B2 (en) 2004-10-29 2010-09-21 Robert T. and Virginia T. Jenkins as Trustees of the Jenkins Family Trust Method and/or system for tagging trees
US7636727B2 (en) 2004-12-06 2009-12-22 Skyler Technology, Inc. Enumeration of trees from finite number of nodes
US7630995B2 (en) 2004-11-30 2009-12-08 Skyler Technology, Inc. Method and/or system for transmitting and/or receiving data
US8316059B1 (en) 2004-12-30 2012-11-20 Robert T. and Virginia T. Jenkins Enumeration of rooted partial subtrees
US8615530B1 (en) 2005-01-31 2013-12-24 Robert T. and Virginia T. Jenkins as Trustees for the Jenkins Family Trust Method and/or system for tree transformation
US7681177B2 (en) 2005-02-28 2010-03-16 Skyler Technology, Inc. Method and/or system for transforming between trees and strings
US8356040B2 (en) 2005-03-31 2013-01-15 Robert T. and Virginia T. Jenkins Method and/or system for transforming between trees and arrays
US7899821B1 (en) 2005-04-29 2011-03-01 Karl Schiffmann Manipulation and/or analysis of hierarchical data
US7779362B1 (en) * 2005-09-02 2010-08-17 Adobe Systems Inc. Methods and apparatus for selecting objects by state
US20080178087A1 (en) * 2007-01-19 2008-07-24 Microsoft Corporation In-Scene Editing of Image Sequences
KR101004463B1 (ko) * 2008-12-09 2010-12-31 성균관대학교산학협력단 터치 스크린의 드래그를 이용한 메뉴 선택을 지원하는 휴대용 단말 및 그 제어 방법
US20100180224A1 (en) * 2009-01-15 2010-07-15 Open Labs Universal music production system with added user functionality
JP5344575B2 (ja) * 2009-02-17 2013-11-20 キヤノン株式会社 画像形成装置
CN101907981B (zh) * 2009-06-05 2012-10-10 联想(北京)有限公司 一种数据处理设备及其显示方法
US8667460B2 (en) * 2009-07-24 2014-03-04 Ensequence, Inc. Method for application authoring employing a child application template derived from a master application template
US8307020B2 (en) * 2009-07-24 2012-11-06 Ensequence, Inc. Method for distributing a certified application employing a pre-certified master application template
US20110022603A1 (en) * 2009-07-24 2011-01-27 Ensequence, Inc. Method and system for authoring and distributing multiple application versions based on audience qualifiers
US8682945B2 (en) * 2009-07-24 2014-03-25 Ensequence, Inc. Method and system for authoring multiple application versions based on audience qualifiers
US8671124B2 (en) * 2009-07-24 2014-03-11 Ensequence, Inc. Method for application authoring employing a pre-certified master application template
US8229984B2 (en) * 2009-07-24 2012-07-24 Ensequence, Inc. Method for application authoring employing a pre-certified multi-platform master application template
US20110023022A1 (en) * 2009-07-24 2011-01-27 Ensequence, Inc. Method for application authoring employing an application template stored in a database
US20130185658A1 (en) * 2010-09-30 2013-07-18 Beijing Lenovo Software Ltd. Portable Electronic Device, Content Publishing Method, And Prompting Method
US9323418B2 (en) * 2011-04-29 2016-04-26 The United States Of America As Represented By Secretary Of The Navy Method for analyzing GUI design affordances
US9703533B2 (en) 2011-08-30 2017-07-11 Embarcadero Technologies, Inc. Application platform for designing and executing applications
CN102455914A (zh) * 2011-12-30 2012-05-16 四川长虹电器股份有限公司 一种基于浏览器扩展的跨平台gui快速原型开发方法
US10333696B2 (en) 2015-01-12 2019-06-25 X-Prime, Inc. Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03282934A (ja) * 1990-03-30 1991-12-13 Internatl Business Mach Corp <Ibm> グラフィカル・ユーザ・インターフェース管理装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4692858A (en) * 1984-02-02 1987-09-08 Trillian Computer Corporation Visual interface between user and computer system
US5261042A (en) * 1986-03-27 1993-11-09 Wang Laboratories, Inc. Menu management system
US4866638A (en) * 1988-03-04 1989-09-12 Eastman Kodak Company Process for producing human-computer interface prototypes
US5121477A (en) * 1988-04-08 1992-06-09 International Business Machines Inc. System for interactively creating action bar pull-down windows of a user interface for use at program run time
US5041992A (en) * 1988-10-24 1991-08-20 University Of Pittsburgh Interactive method of developing software interfaces
US5230063A (en) * 1989-03-15 1993-07-20 Sun Microsystems, Inc. Method and apparatus for selecting button function and retaining selected optics on a display
JPH0778782B2 (ja) * 1989-07-19 1995-08-23 インターナショナル・ビジネス・マシーンズ・コーポレーシヨン 対話型コンピュータ・システムならびにその使用環境適合化装置および方法
US5212770A (en) * 1989-12-06 1993-05-18 Eastman Kodak Company Data-handling and display system capable of supporting multiple application programs and output devices
US5287514A (en) * 1990-01-08 1994-02-15 Microsoft Corporation Method and system for customizing a user interface in a computer system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03282934A (ja) * 1990-03-30 1991-12-13 Internatl Business Mach Corp <Ibm> グラフィカル・ユーザ・インターフェース管理装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7530024B2 (en) 1993-07-30 2009-05-05 Canon Kabushiki Kaisha System using icons representative for controlling data input and output relationship between a network of multimedia devices
JPH07319681A (ja) * 1994-05-23 1995-12-08 Nec Corp 例示によるプログラミング方式
US5905486A (en) * 1997-03-03 1999-05-18 International Business Machines Corporation Mobile client computer programmed to combine cursor, control and input functions

Also Published As

Publication number Publication date
US5335320A (en) 1994-08-02
JPH0756628B2 (ja) 1995-06-14

Similar Documents

Publication Publication Date Title
JPH04157528A (ja) グラフィカル・ユーザインターフェースの編集装置
US5883623A (en) System and methods for building spreadsheet applications
US6097391A (en) Method and apparatus for graphically manipulating objects
US6804686B1 (en) System and methodology for providing fixed UML layout for an object oriented class browser
US5487141A (en) Development system with methods for visual inheritance and improved object reusability
US6795089B2 (en) Dynamic, live surface and model elements for visualization and modeling
US5862379A (en) Visual programming tool for developing software applications
US6836878B1 (en) Visual programming from a tree structure
US5414806A (en) Palette and parts view of a composite object in an object oriented computer system
US6014138A (en) Development system with methods for improved visual programming with hierarchical object explorer
US8170901B2 (en) Extensible framework for designing workflows
JP2505974B2 (ja) 複数の適用業務プログラムを統合化グラフィカル・ユ―ザ・インタフェ―ス処理環境へ統合化するための方法
US7089256B2 (en) Universal data editor
JP3427918B2 (ja) プログラム開発支援システム及び支援方法
US8386919B2 (en) System for displaying an annotated programming file
JP2006107478A (ja) ワークフローを設計するための拡張可能フレームワーク
US20060150148A1 (en) System and method for non-programmatically constructing software solutions
JPH09510567A (ja) ドキュメント・プロキシィ・フレームワーク
JPH08137646A (ja) ダイアログ・ボックスの表示方法及びシステム
JPH07109585B2 (ja) スコープ指令変更処理方法及び装置
US11886895B2 (en) Enhanced target selection for robotic process automation
US6111579A (en) Data processor controlled display system with a tree hierarchy of elements view having virtual nodes
US5832266A (en) Encapsulation of applications for inclusion within an object management facility environment
US20050091641A1 (en) System and method for modifying a host user interface
US10001977B1 (en) System and method for identifying operations based on selected data

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080614

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20090614

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20100614

Year of fee payment: 15

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

Free format text: PAYMENT UNTIL: 20100614

Year of fee payment: 15

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

Free format text: PAYMENT UNTIL: 20110614

Year of fee payment: 16

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110614

Year of fee payment: 16