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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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
よびユーザインタフェースの組合せであって、ブラウ
ザ、デバッガ、メーラなどの文書アプリケーションの作
成のための新しい環境を提供するシステムを実現する。 【構成】 システムは、いくつかの自動的方法およびデ
フォルトをもつ極めて限定的なユーザインタフェースを
組み合わせて、最小のマウスおよびキーボード操作で多
くの効果を達成する。ユーザインタフェースは、プログ
ラムまたはシェルスクリプトから制御されるファイル指
向プログラミングインタフェースによって駆動される。
中心的ユーティリティでユーザインタフェースの問題に
ついて注意することにより、システムは、ビットマップ
ディスプレイおよびマウスを利用するアプリケーション
のプログラミングの仕事をさらに簡単化する。
Description
タへのユーザインタフェースに関し、特に、ウィンドウ
および位置決め装置を使用した対話形ユーザインタフェ
ースに関する。
なグラフィカルユーザインタフェースの設計の問題は、
ビットマップディスプレイが初めてUNIXシステムに
取り付けられて10年経った今日でさえ、困難な問題で
あり大部分が未解決である。この10年で、グラフィカ
ルアプリケーションは、UNIXのいくつかの性質、特
に、プログラミングへの、パーツごとの、ツールによる
アプローチといった、UNIXを広めるのに貢献した性
質から、わき道にそれ、またはそれを覆すような主要な
サブシステムとなった。
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ページ)はあるが、これらは、存在する環境内で
プロセス間通信を行い、確立したプログラムが互いに会
話することを可能にするという形式をとっている。
い。さらに、これらは、全システムの機能性やプログラ
ム可能性を増大させることよりも、より巨大で、魅力的
で、一体型のグラフィクスサブシステムを提供すること
によって他のシステムとの差別化をするという主流に対
する少数の反例となっている。ソフトウェア開発者にと
って、この流行は問題である。最近のユーザインタフェ
ースツールキットおよびウィンドウシステムは、UNI
Xがそのエレガントで単純なアプローチによって取り除
いたシステムのように複雑である。
文書アプリケーションのための改良されたユーザインタ
フェースを提供するために、ウィンドウシステム、シェ
ル、およびエディタの観点を組み合わせた実験的プログ
ラムである。helpは「ツールキット」ではない。h
elpは、ユーザとアプリケーションをつなぐ自己完結
的プログラムであり、ライブラリというよりはシェルに
近い。
pは、周知のUNIXファイル操作に基づいて、小アプ
リケーション(シェル手続きでもよい)がシステムのグ
ラフィカルユーザインタフェースを利用し、互いに通信
することを可能にする普遍的通信機構を提供する。ユー
ザにとっては、インタフェースは非常に限られており、
テキスト、スクロールバー、1種類の単純なウィンド
ウ、および各マウスボタンに対する唯一のファンクショ
ンのみからなる。ウィジェットも、アイコンも、ポップ
アップメニューさえもない。こうした制限にもかかわら
ず、helpは、作業をする、特に、プログラミングを
するのに有効な環境である。
びグツクネヒト(Gutknecht)のOberonシステムに
ある(N.ヴィルトとJ.グツクネヒト著「Obero
nシステム」Software Practice a
nd Experience、1989年9月、第19
巻第9号、857〜894ページ、および、マーティン
・ライザー(Martin Reiser)著「Oberonシステ
ム」アディソン・ウェズレー刊、ニューヨーク、199
1年)。
環境(W.タイテルマン(Teitelman)「Cedarの
旅」IEEEソフトウェア、第1巻第2号、44〜73
ページ)の顕著な特徴を抽出し、それを管理可能な大き
さのシステムで実現する試みである。これは、モジュー
ル言語(これもOberonと呼ばれる)に基づいてお
り、オペレーティングシステム、エディタ、ウィンドウ
システム、およびコンパイラを一様な環境内に統合した
ものである。
る。マウスを使用してディスプレイ上のテキストをポイ
ントすることにより、システムのどのサブルーチンを次
に実行するかを指示する。通常のUNIXシェルでは、
実行するファイルの名前をタイプ入力する。その代わり
に、Oberonでは、マウスの特定のボタンで、モジ
ュールおよびそのモジュール内のサブルーチンを選択す
る。例えば、編集するためにファイルをオープンするに
はEdit.Openを選択する。インタフェースのほ
ぼ全体はこの単純なアイデアに従っている。
の主な困難は、シングルプロセスを有し、言語指向であ
ることである。現代のコンピューティングシステムは一
般的にマルチプロセスシステムであり、言語指向ではな
くファイル指向である。従って、本発明の目的は、この
ようなマルチプロセスおよびファイル指向コンピューテ
ィングシステムにおいて、Oberonのユーザインタ
フェースの利点を確保することである。
ウィンドウを有するコンピュータシステムへの入力を定
義する方法を与えることである。本方法は、ウィンドウ
にコンテクストを対応させるステップと、ウィンドウの
任意の場所から選択されたテキストの文字列を受け取る
ステップと、テキストの文字列をコンテクストとともに
入力として提供するステップからなる。
インタフェースの基礎をまず説明する。続いて、ユーザ
インタフェースが、プログラムのバグを探索し修正する
際にどのように使用されるかという例を与える。
所望される実施例では、helpはウィンドウに表示
されたテキストにのみ作用する。他の実施例では、本発
明の技術は、アイコンやその他の要素の非テキスト表現
とともに使用可能である。所望される実施例では、he
lpへのインタフェースは3ボタンマウスおよびキーボ
ードである。他の実施例では、1および2ボタンマウス
やペン装置を含む、他の位置決め装置が使用可能であ
る。
イプ入力することと、マウスボタンで画面を制御しコマ
ンドを実行することである。テキストは左および中マウ
スボタンで選択される。中ボタンは、実行される作用を
定義するテキストを選択する。左ボタンは、その作用の
対象を選択する。右ボタンは、ウィンドウの配置を制御
する。タイプ入力によってコマンドを実行しないことに
注意すべきである。ニューラインは単なる文字である。
かの相互関連する規則に従う。この規則は、ユーザにと
ってできるだけ効率的で快適なシステムを作るように意
図されている。第1に、簡潔さである。インタフェース
における作用(ボタンクリックやその他の動作)には、
システムに直接影響を与えないような作用はない。従っ
て、例えば、helpは「クリックしてタイプする」シ
ステムではない。そのクリックは無駄になるためであ
る。また、ポップアップメニューは存在しない。そのメ
ニューを表示させるのに要する動作は無駄になるためで
ある。
にあるテキストを再タイプ入力することは不要であり、
所望されることもない。多くのシステムでは、ユーザ
が、画面上のテキストを入力ストリームにコピーするこ
とが可能であるが、ファイル名のような短いテキストで
は、マウスを使用してそれを移動するよりもテキストを
再タイプ入力するほうが容易に思われることがしばしば
ある。従って、全く新しいテキストをタイプ入力しない
場合、例えばソースコードをブラウズする場合やデバッ
グする場合は、全くキーボードを使用せずに効率的かつ
快適に作業することが可能であるべきである。
や平凡な決定は機械に任せる。例えば、ファイル名をポ
イントするだけで十分であり、文字列全体にわたってマ
ウスを通過させる必要はない。最後に、デフォルトであ
る。最も一般的に使用する機能はデフォルトにすべきで
ある。同様に、最小の作用で最も有用なことを行うべき
である。複雑な作用は、まれに、そして、タスクが異常
に困難であるときにのみ必要とされるべきである。
的に)2つの左右分割コラム115(a)および(b)
に配置された、編集可能テキストのウィンドウ103で
タイル表示されている。他の実施例では、単一コラムま
たは2より多くのコラムを有することも可能である。図
1は、セッション中のhelp画面101である。各ウ
ィンドウ103は2個のサブウィンドウ、その上部の1
個のタグ行105およびテキストの本体107を有す
る。タグ105は一般的に、そのテキスト(またはその
コピー)が本体107に表示されているファイルの名前
を含む。
107)のテキストは、システムに統合された単純なカ
ットアンドペースト(切り抜き−貼り付け)型エディタ
を使用して編集される。左マウスボタンはテキストを選
択する。選択されるのは、ボタンが押された点と離され
た点の間のテキストである。各サブウィンドウは固有の
選択を有する。1つのサブウィンドウ(最新の選択また
はタイプ入力テキストをもつサブウィンドウ)は、カレ
ント選択109の位置であり、その選択は反転表示され
る。他のサブウィンドウの選択は、PS111のように
枠表示される。
サブウィンドウの選択を置換する。右マウスボタンが、
ウィンドウ103の再配置のために使用される。ウィン
ドウ103のタグ105をポイントし、右ボタンを押
し、所望の位置にウィンドウをドラッグし、ボタンを離
す。続いてhelpは、ウィンドウを新しい位置にドロ
ップするのに必要な局所的再配置を行う(自動化の規
則)。これには、いくつかのウィンドウを重ねること
や、移動されたウィンドウまたは他のウィンドウの位置
の調整が含まれる。helpは、ウィンドウの少なくと
もタグは完全に可視状態にしようと試みる。これが不可
能な場合、ウィンドウは完全に覆われる。
ンドウごとに、各コラム115の左端に存在する。これ
らのタブ113は、そのコラム115のウィンドウを、
可視か不可視かにかかわらず、コラムの最上部から最下
部の順で表示し、左マウスボタンでクリックすると、対
応するウィンドウを、そのタグ105からそれが属する
コラムの最下部までの領域で、完全に可視にする。コラ
ムの最上部の同様の行によって、コラムを水平に拡大す
ることができる。これらの小タブは、多くの重なり合う
ウィンドウを管理する問題に対する解決法である。
もまたテキストを選択するが、ボタンを離す動作によっ
てテキストは選択されたままの状態になるのではなく、
そのテキストによって示されるコマンドを実行する。例
えば、画面からあるテキストを切り抜くには、左ボタン
でそのテキストを選択し、続いて中ボタンで、ディスプ
レイのどこかにあるCut119の語を選択する。(約
束として、大文字で始まるコマンドは組み込みコマンド
を表す。)
ように、切り抜かれたテキストはバッファに記憶され、
テキストの他の場所に貼り付けられることになる。コマ
ンド名のテキストがディスプレイ上に存在しない場合に
は、それをタイプ入力し、中ボタンで選択することによ
って実行する。Cut119は、通常のウィンドウシス
テムの意味での「ボタン」ではないことに注意すべきで
ある。これは、どこに現れようとも、何らかの動作のた
めの単なる語である。
任意の場所における中ボタンクリック(ダブルクリック
ではない)を語全体の選択と解釈する(デフォルトの規
則)。従って、単にテキストを普通に選択し、中ボタン
でCutをクリックすることとなり、一般的なポップア
ップメニューの場合よりもマウス操作が少なくなる。図
2の201のように、実行のために選択されたテキスト
には下線が付される。矢印202は現在のカーソル位置
を示す。厳格な規則として、選択または実行されたテキ
ストが空文字列の場合、helpは自動動作を呼び出
し、これをファイル名または同様のコンテクスト依存ブ
ロックのテキストに展開する。テキストが空でない場合
は、文字どおりに解釈される。
ウスボタンによって呼び出される2つのコマンドを有す
る。左ボタンが選択後押されたままの状態で、中ボタン
をクリックするとCutが実行される。また、同じく右
ボタンをクリックするとPasteが実行され、選択さ
れたテキストがカットバッファの内容で置換される。こ
れらは最もありふれた編集コマンドであり、これらを実
行するためにマウスを移動するのは不便である(簡潔さ
およびデフォルトの規則)。左ボタンを押したまま、さ
らに中および右ボタンをクリックしてカットアンドペー
ストを実行する、すなわち、後の貼り付けのためにカッ
トバッファにテキストを記憶することもできる。
きる。Open /usr/rob/lib/prof
ileを実行すると、新しいウィンドウが作成され、そ
の中にファイルの内容が入る。(ファイルが既にオープ
ンされている場合は、このコマンドは単にウィンドウが
可視であることを保証する。)再び、自動化の規則によ
って、新ウィンドウの位置はhelpによって決められ
ることになる。
なシェルウィンドウでは、テキストを、タイプ入力文字
からコピーしてシェルへの入力として提示し、ある種の
ヒストリー機能を実現することが可能である。すなわ
ち、以前のコマンドの再実行の能力がある。help
は、そうではなく、将来を予測しようとする。すなわ
ち、後で有用となる画面コマンドおよびテキストに到達
しようとする。
マンドまたはコマンドの引数である。基本コマンドの多
くはファイルシステムから画面へテキストを最小の動作
で引き出す。例えば、Openが引数なしで実行された
場合、最新の選択に含まれるファイル名を使用する(デ
フォルトの規則)。従って、新しいファイルを編集する
には、単に、左ボタンでファイル名をポイントし、中ボ
タンでOpenをポイントすればよい。
penがスラッシュ(/)で開始しないファイル名の空
選択に適用された場合、ディレクトリ名がウィンドウの
タグのファイル名から抽出され、選択されたファイル名
に前置される。これのエレガントな使用は、ディレクト
リの処理においてなされる。ディレクトリがOpenさ
れると、helpは、最後のスラッシュも含めてその名
前121をタグに置き、本体内にその内容123(すな
わち、ディレクトリ内のファイルの名前)をリストす
る。
usr/rob/src/help/help.c中の
dat.h301をポイントし、Openを実行するこ
とにより、/usr/rob/src/help/da
t.hの内容を含む新しいウィンドウ305が作成され
る。必要なのは2度のボタンクリックのみである。非空
選択によって、このような自動動作はすべて無効とな
り、結果のテキストは選択されたものの通りとなる。
うことは、各ウィンドウにコンテクストを与える。ここ
でのコンテクストは、ファイルが存在するディレクトリ
である。ファイルに作用するさまざまなコマンドは、組
み込みコマンドも外部コマンドも、実行するディレクト
リ307をウィンドウ305のタグ行105から導出す
る。helpには、カレント作業ディレクトリという明
示的概念はない。各コマンドは、そのオペランドに対し
て適切なディレクトリで作用する。
る。ファイル名に、例えばhelp.c:27のように
コロンおよび整数が添加された場合、ウィンドウは、指
示された行が可視となり選択されるように位置づけられ
る。以下の例では行番号のみが指定されているが、he
lpの文法では、一般的な位置を指定することも可能で
ある。
実行することも可能である。コマンドがOpenのよう
な組み込みコマンドでない場合、それは実行可能ファイ
ルであると仮定され、引数は実行されるコマンドに引き
渡される。例えば、中ボタンでgrep ’^mai
n’ /sys/src/cmd/help/*.cと
いうテキストを選択した場合、通常のgrepコマンド
が実行される。
いる。コマンドを含むウィンドウ103のタグ行105
がファイル名を有するが、コマンドがスラッシュで開始
していない場合、そのファイルのディレクトリがコマン
ドに前置する。コマンドが発見できない場合、コマンド
は通常のディレクトリ/bin内を検索される。コマン
ドの標準入力は/dev/nullに接続される。標準
およびエラー出力はErrorsと呼ばれる特殊ウィン
ドウに向けられる。これは必要ならば自動的に作成され
る。Errorsウィンドウはまた組み込みコマンドに
よってプリントされるメッセージの宛先でもある。
相互作用および結果は、動作中のシステムを観察するこ
とによって容易に理解される。以下の例では、help
システムはプログラム中の単純なバグを修正するために
使用される。バグは、Seanという名のユーザによっ
て送信されたメールメッセージに報告されている。
画面の右側のコラム内に一連の「ツール」をロードす
る。これらは、/help/edit/stf(hel
pエディタが提供するもの(stuff))、/hel
p/mail/stfなどの名前をもつファイルであ
る。これらはそれぞれ、適当なディレクトリ内に収集さ
れた、ツールの一部として利用可能なコマンドの名前を
リストした普通のテキストファイルである。
ドウはメニューのようにふるまうが、本当は単に普通の
ファイル上のウィンドウである。有用な性質は、hel
pの規則によって適用されるファイルの解釈から生じる
ものであり、ファイルに固有のものではない。図4で
は、メールが、メールツールのプログラムheader
sを実行することによって読み出される。
/stfを含むウィンドウ401内の語headers
403上で中マウスボタンをクリックする。これによ
り、タグ407から収集された、ファイル/help/
mail/stf405のディレクトリ名が、実行され
る語headersに前置されることによって、プログ
ラム/help/mail/headersが実行され
る。この簡単な機構により、ディレクトリ内のプログラ
ムの集まりの管理が容易になる。
ージのヘッダを含む新しいウィンドウ501を作成し、
それに/mail/box/rob/mboxとラベル
する。Seanがメールを送ってきたことが分かったの
で、そのメールのヘッダ503をポイントし(ヘッダ行
の任意の場所を左ボタンでポイントするだけでよい)、
messages505をクリックする。
ラム115(a)内に新しいウィンドウ601がオープ
ンされる。メッセージ603がウィンドウ601内に表
示される。メッセージ603は、helpの新バージョ
ンがクラッシュし、壊れたプロセスが検査を待っている
状態であることを示している。メッセージは、壊れたプ
ロセスのプロセス番号603を含んでいる。プロセスの
スタックを見るために必要なことは、プロセス番号60
3をポイントし、デバッガツール/help/db/s
tfのウィンドウ605内のstack607を実行す
ることだけである。
である。新しいウィンドウ701がコラム115(a)
内に現れている。ウィンドウ701の内容703は、プ
ロセスによってなされたコールのトレースバックであ
る。この新ウィンドウがその中に多くのファイル名を有
することに注意すべきである。これらは、壊れたプログ
ラムのシンボルテーブルから抽出されている。
は、エントリ/sys/src/libc/mips/
strchr.s:34(705)をポイントしてOp
enを実行すればよいが、問題はおそらくコールスタッ
クにある。helpの最も深いルーチンはtextin
sert707であり、これはファイルtext.cの
32行でstrlenをコールしている。
スタックウィンドウの対応するテキストをポイントし、
Openを実行してソースを見る。それが図8のウィン
ドウ801である。問題点は見えてきた。807で示さ
れているように、strlenの引数sが0であり、ル
ーチンerrsによってtextinsertへの引数
として渡され、さらに、ルーチンerrsはそれをXd
ie2からの引数として得ているようである。
には、ウィンドウ801のタグ内のClose!809
をヒットする。約束として、感嘆符で終わるコマンドは
引数を取らない。それは、実行されるウィンドウに作用
するウィンドウ操作である。次の段階は、スタックトレ
ース703をポイントして再びOpenすることによ
り、Xdie2という名の疑わしいソースを検査するこ
とである。
ドウ901はexec.cの252行(反転表示)を含
む。問題は難しくなった。errs903によって渡さ
れた引数は、グローバルであることが分かる変数n90
5である。どうしてこれが0になったのか。ウィンドウ
909内のCブラウザツール/help/cbr/st
fを使用する。このウィンドウ内のプログラムuses
*.cは、与えられたファイル内の与えられた変数へ
のすべての参照を表示する。
ob/src/help/*.cにおける変数nへのす
べての参照を発見するには、ソーステキスト中の変数を
ポイントし、uses *.cを実行する。この実行
は、これら両方の「単語」を/help/cbr/st
f内で中ボタンで掃引することによってなされる。図1
0のように、usesは、リストを含む新しいウィンド
ウ1001を作成する。リストには、ファイル/usr
/rob/src/help/*.cにおける変数nへ
のすべての参照の位置が、ファイル名および行番号によ
って示される。Cブラウザの実現は後で説明する。簡単
に言えば、それは、Cソースを解析し、シンボルを動的
に解釈する。
は明らかにヘッダファイル中の宣言である。help.
c:35(1003)が初期化であるように見える。そ
こで、Open help.cを使用して、その行を検
査し、変数が実際に初期化されていることを確認する。
このOpenの結果が図11である。ウィンドウ110
1は、1103において、help.cの35行を示し
ている。この行は、n905がセットされたことを示し
ている。
である。exec.cの252行はそのコールである
が、変数の読み出しであって書き込みではない。次の可
能性はexec.c:213である。それをポイント
し、再びOpenを使用すると、ウィンドウ1107が
現れる。1109の反転表示から分かるように、nは0
にセットされている。Xdie2が実行される前のどこ
かで、Xdie1がnをクリアしたことになる。バグの
修正は、Cut1111を選択して悪い行を除去し、変
更されたウィンドウのタグに現れているPut!を選択
してファイルを書き戻し、続いて/help/cbrの
mk1113を選択してプログラムをコンパイルするこ
とにより、行われる。この例の全デバッグ操作がキーボ
ードに触れずに行われたことに注意すべきである。
くつかのことを示している。複数のディレクトリのファ
イルおよびコマンドで作業をするのが容易である。he
lpがコンテクストからファイル名を構成する規則、お
よび、同様に、ユーティリティが実行されているコンテ
クストを導出する規則は、分散した要素から構成される
プログラムおよびその他のシステムの管理を単純化す
る。
てのいくつかの共通規則によって、多くのアプリケーシ
ョンが単一のユーザインタフェースを通して対話するこ
とができる。例えば、ツールプログラムには、キーボー
ドまたはマウスと直接対話するコードを有するものはな
かった。しかしhelpはアプリケーションに対してマ
ウス位置のファイルおよび文字オフセットを引き渡す。
次節で説明されるインタフェースを使用して、アプリケ
ーションはウィンドウ内のテキストを検査して、ユーザ
が何をポイントしているかを知ることができる。これら
の操作は、次節で与えられる例のように、簡単なシェル
スクリプトで容易に実現される。
ス] helpは、クライアントプロセスに対し、その
構造へのアクセスを、ファイルサービスを提示すること
によって提供する。(ロブ・パイク(Rob Pike)他著「ベ
ル研からのプラン9」Proc. of the Su
mmer 1990 UKUUG Conf.、ロンド
ン、1990年7月、1〜9ページ参照。)
ィレクトリに格納された一連のファイルによって表現さ
れる。各ディレクトリの番号は、UNIXのプロセスi
dと同様の、固有の識別子である。各ディレクトリはt
agおよびbodyのようなファイルを含み、これらは
対応するサブウィンドウの内容を回復するために読まれ
る。各ディレクトリはまたctlというファイルを含
み、これに対して、ウィンドウの内容のテキストの挿入
および削除のような変化を実行するメッセージが書き込
まれる。
elpにマウントされる。従って、ウィンドウ番号7の
本体内のテキストをファイルにコピーするには、次のよ
うに実行すればよい。 cp /mnt/help/7/body ファイル テキストパターンを検索するには、次のようにする。 grep パターン /mnt/help/7/bod
y ASCIIファイル/mnt/help/index
は、タグファイル名をウィンドウ番号と接続するために
検査される。このファイルの各行はウィンドウ番号、タ
ブ、およびタグの第1行である。
スは/mnt/help/new/ctlをオープン
し、これは現在の選択されているテキストの近くの画面
上に自動的に新しいウィンドウを置く。次に、プロセス
は、そのファイルから、作成されたウィンドウの名前
(例えば/mnt/help/8)を読み出す。審ウィ
ンドウの位置および大きさは、通常、helpによって
決定される。
リ/help/cbrは上記で使用したCブラウザを含
む。プログラムのうちの1つはdeclと呼ばれる。こ
れは、選択されたテキストによってマークされた変数の
宣言を発見する。左ボタンで変数をポイントし、ファイ
ル/help/cbr/stfのウィンドウ909内の
declを実行する。helpは、実行されるテキスト
に対するコンテクスト規則を使用して/help/cb
r/declを実行し、環境変数helpselを通じ
て、選択されたテキストのコンテクスト(ウィンドウ番
号および位置)を引き渡す。
る。次に完全なプログラムを示す。 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
rseを実行する。これは、$helpselを検査
し、ユーザがポイントしているものを記述する他の環境
変数のセットfile、id、およびlineを設定す
る。次に、新しいウィンドウ103を作成し、xをその
番号にセットする。第1ブロックはディレクトリ名をタ
グ行105に書く。第2ブロックは、もとのソースファ
イルに対してCプリプロセッサを起動し、その結果生じ
たテキストを特殊バージョンのコンパイラに渡す。
たず、プログラムを解析し、シンボルテーブルを管理
し、ファイルの適当な行に示された識別子に対する宣言
を発見すると、その宣言のファイル座標をプリントす
る。これは標準出力に現れ、/mnt/help/$x
/bodyappに書き込むことによって新ウィンドウ
に付加される。続いて、その出力をポイントしてOpe
nによってソース中の適当な行を表示することができ
る。(helpの将来の変更によって、このループを閉
じる際にOpen動作も自動的に生じるようになるであ
ろう。)従って、たった3度のボタンクリックによっ
て、変数、関数、型、またはその他のCのオブジェクト
の宣言を、その宣言がどのファイルに存在しようともそ
れを画面に持ってくることができる。
る。第1に、helpはすべてのユーザインタフェース
を提供している。コンパイラをブラウザに変えるには、
コードジェネレータをコンパイラから取り除き、異なる
ブラウズ関数のためのユーザインタフェースに接続する
ために5、6個の短いシェルスクリプトを書くために、
数時間を要するのみである。他の言語が与えられれば、
同じ結果を達成するためには、コンパイラを修正するだ
けでよい。ユーザインタフェースソフトウェアを書く必
要がないのである。第2に、生じたアプリケーションは
一体型ではない。他の目的や実験のために調整され変形
されることが可能な小さいシェルスクリプトの組であ
る。
る。例えば、ウィンドウ605のデバッガインタフェー
ス/help/dbは、adbをhelpに接続するた
めの、それぞれ約10行からなる、10数個の短いシェ
ルスクリプトのディレクトリである。adbは有名な隠
れた入力言語を有する。/help/db内のコマンド
は、好まれない文法を隠しながら、システムの残部に接
続する使いやすい操作として、adbの最も重要な関数
を含んでいる。
スを検査するために、helpのインタフェースを容易
に使用することができる。もちろん、これは総合的なデ
バッガとはとてもいえないが、約1時間で書かれ、原理
を例示している。これは原型であり、helpはこのよ
うなテストプログラムを作成するためのプログラミング
しやすい環境である。より高度なデバッガは、バックグ
ラウンドに存在するデバッグプロセスを除き、help
コマンドにその要求を送らせることによって、同様の方
法で組み立てられる。
プリケーションが共有する快適でプログラミングが容易
なユーザインタフェースを提供することである。これ
は、新しいアプリケーションのための対話型「フロント
エンド」を提供する仕事を非常に簡単化する。help
は、ウィンドウシステムのためのユーザインタフェース
を提供する原型システムとして有用であり、これからの
新しいソフトウェアツールの作成という仕事への集中か
らプログラマを解放する。
ィスプレイ装置によってシステムと対話するコンピュー
タシステムのための改良されたユーザインタフェースの
作成および使用方法を説明した。所望される実施例で
は、3ボタンマウスが使用されるが、他の実施例では、
他の位置決め装置も使用される。また、ウィンドウは、
所望される実施例では、ディスプレイ装置上でタイル表
示されるが、他の実施例では単純に重ね合わせてもよ
い。さらに、所望される実施例はウィンドウ内に表示さ
れたテキスト文字列のみを処理したが、他の実施例で
は、アイコンおよびその他のウィンドウ内の要素の表現
を処理することができる。最後に、タグおよび本体を分
離し、アクティブ位置を示すために使用される技術は、
他の実施例では異なっていてよい。
べてのアプリケーションが共有する快適でプログラミン
グが容易なユーザインタフェースが提供される。これに
よって、新しいアプリケーションのための対話型「フロ
ントエンド」を提供する仕事が非常に簡単化される。h
elpは、ウィンドウシステムのためのユーザインタフ
ェースを提供する原型システムとして有用である。
ある。
る。
る。
ある。
る図である。
部が観察のために選択される図である。
れる図である。
義される図である。
示される図である。
ドウに表示される図である。
Claims (1)
- 【請求項1】 ウィンドウを有する計算機システムにお
いて、 ウィンドウにコンテクストを対応させるステップと、 ウィンドウの任意の場所から選択されたテキスト文字列
を受け取るステップと、 テキスト文字列をコンテクストとともに入力として提供
するステップからなることを特徴とする、計算機システ
ムへの入力を定義する方法。
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)
| 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)
| 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)
| 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 |
-
1992
- 1992-05-25 CA CA002069355A patent/CA2069355C/en not_active Expired - Fee Related
- 1992-06-02 DE DE69231431T patent/DE69231431T2/de not_active Expired - Fee Related
- 1992-06-02 EP EP92305050A patent/EP0517486B1/en not_active Expired - Lifetime
- 1992-06-04 AU AU18042/92A patent/AU642597B2/en not_active Ceased
- 1992-06-05 JP JP16988892A patent/JP3177301B2/ja not_active Expired - Fee Related
-
1995
- 1995-10-19 US US08/545,376 patent/US5579469A/en not_active Expired - Lifetime
Patent Citations (2)
| 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 |