JPH06139035A - 計算機システムへの入力定義方法 - Google Patents

計算機システムへの入力定義方法

Info

Publication number
JPH06139035A
JPH06139035A JP4169888A JP16988892A JPH06139035A JP H06139035 A JPH06139035 A JP H06139035A JP 4169888 A JP4169888 A JP 4169888A JP 16988892 A JP16988892 A JP 16988892A JP H06139035 A JPH06139035 A JP H06139035A
Authority
JP
Japan
Prior art keywords
window
help
text
file
user interface
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
JP4169888A
Other languages
English (en)
Other versions
JP3177301B2 (ja
Inventor
Robert C Pike
チャールズ パイク ロバート
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.)
AT&T Corp
Original Assignee
American Telephone and Telegraph Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by American Telephone and Telegraph Co Inc filed Critical American Telephone and Telegraph Co Inc
Publication of JPH06139035A publication Critical patent/JPH06139035A/ja
Application granted granted Critical
Publication of JP3177301B2 publication Critical patent/JP3177301B2/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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Digital Computer Display Output (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

(57)【要約】 【目的】 エディタ、ウィンドウシステム、シェル、お
よびユーザインタフェースの組合せであって、ブラウ
ザ、デバッガ、メーラなどの文書アプリケーションの作
成のための新しい環境を提供するシステムを実現する。 【構成】 システムは、いくつかの自動的方法およびデ
フォルトをもつ極めて限定的なユーザインタフェースを
組み合わせて、最小のマウスおよびキーボード操作で多
くの効果を達成する。ユーザインタフェースは、プログ
ラムまたはシェルスクリプトから制御されるファイル指
向プログラミングインタフェースによって駆動される。
中心的ユーティリティでユーザインタフェースの問題に
ついて注意することにより、システムは、ビットマップ
ディスプレイおよびマウスを利用するアプリケーション
のプログラミングの仕事をさらに簡単化する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、一般的に、コンピュー
タへのユーザインタフェースに関し、特に、ウィンドウ
および位置決め装置を使用した対話形ユーザインタフェ
ースに関する。
【0002】
【従来の技術】UNIX(登録商標)システムへの適切
なグラフィカルユーザインタフェースの設計の問題は、
ビットマップディスプレイが初めてUNIXシステムに
取り付けられて10年経った今日でさえ、困難な問題で
あり大部分が未解決である。この10年で、グラフィカ
ルアプリケーションは、UNIXのいくつかの性質、特
に、プログラミングへの、パーツごとの、ツールによる
アプローチといった、UNIXを広めるのに貢献した性
質から、わき道にそれ、またはそれを覆すような主要な
サブシステムとなった。
【0003】いくつかの期待される最近の試み、特に、
ConMan(ポール・ハバーリ(Paul Haberli)著「C
onMan:対話形グラフィクスのための視覚的プログ
ラミング言語」Comp.Graph.第22巻第4
号、1988年8月、103〜110ページ)およびT
cl(ジョン・アウスタハウト(John Ousterhout)著
「Tcl:埋め込み可能コマンド言語」Proc.US
ENIX Winter1990 Conf.133〜
146ページ)はあるが、これらは、存在する環境内で
プロセス間通信を行い、確立したプログラムが互いに会
話することを可能にするという形式をとっている。
【0004】この問題に構造的にアプローチした者はな
い。さらに、これらは、全システムの機能性やプログラ
ム可能性を増大させることよりも、より巨大で、魅力的
で、一体型のグラフィクスサブシステムを提供すること
によって他のシステムとの差別化をするという主流に対
する少数の反例となっている。ソフトウェア開発者にと
って、この流行は問題である。最近のユーザインタフェ
ースツールキットおよびウィンドウシステムは、UNI
Xがそのエレガントで単純なアプローチによって取り除
いたシステムのように複雑である。
【0005】本発明のシステム(helpと呼ぶ)は、
文書アプリケーションのための改良されたユーザインタ
フェースを提供するために、ウィンドウシステム、シェ
ル、およびエディタの観点を組み合わせた実験的プログ
ラムである。helpは「ツールキット」ではない。h
elpは、ユーザとアプリケーションをつなぐ自己完結
的プログラムであり、ライブラリというよりはシェルに
近い。
【0006】アプリケーションの側からみると、hel
pは、周知のUNIXファイル操作に基づいて、小アプ
リケーション(シェル手続きでもよい)がシステムのグ
ラフィカルユーザインタフェースを利用し、互いに通信
することを可能にする普遍的通信機構を提供する。ユー
ザにとっては、インタフェースは非常に限られており、
テキスト、スクロールバー、1種類の単純なウィンド
ウ、および各マウスボタンに対する唯一のファンクショ
ンのみからなる。ウィジェットも、アイコンも、ポップ
アップメニューさえもない。こうした制限にもかかわら
ず、helpは、作業をする、特に、プログラミングを
するのに有効な環境である。
【0007】helpの起源は、ヴィルト(Wirth)およ
びグツクネヒト(Gutknecht)のOberonシステムに
ある(N.ヴィルトとJ.グツクネヒト著「Obero
nシステム」Software Practice a
nd Experience、1989年9月、第19
巻第9号、857〜894ページ、および、マーティン
・ライザー(Martin Reiser)著「Oberonシステ
ム」アディソン・ウェズレー刊、ニューヨーク、199
1年)。
【0008】Oberonは、ゼロックスのCedar
環境(W.タイテルマン(Teitelman)「Cedarの
旅」IEEEソフトウェア、第1巻第2号、44〜73
ページ)の顕著な特徴を抽出し、それを管理可能な大き
さのシステムで実現する試みである。これは、モジュー
ル言語(これもOberonと呼ばれる)に基づいてお
り、オペレーティングシステム、エディタ、ウィンドウ
システム、およびコンパイラを一様な環境内に統合した
ものである。
【0009】そのユーザインタフェースは特に単純であ
る。マウスを使用してディスプレイ上のテキストをポイ
ントすることにより、システムのどのサブルーチンを次
に実行するかを指示する。通常のUNIXシェルでは、
実行するファイルの名前をタイプ入力する。その代わり
に、Oberonでは、マウスの特定のボタンで、モジ
ュールおよびそのモジュール内のサブルーチンを選択す
る。例えば、編集するためにファイルをオープンするに
はEdit.Openを選択する。インタフェースのほ
ぼ全体はこの単純なアイデアに従っている。
【0010】
【発明が解決しようとする課題】Oberonシステム
の主な困難は、シングルプロセスを有し、言語指向であ
ることである。現代のコンピューティングシステムは一
般的にマルチプロセスシステムであり、言語指向ではな
くファイル指向である。従って、本発明の目的は、この
ようなマルチプロセスおよびファイル指向コンピューテ
ィングシステムにおいて、Oberonのユーザインタ
フェースの利点を確保することである。
【0011】
【課題を解決するための手段】本発明の1つの目的は、
ウィンドウを有するコンピュータシステムへの入力を定
義する方法を与えることである。本方法は、ウィンドウ
にコンテクストを対応させるステップと、ウィンドウの
任意の場所から選択されたテキストの文字列を受け取る
ステップと、テキストの文字列をコンテクストとともに
入力として提供するステップからなる。
【0012】
【実施例】以下で、helpによって提供されるユーザ
インタフェースの基礎をまず説明する。続いて、ユーザ
インタフェースが、プログラムのバグを探索し修正する
際にどのように使用されるかという例を与える。
【0013】[基本ユーザインタフェース:図1〜3]
所望される実施例では、helpはウィンドウに表示
されたテキストにのみ作用する。他の実施例では、本発
明の技術は、アイコンやその他の要素の非テキスト表現
とともに使用可能である。所望される実施例では、he
lpへのインタフェースは3ボタンマウスおよびキーボ
ードである。他の実施例では、1および2ボタンマウス
やペン装置を含む、他の位置決め装置が使用可能であ
る。
【0014】基本的操作は、キーボードでテキストをタ
イプ入力することと、マウスボタンで画面を制御しコマ
ンドを実行することである。テキストは左および中マウ
スボタンで選択される。中ボタンは、実行される作用を
定義するテキストを選択する。左ボタンは、その作用の
対象を選択する。右ボタンは、ウィンドウの配置を制御
する。タイプ入力によってコマンドを実行しないことに
注意すべきである。ニューラインは単なる文字である。
【0015】インタフェースの設計においては、いくつ
かの相互関連する規則に従う。この規則は、ユーザにと
ってできるだけ効率的で快適なシステムを作るように意
図されている。第1に、簡潔さである。インタフェース
における作用(ボタンクリックやその他の動作)には、
システムに直接影響を与えないような作用はない。従っ
て、例えば、helpは「クリックしてタイプする」シ
ステムではない。そのクリックは無駄になるためであ
る。また、ポップアップメニューは存在しない。そのメ
ニューを表示させるのに要する動作は無駄になるためで
ある。
【0016】第2に、再タイプ入力がない。既に画面上
にあるテキストを再タイプ入力することは不要であり、
所望されることもない。多くのシステムでは、ユーザ
が、画面上のテキストを入力ストリームにコピーするこ
とが可能であるが、ファイル名のような短いテキストで
は、マウスを使用してそれを移動するよりもテキストを
再タイプ入力するほうが容易に思われることがしばしば
ある。従って、全く新しいテキストをタイプ入力しない
場合、例えばソースコードをブラウズする場合やデバッ
グする場合は、全くキーボードを使用せずに効率的かつ
快適に作業することが可能であるべきである。
【0017】第3に、自動化である。細部を埋めること
や平凡な決定は機械に任せる。例えば、ファイル名をポ
イントするだけで十分であり、文字列全体にわたってマ
ウスを通過させる必要はない。最後に、デフォルトであ
る。最も一般的に使用する機能はデフォルトにすべきで
ある。同様に、最小の作用で最も有用なことを行うべき
である。複雑な作用は、まれに、そして、タスクが異常
に困難であるときにのみ必要とされるべきである。
【0018】図1では、help画面101が、(一般
的に)2つの左右分割コラム115(a)および(b)
に配置された、編集可能テキストのウィンドウ103で
タイル表示されている。他の実施例では、単一コラムま
たは2より多くのコラムを有することも可能である。図
1は、セッション中のhelp画面101である。各ウ
ィンドウ103は2個のサブウィンドウ、その上部の1
個のタグ行105およびテキストの本体107を有す
る。タグ105は一般的に、そのテキスト(またはその
コピー)が本体107に表示されているファイルの名前
を含む。
【0019】各サブウィンドウ(タグ105または本体
107)のテキストは、システムに統合された単純なカ
ットアンドペースト(切り抜き−貼り付け)型エディタ
を使用して編集される。左マウスボタンはテキストを選
択する。選択されるのは、ボタンが押された点と離され
た点の間のテキストである。各サブウィンドウは固有の
選択を有する。1つのサブウィンドウ(最新の選択また
はタイプ入力テキストをもつサブウィンドウ)は、カレ
ント選択109の位置であり、その選択は反転表示され
る。他のサブウィンドウの選択は、PS111のように
枠表示される。
【0020】タイプ入力されたテキストは、マウス下の
サブウィンドウの選択を置換する。右マウスボタンが、
ウィンドウ103の再配置のために使用される。ウィン
ドウ103のタグ105をポイントし、右ボタンを押
し、所望の位置にウィンドウをドラッグし、ボタンを離
す。続いてhelpは、ウィンドウを新しい位置にドロ
ップするのに必要な局所的再配置を行う(自動化の規
則)。これには、いくつかのウィンドウを重ねること
や、移動されたウィンドウまたは他のウィンドウの位置
の調整が含まれる。helpは、ウィンドウの少なくと
もタグは完全に可視状態にしようと試みる。これが不可
能な場合、ウィンドウは完全に覆われる。
【0021】小さい黒色のタブ113のタワーは、ウィ
ンドウごとに、各コラム115の左端に存在する。これ
らのタブ113は、そのコラム115のウィンドウを、
可視か不可視かにかかわらず、コラムの最上部から最下
部の順で表示し、左マウスボタンでクリックすると、対
応するウィンドウを、そのタグ105からそれが属する
コラムの最下部までの領域で、完全に可視にする。コラ
ムの最上部の同様の行によって、コラムを水平に拡大す
ることができる。これらの小タブは、多くの重なり合う
ウィンドウを管理する問題に対する解決法である。
【0022】左マウスボタンと同様に、中マウスボタン
もまたテキストを選択するが、ボタンを離す動作によっ
てテキストは選択されたままの状態になるのではなく、
そのテキストによって示されるコマンドを実行する。例
えば、画面からあるテキストを切り抜くには、左ボタン
でそのテキストを選択し、続いて中ボタンで、ディスプ
レイのどこかにあるCut119の語を選択する。(約
束として、大文字で始まるコマンドは組み込みコマンド
を表す。)
【0023】普通のカットアンドペースト型エディタの
ように、切り抜かれたテキストはバッファに記憶され、
テキストの他の場所に貼り付けられることになる。コマ
ンド名のテキストがディスプレイ上に存在しない場合に
は、それをタイプ入力し、中ボタンで選択することによ
って実行する。Cut119は、通常のウィンドウシス
テムの意味での「ボタン」ではないことに注意すべきで
ある。これは、どこに現れようとも、何らかの動作のた
めの単なる語である。
【0024】物事を簡単にするために、helpは語の
任意の場所における中ボタンクリック(ダブルクリック
ではない)を語全体の選択と解釈する(デフォルトの規
則)。従って、単にテキストを普通に選択し、中ボタン
でCutをクリックすることとなり、一般的なポップア
ップメニューの場合よりもマウス操作が少なくなる。図
2の201のように、実行のために選択されたテキスト
には下線が付される。矢印202は現在のカーソル位置
を示す。厳格な規則として、選択または実行されたテキ
ストが空文字列の場合、helpは自動動作を呼び出
し、これをファイル名または同様のコンテクスト依存ブ
ロックのテキストに展開する。テキストが空でない場合
は、文字どおりに解釈される。
【0025】特別の加速法として、helpは、同時マ
ウスボタンによって呼び出される2つのコマンドを有す
る。左ボタンが選択後押されたままの状態で、中ボタン
をクリックするとCutが実行される。また、同じく右
ボタンをクリックするとPasteが実行され、選択さ
れたテキストがカットバッファの内容で置換される。こ
れらは最もありふれた編集コマンドであり、これらを実
行するためにマウスを移動するのは不便である(簡潔さ
およびデフォルトの規則)。左ボタンを押したまま、さ
らに中および右ボタンをクリックしてカットアンドペー
ストを実行する、すなわち、後の貼り付けのためにカッ
トバッファにテキストを記憶することもできる。
【0026】実行のために複数の語を選択することもで
きる。Open /usr/rob/lib/prof
ileを実行すると、新しいウィンドウが作成され、そ
の中にファイルの内容が入る。(ファイルが既にオープ
ンされている場合は、このコマンドは単にウィンドウが
可視であることを保証する。)再び、自動化の規則によ
って、新ウィンドウの位置はhelpによって決められ
ることになる。
【0027】従来のウィンドウシステムにおける一般的
なシェルウィンドウでは、テキストを、タイプ入力文字
からコピーしてシェルへの入力として提示し、ある種の
ヒストリー機能を実現することが可能である。すなわ
ち、以前のコマンドの再実行の能力がある。help
は、そうではなく、将来を予測しようとする。すなわ
ち、後で有用となる画面コマンドおよびテキストに到達
しようとする。
【0028】画面上のテキストのどの一部も潜在的なコ
マンドまたはコマンドの引数である。基本コマンドの多
くはファイルシステムから画面へテキストを最小の動作
で引き出す。例えば、Openが引数なしで実行された
場合、最新の選択に含まれるファイル名を使用する(デ
フォルトの規則)。従って、新しいファイルを編集する
には、単に、左ボタンでファイル名をポイントし、中ボ
タンでOpenをポイントすればよい。
【0029】上記の4つの規則をすべて使用しても、O
penがスラッシュ(/)で開始しないファイル名の空
選択に適用された場合、ディレクトリ名がウィンドウの
タグのファイル名から抽出され、選択されたファイル名
に前置される。これのエレガントな使用は、ディレクト
リの処理においてなされる。ディレクトリがOpenさ
れると、helpは、最後のスラッシュも含めてその名
前121をタグに置き、本体内にその内容123(すな
わち、ディレクトリ内のファイルの名前)をリストす
る。
【0030】例えば、図3のように、ソースファイル/
usr/rob/src/help/help.c中の
dat.h301をポイントし、Openを実行するこ
とにより、/usr/rob/src/help/da
t.hの内容を含む新しいウィンドウ305が作成され
る。必要なのは2度のボタンクリックのみである。非空
選択によって、このような自動動作はすべて無効とな
り、結果のテキストは選択されたものの通りとなる。
【0031】Openがディレクトリ名を前置するとい
うことは、各ウィンドウにコンテクストを与える。ここ
でのコンテクストは、ファイルが存在するディレクトリ
である。ファイルに作用するさまざまなコマンドは、組
み込みコマンドも外部コマンドも、実行するディレクト
リ307をウィンドウ305のタグ行105から導出す
る。helpには、カレント作業ディレクトリという明
示的概念はない。各コマンドは、そのオペランドに対し
て適切なディレクトリで作用する。
【0032】Openコマンドはもう1つの意味を有す
る。ファイル名に、例えばhelp.c:27のように
コロンおよび整数が添加された場合、ウィンドウは、指
示された行が可視となり選択されるように位置づけられ
る。以下の例では行番号のみが指定されているが、he
lpの文法では、一般的な位置を指定することも可能で
ある。
【0033】外部オペレーティングシステムコマンドを
実行することも可能である。コマンドがOpenのよう
な組み込みコマンドでない場合、それは実行可能ファイ
ルであると仮定され、引数は実行されるコマンドに引き
渡される。例えば、中ボタンでgrep ’^mai
n’ /sys/src/cmd/help/*.cと
いうテキストを選択した場合、通常のgrepコマンド
が実行される。
【0034】再び、デフォルトの規則が役割を果たして
いる。コマンドを含むウィンドウ103のタグ行105
がファイル名を有するが、コマンドがスラッシュで開始
していない場合、そのファイルのディレクトリがコマン
ドに前置する。コマンドが発見できない場合、コマンド
は通常のディレクトリ/bin内を検索される。コマン
ドの標準入力は/dev/nullに接続される。標準
およびエラー出力はErrorsと呼ばれる特殊ウィン
ドウに向けられる。これは必要ならば自動的に作成され
る。Errorsウィンドウはまた組み込みコマンドに
よってプリントされるメッセージの宛先でもある。
【0035】[操作例:図4〜11] これらの規則の
相互作用および結果は、動作中のシステムを観察するこ
とによって容易に理解される。以下の例では、help
システムはプログラム中の単純なバグを修正するために
使用される。バグは、Seanという名のユーザによっ
て送信されたメールメッセージに報告されている。
【0036】helpが起動されると、初期の2コラム
画面の右側のコラム内に一連の「ツール」をロードす
る。これらは、/help/edit/stf(hel
pエディタが提供するもの(stuff))、/hel
p/mail/stfなどの名前をもつファイルであ
る。これらはそれぞれ、適当なディレクトリ内に収集さ
れた、ツールの一部として利用可能なコマンドの名前を
リストした普通のテキストファイルである。
【0037】このようなファイルに対しhelpウィン
ドウはメニューのようにふるまうが、本当は単に普通の
ファイル上のウィンドウである。有用な性質は、hel
pの規則によって適用されるファイルの解釈から生じる
ものであり、ファイルに固有のものではない。図4で
は、メールが、メールツールのプログラムheader
sを実行することによって読み出される。
【0038】すなわち、ファイル/help/mail
/stfを含むウィンドウ401内の語headers
403上で中マウスボタンをクリックする。これによ
り、タグ407から収集された、ファイル/help/
mail/stf405のディレクトリ名が、実行され
る語headersに前置されることによって、プログ
ラム/help/mail/headersが実行され
る。この簡単な機構により、ディレクトリ内のプログラ
ムの集まりの管理が容易になる。
【0039】図5では、headersはメールメッセ
ージのヘッダを含む新しいウィンドウ501を作成し、
それに/mail/box/rob/mboxとラベル
する。Seanがメールを送ってきたことが分かったの
で、そのメールのヘッダ503をポイントし(ヘッダ行
の任意の場所を左ボタンでポイントするだけでよい)、
messages505をクリックする。
【0040】helpは図6のように応答する。左側コ
ラム115(a)内に新しいウィンドウ601がオープ
ンされる。メッセージ603がウィンドウ601内に表
示される。メッセージ603は、helpの新バージョ
ンがクラッシュし、壊れたプロセスが検査を待っている
状態であることを示している。メッセージは、壊れたプ
ロセスのプロセス番号603を含んでいる。プロセスの
スタックを見るために必要なことは、プロセス番号60
3をポイントし、デバッガツール/help/db/s
tfのウィンドウ605内のstack607を実行す
ることだけである。
【0041】stackプログラムの実行の結果が図7
である。新しいウィンドウ701がコラム115(a)
内に現れている。ウィンドウ701の内容703は、プ
ロセスによってなされたコールのトレースバックであ
る。この新ウィンドウがその中に多くのファイル名を有
することに注意すべきである。これらは、壊れたプログ
ラムのシンボルテーブルから抽出されている。
【0042】停止した(アセンブリ言語の)行を見るに
は、エントリ/sys/src/libc/mips/
strchr.s:34(705)をポイントしてOp
enを実行すればよいが、問題はおそらくコールスタッ
クにある。helpの最も深いルーチンはtextin
sert707であり、これはファイルtext.cの
32行でstrlenをコールしている。
【0043】問題が生じたと思われる場所を見るには、
スタックウィンドウの対応するテキストをポイントし、
Openを実行してソースを見る。それが図8のウィン
ドウ801である。問題点は見えてきた。807で示さ
れているように、strlenの引数sが0であり、ル
ーチンerrsによってtextinsertへの引数
として渡され、さらに、ルーチンerrsはそれをXd
ie2からの引数として得ているようである。
【0044】text.cのウィンドウをクローズする
には、ウィンドウ801のタグ内のClose!809
をヒットする。約束として、感嘆符で終わるコマンドは
引数を取らない。それは、実行されるウィンドウに作用
するウィンドウ操作である。次の段階は、スタックトレ
ース703をポイントして再びOpenすることによ
り、Xdie2という名の疑わしいソースを検査するこ
とである。
【0045】helpは図9のように応答する。ウィン
ドウ901はexec.cの252行(反転表示)を含
む。問題は難しくなった。errs903によって渡さ
れた引数は、グローバルであることが分かる変数n90
5である。どうしてこれが0になったのか。ウィンドウ
909内のCブラウザツール/help/cbr/st
fを使用する。このウィンドウ内のプログラムuses
*.cは、与えられたファイル内の与えられた変数へ
のすべての参照を表示する。
【0046】uses *.cを使用して/usr/r
ob/src/help/*.cにおける変数nへのす
べての参照を発見するには、ソーステキスト中の変数を
ポイントし、uses *.cを実行する。この実行
は、これら両方の「単語」を/help/cbr/st
f内で中ボタンで掃引することによってなされる。図1
0のように、usesは、リストを含む新しいウィンド
ウ1001を作成する。リストには、ファイル/usr
/rob/src/help/*.cにおける変数nへ
のすべての参照の位置が、ファイル名および行番号によ
って示される。Cブラウザの実現は後で説明する。簡単
に言えば、それは、Cソースを解析し、シンボルを動的
に解釈する。
【0047】ウィンドウ1001内のリストの第1項目
は明らかにヘッダファイル中の宣言である。help.
c:35(1003)が初期化であるように見える。そ
こで、Open help.cを使用して、その行を検
査し、変数が実際に初期化されていることを確認する。
このOpenの結果が図11である。ウィンドウ110
1は、1103において、help.cの35行を示し
ている。この行は、n905がセットされたことを示し
ている。
【0048】nのその他の使用がそれをクリアしたはず
である。exec.cの252行はそのコールである
が、変数の読み出しであって書き込みではない。次の可
能性はexec.c:213である。それをポイント
し、再びOpenを使用すると、ウィンドウ1107が
現れる。1109の反転表示から分かるように、nは0
にセットされている。Xdie2が実行される前のどこ
かで、Xdie1がnをクリアしたことになる。バグの
修正は、Cut1111を選択して悪い行を除去し、変
更されたウィンドウのタグに現れているPut!を選択
してファイルを書き戻し、続いて/help/cbrの
mk1113を選択してプログラムをコンパイルするこ
とにより、行われる。この例の全デバッグ操作がキーボ
ードに触れずに行われたことに注意すべきである。
【0049】この例は、helpの一般的性質の他にい
くつかのことを示している。複数のディレクトリのファ
イルおよびコマンドで作業をするのが容易である。he
lpがコンテクストからファイル名を構成する規則、お
よび、同様に、ユーティリティが実行されているコンテ
クストを導出する規則は、分散した要素から構成される
プログラムおよびその他のシステムの管理を単純化す
る。
【0050】さらに、テキストおよびファイル名につい
てのいくつかの共通規則によって、多くのアプリケーシ
ョンが単一のユーザインタフェースを通して対話するこ
とができる。例えば、ツールプログラムには、キーボー
ドまたはマウスと直接対話するコードを有するものはな
かった。しかしhelpはアプリケーションに対してマ
ウス位置のファイルおよび文字オフセットを引き渡す。
次節で説明されるインタフェースを使用して、アプリケ
ーションはウィンドウ内のテキストを検査して、ユーザ
が何をポイントしているかを知ることができる。これら
の操作は、次節で与えられる例のように、簡単なシェル
スクリプトで容易に実現される。
【0051】[プログラムによって見たインタフェー
ス] helpは、クライアントプロセスに対し、その
構造へのアクセスを、ファイルサービスを提示すること
によって提供する。(ロブ・パイク(Rob Pike)他著「ベ
ル研からのプラン9」Proc. of the Su
mmer 1990 UKUUG Conf.、ロンド
ン、1990年7月、1〜9ページ参照。)
【0052】各helpウィンドウは番号づけられたデ
ィレクトリに格納された一連のファイルによって表現さ
れる。各ディレクトリの番号は、UNIXのプロセスi
dと同様の、固有の識別子である。各ディレクトリはt
agおよびbodyのようなファイルを含み、これらは
対応するサブウィンドウの内容を回復するために読まれ
る。各ディレクトリはまたctlというファイルを含
み、これに対して、ウィンドウの内容のテキストの挿入
および削除のような変化を実行するメッセージが書き込
まれる。
【0053】helpディレクトリは通常/mnt/h
elpにマウントされる。従って、ウィンドウ番号7の
本体内のテキストをファイルにコピーするには、次のよ
うに実行すればよい。 cp /mnt/help/7/body ファイル テキストパターンを検索するには、次のようにする。 grep パターン /mnt/help/7/bod
y ASCIIファイル/mnt/help/index
は、タグファイル名をウィンドウ番号と接続するために
検査される。このファイルの各行はウィンドウ番号、タ
ブ、およびタグの第1行である。
【0054】新しいウィンドウを作成するには、プロセ
スは/mnt/help/new/ctlをオープン
し、これは現在の選択されているテキストの近くの画面
上に自動的に新しいウィンドウを置く。次に、プロセス
は、そのファイルから、作成されたウィンドウの名前
(例えば/mnt/help/8)を読み出す。審ウィ
ンドウの位置および大きさは、通常、helpによって
決定される。
【0055】[Cブラウザの要素の実現] ディレクト
リ/help/cbrは上記で使用したCブラウザを含
む。プログラムのうちの1つはdeclと呼ばれる。こ
れは、選択されたテキストによってマークされた変数の
宣言を発見する。左ボタンで変数をポイントし、ファイ
ル/help/cbr/stfのウィンドウ909内の
declを実行する。helpは、実行されるテキスト
に対するコンテクスト規則を使用して/help/cb
r/declを実行し、環境変数helpselを通じ
て、選択されたテキストのコンテクスト(ウィンドウ番
号および位置)を引き渡す。
【0056】Declはシェル(rc)スクリプトであ
る。次に完全なプログラムを示す。 eval `{help/parse −c} x=`{cat /mnt/help/new/ctl} { echo a echo $dir/’ Close!’ } | help/buf > /mnt/help/$x/ctl { cpp $cppflags $file | help/rcc −w −g −i$id −n$line | sed lq } > /mnt/help/$x/bodyapp
【0057】第1行は小さいプログラムhelp/pa
rseを実行する。これは、$helpselを検査
し、ユーザがポイントしているものを記述する他の環境
変数のセットfile、id、およびlineを設定す
る。次に、新しいウィンドウ103を作成し、xをその
番号にセットする。第1ブロックはディレクトリ名をタ
グ行105に書く。第2ブロックは、もとのソースファ
イルに対してCプリプロセッサを起動し、その結果生じ
たテキストを特殊バージョンのコンパイラに渡す。
【0058】このコンパイラはコードジェネレータを持
たず、プログラムを解析し、シンボルテーブルを管理
し、ファイルの適当な行に示された識別子に対する宣言
を発見すると、その宣言のファイル座標をプリントす
る。これは標準出力に現れ、/mnt/help/$x
/bodyappに書き込むことによって新ウィンドウ
に付加される。続いて、その出力をポイントしてOpe
nによってソース中の適当な行を表示することができ
る。(helpの将来の変更によって、このループを閉
じる際にOpen動作も自動的に生じるようになるであ
ろう。)従って、たった3度のボタンクリックによっ
て、変数、関数、型、またはその他のCのオブジェクト
の宣言を、その宣言がどのファイルに存在しようともそ
れを画面に持ってくることができる。
【0059】この例についていくつかの注意点を挙げ
る。第1に、helpはすべてのユーザインタフェース
を提供している。コンパイラをブラウザに変えるには、
コードジェネレータをコンパイラから取り除き、異なる
ブラウズ関数のためのユーザインタフェースに接続する
ために5、6個の短いシェルスクリプトを書くために、
数時間を要するのみである。他の言語が与えられれば、
同じ結果を達成するためには、コンパイラを修正するだ
けでよい。ユーザインタフェースソフトウェアを書く必
要がないのである。第2に、生じたアプリケーションは
一体型ではない。他の目的や実験のために調整され変形
されることが可能な小さいシェルスクリプトの組であ
る。
【0060】他のアプリケーションも同様に設計され
る。例えば、ウィンドウ605のデバッガインタフェー
ス/help/dbは、adbをhelpに接続するた
めの、それぞれ約10行からなる、10数個の短いシェ
ルスクリプトのディレクトリである。adbは有名な隠
れた入力言語を有する。/help/db内のコマンド
は、好まれない文法を隠しながら、システムの残部に接
続する使いやすい操作として、adbの最も重要な関数
を含んでいる。
【0061】adbに慣れていない者は、壊れたプロセ
スを検査するために、helpのインタフェースを容易
に使用することができる。もちろん、これは総合的なデ
バッガとはとてもいえないが、約1時間で書かれ、原理
を例示している。これは原型であり、helpはこのよ
うなテストプログラムを作成するためのプログラミング
しやすい環境である。より高度なデバッガは、バックグ
ラウンドに存在するデバッグプロセスを除き、help
コマンドにその要求を送らせることによって、同様の方
法で組み立てられる。
【0062】helpの最も重要な特徴は、すべてのア
プリケーションが共有する快適でプログラミングが容易
なユーザインタフェースを提供することである。これ
は、新しいアプリケーションのための対話型「フロント
エンド」を提供する仕事を非常に簡単化する。help
は、ウィンドウシステムのためのユーザインタフェース
を提供する原型システムとして有用であり、これからの
新しいソフトウェアツールの作成という仕事への集中か
らプログラマを解放する。
【0063】以上で、ウィンドウおよびマウスをもつデ
ィスプレイ装置によってシステムと対話するコンピュー
タシステムのための改良されたユーザインタフェースの
作成および使用方法を説明した。所望される実施例で
は、3ボタンマウスが使用されるが、他の実施例では、
他の位置決め装置も使用される。また、ウィンドウは、
所望される実施例では、ディスプレイ装置上でタイル表
示されるが、他の実施例では単純に重ね合わせてもよ
い。さらに、所望される実施例はウィンドウ内に表示さ
れたテキスト文字列のみを処理したが、他の実施例で
は、アイコンおよびその他のウィンドウ内の要素の表現
を処理することができる。最後に、タグおよび本体を分
離し、アクティブ位置を示すために使用される技術は、
他の実施例では異なっていてよい。
【0064】
【発明の効果】以上述べたごとく、本発明によれば、す
べてのアプリケーションが共有する快適でプログラミン
グが容易なユーザインタフェースが提供される。これに
よって、新しいアプリケーションのための対話型「フロ
ントエンド」を提供する仕事が非常に簡単化される。h
elpは、ウィンドウシステムのためのユーザインタフ
ェースを提供する原型システムとして有用である。
【図面の簡単な説明】
【図1】本発明によって提供されるディスプレイの図で
ある。
【図2】コマンドがディスプレイから入力される図であ
る。
【図3】コンテクストが名前に対して定義される図であ
る。
【図4】メールヘッダを読み出す操作が定義される図で
ある。
【図5】ヘッダがウィンドウに表示される図である。
【図6】プロセスのスタックを観察する操作が定義され
る図である。
【図7】スタックの一部が表示され、関数のコードの一
部が観察のために選択される図である。
【図8】コードの選択された部分がウィンドウに表示さ
れる図である。
【図9】変数が使用されている場所を検索する操作が定
義される図である。
【図10】変数が使用されている場所がウィンドウに表
示される図である。
【図11】変数が使用されている場所のコードがウィン
ドウに表示される図である。
【符号の説明】
101 help画面 103 ウィンドウ 105 タグ行 107 テキスト本体 109 カレント選択 115 コラム 202 矢印 305 ウィンドウ 307 ディレクトリ 401 ウィンドウ 407 タグ 501 ウィンドウ 503 ヘッダ 601 ウィンドウ 603 メッセージ(プロセス番号) 605 ウィンドウ 701 ウィンドウ 703 スタックトレース 801 ウィンドウ 901 ウィンドウ 1001 ウィンドウ 1101 ウィンドウ 1107 ウィンドウ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 ウィンドウを有する計算機システムにお
    いて、 ウィンドウにコンテクストを対応させるステップと、 ウィンドウの任意の場所から選択されたテキスト文字列
    を受け取るステップと、 テキスト文字列をコンテクストとともに入力として提供
    するステップからなることを特徴とする、計算機システ
    ムへの入力を定義する方法。
JP16988892A 1991-06-07 1992-06-05 計算機システムへの入力提供方法 Expired - Fee Related JP3177301B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US71221291A 1991-06-07 1991-06-07
US712212 1991-06-07

Publications (2)

Publication Number Publication Date
JPH06139035A true JPH06139035A (ja) 1994-05-20
JP3177301B2 JP3177301B2 (ja) 2001-06-18

Family

ID=24861198

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16988892A Expired - Fee Related JP3177301B2 (ja) 1991-06-07 1992-06-05 計算機システムへの入力提供方法

Country Status (6)

Country Link
US (1) US5579469A (ja)
EP (1) EP0517486B1 (ja)
JP (1) JP3177301B2 (ja)
AU (1) AU642597B2 (ja)
CA (1) CA2069355C (ja)
DE (1) DE69231431T2 (ja)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5583984A (en) * 1993-06-11 1996-12-10 Apple Computer, Inc. Computer system with graphical user interface including automated enclosures
US5956030A (en) * 1993-06-11 1999-09-21 Apple Computer, Inc. Computer system with graphical user interface including windows having an identifier within a control region on the display
US5487143A (en) * 1994-04-06 1996-01-23 Altera Corporation Computer user interface having tiled and overlapped window areas
US5793966A (en) * 1995-12-01 1998-08-11 Vermeer Technologies, Inc. Computer system and computer-implemented process for creation and maintenance of online services
US5724506A (en) * 1995-05-05 1998-03-03 Apple Computer, Inc. Replaceable and extensible connection dialog component of a network component system
US5809248A (en) 1995-07-05 1998-09-15 Sun Microsystems, Inc. Method and apparatus for front end navigator and network architecture for performing functions on distributed files in a computer network
US5889518A (en) * 1995-10-10 1999-03-30 Anysoft Ltd. Apparatus for and method of acquiring, processing and routing data contained in a GUI window
US6222542B1 (en) 1995-10-10 2001-04-24 Anysoft, Ltd Apparatus for and method of acquiring, processing and routing data contained in a GUI window
US5903269A (en) * 1995-10-10 1999-05-11 Anysoft Ltd. Apparatus for and method of acquiring processing and routing data contained in a GUI window
US6088515A (en) 1995-11-13 2000-07-11 Citrix Systems Inc Method and apparatus for making a hypermedium interactive
US7555529B2 (en) * 1995-11-13 2009-06-30 Citrix Systems, Inc. Interacting with software applications displayed in a web page
US6370552B1 (en) 1997-05-14 2002-04-09 Citrix Systems, Inc. Apparatus and method for displaying application output in an HTML document
US6950991B2 (en) 1995-11-13 2005-09-27 Citrix Systems, Inc. Interacting with software applications displayed in a web page
US6437803B1 (en) 1998-05-29 2002-08-20 Citrix Systems, Inc. System and method for combining local and remote windows into a single desktop environment
US5805815A (en) * 1995-12-18 1998-09-08 At&T Corp. Method and apparatus for providing interim data displays while awaiting of retrieval linked information
US6061740A (en) * 1996-12-09 2000-05-09 Novell, Inc. Method and apparatus for heterogeneous network management
KR100265142B1 (ko) * 1997-02-25 2000-09-01 포만 제프리 엘 관련된웹페이지와동시에도움말윈도우를디스플레이하기위한방법및장치
US5941949A (en) * 1997-05-14 1999-08-24 Citrix Systems, Inc. System and method for transmitting data from a server application to more than one client node
US5961586A (en) * 1997-05-14 1999-10-05 Citrix Systems, Inc. System and method for remotely executing an interpretive language application
US6157944A (en) * 1997-05-14 2000-12-05 Citrix Systems, Inc. System and method for replicating a client/server data exchange to additional client notes connecting to the server
US6026233A (en) * 1997-05-27 2000-02-15 Microsoft Corporation Method and apparatus for presenting and selecting options to modify a programming language statement
US6389464B1 (en) 1997-06-27 2002-05-14 Cornet Technology, Inc. Device management system for managing standards-compliant and non-compliant network elements using standard management protocols and a universal site server which is configurable from remote locations via internet browser technology
US6052512A (en) * 1997-12-22 2000-04-18 Scientific Learning Corp. Migration mechanism for user data from one client computer system to another
US6120298A (en) * 1998-01-23 2000-09-19 Scientific Learning Corp. Uniform motivation for multiple computer-assisted training systems
US6293801B1 (en) 1998-01-23 2001-09-25 Scientific Learning Corp. Adaptive motivation for computer-assisted training system
US6146147A (en) * 1998-03-13 2000-11-14 Cognitive Concepts, Inc. Interactive sound awareness skills improvement system and method
US6067638A (en) * 1998-04-22 2000-05-23 Scientific Learning Corp. Simulated play of interactive multimedia applications for error detection
US6110227A (en) * 1998-06-24 2000-08-29 Microsoft Corporation Systems and methods for pre-processing variable initializers
US6511324B1 (en) 1998-10-07 2003-01-28 Cognitive Concepts, Inc. Phonological awareness, phonological processing, and reading skill training system and method
US6928469B1 (en) 1998-12-29 2005-08-09 Citrix Systems, Inc. Apparatus and method for determining a program neighborhood for a client node in a client-server network using markup language techniques
US6427232B1 (en) 1999-06-10 2002-07-30 International Business Machines Corporation Functional debugger for debugging software programs
US6462757B1 (en) 1999-06-30 2002-10-08 International Business Machines Corporation Method, system and computer program product for locating a window of a windows operating system in a computer system
US6299452B1 (en) * 1999-07-09 2001-10-09 Cognitive Concepts, Inc. Diagnostic system and method for phonological awareness, phonological processing, and reading skill testing
US6538667B1 (en) 1999-07-23 2003-03-25 Citrix Systems, Inc. System and method for providing immediate visual response to user input at a client system connected to a computer system by a high-latency connection
US6993710B1 (en) * 1999-10-05 2006-01-31 Borland Software Corporation Method and system for displaying changes of source code
US6755657B1 (en) 1999-11-09 2004-06-29 Cognitive Concepts, Inc. Reading and spelling skill diagnosis and training system and method
IL133698A0 (en) * 1999-12-23 2001-04-30 Metzger Ram Pointing device
US6519588B1 (en) * 2000-04-03 2003-02-11 Mro Software, Inc. System and method for representing related concepts
US7127525B2 (en) 2000-05-26 2006-10-24 Citrix Systems, Inc. Reducing the amount of graphical line data transmitted via a low bandwidth transport protocol mechanism
US7127704B2 (en) * 2000-06-02 2006-10-24 Sun Microsystems, Inc. Interactive software engineering tool with support for embedded lexical contexts
US7050960B2 (en) 2000-11-30 2006-05-23 General Electric Company Methods and apparatus for generating drawings from computer generated models
US20020129342A1 (en) * 2001-03-07 2002-09-12 David Kil Data mining apparatus and method with user interface based ground-truth tool and user algorithms
US7117479B2 (en) * 2001-10-01 2006-10-03 Sun Microsystems, Inc. Language-sensitive whitespace adjustment in a software engineering tool
US6973655B2 (en) * 2001-12-18 2005-12-06 Xerox Corporation System and method of integrating software components
US20030131146A1 (en) * 2002-01-09 2003-07-10 International Business Machines Corporation Interactive monitoring and control of computer script commands in a network environment
US8671213B2 (en) 2002-03-14 2014-03-11 Citrix Systems, Inc. Methods and apparatus for generating graphical and media displays at a client
US7376695B2 (en) 2002-03-14 2008-05-20 Citrix Systems, Inc. Method and system for generating a graphical display for a remote terminal session
US7444599B1 (en) 2002-03-14 2008-10-28 Apple Inc. Method and apparatus for controlling a display of a data processing system
US7117450B1 (en) * 2002-03-15 2006-10-03 Apple Computer, Inc. Method and apparatus for determining font attributes
US7386834B2 (en) 2002-06-28 2008-06-10 Sun Microsystems, Inc. Undo/redo technique for token-oriented representation of program code
US20040003373A1 (en) * 2002-06-28 2004-01-01 Van De Vanter Michael L. Token-oriented representation of program code with support for textual editing thereof
US7953779B1 (en) 2002-10-08 2011-05-31 Trilogy Development Group, Inc. Configuration representation and modeling using configuration spaces
US20040225998A1 (en) * 2003-05-06 2004-11-11 Sun Microsystems, Inc. Undo/Redo technique with computed of line information in a token-oriented representation of program code
US20040225997A1 (en) * 2003-05-06 2004-11-11 Sun Microsystems, Inc. Efficient computation of line information in a token-oriented representation of program code
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
JP4463767B2 (ja) * 2003-12-26 2010-05-19 パナソニック株式会社 制御信号受信装置
US7558810B2 (en) * 2004-05-21 2009-07-07 Computer Associates Think, Inc. System and method for managing a path environment variable
US9552141B2 (en) 2004-06-21 2017-01-24 Apple Inc. Methods and apparatuses for operating a data processing system
US7412655B2 (en) * 2004-11-02 2008-08-12 Yahoo! Inc. Method and system of providing dynamic dialogs
JP4507884B2 (ja) * 2005-01-11 2010-07-21 トヨタ自動車株式会社 遠隔制御システム及び遠隔制御装置を備える車両
US8423673B2 (en) 2005-03-14 2013-04-16 Citrix Systems, Inc. Method and apparatus for updating a graphical display in a distributed processing environment using compression
US8171169B2 (en) 2005-03-14 2012-05-01 Citrix Systems, Inc. Method and apparatus for updating a graphical display in a distributed processing environment
US7768543B2 (en) * 2006-03-09 2010-08-03 Citrix Online, Llc System and method for dynamically altering videoconference bit rates and layout based on participant activity
US20080072150A1 (en) * 2006-09-06 2008-03-20 Yahoo! Inc. Event-based display and methods therefor
US8738703B2 (en) 2006-10-17 2014-05-27 Citrix Systems, Inc. Systems and methods for providing online collaborative support
US8996995B2 (en) * 2009-02-25 2015-03-31 Nokia Corporation Method and apparatus for phrase replacement
TW201106251A (en) 2009-04-24 2011-02-16 Ibm Editing apparatus, editing method and program
US20110125733A1 (en) * 2009-11-25 2011-05-26 Fish Nathan J Quick access utility
US8910063B2 (en) * 2012-03-27 2014-12-09 Cisco Technology, Inc. Assisted display for command line interfaces
CN104488361B (zh) * 2012-07-20 2017-03-08 皇家飞利浦有限公司 联网的照明设备及用于这样的照明设备识别它本身并且传达其网络地址的方法
US9218118B2 (en) 2012-09-11 2015-12-22 Apple Inc. Media player playlist management
US9558278B2 (en) 2012-09-11 2017-01-31 Apple Inc. Integrated content recommendation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0352019A (ja) * 1989-07-20 1991-03-06 Fujitsu Ltd データ無編集表示方式
JPH03132855A (ja) * 1989-10-19 1991-06-06 Nec Corp 入力済画面の再利用方式

Family Cites Families (11)

* 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
US4939689A (en) * 1987-04-09 1990-07-03 Crowninshield Software, Inc. Outline-driven database editing and retrieval system
US4992972A (en) * 1987-11-18 1991-02-12 International Business Machines Corporation Flexible context searchable on-line information system with help files and modules for on-line computer system documentation
US5050105A (en) * 1988-01-26 1991-09-17 International Business Machines Corporation Direct cursor-controlled access to multiple application programs and data
US4953080A (en) * 1988-04-25 1990-08-28 Hewlett-Packard Company Object management facility for maintaining data in a computer system
WO1990001190A1 (en) * 1988-07-20 1990-02-08 International Business Machines Corporation Help provision in a data processing system
US5121318A (en) * 1989-04-19 1992-06-09 Westinghouse Electric Corp. On-line plant operating procedure guidance system
US5226163A (en) * 1989-08-01 1993-07-06 Silicon Graphics, Inc. File characterization for computer operating and file management systems
JPH03144846A (ja) * 1989-10-31 1991-06-20 Yokogawa Hewlett Packard Ltd アプリケーション・入力サーバ連携方法
CA2030438C (en) * 1990-01-22 2002-05-28 Donald Vincent Alecci Method of reducing data storage requirements associated with computer windowing environments
US5251294A (en) * 1990-02-07 1993-10-05 Abelow Daniel H Accessing, assembling, and using bodies of information

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0352019A (ja) * 1989-07-20 1991-03-06 Fujitsu Ltd データ無編集表示方式
JPH03132855A (ja) * 1989-10-19 1991-06-06 Nec Corp 入力済画面の再利用方式

Also Published As

Publication number Publication date
CA2069355C (en) 1998-10-06
EP0517486A3 (en) 1997-05-07
AU1804292A (en) 1992-12-17
US5579469A (en) 1996-11-26
CA2069355A1 (en) 1992-12-08
AU642597B2 (en) 1993-10-21
DE69231431D1 (de) 2000-10-19
EP0517486A2 (en) 1992-12-09
DE69231431T2 (de) 2001-02-08
EP0517486B1 (en) 2000-09-13
JP3177301B2 (ja) 2001-06-18

Similar Documents

Publication Publication Date Title
JP3177301B2 (ja) 計算機システムへの入力提供方法
US7451455B1 (en) Apparatus and method for automatically manipulating software products
US5883623A (en) System and methods for building spreadsheet applications
US6247020B1 (en) Development system with application browser user interface
US5850548A (en) System and methods for visual programming based on a high-level hierarchical data flow model
US6233726B1 (en) Development system with reference card and parameter wizard methodologies for facilitating creation of software programs
US6046741A (en) Visual command sequence desktop agent
US6305008B1 (en) Automatic statement completion
US8935623B1 (en) Automatic API generation to functional PSoC blocks
US7627833B2 (en) System and method for object-oriented graphically integrated command shell
KR0142579B1 (ko) 오브젝트 매니지먼트 퍼실리티내의 함의용 애플리케이션 캡슐 봉함 시스템 및 이의 접합 방법
Liberty et al. Programming Asp. Net
EP0717343A1 (en) Context sensitive menu system/menu behavior
EP1025489B1 (en) System to associate control with applications using drag and drop interface
Pike A Minimalist Global User Interface.
Meyer Teaching object technology
Lohr et al. Overview of VM/CMS
Himpe Visual Basic for Electronics Engineering Applications
Teilhet Subclassing and Hooking with Visual Basic: Harnessing the Full Power of VB/VB. NET
Beaudouin-Lafon et al. Iconic shells for multitasking workstations
Singh Requirements for User Interface Programming
Liu et al. How to Start
Spenke et al. GINA User Manual
Wright Beginning Visual C# 2005 Express Edition: From Novice to Professional
Files IBM Mainframes

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20080406

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090406

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090406

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100406

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110406

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees