JPH06510879A - ユーザインタフェースの記述用対話型ツールを作成するためにロードされたインタプリタ言語の利用 - Google Patents

ユーザインタフェースの記述用対話型ツールを作成するためにロードされたインタプリタ言語の利用

Info

Publication number
JPH06510879A
JPH06510879A JP6504218A JP50421894A JPH06510879A JP H06510879 A JPH06510879 A JP H06510879A JP 6504218 A JP6504218 A JP 6504218A JP 50421894 A JP50421894 A JP 50421894A JP H06510879 A JPH06510879 A JP H06510879A
Authority
JP
Japan
Prior art keywords
interactive
widget
interactive tool
tool
wool
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
JP6504218A
Other languages
English (en)
Other versions
JP3348853B2 (ja
Inventor
ナアブー・コラ
ブートール,ヴァンサン
Original Assignee
ブル・ソシエテ・アノニム
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 ブル・ソシエテ・アノニム filed Critical ブル・ソシエテ・アノニム
Publication of JPH06510879A publication Critical patent/JPH06510879A/ja
Application granted granted Critical
Publication of JP3348853B2 publication Critical patent/JP3348853B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)
  • Digital Computer Display Output (AREA)

Abstract

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

Description

【発明の詳細な説明】 ユーザインタフェースの記述用対話型ツールを作成するためにロードされたイン タプリタ言語の利用本発明はユーザインタフェースの記述(デスクリブンヨン) 用対話型ツールを作成するため番ニロードされたインタプリタ言語の利用に関す るものである。
対話型ソフトウェアはきわめて特殊な制約条件を有し、その最も重要なことは、 それがきわめてしばしば変更できることである。実際に、人間工学的理由のため に、ただ1回のみで使いやすいプログラムを開発することはむずかしい。最初の バージョンはたいてい失敗であり、何回も変更を必要とする。
さらに、同じ動作でも、それを文脈または異なるユーザに適合させるようにその 動作を実行する方法を変更することが望ましい。
要するに、よいプログラムであっても、それが悪いインタフェースを使用すると 商業的成功は低下することになる。
本発明の目的は、いかなるアプリケーションにも利用可能なとくにフレキシブル なインタフェースの開発ツールを提供することである。このインタフェースは、 ノニとえばそれぞれがM、1.T、および0pen Software Fou ndationにより提供されたX/WINDOW、およびX/MOTI Fマ ークを使用するIJNIXシステム分野のために開発された。
二の目的は、LISPタイプのインタプリタ言語およびインタプリタ(WooL )を使用するインタフェースの記述用対話型ツールが、アプリケ−7iIンのイ ンタフェースの記述用プログラムと共におよび作成されたアプリケーションと共 にロードされることにより達成される。
他の特徴によれば、言語は、データおよびプログラムに類似の表現を有している 。
他の特徴によれば、記述用プログラムは、コマンドの対話型オブジェクト“Wi dgets”のライブラリ”X/MOTI F”およびグラフィ/クオブジェク トのライブラリ゛’Go”と協働する。
他の特徴によれば、アプリケーノヨンプログラムは、一方でオブジェクトを操作 する高水準のポータプルアセンブラであるC言語にインストラクションを混合し たもので構成されまた他方で翻訳可能な言語にインストラクションを混合したも ので構成されている。
他の特徴によれば、インタプリタは、LISP言語で書かれたオブジェクト指向 である。
他の特徴によれば、インタプリタは表(テーブル)を使用する。
他の特徴によれば、インタプリタのカーネルは、一方の次元がリスト、ストリン グ(チェーン)、番号を含むタイプであり、他方の次元が「評価、プリント、フ リー、加算11.」のような機能を含むセレクタである二次元マトリックスとし て構成されている。
他の特徴によれば、インタプリタWOOLは、パン屑掃除器すなわち記憶領域が 常に使用されるように、使用されていないオブジェクトが占有している記憶領域 を再利用するために、使用されていないオブジェクトを探すべくメモリをときど きかつ周期的に走査することを可能にする空領域再生機構(ガーベジコレクタ、 GC)を含む。
他の特徴によれば、この空領域再生機ml(ガーベジコレクタ、GC)は。イン クレメンタルである。
他の特徴によれば、空領域再生機構は、メモリの細分化を制限するために基準カ ウンタ及びオブジェクトをサイスで再グループ化する機構を利用している。
他の特徴によれば、対話型ツールの機能は、インタプリタプログラムの形式で記 述されている。
他の特徴によれば、編集されたインク7エースのプレゼンテーションの保存(記 憶)は、プログラムWOOLの保存として実行される。
他の特徴によれば、これらのオブジェクトのアセンブリング用幾何形状の対話型 仕様は、ディスク上に保存可能なアプリケ−・/vtrンによって利用可能であ りかつ″WOOL”言語のプログラムの形式のユーザインタフェースのプレゼン テーションを含むファイルに翻訳される。
他の特徴によれば、対話型オブジェクト(“widget”)の動的挙動は、″ WOOL″言語で書かれた1組のコールバック(’callback”)プロ/ −ジャにより定義され、このプロシージャは入力イベントがwidget″01 つにより受け入れられたときにツールキット″X/MOTIF”によりコールさ れるアプリケーションの機能を指定する。
他の特徴によれば、インタフェースの記述用プログラムはwidget”のクラ スを追加することにより拡張可能であり、この追加は新しい“widget”を 編集可能にするためにこのクラスの新しいタイプの属性をWOOL言語で記述し ながら行われる。
他の特徴によれば、各”widgeL”は、widget”のクラスに対応する クラス゛’WOOL”のオブジェクト’WOOL”により指示され、ここでオブ /゛エク) ”WOOL”に直接補助属性が付属されている。
他の特徴によれば、各オブジェクトWOOLは、オブジェクトタイプおよび基準 カウント情報を含む自動タイプのC言語構造である。
他の特徴によれば、各対話型オブジェクト“Widget”に、インクレメンタ ルな形で割り当てられた固有の識別子“WOOL”が付属されている。
他の特徴によれは、インタフェース゛’EGERI A”の記述用対話型ツール は、編集”edit”の機能、作成”create”の機能及び幾何形状“ge ometry”の機能を含む基本メニューの表示を可能にするプログラムを含む 。
他の特徴l二よれは、作成機能はメニューからすべての“widget″を作成 することを可能にし、またメニューの1行を選択後にカーソルの形式を変更し、 および対話型オブ、゛ニクトコンテナ゛”widget container” 内でマウスをタリノクすると、対話型オブジェクトコンテナ(”contain erパ)内で選択されたタイプのオブジェクトをインストールする。
他の特徴によれは、編集機能は分離ウィンドウ内での″widget”の属性の 編集を可能にし、また選択された1組の“widget”を、選択された“Wi dget”の親゛″widget”の属性を編集したりまたは現在選択された“ widget”の親を選択される新しいwidget”とするように、選択さh t二1組の’widget”をカントし、コレクトし、コピーしまtこ1まデュ プ1ノケ−1・(複写)することを可能にする。
他の特徴によれば、幾何形状”geometry”機能は、頂部、底部、右側部 、左側部に配列されまたは同一の幅および高さを有することができる選択された 1組の“widgets”の幾何形状を管理することを可能にする。
他の特徴によれば、編集機能は対話型オブジェクト’widget”の属性の編 集用ウィンドウを表示することを可能にし、前記ウィンドウは2つの領域に分割 され、一方の領域はコールバック゛’callback’プロシージャによりア プリケ−/ヨンからコールされた機能を含み、他方の領域は1組のサブエディタ により実体化された属性を含む。
他の特徴によれば、最初のサブエディタはプール属性を入力するためのトゲフレ (切換)ボタンで構成されている。
他の特徴によれば、2番目のサブエディタは列挙されたタイプの値のリスト(例 えは、左、右または中央のテキストの配列)を表示するメニューを表示する押ボ タンで構成されている。
他の特徴によれば、3番目のサブエディタは、テキストまたは数値を取得するた めのテキスト領域で構成されている。
他の特徴によれば、MOTIFのタイプ″5hell widget”の対話型 オブジェクトの編集機能すなわち第1水準のウィンドウ(X/W i n d  o w)を表示する機能は、まず親を選択するメニュー’5elect par ent″を選択し、次に属性の編集機能”edit attribute”を選 択して開始される。
本発明のその他の特徴および利点は、図面を参照した以下の説明を読むことによ りより一層明らかになろう。
図1は、インタフェースの記述用ソフトウェアのアーキテクチャの概略図を示し 、 図2は、インタフェースの記述用のソフトウェアにより表示されるメインウィン ドウを示し、 図3は、オブジェクトの形式の編集を可能にする、このソフトウェアにより表示 されるウィンドウを示し、 図4Aおよび4Bは、対話型オブジェクトの属性およびフールレノくツクプロシ ージャの各々の編集を可能にする、ソフトウェアにより表示されるウィンドウを 示し、 図5は、インタフェースの記述用ソフトウェアによる特定アプリケーションのた めに定義されるウィンドウを示す。
インタフェース(1)の記述用対話型ツール“EGERIA”は図1に示すよう に、 − インタフェースを作成または修正することを可能にするエディタ(10)と 。
− それとアプリケ−7Mンのコードとのリンケージエディティング(リンク編 集)が完全なアプリケーションを与えるところの、インタプリタライブラリ“W OOL、LIB” (11)と −それとアプリケ−/ヨンのコードとのリンケージエディティングがアプリケ− /gンの機能の真の実行を可能にするエディタを与えるところのエディタライブ ラリ“Edit、LIB″ (12)とで構成されている。これらの2つのライ ブラリ″WOOL、LI B”およびEDIT、LIB”は共感こライブラリ“ l ibEg、a”内に形成されている。
インタフェースの記述用対話型ツール(10)は機能するために、環境UNIX 内のコマンドオブジェクトのツールキットと呼ばれるコマンドの対話型オブジェ クトのライブラリ゛X/MOTIF″ (20)とおよびグラフィックオブジェ クトのライブラリ゛”Go” (21)により構成されるグラフィックオブジェ クトのツールキットとが付属されなければならない。C++言語において有効な これらのライブラリは今日まで環境UNIX内で使用可能ではないグラフィック サービスを提供し、このブラフイソフサ−ヒスは矩形、楕円形、多角形線、多数 の7オントで編集可能なテキストおよびイメージを作成しかつ命令することを可 能にする。
記述ツールは同様にライブラリX1ib(3)と協働し、ライブラリX1ib( 3)はアプリケーションとウィンドウサービスとの間を循環する情報フローのコ ーディング(コード化)を仕様(特定)するプロトコル層とおよびウィンドウ/ ステムにアクセスすることを可能にするプログラミング用インタフェースを構成 するライブラリ層とを構成している。
EGERI A (10)は、インタフェースを構成する1組のオブジェクトす なわちそれらの階層および属性とを静的に記述する表示層と、インタフェースの 動的状態すなわちその挙動を記述するダイアログ層とをカバーする。
Mlに補助FIG (5)がアプリケーションにより構成されており、アプリケ ーションは、アプリケーション内でインタフェースに関係しないものを含む意味 層を含んでいる。
インタプリタ“WOOL、LIB” (11)はC言語で書がれな小さいインタ プリタLi5pであり、このインタプリタ内で基準カウンタによりメモリが明白 に管理され、またこのインタプリタはタイプの有効化を可能にする内部タイプ化 オブジェクト指向アプローチに一致するメツセージを送ることによるプロシージ ャの始動を含む。インタプリタは、アトム、リスト、全体番号、真の番号、文字 列のような1組の基本データタイプを提供する。
インタプリタ“WOOL、LIB″ (11)はリストを記憶するために表を使 用し、この表はリストの走査を速く行うことを可能にする。
この1組の基本タイプは拡張可能であり、すなわち°’WOOL”内のオブジェ クト“MOTIF“の制御操作を可能にする“widget”のような新しい基 本タイプを導入することができる。
”’WOOL”言語の各オブジェクトは、図IBに示すように、オブジェクトの タイプ(31)および基準カウンタ(Ref Cnt)であるクラスに関するポ インタ、およびオブジェクトのタイプに依存するその他の情報(属性)を含む見 出しで形成されている。各オブジェクト″widget”には、インクレメンタ ル形式で与えられる識別子が付属されている。
EGERIAにより作成される各widgetには、タイプの固有の識別子“@ 000012@”が与えられている。
これらの参照の統一は、EGERIAの全存続期間にわたり保証されている。
widgetに付属のWOOL”言語のコールバックのテキスト内でこのような 参照が使用された場合、回復(再記憶またはコレクト)がそのあとに続く保護( またはカット)は参照の相互一致を維持している。もし相互参照が“WOOL” 言語のアトムを用いて実体化された場合にはそうではなく、この場合にはアトム は値を持つt3けであり、2つのコールバックは同じwidgetを参照するこ とになる。
ダイアログ(会話)コード内でwidgetの固有の識別子を使用することばウ ィンドウの構築を可能にし、該ウィンドウの挙動を容易に重複することカ(可能 である。たとえば対話型で編集されかつボタンおよびテキストを含むウィンドウ を考えてみる。ボタンに付属されたコール/(・ツクは次のものである。
(onXmNactivateCallback (widgat) (wid get−unmap @00002@))実行モードにおいてボタンが押された とき、テキストが消える(コマンド゛Unma p”はそのアーギュメントによ り与えられるwidgetを見えなくするl二めのものである)。
カット/コレクトのオペレーションによりウィンドウを重複する場合、挙動も同 様に重複され、もし重複されたテキストに対して発生されtこ固有の識El+子 力(@000005@である場合には、EGERIAは重複されtこボタンに付 属のコールバックのコードを次のように変更する;(on XmNactiva teCallback (widgeセ)(widget−unmap @0o O05@))このようなプロシージャは重複のときにコールレノ(・ツクのコー ドを手動で変更するのを回避させることを可能にする。
オブジェクトのタイプはインタブ1ツタ″WOOL“のカーネル(WOOL K ERNEL)内で方法のリストを含むクラス(110) l二到達することを可 能基こし、各方法(Method)はtことえば、機能“Pr1nt“のような 機能である。このようにしてオブジェクトの機能″Pr1nt”lま処理される オブジェクトのタイプに適合させられる。クラスは、図IBのマド1)・クラス 表のダjを構成しまた方法は線表の行を構成する。インタプリタ“WOOL、L IB”内番ニロードされた方法のリストは、エディタと共に供給される(ANE XE (付録)6内の図)。
インタプリタ“WOOL、LIB” (11)内で(よアトム(まtこjご1つ の値を持つことができるのに対し、従来のLi5p言語内で(ま変数および関数 龜こ混乱なしに同じ名前を与えることができる。
このインタプリタは容易に拡張可能な1組のプリミティブ”L i s p”を 提案する。
要するに、インタプリタ“WOOL、LIB”はオブジェクト指向の形式で書か れ、またオブジェクトはインタプリタに対し内部形式のタイプである。
このインタプリタの他の特徴は、それが再入可能であることであり、これはそれ により開始された機能がデータWOOLの同じ7アイルにアクセスしたインタブ リチージョンを新たに再開始することを意味する。
基準カウンタの従来の方法により構成されるパン屑掃除器は、自動的に参照する 構造を作成するときさらに注意を必要とする。インタプリタ“WOOL、LIB ”はパン屑掃除器すなわち記憶領域が常に使用されるように、使用されていない オブジェクトが占有している記憶領域を再利用するために、使用されていないオ ブジェクトを探すべくメモリをときどきかつ周期的に走査することを可能にする 空領域再生機構(ガーベジコレクタ)を含む。この空領域再生機構(ガーベジコ レクタ、GC)はインクレメンタルである。
空領域再生機構は、メモリの細分化を制限するために、いかなるサイズのオブジ ェクトでもその割付けを可能基こする基準カウンタおよびオブジェクトをサイズ で再グループ化する機構を利用している。
インタプリタ゛’WOOL、LIB”は、空領域再生機構(ガーベジコレクタ、 またはGC)を作動し、これにより利用されていないメモリの自動回収を可能に し、これはプログラマが利用されるオブジェクトの割付けおよび割付は解除のこ とに注意を払わなくてもよいようにする。プログラムは従来のように利用される メモリを明確に管理してきた、理解しにくくかつ検証しにくいコードを含む必要 がないので、このような/ステムはきわめて迅速なプログラミング作成を可能基 こする。
“WOOL、L IB”のGCは、メモリの容量を回復する(再利用可能にする )ために時々しか呼び出されない従来のGCと比較して、連続的に作動しかつデ ータの少ない容量で作動するという点でインクレメンタルであり、従来の場合に は、GCがアクティブである期間は進行中のプログラケムの翻訳が明らかに停止 しており、このことは対話型プログラムの利用にとってきわめて不都合である。
インフレメンタルなGCは、翻訳が円滑に機能することを保証し、Gcの割合が 増加しても、これは翻訳されるプログラムの実行全体に均等に配分される。
“WOOL、LIB’のGCのインクレメンタルな性質は次のようにして得られ る。
−カウンタが0を通過したときのみオブジェクトが解放されるように割り付けさ れたすべてのオブジェクトに対して基準カウンタを維持しながら、−割付けされ たオブジェクトの大部分は実際にそれらが作成されたのちにきわめて迅速に割付 けが解除されることを考慮しながら、規則的な方法では(表現のシーケンス内で 連続なすべてのインストラクションの実行後)、このようなオブジェクトを探そ うとして特殊な領域が走査される。
EGERIAがw i d g e t ”X/MOT I F”に与える名前 は、インタフェースのパラメータ決定を可能にする、X/WindowおよびX /Mo t i fにより与えられる規則と両立可能である(ファイル X/デ フオールド“default″、プログラムの納入のオプション)。
EGERIA内に含まれるコードはリンケージエディティング(リンク編集)に 必要な参照を含む。
EGERIAをツールキット“X/Mo L i f” (2o)と共に利用す るとき、EGERI A (10)のコード内に必ず次のものを置く。
−基本タイプの記述(”widget”、“callback”のブロン−ジャ など、たとえはXmTopLevelShell ANNEXE(付録)4の4 0参照)、 −インタフェースのオブジェクトのクラス(押ボタン、スクロールバー、メニュ ーバーなど)およびプリミティブ(toolkit−init、widget” 、createなど、たとえば、on XmN1nputCallback d u ”widget” XmDrawingArea ANNEXE(付録)4 の432参照)。
−基本タイプからの変形タイプ(列挙、ディメンジョンなど、たとえば、XmN width de XmTopLevelShell)、−各クラスに固有の属 性。
プリミティブにより書かれる高水準(高しベノリの機能が外部ファイル(14) 内に置かれる。これはインタフェースのオブジェクトの新しいクラスを加えるこ とを可能にする。
EGERIA (10)の構造は、プログラムの種々のコンポーネントにおいて 受け取られたイベント(マウスのクリック、キーボード操作)を分配する入力読 取りの主ループを特徴づけている。このようなループの例(ANNEXE5の5 11)が、ANNEXE4および5内のプロセスにより与えられるアブリヶーン ヨンの傍白に示されている。
インタプリタ“WOOL、LIB”はアプリケーション(5)によりチェックさ れ、アプリケ−ンヨンの主ループヲ含マない。
このループは、モチーフ読取りの機能を呼び出し、次に受け取られた入力を分配 することを役割としている。これは、イベントを処理することを役割とする実体 の各イベントx/w i n d o w8よび各イベント″Motif”に対 して決定することができるプログラミングの水準が存在することを意味する。こ れは、イベントに付属の“Widget”’のために定義されたコールバック“ calIback”のプロン−ジャを呼び出すMotif”であっても、または EGERIAのような他のコンポーネントであってもよい。
EGERIAにより定義される場合、たとえばLi5pで書かれた”cal!− back dog:draw” (ANNEXE4の435参照)またはcaI f−back dog:5tep” (ANNEXE4の4412参照)のよう な””callback”はインタプリタ“WOOL、LIB“の主エントリ点 (ANNEXE5の530または531)を利用して形成され、インタプリタ″ w。
OL、LIBp″はC言語で書かれた付属の方法(ANNEXE5の523また は525)を実行し、しかもかつできるだけ早く実行する。
最後に、Li s piir語およびC言語で機能するハイブリッドシステムを 利用することは、C言語からLi5p言語へのまたLi5p言語がらC言語への 機能パラメータのシステマティソクな変換の問題を提起する。この問題の解決は 、システムLi5pによりCの自然構造をできるだけ利用させることであるが、 w。
OL”言語のヘッダを用いて、それらにタイトルをつけて利用させることである (t;とえばANNEXE5の522)。
図IBは、各列がオブジェクトのタイプに対応する表(テーブル)に従って構成 されたカーネル(WOOL KERNEL)の構造を示す。オブジェクトはその タイプにより参照され、タイプはこのようにしてオブジェクトを処理可能なメツ セージの処理方法にアクセスすることを可能にする。
実行モードにおいて、インタプリタ″WOOL、LI B” (11)は基本的 に、たとえばANNEXE4により構成されたインタフェースが修正されたとき に、コノインタフェースの記述ファイル(13)を変更することを役割としてい る。
“WOOL、L I B”はアプリケ−7EIンのインタフェースを再構築する ためにインタフェースの記述ファイル(14)をWOOL言語のプログラムとし て実行し、次にアプリケ−7ヨンを刺激することなくインタフェース内で単純に 動的な方法で反応するために、また場合によりアブリヶーンヨンのエントリ点か らアプリケ−/ヨンにイベントを送るために、ツールキフトMOTI Fから発 生したすべてのイベントを翻訳する。
エディタEGERIA (10)は、主として2つの機能モード、編集および実 行を有している。
モーF ”ed i t ion” (41i集)はその中でアプリケーション のインタフェースを自由に修正でさるモードでありまた“execut ion ” (実行)はインタフェースの挙動をテストすることを可能にする。
最後に、使用されるエディタがエディタライブラリ゛’EDIT LIB” ( 12)、!ニア7’lJケー/ヨン(5)とのリンク編集から生まれた場合に、 アプリケーションの機能は有効に呼び出される。
オブジェクトを編集するために、属性を作成し、カットし、コピーし、コレクト し、編集し、形式編集(FORM EDITOR)である重要な新規性をしばし は用いて、属性編集(Attribute Editor)およびオブジェクト の階層を分解するという従来の機能を利用している。オブジェクト(“widg et”)は、基本オブジェクトと複数のオブジェクトを入れることができるコン テナ(”container widget”)との2つのカテゴリーに分類す ることができる。コンテナのうち、親またはシェル対話型オブジェクトとしての あるもの(5hell widgets″)は、コンテナを持たず最初の水準で 作成される(たとえばANNEXE4の”Top 1evel 5hell“) 。
widget MOTIF FORMは、widget ”contenant ” (コンテナ)であり、その子供はwidget FORMが組み立て直され るときに自動的に位置決めされ、または組み立て直される。このようなwidg etの子供の挙動の対話型仕様は、特殊な形式すなわち形式編集“FORM E DITOR”のエディタを用いて実現され、形式編集゛FORM EDITOR ”のエディタは、MOTIFにより供給される1組の挙動を容易に定義すること を可能にする。
widget FORMの子供の挙動(たとえばXmPu5hBut ton  (321、図3))は、それぞれ頂部(322) 、右縁部(323) 、左縁 部(324)、底部(325)により指定されたWidgetの4つの境界のた めのアタッチメント(接続機構)値を与えることにより仕様(特定)される。ア タッチメントはN0NE (アタッチメントではなu’ (323)) 、FO RM (FORMi:対応する境界に対するアタッチメント(322,324) )、PO3ITION(widgetのFORMの水平または垂直寸法に比例し たアタッチメント(3262))またはW[DGET (同じFORMの子供の widgetに対するアタッチメント(325))であってもよい。
各アタッチメントを用いることにより、編集領域(3262)内で特定された位 置に対する偏位の補助的距離(3261)(オフセット距離)を特定することが できる。
°“FORM EDITOR”の編集形式を示す図3によれば、ある子供のwi dgetのアタッチメントのタイプを特定するために4つのメニューが表示可能 である。各アタッチメントに対して、対話型矢印(328)は、どのアタッチメ ントが「実行中」であるかを示している。どのアタッチメントを選択しているか が、位置決めされたアタッチメントの「実行中」により表わされる。
このエディタを用いてFORMの子供を編集するために% widgetを選択 しかつメニューの編集”Ed i t” (202)を用いて作動可能な形式編 集″FORM EDITOR” (2022)の編集コマンドを利用することが 好ましい。
このとき、FORMのエディタのウィンドウのテキスト領域(321)内にwi dgetのクラス、名前および識別子が現れ、このときウィンドウは“FORM “widgetの子供としての挙動に関するwidgetの特性を表示する。
2つのテキスト領域は実行中のアタッチメントに対応するwidgetの0ff set (t7セツ))(3261)j;J:びPO3ITION (位置)( 3262)(このとさアタッチメントはPO8ITIONである)を記述してい る。実行中のアタッチメントが変化したとき、これらのテキスト領域は更新され る。アタッチメントがPO3ITIONでないとき、”position”とマ ーキングされたテキスト領域は活動せずまたそのタイトルは図3に示すように灰 色となる。
マウスを用いて対話的にwidgeLの子供を移動したりまたは組み直したりす ることができ、この場合コマンドがあたがもFORM EDITORがら入力さ れたかのごとくコマンドは実行され、またオフセ・/トおよび/または位置に対 応するテキスト領域は更新される。
このようにエディタは、修正されたオブジェクト(コンテナ“widget″) の作成を可能にし、このオブジェクトは複数のオブジェクトで構成できるがンン ブルオブジェクトとみなされ、すなわちこれらのオブジェクトを単一作業でコレ クトし、力/トし、またコピーすることができる。
すべてのオブジェクトはメインメニュー(200)の作成機能(203、図2) “create“を用いて実現され、作成機能“create”はマウスのクリ ックによりオブジェクトを選択したのちオブジェクトをオブジェクトコンテナ内 にインストールすることを可能にする。このメインメニュー(200)はさらに 従来のファイル機能(201) ”f i l e”およびヘルプ(補助)機能 (206)He l p” オヨび特殊機能”EDIT”、“CREATE“、 “GEOMETRY”、”TOOLS”を含む。
インタフェースの外観の編集は、コンテナ内でのWidget″のサイズまたは 位置を修正したり、1つ以上のオブジェクトの種々の属性を含む7オーマツトを 用いたりして、マウスにより直接行われる。このために編集機能(202)’E dit”を利用し、編集機能(202) “Ed i tHは別のウィンドウ内 でオブジェクトの属性を編集することを可能にし、また選択されたオブジェクト の親オブジェクトの属性を編集し、かつ選択された1組のオブジェクトをカット し、コレクトし、組み立て、コピーすることを可能にする。最後に、インタフェ ースのエディタは幾何形状機能(204) “geometry”を用いてプレ ゼンテーンヨンの幾何形状を修正することを可能にし、幾何形状機能(204)  “geome t r y”はたとえば頂部、側部、または底部により選択さ れtこ1組のオブジェクトを配列したりまj;は1組のこれらのオブジェクトの 寸法すなわち輻および高さを変えたりすることを可能にする。
作成メニュー(203) “Create”は、図2に示すように、ライグラ1 ノX/MOTI F内で処理可能な種々のオブジェクトの中力1らの選択もでき る。こレラノオブジェクトは、ボタン群(Family Button)(20 30)、コンテナ(cant、)オブジェクト(2032)、修正(E 1 a  b o、r)オブジェクト(2033)、ンンブル(S imp I e)オ ブジェクト(2031)、ハセージ(Message)タイプのオブジェクト( 2034)、ダイアログ(D i a l o g)タイプのオブジェクト(2 035)、メニュー(Menu)タイプのオブジェクト(2036)およびコン テナタイプのオブジェクト(2037)(“She lビ)により構成され、こ れらはそれ力玉選択されtことき2番目のメニューマツプを表示させ、このメニ ューマツプ(よ属性の中力)ら最高水準(2371)、コンテナ(2372)( Shell)、優先コンテナ(2373) (。
verride 5hell)、トランジェントコンテナ(2374)(tra nsient 5he11)、一般コンテナ(2375)(Top I eve  l5he l l)、アプリケーノヨンコンテナ(2376)(Applic ation She l l)を選択することを可能にする。
属性部分は1組のサブエディタを用いて実現される。これらのサブエディタtま ライブラリ(11)”X/MOTI F”のクラスの記述を読み取ることにより 自動的に作成される。プール属性を入力するjこめのサフ゛エディタトグルボタ ン、列挙されたタイプのためのメニューを表示するサブエディタ押ボタンおよび ANNEXE4の参照436で示すような文字または数字のIこめのテキストの サブエディタテキスト領域が存在する。
機能″Edit“ (202)のメニュー枠内での選択(ま、機能2021”A ttribute Editor” (属性エディタ声こより“widget” の属性を編集することを可能にする。この方法は図41こ示すようなタイプのウ ィンドウを表示させる。
図4Aはタブとして動作するボタン(3110−3114および3121−31 24)によりアクセス可能な上下に重ねられた複数のマツプ(311,312) で構成されたメニューを含む。各マツプは“widget″のカテゴリーに対応 する属性をグループにしている。これらのカテゴリーは、ボタン3110により 起動される表示(Appearance)、ボタン3111により起動される幾 何形状(Ge ome t r y) 、ボタン3112により起動される挙動 、ボタン3113により起動される制約条件およびボタン3114により起動さ れる“callback”のプロン−ジャである。これはソフトウェアX/MO TI Fにより供給されるきわめて多数の属性の中の1つの属性にユーザが容易 にアクセスすることを可能にする。
図4Aにおいて、表示に対応するマツプのボタン3110は、他のボタン311 1.3112.3113.3114に対して先に表示され、これらの他のボタン は、押してから表示されすなわち後方画面に表示される。前方画面に表示される このボタンに対応する外観属性のエディタは、ボタン領域上でマウスをクリック することにより作動され、また属性の編集を可能にするための対応ウィンドウ( 313)を表示する。図4Aの場合これは、ウィンドウの部分313が編集の過 程で’widgeビの表示を定義することを可能にする属性を含むところのウィ ンドウである。これらの属性は、領域3130内で後方画面を提示し、領域3I 31内でポイントマトリックスの後方画面を提示し、領域3132内でボタンの エラー/ヤドウの厚さを定義し、領域3133内で深さを定義し、領域3135 内で特性の規律リストを定義し、領域3136内で前方画面を定義し、領域31 37内でポイントマトリックスのラベルを定義し、領域3138内でチェーン( ス[・リング)のラベル、この場合XmPu5hButtonを定義し、領域3 139内でラベルタイプを定義し、領域31390内でエラー表示を定義するこ とを可能にする、テキスト領域で構成されている。
ウィンドウ313の部分に表示される属性は、ラベル゛’current” ( 現在実行中)が付されたボタン3101が押されると表示される。
属性の定義は従来のように、希望する属性のテキスト領域にマウスの矢印を当て て、キーボードから文字および数字を入力することにより行われる。各属性が定 義されるごとにApply(アプライ)コマンドを有するボタン3123を選択 すると、属性編集の頁で反復して修正されるすべての属性の一括有効化を行うこ とを可能にする。Unmark (マーク消去)コマンドを有するボタン312 2を選択すると、一括有効化の前に行われたすべての修正を取り消すことを可能 にする。Mark(マーク)コマンドを有するボタン3121を選択すると、一 括有効化を実行することなく修正の有効化を可能にする。
view(ビュー)コマンドを有するボタン3124を選択すると、属性の名前 をビジプル属性リストからインビジプル属性リストへまたはその逆へ移すことを 可能にする。
ボタン(3124)の領域にマウスの矢印を当ててクリックすることによりこの ボタン(3124)を押ずと、Attribute Editor(属性エディ ター)の中でウィンドウ3110を表示する機能を起動し、ビジプル属性をウィ ンドウ3110の領域313内に表示し、またインビジプル属性をウィンドウ3 110の領域314内に表示して、同時に視覚化することを可能にする。このウ ィンドウ3110は同様に、ボタンOKにより実行された選択を有効化すること 、ボタン316により実行された選択または修正を取り消す(Cancel)こ と、ボタン317により属性をビジプル領域からインビジプル領域にまたはその 逆に移動(Move)すること、ボタン318により属性をロード(Load) することおよびボタン319により選択または実行された選択の修正を保存(S ave)することを可能にする、複数の機能ボタンを含む。
すべての属性を見るために、属性編集の頁内で無線ボタンの形式で操作可能な追 加のコマンドボタン310 (view all attributes)は視 覚性の仕様を考慮することなくウィンドウ313内にすべての属性を表示させる ことを可能にする。ボタン3101 (Current ;現在実行中)を選択 すると、ヒジブル仕様を有する属性のみがウィンドウ313内に表示される。
ボタン3111によりマツプ″geometry” (幾何形状)を選択すると 、widgetの幾何形状の選択および修正の属性を表示させる編集機能を起動 することを可能にする。ボタン3】12を作動してマツプ″behavior”  (挙動)を選択すると、widgetの挙動を定義する属性を表示し、かつ選 択された属性の関数としてその挙動がどのように表されるかを定義することを可 能にする。
ボタン3113を選択すると、制約条件の編集の機能を作動し、かつ決定された オブジェクトに付属の制約条件の属性を表示することを可能にする。
オブジェクトのタイプに従ってエディタは作動不可能とされる。
たとえば、その属性がウィンドウ31内で定義されている押ボタンに対しては、 制約条件の編集および一括有効化の機能は作動不可能となり、またこの場合ボタ ン3113.3123内に示されるようにタイトルは灰色で現れる。
最後に、ボタン3114を選択すると、コールバックプロシージャの編集機能を 起動させることを可能にする。
コールバック゛”callback”のプロン−ジャ部分は単にテキスト領域で あり、ここで対話型オブジェクト“”widget″゛′のコールバック゛’c allbacks”のプロソージャを編集することが可能である。この部分は図 4Bに拡大して表示されている。コールバック゛″callbacks”のプロ シージャに関するダイアログ領域の上に、その名前およびその参照番号のような 編集される“widget”に関する情報を表示することを可能にする、テキス トボックスが存在する。コールバック゛’callback”のプロシージャは この場合W00L言語でコード化されている。”widget”で可能なコール バック“Ca1lback”の各プロノージャに対して、基本モデルが与えられ ている。たとえば、押ボタンがクリックされたときに実行されるコードWOOL を編集するためには、基本モデルは(on XmN activate cal lbackのwidget)である。仮想”callback”のXmN cr eatecallbackが追加されており、これはインタフェースの記述(1 4)が変更されたとき、同じ記述ファイル内で作成されるすべての子供のw i  d g e t″が作成されたのちに、EGERIAにより呼び出される。追 加の初期化はXmN create callbackの内部で行われる。
(l二とえは、ANNEXE4のXmFrame、XmLabe I、Xm5c a1eおよびXm5eparatorの親であるXmDrawingAreaの ような)親オブ/゛エクトの選択は、オブジェクト″5helビまたは一般オブ ジェク ト “Top 1evel widget” (XmTopLevel Shell)の属性を編集するように直接可能ではなく、コマンド”5elec t parent”(親を選択)を用い、かつ属性編集を起動することが必要で ある。
作成される対話型オブジェクト(“”widget″)は大部分ファイルX/d e f au l t (X/デフォルト)の現在の状態に依存し、オブジェク トに与えられた名前は、これらの値がエディタを用いて固定されてぃなかった場 合、作成されたオブジェクトのデフォルトにより値を与えるのに利用してもよい 。EGERIAにより利用することができるデフォルトにより固定された値の最 小かつ有効なセットは、ファイルX/default (13)内でANNEX Elに従って定義されるものであってもよい。
ファイルX/default内に含まれる翻訳の表は、同様にイベントUNIX からEgeriaの内部機能を作動するのに使用することができる。このように ANNEXE2のイベント(21)は、左ボタンで選択しかつポインタにより選 択された1つまたは複数の”widgeL”を移動することを可能にする。機能 ”EgSelect”はポインタで“widget”を選択することを可能にし 、また機能“EgMove”は選択された“widget″の移動を可能にする 。”5hift”キーと同時にマウスの左側ボタンを作動すると、ANNEXE 2の2行目に示すように、指定されたオブジェクトを選択されたオブジェクトリ ストに追加することができる。結局、機能EgSelectまたはUnSe 1 ectは、ポインタにより指定されたオブジェクトを選択したりまたは選択を解 除したりすることができる。この機能はトグルスイッチのように働X0最後に、 マウスの右側ボタンを作動してUNIX内の23行に指定されたイベントを発生 すると、機能EgSetSelectを起動し、機能EgSetSelectは 対話型矩形をトレースしかつ矩形の内部に位置するオブジェクトを選択すること を可能にする。矩形領域は、2つの隅すなわちボタンが押された場所およびボタ ンが離された場所により定義される。
編集の主機能をキーボードから操作することを可能にするために、ファイルX/ De f au I t (X/デフォルト)内に同様にANNEXE3におい て定義される翻訳の小さい2番目のテーブルがインストールされる。このテーブ ルは機能EgWOOL Execを利用し、該機能EgWOOL Execは、 アーギュメントとして与えられるアトムの値であるWOOL言語の表現を実行す る。項“Custom”の接頭語が付けられているアトムは、ファイルEdcu stom。
G、内で定義される。これはエディタの基本挙動をパーソナル化する標準方法で ある。
図1〜図4に関して記述されたインタフェースの編集のアブリヶーンヨンの実施 例を以下に、区5に示すように走り続ける犬(45)を表示可能にするインタフ ェースの編集に関して説明するが、ここでボタン“One 5tep” (42 )を押すことにより犬を一歩前進さ也ボタン″QUIT” (43)を押すこと によりアプリケ−ノヨンの実行を終了させ、ボタン“5TART” (40)を 押すことにより犬を走らせ、このときスライドボテンンヨメータ(44)により 速度を調節可能であり、またボタン”5TOP” (41)を押すことにより犬 の走行を停止させることを可能にする。
アブリケーンヨンはメモリ゛’Pixmappdog” (52)内に記憶され た連続する複数のイメージを含み、メモリ“Pixmappdog“ (52) は図面の範囲”DrawingAreaH内でイメージを移動させながら視覚化 される。インタフェースを編集するために、まずメニュー“’c r e a  t e”を利用しなから’widget“を作成することが必要である。まず“ widget 5hell”を明白に作成しなければならず、”widget  5he11”はこの実施例では一般”widget”、”top 1eveピす なわちX m Toplevelshel ビ’ (40)であり、 ”XmT oplevelShelド′は識別子として“@000001@”を有し、親と して″eg:widget −r o o t ”を有しまた他のオブジェクト (41)”DrawingAreaパを含む。次に識別子、属性、EGERIA 内の仮想色”eg:name”たとえば°”speed−widget” (4 510)および仮想スクリプトたとえば押ボタン”q u i t” (47) のスクリプト(470)を含む他の“widget”を作成する。各々の場合に 、エディタは親および位置(Pos i t 1on)を指示することを要求す る。ANNEXE4においてオブジェクト’Xm5cro11edWindow ” (462)により定義され、かつスクロールバー゛l5croll bar s”47.48を備えたスクロールドウイントウ“5CrOI led win dow” (46)の内部でアブリケーンヨンが犬を設計するところの’Dra wingArea”を作成する。オブジェクトを作成するために、エディタは既 知の機能、カット、コレクト、コピーを使用しまた作成されまたは選択されたオ ブジェクトのリストは、左側ボタンにより操作されて1つ以上の“Widget ”の選択または移動を可能にし、左側ボタンにより操作されてシフト”5hif t”キーが操作されたとき選択されたオブジェクトリストに指定されたオブジェ クトを追加することを可能にし、マウスの右側ボタンを操作することにより2つ の隅すなわちボタンが押されおよびボタンが離されたことによって定義された場 所の矩形領域内ですべての’widget”を選択することを可能にする。メニ ュ ”edit”のオペレーション″5elect parent” (親の選 択)において、選択される”widget”は選択された”w i d ge( ”の親となり、選択された’widget”は1つ以上の子供により覆われた“ ”widgeビたとえば“She l l″またはメニューを選択するために不 可欠である。オブジェクトが選択されるとき、そのクラスおよびその識別番号し たがってその名前が、図2に示すようにEGER[Aのメインウィンドウ内に現 れる。
次に”’widgets”はマウスにより位置およびサイズを変えることができ 、この場合左側のボタンを押すと選択された1つ以上の“widgets“を選 択しかつ移動し、これが付録2の21行目のイベントを発生させる。
その中でオブジェクトが選択される矩形をトレースする!こめにマウスの右側ボ タンを押すと、付録2の23行目のコマンドを発生させる。付録2の24行目に より指示されるようにマウスの中央のボタンを押すと、1つ以上の“widge t”のサイズを変更することを可能にする。
複数のオブジェクトの位置およびサイズを、メニュー“Ge ome t r  y”のオペレーンヨンにより一度に変更することが可能であり、ここでメニュー “Geometry”は選択されたオブジェクトが左側、中央または右側の垂直 線上にまたは上部、中央または下部の同じ水平線上に配列されるように移動する ことを可能にするオペレーンヨン“align”(整列)を含む。
このメニュー“Geometry″のオペレーション″Re5ize”は、選択 されたオブジェクトに輻または高さが同じサイズを、または最小または最大サイ ズを与えることを可能にする。オペレーンヨン“Distribute”は、選 択されたオブジェクトを規則的な間隔に分割することを可能にし、これはそれら を総括し、またはそれらの親の内部で矩形を用いて水平方向または垂直方向に分 割することができる。
属性の編集は、図4Aに示すように、すべての属性を含むデータ頁を表示させる だめにメニュー“Ed i t”のオペレーション(2021)”Attrib ute”を選択することにより行われる。ある属性は、”widget”の作成 後は修正することはできない。これはたとえば属性XmN5crol 1 in gP。
1icy、およびXmN5crollBarDisplayPolicyの場合 である。
1組のコールバックに対する応答を記述するコードを“5cript” (スク リプト)と呼ぶ。”widget”の各々に付属のスクリプトのサイズを以下に 説明する。これらのスクリプトは、WOOL言語で書かれている。
−押ボタン“QLIIT”は、アプリケーションを終了させることを可能にする ・メツセージ’XmNactivateCallbaek”に応答してボタンが 反応し、これにより機能゛exit’を呼び出すことを指示するためには、スク リプト内で次のように書けば十分である。
(on XmNactivateCallback(widget) (exi t) l 。
パラメータ“widget”が、処理可能であることがわかる。これは現在実行 されている“widget”、すなわちこの場合押ボタン“Pu5hButt− 押ボタン”Pu5hButton 5tep“は、犬を一歩前進させる。
メツセージXmNactivateCallbackに応答してボタンが反応し 、これによりアプリケ−/!!ン内で定義された“callback”の“5t ep”を呼び出すことを指示するために、スクリプト内に次のように書く。
(on XmNactivateCallback (”widget” (c all−back dog:5tap 19))アーギュメントに入力された番 号19が、ステップ″5tepCallback” (525)に対応する“C a l l back” Cのパラメータclient−data内に見出され る。これはインストラクシヨンC:int movement−(int)によ り、クライアントデータ(526)を指示し、幾つの画素だけ大を前進させるか を指示する。犬を作図するための“DrawCallback” (s 23) に対応する機能Cはのちに示す。
−犬は、図面“DrawingArea”の範囲内で作図される。必要の都度ア プリケーション内で定義される“Ca1lback draw”を呼び出すこと によって再作図される。
(On XmNaxposeCallback (widgat) (call −back draw))(ANNEXE4の430を参照) この“widget“が作成されたとき、インストラクション“call−ba ckinit” (4311)により機能1nitを呼び出すことによりアブ1 ノケ=/ヨンを初期化し、インストラクション”callbackiniビ ( 4311)はアプリケーションdraw、および5tepの“ca l 1 b ack”を定義し、またコードC″InitCallback(widget、 client−dataScal 1−data)およびInitPixmap s″ (532)を用いて(5221)で定義されるプロシージ* ”I n  i tP ixmaps”により、犬の異なる状態に対応するポイント(画素マ ツプ)のイメージをロードする。さらに犬が図面″D r a w i n g  A r e a”の範囲を右から飛び出すごとに機能5tepが犬を左から再 スタートするように、図面“DrawingArea”の範囲の大きさを可変ウ ィンドウ幅内に記憶する。
(on XmNcraateCallback (”widqet”) (ca ll−back 1nit)(seeg window−width (att ribute−get ”widgat” XmNwidth)))(ANNE XE4の431を参照) 可変ウィンドウ幅は、°“widget”の幅がインストラクションWOOLI こより変化するごとに更新される: (on XmNresizaCallback (”widget”)(set q window−widセh (attribute−get ”widga t” XmNwidth)))(ANNEXE4(7)433を参照)最後に、 画素マツプを作成したコードCからそれを識別するために、このwidget  drawing−area (434)をコールする。これ11機機能gVar iableGetValue (“drawing−area”、、、、)を用 いて行われる(ANNEXEの522を参照)。”widget”を1nitの パラメータ内に入力することがより簡単であるが、これはコードCから可変LI SPにどのように問い合わせるかを(より遠くから)見ることを必要とするであ ろう。
−押ボタン゛’5TART”は犬を走らせる。このために機能work−pro c(441)を利用する。機能work−proc (441)は、Xから発生 する処理すべきイベントが存在しない場合、そのたびごとに次に評価されるエク スプレッション(表現)を記憶する。このエクスプレッションは僅かの時間で評 価されなければならない。この例では、このエクスプレッションがカウンタ(4 411)を増加しである値が得られたときに、機能5tep(44x2または4 413)により犬を前進させる。増分はEGERIAにより管理される番号、こ の場合@000010@により識別される’widget” 5cale (4 51)の値である。“”widget”の識別子は、それが選択されたときに視 覚化される。これにより、容易にコピーしかつコレクトすることが可能である。
そのクラスしたがってその名前もまた表示される。
(on XmNactivateCallback (”widget” )( work−proc ’ (progn (setq count (+ count(attribute−get @ 000010@ XmNInt−value) ) )(if (> coun t 100) (setq count (−count 100))(call−back  5tep 119))))))問い合わせられた属性が、XmNInt−va  lueであって、かつXmN valueでないことに注意することが重要であ る。このことは、(MOTIFに対する)XmNvalueが、Xm5cale に対して全体を指示しまたXmTextに対して一連の特性を指示することに基 づ< (WOOL言語における)曖昧さを取り除くことを可能にする。
この最後の場合、XmNString−valueを使用しなければならない” widget”を作成するときカウンタは初期化される。
(on XmNcraateCallback (widget) (setq  count0))w o r k −p r o cを用いても行うことがで きる(442参照)。
(on X+nNactivateCallback (widget) (w ork−proc()))インタフェースの保存は、メニュー“File”のオ ペレーション“5ave”により行われる。次にこのように保存されたファイル を、オペレーション゛Load“により再び読み取ることができる。名前の取り 決めに関する幾つかの注意が必要であるニ ー EGER[Aに固有のファイルには、接頭語egが付けられている。
アプリケーションのインタフェースを含むファイルにはこのアプリケーションに 接尾語、egを付けた名前を与えることが好ましい。この例では、EGERIA により発生されたインタフェースをdog、egと呼び実行可能なものをdOg と呼ぶ。
もしこれが不都合な場合、アブリケーンヨンのソースC内(関数EgMainの パラメータ内)にロードすべきファイルの名前を明確に指定しなければならない 。
アブリケーンヨンの残りはC言語で書かれている。利用されるすべてのライブラ リは0M語で書かれている(ANNEXE5参照)。もし言語がC++の場合、 含まれるファイルの変更が必要となる。その他の言語に対しては、タイプ、定数 および関数を宣言するファイルを作成することが必要である。
−例であるdog、cの全体ソースが、ANNEXE5に記載されている。その 基本要素を以下に表示する。
まずツールキット“toolkit”の宣言を含めなければならない。EGER IAは”toolkit”のMOTIFにより公開されたすべての宣言を含むフ ァイル°’eg toolkit、h”を提供する(50参照):/1nclu de ”eg toolkit、h”。
次に、EGERIAの宣言を含めなければならない。入手可能な関数が参照マニ ュアル内に記述されている: /1nclude ”egaria、h”。
関数EgMainにより、EGERIAにおける実行をチェックする。
EgMain(layers、 XtNumber(layers)。
argc、 argv、 options、 XtNumber(option s)。
MODE EXEC(JT工ON。
工n1tcallback。
NULL。
Null、”EGPATH”); 最も重要なパラメーターn1tCallback(5110)は、アプリケ−7 シンを初期化する“callback″、およびその他のコールバンクを記録す る。この’ca I l back”は、インタフェースから(call−ba ckinit)により明白にコールされる。
実施例においては、dog、C内で与えられたコードを再びとることが好ましい 。コールバックのみが、他のアプリケーションのために修正される。
関数EgMainおよびそのパラメータは、ユーザが必要な初期化を行うことを 可能にし、かつ次にEgAppMainLoopを呼び出す。EgAppMai nLoopは、XtAppNextEventおよびEgDispatchEv entを呼び出して、そこでループを形成する。
”callback”のパラメーターn1tCallbackは、2つの役割、 すなわちアブリケーンヨンを初期化する役割、およびインタフェースとアプリケ ーションとの間のりンケージを記録する役割を有している。
この例においてはアブリケーンヨンのほかに、関数InitPixmaps内で の犬の走行の種々のステップに対応する画素マツプを作成する。
アプリケーションとのリンケージのほかに、名前drawおよび5tepのもと で関数EgCallbackDefineを用いてコールバックDrawCa1 1backおよび5tepCal 1backを記録する。同様にウィンドウ幅 から変数LISPを形成するが、該LISPは変数CのアドレスwindowW idthを共有するので、やや特殊である。
oid 工nitcallback(wiclget、client−data、cal l data)Widgat widget; /* UNUSED */ca ddr t client data /☆UNtJSED */caddr  t call data /☆UNUSED */工nitPixmaps O ; EgCallbackDefina(”Draw”、 DrawCallbac k) ;EgCallbackDafine(”5tep”、5tepCaLl back);EgPointerDefine(”window−width” 、&windowWidth);oid Drawcallback(widget、 client data、 ca ll datalWidgst widge切 /會 UNUSED */aa ddr t c!1ient data /嚢UNUSED☆/eadar t  call data 7* UNUSED */XCopyArea(DIS PLAY 、 pdog [currant ] 、 drawingAraa Window 。
qC,Or O,wdog[currentl、 HdO(i[currene l+xdoqIydOg); oid StepCallback(widget、 client data、 ca ll data)Widget widgeti /嚢UNIJSED */c addr t client ciata /* movement */ca ddr t call data /* LjNυSED */int mov ement = (int) alienセーdata;XC1earArea (DISPLAY、drawxngAraaWxndow。
xdog、ydog、WよりTH,HE工GHT、False)。
xdog += movement ;if (movement > 0)( if (xdog >= windowWidth)xdog = O;cur rent++; if (currenセ > 5) current =O;) else( if (xdog < a) xdog = windowWidth;(ur rer+t−−; 1f(current < O) currenセ = 5;XCopyAre a(DISPLAY、 pdog[currentl、drawingArea Window。
gc、 O,O,wdog[currenj=]、 hdog[current l。
xdog、ydog); 関数1nitPixmapsにおいて画素を作成する。このため、とのwidg et内にそれらが作図されるがを知ることが必要である。したがって変数LIS Pdrawing−areaが問い合わせられる。
if (!EgvariabLeGetValue(”drawing−are a”。
egclassWidgat。
&drawingAraa))( fprintf;5tderr。
”drawing−area must be 5pecifiadXn”)  ;axit (−1); 変数LISPの値がCから修正される。この原理は、必ずしもインタブ1ツタL ISPに基づかない他のシステム内でも見出されることに注目すべきである。こ れは、この関数性を利用するアブリケーンヨンがEGERIAに依存してl/1 なむ)ことを意味する。
アプリケーションをコンパイルしたのち、EGERIAのライブラ’JlibE g、aおよびO5F/MOTIFのために必要なライブラリ、すなわちIibX m、a、I 1bXt、aおよび1ibX11.aとのリンケージエディシコン (1ノツク編集)を行わなければならない。
得られたプログラムは、それがoption−editの前に実行されIこ場合 にインタフェースを編集することができる。
EGPATH= 、:/user/1ocal/lib/Xll/eg dog  −edit&。
当業者によるすべての修正、変更は同様に本発明の技術思想の一部である・AN NEXE I EGERIA ” background : AntiqueWhite3E GERIA”XmTe5t’background: AntiqueWhit e2EGERIA’XmLi5t”background: AntiqueW hite2EGERIA”foreground: blackEGERIA” FonList: −adobe−times−bold−re−畳−12−* −75−*−畳−畳−e−*EGERIA’XmToggleButton、1 ndicatorSize: 18EGERIA”XmLi5t、visibl eltemCount ニアANNEXE 2 ”5hift”Ctrl<BtnlDown>: EgSelectOEgMo ve(1\n\−21″5hift”Ctrl < Btn2Down > :  EgSelectOEgResizeO\n\−24”5hift”Ctrl  < Btn I Down > : EgSelectOrLInselec t(1\n\−22”5hift”Ctrl < Btn2Down > :  EgSelectOrUnselectO\n\”5hift”Ctrl <  Btn3Down > : EgSelect(1\n\ □23ANNEXE 3 EGERIA”obiect、translations: #overrid e\< keyPress > e: EgWoolExec(custom  :Editl\n\< keyPress > p: EgWoolExec( custom:EditParent)\n\< keyPress > X:  EgWoolExec(custom:Cut)\n\< keyPress  > c: EgWoolExec(custom:Copy)\n\< ke yPress > v: EgWoolExec4custom:Pa5tel \n\< keyPress > d: EgWoolExec(custom :Delete)ANNEXE 4 ANNEXE4(suite) ANNEXE 4 (suitel mNx6 XmNheight23 ANNEXE 4 (suite) XmNheight22 XmNheight23 ANNEXE4(suite) ANNEXE 4 (suitel ANNEXE5 111118111111″1111*41%II*l1lI%−”***** ***+−”0−−”0−”ハApplication: Link with  User Interface par↑\141411)e1111111 111*e111G1111111111111411111*ll#1141 +1111−”0−一”S1111148/ ANNEXE 5 (suitel Application part −−= = = = = = e7\争= ヨ。ヨ。ヨ。ヨエヨヨよユ。工、ヨヨ−ANNEXE 5 (suite) from value、5ize = strlen(pixmapNamel  + 1;from二value、addr = pixmapName;AN NEXE 5 (suite) Callback functions\j−−−−−−−〜−−−−−−−− −−−−−−−’ /ANNEXE 5 (suitel Oid EgPoinlerDelinef”dog:window−width”、  EgCIasslnt、 &windowWidthl;l@@畳・魯°優φ・ ・φ・・譬畳°畳9°・φ°°°°“S曖・響瞥°1畳−曽・――・・会憂畳@ #@−・・−轡拳優憂争憂1ANNEXE 6 6.1 WOOLCREPART 61.1 シW狂■ Function Action [W 1 &21[Cl3261 WQOL comment612 比し瓜 Function Action ANNEXE 6 (suite1 6.1.3 QJ豆可 FuncTion Action ANNεXE 6 (suire1 614 巳を旦四m Function Action [W2] preVent evaluation with possibl e 1nternalevaluations backquote IW21 preVent evaluation wi th possible internalevaluations defmacro lEl 1 define a WOOL macr。
defmacro [W21[CL 76.1951 define a WO OL functiondefunq [Wl ] define a WOO L functiondefun [Wl 1 define a WOOL  functiondefun [W2][CL 76.195] define  a WOOL functionde [Wl ] define a WO OL functiondf [Wl ] define a WOOL fu nctiondmjE1]defineaWOOLmacr。
flambda [Wl 1 define a WOOL function lambdamacro jW21cL 76.1951 define a  WOOL functionlambda [W2][CL 76.1951  define a WOOL function615 ん丘 Function Action / = [W211CL s 2931 test 1nequality o f objectsconvert JEl 1 convert a val ueANNEXE 61suite) 6.16 力社口1と Function Action 6.1.7 瓜四偲四辺凪 Function Action ANNEXE 61suite1 618 亘8 Function Action ANNEXE 61suite) 6.1.9 LQ郊凄 Function Action 6110 他E虫更 Function Action 6.1.11 α血以 Function Action ANNEXE 6 (suite) 6.1.12 ム可l狽 Function Action boundp (WI &2] [CL 1201 test if an s ymbol has already beendefined defvar [W21 lCL 861 defines variable  or constantdefconstant IW21 [CL 861  define variable or constantdefun [W 21 [CL 76.195] define a WOOL functio ndefmacro [W21 [CL 76.195] define a  WOOL functionintern [W21 [CL 266] ma ke an symbol from a string6.1.13 シ没匹 凪ま Function Action flist or stringl ANNEXE 6 (suite1 6.1.14 ぶ圧迫 Function ’ Action ANNEXE 6 (suite1 6.1.15 辻dが Function Action boundp [Wl &21 [CL 1201 test if an s ymbol has already beendefined intern [W2] [CL 2661 make an symbol  from a 5trin9ymbol unbind [Wl 1 undefine a symbolmakunb ound [W21 [CL 1201 undefine a symbol 6.1.16 Vari bl n n antFunction Actio n defvar [W2] [CL 86] defines variable  or constantdefcOnstant [W2] [CL 861  defines variable or Con5tantlet [W2 ] 1ocal variable declarationlet’ [El  ][W2] 1ocal variable declaraτ1onset  [W2] [CL 122,121 ] variable assigne mentsetq [W21 [CL 122,1211 variable  assignement[Wl ] variable assignemen twith iWl l 1ocal variable declarati onwith−eval [Wl ] 1ocal variable dec laration6.1.17 M昼坦迫四空J Function Action ANNEXE 61suite1 6.1.18 シミ迫出 Function Action i [El ] execute a 5hell commandi [W2 1 execute a 5hell commandsystem [El  1 execute a 5hell commandsystem [W21  execute a 5hell command!! [W21 exec ute a 5hell commandFunction Action hack 1W21 raW access to WOOL 1nterna l 5tructureshack [Wl ] raw access to  WOOL 1nterna15tructureshashinfo [WI  &2] 5tatistics on symbol storagemem info [WI &21 print memory usedtrace− level [WI &21 trace calls to a WOOL  function↑race−all [WI &21 trace call s to a WOOL functionANNEXE 6 fsuitel 6.2 W EGERIAPART 6.2.1 ADi Function Action 6.22 ΔW重旦建 Function Action 6.2.3 B+功l仙匠 Function Action ANNEXE6 fsuitel 5.2.4 Qと臣σ Function Action 6.2.5 堕ぎ坦凱■■区 Function Action ANNEXE 6 (sui+e1 6.2.6 Egg囮 Function Action ANNEXE 6 fsuitel 62.7 も1区 Function Action Function Action ANNEXE 6 fsuite1 6.2.9 I Function Action 6210 8」はm Function Action 6.2.11 Symbol Function Acrion do−symbol IW211terates on each symbo lANNEXE 61suite1 6.2.12 W囮旦虹 Ft+nCtiOn Action idget XtTranslateCoords [EI &2] translates  to root windowWid(let attribLIteANN EXE 6 fsuite1 6.2.12 W反部L(8)瓜孤 Function Action indow children ANNEXE 6 fsuite1 6.2.13 W曵鴎肛−録 Function Action Function Action ANNEXE 6 fsuite1 6.2.15 と仙狙 Function Action XmListAddltems [El &21 add an item o r a 1ist of itemsto a list XmListAddltem [EI&2] add an item or  a 1ist of itemsto a list XmListDeleteAlll+ems jEl &2] deselec t all the items of listXmListltemExi sts (EI &2] checks if and item is in  a 1ist6.2.16 及…遼本 FuncTion Action ANNEXE 6 tsuite1 6.3Ω」11 631 比戯也■但I FunctionAction 6.3.2 01≧以 Function Action EgObjectCopy [El &21 copy an objectE gObiecrCreateFromXtArgVal [El &2] Cr eates a new object from Calue EgObiectCreate (El &2] Creates a new  obiect from Calue EgObiectlncreaseRef [Ei&21 decrease  or 1ncrease theANNEXE 6 (suite1 6.3.3 1A3゜ Function Action 634 0膠浸 Function Action ANNEXE 6 tsuite1 6.3.5 Mjl二 Function εgActiveoefine EgArgumentMustBe EgConvenientWidge+C1assC+eateEgError EgFunctionDefine EgMalloC EgReallocEgCalloclε1 &21 Memory mana gement functions EgNormalWiр■■狽bIass Create EgPointerDefine εgPrintf gPutS EgVariableGetObjectEgVariableSetObie ctEgWarning EgPutChar ANNEXE 7 EgActive Define −define an active va luevoid EgActiveDefine(nazy+e、 getFu nction、5etFunctionlchar”name; EGFunction getFunction;EGFunctionset Function;To define a WOOL active val ue、 use the function EgActiveDefina、 @An active value may be viewed as a variable or  as a function in the same 狽奄高■AThe principle is that a 5pecific functio n is called when you assign@or when  you consult an active valueThe get funct ion has no parameters and returns an  EgObject、 the@set function has one parameter fthe value 5etl et  returns anεgobject。
fsetq activel 341 (activel 341 which have the same effect、 the acti ve value being defined by :int value Active 1;EgActiveDe+ine+”active + ”  、 QetFunCFOnACIiVe + 、 setFunctionAc 狽奄魔■@11: ANNEXE 7 fsuitel E Ar umentMust be −check the type of  an argumentEgArgumentMustBe to、argv lol、 EgClasslntl;ANNEXE 7 tsuite) E C1assDestroy −Destroyes a classsub ject to modifications in the futureA NNEXE 7 (suitel E CIasslsSubclass −Te5ts subclassing int EgCIasslsSubclass Ic/assl、 class 21EgClass classl 、 class2:Returns Tr ue if classl is a 5ubclass of class2 . False otherwiseB Example: to define XmMessageBox and  XmMessageDialog。
CAUTION: Convenient class must be re corded after their real cla唐刀A Examp le: MessageDialog after MessageBox。
ANNEXE 7 fsuite1 国可ヨー print a Warnin9 e[rOr and 5top  executionvoidEgError(stringFormat、va /uelchar ’stringFormat。
long value; ij (alga : = 31 EgE++o+ (−bad nurnbe + oj a「guments%d”、argc);ij +argc ! =  31 EgE++o+ iegεr+or−BAC)−NUMBER−OF− ARGS、 argcl;E FunctionDefine −define  a WOOL functionvoid EgFunctionDefin e (name、function、 aritylchar ’name; char EgFunction function;int amity; EgFunctionDefine allows to create a  new function。
name is the name oj由e funcrion as it  will be called from WOOLANNEXE 7 (S uitel CAUTION + An Egeria function must al ways return an EgObject、oid 口頭囚=至暉E] −append an obiect to a 1ist Append an object to the end of a 1is t、 See also: EgListlnsertlt■■ ANNEXE 7 (suitel E ListContainltem −test if an item i s in a listEgObiect item; CAIJTION: Use EgListGetPosition 1nst ead。
E Li5tC+eateFromArray −Create a 1ist  from an arrayEgObiect ’argv; ANNEXE 7 fsuitel E Li5tCreateOfSize −create a 1ist of  given sizeEgListCreateO5ize creates  a 1ist of a given 5tze、 The followi ng@example creates the 1ist (nil nil nillEgList CreateCHSize+3.EgNILl:E Li5tGetArray  −get contents of the 1ist in Carray EgObiect ” EgListGetArray (hstlEgLis t 1ist; See also: EgObjectDecreaseRef、 EgObj ectlncrsaseRefNote: position s↑arts  from O。
匡i匹Fζ四所=可可ロ −get the position at an  object tn a listANNEXE 7 [sui+e) E Listlnsertltem −1nsert an object i n a 1istThe first position in the 1i st is given by O,See also: EgListAp垂 ■獅р撃狽■香B d −the length of a +:5tReturns the l ength of a 1ist。
E LiStMOVeltem −m0Ve an element 1nsi de a a 1istReturns True if it is don e、 False if position is out of range 。
同裏戸■ロー Removes all items in a 1istVO 響dEgListReset(listlEgList 1ist; ANNEXE 7 fsuitel These are the same functions as corr esponding UNIX ones、 See al唐潤F MALLOCf31゜ E Ob’ectCopy −copy an objectEgObiect  EgObjectCopy (objectlEgObiect objec t; E Ob’ectCreate −Creates a new object  from CvalueεOb’ectCreateFromXtAr Va l −Creates a new obiect trorn c valu eSee also+ EgVariableSetCValue、 EgLi stCreate。
ANNEXE 7 (suitel EgObieCt object; 口西=■ロ −Te5t equality of two objectsR eturns EgNIL if False and obiectl if  True texcept if obiectl i刀@nil、 in  this casereturns EgTRUEI This function has the same semantic  as the WOOL function equal。
口匡正酬口 −Evaluates an obiect口亜=正i −Eva luates an obiectfunction found as fi rst item wlh following items as para meters。
The function EgObiec+Eval retu「ns Eg ERRORif an error occursW○OL function This is the basic TLJlIC7iOn to Ca1l  Ihe WOOL 1nterpreterANNEXE 7 (suite l E Ob’ectGetCValueコーGets Cvalue of an  objectEgCValue EgObiectGetCValue (o bjectlEgOblect obiect; See also: EgVariableGetCValue、 EgObi ecrCreate、 EgObiectModifyMODIFICATIO N (in release O,541: The old name of  this function w≠■ EgObject−GetCValueE 0biectlsSubclass  −Checks the class of an objectεgObj ectlsSubclass returns True or FalseE gObjectGetClass will probably not be  available in next versionB E Ob’ectModify −5ets Cvalue of an ob iect匡0biectPrint −Pr1nts the wool ob iectSee alsoεgPrtntf、εgPuts、 EgPutCh ar[1jコ4 − define a 5hared variableTo  Define a variable 5hared by the 1nt erpreter and the applicat奄盾氏A use EgPointerDefine、 The 5hared value is  always an integerANNEXE 7 fsuitel From the application 5ide :And fromτ he WOOL 5ide(print Too−ball = = > 78 voId EgPrintffchar ”st「ing、 void ’ar gl voidεgputstchar”str:nglvold EgPut Char(char clAssign an object to a WO OL variableE Warning −print a warnin g error口U Jf5 旦住」旧 国際調査報告

Claims (26)

    【特許請求の範囲】
  1. 1.インタフェースの記述用対話型ツールにおいて、該ツールがインタプリタ言 語を使用しており、かつインタプリがインタフェースの記述用プログラムと共に ロードされることを特徴とする対話型ツール。
  2. 2.請求項1記載の対話型ツールにおいて、言語がデータおよびプログラムに類 似の表現を有していることを特徴とする対話型ツール。
  3. 3.請求項1又は2記載の対話型ツールにおいて、記述用プログラムが、コマン ドの対話型オブジェクト“Widget”のライブラリ、オブジェクトの“X/ MOTIF”のライブラリ、およびグラフィックオブジェクト“GO”のライブ ラリと協働することを特徴とする対話型ツール。
  4. 4.請求項1、2または3記載の対話型ツールにおいて、プログラムが、オブジ ェクトを操作する高水準のポータブルアセンブラであるC言語にインストラクシ ョンを混合したもの、および翻訳可能な言語にインストラクションを混合したも ので構成されていることを特徴とする対話型ツール。
  5. 5.請求項4項記載の対話型ツールにおいて、インタプリタが、LISP言語で 書かれたオブジェクト指向であることを特徴とする対話型ツール。
  6. 6.請求項1〜5のいずれかに記載の対話型ツールにおいて、インタフェースの エディタのインタプリタが、テーブルを使用することを特徴とする対話型ツール 。
  7. 7.請求項6記載の対話型ツールにおいて、インタプリタのカーネルが、一方の ディメンジョンがリスト、ストリング(チェーン)、番号などを含むタイプであ り、他方のディメンジョンがセレクタ(「評価、プリント、フリー、加算、.. .」)である二次元マトリックスとして構成されていることを特徴とする対話型 ツール。
  8. 8.請求項1〜7のいずれかに記載の対話型ツールにおいて、インタプリタ(“ WOOL”)が、パン屑掃除器、すなわち記憶領域が常に使用されるように、使 用されていないオブジェクトが占有している記憶領域を再利用するために、この ような使用されていないオブジェクトを探すべくメモリを周期的に走査すること を可能にするインクレメンタルな空領域再生機構(ガーベジコレクタ、GC)を 含んでいることを特徴とする対話型ツール。
  9. 9.請求項8記載の対話型ツールにおいて、空領域再生機構が、メモリの細分化 を制限するために、基準カウンタおよびオブジェクトをサイズで再グループ化す る機構を利用していることを特徴とする対話型ツール。
  10. 10.請求項1〜9のいずれかに記載の対話型ツールにおいて、対話型ツールの 機能が、インタプリタプログラムの形式で記述されていることを特徴とする対話 型ツール。
  11. 11.請求項1〜10のいずれかに記載の対話型ツールをを用いて実現したイン タフェースにおいて、編集されたインタフェースのプレゼンテーションの保存( 記憶)が、言語WOOLで書かれたプログラムの保存として実行されることを特 徴とするインタフェース。
  12. 12.請求項3記載の対話型ツールにおいて、これらのオブジェクトのアセンブ リング用幾何形状の対話型仕様が、アプリケーションによって利用可能でありか つユーザインタフェースのプレゼンテーションを含むファイルにより構成されて いることを特徴とする対話型ツール。
  13. 13.請求項3又は11記載の対話型ツールにおいて、対話型オブジェクト(“ widget”)の動的挙動が、インタプリタ言語(“WOOL”)で書かれた 1組のコールバック(“callback”)プロシージャにより定義され、こ のプロシージャは、入力イベントが対話型オブジェクト“widgets”の1 つにより受け入れられたときにツールキット“X/MOTIF”によりコールさ れるアプリケーションの機能を指定することを特徴とする対話型ツール。
  14. 14.請求項1、2、3または11記載の対話型ツールにおいて、インタフェー スの記述用プログラムが、インタフエースオブジェクト“widget”のクラ スを追加することにより拡張可能であり、この追加は、新しいインタフエースオ ブジェクト“wIdget”を編集可能にするために、このクラスの新しいタイ プの属性を翻訳言語(“WOOL”)で記述しながら行われることを特徴とする 対話型ツール。
  15. 15.請求項14記載の対話型ツールにおいて、各インタフェースオブジェクト (“widget”)が、インタフエースオブジェクト“widget”のクラ スに対応するクラス“WOOL”の翻訳言語(“WOOL”)で書かれたオブジ ェクトにより指示され、該翻訳言語(“WOOL”)で書かれたオブジェクトに 直接補助属性が付属されていることを特徴とする対話型ツール。
  16. 16.請求項15記載の対話型ツールにおいて、翻訳言語(“WOOL”)で書 かれた各オブジェクトが、オブジェクトタイプおよび基準カウントの情報を含む 自動タイプのC言語構造であることを特徴とする対話型ツール。
  17. 17.請求項3記載の対話型ツールにおいて、翻訳言語(“WOOL”)で書か れた各対話型オブジェクト“widget”に、インクレメンタルな形で固有の 識別子“WOOL”が割り当てられていることを特徴とする対話型ツール。
  18. 18.請求項1、2、3または13記載の対話型ツールにおいて、インタフェー ス(EGERIA)の記述用対話型ツールが、「編集」の機能、「作成」の機能 および「幾何形状」(“Geometry”)の機能を含む基本メニューの表示 を可能にするプログラムを含むことを特徴とする対話型ツール。
  19. 19.請求項18記載の対話型ツールにおいて、「作成」機能が、メニューから すべての対話型オブジェクト(“widget”)を作成することを可能にし、 またメニューの1行を選択後にカーソルの形式を変更し、対話型オブジェクトコ ンテナ“widget container”を含む対話型オブジェクト内でマ ウスをクリックすると、対話型オブジェクトコンテナ内で選択されたタイプのオ ブジェクトをインストールすることを特徴とする対話型ツール。
  20. 20.請求項18記載の対話型ツールにおいて、編集機能(“edit”)が、 分離ウィンドウ内での対話型オブジェクト(“widget”)の属性の編集を 可能にし、また選択された1組の対話型オブジェクト(“widget”)を、 選択された対話型オブジェクト(“widget”)の親対話型オブジェクト( “widget”)の属性を編集したりまたは現在選択された対話型オブジェク ト(“widget”)の親を選択される新しい対話型オブジェクト(“wid get”)とするように、選択された1組の対話型オブジェクト(“widge t”)をカットし、コレクトし、コピーしまたはデュプリケートすることを可能 にすることを特徴とする対話型ツール。
  21. 21.請求項18記載の対話型ツールにおいて、幾何形状(“Geometry ”)機能が、頂部、底部、右側部、左側部に配列され、または同一の幅および高 さを有することができる選択された1組の対話型オブジェクト(“widget ”)の幾何形状を管理することを可能にすることを特徴とする対話型ツール。
  22. 22.請求項20記載の対話型ツールにおいて、編集機能が、対話型オブジェク ト(“widget”)の属性の編集用ウィンドウを表示することを可能にし、 該ウィンドウは2つの領域に分割され、一方の領域はコールバック(“call back”)プロシージャによりアプリケーションからコールされた機能を含み 、他方の領域は1組のサブエディタにより表現された属性を含むことを特徴とす る対話型ツール。
  23. 23.請求項22記載の対話型ツールにおいて、最初のサブエディタが、ブール 属性を入力するためトグルボタンで構成されていることを特徴とする対話型ツー ル。
  24. 24.請求項22記載の対話型ツールにおいて、2番目のサブエディタが、列挙 されたタイプの値のリスト(左、右または中央のテキストの配列)を表示するメ ニューを表示する押ボタンで構成されていることを特徴とする対話型ツール。
  25. 25.請求項22記載の対話型ツールにおいて、3番目のサブエディタが、テキ ストまたは数値を取得するためのテキス領域で構成されていることを特徴とする 対話型ツール。
  26. 26.請求項20記載の対話型ツールにおいて、コマンド“Shell wjd gets”の対話型オブジェクトのインタプリタ、すなわち一般オブジェクト( Top level“widged”)の編集機能が、まずメニューの親を選択 するメニュー(“select parent”)を選択し、次に属性の編集機 能(“edit attribute”)を選択して開始されることを特徴とす る対話型ツール。
JP50421894A 1992-07-22 1993-07-21 インターフェース記述用対話型ツール Expired - Fee Related JP3348853B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR9209057A FR2694105B1 (fr) 1992-07-22 1992-07-22 Utilisation d'un langage à interprète embarqué pour la réalisation d'un outil interactif de définition d'interface utilisateurs.
FR92/09057 1992-07-22
PCT/FR1993/000749 WO1994002895A1 (fr) 1992-07-22 1993-07-21 Utilisation d'un langage a interprete embarque pour la realisation d'un outil interactif de definition d'interface utilisateurs

Publications (2)

Publication Number Publication Date
JPH06510879A true JPH06510879A (ja) 1994-12-01
JP3348853B2 JP3348853B2 (ja) 2002-11-20

Family

ID=9432152

Family Applications (1)

Application Number Title Priority Date Filing Date
JP50421894A Expired - Fee Related JP3348853B2 (ja) 1992-07-22 1993-07-21 インターフェース記述用対話型ツール

Country Status (7)

Country Link
US (2) US5696914A (ja)
EP (1) EP0580509B1 (ja)
JP (1) JP3348853B2 (ja)
KR (1) KR0136349B1 (ja)
DE (1) DE69324966T2 (ja)
FR (1) FR2694105B1 (ja)
WO (1) WO1994002895A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010170553A (ja) * 2009-01-23 2010-08-05 Samsung Electronics Co Ltd コミュニティ・ウィジェット提供方法及びその装置

Families Citing this family (141)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2123924A1 (en) * 1993-06-02 1994-12-03 Charles Douglas Blewett Specifying contexts in callback style programming
US6680305B1 (en) 1993-06-04 2004-01-20 Biotime, Inc. Physiologically acceptable aqueous solutions and methods for their use
JPH0895796A (ja) * 1994-09-29 1996-04-12 Nec Corp 異なる言語間のコールバック関数設定方式
US7188352B2 (en) 1995-07-11 2007-03-06 Touchtunes Music Corporation Intelligent digital audiovisual playback system
JP3679416B2 (ja) * 1994-10-12 2005-08-03 タツチチユーンズ・ミユージツク・コーポレイシヨン インテリジェントデジタルオーディオビジュアル再生システム
US7424731B1 (en) 1994-10-12 2008-09-09 Touchtunes Music Corporation Home digital audiovisual information recording and playback system
US8661477B2 (en) 1994-10-12 2014-02-25 Touchtunes Music Corporation System for distributing and selecting audio and video information and method implemented by said system
US6314570B1 (en) * 1996-02-08 2001-11-06 Matsushita Electric Industrial Co., Ltd. Data processing apparatus for facilitating data selection and data processing in at television environment with reusable menu structures
FR2753868A1 (fr) 1996-09-25 1998-03-27 Technical Maintenance Corp Procede de selection d'un enregistrement sur un systeme numerique de reproduction audiovisuel et systeme pour mise en oeuvre du procede
US5793368A (en) * 1996-11-14 1998-08-11 Triteal Corporation Method for dynamically switching between visual styles
AU5133398A (en) * 1996-12-03 1998-06-29 Ergolight Ltd. Computerized apparatus and methods for identifying usability problems of a computerized system
US5815149A (en) * 1997-02-19 1998-09-29 Unisys Corp. Method for generating code for modifying existing event routines for controls on a form
KR19980075429A (ko) * 1997-03-31 1998-11-16 윤종용 이동통신 시스템의 기지국 관리장치에서 위젯의 폰트 변경 방법
US7779020B2 (en) * 2002-03-01 2010-08-17 International Business Machines Corporation Small-footprint applicative query interpreter method, system and program product
FR2769165B1 (fr) 1997-09-26 2002-11-29 Technical Maintenance Corp Systeme sans fil a transmission numerique pour haut-parleurs
UA55489C2 (uk) * 1997-10-07 2003-04-15 Каналь+ Сосьєте Анонім Пристрій для багатопотокової обробки даних (варіанти)
US6230318B1 (en) * 1998-02-24 2001-05-08 Microsoft Corporation Application programs constructed entirely from autonomous component objects
US6405159B2 (en) * 1998-06-03 2002-06-11 Sbc Technology Resources, Inc. Method for categorizing, describing and modeling types of system users
US6384931B1 (en) 1998-07-20 2002-05-07 Pitney Bowes Inc. Method and system for capturing destination addresses from label data
US6282524B1 (en) 1998-07-20 2001-08-28 Pitney Bowes Inc. Method and system of printing postage indicia from an envelope design application
FR2781582B1 (fr) 1998-07-21 2001-01-12 Technical Maintenance Corp Systeme de telechargement d'objets ou de fichiers pour mise a jour de logiciels
FR2781580B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Circuit de commande de son pour systeme de reproduction audiovisuelle numerique intelligent
FR2781591B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Systeme de reproduction audiovisuelle
US8028318B2 (en) 1999-07-21 2011-09-27 Touchtunes Music Corporation Remote control unit for activating and deactivating means for payment and for displaying payment status
JP2002528794A (ja) 1998-10-16 2002-09-03 コンピューター アソシエイツ シンク,インク. 拡張可能なマクロ言語のための方法およびシステム
US6859919B1 (en) * 1998-10-16 2005-02-22 Computer Associates Think, Inc. Object modeling tool with meta model semantic registry (rules) a meta data manager for object(s) properties an object/property interface for instance(s) of objects/properties received via object/property interface of the object factory registry
US6947037B1 (en) * 1998-11-05 2005-09-20 Computer Associates Think, Inc. Method and apparatus for interfacing with intelligent three-dimensional components
US8121891B2 (en) * 1998-11-12 2012-02-21 Accenture Global Services Gmbh Personalized product report
US6195651B1 (en) 1998-11-19 2001-02-27 Andersen Consulting Properties Bv System, method and article of manufacture for a tuned user application experience
US7076504B1 (en) 1998-11-19 2006-07-11 Accenture Llp Sharing a centralized profile
US8726330B2 (en) 1999-02-22 2014-05-13 Touchtunes Music Corporation Intelligent digital audiovisual playback system
AU5288000A (en) * 1999-05-24 2000-12-12 Matsushita Mobile Communications Development Corporation Of U.S.A. A platform independent system of specifying an embedded user interface
US7224790B1 (en) 1999-05-27 2007-05-29 Sbc Technology Resources, Inc. Method to identify and categorize customer's goals and behaviors within a customer service center environment
US7086007B1 (en) 1999-05-27 2006-08-01 Sbc Technology Resources, Inc. Method for integrating user models to interface design
US6476828B1 (en) 1999-05-28 2002-11-05 International Business Machines Corporation Systems, methods and computer program products for building and displaying dynamic graphical user interfaces
FR2796482B1 (fr) 1999-07-16 2002-09-06 Touchtunes Music Corp Systeme de gestion a distance d'au moins un dispositif de reproduction d'informations audiovisuelles
US6909439B1 (en) * 1999-08-26 2005-06-21 International Business Machines Corporation Method and apparatus for maximizing efficiency of small display in a data processing system
US20050160401A1 (en) * 1999-10-16 2005-07-21 Computer Associates Think, Inc. System and method for adding user-defined objects to a modeling tool
US7734457B2 (en) * 1999-10-16 2010-06-08 Computer Associates Think, Inc. Method and system for generating dynamic comparison models
FR2805377B1 (fr) 2000-02-23 2003-09-12 Touchtunes Music Corp Procede de commande anticipee d'une selection, systeme numerique et juke-box permettant la mise en oeuvre du procede
FR2805060B1 (fr) 2000-02-16 2005-04-08 Touchtunes Music Corp Procede de reception de fichiers lors d'un telechargement
FR2805072B1 (fr) 2000-02-16 2002-04-05 Touchtunes Music Corp Procede d'ajustement du volume sonore d'un enregistrement sonore numerique
GB0004090D0 (en) * 2000-02-22 2000-04-12 Innovation Venture Ltd Application programming system and method of operation thereof
US7505817B2 (en) 2000-03-06 2009-03-17 Siemens Technology-To-Business Center, Llc Programming automation by demonstration
US6778643B1 (en) 2000-03-21 2004-08-17 Sbc Technology Resources, Inc. Interface and method of designing an interface
US20040006473A1 (en) * 2002-07-02 2004-01-08 Sbc Technology Resources, Inc. Method and system for automated categorization of statements
US6995853B1 (en) 2000-03-31 2006-02-07 Pitney Bowes Inc. Method and system for modifying print stream data to allow printing over a single I/O port
US6678889B1 (en) 2000-05-05 2004-01-13 International Business Machines Corporation Systems, methods and computer program products for locating resources within an XML document defining a console for managing multiple application programs
FR2808906B1 (fr) 2000-05-10 2005-02-11 Touchtunes Music Corp Dispositif et procede de gestion a distance d'un reseau de systemes de reproduction d'informations audiovisuelles
FR2811175B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Procede de distribution d'informations audiovisuelles et systeme de distribution d'informations audiovisuelles
FR2811114B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Dispositif et procede de communication entre un systeme de reproduction d'informations audiovisuelles et d'une machine electronique de divertissement
FR2814085B1 (fr) 2000-09-15 2005-02-11 Touchtunes Music Corp Procede de divertissement base sur les jeux concours a choix multiples
US20020124236A1 (en) * 2000-12-27 2002-09-05 Ruths Derek Augustus Samuel Method of manipulating a distributed system of computer-implemented objects
US7631265B1 (en) 2000-12-29 2009-12-08 Gateway, Inc. System and method for configuring and loading a user interface
DE10065323C2 (de) * 2000-12-31 2003-10-30 Siemens Ag Verfahren zur Steuerung der Anordnung von graphischen Elementen
US6779175B2 (en) * 2001-05-22 2004-08-17 Thermwood Corporation Method and system for converting graphic databases into coded workpiece processing programs
DE10134270A1 (de) * 2001-07-18 2003-02-06 Heidenhain Gmbh Dr Johannes Verfahren zur Erzeugung pixelorientierter Bilddateien zur Darstellung graphischer Symbole durch eine numerische Steuerung
US7065201B2 (en) * 2001-07-31 2006-06-20 Sbc Technology Resources, Inc. Telephone call processing in an interactive voice response call management system
WO2003032111A2 (en) * 2001-10-09 2003-04-17 Grey Zone, Inc. Data driven access to tools
US7305070B2 (en) * 2002-01-30 2007-12-04 At&T Labs, Inc. Sequential presentation of long instructions in an interactive voice response system
US6914975B2 (en) 2002-02-21 2005-07-05 Sbc Properties, L.P. Interactive dialog-based training method
US9646339B2 (en) 2002-09-16 2017-05-09 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US8103589B2 (en) 2002-09-16 2012-01-24 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US8332895B2 (en) 2002-09-16 2012-12-11 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US8151304B2 (en) 2002-09-16 2012-04-03 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US10373420B2 (en) 2002-09-16 2019-08-06 Touchtunes Music Corporation Digital downloading jukebox with enhanced communication features
US12100258B2 (en) 2002-09-16 2024-09-24 Touchtunes Music Company, Llc Digital downloading jukebox with enhanced communication features
US8584175B2 (en) 2002-09-16 2013-11-12 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US7822687B2 (en) 2002-09-16 2010-10-26 Francois Brillon Jukebox with customizable avatar
US11029823B2 (en) 2002-09-16 2021-06-08 Touchtunes Music Corporation Jukebox with customizable avatar
CA2406025A1 (en) * 2002-09-30 2004-03-30 Ibm Canada Limited-Ibm Canada Limitee Validating content of localization data files
US20040095388A1 (en) * 2002-11-15 2004-05-20 Rocchetti Robert J. Method and apparatus for creating user interfaces for computing devices
US7324912B2 (en) * 2002-11-25 2008-01-29 Lsi Logic Corporation Method, system and programming language for device diagnostics and validation
US8468227B2 (en) * 2002-12-31 2013-06-18 Motorola Solutions, Inc. System and method for rendering content on multiple devices
US7421438B2 (en) 2004-04-29 2008-09-02 Microsoft Corporation Metadata editing control
US7769794B2 (en) 2003-03-24 2010-08-03 Microsoft Corporation User interface for a file system shell
US7823077B2 (en) 2003-03-24 2010-10-26 Microsoft Corporation System and method for user modification of metadata in a shell browser
US7627552B2 (en) 2003-03-27 2009-12-01 Microsoft Corporation System and method for filtering and organizing items based on common elements
US7240292B2 (en) 2003-04-17 2007-07-03 Microsoft Corporation Virtual address bar user interface control
US7712034B2 (en) 2003-03-24 2010-05-04 Microsoft Corporation System and method for shell browser
US7925682B2 (en) 2003-03-27 2011-04-12 Microsoft Corporation System and method utilizing virtual folders
US7650575B2 (en) 2003-03-27 2010-01-19 Microsoft Corporation Rich drag drop user interface
CA2433527A1 (en) * 2003-06-26 2004-12-26 Ibm Canada Limited - Ibm Canada Limitee System and method for object-oriented graphically integrated command sh ell
CA2445427A1 (en) * 2003-10-17 2005-04-17 Ibm Canada Limited - Ibm Canada Limitee A method and system for editing column oriented programming language statements
US8024335B2 (en) 2004-05-03 2011-09-20 Microsoft Corporation System and method for dynamically generating a selectable search extension
US20050114818A1 (en) * 2003-11-21 2005-05-26 Lsi Logic Corporation Chip design command processor
US20050123892A1 (en) * 2003-12-05 2005-06-09 Cornelius William A. Method, system and program product for developing and utilizing interactive simulation based training products
US7451431B2 (en) * 2003-12-12 2008-11-11 International Business Machines Corporation Registry driven real-time configuration of resource management objects for deployment in an instance of an integrated solutions console
US7027586B2 (en) 2003-12-18 2006-04-11 Sbc Knowledge Ventures, L.P. Intelligently routing customer communications
US7657846B2 (en) 2004-04-23 2010-02-02 Microsoft Corporation System and method for displaying stack icons
US7694236B2 (en) 2004-04-23 2010-04-06 Microsoft Corporation Stack icons representing multiple objects
US8707209B2 (en) 2004-04-29 2014-04-22 Microsoft Corporation Save preview representation of files being created
US8302020B2 (en) 2004-06-25 2012-10-30 Apple Inc. Widget authoring and editing environment
US7761800B2 (en) 2004-06-25 2010-07-20 Apple Inc. Unified interest layer for user interface
US7546543B2 (en) 2004-06-25 2009-06-09 Apple Inc. Widget authoring and editing environment
US7490295B2 (en) 2004-06-25 2009-02-10 Apple Inc. Layer for accessing user interface elements
US7614016B2 (en) 2005-04-21 2009-11-03 Microsoft Corporation Multiple roots in navigation pane
USD548237S1 (en) * 2005-04-22 2007-08-07 Microsoft Corporation Image for a portion of a display screen
USD542803S1 (en) * 2005-04-22 2007-05-15 Microsoft Corporation Image for a portion of display screen
US8195646B2 (en) 2005-04-22 2012-06-05 Microsoft Corporation Systems, methods, and user interfaces for storing, searching, navigating, and retrieving electronic information
USD537832S1 (en) * 2005-04-22 2007-03-06 Microsoft Corporation Image for a portion of a display screen
USD530337S1 (en) * 2005-04-22 2006-10-17 Microsoft Corporation Image for a portion of a display screen
USD537083S1 (en) * 2005-04-22 2007-02-20 Microsoft Corporation Image for a portion of a display screen
USD537084S1 (en) * 2005-04-22 2007-02-20 Microsoft Corporation Image for a portion of a display screen
USD537833S1 (en) * 2005-04-22 2007-03-06 Microsoft Corporation Image for a portion of a display screen
USD530720S1 (en) * 2005-04-22 2006-10-24 Microsoft Corporation Image for a portion of a display screen
USD529918S1 (en) * 2005-04-22 2006-10-10 Microsoft Corporation Image for a portion of a display screen
USD539297S1 (en) * 2005-05-05 2007-03-27 Noviello Joseph C User interface for an electronic trading system for a computer screen
USD553140S1 (en) * 2005-05-05 2007-10-16 Espeed Inc. User interface for an electronic trading system for a computer screen
US7665028B2 (en) 2005-07-13 2010-02-16 Microsoft Corporation Rich drag drop user interface
US7694308B1 (en) * 2005-07-15 2010-04-06 Sprint Communications Company L.P. Enterprise application mapping tool and datastore with target state dimension
US7752556B2 (en) 2005-10-27 2010-07-06 Apple Inc. Workflow widgets
US7707514B2 (en) 2005-11-18 2010-04-27 Apple Inc. Management of user interface elements in a display environment
US7568162B2 (en) * 2006-06-09 2009-07-28 International Business Machines Corporation Visual helps while using code assist in visual tools
US20080098325A1 (en) * 2006-10-23 2008-04-24 Carnet Williams Method and system for facilitating social payment or commercial transactions
USD555660S1 (en) * 2006-12-08 2007-11-20 Espeed, Inc. User interface for an electronic trading system for a computer screen
US9171419B2 (en) 2007-01-17 2015-10-27 Touchtunes Music Corporation Coin operated entertainment system
US9330529B2 (en) 2007-01-17 2016-05-03 Touchtunes Music Corporation Game terminal configured for interaction with jukebox device systems including same, and/or associated methods
US12450978B2 (en) 2007-01-17 2025-10-21 Touchtunes Music Company Llc. Coin operated entertainment system
JP2008219501A (ja) * 2007-03-05 2008-09-18 Ricoh Co Ltd 画像処理装置、画像処理方法及び画像処理プログラム
US9953481B2 (en) 2007-03-26 2018-04-24 Touchtunes Music Corporation Jukebox with associated video server
US20080270919A1 (en) * 2007-04-27 2008-10-30 Kulp Richard L Context Based Software Layer
US8954871B2 (en) 2007-07-18 2015-02-10 Apple Inc. User-centric widgets and dashboards
US8332887B2 (en) 2008-01-10 2012-12-11 Touchtunes Music Corporation System and/or methods for distributing advertisements from a central advertisement network to a peripheral device via a local advertisement server
US10290006B2 (en) 2008-08-15 2019-05-14 Touchtunes Music Corporation Digital signage and gaming services to comply with federal and state alcohol and beverage laws and regulations
WO2010005569A1 (en) 2008-07-09 2010-01-14 Touchtunes Music Corporation Digital downloading jukebox with revenue-enhancing features
US20100031147A1 (en) * 2008-07-31 2010-02-04 Chipln Inc. Method and system for mixing of multimedia content
US12112093B2 (en) 2009-03-18 2024-10-08 Touchtunes Music Company, Llc Entertainment server and associated social networking services
US10564804B2 (en) 2009-03-18 2020-02-18 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
CN106056367A (zh) 2009-03-18 2016-10-26 踏途音乐公司 娱乐服务器及相关的社交网络系统
US9292166B2 (en) 2009-03-18 2016-03-22 Touchtunes Music Corporation Digital jukebox device with improved karaoke-related user interfaces, and associated methods
US10719149B2 (en) 2009-03-18 2020-07-21 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
CA2787380C (en) 2010-01-26 2017-05-09 Francois Beaumier Digital jukebox device with improved user interfaces, and associated methods
CN110097416B (zh) 2011-09-18 2022-05-10 踏途音乐公司 具有卡拉ok和照相亭功能的数字点播设备及相关方法
US11151224B2 (en) 2012-01-09 2021-10-19 Touchtunes Music Corporation Systems and/or methods for monitoring audio inputs to jukebox devices
USD705787S1 (en) * 2012-06-13 2014-05-27 Microsoft Corporation Display screen with animated graphical user interface
US9519701B2 (en) * 2012-12-26 2016-12-13 Sap Se Generating information models in an in-memory database system
US10296305B2 (en) 2013-09-27 2019-05-21 Rudolf Markus PETRI Method and device for the automated production and provision of at least one software application
US9921717B2 (en) 2013-11-07 2018-03-20 Touchtunes Music Corporation Techniques for generating electronic menu graphical user interface layouts for use in connection with electronic devices
HK1232320A1 (zh) 2014-03-25 2018-01-05 踏途音乐公司 具有改进的用户界面的数字点播设备和相关方法
US10782963B2 (en) * 2017-09-11 2020-09-22 Siemens Industry Software GmbH Introducing artifact information system and method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4912629A (en) * 1986-06-26 1990-03-27 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Real-time garbage collection for list processing using restructured cells for increased reference counter size
US4811240A (en) * 1986-12-22 1989-03-07 International Business Machines Corporation System for creating and controlling interactive graphic display screens
US5206951A (en) * 1987-08-21 1993-04-27 Wang Laboratories, Inc. Integration of data between typed objects by mutual, direct invocation between object managers corresponding to object types
US4989132A (en) * 1988-10-24 1991-01-29 Eastman Kodak Company Object-oriented, logic, and database programming tool with garbage collection
US5243697A (en) * 1989-03-15 1993-09-07 Sun Microsystems, Inc. Method and apparatus for selecting button functions and retaining selected options on a display
US5109336A (en) * 1989-04-28 1992-04-28 International Business Machines Corporation Unified working storage management

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010170553A (ja) * 2009-01-23 2010-08-05 Samsung Electronics Co Ltd コミュニティ・ウィジェット提供方法及びその装置

Also Published As

Publication number Publication date
FR2694105A1 (fr) 1994-01-28
US5974253A (en) 1999-10-26
EP0580509B1 (fr) 1999-05-19
US5696914A (en) 1997-12-09
EP0580509A1 (fr) 1994-01-26
KR0136349B1 (ko) 1998-06-15
JP3348853B2 (ja) 2002-11-20
DE69324966D1 (de) 1999-06-24
WO1994002895A1 (fr) 1994-02-03
DE69324966T2 (de) 1999-11-11
FR2694105B1 (fr) 1994-11-25

Similar Documents

Publication Publication Date Title
JPH06510879A (ja) ユーザインタフェースの記述用対話型ツールを作成するためにロードされたインタプリタ言語の利用
USRE37722E1 (en) Object-oriented system for the transparent translation among locales of locale-dependent application programs
US5630131A (en) Method and apparatus for importing and exporting archive files for a graphical user interface
US5652884A (en) Method and apparatus for dynamic update of an existing object in an object editor
US5564048A (en) Object-oriented functionality class library for use in graphics programming
Blanchette et al. C++ GUI programming with Qt 4
US5715416A (en) User definable pictorial interface for a accessing information in an electronic file system
Ousterhout Tcl: An embeddable command language
Reiss Interacting with the FIELD environment
RU2365978C2 (ru) Интерфейс программирования для компьютерной платформы
US5467448A (en) Text formatting by the direct selection of borders in an editing display
US5623657A (en) System for processing application programs including a language independent context management technique
EP0622729A2 (en) A user interface builder for a user interface server
KR20060087995A (ko) 작업 흐름을 모델링하는 방법 및 시스템
US20050289450A1 (en) User interface virtualization
JPH064280A (ja) ウィズィウィグ式エディターでオブジェクトをユーザ制御する機能を備えたグラフィカル・ユーザ・インターフェース
JPH01240978A (ja) 対話画面定義装置
Mitchell et al. DRIVE: an environment for the organised construction of user-interfaces to databases
WO1996015493A1 (en) Object-oriented operating system
JPH0683594A (ja) ウィズィウィグ式エディターとコンパイラーとを統合したグラフィカル・ユーザ・インターフェース
Achten et al. The beauty and the beast
Möller User interface management systems: the CLIM perspective
Clement et al. CENTAUR: Towards a “software tool box” for programming environments
Ashley et al. Foundations of pygtk development
Eng Qt 6 C++ GUI Programming Cookbook: Practical recipes for building cross-platform GUI applications, widgets, and animations with Qt 6

Legal Events

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