JPH0756839A - プロセッサーベースの装置の操作方法 - Google Patents

プロセッサーベースの装置の操作方法

Info

Publication number
JPH0756839A
JPH0756839A JP6163456A JP16345694A JPH0756839A JP H0756839 A JPH0756839 A JP H0756839A JP 6163456 A JP6163456 A JP 6163456A JP 16345694 A JP16345694 A JP 16345694A JP H0756839 A JPH0756839 A JP H0756839A
Authority
JP
Japan
Prior art keywords
user
tool
overlay
display
signals
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
JP6163456A
Other languages
English (en)
Other versions
JP3866302B2 (ja
Inventor
Eric A Bier
エイ.ビヤ エリック
William A S Buxton
バクストン ウィリアム
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.)
Xerox Corp
Original Assignee
Xerox Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=22252737&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JPH0756839(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Xerox Corp filed Critical Xerox Corp
Publication of JPH0756839A publication Critical patent/JPH0756839A/ja
Application granted granted Critical
Publication of JP3866302B2 publication Critical patent/JP3866302B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04804Transparency, e.g. transparent or translucent windows

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)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Position Input By Displaying (AREA)
  • Numerical Control (AREA)

Abstract

(57)【要約】 【目的】ユーザーがより少ない動作で多くの一般的タス
クを行うことを可能とする。 【構成】本発明は、一組の素データに処理を行いその可
視表示体を表示するためのプログラムを実行するための
プロセッサーで制御される装置環境内で実行されるユー
ザーインターフェイス技法に関する。本発明に関するシ
ステムは、多くの枠取り領域(アクティブ領域)を有す
る可動シートの視覚表示を発生し、該シートを可視表示
体に対して置くため第一の組の信号に応答し、該シート
と該表示体に関する位置情報(通常はカーソル位置)が
与えられた第二の組の信号に応答し、第三の組の信号を
プログラムへ発生する。該第三の組の信号は該シートと
該表示体の相対位置および該第二の組の信号に与えられ
る位置情報に依存する。該枠取り領域はクリックスルー
ツールと考えられてもよく、またそう呼ばれてもよい。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコンピュータのようなプ
ロセッサーで制御される装置に関し、より詳細には装置
とユーザーとの対話を可能とするためのユーザーインタ
ーフェイス装置に関する。
【0002】
【従来の技術】コンピュータのようなプロセッサーで制
御される装置の使用は、ユーザへ情報を伝達し、ユーザ
ーから情報を受け取ることをしばしばその目的としてい
る。これはユーザーが特定タスクを実行することを可能
にする。これから行おうとするタスクに依り、ユーザー
はしばしばワードプロセッサ(時にテキストエディタと
呼ばれる)、スプレッドシート、またはドローイングプ
ログラム(時にグラフィクスエディタと呼ばれる)のよ
うな特定タスクアプリケーションプログラムを利用す
る。多くのプログラムは少なくとも二つ以上の機能を有
しているため、特定タイプのプログラムやエディタを引
用することは、特定機能のみを有するスタンドアロンア
プリケーションプログラムを意味することを意図しては
いない。
【0003】通常のアプリケーションプログラムは、一
連の命令(アプリケーション)から成り、該命令は、関
連するデータ(時に素データと呼ばれる)の作成や修正
のための入力信号に応答して実行される。多くの場合、
関連するデータはデータファイル(時にファイルと呼ば
れる)としてディスク上に記憶され、各部分がプログラ
ム実行中にメモリへ読み込まれる。少なくともいくつか
のアプリケーションについては、データは(例えば印刷
またはスクリーン上にディスプレイされる)目視される
ドキュメントを表しており、アプリケーションはユーザ
ーがドキュメントを修正することを可能にする。
【0004】多くの場合ユーザーは、一つまたはそれ以
上の入力装置を通して少なくともいくつかの入力信号を
与える。該入力装置は、しばしば、キーボードやマウス
のようなポインタ装置となっている。マウスは作業表面
上を動かされる装置であり、通常キーボードのとなりに
置かれ、その動きにしたがったスクリーン上のカーソル
の動きを起こす位置信号を与える。カーソルはポインタ
または注意を集める手段として対話プログラムにより使
用される特別なシンボルである。マウスは付加的入力信
号を与えるための一つもしくはそれ以上のプッシュボタ
ンスイッチ(ボタン)を有しており、該信号はカーソル
イベントの一部として翻訳される。
【0005】ディスプレイ装置は通常、陰極線管(CRT)
や液晶ディスプレイ(LCD) のような視覚ディスプレイ装
置であり、ユーザーにアプリケーションや素データの情
報を与え、ユーザーが適正な入力信号を発生させて所望
の処理出力を得るために装置を制御することを可能にす
る。入力装置、ディスプレイ装置、およびアプリケ−シ
ョンが供給する情報の性質からなる組合せは、アプリケ
−ションに対するユーザーインターフェイスとして考え
られてもよい。
【0006】いづれのアプリケ−ションプログラムにつ
いてもそれが完全に自己充足的なものであることが原理
的に可能であるが、アプリケ−ションプログラムはほと
んどすべての場合においてオペレーティングシステム(O
S)と共に処理を実行する。OSは装置リソースを管理およ
び制御してアプリケ−ションプログラムと装置ハードウ
エア間のインターフェイスを可能にするプログラムであ
る。OSは通常、基本的ハウスキーピング機能を提供す
る。該機能はすべてのアプリケ−ションプログラムが必
要とするものであり、ファイルシステムのメインテナン
ス、CPU の管理、入力装置からの入力の受信、記憶装置
との通信、ディスプレイ装置へのデータの送信、および
ユーザーがファイル管理や種々のアプリケ−ションプロ
グラムを実行出来るように一般的メカニズムを供給する
こと等である。パーソナルコンピュータ(PC)およびワー
クステーションの世界において、オペレーティングシス
テムはしばしば特定タイプのハードウエア構成と関係づ
けられるが、必ずしもそうである必要はない。多くのタ
イプの装置上で過去から現在にかけてなお走り続けてい
るUnixがこの例である。
【0007】近年その使用が増加しつつあるオペレーテ
ィングシステムの一つのタイプに、グラフィカルユーザ
ーインターフェイス("GUI") を提供するものがある。Ap
pleComputer社のMacintosh OS、IBM 社のOS/2、およびM
icrosoft 社のWindows (実際には、DOS として知られ
ているキャラクタベースのオペレーティングシステムの
最上位階層で走るGUI シェル)は、PC界で知られる最良
のGUI である。Macintosh OSは、Motorola 680x0ファミ
リーのマイクロプロセッサを基本とするApple社製のPC
上でのみ使用可能であり、一方、OS/2およびWindows
は、Intel 80x86ファミリーのマイクロプロセッサを基
本とするいわゆるIBM PC上でのみ使用可能である。二つ
のタイプ以上のマイクロプロセッサ上で走ることが可能
なバージョンを有するMicrosoft 社のWindows NTによ
り、この傾向が変わりつつある。
【0008】GUI に関する一つの性質は、アプリケ−シ
ョンに対するオープンファイルにスクリーン上の可動お
よびサイズ変更可能領域であるウィンドウが通常与えら
れることである。OSはディレクトリ構造を示す自身のウ
ィンドウを有することが可能であり、OSが伴うファイル
やアプリケ−ションはアイコン(働きや項目を表す小さ
い図形表示物)により表されることが可能である。オー
プンファイルに対応しない他のウィンドウがあってもよ
い。GUI の利点はアプリケ−ションに交わるかなり一貫
したユーザー環境を提供することである。いくつかのGU
I は複数のアプリケ−ションを同時に開くことを可能と
する。
【0009】OSのタイプによらずアプリケ−ションプロ
グラムは通常、OSの多くの支援を伴い、素データの表示
体(時にスクリーンイメージまたはディスプレイイメー
ジと呼ばれる)をユーザーに提供する。ユーザーは該表
示体に働きかけ、プログラムがこれらのはたらきかけを
素データの処理に翻訳する。本文中において表示体とい
う言葉は、素データだけでなくOSや様々なタイプのユー
ティリティープログラムを含んだすべての種類のプログ
ラムの表示体に関する。
【0010】例えばワードプロセッサにおいて素データ
はテキストから成り、該テキストはドキュメントがプリ
ンタ上にプリントアウトされる時にそれがどのように見
えるかを特定する関連情報を伴っている。該関連情報は
パラグラフやコラム、およびフォント、サイズ、スタイ
ル、色等のテキスト形態のようなドキュメントのレイア
ウトに関している。特定のワードプロセッサおよびオペ
レ−ティングシステムに依り、スクリーンイメージはテ
キスト内容に限定されてもよいし、またはそれがプリン
トされる時に現れるドキュメントを実質的に示してもよ
い。(WYSIWYG;What you see is what you get; 見たも
のがそのまま得られる)DOS のようなキャラクターベー
スのOSのために設計されたプロギラムは前者に近いもの
を提供する傾向にあり、GUI のためのそれは後者に近い
ものを提供する傾向にある。
【0011】他のタイプのアプリケ−ションプログラム
においても同様な範囲のスクリーンイメージを見出すこ
とが可能である。例えばドローイングプログラムにおい
て、素データはドキュメント上に現れる各図形表示物
(オブジェクト)の記述を有している。該記述は図形表
示物に所望の外見を与えるために必要な項目を含んでお
り、該項目は、形、サイズ、ライン色および幅、充填色
およびパターン、ドキュメント平面上の相対位置、およ
びスタック順序(目的の図形表示物が他の図形表示物の
上面か背面かどうか)等を含む。スクリーンイメージ
は、図形表示物の輪郭のみ(ワイヤーフレーム図)を示
してもよく、または、完全なWYSIWYG 図であってもよ
い。
【0012】アプリケ−ションのタイプによらずユーザ
ーは所望の変化を得るようスクリーンイメージを参照し
ながら入力装置を操作する。これは通常、修正対象表示
物の表示位置に対応するスクリーン上の特定の位置にカ
ーソルを置くこと、およびキーストロークやマウス動作
のような一つまたはそれ以上のユーザーイベントの実行
によりなされる。マウス動作はボタンを押すこと、ボタ
ンをはなすこと、マウスの移動、クリック、およびドラ
ッグを含む。マウスクリックはユーザーがマウスを止め
たままで一つのボタンを押してはなすことであるが、こ
の言葉はまた一つのボタンを押す動作を言い表すことに
も使われる。ドラッグ(時にクリックドラッグ)はユー
ザーがマウスでカーソルの位置設定を行うことであり、
一つのボタンを押し、ボタンを押したままマウスを新し
い位置に動かし、新しい位置でボタンをはなすことであ
る。マウスボタンを押すこと、ボタンをはなすこと、ク
リック、およびドラッグはキーボードのキーまたは他の
マウスボタンを押したまま(もし現状がそうであれば)
行われてもよい。
【0013】例えばワードプロセッサーイメージ(画
像)においてカーソルを特定の位置に置くことは、タイ
プ入力されたテキストをその位置に挿入するために行わ
れてもよい。表示されたテキストの一部にわたるカーソ
ルドラッグは(この時スクリーン上に強調表示される)
テキストの選択であってもよく、これにより選択された
テキストに対しユーザーが他のいくつかのメカニズムに
よる(削除、移動、またはフォント変更のような)処理
を行うことが可能となる。アプリケーションおよび所望
の処理に依り、該メカニズムはメニューからの処理の選
択、またはキーボードからのコマンド入力であってもよ
い。
【0014】ドローイングプログラムにおいても同様に
クリック動作によりカーソルがツールアイコン(例えば
矩形ツール、ラインツール、多角形ツール等)上に置か
れることが可能であり、この後のカーソルクリックおよ
びドラッグにより図形表示物が作成されることが可能と
なる。すでに存在している図形表示物上での平面カーソ
ルクリックは、他のいくつかのメカニズムを通して処理
が行われるよう該表示物を選択することであってもよ
い。カーソルドラッグが図形表示物上から始まる場合、
ドラッグの結果はカーソルの動きに沿った該表示物の移
動を起こしてもよいし、または該表示物上のカーソル位
置に依る該表示物のサイズ変更を起こしてもよい。
【0015】
【発明が解決しようとする課題】ユーザーをより生産的
にするためユーザーには比較的容易に学習でき、容易に
使用でき、強力であるツールが提供されるべきである。
これらの課題は時に個別には容易に達成できるが、組み
合わせた場合はまれである。それにもかかわらずより直
覚的、効率的、融通のきくユーザーインターフェイスを
設計する試みに対しかなりの労力が費やされてきた。以
下ドローイングプログラムを例にとり、これまでどのよ
うに労力が使われてきたか、およびユーザーインターフ
ェイスの一特徴を改善することが他の特徴を低下させて
しまうことがありえることについての説明を行う。
【0016】ドローイングプログラムの一般的構成は、
ドローイング(描画)領域の片側に固定されたツールパ
レットおよびドローイング領域上部のメニューバーを有
する。ツールを変更するためユーザーはカーソルをパレ
ットへ動かし、所望ツールアイコンをクリックし、そし
て再びカーソルをドローイング領域内の適正位置へ動か
す。所望の表示物上に所望の処理を施すため、ユーザー
はカーソルを表示物へ動かし、表示物をクリックして該
表示物を選択し、カーソルをメニューバーへ動かし、マ
ウスボタンを押してメニューを引き出し、所望のメニュ
ー項目をドラッグし、そしてマウスボタンをはなす。こ
の後ユーザーはドローイング領域か、メニューバーの他
の項目か、またはツールパレットへカーソルを動かす。
これはたとえ最も単純な処理に対したとしても多くのマ
ウス移動となる。
【0017】ティーオフ(切取り)メニューおよび可動
ツールパレットは、作図が実際に行われている領域付近
にユーザーが一定量のメニューとツールパレットを継続
して開いておくことを可能とし、その結果マウスの移動
距離を減少させる。ティーオフメニューおよび可動ツー
ルパレットはユーザーのカーソル移動距離を減少させる
点ではより効率的作図をもたらすが、他の一方ではより
非効率的なことをもたらす。これらは特にユーザーが作
図している付近の多くの作図領域を占める傾向にある。
このことはメニューとパレットを作図のじゃまにならな
いように移動するためにユーザーが作図作業を常に中断
しなければならない結果となりえる。プログラムが強力
(機能的)になればなるほどメニューがながく伸びてよ
り多くの領域を占めるという事実によりこの問題は複雑
化する。前述の課題を解決しようとする際に遭遇するこ
の種のトレードオフは不幸にしてまれなものではない。
【0018】
【課題を解決するための手段】本発明はユーザーがより
少ない動作で多くの一般的タスクを行うことを可能と
し、その結果として生産性を高めるユーザーインターフ
ェイスの技法を提供する。該技法は、ユーザーが親しみ
やすく、それゆえかなり速く学習することも可能である
ような動作を利用する。本発明は単一プログラム中で実
施されてもよいし、またはオペレーティングシステムを
含む異なるプログラム間にわたって有効となるようオペ
レーティングシステムに組み込まれてもよい。
【0019】本発明はプロセッサーで制御される装置環
境内で動作し、該装置は一組の素データの処理をして可
視表示体を表示するプログラムを実行する。本発明は、
多くの枠取り領域(アクティブ領域)を有する可動シー
トの視覚表示を発生すること、該シートを可視表示体に
対して置くための第一の組の信号に応答すること、該シ
ートと該表示体に関する位置情報(通常はカーソル位
置)が与えられた第二の組の信号に応答すること、およ
び該シートと該表示体の相対的位置および該第二の組の
入力信号を特徴づける位置情報に依存する第三の組の信
号をプログラムに対し発生することとにより特徴づけら
れる。本文中において表示体という言葉は、プログラム
により生成される素データを表現する表示を表し、該プ
ログラムはアプリケーションプログラムであってもよい
し、またOSを含むいづれの他のタイプのプログラムであ
ってもよい。
【0020】いくつかの実施例では、ユーザーは一組の
入力装置を用いてプログラムに処理の指定を行い、また
ディスプレイ装置上でこれら処理結果を見たりする。入
力装置は通常ユーザー起動装置の多くを含み、該装置は
第一組および第二組の入力信号の発生を起こすためにユ
ーザー自身が動かす。シート上の枠取り領域は可視表示
体を通して素データに適用されることが可能な異なる処
理を指定する。該枠取り領域はツールとして考えられて
もよいし、またツール(またはクリックスルーツール)
と呼ばれてもよい。表示体はワークピースとして考えら
れてもよいし、またそう呼ばれてもよい。
【0021】適正なツールを運んで表示体の関連部分を
これにオーバーラップさせ、そして処理を与えるその先
の(ツール内のマウスクリックのような)動作をするこ
とで所望の処理が行われる。ツールが運ばれた後ワーク
ピースに適用されるこのような処理形態は、ユーザーが
ツールおよびワークピースとの対話に集中することを可
能とする。
【0022】ほとんどの場合シートは透明であり、また
表示体を覆うかのように現れる。しかし表示体が少なく
とも部分的に透明でこれを通してツールが見えることが
可能である限り、本発明ではツールシートを表示体の下
にあるかのように現すことが行われてもよい。前記いづ
れの場合でもシートはオーバーレイと呼ばれる。
【0023】一般にオーバーレイは表示領域よりも大き
くなることが可能であり、また関連するツールは必要な
時に表示領域へ運び込まれることが可能である。特定の
実施例では、各ツールはその機能の特性に従いグループ
化される。オーバーレイはそれが置かれるときはサイズ
変更が可能であることが好ましく、これにより異なる表
示サイズに適応でき、またユーザーがツールを最も効果
的に利用することを可能とする。ツール機能を表すアイ
コンやテキストのような指標表示物は、ツール機能が自
明でないツールまたはツール集合と組み合わされてもよ
い。このことはユーザーが適性なツールを短時間に置く
ことを可能とする。オーバーレイは(指標表示物やツー
ル境界線を除き)透明であるため、ツールが運ばれて適
用される場合、ユーザーはワークピースに集中し続ける
ことが可能となる。
【0024】いくつかの実施例では、ユーザーはオーバ
ーレイをカスタマイズして個人的嗜好を満足させ、また
効率を最適化することが可能となる。最も基本的レベル
において、このことは論理的感性をユーザーに与える形
式でツールを構成することを含むことが想定される。よ
り強力なレベルにおいては、ユーザーは新たなツールを
作成して新たな機能を与えたり、また頻繁に行われる特
別なタスクの処理を促進させることが可能である。例え
ばツールは合成されて(例えば重ね合わされて)複合機
能を与えることが可能であり、またツールにより素デー
タから特性を抽出することが可能となる結果、これらの
特性に関する後の動作を促進させる。
【0025】可視表示体が一組の図形表示物により表さ
れるドローイングプログラム環境で動作する本発明の実
施例では、オーバーレイは表示物を作成するためのツー
ル、および既存の表示物のコピー、修正、および削除の
ためのツールを含んでもよい。一組の入力装置がマウス
のようなポインタ装置を含んでいるハードウエア構成で
は、通常の処理はツールを可視表示体に対し適正な位置
に置くこと、および該可視表示体内の適正な位置をツー
ルを通してクリックすることとを必然的に伴うことが想
定される。ツールを正確に置くことは必要ない。表示物
作成ツールの場合、必要とされるすべてのことは、ツー
ルの一部が作成される表示物の所望の位置上にあること
である。表示物(オブジェクト)修正ツールの場合、必
要とされるすべてのことは、ツールの一部が修正される
表示物の選択可能部分の少なくとも一部上にあることで
ある。ユーザーが表示物修正ツールを通して表示物のな
い領域上をクリックする場合、プログラムは該動作を無
視するか、または該動作を省略する翻訳を行うことが可
能である。
【0026】本発明のいくつかの実施例の重要な特徴
は、ユーザーが利き腕でない方の手(例えば右利きのユ
ーザーの左手)を非常に効果的に利用できることであ
る。タイプしている間を除き、マウスとキーボードに基
づくユーザーインターフェイスはユーザーの利き腕でな
い方の手をほとんど利用しない。利き腕は活発にタスク
に寄与するが、利き腕でない方の手は時々修飾キーを押
し続ける程度である。本発明は、オーバーレイを置くた
めのトラックボールのようなポインタ装置を与えるこ
と、およびユーザーに利き腕でない方の手を用いてポイ
ンタ装置の操作を行わせることにより利き腕でない方の
手がより等しく対話に寄与することを可能とする。前述
のようにオーバーレイは正確に置かれなくてもよい。画
面内表示物上にツールを重ね合わせることで、利き腕で
ない方の手は命令と処理対象物の両方を同時に選択する
ことが可能となる。利き腕は例えばツールを通した表示
物上のクリックまたはドラッグのような詳細な処理対象
物選択をすることで命令を与える。この両手動作による
対話は通常、編集タスクを行うために必要とされるステ
ップを減少させる。
【0027】
【実施例】
1.0 システム外観 図1は、本発明の実施例であるコンピュータシステム1
0を示す。従来技術に従い該システムは、バスシステム
15を通して多くの周辺装置と通信を行うプロセッサー
12を含む。これら周辺装置は通常、メモリ17および
ファイル記憶システム20を含んだ記憶装置、多くの入
力装置、およびアクティブ表示領域23を有するディス
プレイ装置22を含む。ファイル記憶システムはプログ
ラムとデータファイルを記憶し、ハードディスクドライ
ブやフロッピーディスクドライブのような標準装置を通
常含む。該装置はCD-ROMドライブや光学的ドライブ装置
のような他の装置を含んでもよい。
【0028】本文中においてバスシステムという言葉
は、システムの各構成装置に所望の双方向通信を行わせ
るためのあらゆるメカニズムを含ませるために一般的に
用いられる。入力装置とディスプレイ装置を除き、他の
構成装置は物理的に同位置にある必要はない。例えばフ
ァイル記憶システムの一部は様々な長距離ネットワーク
メディアを通して接続されることが可能である。本発明
はほとんどPCやワークステーションのプログラムにおい
て実施されることが予想されるが、前記と同様に入力装
置とディスプレイ装置はプロセッサーと同位置にある必
要はない。
【0029】入力装置はほとんどの部分が標準装置であ
り、キーボード25と一つまたはそれ以上のポインタ装
置を含む。マウス27とトラックボール30が示されて
いるが、タッチスクリーン、グラフィックタブレットま
たは電子スタイラスが用いられてもよい。従来システム
において二つ以上のポインタ装置が用いられる場合があ
るかもしれないが、ユーザーは作業時に一つの該装置の
みを使用するのが通例である。本発明はユーザーに二つ
の該装置を提供することで重要な利点を得るものであ
り、該装置は両手に提供され、同時にまたは交互に使用
される。具体性を持たせるためマウス27は三つのボタ
ン32を有するよう示されており、トラックボール30
はボール35、三つのボタン37、およびサムホイール
40を有するよう示されている。
【0030】以下本発明について、図に示された表示領
域23の内容を参照し、高度なユーザーの観点から説明
を行う。ディスプレイ装置はドローイングプログラム用
の一つめのアプリケーションウィンドウ50とワードプ
ロセッサー用の二つめのアプリケーションウィンドウ5
2を表示している。ドローイングウィンドウは三つの図
形表示物である、矩形、楕円、五角形を有するよう示さ
れている。ワードプロセッサーウィンドウはテキストを
有するよう示されている。その位置をマウス27により
制御される矢印の形のカーソル55がドローイングウィ
ンドウ内の矩形の外郭線上に位置するよう示されてお
り、これは所望の処理を行うためにユーザーが該矩形を
選択した場合であってもよい。これは代表的設定であ
り、例えばユーザーが特許明細書とそれに関する図面を
作成しているところで起こる例であってもよい。コンピ
ュータとこれから行われるタスクに依り、表示領域全体
を一つのウィンドウが占めていてもよく、また、多数の
ウィンドウがオーバーラップして占めていてもよい。
【0031】前述のコンピュータ環境および表示領域の
内容は標準的なものとなっている。本発明は該環境に他
の一態様を付加する。該付加態様は多数の枠取りされた
領域60を有する可動透明オーバーレイである。該枠取
り領域はマルチエレメントグリッド内の互いに境界を接
する複数の矩形として示されているが、後述のように必
ずしも互いに境界を接する必要はない。さらに、必ずし
も同時に複数がディスプレイ上に表示される必要はな
い。オーバーレイ上の枠取り領域を表示領域内にある表
示物と区別するための補助として、オーバーレイ上の表
示物が実線で示され、アプリケーションウィンドウと図
形表示物が点線で示されている。後述のように、オーバ
ーレイは特定される枠取り領域の重要性を指定するため
の(アイコンまたはテキストのような)指標を伴うこと
が望ましい。このためオーバーレイは透明なものとして
与えられる一方で、オーバーレイ上の枠取り領域の必要
からいくつかの不透明部または半透明部を有してもよい
と考えられる。
【0032】所定の枠取り領域が表示の一部上に置か
れ、該領域内で動作が行われる場合、該動作は特定され
た該領域の特性を持つものとなる。このように各枠取り
領域は、表示領域の関連部分に運ばれて該部分に適用さ
れることが可能となるツールのアクティブ領域と考えら
れてもよい。このようなツールの適用され方の性質が与
えられることから、該ツールは時にクリックスルーツー
ルと呼ばれる。後述の多くの説明はオーバーレイを単一
な透明シートとして扱っているが、オーバーレイは、多
くの半透明ツールをそれぞれ有し相対的に可動な複数の
透明シートの形態を含んでもよい。
【0033】適用対象表示物上にツールを現すことは最
も直覚的アプローチであると考えられ、また該アプロー
チは一般的に認められるものである。しかしこれとは逆
のスタック順序を保証する特別な環境があってもよい。
例えば、オーバーレイ上のマークによってでさえいかな
るアプリケーション表示物も不鮮明であってはならない
ようなクリティカルなアプリケーションがあってもよ
い。この場合にはアプリケーションを透明に現し、オー
バーレイをアプリケーションの背面に現すことによりア
プリケーションが可能となる。後述のように、オーバー
レイプログラムの基本的操作は前記いずれについても同
様となる。このためオーバーレイという言葉は、それが
表示領域の表示物の上面または背面に現れることにかか
わりなく、ツール関係シートの集合を表すために用いら
れる。いくつかの場合においてはあるスタック順序から
他のスタック順序へユーザーが切替えを行うことが可能
であるようにすることが好ましい場合もある。
【0034】ユーザーが表示領域に対してオーバーレイ
を置く方法はたくさんあるが、これはトラックボール3
0を用いてユーザーの利き腕でないほうの手により行わ
れることが好ましい。直線運動的位置設定はボール35
の回転により行われてもよく、この他の操作はボタン3
7を用いて行われてもよい。オーバーレイおよびその内
容の変更はサムホイール40の回転により行われてもよ
い。
【0035】クリックスルーツールとオーバーレイは新
たなユーザーインターフェイス素子を提示するが、該素
子は標準インターフェイス素子と共に用いられてもよ
い。従来技術プログラムの多くに使用されるタイプの定
型的ツールパレット62が例として示されている。プロ
グラムとOSに依り、与えられたプログラムに特有のツー
ルとパレットはプログラムウィンドウにしっかり固定さ
れてもよいし、または該プログラムのための他のウィン
ドウに対し相対的に可動な別個のウィンドウとして現れ
てもよい。オーバーレイツールの実施例に関する後述の
説明の大部分はクリックスルーツールを扱うが、パレッ
ト62内にあるような従来ツールがオーバーレイ上に結
合され、該オーバーレイ上の他のツールと共に動かされ
てもよい。パレット62は実線で示されており、これは
該パレットがオーバーレイ上にあることを示している。
従来ツールは一つまたはそれ以上のオーバーレイシート
をクリックスルーツールと共有することが可能であり、
また別個のオーバーレイシート上に隔離されることも可
能である。
【0036】図2は、メモリ17またはファイル記憶シ
ステム20に記憶された各データ項目が表示領域23に
現れるよう処理される過程を表すフローダイヤグラムを
示す。プログラムの素データ70は通常、各プログラム
特有のフォーマットで記憶されている。該フォーマット
はプログラムの特性であり、プログラム操作のためにほ
ぼ最適化されている。データは翻訳装置(または翻訳プ
ログラム)72による処理に従い、該装置(またはプロ
グラム)はデータをディスプレイ上に現れるべき表示を
特定する画像データ構造73に変換する。フォーマット
は多数あり、例えば画像データ構造73はビットマップ
であってもよいし、また、Display PostscriptやQuickd
raw のようなプログラム言語の一連の命令であってもよ
い。詳細はともかくとして、画像データ構造は(まだビ
ットマップになっていない場合)ディスプレイの解像度
において表示が可能となるよう充分な情報を有していな
ければならない。そうでない場合にはディスプレイ上の
表示のための処理が加えられる。
【0037】オーバーレイも同様な階層構造により特性
づけられる。該階層構造においてオーバーレイの素デー
タ75は、該データをオーバーレイ画像データ構造80
に変換する翻訳装置(または翻訳プログラム)77によ
り処理される。前記二つの画像データ構造は結合ノード
82で示される地点で結合され、最終的ディスプレイイ
メージ83に変換される。画像データ構造を結合するた
めに特定される技法は、オーバーレイが不透明部または
部分的不透明な指標を伴う透明シートとして現れること
を保証しなければならない。後述のようにオーバーレイ
はビジュアルフィルタと呼ばれるようなものを含んでも
よいし、またビジュアルフィルタを組み込むツールを含
んでもよい。そのような具体例において、結合ノードは
ディスプレイイメージの各部を修正したりフィルタ処理
することが可能である。オーバーレイの構成および外観
の仕様について、各ツールの具体例と共に以下詳細な説
明を行う。
【0038】本発明のシースルーインターフェイスは三
つの概念的ユーザーインターフェイス層であるカーソル
層、オーバーレイ層、アプリケーション層の相対的位置
設定を必要とする。カーソル層はその最小限として、平
面内の識別された点(カーソル位置)により定義され、
該識別点と共に正確に動く一つまたはそれ以上の表示物
を含む。オーバーレイ層はその最小限として、共に組み
合わされて動く一組のツールを含む。アプリケーション
層は表示体を伴う一つまたはそれ以上のプログラムを含
む。これら各層は順にサブレイヤーを含んでもよい。例
えばカーソルはドラッグドロップ表示物を伴ってもよい
し、オーバーレイのツールは単純なツールを互いに積み
重ねることで作られてもよいし、また各アプリケーショ
ンはオーバーラップウィンドウシステムのようにオーバ
ーラップしてもよい。
【0039】図3は、これら三層間の関係およびオーバ
ーレイ85とアプリケーションプログラム87、88
(アプリケーション#1、#2として示されている)と
の間の情報のやりとりのフロー図を示す。オーバーレイ
ツールが表示体の上面に現れるか背面に現れるかに関係
なく、オーバーレイとアプリケーション間の情報のやり
とりは同一となる。
【0040】トリガーがかかるとオーバーレイツールは
アプリケーションへ命令を送出する。該命令は任意のデ
ータ構造を含んでもよい。アプリケーションは自身のデ
ータ構造を変えることで該命令に応答してもよいし、オ
ーバーレイへデータを送り帰すことで応答してもよい。
加えて、自身をペイントする時はいつでも、アプリケー
ションは自身の表示体(スクリーン上の現行表示)に関
する情報を与えることでオーバーレイに応答する。オー
バーレイは該表示体を(例えばビジュアルフィルターを
用いることなどによって)ユーザに提示する前に修正し
てもよい。
【0041】アプリケーションは一定のコマンドに応答
してオーバーレイへデータを送り帰すため、図はアプリ
ケーションからオーバーレイへの前記とは逆の経路も示
している。本発明の詳細な実施例に関する後述の説明は
クリックスルーツールを扱うが、その基本的内容はオー
バーレイ上の従来ツールにも適用される。
【0042】オーバーレイソフトウェアはウィンドウマ
ネージャー92と共に処理を実行する。該ウィンドウマ
ネージャーはオペレーティングシステムの一部であって
もよく、ウィンドウフレームを作成してもよいし、ディ
スプレイ上のウィンドウの作成、移動、サイズ変更およ
び記述を監督してもよい。ウィンドウマネージャーは入
力信号を入力装置からそのまま受け取り、該信号を適正
なアプリケーション(通常はカーソル直下のウィンドウ
を有するそれ)へ送り、位置情報をアプリケーションの
座標系で表された座標に翻訳する。ウィンドウマネージ
ャーはまた、ウィンドウの内容をどこに描くかの情報を
アプリケーションに与える。
【0043】オーバーレイへの入力信号は(例えばマウ
スイベント座標のような)OSからの入力信号そのままで
あってもよいし、ドラッグドロップ対象表示物または他
のアプリケーションにより与えられてもよい。加えて、
オーバーレイツールの重ね合わせが可能であるような実
施例については、他のオーバーレイとして見えるものか
ら入力信号が来てもよい。オーバーレイへの一組の付加
入力信号(図には明示されていない)は、表示体に対す
るオーバーレイの位置設定のための信号を含んでもよ
い。
【0044】図の実施例においては入力信号は汎用言語
の命令に翻訳され、該命令は適正なアプリケーションの
ための翻訳装置(またはプログラム)ヘ送出される。入
力信号がアプリケーション#1へ送出される命令を起こ
す位置情報を有していた場合、該命令は翻訳装置(また
はプログラム)93へ送出される。該翻訳装置(または
プログラム)は該命令のうちのいくつかをアプリケーシ
ョン#1の入力言語の命令へ変換し、また該命令のうち
のいくつかをアプリケーション#1の処理呼出しへ直接
変換する。アプリケーション入力言語の命令は、該命令
を処理呼出しへ変換する命令解析装置(またはプログラ
ム)95へ送出される。図は入力信号がアプリケーショ
ン#2に関係する場合についても示しており、この場合
汎用言語の命令は翻訳装置(またはプログラム)97へ
送出され、次にアプリケーション#2の処理呼出しを発
生させる命令は命令解析装置(またはプログラム)98
へ送出されることが可能となる。
【0045】汎用言語の命令を前記両アプリケーション
言語の命令に変換する一実施例について以下に説明を行
う。ビットマップの処理をするペイントプログラムおよ
び座標指定された表示物の処理をするドロープログラム
の実施例を考える。さらに、カーソル下のオーバーレイ
ツールが色を赤に変更することを指定する場合を考え
る。通常、命令は一連の位置情報である演算子を含んで
おり、また、一つまたはそれ以上のパラメータを含むこ
とが可能である。汎用言語の命令が含む実施例として以
下を想定することが可能である。
【0046】SetColor<x,y>red, SelectCorner<x,y>,and Scale<x,y><x',y'>2.0. 前記SetColor命令について考える。ピクセルの処理をす
るペイントプログラムにとって、カーソル位置は必要と
される動作を決定するすべての位置情報を与え、また単
一命令が必要とされるすべてである。関連するペイント
プログラム言語の単一命令として以下が想定されてもよ
い。
【0047】SetColorPixel<x,y>red. ドロープログラムにとってどの表示物が選択されたかを
カーソル位置に基づき決定することが第一に必要である
ことと想定され、この後該表示物に対し色が指定され
る。関連するドロープログラム言語の命令シーケンスと
して以下が想定されてもよい。
【0048】SelectObject<x,y> SetColorSelectedShape red. 選択された表示物の色設定処理がオーバーレイ上の従来
ツールで行われた場合、命令シーケンスは同一になるこ
とが想定されるが、該命令シーケンスは二つのステップ
に分かれることが想定される。第一ステップはユーザー
が従来方法で表示物を選択することであり、その次のス
テップはユーザーが従来のカラーパレット内の赤いボタ
ンをクリックすることである。
【0049】前記設定における(クリックスルーツール
を用いた場合に対する)変化事項は、入力信号が汎用言
語の命令へ変換されることを避けるためにオーバーレイ
とアプリケーション翻訳装置(またはプログラム)をし
っかり結合させておくこととなることが想定される。さ
らに、オーバーレイはそれがどのアプリケーションをサ
ポートしているかについての情報を維持しなければなら
ないこと、および入力信号を適正なアプリケーション入
力言語に変換することが想定される。 2.0 オーバーレイツール実施例概観 オーバーレイが有用なものとなるために、オーバーレイ
はユーザーのアプリケーションの利用を支援する一組の
ツールを有していなければならない。多くの該ツールに
ついて以下に説明を行う。これらツールのいくつかはそ
れのみで本発明に関するものであり、またそれら以外は
オーバーレイの内容物としてのみ本発明に関する。利き
腕でない方の手でできるタスクのほとんどは、現行タス
クを中断する代償を払えば利き腕によってもなされるこ
とが可能である。しかし両手使用を必要とするいくつか
のタスクがある。後述の説明のツールの多くはクリック
スルーツールとなっている。この言葉は、前述のように
表示体の一部上をツールを通してクリックすることでツ
ールが適用されることを表している。
【0050】該ツールは以下の内容を含む多くの興味深
い特性を有している。該ツールはいくつかの対話ステッ
プを一つにまとめることをしばしば可能とする。ユーザ
ーの目は作業領域から離れる必要がなくなる。インター
フェイスは直接的、視覚的、また注意深く選択されたツ
ールを用いることで簡単に学習できるものとなる。ユー
ザーの利き腕でない方の手は大まかな位置設定にのみ寄
与し、微調整はマウスをもつ手で行われる。実施例は画
面内の図形表示物を作成、修正、および削除するための
ツールを伴うドローイングプログラム(グラフィカルエ
ディタ)環境を基本的に意図している。
【0051】ほとんどのツールの説明は図面を用いて行
われ、用いられる図面は異なる処理段階での作図場面の
外観、およびいくつかの場合にはツールのそれを示す一
連の描写を含む。いくつかの実施例については、本発明
のツールを用いた特定の処理が従来のドローイングプロ
グラムツールと技法を用いた同一の処理と対比される。
図8、13および23を除き、画面内の表示物は点線で
描かれ、またオーバーレイツールは実線で描かれる。こ
れは図1の取決めと逆なものとなる。
【0052】特定タイプのプログラムやエディタの引用
は、スタンドアロンアプリケーションプログラムを意味
することを意図してはいない。実際、いわゆるドローイ
ングプログラムの多くは非常に高度なテキスト処理能力
を有しているし、またいわゆるワードプロセッサーの多
くは強力なドローイングモジュールを有している。単一
プログラムで多くのタイプのプログラムの機能を提供す
る集積プログラムパッケージ(いわゆるワークスプログ
ラム)により、プログラムの区分けはさらにあいまいな
もとのとなる。従って特定タイプのプログラムの引用
は、明確に規定された機能を有するプログラムの引用と
してとらえられるべきであり、該プログラムがドローイ
ングプログラム、ワードプロセッサー、データベースプ
ログラム、またはスプレッドシート等として市販されて
いることによらない。
【0053】多くのツールはスナップドラッギングと呼
ばれる特徴をもつグラフィカルエディタと共に説明が行
われる。これはBierとStone の文献(文献Bier86)にス
ナップドラッギングとして記載されている(ある表示物
が他の表示物を引きつける)引力技法を引用したもので
ある。該技法ではキャレット(脱字記号)と呼ばれる特
別な点が表示物の角のような引力が与えられた位置に取
り付き、他の表示物が作成されると該表示物がキャレッ
トに取りつくことが可能となる。
【0054】ボタン、メニュー、パレットという言葉が
多くのツールと共に後述の説明で用いられる。これらの
言葉は一般に知られている意味で用いられるが、本発明
のオーバーレイがこれらに新たな特性を与えて既知のも
のとは別の手段にしてしまうため、一般的意味からの多
少の逸脱が時に必要となる。一般にボタンはディスプレ
イ上の一つの定義された領域を言い、これがクリックさ
れる時に所望の処理が起こる。オーバーレイで用いられ
るいくつかのボタンは、ボタン上の特定位置をクリック
することでユーザーが特定の結果を得ることを可能にす
る。一般にメニュー(しばしばプルダウンまたはポップ
アップが前に付けられる)は項目または特性のリストで
あり、メニューバーまたはメニューアイコンをクリック
して所望の項目にドラッグすることでユーザーが選択で
きるものである。パレットという言葉はボタンの集合表
示を言い、そこでは一つまたはそれ以上のボタンの選択
がクリックにより可能である。
【0055】ティーオフメニューは実質的にプルダウン
またはポップアップメニューのための代用パレットであ
る。従ってメニュー選択はメニュー項目選択の単一ステ
ップからなり、メニューバーのメニューを選択してから
メニュー項目を選択する複合ステップを取る必要はな
い。後述の説明で用いられるパレットメニューという言
葉はパレットまたはティーオフメニューを表し、利き腕
でない方の手により動かすことができ、ユーザーを現行
の主要タスクからそらすことなく作業領域に持ち込ま
れ、その後取り去られるものである。
【0056】後述の特定ツールのいくつかは、ビジュア
ルフィルタ、フィルタまたはレンズと呼ばれるものを利
用する。各フィルタは目視領域と呼ばれるスクリーン領
域であり、該領域内に表示された図形に対しワイヤーフ
レーム形式の拡大、透視、およびスップレッドシートセ
ル内の隠れた同一物の表示のような処理を行う作用素子
を伴う。これらフィルタは、ピクセル以外の多くの表示
形態、および拡大以外の多くの処理に対し汎用性を与え
るものである。表示出力を生成するために、これらフィ
ルタは現行の表示体を生成しているオリジナルなアプリ
ケーションデータ構造を利用する。従ってこれらフィル
タはアプリケーションデータ構造を実質的に異なるフォ
ーマットで表すことが可能であり、これにより従来そう
することが困難であった情報の強調表示、現行処理に関
係しない情報の圧縮、または従来表示されることのなか
ったデータ構造の部分的情報でさえ表示することが可能
となる。このようなビジュアルフィルタはオーバーレイ
ツール、特に該ビジュアルフィルタにより表示または強
調表示されるデータ構造の一部に関わる処理を行うツー
ルと協調して動作する。
【0057】ビジュアルフィルタはアプリケーションデ
ータ構造の修正表示だけでなく、特定されたアプリケー
ション図形に対し置かれる一時的オーバーレイツールを
生成してもよい。ユーザーはこれら一時的オーバーレイ
ツールをオーバーレイ上の他のツールと同様な方法で使
用することが可能である。例えばこれらツールはボタン
を含んでもよく、ユーザーはボタンの背面にあるアプリ
ケーションに送出されるべき命令を起こすために該ボタ
ンをクリック、クリックスルー、またはドラッグするこ
とが可能となる。
【0058】いくつかのフィルタが組み合わされて表示
物に順に処理を行う場合、表示物がフィルタの層を下か
ら上へ逐次的に通過するように見える効果を生じる。加
えて、あるフィルタがその下に他のフィルタを有する場
合、これら他のフィルタがスクリーン上に与えた境界を
該フィルタ自身の境界内に修正してもよい。 2.01 画面内への表示物の挿入および図形の作成 図4は、オーバーレイ上の図形パレットを用いて新たな
図形をグラフィカル画面に加える方法を示す。ユーザー
はツール上の円をグラフィカル画面内の矩形付近に大ま
かに位置設定したところである。ユーザーがマウスボタ
ンを押してその状態を保つと、ツールと同サイズの新た
な円が画面内に生成され、オーバーレイが消え、位置設
定の微調のために円はその中心を(例えば)カーソルの
矢に取り付ける。スナップドラッギング(文献Bier86)
のような引力技法を用いることでその中心が正確に矩形
の角上になるよう新たな円が置かれることが可能であ
る。ユーザーがマウスボタンをはなすと新しい図形はそ
の最終的位置となり、ツールが再び現れる。ユーザーが
三角形のようないくつかの角を有する図形を置いた場
合、マウスボタンが押された時点でカーソルにいちばん
近い角が該図形をカーソルに取り付ける点となったこと
が想定される。
【0059】前記の実施例では、メニュー内のサイズ
が、それがアプリケーションに適用された時点で、作成
図形のサイズを決定している。線、矩形、円、および他
の図形の選択の場合のような多くの場面では、ユーザー
は図形の一般的形を選択してからサイズや位置を特定す
ることを望む。オーバーレイは、両手を用いて選択、位
置設定、およびサイズ設定タスクを流暢で自然な形態で
行うことができる利点を有する新たな技法を可能とす
る。
【0060】図5は、矩形の四つの角すべてを同時に置
くことを可能とする矩形作成の実施例を示す。最初に、
利き腕でない方の手が画面内の矩形上にツールの矩形を
置いたところである。ユーザーはマウスカーソルでツー
ル矩形をクリックし、マウスボタンを押して画面内に初
期サイズの矩形を作成し、位置設定する。その後ツール
が消える。マウスカーソルにいちばん近い矩形角が該カ
ーソルに取り付く。該矩形角の対角に新たなカーソルが
現れ、該カーソルの位置は利き腕でない方の手で操作さ
れる。矩形の該両対角は同時に位置設定されることが可
能であり、またスナップドラッギングを用いて即座に置
かれることが可能である。マウスボタンがはなされると
矩形が置かれてツールが再び現れる。この両手作図技法
は他の図形の各位置に対しても使用されることが可能で
あり、該位置としては、線分の両端点、円の中心と円周
上の点(円の平行移動とサイズ設定が同時に行なわれる
ことが可能となる)、三角形の二角(三角形の平行移
動、回転、およびサイズ設定が同時に行なわれることが
可能となる)を含む。 2.02 クリックスルーボタン ほとんどのユーザーインターフェイスでは、ボタンが行
う処理を記述するテキストは該ボタン自体のアクティブ
領域内に置かれる。しかしオーバーレイ上においては、
アクティブ領域を透明にしてその近辺にテキスト、アイ
コン、または処理を示す他の指標表示を伴わせるほうが
好ましいことがしばしばである。これによりユーザーが
ボタン内に見える表示物に処理を行うことが可能とな
る。各アクティブ領域はクリックスルーボタンと呼ばれ
る。クリックスルーボタンは表示物のピックアップに用
いることも可能である。
【0061】図6は、削除、移動、およびコピー処理の
ためのクリックスルーボタン、および画面から表示物
(楕円)を削除するための処理シーケンスを示す。ユー
ザーは削除ボタンが表示物グループの上になるようオー
バーレイの位置設定を行い、この一方でこれら表示物の
うちの一つにカーソルを置く。特定の処理の実行におい
てシステムは、マウスボタンがその上ではなされた時に
処理されることとなる表示物をマウスボタンが押されて
いる期間にわたり強調表示する。ユーザーがマウスボタ
ンをはなすと選択された表示物が削除される。いくつか
の表示物は削除ボタンに交差するが、ユーザーがマウス
カーソルで示した表示物のみが実際に削除される。この
ことは処理対象表示物の厳密な特定を可能とする。また
クリックスルーボタンはユーザーが処理と処理対象表示
物を単一な両手動作で選択することを可能とする。ユー
ザーが前記と異なる処理を行おうとしていた場合は、別
のクリックスルーボタンが使用されることが想定され
る。
【0062】図7は、カラーパレットとして用いられる
クリックスルーボタンのアレイ、および画面内の表示物
(五角形)の色変更のための処理シーケンスを示す。こ
の場合各ボタンは、右上部角に色を示す(各色は異なる
パッチパターンで表される)三角形領域を有する矩形と
なっている。ユーザーはカラーパレットの所望の色をも
つ部分を五角形上に置き、マウスでその上をクリックす
る。楕円も該ボタンの下となっているが、ユーザーがマ
ウスカーソルで示す五角形のみがその色を変更する(ユ
ーザーが表示物のない領域をボタンを通してクリックす
る場合、プログラムは該動作を無視するか、または該動
作を省略した翻訳をすることが可能である)。従来のド
ローイングプログラムでは、ユーザーは(選択ツールを
得るためにカーソルをツールパレットへ動かすような動
作を必ず最初に行った後で)色が変更される表示物へカ
ーソルを動かし、表示物の選択のため該表示物上をクリ
ックし、そして所望の色の選択のためカーソルをカラー
パレットまたはメニューへ動かすことが想定される。
【0063】カラーパレットボタンは互いに境界を接す
るように示されているが、削除、移動、およびコピーボ
タンの場合のように互いに離れていてもよい。さらに、
ボタン上の色領域は不透明部として示されているが、そ
れは透明に近くてもよい。色領域の背面が透けて見える
場合、色領域はボタン領域全体をカバーすることが可能
となる。表示物の輪郭色を変更するために、同様のクリ
ックスルーボタンのアレイが提供されることが可能であ
る。与えられるボタンの色は前述のように表示されるこ
とが可能であるが、色は三角形領域の外周のみに与えら
れるか、もしくはボタンの外周にわたり与えられるよう
にされる。
【0064】図8は、ドキュメント内のテキストのスタ
イルを設定するための特性パレットとしてのクリックス
ルーボタンのアレイを示す。各スタイル(regular 、bo
ld等々)はツール上にアクティブ領域を有している。こ
の実施例ではボタン機能を記述するテキストがアクティ
ブ領域内に位置している。該領域内に表示されているテ
キストの選択が該テキストのスタイルを変更する。この
実施例ではユーザーはボールド(bold)ボタン内のテキス
トを選択しており、この結果選択されたテキストはボー
ルドフェイスに変換される。プログラムがテキスト選択
として認識する特定イベントは、該イベントが所望のボ
タンから始まっている限りさして重要でない。テキスト
選択のメカニズムが所望のテキスト上のカーソルドラッ
グである場合、ユザーは選択のためにアクティブ領域内
に開始位置を設定し、マウスボタンを押し、選択を完了
させるためドラッグを行い、そしてマウスボタンをはな
すことが想定される。マウスボタンがはなされる時点で
カーソルはアクティブ領域の外となる傾向にあるが、こ
れはどちらでもよい。 2.03 クリップボード クリップボードツールはその背面にある表示物から図形
や特性をピックアップし、多くのアプリケーションで良
く知られているコピーやペーストキイを表示化したもの
のように動作する。クリップボードは表示物全体、また
は色、線パターン、もしくはフォントのような特性をピ
ックアップすることが可能である。クリップボードは単
一または複数の表示物コピーを保持することが可能であ
る。クリップボード上に捕捉された表示物または特性
は、パレットツールの場合のようにその上をクリックす
ることで該クリップボードからコピーされることが可能
である。クリップボードツールでピックアップされた表
示物または形態は、ある意味でツールの一部となる。こ
のことはユーザーがオーバーレイをカスタマイズするこ
とを可能にする一般的特徴の一具体例にほかならない。
該特徴については後に詳細な説明を行う。
【0065】図9は、対称クリップボードの処理動作を
示しており、該クリップボードはユーザーがクリックし
た図形をピックアップし、該図形を90°ずつ回転させ
て得られるすべての図形を生成する。クリップボードを
動かして再びクリックする結果、ユーザーは運ばれた該
対称図形のコピーを作図領域上に落とす。クリップボー
ドの左上角の小さい正方形のクリックは、新たな図形を
クリップできるようクリップボードの内容を消去する。
【0066】図10は、表示物の図形的特性をピックア
ップしてこれを他の表示物に与える一対のツールを示
す。図は楕円の色を矩形へ転写する特定シーケンスを示
す。ユーザーは表示物の領域色に感受性をもつツールシ
ートを通して楕円上をクリックする。領域色が図形から
与えられて(または円形切片がその色ごとコピーされ)
ツールシートの一部となる。該円形切片もその色がどこ
から来たかの指標として保持される。
【0067】この後ユーザーはツールシートを動かし、
特性アプリケータとして動作するツールシートの円形タ
ブを矩形上に置く。ユーザーがマウスをクリックすると
該矩形はツールシートから色を得る。二つめのツールシ
ートは、別の表示物から二つめの充填色を得るために用
いられることが可能であり、別のアプリケーションのた
めにいくつかの色を保存することを可能とする。
【0068】図11は、その背面にある表示物の形状を
コピーし、該形状の選択された部分を再びアプリケーシ
ョンに移すことをユーザーに可能とするツールの処理動
作を示す。ユーザーがツールを通して表示物(この場合
は曲線)をクリックした時点で、曲線またはそのコピー
がツールの一部となる。後にユーザーが新たな図形を作
成する時、該ツールは雲型定規のような使われかたをす
る。すなはち、ユーザーは新たな図形の近くにツールを
置き、曲線のどの部分が新たな図形に付加されるかを特
定するため曲線上の二点をクリックし(特定された部分
は強調表示されてもよいし、色が変えられてもよい)、
そして選択された部分がこれにいちばん近い新たな図形
の端に付加される。 2.04 クリックスルーボタンとビジュアルフィルタ 前述の各クリックスルーボタンでは、各クリックスルー
ボタンのアクティブ領域は完全に透明であり、ボタン背
面の表示物をボタンがないかのように見せていた。しか
し、適正に処理を行うために必要となる情報を強調して
ボタン背面の表示物を表すことが多くのアプリケーショ
ンに対し有用となることが想定される。このことは前述
のビジュアルフィルタを用いて行うことが可能である。
【0069】図12を例にとると、ユーザーは多くの積
み重ねられた矩形に対しており、中間にある矩形の左上
部角を選択しようとしている。該角は最上部の矩形によ
り覆われており、指示することが困難となっている。し
かし頂点選択ボタンを有するツールが該角の所在を明ら
かにするワイヤーフレーム図(線状図)を表示し、これ
によりその選択を容易にする。
【0070】ビジュアルフィルタとオーバーレイツール
の組合せは特に有用なものとなり得る。従来のドローイ
ングプログラムでは、表示物のワイヤーフレーム図を生
成するためにユーザーは個別の命令を送出しなければな
らないことが想定される。該命令がいったん与えられる
と、処理対象表示物だけでなくすべての表示物がワイヤ
ーフレーム図として作図されることが想定される。この
ことはユーザーの適正な処理対象表示物確認を助けるた
めに重要となる該表示物の内容を失うことになる可能性
がある。一方前記例ではユーザーは、局部表示処理、命
令編集、および処理対象表示物これらすべてを単一な両
手動作で一括指示する。 2.05 オーバーレイとユーザー動作の合成 本発明のオーバーレイ技法はいづれの既存のユーザーイ
ンターフェイス技法とも組み合わせることが可能であ
り、また該組合せによりツールに興味深い特性を与える
ことが可能となる。
【0071】このようなインターフェイス技法の一つと
してユーザー動作を利用するものがあり、該動作は通常
一つまたはそれ以上のポインタ装置ストロークとなって
いる。一つのユーザー動作は通常一つまたはそれ以上の
特徴的点(例えばストローク経路の開始および終了点、
二つのストロークの交差点等)により特性づけられる。
【0072】図13は、オーバーレイを用いてパイメニ
ューと単一ストローク動作を組み合わせるツールを使用
する処理例を示す。該ツールは、多くの形態メニュー部
分と原型表示物の保持領域に囲まれたアクティブ領域中
心(表示領域)を与える。
【0073】最初ツールの一部である原型表示物は、点
線の外周と一つめの充填色を有する矩形である。ユーザ
ーは実線の外周と二つめの充填色を有して画面内にある
三角形上にツールの該中心領域を置く。三角形から充填
色メニュー領域へのストローク(カーソルドラッグ)に
より、ユーザーは三角形の充填色を原型表示物に与える
ことを指示する。この時点で原型表示物の色が変更され
る。しかし該パイメニューは逆に原型表示物の特性を表
示領域の表示物へ与えることにも用いられる。例えばユ
ーザーが点線メニュー領域から三角形へストロークする
場合、原型表示物の点線パターンが三角形へ与えられ
る。
【0074】単一の特性だけでなく任意の特性集合また
は図形全体でさえも表示領域へ与えることを可能とする
別のパイメニューが作られることも可能である。例えば
原型表示物領域から表示領域へのストロークは原型表示
物のすべての特性を指示された表示物へ与えてもよい
し、また原型表示物自身を表示領域へコピーしてもよ
い。
【0075】中心から外へ、または外から内へのストロ
ークが可能なパイメニューはそれ自体で本発明に関す
る。しかしオーバーレイの内容物となっていないと意味
をなさないことが想定される。片手動作パイメニュー
は、ストロークがはじまると該ストロークの始点上に中
心を置いて現れる(文献Hopkins91 )。従って外から内
への初期ストロークの容易な方法はない。しかし本発明
のパイメニューはオーバーレイ上にあることから、スト
ロークが始まる以前にパイメニューが現れてその内側へ
のストロークが可能である。ボタン内部および外部へス
トロークする考え方はパイメニューのような円形形態に
限られない。いづれのボタン形状もこの機能を可能とす
る。
【0076】図14は、KurtenbachとBuxton(文献Kurt
enbach91)による単一ストローク動作とオーバーレイの
組み合わせを可能にする図形作成ツールを形成するため
の方法を示す。図は色のパレットから成るツールを示し
ているが、図7のような設計を用いることも可能であ
る。ユーザーは作図画面内の所望の位置にカーソルを置
き、所望の色がカーソル下となるようボタンを動かす。
特定の色のボタン上からストロークを始めることで、ユ
ーザーは該色の表示物を作成しようとしていることをシ
ステムに告げる。ストロークの方向は作成される図形の
形を決定し、ストローク長はそのサイズを決定する。ス
トロークが始まるとオーバーレイが消えて図形のパイメ
ニューが現れ、ストローク方向と図形との対応をユーザ
ーに示す。ストロークが完了すると新たな図形が画面に
付加される。KurtenbachとBuxtonが述べているように、
この処理の速度をさらに上げる多くの方法がある。例え
ばユーザーがストロークを瞬時に行った場合、パイメニ
ューは現れる必要がない。
【0077】ユーザーが単一の短い両手動作で新たな表
示物の位置、色、サイズ、および形を特定することを可
能にすることは注目すべきことである。従来のドローイ
ングプログラムでは、ユーザーはまず矩形ツールの選択
のためにカーソルをツールパレットへ動かし、カーソル
を所望の開始位置へ戻し、所望の位置とサイズに矩形を
作成し、そして所望の色選択のためにカーソルをカラー
パレットまたはメニューへ動かすことが想定される。従
来のカラーパレットは図7または図14のクリックスル
ーボタンのアレイのように見えることが可能であるが、
従来のパレットは通常、透明でないことが想定される。 2.06 オーバーレイツールの画面内への取り付け 前述の各実施例では、画面上のオーバーレイの動きは画
面の内容とは独立であった。しかし本発明は、画面内の
一つまたはそれ以上の表示物と列をなすよう自身(また
はオーバーレイシート全体)の位置を自動設定する有用
なツールも提供する。後述の実施例では特定の表示物を
画面上の各点に取り付けるために利き腕でない方の手が
用いられることが可能であり、一方利き腕は他の処理を
行う(または行う準備をする)ための自由な状態とな
る。
【0078】図15は、スナップドラッギング(文献Bi
er86)で用いられるようなルーラー・コンパス系の形成
のための照準線を作成することに用いられるツールの例
を示す。該ツールは共通点(円の中心)を異なる角度で
通過する多くの照準線を有する。照準線のうちの一つ
(例えば45°の線)がソフトウェアカーソル(例えば
図に示されているスナップドラッギングキャレット)の
付近を通過する場合、該線はキャレットに取り付いて長
く伸び、ツールは選択された該照準線の傾きを表示す
る。この後ユーザーは該線を(例えばトラックボールボ
タンクリック、またはツール中心部の円上をマウスクリ
ックすることで)その場所に固定する。この結果ユーザ
ーはキャレットを照準線に取り付ける新たな処理を行う
ことが可能となる。図は、該照準線を指標に用いた新た
な線分の作図を示している。
【0079】前記スナップ技法は線以外の他の照準表示
物に対しても用いることが可能である。図16は、矩形
の左下角にキャレットが置かれた図面上に位置設定され
た照準円パレットを示す。これら円のうちの一つ(例え
ば右の大きな円内の小さな円)の中心がキャレットの付
近を通過する場合、該円は色を変えることで強調され、
中心がキャレット先端へ正確に取り付く。この実施例で
はパレット全体が取り付くが、単一の円のみが一時的に
パレットの他の円から離れるようにすることも可能であ
る。
【0080】ユーザーはキャレット先端のような特定点
以外の画面内の任意の点にツールを取り付けてもよい。
図17は、スナップドラッギングでサイズ設定中心また
は回転中心として用いられるアンカー(浮動固定点)表
示物の例を示す。ここではユーザーはアンカーが矩形角
近くになるまでオーバーレイを動かす。こうするとユー
ザーがそれ以上オーバーレイを動かさなくてもアンカー
が矩形角に取り付く。ユーザーはオーバーレイを固定
し、利き腕でアンカーの周りに矩形を回転させる。
【0081】図18は、回転、サイズ設定、および傾斜
のいづれの処理も行えるように図17のツールに汎用性
をもたせたツールを示す。該ツールはアンカー位置の設
定、処理の選択、および処理の実行を単一の両手動作で
行うことを可能とする。すなはち、アンカー自身の周り
に処理のパイメニューが置かれる。ユーザーが矩形角へ
アンカーを取り付けたところを再び仮定する。ユーザー
は処理名、すなはち回転処理、上へカーソルを置きマウ
スボタンでクリックすることで処理を開始する。マウス
ボタンが押されると、システムはBierとStone の文献
(文献Bier86)に記述されているスナップドラッギング
のように表示物を回転させる。特に、アンカーを回転中
心とした表示物の初期位置からの回転角度は、キャレッ
トの動きを通して生じた角度と等しく保たれる。対話処
理(この場合は回転)の期間中オーバーレイは消えてい
ることが好ましい。
【0082】画面表示物に取り付く前述の各ツールは、
仮想ルーラー、コンパス、または分度器のような仮想作
図ツールをユーザーに提供するオーバーレイの使用実施
例ともなっている。現実のこれらのツールと同じく、利
き腕でない方の手はツールの位置および方向を制御する
ことが可能であり、一方利き腕は表示物または線の作成
に用いられる。現実のツールを用いることと同様に、ツ
ール付近に作られる表示物または角はツールの制約に影
響される。この種のアプリケーションにオーバーレイを
用いることの一つの利点は、パレットメニューの場合に
見られる如くツールの制約が持ち込まれた後すぐさま容
易にその影響をなくすことが可能になることである。 2.07 オン/オフボタンとパレットメニューの合成 多くのシステムはトグルボタンを押すことでオンおよび
オフできるような各状態を有している。さらにそのよう
なボタンはパレットメニュー上に置くことができ、この
結果これらボタンを利き腕でない方の手によってカーソ
ル付近に置くことによりカーソルのボタンへの移動量を
低減でき、またユーザーの視線を作業領域からそらす必
要をなくすことが可能となる。また、パレットメニュー
は大きなもの(全体が同時に画面上にある必要はなく、
容易にスクロールオンおよびオフできるようにすること
が可能である)になり得るため、より大きく目立つオン
/オフボタン表示が用いられてもよい。
【0083】図19は、異なる傾きをもつ線として表示
された一組のオン/オフボタンの例を示し、ここでユー
ザーはスナップドラッギング照準表示物のクラスを指定
できるようになっている。画面内の矩形はその四つの角
および中心をホットポイントとして明示している。ユー
ザーが特定の照準線(例えば垂直線)をクリックする
と、該線は強調され、ホットポイントを有するすべての
表示物は該クラスの照準線、すなはち垂直照準線、を最
大に伸ばす。ツールはまた選択された照準線の傾きの数
値指標を(右下のボックス内に)与えるよう示されてい
る。ユーザーが一つ以上の傾きの異なる照準線を選択す
る場合、数値指標は表示されないことが想定される。 2.08 仮想ガイドラインおよびグリッド 2.04章ではオーバーレイとビジュアルフィルタの組
合せについて説明した。これらの実施例でビジュアルフ
ィルタは、表示物に対する処理を促進するよう通常とは
異なる方法で画面表示物を提示した。しかしビジュアル
フィルタはまた、通常ではまったく表示できない表示物
を表示したり、そのような表示物に処理を施すことを可
能にするために用いられることも可能である。例えばビ
ジュアルフィルタはガイドラインやグリッドを局部的に
表示することに用いられることが可能である。図20
は、それぞれ異なる種類のグリッド表示を行う三つのツ
ールを示す。左の最初の二つのグリッドは間隔の異なる
矩形グリッドである。最後のグリッドは六角形グリッド
である。各グリッドはビジュアルフィルタが置かれた時
のみ現れるが、オーバーレイが動いてもグリッド点が動
かないようグリッドの座標系は画面に拘束される。従っ
てグリッド点をクリックしてオーバーレイを動かすこと
で、ユーザーはこれらグリッドを用いて画面を編集する
ことが可能となる。ユーザーはグリッド点から線を引き
始め、オーバーレイを上へ動かし、そしてグリッドを用
いて線を引き終えたところである。従来のプログラムで
はグリッドの外観はそのグリッドをオンした時のみ見る
ことができた。しかし前記ツールを用いることで、ユー
ザーはいづれの与えられたツールについてもそれが与え
るグリッドを使用前に見ることが可能となる。すべての
ビジュアルフィルタツールはある程度まではこの特性を
有している。
【0084】図21は、ユーザーにカスタマイズされた
グリッドツールの作成および使用を可能とする方法を示
す。カスタマイズされたグリッドツールは一組の選択さ
れた図形をピックアップし、ユーザーがこれをカスタマ
イズされたグリッドとして使用することを可能とする。
該クリッドは他のグリッドと同様に表示物を正確に置く
ために使用されることが可能である。このツールは2.
03章でクリップボードとして説明したオーバーレイの
特性を利用したものである。画面内の各線は、ユーザー
が二列コラムレイアウトのテンプレートの仕様化のため
に(例えばエディタを用いて)作成したグリッドであ
る。ユーザーは該グリッドをカスタマイズされたグリッ
ドツールとして使用し、該ツール上で各グリッド線はツ
ールの一部となる。しかしグリッドツールに関する前述
の説明のように、各グリッド線はたとえツールが動かさ
れても各位置を維持し、このためこれらは信頼性の高い
基準点であり続ける。結果として、各グリッド線はグリ
ッドツールが提示されている時のみ現れることとなる。
図は、ユーザーが矩形を変形することを始め、最終的に
矩形を左コラム下部へ取り付ける様子を示している。
【0085】一つの可能な拡張は、いづれの画面内表示
物もアプリケーションからオーバーレイ上へ移植を可能
とすることである。このようにされた表示物は画面内表
示物が取り付くよう引力が与えられることが想定され、
これによりユーザーが自身のカスタマイズされたガイド
ラインおよびガイド曲線を作成することが可能となる。 2.09 計測および定義ツール 前述の各ツールの作成は表示物の図形的特性を抽出する
こととなる。図22は、幾何学的特性、すなはち座標、
長さ、傾き、および角度等を計測するクリックスルーボ
タンツールの使用を示す。ユーザーが表示物の端点上を
このツールを通してクリックすると、該端点の座標がレ
ポートされる。ユーザーがもう一回クリックする場合、
システムは最初の点から二つめの点への長さおよび傾き
をレポートする。ユーザーが三回クリックを行う場合、
システムは最近クリックされた三点によってできる角度
をレポートする。マウスが現在指示しているものに基づ
く情報を表示するツールはまた、ワードプロセッサに有
用である。例えばツールはそれを通して選択された単語
の定義を表示することが可能である。 2.10 利き腕でない方の手による対象物指示 ほとんどのツールはオーバーレイの位置設定に利き腕で
ない方の手を用い、対象物指示には利き腕を用いるが、
指示される表示物が大きい場合、指示に利き腕でない方
の手を用いることも有意義なこととなる。例えばテキス
トドキュメントではパラグラフは通常大きいため、利き
腕でない方の手で指示することが可能となる。図23
は、オーバーレイと共に動いて矢印先端下のパラグラフ
の隠れた構造を表すツールを示す。該ツールはパラグラ
フをプリンタ用にフォーマットするための印刷フォーマ
ット名を常に表示する。この実施例ではボディーと言う
名のフォーマットとなっているパラグラフを矢印は指示
している。 2.11 ユーザ動作翻訳ツール オーバーレイの特に興味深い応用の一つは、ユーザーに
完全な局部入力翻訳装置(またはプログラム)を与える
ことである。例えばドローイングプログラムは通常、マ
ウス入力を選択、移動、線の作成等々の一連の命令とし
て翻訳することが想定される(例えばRubineの文献のユ
ーザー動作を用いた図形の編集(文献Rubine91)または
GoldbergとGoodisman の文献のユーザー動作を用いたテ
キストの編集(文献Goldberg91)参照)。ユーザ動作翻
訳ツールを画面上に置くことにより、ユーザーはこれま
でと異なる方法で同じエディタと対話することが想定さ
れる。例えば図24において、ユーザーはユーザ動作翻
訳ツール上にXを描く。Xがツールにとって削除を意味
する場合、X直下の表示物は削除されることが想定され
る。
【0086】このようなユーザ動作翻訳装置(またはプ
ログラム)は様々なアプリケーションで使用されること
が可能である。例えばそれはマウスベースのワードプロ
セッサのユーザーインターフェイス層の最上位にユーザ
ー動作インターフェイス層を形成する方法を与える。ペ
イントプログラムでは、ユーザ動作翻訳ツールが置かれ
ていない時はマウスまたはペン動作をやめることが可能
であり、また該ツールが置かれていれば命令編集処理が
行われることが可能となる。さらにユーザ動作翻訳ツー
ルにより与えられるインターフェイスは異なるアプリケ
ーション間で共通化することが可能である。例えばオー
バーレイがウィンドウシステムにより与えられる場合、
同一のユーザ動作翻訳装置(またはプログラム)がドロ
ーイングプログラムからワードプロセッサヘ移されるこ
とが可能であり、このことはユーザーが特定動作を複数
の内容で使用することを可能とする。例えば図24のX
は、ドローイングプログラムでは図形削除、ワードプロ
セッサではパラグラフ削除、またペイントプログラムで
は領域削除に用いられることが可能である。 2.12 局部命令翻訳装置(またはプログラム)とビ
ジュアルフィルタの合成 局部命令翻訳装置(またはプログラム)を持たせる考え
方はビジュアルフィルタと組み合わされることが可能で
ある。例えば多くのドローイングプログラムはハンドル
と呼ばれる小さいユーザーインターフェイス表示物を画
面の表示物上に表示する。これらハンドルをカーソルで
指示してマウスボタンを押すことで、ユーザーは表示物
の移動、サイズ設定、および変形処理等を行うことが可
能となる。この考え方はオーバーレイと組み合わされて
様々な異なる種類のハンドルを与えることが可能とな
る。例えば図25において、ユーザーは画面内の三つの
表示物から二つを選択したところであり、選択された表
示物は小さな黒い正方形で強調される。変形ハンドルツ
ールを置くことによりユーザーは一連の制御ハンドル
(小さな白い正方形)のいずれをも見ることができ、ま
た指示することが可能となる。中心ハンドル上でのクリ
ックおよびドラッグは選択された表示物を移動させる。
他のいづれかのハンドルのクリックおよびドラッグは選
択された表示物を変形させる。
【0087】一時的ツールの付加を行いアプリケーショ
ン表示物に関し置かれるビジュアルフィルタの有用性
は、いくつかの該フィルタが単一オーバーレシート上で
有効な場合特に明確に現れる。この場合ユーザーは一時
的ツールから成る異なる集合を交互に利用することが可
能となる。例えばあるツールの集合は前述のような移動
および変形を可能とする編集ハンドルを与えてもよい。
他のもう一つの集合は図形中心またはその図形のいづれ
かの角を中心とした回転を与えてもよい。これらツール
が同時に与えられる場合、一時的ツールは受け入れがた
い煩雑なものとなってしまうことが想定される。しかし
前記二つのツールは、アプリケーション表示物の(位
置、タイプ、数を含む)形態に依存した(位置、タイ
プ、数を含む)形態を有するツールの大きな多様性の利
点をユーザーに与えるものであり、それゆえ該ツールは
特別に調整されて該表示物に効果的に処理を行うものと
なる。 2.13 ログおよびデバッグツール ツールはアプリケーションの通常処理に用いられるだけ
でなく、ユーザーがアプリケーションについてのヘルプ
機能(コメント)を得たり、プログラマーがアプリケー
ションのデバッグを行ったりすることも可能とする。ツ
ール境界内で行われる単一のユーザー動作またはマウス
動作が、これからユーザーが行おうとする命令に関する
情報の表示を該ツールに起こすようなツールがその例で
ある。図26は、マウスの絵を表示するツールの例を示
す。カーソルがツール内にある間にユーザーがマウスボ
タンを押すと、ツール上に表示されたマウスアイコンが
どのマウスボタンが現在押されているかを示す。このよ
うなツールは、例えば対話ツールのビデオテープを作成
する場合便利であることが想定される。この種のツール
のより高度なバージョンは、実行されている命令の名前
をも表示したり、該命令を実行しているソースコードを
開示したりもすることが想定される。 2.14 挿入点を用いる処理 クリックスルーボタンはオーバーレイによって作られる
ことが可能な特に興味深い種類のボタンであるが、通常
のボタンも有用である。図27は、数字のキーパッドと
して動作するボタンアレイの例を示す。該キーパッドは
ユーザーが作業しており、ペンやカーソルを用いて起動
している領域付近に置かれることが可能であり、これに
よりいくつかの処理についてはキーボードを不要にす
る。マウスが数字をクリックするたびにオーバーレイは
一文字の幅だけ右に動く。このキーパッドは計算機とし
ても使用されることが可能であり、ユーザーが計算値を
ドキュメント中へ容易に挿入することを可能とする 2.15 回転可能ツール 照準線ツールのような前述のツールのいくつかは、オー
バーレイシートに対し平行移動が可能である。ツールが
オーバーレイシートに対し回転やサイズ変更が可能なよ
うにすることもできる。図28は、タイプフェイスおよ
び/またはタイプテキスト選択のためのツールの例をし
めす。任意の傾きにテキストを作成するため、ユーザー
はツールを回転させることが可能である。この実施例で
はユーザーがツールの計測領域(ツールの角)を通して
画面上の二点をクリックする場合、ツールは該二点間を
結ぶ直線の傾きに自身の方向をむける。その後ユーザー
が該ツールからフォントを選択すると、該フォントの新
たなテキストが前記の計測された傾斜で付加される。図
に示された実施例は他の計測がなされるまで方向変更し
たままの状態を維持するが、ツールに一時的な方向変更
をさせることもまた可能である。 2.16 図形検索、ガイドラインおよび表示物作成の
合成 前述のようにオーバーレイツールは、いくつかのタスク
ステップを単一な両手動作にまとめることが可能であ
る。図29は、ステップリダクションの効果を示す一実
施例である図面ラベルツールを示す。該ツールは、規約
ベースの図形検索(文献Kurlander92 )、スナップドラ
ッギング照準線、ビジュアルフィルタ、およびプッシュ
スルー表示物テンプレートをを組み合わせる。該ツール
はすべての図面の矩形境界内の指定位置に図面ラベルを
付加するために用いられる。該ツールが表示領域上を動
かされると、表示領域内にあるすべての大きな矩形を見
つけるために規約ベースの図形検索機能が用いられる。
そのような各矩形に対し、該ツールは矩形の各端からあ
る設定された距離をおいて照準(位置合わせ)線を描
く。ユーザーはマウスを用いてツール表面上のテキスト
ラベルのうちの一つを選択し、該ラベルをスナップドラ
ッギングを用いて照準線に取り付ける。 2.17 ウィンドウへのドキュメントロードのための
ツール 一つまたはいくつかの表示物の図面への付加に加え、オ
ーバーレイツールはディスクファイル全体をエディタウ
ィンドウ、ドキュメントフレーム、または他の領域へロ
ードするために用いられることも可能である。図30は
そのようなツールを示す。図の最初の部分はツールをし
めしており、該ツールはドキュメントウィンドウの集合
上に置かれた多くのドキュメントアイコンを有する。ユ
ーザーが一つのアイコンをクリックすると、対応するド
キュメント(図の実施例では該ドキュメントはテキスト
と図形を有している)がカーソル背面のウィンドウ内に
開かれる。図の実施例ではユーザーは選択されたウィン
ドウ内に置かれた一連の有効ファイルから家という名前
のファイルを選択し、その後ファイル家の内容が選択さ
れたウィンドウ内に表示される。これとは別のアプロー
チとして、ユーザーがツールを所望のウィンドウ付近に
置きアイコンを該ウィンドウ内へドラッグする方法が考
えられる。 3.0 オーバーレイのカスタマイズおよび使用 システムの設計者がどんなにユーザーの要求に整合しよ
うとしても、ユーザーの見本のようなものは存在しな
い。従ってシステムは、ユーザーがオーバーレイツール
とツールレイアウトを自身の基準に適合するようカスタ
マイズし、これから行おうとする特定タスクにオーバー
レイを適合させることを許容することが予想される。本
章ではユーザーがそうすることを可能にする多くの方法
についての説明を行う。さらに、オーバーレイの使用に
対し簡潔で一貫した取決めがある場合、オーバーレイは
より効果的に使用されることが可能である。本章ではユ
ーザーがより効果的にオーバーレイを使用することを可
能とする多くの方法についての説明を行う。 3.01 移動、コピー、および削除ツール 少なくともユーザーは、一種類以上のツールを作成して
しまえばそれ以外のものは望まない傾向にあり、またツ
ールを共通化して使えるようにそれをクラスターへ置く
ことを望む傾向にある。ユーザーがオーバーレイの形成
に係わる能力を持たなければならない場合、ユーザーは
少なくとも移動、コピー、および削除ツールの能力をオ
ーバーレイシートから与えられなければならない。図3
1は、この能力を与えるための、すなはちツール上でこ
れらの処理を行うハンドルを与える、一つの技法を示
す。特定される実施例は、図9を用いて説明が行われた
転写ツールである。図31に示すように各ハンドルは所
望の処理を与えるツール側部のアイコンである。ツール
を動かすためにユーザーがハンドルをクリックしている
ところが示されている。実際には、ツール上のハンドル
はおそらくもっと小さいはずであり、図に示されたもの
よりももっと大まかな表示のはずである。さらに、各ハ
ンドルはツールの通常使用の間は表示されない(および
効果を持たない)ように、またツール編集状態での処理
にのみ寄与するように作られることが可能である。 3.02 ツール編成 アプリケーションは自身のインターフェイス内に多くの
ツールを有する傾向にある。混乱を避けるため、これら
ツールとシートを編成してユーザーが直ちにいづれの所
望のツールをも見つけることが可能なようにすることが
必要である。一つのアプローチは、すべてのツールを単
一シート上に置いてスクロールとズームでこれらを指示
することである。各ツールは矩形面(タイル)上に編成
させることが可能であり、このようにされた各矩形面を
境界を接して結合させることで単一の大きなシートを形
成することが可能となる。この後ユーザーは特定のツー
ルを見つけるために所望の矩形面を画面上へスクロール
し、そして所望のツールをその場へスクロールすること
が想定される。クロールとズームを共に用いることで、
ユーザーはかなり大きな矩形面内におけるツール指示が
可能となることが想定される。加えて、トラックボール
の動きとオーバーレイの動きとの間の対応は、トラック
ボールが素早く動かされた場合かなり大きい動きになり
得ることから、小さいトラックボールの動きが必要とな
る。
【0088】矩形面の数が非常に多くなる場合、該矩形
面の編成に加えて階層構造をなす編成を使用することが
可能となる。例えばユーザーは、それぞれが特定タスク
に適用される多くのオーバーレイシートを有する仮想ボ
ックスを作成してもよい。またこれとは別に、アレイと
なった各矩形面は実際には矩形面の積み重ねであっても
よい。ユーザーは現行画面に表示する矩形面をボタン上
の繰り返しクリックまたはポップアップメニューの使用
により選択することが可能である。ユーザーはまた(ア
レイよりもむしろ)一連のタイプ変化を行う単一の矩形
面を使用することも可能である。
【0089】本説明の原型ツールで用いられる技法は、
単一のシートが異なるツール集合を異なる場面で表示す
ることを可能とする。表示される集合はいくつかの方法
で選択されることが可能である。(Apple ComputerのHy
perCard (登録商標)の矢印の手法のように)ユーザー
は集合内の特別なツールをクリックし、他の集合への転
移を起こすことが可能である。加えて、マスター表示は
有効な集合の内容表示を与え、これによりユーザーはい
づれの集合へも転移が可能となる。異なる集合を同時に
使用するためにユーザーは付加的シートを作成する。 3.03 ツール合成−ビジュアルマクロ クリックスルーツールとビジュアルフィルタはこれらを
オーバーラップさせることで合成されることが可能であ
り、それゆえ従来処理を組み合わせて新たな処理を対話
的に作成する能力をユーザーに与える。これは直覚的で
強力なマクロ(複合)能力を与える。図32は、充填色
を(例えば赤に)変更するツールと線色を(例えば青
に)変更するツールが合成されて充填色と線色の両方を
変更するツールを形成する、ユーザーの立場から見た、
様子を示す。該実施例で二つのツールは、それらのアク
ティブ領域が部分的にオーバーラップするよう一緒に運
ばれる。ユーザーが該ツールのオーバーラップしていな
い部分をクリックする場合、結果として行われる処理は
単一ツールにより通常与えられる処理のみとなる。一方
ユーザーがオーバーラップ領域をクリックする場合、結
果として行われる処理は量ツールの処理の組合せとな
る。
【0090】ツールの合成は二つの方法で行うことが可
能である。まず、二つのツールを一体となって動くよう
同一オーバーレイシート上にオーバーラップすることが
可能である。合成ツールが頻繁に使用される傾向にある
場合、これは便利である。独立に動けるようツールを別
々のオーバーレイシート上に置いてこれを合成すること
も可能であり、これらは特定の組合せが必要な場合に応
じて一緒に運ばれる。
【0091】オーバーラップされたツール(またはフィ
ルタ)のスタックが入力(例えばマウスクリック)を受
け取る場合、該入力イベントは該ツールの上から底へ通
過させられる。各ツールは順に命令列を修正し、これは
その後アセンブルされることとなる。例えばツールは現
行命令列に付加的命令を接続してもよい。線色を青に変
更するツールと合成されて充填色と線色の両方を変更す
るツールを形成する、ユーザーの観点から説明が行われ
た、前述の充填色を赤に変更するツールの実施例を考え
る。線色ツールが最上部にある場合、該ツール通過後の
命令列はSetLineColor blue となることが想定され、ま
た両ツール通過後の命令列はSetLineColor blue;SetFil
lColor redとなることが想定される。 3.04 より複雑なマクロ 前述のツール合成はマクロ操作のための強力な技法であ
る。しかしユーザーが数個以上のツールを合成したい場
合、ツールが煩雑になって視覚直覚的利点が失われる危
険がある。これをふまえてオーバーレイは合成ツール作
成のための別の技法を与える。該技法はいくつかのプロ
グラムで見られるマクロ記録機能に類似したものであ
る。これは通常、ユーザーがシステムをマクロ作成のた
めの状態に置き、その後所望の処理シーケンスを単一表
示物に施すことを必要とすることが想定される。システ
ムは該表示物に行われるすべての処理の合成ツールを自
動作成することが想定される。
【0092】前記合成ツールは多くの利点を有する。例
えばまだ作成されていない表示物を含む多くの表示物に
あるまとまった処理を行いたい場合、追加される表示物
に対する処理は所望の個別処理から成る全体シーケンス
を再び施すよりも単一ステップのほうが都合がよい。加
えて、ユーザーは単一表示物または同時に選択された表
示物集合の両方に対しあるまとまった処理を容易に施す
ことが可能となる。 3.05 選択表示物の記憶 ユーザーが表示物の集合を選択し、各表示物に対し同時
にまたは個別に処理を行う場合、いづれの場合も時に問
題を生じる。処理を行った後、ユーザーは該処理を修正
または取消たい場合がある。オーバーレイは、そのツー
ルがどの表示物に適用されたかを記憶する能力を各ツー
ルに持たせる技法を与えることが可能である。各表示物
集合に処理を行った後に別の処理が必要であることに気
がついた場合、ユーザーは各表示物を思い出したり明確
な選択処理を行うことなしに該表示物集合を取り戻すこ
とが可能となる。ツールがいちばん最近選択された図形
集合しか記憶しない場合でもこのメカニズムは有用であ
る。 3.06 ツールの作成および変更 ツールを作成および変更するための技法のいくつかにつ
いてはすでに説明を行った。これらはオーバーレイを構
成するための移動、コピー、削除、およびオーバーラッ
プツールについての前述の規定と、表示物の形や特性を
コピーして2.03章で述べたような特別なクリップボ
ードツールを作成するための技法とを含んでいる。本発
明はユーザーがオーバーレイツールの作成および変更を
さらに柔軟に行えることを意図している。例えば新たな
オーバーレイツールの幾何学的構造物を作成するために
ドローイングプログラムまたはワードプロセッサが用い
られることが可能であり、その後埋め込みボタン構造
(文献Bier90,Bier91a,Bier92 )を用いて該構造物に特
性が与えられる。
【0093】さらに、オーバーレイの一つのシートを他
のシートの編集に使用することも可能である。そのよう
な環境ではグラフィカルエディタ環境での作図と同様の
形式でオーバーレイシートが編集可能になることが想定
され、また前述の様々なツールや技法がもり込まれるこ
とが可能となる。さらに、利き腕出ない方の手が位置変
更だけでなくオーバレイシートのサイズ変更も可能とす
る場合、ユーザーは特別なアプリケーションのためにツ
ールを大きくしたり小さくしたりすることが可能とな
る。
【0094】本発明ではオーバーレイツール作成のため
に二つのツールキットを用いる。一つめはオブジェクト
指向プログラミングを通してツールが作成される従来の
ツールキットである。二つめのツールキットは埋め込み
ボタン技法に基づくものであり、ユーザーはグラフィカ
ルエディタを用いて新たなツールまたはツールの集合を
作図し、その後これら図形に特性(例えばクリックスル
ーボタン機能等)を与える。該特性はユーザーがカスタ
マイズした言語で表される。 3.07 ズームおよびスクロール アプリケーション上でのオーバーレイシートの位置設定
については、ユーザーにとって等価な二つの方法があ
る。ユーザーがオーバーレイを表示画面上で動かしてい
る間、表示画面が固定され続けることが可能であり、ま
たユーザーがオーバーレイ下の表示画面を動かしている
間、オーバーレイが固定され続けることが可能である。
ユーザーにこの種の両機能を与えることは有意義なこと
となる。アプリケーションのスクロールはユーザーが該
アプリケーションの表示画面外の部分を表示画面上ツー
ルへ運ぶことを可能にし、広面積なアプリケーションの
操作を可能にする。アプリケーション上でのオーバーレ
イのスクロールはユーザーが表示画面外のツールを表示
画面上のアプリケーション表示物へ運ぶことを可能に
し、広面積なオーバーレイシートの使用を可能にする。
表示体に対するオーバーレイの位置設定を言う場合は、
平行移動だけでなく回転も含めて考えられなければなら
ない。
【0095】利き腕を使いマウスボタンを押してシート
境界上をドラッグすることでオーバーレイシートの移動
が可能となるが、利き腕でない方の手と二つめの入力装
置(例えばトラックボール)の利用が好ましい。トラッ
クボールボタンとこれらの機能の対応の一方法は次のよ
うになる。左のボタンクリックはトラックボールとサム
ホイールをそれぞれ表示画面(アプリケーション)のス
クロールとズーム用にする。右のボタンクリックはトラ
ックボールとサムホイールをそれぞれオーバーレイのス
クロールとズーム用にする。中間のボタンクリックは表
示画面とオーバーレイを一体にしてスクロールとズーム
が行われることを可能とする。このような対応はユーザ
ーによりカスタマイズされることが可能である。例えば
ユーザーがオーバーレイを必要ない時は消し、必要な時
は再び現わすことを簡単に行いたい場合、トラックボー
ルボタンの一つにこのオンおよびオフのトグル機能を持
たせてもよい。さらに、複数のオーバーレイシートがあ
る場合については、各シートが独立にスクロールおよび
ズームされることを可能とする付加的対応を与えること
が望ましい。これは異なるシートに対して異なるトラッ
クボールボタンの組合せをユーザーがクリックするよう
にすることで可能となる。
【0096】これらの移動およびサイズ制御を用いるこ
とでユーザーはいづれのアプリケーション表示物上にも
ツール中心を置くことが可能となり、また所望の表示画
面領域をカバーするようツールのサイズ変更を行うこと
が可能となる。いくつかの表示物にツールを適用する場
合のシート動作を最小にするため大きなツールが用いら
れることが可能である。作業領域全体をカバーするよう
引き伸ばされたツールはアプリケーション全体にわたり
効果的に命令状態(モード)を設定する。前述のツール
のいくつかについては、オーバーレイをある意味で固定
できるようにすることが必要である。例えば2.06章
のスナップツールは、画面表示物が取りつくことができ
るよう照準線が固定されることを必要とする。(例えば
中間のトラックボールボタンがクリックされて)オーバ
ーレイシートが表示画面に固定される場合、これらツー
ルをオーバーレイシートに対して固定することが一つの
慣例になると想定される。オーバーレイのズームやスク
ロールと同様の効果を与えるものとしてツールレイアウ
トが考えられる。この場合あるツール集合がより大き
く、また他のそれがより小さく描かれ、より大きく描か
れた該集合がユーザーの制御下に入る。これはある意味
でツールの魚眼表示に類似するものであり、ユーザーが
多くの表示画面スペースを占めることなく多くのツール
を見ていくつかのツールを選択することを可能とする。 3.08 オーバーレイ移動のためのキーボード 前述の各実施例はトラックボールのような入力装置を利
用しており、該入力装置はオーバーレ内の大きな動作お
よび小さな動作の両方を一連の位置信号として容易に起
動可能である。一方キーボードのようなオンオフ変化の
みを知らせる入力装置から一連の位置信号を与えること
もまた可能である。例えばコンピュータキーボードのあ
るまとまったキーがオーバーレイを一定方向に一定距離
だけ動かすようにすることが可能である。これらのキー
を一回またはそれ以上押すことでユーザーは与えられた
ワークピース上に異なる枠取り領域を置くことが可能と
なる。このアプローチを用いてオーバーレイ上のツール
レイアウトを正常に動作するよう調整することが可能と
なる。例えば各ツールは標準アレーにレイアウトされる
ことが可能であり、この場合の全体間隔はオーバーレイ
移動キーのクリックでオーバーレイが移動する距離の倍
数となる。
【0097】これとは別に、キーボードキーは反転クラ
ッチとして使用されることが可能であり、これによりオ
ーバーレイが容易にマウスの動きと結合したり離れたり
することが可能となる。このキーが押されている場合オ
ーバーレイはマウスカーソルと共に動く。このキーがは
なされるとオーバーレイはその時の位置に止まり、マウ
スカーソルは独立に動く。
【0098】オーバーレイのスクロールに関してのキー
ボード使用は、トラックボールやマウスで構成されてい
ないコンピュータのユーザーに比較的容易なオーバーレ
イ使用を可能にする利点がある。 3.09 状態ツール 両手使用のユーザーはマウスカーソルとツールの両方を
表示画面上で動かすことで様々な表示物に繰り返して処
理を行うことが可能であるが、これは多くの設定を必要
とし、またオーバーレイとマウスカーソルの位置変更を
逐次に行わなければならない片手使用のユーザーにとっ
て都合のわるいこととなる傾向にある。この問題はオー
バーレイ環境とより従来形態に近いインターフェイスと
の間でスムースな転移を可能とすることで克服すること
が可能である。例えば3.01章で述べたツールハンド
ルは、カーソルを該ツールに対応するツール状態に置く
ためのボタンを含むことが可能である。該状態期間中ユ
ーザーはあたかも該ツールを通してクリックしているか
のように繰り返して処理を行うことが可能となる。該状
態が継続していることの指標としてカーソルは該ツール
に似た外形を帯びることが可能である。
【0099】クリックスルーツールが一時的な状態ツー
ルになることを可能にすることは、一時的状態ツールを
他のツールと共に動作させることを可能にするかどうか
の問題を提起する。一つのアプローチは、一時的な状態
ツールがクリックスルーツールが合成されるのと同一の
方法で他のツールと合成されることを可能とすることで
ある。もう一つのアプローチは、一時的な状態ツールが
素データに処理を行える唯一のツールとなるようシステ
ムに要求することである。すなはち、ツールを該状態に
置くことはこれ以外のツールの使用を排除することが想
定される。そのような場合オーバーレイシートがボタン
により再び置かれてユーザーが該状態を出ることが可能
である。そのような状態から出たり入ったりすることは
ユーザー動作を用いて行うことも可能である。例えばツ
ール内のダブルクリックで該状態に入ってもよい。ダブ
ルクリックを再び行うことで該状態から出ることが想定
される。 3.10 ツールのドラッグアウト 通常のツールの使用は、マウスカーソルをツール内へ動
かすこと、マウスボタンの一つを押すこと、および行わ
れるべき中間動作の後マウスボタンがはなされることと
を含む。マウスボタンが押されることとはなされること
の間には多くのことが考えられる。これらは、マウスが
まったく動かないこと、マウスが動いてツール内に止ま
ること、マウスがツールを離れること、およびマウスが
ツールを離れて再び戻ってくることとを含む。処理がツ
ール内で始まる場合、マウスボタンがはなされるまで該
処理が継続することが一つの慣例になり得る。該慣例は
ツールを比較的小さくすることを可能とし、一方ユーザ
ーが処理をツール内で始めてその後該処理をツール外へ
継続することを可能とする。 3.11 クリックスルーツールおよびオーバーレイと
従来ツールの合成 前述のように従来ツールはオーバーレイツールと共に、
またはオーバーレイツール自体として使用されることが
可能である。本発明はクリックスルーツールを伴うオー
バーレイが既存のプログラムの強化機能として与えられ
ることを意図する。従来のユーザーインターフェイスを
利用する初期バ−ジョンプログラムに親しんだユーザー
は、強力で新たなユーザーインターフェイスを前にする
と慎重に事を進めることが想定される。従ってユーザー
は従来ツールのほとんどをマウスカーソルで可動な一連
のパレットとしては保持するが、該ツールはほとんどオ
ーバーレイには付加されないことが想定される。ユーザ
ーがオーバーレイの使用および利き腕でない方の手の使
用にさらに親しんで短時間で容易にツール設定を行うよ
うになるに従い、ユーザーはより多くのツールをオーバ
ーレイに付加することが可能になる。ユーザーは最初従
来ツールのみを用いて一つまたはそれ以上のオーバーレ
イシートを作成し、いくつかのクリックスルーツールの
試用を始め、その後にクリックスルーツールと従来ツー
ルを同一シート上に混在させることが想定される。
【0100】従来ツールとクリックスルーツールを合成
することもまた可能である。例えば図7に示すようなク
リックスルーカラーパレットは、一組の従来形態の作図
ツールと合成されることが可能であり、該ツールの場合
ユーザーはツール上をクリックしてカーソルを作図領域
へ動かし、そしてカーソルをクリックまたはドラッグし
て図形を形成する。そのような合成は、所望の色のクリ
ックスルーボタンを所望の従来の作図ツール上に重ね合
わせることでユーザーが色と図形を単一ステップで選択
することを可能とする。ユーザーはそれでもまだ従来方
法でカーソルを動かし図形を形成しなければならない。
これは図14に示されるツールを特徴づけるツール動作
の全体的効率化を与えないが、それでもユーザーは単一
クリックで色と図形を選択可能になることで効率化を得
る。状態ツールもまたクリックスルーボタンおよびその
複合体と共に用いられることが可能であり、該ボタンは
線幅、点線形態、およびこれらに類似の他の表示物の特
性を特定し、該複合体は一つ以上の表示物特性の特定に
用いられる。
【0101】前記のような合成のもう一つの実施例は、
ユーザーが最初に従来の作図ツールをクリックし、その
後所望の一連の特性の特定のために一つまたはそれ以上
のクリックスルーボタンを通して作図を進める場合であ
る。この方法では従来の作図ツールのクリックにより表
示物の外形があらかじめ選択されているため、ユーザー
は単一ステップで描かれるべき表示物の特性および位置
の選択が可能である。 4.0 特定の実施 本章ではオーバーレイツールおよびビジュアルフィルタ
を含むシースルーインターフェイスの一般的実施につい
て説明を行う。ソフトウェアは、Sun Microsystems SPA
RCステーションおよびこの他のコンピュータ上のSunOS
UNIX(登録商標)と互換性のあるオペレーティングシス
テム上で走るセダープログラム言語および環境(文献Sw
inehart86 )内のMulti-Device Multi-User Multi-Edit
or(MMM)構造体(文献Bier91b )内で実行される。MMM
内に組み込まれたガーゴイルグラフィクスエディタ
(文献Pier88)がインターフェイステストのための複合
アプリケーションとして動作する。ユーザー入力装置は
利き腕用に標準的マウスを、また利き腕でない方の手の
ためにMicroSpeed FastTRAP (登録商標)トラックボー
ルを含む。該トラックボールは三つのボタンおよびサム
ホイールを含み、これらはインターフェイスに付加的パ
ラメータを与える。
【0102】本章では三つのオーバーレイサブシステム
について説明を行う。一つは二つのポインタ装置からの
同時入力を処理して複数の同時変化の後の表示画面の更
新を行うものであり、もう一つは位置指定イベントがツ
ールおよびビジュアルフィルタを通過する時に該イベン
トの変更を行うものであり、そしてもう一つは図形出力
が各ツールおよびビジュアルフィルタから送出される時
に該出力の変更を行うものである。 4.01 複数装置入力 シースルーインターフェイスは、次に述べるようなMMM
の特徴に依存している。MMM はマウスやトラックボール
のような複数の入力装置からイベントを受け取り、どの
装置がどのイベントを発生したのかを追跡し、そしてす
べてのイベントを単一の待ち行列上に置く。MMM は各イ
ベントを待ち行列から順に解除してどのアプリケーショ
ンに該イベントが送出されるべきかを決定する。各MMM
アプリケーションは階層構造に置かれており、該構造は
各アプリケーションが表示画面上でどのように入れ子に
されるかを示す。各イベントはルートアプリケーション
へ送られ、該アプリケーションはイベントをその子供
(下位)のアプリケーションへ送ることが可能であり、
下位のアプリケーションはイベントを階層ツリー上の更
に下位へ順に送ることが可能である。マウスイベントは
一般に入れ子の最深部のアプリケーションへ送られ、該
アプリケーションの表示画面領域はマウス座標を有して
いる。しかしユーザーが特定なアプリケーション内で表
示物のドラッグやサイズ変更を行っている場合、ドラッ
グやサイズ変更が完了するまですべてのマウス座標は該
アプリケーションへ行く。キーボードイベントは現在選
択されているアプリケーションへ行く。オーバーレイを
サポートするため、トラックボール入力を処理するため
のMMM の規約が変更された。オーバーレイが可動な場合
トラックボールおよびサムホイールイベントは最上位の
アプリケーションへ行き、該アプリケーションは各イベ
ントをそれぞれシートの移動およびサイズ変更命令とし
て翻訳する。シートが可動でない場合トラックボールお
よびサムホイールイベントは選択されたアプリケーショ
ンへ送られ、該アプリケーションは各イベントをそれぞ
れ該アプリケーションのスクロールおよびズーム命令と
して翻訳する。
【0103】図33は、ユーザー入力ルーチンのフロー
チャートを示し、該ルーチンは入力イベントに応答して
とられる適正な動作を決定する。オーバーレイを有する
システムが入力を受信する場合、システムはイベントが
オーバーレイの移動、カーソルの移動、オーバーレイの
起動、または通常の方法による従来アプリケーションへ
の該イベントの送出のどれを意図するかを決定し、その
後該決定に従って動作しなければならない。ルーチンは
最初に入力がオーバーレイ移動装置からかどうかをテス
トし、もしそうなら該装置の動作機能に従いオーバーレ
イを動かす。もしそうでない場合、ルーチンは入力がオ
ーバーレイサイズ変更装置からかどうかをテストし、も
しそうなら該装置の動作機能に従いオーバーレイのサイ
ズを変更する。もしそうでない場合、ルーチンは入力が
カーソル移動装置からかどうかをテストし、もしそうな
ら該装置の動作機能に従いカーソルを動かす。次に、そ
れが適正なものであればイベントはルートアプリケーシ
ョン(これは例えばウィンドウマネージャーであっても
よい)へ送られ、該アプリケーションはイベントが次に
どこへ送出されるかを決定する。
【0104】オーバーレイ移動装置という言葉は、オー
バーレイを動かすものとして現在指定された装置を意味
する。装置テーブルと呼ばれるソフトウェアデータ構造
体がある装置をオーバーレイ移動装置として現在指定し
ていれば、特定の物理的装置は特定な時点でオーバーレ
イ移動装置となる。この指定はユーザーによりいつでも
変更可能である。同じことがオーバーレイサイズ変更装
置という言葉にもあてはまる。 4.02 ツールおよびビジュアルフィルタによる入力
のフィルタ処理 MMM 入力イベントは通常、ルート(根)アプリケーショ
ンからリーフ(葉)アプリケーションヘ向かって規則正
しく移動する。しかし本発明を実行するシステムは各ア
プリケーションにわたり共通な多くのオーバーレイシー
トを有してもよい。オーバーレイをサポートするため、
各入力イベントは階層ツリーの下から上へ送り返されな
ければならない。図34の(A )は、アプリケーション
#1、#2、#3、#3A 、#3B および#4、および
オーバーレイシート#1および#2の間のアプリケーシ
ョン階層構造の例を示す。図34の(B )は、これらの
アプリケーションウィンドウとオーバーレイシートが該
階層構造に対しどのように画面上に現れるかを示す。
【0105】アプリケーション#1はルートアプリケー
ションであり、そのウィンドウはこれに関連する他のす
べてのアプリケーションウィンドウを有している。この
実施では該アプリケーションは最上位のMMM 矩形エディ
タとなっていることが想定され、該アプリケーションは
ウィンドウシステムとして動作する。この階層ツリーの
上から二段めの左から右への順序は表示画面上の上から
下へのアプリケーションの順序を指定しており、従って
アプリケーション#4が最上部のアプリケーションとな
る。オーバーレイシート#1はアプリケーション#3と
#4の間に置かれており、一方シート#2はアプリケー
ション#4の上に置かれる。アプリケーション#3A お
よび#3B はアプリケーション#3のウィンドウ内に含
まれるように示されているが、これらは別の方法で#3
のウィンドウと関係づけられてもよい。
【0106】入力イベントは最初にオーバーレイへ送ら
れ、ユーザーがツールまたはビジュアルフィルタと対話
しようとしているかどうかが決定される。もしそうなら
該イベントはオーバーレイにより変更される。いづれの
場合でもイベントはルートアプリケーションへ戻され、
該アプリケーションは該イベント自体を受け入れるか、
さもなくば階層ツリーのさらに右方向に現れる下位のア
プリケーション上へ該イベントを送る。図34の(B )
に示すように、各オーバーレイシートのアクティブ領域
内およびアプリケーション#3上にカーソルが置かれる
場合の実施を考える。マウスボタンを押すことのような
起動イベントをユーザーが与える場合、該イベントは最
初にシート#2を通り、次にシート#1を通り、そして
カーソル座標を有するアプリケーションであるアプリケ
ーション#3B へ送られることが想定される。
【0107】MMM イベントを表すデータ構造は三つの方
法で変更されてオーバーレイをサポートする。一つめの
方法として、既に通過したアプリケーションツリーの部
分を表す注釈(belowChildおよびbelowTool と呼ばれる
イベントフィールド)がイベントに付加される。これに
よりルートアプリケーションが二回以上シートへイベン
トを送ることが避けられる。二つめの方法として、所望
のアプリケーションへ到達したときに翻訳される命令列
がイベントに付加される。例えばカラーパレットクリッ
クスルーボタンは各マウスクリックイベントに指定色で
修飾されたSetFillColor命令を付加する。最後の方法と
して、ツールがビジュアルフィルタを有する場合、イベ
ントが所望の表示物に対し適正に指示されるよう該イベ
ントのマウス座標が修正され、ビジュアルフィルタを通
して該表示物がカーソル下に現れる。
【0108】図34の(C )は、前記イベントが適正な
アプリケーションへ送られる様子を示す。特に、イベン
トが適正な装置座標を伴い適正な順序で各シートおよび
アプリケーション層へ送られるようにするため、イベン
トはアプリケーション階層構造を上下に移動する。 4.03 イベント送出ルーチン 前記4.02章では、入力イベントが適正なオーバーレ
イシートを通って所望のアプリケーションへ送られる方
法について説明を行った。本章以降では、フローチャー
トと疑似符号を参照し、いくつかの重要なルーチンにつ
いてのイベント処理のより詳細な説明を行う。該ルーチ
ンは、ユーザー入力ルーチン、イベント−アプリケーシ
ョンルーチン、イベント−オーバーレイルーチン、イベ
ント−ツールルーチン、翻訳および実行ルーチン、およ
び合成ルーチンである。
【0109】図34の(A )から図34の(C )に示さ
れる前述のようなオーバーレイを通してのアプリケーシ
ョンへのイベント送出は、次の三つのルーチンを使用し
ている。
【0110】イベント−アプリケーションルーチン;こ
のルーチンはイベントが標準的アプリケーションへ送ら
れる場合に実行される。
【0111】イベント−オーバーレイルーチン;このル
ーチンはイベントがオーバーレイへ送られる場合に使用
される。
【0112】イベント−ツールルーチン;このルーチン
はイベントがオーバーレイ上の特定ツールへ送られる場
合に実行される。 これら各ルーチンは他の一つまたはそれ以上のルーチン
を呼び出してもよい(例えばイベントが標準的アプリケ
ーションからオーバーレイへ、またはオーバーレイから
標準的アプリケーションへ送られる場合であり、このよ
うなことは前述の実施例で何回か起こる)。
【0113】与えられたイベントE は、階層ツリー内の
各アプリケーションおよびシートヘ入るごとにフィール
ドbelowChildを持ち、該フィールドはアレイ(または他
の多値データ構造)を有する。各通過段階での論理値be
lowChild A は、A の子供(下位)であるアプリケーシ
ョンまたはシートへのポインタであり、またイベントが
これまでに入った最後がA であることを示している。同
様なフィールドbelowTool は各通過段階でbelowTool O
を持ち、これはイベントがこれまでに入った最後である
O のポインタとなる。
【0114】図35は、イベント−アプリケーションル
ーチンのフローチャートを示す。該ルーチンは新たなイ
ベントが発生するたびごとにいくつかの変数が初期化さ
れることを前提としている。例えばbelowChild A は、
アプリケーションA の子供およびA のすべての子供の最
上位として定義される仮想アプリケーションに対し初期
化される。
【0115】図36は、イベント−オーバーレイルーチ
ンのフローチャートを示す。入力イベントがオーバーレ
イにより受信される場合、オーバーレイはそれが有する
各枠取り領域、すなはちツールのうちどれが該イベント
を処理するのかを決定する。いくつかの場合には数個の
ツールが順にイベントを処理する。ツールがクリックス
ルーツールである場合、該ツールは命令リストと呼ばれ
るデータ構造を算出し、これが該ツール背面の各ツール
(もしあるなら)またはオーバーレイ全面の背後にある
各アプリケーションへ(オーバーレイの親プログラムを
通して)送られる。該ルーチンは新たなイベントが発生
するたびごとにいくつかの変数が初期化されることを前
提としている。例えばbelowTool O は、O の背面にある
最上部として定義される仮想ツールに対し初期化され
る。オーバーレイが最初に作成される場合、それはユー
ザー動作状態になく、それが有するいづれのツールもユ
ーザー動作処理ツールにならない。
【0116】図37は、イベント−ツールルーチンのフ
ローチャートを示す。イベントE が特定なオーバーレイ
ツールT により受信される場合、T はE のタイプからど
の動作A が行われるべきかを決定する。T が従来の(非
クリックスルー)ツールである場合、T は即座に動作を
行う。そうでない場合T はそのオーバーレイ背面のアプ
リケーションへ該イベントを送るか、もしくは直接また
は他のツールを通してそのオーバーレイまたは他のオー
バーレイへ該イベントを送る。E が他のツールによりす
でに処理されている場合、T はすでにイベントE と関係
を持った他のいづれかの動作とA とを合成する必要があ
る場合がある。 4.04 翻訳および実行ルーチン外観 与えられる動作A は一般に、適当なプログラム言語で書
かれた任意の符号体であってもよい。該言語はC やPasc
alのようないづれの汎用プログラム言語であってもよい
が、もしそれが翻訳された簡潔な言語である場合はオー
バーレイツールのユーザーカスタマイズ化をより良くサ
ポートする。そのような言語にはApple社のHyperTalk
、Jhon Ousterhout によるTcl (文献Ousterhout9
0)、またはInterleaf (文献English90 )や埋め込み
ボタン構造(文献Bier90,Bier91a,Bier92 )で用いられ
ているようなLISPの小規模バージョンがある。各アプリ
ケーションが高密度処理状態で走るUNIXのような環境中
でのオーバーレイツール使用をサポートするため、A は
X ウィンドウシステムにより与えられるような中間処理
メッセージとして表されることが可能である。オーバー
レイツールの一般的実行は、小規模なLISP類似言語を用
いたセダープログラム環境(文献Swinehart86 )内、お
よび動作表現のためにX ウィンドウメッセージを用いた
UNIX/Xウィンドウ内で行われる。
【0117】与えられたソフトウェアプログラムP が動
作A を受信した場合、該プログラムは自身の文中で該動
作を翻訳しなければならない。いくつかのプログラムに
より処理が可能な動作をA が記述している場合、P はA
を自身の言語に翻訳した後自身(P )のデータ構造上で
A の処理を行わなければならない。符号体を特定な文
(スコープとも呼ばれる)へ翻訳することは良く知られ
たコンピュータサイエンス技法である。A が正常に翻訳
されるために特定なプログラムP はA で使用されるすべ
ての変数に対し結合子(論理値)をあたえなければなら
ない。後述の各実施例は前述の一般的実行における該技
法の特定な使用を示しており、該技法はアプリケーショ
ンと独立なツールに適用される。 4.05 汎用プログラムを用いた動作 例えばマウスカーソル背面にあるいづれかの矩形のサイ
ズを二倍にすることを意図する動作A は、次の疑似符号
に似た符号を有することが想定される。
【0118】 FOREEACHSHAPE,s,in PICTURE do ifISRECTANGLE s and INCLUDES s, cursorPoint then SCALE s, 2.0 endloop 該動作を翻訳するためP は前記の各単語に対して自身の
定義を与えなければならない。P は、図面内の各図形に
わたる繰り返しを指示するFOREEACHSHAPE に対し自身の
処理動作を、変数 PICTUREに対し自身の論理値を、図形
が矩形かどうかをテストするISRECTANGLE に対し自身の
ルーチンを、また図形のサイズ変更を行うSCALE に対し
自身の処理手続きを与えなければならない。加えてP
は、前述の各オーバーレイルーチンによりP に送られる
現行のカーソル位置を変数cursorPoint が有しているこ
とを明確にしなければならない。
【0119】オーバーレイ動作を簡潔なものとするた
め、セダーにおけるオーバーレイの一般的実行は前述の
実施例に示されるような汎用プログラムをサポートしな
い。その代わりとして一般的実行は各動作を命令リスト
に置き換える。この場合各命令は一連の論理値で修飾さ
れる命令符号となる。該論理値はオーバーレイで算出さ
れ、アプリケーションでは算出されない。 4.06 一つまたはそれ以上の命令を用いた動作 例えばカーソルから四分の一インチの範囲内でカーソル
点<23,37> 付近にある最上部の表示物をP が選択するこ
とを規定する単一命令は、次のようになることが想定さ
れる。
【0120】(SelectObject<23,37>0.25 ) LISP言語のように命令全体が括弧でくくられ、命令の始
まりと終わりがどこであるかを容易に知らせる。表示物
を選択して充填色を赤に、輪郭色を青にする次に示す動
作のように、各動作はいくつかの命令を有してもよい。
【0121】 ((SelectObject<23,37>0.25)(SetFillColor red) (SetLineColor blue)) この場合一対の付加的括弧が動作全体の始まりと終わり
を表す。これは前述のフローチャートにおいてL として
引用されている命令リストの一実施例となっている。 4.07 命令の翻訳 このような動作表現は一般的原型ツールで特に容易に翻
訳される。これはオーバーレイがすでに実行されている
ソフトウェアプログラムはみなこの形式で表現された命
令を翻訳するためである。従って前述のプログラム依存
のない命令リストを特定なプログラムP により翻訳可能
な命令リストに翻訳するために、各汎用命令をP が理解
できる一つまたはそれ以上の命令に翻訳することが必要
となる。例えばP はSelectObject命令を有さずにSelect
命令をその所望機能と共に有してもよい。Selectはその
二つめのアーギュメントをインチ形式の代わりにピクセ
ル形式とすることが想定される(72ピクセル/インチの
場合0.25インチ=18 ピクセル)。同様にP はSetFillCol
or命令を有さずにSetAreaColor命令を有してもよい。P
がSetLineColor命令を有する場合、命令リストの適切な
翻訳の一つは次のようになる。
【0122】((Select<23,37>18)(SetAreaColor red) (SetLineColor blue)) 命令列の長さが常に保持されるとは限らない。例えば該
動作は(SetFillColorAtPoint cursorPoint red) 命令を
有してもよく、これはカーソルにいちばん近い表示物の
色を赤に変える。特定プログラムP はこのような処理を
単一命令として与える必要はない。この場合単一命令(S
etFillColorAtPoint cursorPoint red) は(Select cuso
rPoint)(SetAreaColor red) の二つの命令に翻訳されて
もよい。
【0123】P がそのような命令リストに対する翻訳を
まだ実行しておらず、所望の機能を与える一連の処理手
続きを与える場合、各動作は直接処理呼び出しに翻訳さ
れることが可能となる。例えば前記動作は次のようなセ
ダープログラム言語の三つの処理呼び出しに翻訳される
ことが想定される。
【0124】SelectShape picture, 23,27 ,18 ; shape''GetSelectedShape picture ; SetAreaColor shape,red ; SetLineColor shape,blue ; 4.08 反転データフロー これまでに述べた動作は、命令およびデータをツールか
らアプリケーションへ伝達するものであった。命令によ
りアプリケーションからツールへデータを戻すこともま
た可能である。このことは命令リスト中にいくつかの空
白な記憶領域を持たせることで可能となる。例えばコピ
ーおよびペーストツールは次のようにして該動作を与え
ることが可能である。
【0125】 ((Select<23,37>18)(GetSelected fillInValue)) この場合fillInValue は後の論理値記録のためのラベル
fvのポインタである。
【0126】図38の(A )および38の(B )は、命
令により要求されたデータをアプリケーションが戻す前
後での該記録を示す。該記録はフィールドvalue を含
み、該フィールドにアプリケーションにより戻されるデ
ータに対するポインタが置かれる。二つめのフィールド
ready?はフィールドvalue に論理値が与えられるまで論
理値false を有する。最後のフィールドcondVar はセダ
ープログラム言語により与えられる状態変数と呼ばれる
同期表記を有する。状態変数は現在これを待っている各
プログラムのリストを含んでいる。該変数が有効になる
と、該変数に論理値を与えるアプリケーションが現在該
変数を待っている各プログラムにこれを知らせる。
【0127】この実施例ではアプリケーションP が座標
<23,37> で図形を選択した後フィールドvalue にポイン
タを記憶する。P がT と異なる処理過程を走っている場
合、T はP がポインタを記憶するまで待たなければ(状
態を保留しなければ)ならない。これはT がそのポイン
タをfvに主張しており、いったんvalue が受入状態にな
ったことが知らされると該ポインタがfvのフィールドva
lue に到達することが可能になるためである。 4.09 合成ルーチン 二つまたはそれ以上のオーバーレイが(図34の(B )
のオーバーレイ#1および#2のように)オーバーラッ
プされる場合、各イベントE は前面から背面の順に(オ
ーバーレイ#2の後オーバーレイ#1)すべてのオーバ
ーレイにより処理された後最終的に受け取られるべきア
プリケーション(図34の(C )のアプリケーション#
3B )へ送られる。結果的に、動作A はいくつかのまた
はすべてのオーバーレイからの寄与を含む処理を記述す
ることが可能である。そのような動作は各オーバーレイ
により独自に決定されることが想定される各動作の合成
としてとらえることができる。現在の実行では各オーバ
ーレイO はそれぞれの動作とイベントがその時点までに
累積した動作とを合成する役目を負っている。新たな動
作は様々な方法のうちの一つを用いて既存の動作から算
出されることが可能であり、該方法は追加、先頭追加、
削除、命令変更、アーギュメント変更、または座標変更
等を含む。これら各方法について以下に説明を行う。 4.09.01 追加 その動作を追加するツールは既存の命令リストの終端に
該動作の命令リストを単純に付加する。例えばオーバー
レイO がその座標<x,y> がO のツールT で指定されるイ
ベントE を受信する場合、およびツールT が輪郭色を変
更するツールである場合を考える。なにものにも依ら
ず、イベントE に対するT の対応は次のような動作を発
生することであると想定される。
【0128】 ((SelectShape<x,y>)(SetLineColor blue)) しかしE が充填色を赤にすることを規定するツールをす
でに通過していた場合、次のような動作が行われたこと
が想定される。
【0129】((SelectShape<x,y>)(SetFillColor red)) T が追加ツールである場合、T はその命令リストを既存
の命令リストへ追加して次のようなより長い動作を形成
する。
【0130】((SelectShape<x,y>)(SetFillColor red) (SelectShape<x,y>)(SetLineColor blue)) 4.09.02 先頭追加 先頭追加は新たな命令リストが既存の命令リストの先頭
に追加されることを除き追加に類似している。命令の順
序づけが関係する場合、先頭追加は追加と異なる結果を
与える場合がある。例えばイベントE が図形を45°回転
させる既存の命令(RotateShape45) を伴って入ってくる
場合、およびツールT が図形をy 方向はそのままでx 方
向に二倍する命令(ScaleShape21)を通常発生する場合を
考えると、最終的命令は((ScaleShape21)(RotateShape4
5)) となることが想定される。これは((Rotate45)(Scal
eShape21))とは異なる効果を有する。 4.09.03 削除 ツールT はイベントから一つまたはそれ以上の命令を取
り除くことが可能である。例えばT は表示画面を編集す
るすべての命令を削除することでその直下の図面が編集
されないようにすることを可能とする。T がイベント
((SelectShape<x,y>)(SetLineColor blue)) を受信した
場合、背後の図面を修正していたはずの(SetLineColor
blue) 命令は取り除くが、その時図面内で選択される表
示物の変更のみを行う(SelectShape<x,y>)命令は残して
おくことが想定される。この結果生じる命令は(SelectS
hape<x,y>)となることが想定される。 4.09.04 命令変更 ツールT は受信された動作で使用されているいくつかま
たはすべての命令表記を変更することが可能である。例
えばT はSetFillColorへのすべての呼び出しをSetFancy
FillColor へのすべての呼び出しに、またSetLineColor
へのすべての呼び出しをSetFancyLineColor への呼び出
しに変更することが可能である。このことはユーザーが
オーバーレイO の前面にあるオーバーレイ上の親しんだ
ツールを使用しつつ新たな装飾的命令を試行して作りだ
すことを可能とする。そのようなツールが命令 ((SelectShape<x,y>)(SetFillColor red) (SelectShape<x,y>)(SetLineColor blue)) を受信する場合、該ツールは命令 ((SelectShape<x,y>)(SetFancyFillColor red) (SelectShape<x,y>)(SetFancyLineColor blue)) を作成することが想定される。 4.09.05 アーギュメント変更 アーギュメント変更の場合、T は命令の命令表記の後に
規定される論理値を変更する。例えばT はその前のツー
ルにより受信されたいづれかの色を変更してそれらをよ
り鮮明にすることが想定される。そのようなツールが命
令(SetLineColor blue) を受信する場合、該ツールは命
令(SetLineColor vivid-blue) を作成することが想定さ
れる。 4.09.06 座標変更 座標変更はアーギュメント変更の特別な場合である。こ
の場合ツールT は命令内に規定された座標<x,y> を変更
する。T がO の背面にある図面の表示を変更するビジュ
アルフィルタを有する場合、このことは特に有用にな
る。例えばT が直下の図面を拡大する場合、T の前面に
あるツールからの座標は該ツールからの命令がT を通し
て実際に現れる表示物に適用されるよう縮小変換値を有
さなければならない。従ってT がその背面の図面を二倍
に拡大する場合、T は該座標を0.5倍にしなければなら
ない。受信された命令が(SelectShape<x,y>)である場
合、TはSelectShape(0.5*<x,y>)を作成する。 4.09.07 マーク座標について イベント−オーバーレイルーチンは、翻訳のためにマー
クされた命令リスト内の座標<x,y> を認識する。一般に
カーソル座標はこのようにマークされる。該マークは合
成ルーチンにより保持され、この結果入力命令がマーク
座標を有する場合には合成により作成される該座標に対
応した命令内座標もマークされる。 4.10 基本的出力処理 背面にあるアプリケーションプログラムへの入力イベン
トの送出に加え、オーバーレイはこれらアプリケーショ
ンプログラムの表示の修正も行う。特にほとんどのツー
ルは該ツールのアクティブ領域の境界を示すアイコンを
表示する。加えてツールはビジュアルフィルタを有して
いてもよく、該フィルタはアプリケーションの表示のフ
ィルタ処理、外形、色、サイズ、およびその他の図形的
特性の修正を行う。本章以降ではオーバーレイメカニズ
ムがどのようにビジュアルフィルタの動作を制御するか
についての説明を行う。
【0131】MMM 出力は通常、リーフアプリケーション
からその上位へ向かって合成される。ビジュアルフィル
タをサポートするため、通常の表示画面リフレッシュ処
理が拡張されて情報が階層ツリー内を自由に流れること
が可能となる。例えば図34B のツールが一つまたはそ
れ以上のビジュアルフィルタを有し、またこれらビジュ
アルフィルタのいづれかがグラフィカルエディタ上に設
定されている場合、各ビジュアルフィルタは自身を描く
ために(階層構造ではビジュアルフィルタの同胞であ
る)該グラフィカルエディタの内容を検定しなければな
らない。 4.10.01 変更領域の算出 オーバーレイにより与えられる表示画面リフレッシュル
ーチンのいくつかの部分は入力処理のルーチンに類似し
ているが、データはこれと逆方向へ送られる。図34の
(C )に示されたように、オーバーレイルーチンは入力
イベントが各オーバーレイを前面から背面の順に通過し
て目的のアプリケーションへ送られることを保証しなけ
ればならない。アプリケーション#3B の内容が変更さ
れる場合に表示画面のどの部分が書き換えられなければ
ならないかを算出するため、アプリケーション#3B の
変更部分の情報が図39に示される経路に沿って送られ
る。これは図34の(C )の経路の逆経路となってい
る。
【0132】変更領域情報はこのツリー内のノードから
ノードへ送られるため、変更領域はこれを受信する各ノ
ードの座標系に変換され、各ノードにより容易に理解さ
れる。加えて各オーバーレイノードは、その上に見えて
いる現時点の表示フィルタに基づく変更領域を変更する
可能性がある。例えば与えられたオーバーレイO が拡大
フィルタを有するツールT を含む場合、O は表示画面領
域のサイズを増大させることが想定され、このことはア
プリケーション#3B 自体の変更により影響を受ける。
O は変更領域データ構造のサイズを適正に増大させ、変
更されたデータ構造を連鎖内の次のノードへ送る。 4.10.02 表示画面更新 ビジュアルフィルタが無い場合、アプリケーションおよ
びオーバーレイ両者を表す新たなスクリーンイメージの
作成は、階層構造内の各ノードを層順を優先して上層か
ら順に、また同一層では下位から順に背面から前面へ描
くことで行われる(すなはち各アプリケーションはその
子供が描かれる前および後の両方で描かれる)。図39
の実施例では、各ノードは次のような順序で描かれるこ
とが想定される。アプリケーション#1開始、アプリケ
ーション#2開始および終了、アプリケーション#3開
始、アプリケーション#3A 開始および終了、アプリケ
ーション#3B 開始および終了、アプリケーション#3
終了、オーバーレイ#1開始および終了、アプリケーシ
ョン#4開始および終了、オーバーレイ#2開始および
終了、アプリケーション#1終了。
【0133】しかしオーバーレイがひとつまたはそれ以
上のビジュアルフィルタを有する場合、そのような各フ
ィルタはビジュアルフィルタの特徴である変換動作を用
いて階層構造の部分が描き直されることを必要とするこ
とが想定される。描き直される階層構造の部分は、オー
バーレイの親および該オーバーレイの背面にある該オー
バーレイのすべての同胞を含む。例えばオーバーレイ#
1がビジュアルフィルタを含む場合、アプリケーション
#2、アプリケーション#3A 、アプリケーション#3
B 、アプリケーション#3、およびアプリケーション#
1のノードが(この順に)描き直される。図40は、こ
のツリー断片を示す。 5.0 利点 本章ではオーバーレイの様々な実施例の多くの利点を要
約する。これら利点のいくつかは前述の様々なツールに
関連付けて明確に説明を行ったが、これらの利点をまと
めておくことは有用である。 5.01 タスクのより高速な実行 いくつかのステップを単一ステップにまとめることで、
オーバーレイツールは時間を節約することが可能であ
る。前述のようにクリックスルーボタンは命令選択と処
理対象選択を単一なユーザー動作にまとめる。ビジュア
ルフィルタの使用を加えることで、これらボタンはまた
処理対象領域内にカスタマイズされた表示を作成し、こ
の場合該表示を明確にオンおよびオフするためのキース
トロークはまったく必要ない。加えてユーザーの視線お
よびカーソルの両方が作業領域を離れることがない。こ
のことはユーザーがタスクに集中することを持続させ、
またユーザーが作業領域外に置かれたパレットと作業領
域の間を繰り返しカーソル移動することを必要とするシ
ステムに比較して時間の節約となる。 5.02 時間的状態の減少 オーバーレイを用いることで、処理を与えるツール上に
カーソルがある場合にはいつでも処理が可能となる。本
質的にオーバーレイは空間的命令状態を与える。(例え
ばツール上のラベルにより)ユーザーが容易に現行状態
を見ることができ、また(例えばカーソルをツールの外
へ動かして)容易にその状態からでる様子を見ることが
できるため、空間的状態はしばしば時間的状態よりも望
ましい。 5.03 より良好なグラフィカルフィードバック、エ
ラーの減少 時間的状態を用いるシステムは頻繁にユーザーにフィー
ドバックを与え、現行命令の正常な完了を助ける。例え
ばグラフィカルエディタのテキスト編集状態では、エデ
ィタはすべての編集可能なテキスト列を強調表示するこ
とが可能である。オーバーレイツールはこれと同じタイ
プのフィードバックを与えることが可能であるが、それ
はツールの境界内に限られる。実際、スクリーン上でい
くつかのツールを同時に用いることでいくつかの異なる
フィードバックが各ツール内に与えられることが可能と
なる。加えて、ツールをエディタの全体サイズに拡大す
ることで、ユーザーは時間的状態を用いることで可能と
なるフィードバックと同じフィードバックを可能にす
る。いくつかのツールが同時に見える場合、各ツール内
のフィードバックは二つの役割を行う。それはユーザー
がツールを適正に使用することを助け、またユーザーが
適正なツールを選択することを助ける。
【0134】加えて、ツール内でのビジュアルフィルタ
の使用は、従来与えられることのなかったフィードバッ
クの一種を与える。これは表示画面の一部を修正して表
示し、一方表示画面の残りの領域はその内容の標準的表
示を行う。ビジュアルフィルタは隠れた頂点のような隠
れた情報を表示することが可能である。加えて、それは
与えられた処理に対する適正な処理対象となる表示物の
特定を助けることが可能である。例えば表示物の境界色
を変更するツールは境界の外形のみを表示することが想
定される。そのようなフィードバックは、充填色の変更
のような前記と異なる目的のためのツールを誤って使用
したユーザーにとっては不都合になることが想定され
る。 5.04 容易なカスタマイズ化 表示画面スペースを占領してしまうようなツールを有す
るアプリケーションでは、ユーザーカスタマイズ化の効
果は限られたものとなる。ユーザーが新たなボタン、ス
ライダー、およびこの他の対話装置を作成できたとして
も、これらを置くスペースがほとんどない。しかし本質
的にオーバーレイは制限を受けないスペースを与え、該
ツールが作業領域全体から取り払われるだけでなく、そ
れらは表示画面領域外へ置かれて必要なときに表示画面
上へスクロールされることも可能となる。加えて、オー
バーレイツールとビジュアルフィルタはオーバーラップ
することで合成されることが可能なため、これらはユー
ザーが個人仕様のマクロを構築する容易な方法を与え
る。 5.05 学習時間の軽減 オーバーレイツールはいくつかのタスクステップを単一
にまとめることが可能なため、ユーザーがこれらステッ
プを個々に学習する必要が無くなる。例えば表示物を選
択してそれに色を与えることを学習する代わりに、ユー
ザーはカラークリックスルーボタンの使用を学習する。
同様に、初心者が自然とエキスパートになる。熟練した
ユーザーは各ツールが置かれている場所、および効果的
なツールの合成方法を知っており、またツールを短時間
に所望の位置へ動かすことをすでに学習している。各ツ
ールの空間的配置およびツールの合成を学習すること、
および共通して使用される動作をこれがユーザーの運動
神経の一部となるまで繰り返すことで初心者はエキスパ
ートになっていく。これらのタスクは自覚的努力をほと
んど必要としない。 5.06 アプリケーションに依存しないツール いくつかのユーザー命令は多くのアプリケーションで共
通なため、それらはカットおよびペーストキーのように
キーボード内に組み込まれる。ユーザーがそのようなキ
ーの一つを押す場合、ウィンドウマネージャーは該キー
ストロークをユーザーの現行アプリケーションへ送る。
オーバーレイはこのようなアプリケーションに依存しな
い命令が置かれる新たな基体を提示する。特にオーバー
レイシートがアプリケーション間を平行移動できる場
合、オーバーレイの各ツールは、その適用が意味を持つ
ときはいつでもその背面にあるいかなるアプリケーショ
ンに対しても現行アプリケーションを識別する必要なく
適用されることが可能である。例えば色を変更するクリ
ックスルーボタンは、異なるエディタ内の各表示物の色
を変更することが可能である。 5.07 片手または両手による使用 多くのグラフィカルユーザーインターフェイスはユーザ
ーが両手を連係させて使用することを必要とする。例え
ばユーザーはマウスを同時に使用する一方でコントロー
ルまたはシフトキーを押し止めてもよい。オーバーレイ
は両手を用いてより素早く使用されることが可能である
が、片手によっても使用されることが可能であり、この
場合オーバーレイとカーソルの位置設定が逐次的に行わ
れる。オーバーレイは、片手が使えないユーザーまたは
片手を電話やコーヒーカップを持つことのようなタスク
に使用している器用なユーザーによっても操作されるこ
とが可能である。 5.08 異なった表示サイズ 現在のコンピュータはポケットサイズから壁掛けサイズ
の多くの異なるサイズのディスプレイを備えている。オ
ーバーレイはこのようなサイズ範囲にわたりインターフ
ェイスを行う。オーバーレイツールはスクロールおよび
ズームを行うため、固定ツールパレットのためのスペー
スがほとんど無いかまたはまったく無い小さなディスプ
レイ上で使用されることが可能である。加えて、非常に
大きなディスプレイ上ではユーザーは各ツールを表示画
面のいづれの部分へも動かすことが可能であり、これは
固定メニュー領域にアクセスするためにディスプレイ上
を横切るような動きを不必要なものとする。 6.0 結論 本発明はユーザーインターフェイスの新たな形態を提供
する。該インターフェイスは、アクティブなツール定義
領域を有する透明なオーバーレイの表示に基づくシース
ルーインターフェイスである。該シースルーインターフ
ェイスは、時間的状態よりもむしろ空間的状態に基づく
ユーザーインターフェイスのための新たな設計領域を提
示し、また両手を使用した対話のための自然な情報媒体
を提供する。該インターフェイスは可動であり、またア
プリケーション領域上を覆うため、固定的表示画面領域
をまったく持たず、また広範囲なディスプレイサイズに
容易に適用が可能である。オーバーレイツールはオーバ
ーレイを動かすことだけで選択されて作業領域へ運ばれ
るため、ユーザーの視線が作業領域に継続して注がれる
ことが可能となる。動作および表示が空間的に定義され
るため、ユーザーは全体的内容物を変更することなく作
業をおこなうことが可能である。
【0135】さらに本発明のオーバーレイは、ビジュア
ルフィルタと共に用いられる場合、スプレッドシート内
の同一物、グラフィカルエディタ内の表示物集合、また
は建築モデル内の水道管のようなアプリケーションの隠
れた場所に対する処理を可能とする。ユーザーはこの隠
れた場所を表示して編集することが可能である。この場
合、固定的表示画面領域および命令の記憶はまったく必
要ない。
【0136】加えて、シースルーインターフェイスは開
放型ソフトウェアアーキテクチャをサポートする新たな
範例を提供する。オーバーレイツールは単一のアプリケ
ーションウィンドウに拘束されることなくアプリケーシ
ョン間にわたり動かされることが可能であるため、該ツ
ールはいくつかのアプリケーションの共通機能に対する
インターフェイスを提供し、またより多くのアプリケー
ションに共通機能を提供することが可能である。
【0137】さらに、オーバーレイシートは非常に多く
のツールを有することが可能なため、ユーザーが自身の
カスタマイズしたツールおよびツール集合を作成するこ
とが可能な新たな可動基体を提供する。実際、該シート
はユーザーにユーザーインターフェイスエディタを提供
し、該エディタはユーザーが既存のツールを移動および
コピーすること、ツールをオーバーラップさせてマクロ
を合成すること、およびスナップツールを付加して新た
な構成にすることを可能にする。あるオーバーレイシー
トが他のシートを編集するために用いられることさえも
現実に可能である。
【0138】前述の説明は、本発明の詳細な実施例に関
する完結した説明となっているが、様々な変更、別の構
成、および前述と等価なものが用いられてもよい。例え
ばオーバーレイツールに関する前述の説明はアプリケー
ションを図形編集に限っているが、前述の多くのツール
は本質的にいづれの表示画面ベースのアプリケーション
においても使用されることが可能であり、該アプリケー
ションはスプレッドシート、テキストエディタ、マルチ
メディアエディタ、ペイントプログラム、ソリッドモデ
ラ、サーキットエディタ、サイエンティフィックビジュ
アライザ、およびミーティングサポートツールを含む。
オーバーレイはビデオおよびコンピュータグラフィクス
を含む画像メディア上で使用されることが可能である。
これはかなり強制的なアプリケーション領域である。動
いているメディアを見ているユーザーにとって視線をワ
ークピースから画面側のメニューヘ動かすことは、重要
なイベントを見失う可能性があるためかなり不都合なこ
ととなるからである。画像メディアの内容物中ではメデ
ィア自身がボタンを起動するイベントを与えてもよい。
例えばアニメーションフレームの表示物の色をオレンジ
にする処理を正常に行うため、ユーザーは該表示物が現
れる場所にボタンを押し止めておくことが想定される。
新たなフレームが描かれるたびに該ボタンはフレーム内
の該場所で該表示物へ自動的に適用されることが想定さ
れる。加えて、前述の説明ではアプリケーションプログ
ラムに関連したオーバーレイツールの使用が強調された
が、オーバーレイはウィンドウシステム内において各ウ
ィンドウを置いたり、ウィンドウ境界色、キーボードマ
クロおよびこれに類似するもののようなウィンドウパラ
メータの設定に使用されることが可能である。
【0139】従って前述の説明は請求項で定義される本
発明の範囲を制限するように捉えられるべきではない。 7.0 文献 Bier86 Eric A.Bier and Maureen C.Stone.Snap-draggi
ng.In Proceedings ofSiggrapf`86(Dallas,Augest),Co
mputer Graphics,Vol.20,No.4,ACM,1986,pages233-240. Bier88 Eric A.Bier.Snap-Dragging:Interactive Geome
tric Design in Two and Three Dimensions. Report N
o.UCB/CSD 88/416,April28,1988,Computer Science Div
ision,Department of Electrical Engineering and Com
puter Science,University of California,Berkeley,CA
94720.または Xerox PARC technical report EDL-89-2. Bier90 Eric A.Bier and Aaron Goodisman.Documents a
s user interfaces. InR.Furuta(ed).EP90,Proceedings
of the International Conferencs on Electronic Pub
lishing,Document Manipulation and Typography,Cambr
idge University Press,1990,pages249-262. Bier91a Eric A.Bier.Embedded Buttons:documents as
user interfaces. In Proceedings of the ACM SIGGRAP
H Symposium on User Interface Software andTechnolo
gy(South Carolina,November),ACM,1991,pages45-53. Bier91b Eric A.Bier and Steve Freeman. MMM:a user
interface architecture for shared editors on a sin
gle screen. In Proceedings of the ACM SIGGRAPH Sym
posium on User Interface Software and Technology(H
ilton Head,SC,November 11-13),ACM,1991,pages79-86. Bier92 Eric A.Bier. Embedded Buttons:Supporting Bu
ttons in Documents.ACM Transactions on Information
Systems,Vol.10,No.4,October 1992,pages381-407. English90 Paul M.English,Ethan S.Jacobson,Robert
A.Morris,Kimbo B.Mundy,Stephen D.Pelletier,Thomas
A.Polucci,and H.David Scarbro. An extensible,objec
t-oriented system for active documents. In R.Furut
a(ed).EP90,Proceedings of the International Confer
encs on Electronic Publishing,DocumentManipulation
and Typography,Cambridge University Press,1990,pa
ges263-276 Goldberg91 David Goldberg and Aaron Goodisman. Sty
lus user interfaces for manipulating text In Proce
edings of the ACM Symposium on User Interface Soft
ware and Technology(UIST `91,Hilton Head South Ca
rolina,November),1991,pages127-135. Hopkins91 Don Hopkins. The design and implementati
on of pie menus. Dr.Dobb's Journal. Vol.16,No.12,D
ecember 1991,pages16-26. kurlandder92 David Kurlander and Steven Feiner. In
teractive constraint-based search and replace. In
Proceedings of CHI `92(Monterey,California,May),H
uman Factors in Computing Systems,ACM,New York,199
2,pages609-618. Kurtenbach91 Gordon Kurtenbachand Wiiliam Buxton.
Isses in combining marking and direct manipulation
techniques. In Proceedings of the ACM Symposium o
n User Interface Software and Technology(UIST`91,
South California,November),ACM,1991,pages137-144. Ousterhout90 J.K.Ousterhout. Tcl:An embbedable com
mand language. In winter USENIX Conference Proceed
ings,1990. Pier88 Ken Pier,Eric A.Bier,and Maureen C.Stone. A
n Introduction to Gargoyle:An Interactive Illustra
tion Tool. Proceedings of the InternationalConfere
ncs on Electronic Publishing,Document Manipulation
and Typography(Nice,France,April).Cambridge Unive
rsity Press,1988,pages223-238 Rubine91 Dean Rubine. Specifying gestures by examp
le. In Proceedings ofACM SIGGRAPH`91,Computer Gra
phics,Vol.25,No.4,July 1991,pages329-337. Swinehart86 Daniel C.Swinehart,Polle T.Zellweger,R
ichard J.Beach,RobertB.Hagmann. A Structural View
of the Cedar Programming Environment. ACM Transact
ions on Programming Languages and Systems,Vol.8,N
o.4,1986,pages419-490.またはXerox PARC Technical R
eport CSL-86-1.
【0140】
【発明の効果】本発明によりユーザーがより少ない動作
で多くの一般的タスクを行うことが可能となり、この結
果ユーザーの生産性が高められる。
【図面の簡単な説明】
【図1】本発明の実施例であるコンピュータシステムの
ブロック図を示す。
【図2】プログラムおよびオーバーレイの素データを可
視表示体に変換する方法を示す。
【図3】オーバーレイへの入力信号を処理呼び出しに変
換する方法を示す。
【図4】作図ツールを示す。
【図5】作図ツールの特別な使用例を示す。
【図6】削除、移動、およびコピーツールを示す。
【図7】カラーパレットツールを示す。
【図8】テキストスタイルパレットツールを示す。
【図9】対称クリップボードツールを示す。
【図10】表示物特性を転写するツールを示す。
【図11】図形特性を転写するツールを示す。
【図12】頂点選択ツールを示す。
【図13】ユーザー動作を利用する特性選択ツールを示
す。
【図14】ユーザー動作を利用する色および作図ツール
を示す。
【図15】照準(位置合わせ)線ツールを示す。
【図16】表示物に取り付く図形付加ツールを示す。
【図17】回転ツールを示す。
【図18】回転、サイズ設定、および傾斜ツールを示
す。
【図19】照準(位置合わせ)表示物を起動するツール
を示す。
【図20】グリッドツールを示す。
【図21】カスタマイズしたグリッドツールを示す。
【図22】幾何計測ツールを示す。
【図23】テキストフォーマット表示ツールを示す。
【図24】ユーザー動作翻訳ツールを示す。
【図25】制御ハンドルツールを示す。
【図26】デバッグツールを示す。
【図27】数字キーパッドツールを示す。
【図28】テキスト作成およびテキスト回転ツールを示
す。
【図29】ラベル付加ツールを示す。
【図30】ドキュメントをウィンドウへロードするツー
ルを示す。
【図31】ハンドルを用いてツールを移動、コピー、お
よび削除するツールを示す。
【図32】ツールが合成されて新たなツールが作成され
る例を示す。
【図33】特定な実行のためのユーザー入力ルーチンの
フローチャートを示す。
【図34】(A)はアプリケーションの階層構造を、
(B)はアプリケーションの階層構造の画面表を、
(C)はアプリケーションの階層構造のイベント送出順
序をそれぞれ示す。
【図35】特定な実施のためのイベント−アプリケーシ
ョンルーチンのフローチャートを示す。
【図36】特定な実施のためのイベント−オーバーレイ
ルーチンのフローチャートを示す。
【図37】特定な実施のためのイベント−ツールルーチ
ンのフローチャートを示す 。
【図38】(A)は(アプリケーションがデータを戻す
前の)データに対する要求を含む命令を、(B)は(ア
プリケーションがデータを戻した後の)データに対する
要求を含む命令をそれぞれ示す。
【図39】表示画面更新のためのイベント送出順序を示
す。
【図40】表示画面更新のための階層構造部分を示す。
【符号の説明】
10 本発明の実施例であるコンピュータシステム 12 プロセッサー 15 バスシステム 17 メモリ 20 ファイル記憶システム 22 ディスプレイ装置 23 表示画面 25 キーボード 27 マウス 30 トラックボール 32 マウスボタン 35 ボール 37 トラックボールボタン 40 サムホイール 50 ドローイングプログラムのアプリケーションウィ
ンドウ 52 ワードプロセッサのアプリケーションウィンドウ 55 カーソル 60 オーバーレイツール 62 パレット 70 プログラム素データ 72 翻訳装置(プログラム) 73 プログラム画像データ構造 75 オーバーレイ素データ 77 翻訳装置(プログラム) 80 オーバーレイ画像データ構造 82 結合ノード 83 ディスプレイイメージ 85 オーバーレイ 87 アプリケーション#1 88 アプリケーション#2 92 ウィンドウマネージャー 93 翻訳装置(プログラム)#1 95 命令解析装置(プログラム)#1 97 翻訳装置(プログラム)#2 98 命令解析装置(プログラム)#2
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ウィリアム バクストン カナダ国 エム4エル 1エックス6 オ ンタリオ州トロント ケアンス アヴェニ ュー 83

Claims (19)

    【特許請求の範囲】
  1. 【請求項1】 プロセッサーベースの装置の操作方法で
    あって、前記装置はユーザー入力装置と、ディスプレイ
    装置と、ユーザー入力装置およびディスプレイ装置に結
    合されるプロセッサーと、命令を含む情報を記憶するた
    めの記憶装置を含み、該命令はプロセッサーおよび一連
    の関連するデータにより実行される少なくとも一つのプ
    ログラムを定義し、前記方法は処理ステップを実行する
    ためにプロセッサ−を動作させることを含み、該処理ス
    テップはデータの処理を行って可視表示体をディスプレ
    イ装置上に表示するためにプログラムを実行するステッ
    プと、多くの枠取り領域をその上に有する透明なオーバ
    ーレイの画面表示を発生し、表示体に対するオーバーレ
    イの位置設定を行うことで第一の組の信号に応答し、オ
    ーバーレイおよび表示体に関する位置情報により特性が
    与えられる第二の組の信号に応答し、第三の組の信号を
    発生してこれと同一なものをプログラムに伝送し、該第
    三の組の信号はオーバーレイと表示体の相対位置および
    第二の組の信号に特性を与える位置情報に依存するオー
    バーレイプログラムを実行するステップと、を含むプロ
    セッサベースの装置の操作方法
  2. 【請求項2】 該プログラムがウィンドウシステムであ
    って、該ウィンドウシステムが複数のアプリケーション
    を管理して表示体が画面の枠取りを各アプリケーション
    を表す領域内へ表し、各アプリケーションを表す領域が
    アプリケーション画面領域への第二の組の信号の相対位
    置情報により決定される請求項1の方法。
  3. 【請求項3】 各枠取り領域が異なる特定の処理を規定
    して該処理がデータに行われ、少なくとも一つの特定な
    処理がデータを追加する請求項1の方法。
  4. 【請求項4】 各枠取り領域が異なる特定の処理を規定
    して該処理がデータに行われ、少なくとも一つの特定な
    処理がデータの一部分を取り除く請求項1の方法。
  5. 【請求項5】 各枠取り領域が異なる特定の処理を規定
    して該処理がデータに行われ、少なくとも一つの特定な
    処理がデータの一部分を抽出する請求項1の方法。
  6. 【請求項6】 各枠取り領域が異なる特定の処理を規定
    して該処理がデータに行われ、少なくとも一つの特定な
    処理がデータの一部分を変更する請求項1の方法。
  7. 【請求項7】 ユーザー入力装置がユーザー自身が動か
    す装置を含み、少なくともいくつかの第一の組の信号が
    ユーザー自身が動かす装置を用いたユーザー動作の結果
    として生じる請求項1の方法。
  8. 【請求項8】 ユーザー入力装置がユーザー自身が動か
    す装置を含み、少なくともいくつかの第二の組の信号が
    ユーザー自身が動かす装置を用いたユーザー動作の結果
    として生じる請求項1の方法。
  9. 【請求項9】 ユーザー自身が動かす装置がポインタ装
    置であり、第二の組の信号がユーザー自身が動かす装置
    を用いたユーザー動作の結果として生じ、識別される特
    徴点をユーザー動作が有する請求項8の方法。
  10. 【請求項10】 特定の枠取り領域が描かれた場合にユ
    ーザー動作が特定な第三の組の信号を発生し、該信号が
    該枠取り領域、該ユーザー動作、および該ユーザー動作
    の識別された特徴点により決定される請求項9の方法。
  11. 【請求項11】 ユーザー自身が動かす装置から受信さ
    れる第二の組の信号が一つまたはそれ以上の位置のシー
    ケンスを含む請求項8の方法。
  12. 【請求項12】 シーケンス内のすべての位置が単一な
    枠取り領域内で実行され、第三の組の信号が該枠取り領
    域により指定される命令およびオーバーレイと表示体に
    関する点のシーケンスの位置に依存する請求項11の方
    法。
  13. 【請求項13】 シーケンス内の最初の位置が与えられ
    た枠取り領域内にあり、この他の位置が該枠取り領域の
    内部または外部にあり、第三の組の信号が位置のシーケ
    ンスおよび該枠取り領域により規定される処理により決
    定される請求項11の方法。
  14. 【請求項14】 位置のシーケンスが複数の枠取り領域
    内にあり、第三の組の信号が位置のシーケンスおよび一
    つまたはそれ以上の処理により決定され、該処理が前記
    複数の枠取り領域により規定される請求項11の方法。
  15. 【請求項15】 枠取り領域が異なる特定な処理を規定
    して該処理がデータに行われ、第三の組の信号を発生す
    る前記ステップがユーザー自身が動かす装置を用いたユ
    ーザー動作の結果として生じる信号の変更を含み、該装
    置が特定の処理を規定する請求項8の方法。
  16. 【請求項16】 ユーザー入力装置が少なくとも二つの
    ユーザー自身が動かす装置を含み、少なくとも前記第一
    の組の信号のいくつかがユーザー自身が動かす装置の内
    の一つを用いたユーザー動作の結果として生じる請求項
    8の方法。
  17. 【請求項17】 透明なオーバーレイの視覚表示が、前
    記オーバーレイが応答した第一の組および第二の組の信
    号の履歴に依存し、また前記オーバーレイが発生した第
    三の組の信号の履歴に依存する請求項8の方法。
  18. 【請求項18】 透明なオーバーレイの視覚表示がアプ
    リケーションデータ項目から発生した画像特性を含み、
    該項目が第一の組および第二の組の信号または第三の組
    の信号の履歴中のコピーまたは抽出された項目である請
    求項17の方法。
  19. 【請求項19】 第三の組の信号がオーバーレイ自体の
    プログラムへ送られて該プログラムを修正、追加、削
    除、置き換え、サイズ変更し、さもなくば画面表示、素
    データ、または枠取り領域の動作を編集する請求項8の
    方法。
JP16345694A 1993-07-21 1994-07-15 プロセッサーベースの装置の操作方法 Expired - Lifetime JP3866302B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/095,598 US5581670A (en) 1993-07-21 1993-07-21 User interface having movable sheet with click-through tools
US095598 1993-07-21

Publications (2)

Publication Number Publication Date
JPH0756839A true JPH0756839A (ja) 1995-03-03
JP3866302B2 JP3866302B2 (ja) 2007-01-10

Family

ID=22252737

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16345694A Expired - Lifetime JP3866302B2 (ja) 1993-07-21 1994-07-15 プロセッサーベースの装置の操作方法

Country Status (6)

Country Link
US (1) US5581670A (ja)
EP (1) EP0635779B1 (ja)
JP (1) JP3866302B2 (ja)
CA (1) CA2124495C (ja)
DE (1) DE69426141T2 (ja)
ES (1) ES2151534T3 (ja)

Families Citing this family (302)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
DE69315969T2 (de) * 1992-12-15 1998-07-30 Sun Microsystems Inc Darstellung von Informationen in einem Anzeigesystem mit transparenten Fenstern
US5638501A (en) 1993-05-10 1997-06-10 Apple Computer, Inc. Method and apparatus for displaying an overlay image
US5479603A (en) * 1993-07-21 1995-12-26 Xerox Corporation Method and apparatus for producing a composite second image in the spatial context of a first image
AU2516195A (en) * 1994-05-13 1995-12-05 Apple Computer, Inc. Support for custom user-interaction elements in a graphical, event-driven computer system
WO1996010785A1 (en) * 1994-09-30 1996-04-11 Apple Computer, Inc. Method and apparatus for displaying and accessing control and status information in a computer system
JPH08202890A (ja) * 1995-01-24 1996-08-09 Canon Inc 描画装置
DE19509290C1 (de) * 1995-03-15 1996-05-02 Bbc Reaktor Gmbh Prüfkopf zum Ultraschallprüfen einer eingebauten Innenmehrkantschraube
US5721853A (en) * 1995-04-28 1998-02-24 Ast Research, Inc. Spot graphic display element with open locking and periodic animation
US5900877A (en) * 1995-05-15 1999-05-04 Sybase, Inc. Method and apparatus for multilevel software controls
US5694150A (en) * 1995-09-21 1997-12-02 Elo Touchsystems, Inc. Multiuser/multi pointing device graphical user interface system
US6127990A (en) 1995-11-28 2000-10-03 Vega Vista, Inc. Wearable display and methods for controlling same
US6184847B1 (en) 1998-09-22 2001-02-06 Vega Vista, Inc. Intuitive control of portable data displays
US5838315A (en) * 1996-02-01 1998-11-17 Apple Computer, Inc. Support for custom user-interaction elements in a graphical, event-driven computer system
US20040019610A1 (en) * 1996-02-27 2004-01-29 Burns Kevin S. Portal information delivery system for personal computers and SOHO computer systems
US6014137A (en) 1996-02-27 2000-01-11 Multimedia Adventures Electronic kiosk authoring system
US6317128B1 (en) 1996-04-18 2001-11-13 Silicon Graphics, Inc. Graphical user interface with anti-interference outlines for enhanced variably-transparent applications
US6118427A (en) * 1996-04-18 2000-09-12 Silicon Graphics, Inc. Graphical user interface with optimal transparency thresholds for maximizing user performance and system efficiency
US5764229A (en) * 1996-05-09 1998-06-09 International Business Machines Corporation Method of and system for updating dynamic translucent windows with buffers
US6252595B1 (en) * 1996-06-16 2001-06-26 Ati Technologies Inc. Method and apparatus for a multi-state window
US5745714A (en) * 1996-07-19 1998-04-28 International Business Machines Corporation Method and system in a data processing system for the association and display of a plurality of objects
US6377240B1 (en) 1996-08-02 2002-04-23 Silicon Graphics, Inc. Drawing system using design guides
US6279017B1 (en) * 1996-08-07 2001-08-21 Randall C. Walker Method and apparatus for displaying text based upon attributes found within the text
US5895477A (en) * 1996-09-09 1999-04-20 Design Intelligence, Inc. Design engine for automatic layout of content
US5956737A (en) * 1996-09-09 1999-09-21 Design Intelligence, Inc. Design engine for fitting content to a medium
US5903902A (en) * 1996-09-09 1999-05-11 Design Intelligence, Inc. Design engine with tree and component structure
US5895476A (en) * 1996-09-09 1999-04-20 Design Intelligence, Inc. Design engine for automatic reformatting for design and media
US5805161A (en) * 1996-09-26 1998-09-08 Logitech, Inc. System and method for data processing enhanced ergonomic scrolling
US6012073A (en) * 1996-10-21 2000-01-04 Corbis Corporation Method and system for displaying original documents and translations thereof
KR19980035431A (ko) * 1996-11-13 1998-08-05 김광호 다국어 입력 설정 변환 방법
US6304272B1 (en) * 1996-12-10 2001-10-16 Micrografx, Inc. Graphics system and method having objects conformed to a template
US5952995A (en) * 1997-02-10 1999-09-14 International Business Machines Corporation Scroll indicating cursor
US5896132A (en) * 1997-02-10 1999-04-20 International Business Machines Corporation Replacement of traditional scroll bar with a "more" bar
US6144378A (en) * 1997-02-11 2000-11-07 Microsoft Corporation Symbol entry system and methods
US6069626A (en) * 1997-02-27 2000-05-30 International Business Machines Corporation Method and apparatus for improved scrolling functionality in a graphical user interface utilizing a transparent scroll bar icon
US6002402A (en) * 1997-04-09 1999-12-14 Symantec Corporation System and method for producing a drag-and-drop object from a popup menu item
US6075530A (en) * 1997-04-17 2000-06-13 Maya Design Group Computer system and method for analyzing information using one or more visualization frames
US6065116A (en) * 1997-05-07 2000-05-16 Unisys Corporation Method and apparatus for configuring a distributed application program
US6667747B1 (en) 1997-05-07 2003-12-23 Unisys Corporation Method and apparatus for providing a hyperlink within a computer program that access information outside of the computer program
US5917485A (en) * 1997-05-07 1999-06-29 Unisys Corporation User assistance for data processing systems
US6677960B1 (en) 1997-05-07 2004-01-13 Unisys Corporation User assistance for heterogeneous data processing systems
US6594689B1 (en) 1997-05-08 2003-07-15 Unisys Corporation Multi-platform helper utilities
JP3788543B2 (ja) * 1997-05-20 2006-06-21 富士通株式会社 会議支援システム及び記録媒体
JPH10334259A (ja) * 1997-05-22 1998-12-18 Internatl Business Mach Corp <Ibm> 図形選択方法および記憶媒体
US6246407B1 (en) * 1997-06-16 2001-06-12 Ati Technologies, Inc. Method and apparatus for overlaying a window with a multi-state window
US6043824A (en) * 1997-06-27 2000-03-28 Xerox Corporation Composing layered synthetic graphics filters with limited scopes of operation
US6025838A (en) * 1997-07-11 2000-02-15 International Business Machines Corporation Interactive display interface for media presentation with direct access to media sequences
US6072484A (en) * 1997-08-13 2000-06-06 International Business Machines Corporation Graphic user interface for tab setting with a re-sizeable scale
US5999730A (en) * 1997-10-27 1999-12-07 Phoenix Technologies Limited Generation of firmware code using a graphic representation
GB9722766D0 (en) 1997-10-28 1997-12-24 British Telecomm Portable computers
US6448956B1 (en) 1997-10-31 2002-09-10 Eastman Kodak Company Systems and methods for direct image manipulation
US6587121B1 (en) 1997-12-19 2003-07-01 Unisys Corporation Graphical table of contents for a help system
US6147684A (en) 1998-02-06 2000-11-14 Sun Microysytems, Inc. Techniques for navigating layers of a user interface
US7139970B2 (en) * 1998-04-10 2006-11-21 Adobe Systems Incorporated Assigning a hot spot in an electronic artwork
US6492978B1 (en) 1998-05-29 2002-12-10 Ncr Corporation Keyscreen
US6219056B1 (en) * 1998-06-05 2001-04-17 Autodesk, Inc. Shape objects having authorable behaviors and appearances
US6870546B1 (en) 1998-06-01 2005-03-22 Autodesk, Inc. Protectable expressions in objects having authorable behaviors and appearances
US6670961B2 (en) 1998-06-01 2003-12-30 Autodesk, Inc. Method and apparatus for enhanced connectors and connection manager
US6912311B2 (en) * 1998-06-30 2005-06-28 Flashpoint Technology, Inc. Creation and use of complex image templates
US6336052B1 (en) 1998-07-08 2002-01-01 Forensic Technology Wai Inc. Data acquistion image analysis image manipulation interface
DE59814256D1 (de) 1998-09-01 2008-08-28 Juergen Held Verfahren und Vorrichtung zum manuellen Erfassen unterschiedlicher Ereignisse oder Zustände
US6650338B1 (en) 1998-11-24 2003-11-18 Interval Research Corporation Haptic interaction with video and image data
US7469381B2 (en) 2007-01-07 2008-12-23 Apple Inc. List scrolling and document translation, scaling, and rotation on a touch-screen display
US6630634B2 (en) * 1999-01-28 2003-10-07 Gateway, Inc. CAD cursor with electronically modifiable transparent display
US7966078B2 (en) 1999-02-01 2011-06-21 Steven Hoffberg Network media appliance system and method
US6480813B1 (en) * 1999-02-24 2002-11-12 Autodesk, Inc. Method and apparatus for defining a precision drawing in a drawing program
US6288704B1 (en) 1999-06-08 2001-09-11 Vega, Vista, Inc. Motion detection and tracking system to control navigation and display of object viewers
US6337678B1 (en) 1999-07-21 2002-01-08 Tactiva Incorporated Force feedback computer input and output device with coordinated haptic elements
US6806892B1 (en) 1999-12-20 2004-10-19 International Business Machines Corporation Layer viewport for enhanced viewing in layered drawings
US7434177B1 (en) 1999-12-20 2008-10-07 Apple Inc. User interface for providing consolidation and access
US6686938B1 (en) * 2000-01-05 2004-02-03 Apple Computer, Inc. Method and system for providing an embedded application toolbar
JP5465819B2 (ja) * 2000-02-12 2014-04-09 アドビ システムズ, インコーポレイテッド テキストグリッド作成ツール
US7071941B2 (en) * 2000-02-12 2006-07-04 Adobe Systems Incorporated Method for calculating CJK emboxes in fonts
US6993709B1 (en) 2000-02-12 2006-01-31 Adobe Systems Incorporated Smart corner move snapping
US7305617B2 (en) * 2000-02-12 2007-12-04 Adobe Systems Incorporated Method for aligning text to baseline grids and to CJK character grids
US6859909B1 (en) * 2000-03-07 2005-02-22 Microsoft Corporation System and method for annotating web-based documents
US7334216B2 (en) * 2000-04-04 2008-02-19 Sosy, Inc. Method and apparatus for automatic generation of information system user interfaces
US6681383B1 (en) 2000-04-04 2004-01-20 Sosy, Inc. Automatic software production system
US6633310B1 (en) * 2000-05-31 2003-10-14 Microsoft Corporation Switchably translucent and opaque graphical user interface elements
JP3745595B2 (ja) * 2000-06-29 2006-02-15 インターナショナル・ビジネス・マシーンズ・コーポレーション ネットワークシステム構築方法およびそのシステム、ネットワークシステム構成図の作図方法およびそのシステム、ネットワークシステム構成ファイルの生成方法およびそのシステム、ならびに記録媒体
AU2001276583A1 (en) * 2000-07-31 2002-02-13 Hypnotizer Method and system for receiving interactive dynamic overlays through a data stream and displaying it over a video content
US7168037B2 (en) * 2000-09-25 2007-01-23 Adobe Systems Incorporated Text composition spacing amount setting device with icon indicators
US6985146B2 (en) * 2000-09-25 2006-01-10 Adobe System Incorporated Composite font editing device and computer program
US6928611B2 (en) * 2000-09-25 2005-08-09 Adobe Systems Incorporated Setting text composition spacing amount
US6918091B2 (en) * 2000-11-09 2005-07-12 Change Tools, Inc. User definable interface system, method and computer program product
US7895530B2 (en) 2000-11-09 2011-02-22 Change Tools, Inc. User definable interface system, method, support tools, and computer program product
US6577296B2 (en) 2000-11-14 2003-06-10 Vega Vista, Inc. Fixed cursor
CA2328795A1 (en) 2000-12-19 2002-06-19 Advanced Numerical Methods Ltd. Applications and performance enhancements for detail-in-context viewing technology
JP2002208022A (ja) * 2001-01-10 2002-07-26 Reile:Kk 表示制御方法、情報表示装置および媒体
US7296227B2 (en) 2001-02-12 2007-11-13 Adobe Systems Incorporated Determining line leading in accordance with traditional Japanese practices
US6864905B2 (en) 2001-03-23 2005-03-08 International Business Machines Corporation Method to redisplay active panels
US6795096B2 (en) 2001-03-26 2004-09-21 International Business Machines Corporation Method to refresh view of a collection of objects
US8416266B2 (en) 2001-05-03 2013-04-09 Noregin Assetts N.V., L.L.C. Interacting with detail-in-context presentations
CA2345803A1 (en) * 2001-05-03 2002-11-03 Idelix Software Inc. User interface elements for pliable display technology implementations
US7084886B2 (en) 2002-07-16 2006-08-01 Idelix Software Inc. Using detail-in-context lenses for accurate digital image cropping and measurement
US7213214B2 (en) 2001-06-12 2007-05-01 Idelix Software Inc. Graphical user interface with zoom for detail-in-context presentations
US9760235B2 (en) 2001-06-12 2017-09-12 Callahan Cellular L.L.C. Lens-defined adjustment of displays
US6971068B2 (en) * 2001-07-26 2005-11-29 International Business Machines Corporation Dialog box positioning
US7477232B2 (en) * 2001-08-28 2009-01-13 Volume Interactions Pte., Ltd. Methods and systems for interaction with three-dimensional computer models
US9508101B1 (en) * 2001-09-21 2016-11-29 Google Inc. Systems and methods for providing stock ticker information
US7167274B2 (en) * 2001-09-28 2007-01-23 Adobe Systems Incorporated Line leading from an arbitrary point
US7312785B2 (en) 2001-10-22 2007-12-25 Apple Inc. Method and apparatus for accelerated scrolling
US7046230B2 (en) 2001-10-22 2006-05-16 Apple Computer, Inc. Touch pad handheld device
US7345671B2 (en) 2001-10-22 2008-03-18 Apple Inc. Method and apparatus for use of rotational user inputs
EP1449152B1 (en) 2001-10-24 2013-10-23 Google, Inc. User definable image reference points
US7602991B2 (en) * 2001-10-24 2009-10-13 Nik Software, Inc. User definable image reference regions
US9189467B1 (en) 2001-11-07 2015-11-17 Apple Inc. Method and apparatus for annotating an electronic document
CA2361341A1 (en) 2001-11-07 2003-05-07 Idelix Software Inc. Use of detail-in-context presentation on stereoscopically paired images
CA2370752A1 (en) 2002-02-05 2003-08-05 Idelix Software Inc. Fast rendering of pyramid lens distorted raster images
JP4032763B2 (ja) * 2002-02-08 2008-01-16 大成建設株式会社 保護対象物の画像による復元方法及びそのシステム
US7333092B2 (en) 2002-02-25 2008-02-19 Apple Computer, Inc. Touch pad for handheld device
US7281215B1 (en) * 2002-04-30 2007-10-09 Aol Llc IM conversation counter and indicator
US7127685B2 (en) 2002-04-30 2006-10-24 America Online, Inc. Instant messaging interface having a tear-off element
US7421661B1 (en) 2002-04-30 2008-09-02 Aol Llc Instant messaging interface having an informational tool tip
US7039862B2 (en) 2002-05-10 2006-05-02 Adobe Systems Incorporated Text spacing adjustment
US8120624B2 (en) 2002-07-16 2012-02-21 Noregin Assets N.V. L.L.C. Detail-in-context lenses for digital image cropping, measurement and online maps
CA2393887A1 (en) * 2002-07-17 2004-01-17 Idelix Software Inc. Enhancements to user interface for detail-in-context data presentation
GB2391148B (en) * 2002-07-19 2006-01-04 Autodesk Canada Inc Selecting functions via a graphical user interface
US7549127B2 (en) * 2002-08-01 2009-06-16 Realnetworks, Inc. Method and apparatus for resizing video content displayed within a graphical user interface
US20040216036A1 (en) * 2002-09-13 2004-10-28 Yahoo! Inc. Browser user interface
US7454707B2 (en) * 2002-09-30 2008-11-18 Canon Kabushiki Kaisha Image editing method, image editing apparatus, program for implementing image editing method, and recording medium recording program
CA2406047A1 (en) 2002-09-30 2004-03-30 Ali Solehdin A graphical user interface for digital media and network portals using detail-in-context lenses
CA2449888A1 (en) 2003-11-17 2005-05-17 Idelix Software Inc. Navigating large images using detail-in-context fisheye rendering techniques
US7242387B2 (en) 2002-10-18 2007-07-10 Autodesk, Inc. Pen-mouse system
CA2411898A1 (en) 2002-11-15 2004-05-15 Idelix Software Inc. A method and system for controlling access to detail-in-context presentations
US7123261B2 (en) * 2002-12-26 2006-10-17 Adobe Systems Incorporated Coordinating grid tracking and mojikumi spacing of Japanese text
US20040125107A1 (en) * 2002-12-26 2004-07-01 Mccully Nathaniel M. Coordinating grid tracking and mojikumi spacing of Japanese text
GB2400289A (en) * 2003-04-04 2004-10-06 Autodesk Canada Inc Selecting functions in a Context-Sensitive Menu
DE10324698A1 (de) * 2003-05-28 2004-12-23 Siemens Ag Computer und Verfahren zum Bearbeiten und/oder Auswerten eines digitalen Bildes
JP4161814B2 (ja) 2003-06-16 2008-10-08 ソニー株式会社 入力方法および入力装置
US8390616B1 (en) * 2003-08-07 2013-03-05 Adobe Systems Incorporated Markers for identifying projected graphics objects in object streams
US7499040B2 (en) 2003-08-18 2009-03-03 Apple Inc. Movable touch pad with added functionality
US20070152977A1 (en) 2005-12-30 2007-07-05 Apple Computer, Inc. Illuminated touchpad
US8321813B2 (en) * 2003-11-06 2012-11-27 Lenovo (Singapore) Pte Ltd. Pointing device operation modification program
US8059099B2 (en) 2006-06-02 2011-11-15 Apple Inc. Techniques for interactive input to portable electronic devices
US7495659B2 (en) 2003-11-25 2009-02-24 Apple Inc. Touch pad for handheld device
US8442331B2 (en) 2004-02-15 2013-05-14 Google Inc. Capturing text from rendered documents using supplemental information
US7707039B2 (en) 2004-02-15 2010-04-27 Exbiblio B.V. Automatic modification of web pages
US7812860B2 (en) 2004-04-01 2010-10-12 Exbiblio B.V. Handheld device for capturing text from both a document printed on paper and a document displayed on a dynamic display device
US10635723B2 (en) 2004-02-15 2020-04-28 Google Llc Search engines and systems with handheld document data capture devices
US7559036B1 (en) 2004-03-05 2009-07-07 Trading Technologies International, Inc. System and method for displaying a constant time selection context menu interface
US20060081714A1 (en) 2004-08-23 2006-04-20 King Martin T Portable scanning device
US20060098900A1 (en) 2004-09-27 2006-05-11 King Martin T Secure data gathering from rendered documents
US9116890B2 (en) 2004-04-01 2015-08-25 Google Inc. Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US7894670B2 (en) 2004-04-01 2011-02-22 Exbiblio B.V. Triggering actions in response to optically or acoustically capturing keywords from a rendered document
US7990556B2 (en) 2004-12-03 2011-08-02 Google Inc. Association of a portable scanner with input/output and storage devices
US9143638B2 (en) 2004-04-01 2015-09-22 Google Inc. Data capture from rendered documents using handheld device
US8146156B2 (en) 2004-04-01 2012-03-27 Google Inc. Archive of text captures from rendered documents
US7600201B2 (en) * 2004-04-07 2009-10-06 Sony Corporation Methods and apparatuses for viewing choices and making selections
US7486302B2 (en) 2004-04-14 2009-02-03 Noregin Assets N.V., L.L.C. Fisheye lens graphical user interfaces
US8489624B2 (en) 2004-05-17 2013-07-16 Google, Inc. Processing techniques for text capture from a rendered document
US8620083B2 (en) 2004-12-03 2013-12-31 Google Inc. Method and system for character recognition
US8874504B2 (en) 2004-12-03 2014-10-28 Google Inc. Processing techniques for visual capture data from a rendered document
US8106927B2 (en) 2004-05-28 2012-01-31 Noregin Assets N.V., L.L.C. Graphical user interfaces and occlusion prevention for fisheye lenses with line segment foci
US8230358B1 (en) * 2004-06-22 2012-07-24 Apple Inc. Defining motion in a computer system with a graphical user interface
US9317945B2 (en) 2004-06-23 2016-04-19 Callahan Cellular L.L.C. Detail-in-context lenses for navigation
US8346620B2 (en) 2004-07-19 2013-01-01 Google Inc. Automatic modification of web pages
ATE553429T1 (de) 2004-08-16 2012-04-15 Apple Inc Verfahren zur erhöhung der räumlichen auflösung von berührungsempfindlichen vorrichtungen
US7714859B2 (en) 2004-09-03 2010-05-11 Shoemaker Garth B D Occlusion reduction and magnification for multidimensional data presentations
US7995078B2 (en) 2004-09-29 2011-08-09 Noregin Assets, N.V., L.L.C. Compound lenses for multi-source data presentation
US7594171B2 (en) 2004-10-01 2009-09-22 Adobe Systems Incorporated Rule-based text layout
US8225195B1 (en) 2004-12-15 2012-07-17 Amazon Technologies, Inc. Displaying links at varying levels of prominence to reveal emergent paths based on user interaction
US7467349B1 (en) 2004-12-15 2008-12-16 Amazon Technologies, Inc. Method and system for displaying a hyperlink at multiple levels of prominence based on user interaction
US8819569B2 (en) 2005-02-18 2014-08-26 Zumobi, Inc Single-handed approach for navigation of application tiles using panning and zooming
US7580036B2 (en) 2005-04-13 2009-08-25 Catherine Montagnese Detail-in-context terrain displacement algorithm with optimizations
US8698844B1 (en) 2005-04-16 2014-04-15 Apple Inc. Processing cursor movements in a graphical user interface of a multimedia application
US7535480B2 (en) * 2005-08-24 2009-05-19 Microsoft Corporation Compositing rendering layers
US7671837B2 (en) 2005-09-06 2010-03-02 Apple Inc. Scrolling input arrangements using capacitive sensors on a flexible membrane
US7647175B2 (en) 2005-09-09 2010-01-12 Rembrandt Technologies, Lp Discrete inertial display navigation
US7880729B2 (en) 2005-10-11 2011-02-01 Apple Inc. Center button isolation ring
US8031206B2 (en) 2005-10-12 2011-10-04 Noregin Assets N.V., L.L.C. Method and system for generating pyramid fisheye lens detail-in-context presentations
US20070152983A1 (en) 2005-12-30 2007-07-05 Apple Computer, Inc. Touch pad with symbols based on mode
US20070192719A1 (en) * 2006-02-10 2007-08-16 Microsoft Corporation Hover indicator for objects
US7925993B2 (en) * 2006-03-30 2011-04-12 Amazon Technologies, Inc. Method and system for aggregating and presenting user highlighting of content
US7983473B2 (en) 2006-04-11 2011-07-19 Noregin Assets, N.V., L.L.C. Transparency adjustment of a presentation
US9360967B2 (en) 2006-07-06 2016-06-07 Apple Inc. Mutual capacitance touch sensing device
US8743060B2 (en) 2006-07-06 2014-06-03 Apple Inc. Mutual capacitance touch sensing device
US8022935B2 (en) 2006-07-06 2011-09-20 Apple Inc. Capacitance sensing electrode with integrated I/O mechanism
JP2008041003A (ja) * 2006-08-10 2008-02-21 Fuji Xerox Co Ltd 文書表示処理装置および文書表示処理プログラム
EP2067119A2 (en) 2006-09-08 2009-06-10 Exbiblio B.V. Optical scanners, such as hand-held optical scanners
US7795553B2 (en) 2006-09-11 2010-09-14 Apple Inc. Hybrid button
US8274479B2 (en) 2006-10-11 2012-09-25 Apple Inc. Gimballed scroll wheel
US8482530B2 (en) 2006-11-13 2013-07-09 Apple Inc. Method of capacitively sensing finger position
KR100886337B1 (ko) * 2006-11-23 2009-03-02 삼성전자주식회사 이미지 내 선택 영역을 일괄 저장하는 장치 및 이미지정보의 문서화 장치
EP1939716A1 (en) * 2006-12-29 2008-07-02 Advanced Digital Broadcast S.A. User interface for controlling plurality of parameters and method for controlling plurality of parameters
US20080168478A1 (en) 2007-01-07 2008-07-10 Andrew Platzer Application Programming Interfaces for Scrolling
US7844915B2 (en) 2007-01-07 2010-11-30 Apple Inc. Application programming interfaces for scrolling operations
US20080168402A1 (en) 2007-01-07 2008-07-10 Christopher Blumenberg Application Programming Interfaces for Gesture Operations
US8914786B2 (en) 2007-03-23 2014-12-16 Zumobi, Inc. Systems and methods for controlling application updates across a wireless interface
US7580883B2 (en) 2007-03-29 2009-08-25 Trading Technologies International, Inc. System and method for chart based order entry
US8140610B2 (en) * 2007-05-31 2012-03-20 Microsoft Corporation Bitmap-based display remoting
US9654104B2 (en) 2007-07-17 2017-05-16 Apple Inc. Resistive force sensor with capacitive discrimination
US9026938B2 (en) 2007-07-26 2015-05-05 Noregin Assets N.V., L.L.C. Dynamic detail-in-context user interface for application access and content access on electronic displays
US7910843B2 (en) 2007-09-04 2011-03-22 Apple Inc. Compact input device
US8683378B2 (en) 2007-09-04 2014-03-25 Apple Inc. Scrolling techniques for user interfaces
US8416198B2 (en) 2007-12-03 2013-04-09 Apple Inc. Multi-dimensional scroll wheel
US8015485B2 (en) * 2007-12-11 2011-09-06 International Business Machines Corporation Multidimensional web page ruler
US8125461B2 (en) 2008-01-11 2012-02-28 Apple Inc. Dynamic input graphic display
US8820133B2 (en) 2008-02-01 2014-09-02 Apple Inc. Co-extruded materials and methods
US8266524B2 (en) * 2008-02-25 2012-09-11 Microsoft Corporation Editing a document using a transitory editing surface
US8205157B2 (en) 2008-03-04 2012-06-19 Apple Inc. Methods and graphical user interfaces for conducting searches on a portable multifunction device
US8717305B2 (en) 2008-03-04 2014-05-06 Apple Inc. Touch event model for web pages
US8416196B2 (en) 2008-03-04 2013-04-09 Apple Inc. Touch event model programming interface
US8645827B2 (en) 2008-03-04 2014-02-04 Apple Inc. Touch event model
US9454256B2 (en) 2008-03-14 2016-09-27 Apple Inc. Sensor configurations of an input device that are switchable based on mode
DE102008017830A1 (de) * 2008-04-08 2009-10-29 Siemens Aktiengesellschaft Verfahren und Benutzerschnittstelle für die grafische Darstellung von medizinischen Daten
US9507651B2 (en) 2008-04-28 2016-11-29 Microsoft Technology Licensing, Llc Techniques to modify a document using a latent transfer surface
KR100980683B1 (ko) * 2008-09-01 2010-09-08 삼성전자주식회사 휴대단말기의 메뉴 리스트 생성을 위한 사용자 인터페이스 제공 방법 및 장치
US8816967B2 (en) 2008-09-25 2014-08-26 Apple Inc. Capacitive sensor having electrodes arranged on the substrate and the flex circuit
US8395590B2 (en) 2008-12-17 2013-03-12 Apple Inc. Integrated contact switch and touch sensor elements
DE202010018601U1 (de) 2009-02-18 2018-04-30 Google LLC (n.d.Ges.d. Staates Delaware) Automatisches Erfassen von Informationen, wie etwa Erfassen von Informationen unter Verwendung einer dokumentenerkennenden Vorrichtung
WO2010105245A2 (en) 2009-03-12 2010-09-16 Exbiblio B.V. Automatically providing content associated with captured information, such as information captured in real-time
US8447066B2 (en) 2009-03-12 2013-05-21 Google Inc. Performing actions based on capturing information from rendered documents, such as documents under copyright
US8589374B2 (en) 2009-03-16 2013-11-19 Apple Inc. Multifunction device with integrated search and application selection
US9684521B2 (en) 2010-01-26 2017-06-20 Apple Inc. Systems having discrete and continuous gesture recognizers
US8285499B2 (en) 2009-03-16 2012-10-09 Apple Inc. Event recognition
US9311112B2 (en) 2009-03-16 2016-04-12 Apple Inc. Event recognition
US8566045B2 (en) 2009-03-16 2013-10-22 Apple Inc. Event recognition
US8468466B2 (en) * 2009-03-27 2013-06-18 International Business Machines Corporation Radial menu selection with gestures
US8627233B2 (en) * 2009-03-27 2014-01-07 International Business Machines Corporation Radial menu with overshoot, fade away, and undo capabilities
US20100275122A1 (en) * 2009-04-27 2010-10-28 Microsoft Corporation Click-through controller for mobile interaction
US8418082B2 (en) * 2009-05-01 2013-04-09 Apple Inc. Cross-track edit indicators and edit selections
US8627207B2 (en) * 2009-05-01 2014-01-07 Apple Inc. Presenting an editing tool in a composite display area
US9354751B2 (en) 2009-05-15 2016-05-31 Apple Inc. Input device with optimized capacitive sensing
US20100317431A1 (en) * 2009-06-15 2010-12-16 Kuan Yi-Hui Game card and game playing method
US8872771B2 (en) 2009-07-07 2014-10-28 Apple Inc. Touch sensing device having conductive nodes
US20110010611A1 (en) * 2009-07-08 2011-01-13 Richard Ross Automated sequential magnification of words on an electronic media reader
US20110035700A1 (en) * 2009-08-05 2011-02-10 Brian Meaney Multi-Operation User Interface Tool
US9201570B2 (en) 2009-08-21 2015-12-01 Gvbb Holdings S.A.R.L. Synchronous control system including a master device and a slave device, and synchronous control method for controlling the same
EP3260969B1 (en) 2009-09-22 2021-03-03 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
US9310907B2 (en) 2009-09-25 2016-04-12 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
US8832585B2 (en) 2009-09-25 2014-09-09 Apple Inc. Device, method, and graphical user interface for manipulating workspace views
US8766928B2 (en) 2009-09-25 2014-07-01 Apple Inc. Device, method, and graphical user interface for manipulating user interface objects
US8799826B2 (en) 2009-09-25 2014-08-05 Apple Inc. Device, method, and graphical user interface for moving a calendar entry in a calendar application
KR20110037040A (ko) * 2009-10-05 2011-04-13 삼성전자주식회사 휴대 단말기 및 그의 화면 표시 방법
NL2003661C2 (nl) * 2009-10-16 2011-04-19 Sara Lee De Nv Controle-eenheid voor het besturen van een automatisch apparaat voor het bereiden van dranken.
US10553001B2 (en) * 2009-11-20 2020-02-04 Adobe Inc. Master page overlay
US9081799B2 (en) 2009-12-04 2015-07-14 Google Inc. Using gestalt information to identify locations in printed information
US9323784B2 (en) 2009-12-09 2016-04-26 Google Inc. Image search using text-based elements within the contents of images
US8381125B2 (en) * 2009-12-16 2013-02-19 Apple Inc. Device and method for resizing user interface content while maintaining an aspect ratio via snapping a perimeter to a gridline
US8347238B2 (en) * 2009-12-16 2013-01-01 Apple Inc. Device, method, and graphical user interface for managing user interface content and user interface elements by dynamic snapping of user interface elements to alignment guides
US8683363B2 (en) * 2010-01-26 2014-03-25 Apple Inc. Device, method, and graphical user interface for managing user interface content and user interface elements
US8539385B2 (en) 2010-01-26 2013-09-17 Apple Inc. Device, method, and graphical user interface for precise positioning of objects
US8209630B2 (en) * 2010-01-26 2012-06-26 Apple Inc. Device, method, and graphical user interface for resizing user interface content
US8612884B2 (en) 2010-01-26 2013-12-17 Apple Inc. Device, method, and graphical user interface for resizing objects
US8539386B2 (en) 2010-01-26 2013-09-17 Apple Inc. Device, method, and graphical user interface for selecting and moving objects
US9417787B2 (en) * 2010-02-12 2016-08-16 Microsoft Technology Licensing, Llc Distortion effects to indicate location in a movable data collection
JP2011175569A (ja) * 2010-02-25 2011-09-08 Sharp Corp 文書画像生成装置、文書画像生成方法及びコンピュータプログラム
JP5704825B2 (ja) * 2010-03-08 2015-04-22 キヤノン株式会社 情報処理装置およびその制御方法およびプログラム
US9292161B2 (en) * 2010-03-24 2016-03-22 Microsoft Technology Licensing, Llc Pointer tool with touch-enabled precise placement
US20130111380A1 (en) * 2010-04-02 2013-05-02 Symantec Corporation Digital whiteboard implementation
TWI411952B (zh) * 2010-04-08 2013-10-11 Inventec Corp 文件檔案內容之縮放顯示系統及其方法
US20110276891A1 (en) * 2010-05-06 2011-11-10 Marc Ecko Virtual art environment
US9092128B2 (en) 2010-05-21 2015-07-28 Apple Inc. Method and apparatus for managing visual information
US8552999B2 (en) 2010-06-14 2013-10-08 Apple Inc. Control selection approximation
US9098182B2 (en) 2010-07-30 2015-08-04 Apple Inc. Device, method, and graphical user interface for copying user interface objects between content regions
US8972879B2 (en) 2010-07-30 2015-03-03 Apple Inc. Device, method, and graphical user interface for reordering the front-to-back positions of objects
US9081494B2 (en) 2010-07-30 2015-07-14 Apple Inc. Device, method, and graphical user interface for copying formatting attributes
US9747270B2 (en) 2011-01-07 2017-08-29 Microsoft Technology Licensing, Llc Natural input for spreadsheet actions
US9223471B2 (en) 2010-12-28 2015-12-29 Microsoft Technology Licensing, Llc Touch screen control
US8994655B2 (en) * 2011-03-22 2015-03-31 Mitsubishi Heavy Industries, Ltd. Display control device comprising processing unit for drawing pointer and control system
US9298363B2 (en) 2011-04-11 2016-03-29 Apple Inc. Region activation for touch sensitive surface
US8863039B2 (en) 2011-04-18 2014-10-14 Microsoft Corporation Multi-dimensional boundary effects
JP2012256270A (ja) * 2011-06-10 2012-12-27 Sony Corp 情報処理装置、プログラム及び情報処理方法
EP2732383B1 (en) 2011-07-12 2018-04-04 Snap Inc. Methods and systems of providing visual content editing functions
US9317196B2 (en) 2011-08-10 2016-04-19 Microsoft Technology Licensing, Llc Automatic zooming for text selection/cursor placement
US9342322B2 (en) 2011-09-12 2016-05-17 Microsoft Technology Licensing, Llc System and method for layering using tile-based renderers
US20130104085A1 (en) * 2011-10-21 2013-04-25 Digital Artforms, Inc. Systems and methods for human-computer interaction using a two handed interface
US20130104086A1 (en) * 2011-10-21 2013-04-25 Digital Artforms, Inc. Systems and methods for human-computer interaction using a two handed interface
US20130104083A1 (en) * 2011-10-21 2013-04-25 Digital Artforms, Inc. Systems and methods for human-computer interaction using a two handed interface
US10248439B2 (en) * 2011-11-10 2019-04-02 Microsoft Technology Licensing, Llc Format object task pane
US9263002B2 (en) * 2011-11-30 2016-02-16 Microsoft Technology Licensing, Llc Application and user interface framework interaction
US10345911B2 (en) 2011-12-23 2019-07-09 Intel Corporation Mechanism to provide visual feedback regarding computing system command gestures
WO2013095677A1 (en) 2011-12-23 2013-06-27 Intel Corporation Computing system utilizing three-dimensional manipulation command gestures
WO2013095679A1 (en) * 2011-12-23 2013-06-27 Intel Corporation Computing system utilizing coordinated two-hand command gestures
US9250768B2 (en) * 2012-02-13 2016-02-02 Samsung Electronics Co., Ltd. Tablet having user interface
JP5982884B2 (ja) * 2012-03-08 2016-08-31 ソニー株式会社 表示制御装置、表示制御方法およびコンピュータ読み取り可能な記録媒体
US9043722B1 (en) 2012-06-19 2015-05-26 Surfwax, Inc. User interfaces for displaying relationships between cells in a grid
CN103514147A (zh) * 2012-06-29 2014-01-15 腾讯科技(深圳)有限公司 复制粘贴网页内容的方法和系统
CN103679777A (zh) * 2012-09-07 2014-03-26 腾讯科技(深圳)有限公司 一种页面遮罩的实现方法及装置
US9836154B2 (en) * 2013-01-24 2017-12-05 Nook Digital, Llc Selective touch scan area and reporting techniques
US9190016B2 (en) 2013-03-15 2015-11-17 Valspar Sourcing, Inc. Color-matching tool for virtual painting
US9733716B2 (en) 2013-06-09 2017-08-15 Apple Inc. Proxy gesture recognizer
US10664652B2 (en) 2013-06-15 2020-05-26 Microsoft Technology Licensing, Llc Seamless grid and canvas integration in a spreadsheet application
JP6249486B2 (ja) * 2013-08-19 2017-12-20 株式会社ワコム 描画装置
US11514228B2 (en) * 2014-05-23 2022-11-29 Microsoft Technology Licensing, Llc Guides on a content generation system
EP3108342B1 (en) 2014-05-30 2019-10-23 Apple Inc. Transition from use of one device to another
US10365807B2 (en) 2015-03-02 2019-07-30 Apple Inc. Control of system zoom magnification using a rotatable input mechanism
ES2819748T3 (es) * 2015-04-30 2021-04-19 Evoca Spa Máquina dispensadora de bebidas automática con interfaz hombre-máquina mejorada
US20160334971A1 (en) * 2015-05-12 2016-11-17 Siemens Product Lifecycle Management Software Inc. Object Manipulation System and Method
USD853405S1 (en) * 2015-11-18 2019-07-09 Samsung Electronics Co., Ltd. Display screen or portion thereof with graphical user interface
US10540084B2 (en) * 2016-04-29 2020-01-21 Promethean Limited Interactive display overlay systems and related methods
KR102579692B1 (ko) * 2016-05-10 2023-09-18 틴 트란 플루이드 타임라인 소셜 네트워크
US10637986B2 (en) 2016-06-10 2020-04-28 Apple Inc. Displaying and updating a set of application views
US10379726B2 (en) 2016-11-16 2019-08-13 Xerox Corporation Re-ordering pages within an image preview
US10705713B2 (en) 2017-05-16 2020-07-07 Apple Inc. Drag and drop for touchscreen devices
WO2019063495A2 (en) * 2017-09-29 2019-04-04 Inventrans Bvba METHOD, DEVICE AND COMPUTER PROGRAM FOR OVERLAPING GRAPHIC IMAGE
WO2020006478A1 (en) 2018-06-29 2020-01-02 Alfa Enzo Inc. Multi-blockchain proof-of-activity platform
US11086413B2 (en) * 2019-02-26 2021-08-10 Yong Wang Context-dependent wheels and buttons
US11003255B2 (en) * 2019-02-26 2021-05-11 Yong Wang Context-dependent touchbands
US11822761B2 (en) 2021-05-15 2023-11-21 Apple Inc. Shared-content session user interfaces
US11907605B2 (en) 2021-05-15 2024-02-20 Apple Inc. Shared-content session user interfaces

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE32632E (en) * 1982-07-19 1988-03-29 Apple Computer, Inc. Display system
US4622545A (en) * 1982-09-30 1986-11-11 Apple Computer, Inc. Method and apparatus for image compression and manipulation
US4555775B1 (en) * 1982-10-07 1995-12-05 Bell Telephone Labor Inc Dynamic generation and overlaying of graphic windows for multiple active program storage areas
US4686522A (en) * 1985-02-19 1987-08-11 International Business Machines Corporation Method of editing graphic objects in an interactive draw graphic system using implicit editing actions
JPS62165232A (ja) * 1986-01-17 1987-07-21 Mitsubishi Electric Corp キ−入力装置
US4748441A (en) * 1986-09-17 1988-05-31 Brzezinski Stephen R M Multiple function control member
US4788538A (en) * 1986-11-17 1988-11-29 Lotus Development Corporation Method and apparatus for determining boundaries of graphic regions
US4917516A (en) * 1987-02-18 1990-04-17 Retter Dale J Combination computer keyboard and mouse data entry system
US4827253A (en) * 1987-05-18 1989-05-02 Dubner Computer Systems, Inc. Video compositing using a software linear keyer
JPH0213015A (ja) * 1988-03-31 1990-01-17 Internatl Business Mach Corp <Ibm> 項目の選択方法及び装置
US4896291A (en) * 1988-05-20 1990-01-23 International Business Machines Corporation Valuator menu for use as a graphical user interface tool
US4931783A (en) * 1988-07-26 1990-06-05 Apple Computer, Inc. Method and apparatus for removable menu window
US4982343A (en) * 1988-10-11 1991-01-01 Next, Inc. Method and apparatus for displaying a plurality of graphic images
US4910683A (en) * 1988-12-20 1990-03-20 Sun Microsystems, Inc. Method and apparatus for fractional double buffering
US5157384A (en) * 1989-04-28 1992-10-20 International Business Machines Corporation Advanced user interface
JPH03219324A (ja) * 1990-01-25 1991-09-26 Hitachi Ltd 座標入力方法及びデータ処理装置
US5204947A (en) * 1990-10-31 1993-04-20 International Business Machines Corporation Application independent (open) hypermedia enablement services
US5341466A (en) * 1991-05-09 1994-08-23 New York University Fractal computer user centerface with zooming capability
US5283560A (en) * 1991-06-25 1994-02-01 Digital Equipment Corporation Computer system and method for displaying images with superimposed partially transparent menus
US5381158A (en) * 1991-07-12 1995-01-10 Kabushiki Kaisha Toshiba Information retrieval apparatus
US5250929A (en) * 1991-07-29 1993-10-05 Conference Communications, Inc. Interactive overlay-driven computer display system
CA2069118A1 (en) * 1991-09-16 1993-03-17 Craig Henry Becker Multiple action icon
US5287417A (en) * 1992-09-10 1994-02-15 Microsoft Corporation Method and system for recognizing a graphic object's shape, line style, and fill pattern in a pen environment

Also Published As

Publication number Publication date
JP3866302B2 (ja) 2007-01-10
CA2124495A1 (en) 1995-01-22
CA2124495C (en) 1999-06-01
EP0635779B1 (en) 2000-10-18
US5581670A (en) 1996-12-03
EP0635779A1 (en) 1995-01-25
DE69426141T2 (de) 2001-03-01
DE69426141D1 (de) 2000-11-23
ES2151534T3 (es) 2001-01-01

Similar Documents

Publication Publication Date Title
JP3866302B2 (ja) プロセッサーベースの装置の操作方法
JPH0756841A (ja) プロセッサーベースの装置の操作方法
JPH0756840A (ja) プロセッサーベースの装置の操作方法
US11474665B2 (en) Multiple menus for use with a graphical user interface
Bier et al. A taxonomy of see-through tools
US5805167A (en) Popup menus with directional gestures
US5666499A (en) Clickaround tool-based graphical interface with two cursors
US5986657A (en) Method and apparatus for incorporating expandable and collapsible options in a graphical user interface
US6476831B1 (en) Visual scrolling feedback and method of achieving the same
US5611031A (en) Graphical user interface for modifying object characteristics using coupon objects
EP0635808B1 (en) Method and apparatus for operating on the model data structure on an image to produce human perceptible output in the context of the image
US7302650B1 (en) Intuitive tools for manipulating objects in a display
US5450538A (en) Graphical user interface control for expansion and re-sizing of data fields in forms
US5818455A (en) Method and apparatus for operating on the model data structure of an image to produce human perceptible output using a viewing operation region having explicit multiple regions
US5467441A (en) Method for operating on objects in a first image using an object-based model data structure to produce a second contextual image having added, replaced or deleted objects
US5596690A (en) Method and apparatus for operating on an object-based model data structure to produce a second image in the spatial context of a first image
US7725841B2 (en) Selection paradigm for displayed user interface
JP2003529818A (ja) グラフィックユーザインタフェース
JP2003303047A (ja) 画像入力及び表示システム、ユーザインタフェースの利用方法並びにコンピュータで使用可能な媒体を含む製品
US7703038B1 (en) Methods and apparatus for creating a quick canvas
Buxton 1| ll| l|| 1l| l| ll1llllllllllI111I111| l| l1|| l1ll| 1111ll|| ll| l1| l| l1l| 1| ll|
CAN DAS BIER
PARTNER User interface having movable sheet with click-through tools
Noble Scribble: A diagram editor with a minimal interface
Cameron et al. XIE: An Icon Interface Editor

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041026

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050124

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050426

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20051004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051227

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060106

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061005

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20091013

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101013

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111013

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121013

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131013

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131013

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20131013

Year of fee payment: 7

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

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

Free format text: PAYMENT UNTIL: 20131013

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20131013

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term