JP2003529818A - グラフィックユーザインタフェース - Google Patents

グラフィックユーザインタフェース

Info

Publication number
JP2003529818A
JP2003529818A JP2001536685A JP2001536685A JP2003529818A JP 2003529818 A JP2003529818 A JP 2003529818A JP 2001536685 A JP2001536685 A JP 2001536685A JP 2001536685 A JP2001536685 A JP 2001536685A JP 2003529818 A JP2003529818 A JP 2003529818A
Authority
JP
Japan
Prior art keywords
active
elements
text
active elements
computer
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.)
Pending
Application number
JP2001536685A
Other languages
English (en)
Inventor
ウォーレン、ピーター
ロウ、スティーブン
Original Assignee
イー − ブレイン・ソリュージョンズ・エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by イー − ブレイン・ソリュージョンズ・エルエルシー filed Critical イー − ブレイン・ソリュージョンズ・エルエルシー
Publication of JP2003529818A publication Critical patent/JP2003529818A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Processing Or Creating Images (AREA)
  • Digital Computer Display Output (AREA)
  • User Interface Of Digital Computer (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】 本発明は、活性要素が描かれた単一の画面を具備するグラフィックユーザインタフェースである。各活性要素は、前記画面と独立せず、構成パネルと、ユーザが前記活性要素の特性を変えるのを可能にする、各活性要素を操作可能な少なくとも1つのツールとを有する。また、供給された各活性要素上で操作可能な半自動ビュージェネレータは、活性要素がオブジェクトの単一の記録ビュー、もしくはオブジェクトのグループの複合記録ビューであるということを有している。

Description

【発明の詳細な説明】
【0001】 関連出願の参照 本願は、1999年11月12日出願の米国仮出願第60/164,884号
の利益を主張する。
【0002】 発明の背景 1.発明の分野 本発明は、グラフィカル・ユーザ・インターフェースに関する。特に、本発明
は、単一のウインドウのみからなるグラフィカル・ユーザ・インターフェースに
関する。詳細には、本発明は、すべての表示がデスクトップに描かれるデスクト
ップを含む単一のウインドウのみからなるグラフィカル・ユーザ・インターフェ
ースに関する。さらに詳細には、本発明は画面に表示されるあらゆるものが「ア
クティブエレメント」であるグラフィカル・ユーザ・インターフェースに関する
。 2.従来技術の説明 パーソナルコンピュータの処理能力の向上とコストの低下は、社会のあらゆる
局面におけるパーソナルコンピュータの普及につながっている。パーソナルコン
ピュータは、学校、家庭およびビジネスで利用されている。パーソナルコンピュ
ータのコスト低下に伴い、コストの観点から、作業にコンピュータを使用し以前
はコンピュータを使用せずに行われていた機能を行うことがいっそう実現可能と
なっている。
【0003】 生活における数多くの局面を通じてコンピュータが普及したことにより、コン
ピュータの使用をより直感的にするグラフィック・ユーザ・インターフェースが
トレンドとなってきた。このようなグラフィック・ユーザ・インターフェースの
例には、IBM OS/2、Apple System7 及びMicroso
ft Windows(これらは全て登録商標である)が含まれる。これらのオ
ペレーティングシステムはすべて、アプリケーション、オペレーティングシステ
ム情報及びプログラムグルーピングのための「ウインドウ状」ワークスペースに
依存している。
【0004】 現世代のシステムにおいては、通常、コンピュータシステムが、テキストとグ
ラフィックスの組合わせが配置されるディスプレイ上に複数の「ウインドウ」を
用いる「オブジェクト指向」ディスプレイシステムを内蔵する。デスクトップメ
タファーを用いて、ウインドウは、ファイルフォルダ、ルーズリーフバインダ、
または単なる四角形などの様々なオブジェクトの形をとることができ、またウイ
ンドウは、「トップ」ウインドウが現在の作業ファイルとなるように互いに重な
ることもできる。ウインドウベースのグラフィック・ユーザ・インターフェース
(GUI)の環境の中で作業するユーザは、通常オフィスで見られるオブジェク
ト上で作業する。これにより、不慣れなユーザでも、慣れた環境の中でコンピュ
ータと対話することができる。
【0005】 典型的なウインドウベースのGUIにおいては、視覚的に明確な表示オブジェ
クトが表示画面に設けられ、一般に「アイコン」と呼ばれる。各アイコンは、デ
スクトップ上の機能又は目的を表す。多くのシステムにおいては、カーソルも表
示され、これはマウス又はその他のポインタ制御装置の動きに応じて選択的に移
動されることができる。カーソルは、ユーザが画面上で選択する表示オブジェク
ト上を移動されることができる。ユーザは、ウインドウから情報を削除したり、
あるウインドウから別のウインドウへデータを移動したり、一般に、あたかも実
際のファイルやその他の物体が操作されるようにウインドウ上で作業することが
できる。また、メニューバーと共に現れる特定のコマンドオプション及びそのコ
マンドオプションに対応するサブコマンドアイテムを選択する技術を用いて、様
々なプルダウンメニューも表示されることがある。
【0006】 読者には、従来のグラフィック・ユーザ・インターフェースデザインに関連す
る様々な局面、方法及び装置を記載した以下の文献を参照されたい:すなわち、
米国特許第4,931,783号、米国特許第5,072,4212号、米国特
許第5,148,154号、米国特許第5,706,448号、米国特許第5,
524,196号、米国特許第5,600,779号、米国特許第5,488,
685号、米国特許第5,550,967号、米国特許第5,966,126号
、米国特許第6,072,484号及びこれらに引用された文献。
【0007】 しかしながら、従来のグラフィカル・ユーザ・インターフェースはすべて複数
のウインドウを備えている。大部分のウインドウはデスクトップの独立した部分
となる傾向がある。これらのウインドウは、アイコン、メニュー、コマンドボタ
ンなど個々のウインドウに関連した様々なアイテムを含むことがある。一般に、
これらの様々なアイテムは四角形の形状をしており、ユーザは所定のアイテムの
形状を変えることは許されていない。特定の限られた場合において、ユーザはあ
る限度の中で形状のサイズを変えることを許されることがある。あらゆる場合に
おいて、メニュー及びコマンドアイテムなどのアイテムは所定のウインドウに特
定のものであり、したがって、それに関連するウインドウの外に移動することは
できない。さらに、ユーザは、これらのアイテムを特注の形状に変えたり、ウイ
ンドウ、ボタンその他に関連する枠を変更したり変えたりすることはできない。
【0008】 したがって、GUIがアクティブエレメントのみからなるグラフィック・ユー
ザ・インターフェースが必要とされている。さらに、すべての表示が単一のウイ
ンドウ、すなわちデスクトップに描かれるGUIが必要とされている。また、さ
らに、すべてのアクティブエレメントがその表示の外に自由に出てデスクトップ
のいたるところに移動することができるGUIが必要とされている。
【0009】 発明の概要 本発明の目的は、インターフェースが単一のウインドウのみからなるグラフィ
カル・ユーザ・インターフェースを提供することである。本発明の他の目的は、
単一のウインドウに表示されるあらゆるものがアクティブエレメントであるグラ
フィカル・ユーザ・インターフェースを提供することである。本発明のさらに別
の目的は、表示のいずれの部分も独立しておらず、すべての表示がデスクトップ
に描かれるグラフィック・ユーザ・インターフェースを提供することである。本
発明の別の目的は、単一のウインドウに表示されたアクティブエレメントすべて
をユーザにより移動させ、サイズを変更し、配列することができるグラフィカル
・ユーザ・インターフェースを提供することである。本発明のさらに別の目的は
、最も単純なアクティブエレメントが様々な形状及び枠を持つことができるグラ
フィカル・ユーザ・インターフェースを提供することである。本発明のまた別の
目的は、各形状が複数の枠を持つことができるグラフィカル・ユーザ・インター
フェースを提供することである。本発明のさらに別の目的は、いずれのアクティ
ブエレメントも活動状態を起動することができボタンタイプ又はその他の特定の
要素に限定されないグラフィカル・ユーザ・インターフェースを提供することで
ある。
【0010】 本発明は、基本的に、単一のウインドウと、その単一のウインドウに表示され
る一つ以上のアクティブエレメントであってその単一のウインドウ内に引き入れ
られ各アクティブエレメントはその単一のウインドウに依存するアクティブエレ
メントと、各アクティブエレメントと共に動作可能な構成ツールであってユーザ
が各アクティブエレメントの特性を変更することを可能にする構成ツールと、及
びオブジェクトの単登録ビュー又は類似するオブジェクトのグループの複登録ビ
ューを表示するためのアクティブエレメントを生成可能な半自動ビュー生成器か
らなるデスクトップディスプレイウインドウをもつグラフィカル・ユーザ・イン
ターフェースのため方法及び装置を提供することにより上記の及びその他の目的
を達成するものである。
【0011】 以下に、本発明の好ましい方法及び装置についてJavaソフトウェアに基づ
いて述べるが、本発明のシステムデザインは、本発明の独自の特徴を損なうこと
なくその他のソフトウェア言語に基づく実施例及び補飾物を持つことができる。
【0012】 好ましい実施例の詳細な説明 本発明の好ましい実施例を図1から図11に示す。構成 図1において、スクリーン1上に本発明により表示されているすべてのものは
“活性エレメント”2である。最も単純なエレメントは様々な形と境界をとりう
る。それらは背景として無地の色またはイメージを表示することが出来る。それ
らはユーザーにより、動かされたり、サイズを変更されたり、修正されたりしう
る。また、それらがレイアウトされるとき、もし親のエレメントに対する子のエ
レメントとして使用されるなら、親のエレメントが使用するヒントを蓄えること
が出来る。
【0013】 本発明においては、度々使用される単純なエレメントはいくつかの特殊エレメ
ント(機能)を有している。最も重要なエレメント(機能)は、ラベル3(“12
”)、テキストフィールド4(“ABC abc …”)、ボタン5(“New”)及びラジ
オボタン6(“Bold”)エレメントのようなテキスト表示可能なエレメント、及
び、ペアレント7(全“エディタツール”ディスプレイ)、グリッド(図示せず)
、ボタングループ8(フォント名のリスト)及びオーバーレイエレメント(図示せ
ず)などのエレメントの表示を管理可能なエレメントである。
【0014】 本発明のディスプレイは全体として一個の”ウインドウ”、すなわち、デスク
トップからなる。ディスプレイのどの部分もデスクトップから独立してはいない
。デスクトップはJava(ジャバ)Jパネルであり、活性エレメントではない。そ
の機能は本発明が現在使用中のすべての要素を表示することであり、また移動し
サイズ変更するエレメントを操作することである。典型的には、エレメントはフ
レームの唯一の子としてのJavaJフレームの全スクリーンに表示される。本発明
のすべてのエレメントはデスクトップの”Javaの子供たち”、すなわち、デスク
トップに含まれそれに表示されるものである。デスクトップではJavaのレイアウ
トマネージャは使用されず、本発明の親エレメントは子エレメントのサイズや位
置を自由に管理できる。これは本発明の”ウインドウ”が互いにオーバーラップ
すること、スクリーンから部分的に外れる、等、をも許容する。禁じられている
ふるまいはデスクトップがそれらのレイアウトを管理することである。当業者、
すなわち、Javaのプログラマーたちは以下の好ましい実施例におけるJavaオブジ
ェクトに対する様々な言及を認識し理解するだろう。
【0015】 ディスプレイの多くはサブウインドウの外観を呈しており、またこれまでのウ
インドウのように移動したりサイズ変更を行ったり出来る。しかし、これは錯覚
にすぎない。すべてのディスプレイは本発明のデスクトップに書き込まれたもの
である。
【0016】 本発明のすべての活性エレメントは少なくとも形態、それは初期には透明であ
る、を有している。単純なエレメントの最小のサイズは各寸法が4ピクセルであ
り、それにその周囲の境界線があるばあい、そのサイズが加わる。もし正確なサ
イズがそのサイズヒントに記載されていれば、それは最小値を上回る。エレメン
トを構築するためには、その名前、識別子、及び特性とイベントのリストが必要
である。この情報は典型的にはプログラマー・開発者により省略時の情報(defa
ult views)として提供されるか、データベースにより提供される。特性及びイ
ベントの詳細は後述する。
【0017】 活性エレメントの形態はそれ自身の活性部分を規定する。従来のグラフィック
ユーザーインターフェイスと違って、ユーザーは本発明のどの活性エレメントの
形態も変更できる。本発明はユーザーが選択できるように様々な形態を提供して
いる。それらは箱型、楕円形、雲形、三角形、オーダーメードの形態を含んでい
る。
【0018】 図2は各活性エレメントが持ちうる種々の形態を示している。箱型10はJava矩
形2Dオブジェクトを使用して作られる単純な矩形である。楕円形20はJava楕円
形2Dオブジェクトを使用して作られる楕円または円である。雲形30は形態を変
えずにサイズ変更できるオーダーメードの構造である。全く同じ雲形は存在しな
い。雲形は、まずはじめに、幅200ピクセル、高さ100ピクセルでちょうど卵形の
Java楕円2Dオブジェクトを使用して作られる。このオブジェクトを記載してい
るJava Pathlteratorは各々がそれぞれの象限に対応する4個の立体スプライン(
cubic spline)に対する複数の等式からなっている。各スプラインはその制御点
を規定する3対の係数からなる。30乃至50ピクセルから任意の値が選択される。
他の、幅2Dピクセル、高さDピクセルのサイズのJava楕円形2Dオブジェクトは
その中心が12制御点の各点に位置するように配される。この配置は“程よく”見
える雲を保証するように思われる。雲形はそのようにして作られた13個の楕円の
集合体である。この雲形は望ましいサイズのエレメント内におさまるようにサイ
ズ変更される。
【0019】 三角形状40は、前後左右をむくポイント(point)をもったカスタムコントラ
クト(a custom contract)である。この形は、ボタンの制御に非常に有効であ
るが、その利用は、ボタンの制御に限られたものではない。望ましい実施例では
、ジャバ(Java)多角形オブジェクトから、次のような前もって計算された座標
(coordinates)によって構成される。
【0020】 Up x = {0,50,100} y = {100,0,100} Down x = {0,50,100} y = {0,100,0} Left x = {100,0,100} y={0,50,100} Right x = {0,100,0} y={0,50,100} その結果は、活動要素の望ましい大きさに合うようにリサイズされる。
【0021】 カスタムシェイプ(a custom shape)(図1の上下を指すスクロールボタンを参
照)は、プレーンボックス(a plain box)として出発(start out)する。ボッ
クスの各面は、左平面になることができ、または、ユーザーによってスラント(
slant)、ポイント、べベル(bevel)、半円形や湾曲平面(rounded plain)の形
に変えられる。ふたつの方向は、各面と結合される。例えば、右サイドが左下方
と右上方へ、あるいは右下方と左上方へとスラントされ得る。それは右(“アウ
ト”)や左(“イン”)の方向を指すことが出来る。このような式において、望
ましい実施例は次のような数値を用いる。
【0022】 SIZE = 100 SIZE_2 =SIZE/2 SIZE_4 =SIZE/4 SIZE3_4 =SIZE -SIZE_4 SIZE5_4 =SIZE +SIZE_4 BEVEL = round (SIZE/(2 + sqrt (2))) 前もって計算された座標軸は、各々のスタイルと、各エッジの方向に使用される
【0023】 ジャバ領域のオブジェクトは、上記のように形成される。x とyの数値が所与
である場所で、ジャバポリゴンは、この領域を形成するために使われる。外を指
す側に対しては、基本となる長方形サイズ×サイズが領域に加えられる。内を指
す側に対しては、当領域が基本となる長方形サイズ×サイズから引かれる。完成
品は、要素の望ましい形におさまるようにリサイズされる。
【0024】 組み合わせ可能な数は非常に大きい。好ましい実施例では、もっとも魅力のあ
るものが、ひとつのみあるいはふたつの対する側(opposing sites)を修正する
。例えば、ひとつの側がとがり、あるいは丸くなっているボタンは、スクロール
バーの上と下のような方向を指し示すのに使われる。右端の「アウト」と左端の
「イン」がとがっているテキスト領域(text field)は矢印に非常によく似てい
る。
【0025】 図形はしばしばリサイズの変更を必要とする。これは、エレメント自体がリサ
イズされるとともに境界がエレメントに不可されるかエレメントから取り除かれ
るときに発生する。元の図形とそのサイズは図形オブジェクトに参考のために保
存されている。新しい図形は、大なり小なり適当な元のサイズによって分割され
た新しいサイズに基づく変形によって元の図形を位取りすることによって得られ
る。位取りは水平方向および垂直方向に変えることが可能でさる。リサイズが境
界の付加または除去に起因するならば、図形もまた新しい境界中に存在するよう
に変換される。
【0026】 テキストレイアウトの方法は図形中に存在する所定の高さの水平方向の長方形
を必要とする。好ましい方法により、本発明は、所定の高さおよび1ピクセル幅
の長方形を示す図形バウンディングボックスの幅をループする。もしそのような
長方形が図形内に充分に存在するとともに元の長方形が図形内に存在しなかった
ならば、この方法は新しい出力長方形を追跡し始める。元の長方形が図形内に存
在しているならば、本発明の方法は他のピクセルを超えて出力長方形の右側の縁
を移動させる。もし現在の長方形が図形内に存在せず元の長方形が図形内に存在
しているならば、方法は出力長方形を終えて保存する。図形の右側の縁がひろが
るとき、出力長方形が進行するならば、本発明の方法はそれを保存する。図形用
の長方形のリストはもとに戻される。
【0027】 どのアクティブエレメントも、ユーザーがアクティブエレメント環境設定パネ
ルを通して変更してもよいアクティブエレメント環境設定を有する。アクティブ
エレメント環境設定パネルの好ましい実施例を図3に示す。アクティブエレメン
ト環境設定パネル60は、本発明の方法を利用してそれぞれプログラムされた子
アクティブエレメント70、90、110、130、及び150を有する親アク
ティブエレメント61であることを、当業者ならば理解できよう。 アクティブ
エレメント用の環境設定パネル60は、ユーザーに特殊なアクティブエレメント
を構成させる多様なオプションを含んでいる。ユーザーは、図形70、配色90
、境界110、事象130かまたは画像150を選択することによって以下のう
ちのどれかひとつを変更してもしなくてもよい。
【0028】 図4に示すように、図形エディタと呼ばれる(本発明の教示にもとづいてもま
た構成される)簡素図形選択ツール71はアクティブエレメント環境設定パネル
60の一部として設けられる。選択されるアクティブエレメントのために、ユー
ザーはボックス(図示せず)、すなはち、オーヴァル73、クラウド74、トラ
イアングル75またはカスタム図形76を選択することが可能である。もしトラ
イアングル75を選択すると、ユーザーはレフト77、ライト78、アップ79
かまたはダウン80を指示するよう選択することが可能である。もしカスタム7
6を選択すると、それぞれの縁に対してユーザーはプレイン81、スラント82
、ポイント83、ベヴェル84、円(図示せず)または丸い形状(図示せず)、
さらに縁がイン87とアウト88のどちらに示されるかを選択することが可能で
ある。図形エディタを構成するため、ボックス、オーヴァル等の有用なスタイル
のリストを設けなければならない。トライアングルに対しては、アップ、ダウン
等の方向のリストを設けなければならない。カスタム図形に対しては、ポイント
、スラント等の縁のスタイルと、インとアウトのような方向のリストを設けなけ
ればならない。これらのリストは、デフォルトビューを通して、またはグラフィ
ックユーザーインターフェイスが相互作用するデータベースにもとづいてプログ
ラマーによって設けられてもよい。好ましい実施例の詳細な説明の他の部分に対
しては、情報が「提供される」とは、他に記載がない限り、その情報はプログラ
マーまたはディベロッパー、または上記したようなデータベースに基づいて提供
されることを意味する。
【0029】 本発明のそれぞれのエレメントのアクティブな部分はゼロかより多くの多様な
スタイルの境界を有してもよい。複数の境界があると、それらはアクティブエレ
メントのサイズによって定義されるボックス中にぴったりと適合する。アクティ
ブな図形は境界内にぴったりと適合する。ユーザーはどのエレメントのスタイル
、配色、境界の数も変更することが可能なのである。更に、境界は、長方形に限
らず、どの図形も囲むことが可能である。
【0030】 境界色は境界の出現に重大な効果をもちうる。「ヌル」の色を残すことによっ
て、ソフトウェアはアクティブな図形の背景色に基づく適当な境界色を計算する
ことが可能となる。そのような境界はしばしば最も魅力的な選択である。いくつ
かの状況においては色を明確に特定することが望ましい。その場合、境界色は特
定された色に基づいて計算される。
【0031】 プレーンな境界とは単一の色を持つ一定のピクセル幅の簡素な領域である。テ
キストの周囲に、または他のスタイルの境界の間でその境界を「広くする」ため
に、いくらかのマージンを提供するためにテキストフィールドのまわりの最も内
側の境界として利用することが可能である。プレーンな境界は幅と色を有してい
る。好ましい実施例においては、幅と色のデフォルト値は、幅用のデフォルトの
1ピクセルとして、また色用のヌルとして提供される。プレーンな境界は、満た
すべき領域を前もって計算し、かつ保存する。元の図形を取り出して、その中に
全体的にプレーンな境界の幅だけ小さな第2の似た図形をセンタリングすること
によってその領域を計算する。より小さな図形をよりおおきなものから減算する
。環はプレーンな境界の領域になる。より小さな図形は復帰してエレメントのア
クティブな図形になる。この技術は、アクティブなエレメントに利用されるすべ
ての図形に作用して、どのタイプの図形が境界を受け入れているかを知る必要が
ない。
【0032】 エッチングされた境界は上下させることが可能である。下側のエッチングされ
た境界はしばしば押しボタンの外縁として利用される。上側のエッチングされた
境界は、ディスプレイの関連項目のグループを共通に区切る。エッチングされた
境界は色(デフォルトヌル)を有する。この色(もしヌルならば、アクティブな
図形の背景色)は、ジャバカラーオブジェクトのより明るい()手段とより暗い
()手段を用いるより明るくより暗い バリアントを計算する基準として利用さ
れる。すべてのエッチングされた境界は2ピクセルの幅を有する。エッチングさ
れた境界は、輪郭を決定すべきふたつの領域を前もって計算して保存する。左上
の領域は元の領域を取り出してその幅と高さを1ピクセルだけ減らすことによっ
て計算される。左上のコーナーは固定されたままである。右下の領域は同様のサ
イズを有するが、その左上のコーナーは両方の次元で1ピクセルだけオフセット
される。アクティブな図形は両方の次元において元の図形よりも4ピクセルだけ
小さく、その左上のコーナーは両方の次元において2ピクセルだけオフセットさ
れる。この技術は、アクティブなエレメントに利用されるすべての図形に作用し
て、どのタイプの図形が境界を受け入れているかを知る必要がない。エッチング
された境界は図形の周囲に完全に適合せず、ディスプレイの目的のために充分に
閉じられていることに注目されたい。
【0033】 エッチングされた隆起境界と下降境界との唯一の違いは、その表現方法にある
。下降境界は以下のような色で輪郭を描かれた領域を有する: 右下領域 強調色 左上領域 陰影色 隆起境界は、以下のように逆の色を有する: 右下領域 陰影色 左上領域 強調色 傾斜境界は隆起もしくは下降させることができる。下降傾斜境界は、多くの場
合テキストフィールドの輪郭として使用される。隆起傾斜境界はディスプレイ内
の関連する項目群の範囲を定めたり、またボタンの輪郭をとって3−D効果を生
じたりすることができる。傾斜境界はカラーを有する(デフォルトは零)。その
カラーは(または、零の場合には、アクティブシェープ背景色は)、Java Colo
rオブジェクトの明るい()、および暗い()方式を使った2つの明るい、およ
び2つの暗いバリアントを算出する基礎として使用される。すべての傾斜境界は
2画素分の幅を有する。
【0034】 傾斜境界は埋める必要のある4つの領域を有する。当該関連する領域は実際に
はエッチングされた境界の領域と同一であるが、おのおのはその後左下および右
上角で半分に分割される。まず、左上領域が、その元の形をとりまた幅と高さを
1画素ずつ減らすことによって計算される。左上角は固定されたままである。四
方を1画素分小さくした同様の領域が引き算され、幅1画素の環形が残される。
右下領域も右上領域と同様の方法で計算されるが、右下角は固定されたままであ
る。一旦これらの環状形状が得られると、それらは左下および右上角で分割され
、埋めるべき4つの領域がつくられる。そのアクティブ形状は両寸法において元
の形状よりも4画素小さく、その左上角は両寸法において2画素分ずれている。
この手法はアクティブ要素に使われるすべての形状に使用でき、また境界を受け
ようとしているのがどのタイプの形状かを知る必要がない。傾斜境界は形状の周
りに完全には合わないが、表示目的を達成するには十分に形状の周りに接近した
ものであるということに注意されたい。
【0035】 傾斜隆起境界と傾斜下降境界の唯一の違いは、その表現方法にある。下降境界
は以下のような色で占められる領域を有する: 外側上部領域 明るい陰影色 外側下部領域 暗い強調色 内側上部領域 暗い陰影色 内側下部領域 明るい強調色 隆起境界は、以下のように逆の色を有する: 外側上部領域 明るい強調色 外側下部領域 暗い陰影色 内側上部領域 暗い強調色 内側下部領域 明るい陰影色 図5に示すように、簡単な境界選択ツール111が、アクティブ要素構成パネル
の一部として設けられている。アクティブ要素は最初は境界を有していない。当
該ツールはスタイル“なし”の境界“#1”を示している。ユーザーは、エッチ
ング、傾斜、そして無装飾の境界スタイルから選択することができる。エッチン
グおよび傾斜スタイルの場合は、ユーザーは隆起もしくは下降境界を選択できる
。無装飾スタイルの場合は、ユーザーはその境界の幅を選択できる。もし境界#
1 112が当該要素に加えられた場合には、境界#2 113がスタイル“なし
”で表示される。各新しい境界が追加されると、スロットもしくはスペースがさ
らに別の境界に与えられる。ひとつのアクティブ要素にいくつの境界が与えられ
るかについての制限はない。
【0036】 人目を引く多くの境界は、その効果を単純な境界の連続により得ることができ
る。一般的なものとしては、エッチングされた下降境界を伴ったエッチングされ
た隆起境界(フレームを拡大するために、当該境界間に無装飾の境界を伴うこと
もある)、または傾斜下降境界を伴った傾斜隆起境界である。その他多くのさら
に複雑な組み合わせが可能である。境界エディターを構成するためには、無装飾
、エッチング隆起など使用できるスタイルのリストを備えなくてはならない。
【0037】 アクティブ形状においては色を使用することもできる。使用できる色は不透明
、または部分的に透明であってもよい。ユーザーはあらゆる要素のアクティブ形
状内で使用されている色を変えることができる。
【0038】 好ましい実施例において色はJava Colorオブジェクトを使用し、24ビット
の色情報に加えて8ビットの透明度を利用できる。“形状”を持つアクティブ要
素の効果は、境界および(または)アクティブ形状背景を表現することによって
達成されるということに注目されたい。アクティブ形状において使用される色は
、不透明またはいくらか透明であることができる(完全に透明な色は“零”とし
て記憶され、色を持たない)。
【0039】 それ自身指定された色を持たない境界は、アクティブ形状背景色から色を得る
。この方法は人目を引く調和の取れた外観を生み出すので、ほとんどの境界がこ
の方法を使用している。
【0040】 図5A、5B、5C、5D、5E、5Fに示すように、色選択/編集ツールは
、アクティブ素子構成パネルの一部として設けられている。このツールは、素子
の背景色、テキスト前景及び背景色、境界の色、作図ツール中の色など、色が必
要とされるたびに、本発明の全体にわたって使用される。色選択/編集ツールは
、互いに重なり合った、5つの異なるパネルからなる。図5Aを参照すると、5
種類の異なるパネルのほかに、注目するパネルを選択するスクローラ92及び透
明度を設定するスライダ150が設けられている。色選択/編集ツールは、25
5種の透明度のいずれにおいて、約1600万(256種の赤×256種の緑×
256種の青)のどの色も表示選択することができ、その組み合わせは全部で約
40億になる。
【0041】 図5Aにおいて、色ブックツールは、さまざまな色を表示するパネル100と
、4つのラジオボタン(赤101、緑102、青103、灰色104)と、ペー
ジスライダ105とからなる。最初に、「赤」ボタンを選択する。赤色ブックは
、パネルのどこにおいても一定の赤色値を有する。緑及び青の可能な限りのあら
ゆる組み合わせが、パネル上に現れる。青は、上部で完全にオフになり(0)、
下部で完全にオンとなる(255)。緑は、左部で完全にオフになり(0)、右
部で完全にオンとなる(255)。ページスライダによって色ブックのページを
変えると、パネル用の固定した赤の値が変わる。青及び緑は、常に全スペクトル
を含んでいる。利用者は、パネル上をクリックすることにより、色を選択する。
【0042】 色ブックは、三次元の問題を二次元に縮小するための表示技術である。ブック
の各ページは、実際には色立方体から取り出された一切れである。色立方体は、
ある面で赤は完全にオンとなり、その反対側の面で赤は完全にオフになる。別の
もう一つの面で緑は完全にオンとなり、その反対側の面で緑は完全にオフになる
。別のもう一つの面で青は完全にオンとなり、残りの一つの面で青は完全にオフ
になる。上述した色ブックページは、完全に赤がオンとなった面に平行に、立方
体から切り取られたものである。同様に、緑色ブックは、完全に緑がオンとなっ
た面に平行な数切れを取り出す。青色ブックは、完全に青がオンとなった面に平
行な数切れを取り出す。
【0043】 灰色ブックは、ちょうど1ページの長さであり、便利なように設けてある。す
べての灰色値は、他のブックにおいても利用できるが、正確な位置を特定するこ
とは難しい。色立方体において、灰色値は、すべての赤、緑、青が完全にオンと
なる角と、それらが完全にオフになる対角線状に反対側の角との間の線に沿って
存在する。色ブック素子を構成するために、現在のブック(赤、緑、青、灰色)
は設けられなくてはならない。
【0044】 色パレットツール110を、図5Bに示す。色パレットツール110は、利用
者のために予め設定された、2,3ダースの色からなる。利用者は、クリックす
ることにより、パレットから色を選択する。色パレット編集プログラムを構成す
るために、表示すべき色のリストは設けられなくてはならない。
【0045】 赤/緑/青ツール120を、図5Cに示す。赤/緑/青ツール120は、赤ス
ライダ121、緑スライダ122、及び青スライダ123からなる。赤スライダ
、緑スライダ、青スライダにより、利用者は色構成要素をそれぞれ別々に調整す
ることができる。赤色値、緑色値、青色値は、完全にオフ(0)から完全にオン
(255)までの範囲内にある;各スライダは、色構成要素の一つを、この範囲
内で調整する。利用者はスライダの上をクリックし、新たな位置にドラッグする
ことにより、色を選択する。
【0046】 色相・彩度・輝度ツール130を、図5Dに示す。色相・彩度・輝度ツール1
30は、色相スライダ131、彩度スライダ132、及び輝度スライダ133か
らなる。色相スライダ、彩度スライダ、輝度スライダにより、利用者は色構成要
素をそれぞれ別々に調整することができる。色相値、彩度値、輝度値は完全にオ
フ(0)から完全にオン(1)までの範囲内にある。各スライダは、色構成要素
の一つを、この範囲内で調整する。利用者はスライダの上をクリックし、新たな
位置にドラッグすることにより、色を選択する。色相又は彩度が反応するために
は、輝度は、少なくともある程度はオンの(完全に左側にない)状態でなければ
ならないことに留意しなければならない。色相が反応するためには、彩度は、少
なくともある程度はオンの(完全に左側にない)状態でなければならないことに
留意しなければならない。生成された値は、Java色オブジェクトのRGBt
oHSB()及びHSBtoRGB()方式によって、赤色値、緑色値、青色値
から、また赤色値、緑色値、青色値へ変換される。
【0047】 赤・緑・青テキスト領域ツール140を、図5Eに示す。赤・緑・青テキスト
領域ツール140は、赤テキスト領域141、緑テキスト領域142、及び青テ
キスト領域143からなる。赤・緑・青テキスト領域により、利用者は色構成要
素をそれぞれ別々に調整することができる。0から255までの整数が入力され
うる。利用者は、0から1までの小数値を選択することもできる。どの値も1を
超えると、ツールはすべての3つの値を、端数を切り捨てた0から255までの
整数として扱う。利用者がタイプしている最中の、不必要で紛らわしい色の変更
を避けるために、“適用する”が選択されるまで、色は変わらない。
【0048】 透明度スライダ150はすべてのパネル上に、図5Fに表示されるように現れ
る。この機能によってユーザーは上記五つの方法のいずれかによって選択された
色を部分的に透明にするように、修正する。ここで、透明度は、完全オン(0)
から完全オフ(255)までの範囲をもつ。ユーザーは透明度を、スライダー1
52をクリックそしてドラッグして新らしいポジションに移すことで選択する。
完全透明色には色相がなく、無調整(NULL)価値として保存される。透明度
スライダー152を完全オフ位置まで移動させると、すべての色成分は完全オフ
(0)となる。スライダー152を再度もとの位置に戻すと、元の色が何であっ
たかには関わらず、黒となる(赤、緑、青、完全オフ)。
【0049】 画像はアクティブシェイプ内に表示される。ユーザーは、いずれのエレメント
であれアクティブシェイプ内に表示された画像は変更できる。アクティブシェイ
プより小さな画像は、タイリングによりアクティブシェイプいっぱいまで塗り広
げられる。アクティブシェイプより大きな画像はトリミングされ左上コーナーか
らフィットするよう表示される。
【0050】 ある画像がアクティブシェイプの背景として用いられる場合、どのような色が
その地域に指定されようとも、表現されることはない。しかし、色の特定がされ
ていないエレメントの境界ではアクティブシェイプの背景色からその色が導き出
される。ある画像が用いられる場合、境界部分を滑らかに配色させる為にアクテ
ィブシェイプと補色になる背景色を選ぶのが適当である。画像それ自身は境界で
の色に何ら影響を及ぼさない。
【0051】 図6はシンプル画像選択ツール160を示している。画像選択ツール160は
アクティブエレメント設定パネルの一部として設けられている。このツールは使
用可能なすべての画像の小さなサンプルと”該当無し(None)”のリスト1
61を表示する。画像はそれをクリックすることで選択される。”該当無し(N
one)”が選択されると、エレメントは代わりに背景色を用いる。画像編集を
構築するには、使用可能な画像のリストが与えられなければならない。JPEG
やGIFフォーマットの画像も現在サポートされている。
【0052】 本願のもう一つの重要な要素はサイズヒントを使うことである。サイズヒント
は、ディスプレイをレイアウトするのを助けるために、親エレメントにより使わ
れる。“行或は列エンド”のヒントは、真であるなら、レイアウト作業を、たと
えさらにスペースがあったとしても、現在の行(水平方向レイアウトの場合)或
は現在の列(垂直方向のレイアウトの場合)を現在のエレメント後に終わらせる
ように、合図を発する。“ピクセルの正確な幅又は高さ”のヒントは、ピクセル
の正確な幅又は高さが与えられると、そのエレメントをある特定のサイズにした
いという要望を発する。例えば、このヒントは画像をある特定のサイズにしたい
時に用いられる。”全幅或は高さ”のヒントは、真であるなら、レイアウト作業
を現在のエレメントが現在のすべての行(全幅)或は現在のすべての列(全高さ
)を占めるように、合図を発する。” 行或は列の最大数”のヒントは、行或は
列の最大数が与えられると、レイアウト作業に、その他予想していたよりも若干
のスペースが必要である旨報告する。ボタングループがスクローラーを持つなら
ば、最大行が、表示される事項を制限する場合がある。スクロールされたラベル
が数桁表示する能力を持っている場合、最大列は、それらすべてを見るのに十分
なスペースがあるということを保証できる。”残りのすべての幅或は高さを使う
”というヒントは、真であるなら、レイアウト作業に、一行のうちの残りのすべ
ての幅(水平レイアウト用)或は一列のうちの残りのすべての高さ(垂直レイア
ウト用)を現在のエレメントに与えるように、合図を発する。しかし、行や列が
このエレメントで終わるわけではない。ここでは、このエレメントがいかなる余
剰ピクセルも受け付ける事をと要求するだけである。”垂直レイアウト”のヒン
トは、真であるなら、レイアウト作業に垂直アルゴリズムを使うよう指示する。
その他の場合は、水平アルゴリズムを選択する。このヒントは親エレメントに応
用されたときのみ有意義である。その他のエレメントは素(atomic)であ
る。
【0053】 エレメントの能動部はマウスのような指示デバイスで開始されたさまざまなイ
ベントに対応できる。エレメントは移動又はサイズ変更可能であり、その配置制
御が着手可能である。これらタスクを開始させるために使われるマウスイベント
はユーザーによって変更可能である。すべてのエレメントは現状で、移動、サイ
ズ変更、配置のイベントに同じものを使っている。アクティブエレメントはそれ
らのイベントを簡単に検索できるようにキーと値のペアのハッシュテーブルに保
存する。このことによって、基本的なアクティブエレメントの挙動を受け継ぐさ
らに複雑なエレメントが、更なるデータ事項の追加をしないでも、それら独自の
イベントを保存できるようになる。
【0054】 イベントはシェイプ内のエレメントのアクティブ部分によってのみ開始される
。エレメントが卵型の場合は、その外側をクリックしてもイベントはスタートし
ない。このことはマウスイベントをテストすることで、それらを処理する前にシ
ェイプの内部で起こることを確認することで、成し遂げられる。
【0055】 どんなエレメントも、親の見かけ境界の外でさえ、その親に相対的に動かす事
ができる。エレメントを動かす為のデフォルト制御は、左マウスボタンが押され
た状態でのエレメントドラッギングとコントロールキー(Ctrl)のホールディン
グである。
【0056】 どんなエレメントも、新しいサイズが親の見かけ境界の外まで及んだとしても
、リサイズされ得る。エレメントをリサイズする為のデフォルト制御は、左マウ
スボタンが押された状態でのエレメントドラッギングとシフトキー(Shift)の
ホールディングである。
【0057】 どんなエレメントも、ユーザーによって構成され得る。アクティブエレメント
構成パネルを開始する為のデフォルト制御は、右マウスボタンのクリッキングで
ある。
【0058】 どんなエレメントもアクティビティを開始できる。この動作は、“ボタン”や
他の特別なエレメントに限られた事ではない。エレメントによって開始され得る
動作は、全て、ターム“アクティベーション”で一まとめにされる。二種類の起
動が可能である。シンプル起動は単一の事象である。シンプル動作を起動させる
為のデフォルト制御は、左マウスボタンクリッキングである。複雑起動は、一連
の事象である。例としては、ドローイングツールにおけるフリースタイルドロー
イングをする事である。一連のデフォルト制御は以下のものである。 (1)左マウスボタンを押し、起動を開始する。 (2)左ボタンを押しながらマウスをドラッギングし、起動を続ける。 (3)左マウスボタンを押すのを止め、起動を終了する。 シンプル事象編集ツール170が図7に示されている。その事象編集ツール17
0は、アクティブエレメント構成パネルの一部として提供される。そして、それ
は、このエレメントに使用できる事象を示しているリスト171を表示する。事
象エディターを構築する為に、編集可能な事象、マウス事象、変更子のリストを
提示しなければならない。
【0059】 それぞれのアクティブエレメントは関連属性リストを持っている。よりこのま
しい実施例では、これらの属性は、形属性、境界属性、色属性、画像属性、サイ
ズヒント属性、事象属性である。アクティブエレメントは、ハッシュテーブル内
に、これらの属性を、簡単検索の為のキー、バリューペアとして、格納される。
この事は、基本アクティブエレメント動作を引き継ぐ、より複雑なエレメントが
、必然的にさらなるデータを加える事なく、それら自身の属性を格納する事を可
能にする。それぞれの属性は、一つ以上のビット情報を包みこんでいる。
【0060】 形属性は、前記したように、一つの形を格納している。エレメントは、丁度一
つの形属性を所有している。エレメントを構築する為には、その形のタイプを提
示しなければならない(ボックス、卵形等)。もし、その形が三角形なら、その
方向を提示しなければならない(上へ、下へ等)。その形が注文のものなら、そ
れぞれの縁に対するスタイル(斜線、点等)と方向(中へ、外へ)を提示しなけ
ればならない。
【0061】 境界属性は、上述したようにシンプル境界リストを格納している。エレメント
は、多くて一つの境界属性を持っている。もし、境界が設定されていないと、境
界属性は除かれる。境界リストは最初一番外に格納される。境界を持ったエレメ
ントを構築する為には、その境界タイプのリスト(平坦な、エッチされた、浮き
出た等)をそれぞれに対する色(または空白)とともに提示しなければならない
。どんな平坦な境界に対しても、画素における幅を提示しなければならない。し
かし、エレメントはどんな境界も持つ必要はない。事実、リストは空白である。
【0062】 やはり上述した通り、色属性は、単一ジャバカラーオブジェクトを格納してい
る。エレメントは、アクティブシェイプ背景にする、多くて一つの色属性を持っ
ている。もし、色がなかったなら(十分に透明)、属性は除かれる。背景色をと
もなったエレメントを構築するために、その背景色は、赤、緑、透明値(0−2
55)として提示しなければならない。エレメントは背景色を持つ必要はない。
それは空白も有り得る。
【0063】 画像属性は、画像を記述するネームにプラスして、単一ジャバテクスチャペイ
ントオブジェクトを格納している。画像は、それらのネームを比較する事によっ
て、質に対して比較される。エレメントは、そのアクティブシェイプは背景に対
してせいぜい一つの画像属性を持っている。もし、それが、画像を表示しないな
ら、属性は除かれる。背景画像をともなったエレメントを構築する為には、その
背景画像は、JPEG 又はGIFフォーマットで、ファイル(又はバイトアレイ)とし
て提示しなければならない。エレメントは、背景画像を持つ必要はない。どちら
か、又は両方とも空白も有り得る。
【0064】 また、画像属性は、グラフィックファイルから得られた画像を、ジャバテクス
チャペイントオブジェクトに変換する為の方法を提供する。画像ファイルは、ジ
ャバイメージアイコンオブジェクトによってロードされる。GLF画像ファイルとJ
PEG画像ファイルは、あまねく支持される。イメージアイコンは、画像の幅、高
さを正確に適合するように作られるジャババッファレッドイメージオブジェクト
に描かれる。最終的に、テクスチャペイントオブジェクトは、バッファレッドイ
メージから作られる。テクスチャペイントオブジェクトは、それが満たすように
要求されたどんな領域にも適合するために、自動的にそれ自身をタイルする能力
を持っている。それは、理論的に、画像をエレメントの背景に描く為に適してい
る。
【0065】 サイズヒント属性は、サイズヒントの一つ以上を格納している。エレメントは
、上述されたヒントのどれかを含み得るサイズヒント属性を多くて一つは持って
いる。もし、全てのヒントが誤っていたり、ゼロなら、属性は取り除かれる。サ
イズヒントを伴ったエレメントを構築する為には、望まれる上記サイズヒントの
元で記述される値(真ブールや正の整数値)の全てが、提供されなければならな
い。エレメントは、サイズヒントを持つ必要がない。適切な事であるが、それら
の全ては、誤り又はゼロで有り得る。
【0066】 現象属性は、単一の属性を格納している。エレメントは、少なくともムーブ(
ムーブスタート、ムーブ、ムーブエンド)、グロウ(グロウスタート、グロウ、
グロウエンド)とコンフィギュアを含む事象のハッシュテーブルを持っている。
多くのエレメントも、シンプルな(アクティベート)あるいは複雑な(アクティ
ベートスタート、アクティベート、アクティベートエンド)アクティベーション
事象を持っている。テキストを含み得るどんなエレメントもフォーカス、パフォ
ームセレクション(セレクトスタート、セレクト、セレクトエンド)を得る為に
事象を定義している。事象属性は、ロジックによって必要などんな物も、すなわ
ち、それが伴うソフトウェアを格納している。
【0067】 イベントを持つエレメントを構成するには、少なくとも次の値、即ち名前、キ
ー、識別子およびアクションを各イベントに提供する必要がある。エレメントは
イベント修飾子と関連オブジェクトを持つこともできる。好ましい実施形態では
、本発明の各エレメントはイベントを持つ。移動、発展および構成イベントは自
動的に適用されるが、これはコードによる必要はない。
【0068】 イベントプロパティは名前を格納する、この名前は、ユーザがイベントコント
ロールの変更を選択する場合に、ユーザに対し表示される。イベントプロパティ
はキーを持ち、このキーは、本発明がエレメントのハッシュテーブル内のイベン
トを検索するために使用する。イベントプロパティはイベント識別子を持ち、こ
の識別子は7つのマウスアクションのどれがが発生したかを表す。イベントプロ
パティを使用して、マウスがクリック、押しまたは解放された時、およびマウス
がドラッグ(ボタンを押した状態で移動)される時を検知できる。イベントプロ
パティはイベント識別子を持ち、この識別子はイベントに付随する必要があるす
べてのコントロールキーを表す。コントロールキーは、shift、contr
ol、altを含む。システムによってはmetaおよび/またはaltgra
phを備えている。
【0069】 イベントプロパティは、イベントを持つアクティブエレメントを格納する。そ
の理由はこの情報は、イベントが起動するロジックにより必要とされることが多
いからである。例えば、ボタンをクリックすると、その色が僅かに変化して、ユ
ーザにフィードバックされる。コードはボタンの識別を必要とし、それによって
コードが発生できる。イベントプロパティは、イベントが発生する場合に実行す
るアクション(ロジック)の名前を格納する。このようなロジックに対する入力
は通常イベントプロパティである。ロジックは、イベントプロパティに格納され
たアイテムからロジックが必要とする、またはデータベース(システム全体の値
)から直接利用できる他のすべての情報を得る必要がある。
【0070】 イベントプロパティは関連オブジェクトも格納する。すべてのイベントがこの
アイテムを使用するとは限らない。例えば、ボタンをクリックしてウインドウを
閉じるとき、ロジックは、ボタン自体(前記のように、その色が変化)と、閉じ
られるウインドウの識別の両方へのアクセスを持つ必要がある。ウインドウ識別
は関連オブジェクトとして格納される。
【0071】 イベントプロパティはイベントをトリガするJava MouseEvent
を格納する。場合によっては、エレメントの移動、フリーな描画またはテキスト
選択のような、マウスが最後に置かれた正確な座標が、イベントに対応するコー
ドにより使用される。これらはMouseEventから得られる。
【0072】 テキストを表示できるアクティブエレメントは、単純アクティブエレメントを
分離される。これらはラベルアクティブエレメントを呼ばれる。これらは単純ア
クティブエレメントの全プロパティに加えて、数個の新しいアクティブエレメン
トを保有する。分離の理由はテキスト処理に費用がかかることと、分離が可能な
限りのプロセスの簡素化に有効であるからである。他のエレメントからのテキス
トを表示できるエレメントを分離する速度以外の理由は存在しない。テキストは
プロパティにより管理され、そのプロパティは、前述の他のすべてのプロパティ
と同一ハッシュテーブル内に格納される。単純およびテキスト可能エレメントの
相違は、本発明を詳細に説明することだけに使用するか、または必要に応じて削
除できる。
【0073】 ラベルエレメントの最小サイズを計算する必要がある。1ラインのプロンプト
テキストが得られる。これは、あるとすれば、第1の「ハード」ラインブレーク
までの全体テキストのサイズである。複数ラインがそのサイズヒント内に指定さ
れている場合は、マルチラインサイズと見なされる。エレメント境界の幅がまわ
り一面に追加されている。現在250ピクセルに設定されている「ハード」上限
、を使用して、このサイズを制約する。エレメントサイズヒント内に指定された
任意の正確なサイズはこの最小値に優先する。ラベルエレメントは、ユーザに表
示されるテキストを含む「プロンプト」を持つことができる。テキストは通常状
態では編集できないが、ユーザがエレメント構成パネルを起動する場合は、編集
可能になる。プロンプトしているテキストは、任意のスタイルまたはスタイルの
組合せにでき、長くもまた短くもできる。ラベルエレメントは位置調整でき、先
頭、末尾または中央にできる。ラベルエレメントは、エレメントが応答する幾つ
かの追加イベントを持つ。マウスイベントのセットは拡張されており、キースト
ロークイベントが追加されている。
【0074】 プロンプトは、エレメント構成パネルが表示されるときだけ、編集可能である
【0075】 ラベルエレメントは、Javaリスナーにキーストロークを待機することを要
求する。キーストロークは、ラベルが現在編集可能であるときにだけ、それを処
理する。しかし、リスナーは常に使用状態に留まる。イベントが取り込まれるの
は、キーが「タイプされる」または「解放される」時である。キーを「押す」イ
ベントは無視される。タイプまたはプリント可能なときは、キーはタイプされ、
コンピュータは1つまたは複数のキー押しイベント、キータイプイベントまたは
キー解放イベントを発生する。Shift−A(大文字の「a」)のようなキー
組合せがタイプされると、コンピュータは、各キーに対し1つまたは複数のキー
押しされるイベントと、各キーに対しキータイプイベントおよびキー解放イベン
トとを発生する。タイプされる実際の文字は、Java KeyEventオブ
ジェクトのgetKeyChar()メソッドを使用して、キータイプされるイ
ベントから取り込まれる。この文字は一時ホールディングバッファに格納される
【0076】 キー解放イベントを受取るとき、キー解放イベントがタイピングバッフファ内
で待機している場合は、そのイベントはバッファ内のそれより先のすべてのキー
と共に処理される。速いタイピングでは、混乱している一連のキー開放イベント
を受取ることが可能になる。このテクニックによりキーストロークが失われず、
入力された順に出力される。そうでない場合は、キー解放イベントはキーストロ
ーク駆動選択プロセスの一部として処理される。
【0077】 必要な場合は、キーボードのキーを使用してテキストを選択できる。矢印キー
、homeおよびendキー、page upおよびpage downキーを
使用してテキストまわりをナビゲーションする。テキストカーソルを移動するに
は、現在のカーソル位置からスタートして以下のようにする。
【0078】 左矢印で1文字後退する、 右矢印で1文字進めるする、 上矢印で1ライン戻る、 下矢印で1ライン進む、 page upで1ページ戻る、 page downで1ページ進む、 homeでページの先頭に移動する、 endでページの末尾に移動する、 control−homeでテキストの先頭に移動する、 control−endでテキストの末尾に移動する。 キーは、ドキュメントの末尾または先頭より先には移動しない。これらの移動キ
ーを使用してテキストをマークするには、ユーザはshiftキーを押したまま
の状態で、移動キーを使用してナビゲーションする。選択は淡色で強調表示(デ
フォルトによる、淡いマゼンタ)される。Shiftキーを解放すると、選択は
「完了」する。arrow キーのすべての他の操作は、現在の選択を解除し、
カーソルを正しく再配置する。
【0079】 マウスのようなポインティングデバイスを使用して、テキストを選択すること
のできる。多くのユーザにとっては、これは通常の方法である。ラベルエレメン
トは、選択スタート、選択および選択エンドと呼ばれる複雑な起動イベントを持
つ(デフォルトでは、左マウス押し、左マウスドラッグおよび左マウス解放によ
り駆動される)。テキストは淡色で強調表示される。マウスを解放すると、選択
は「完了」する。
【0080】 ラベルエレメントは2つの新しいプロパティタイプに加えて、テキストのスタ
イルを形成し、レイアウト情報を格納するのに使用される幾つかの支援クラスを
使用する。ラベルエレメントはわずか1つの位置調整プロパティを持つだけであ
り、この位置調整プロパティはテキストが先頭、末尾または中央に位置調整され
るかどうかを格納している。中央位置調整はデフォルトである。この値が選択さ
れると、プロパティは解除される。「先頭」と「末尾」はテキストの好ましい実
施形態方向に影響される。右から左の表現は、「先頭」が右端に位置合わせされ
、「末尾」は左端に位置合わせされる。位置合わせによってエレメントを構成す
るには、使用する端(中央、先頭、末端)を備える必要がある。好ましい実施形
態では、エレメントは位置合わせを必要としない。デフォルトにより中央を使用
する。
【0081】 簡単な位置合わせエディタがアクティブエレメント構成パネルの一部として提
供されている。これにより、ユーザは、ラベルエレメントに対し先頭、末尾およ
び中央位置合わせを選択できる。位置合わせエディタを構成するには、利用でき
る位置合わせにリスト(中央、先頭、末尾)を提供する必要がある。
【0082】 ラベルエレメントは1つだけのテキストプロパティを持ち、そのプロパティは
、デフォルトにより、プロンプトとして使用される空のテキストストリングに含
まれている。プロンプトを用いてエレメントを構成するには、表示するテキスト
ストリングを提供する必要がある。多くの場合、各文字のテキストスタイルも与
えられる。テキストスタイルの詳細は後で説明する。エレメントはプロンプトを
持つ必要がない。空のストリングはデフォルトにより使用される。提供されるテ
キストスタイルが無いか、またはその文字の幾つかだけにテキストスタイルを持
つテキストプロパティは、有効である。システムのデフォルトのテキストスタイ
ルは、テキストスタイル値の無いすべての文字に使用される。
【0083】 ラベルアクティブエレメントとテキストアツティブエレメント内のテキストを
選択すると、そのテキスト操作して、本発明により決定される種々の特性のテキ
ストにできる。提供されたスタイルは、現在のテキスト選択内の各文字に対して
与えられる。テキストストリング内の各「ハード」ラインブレークの位置は「\
n」文字のストリングを通してサーチして識別できる。Nラインの所定のテキス
トをレイアウトするのに必要なボックスサイズは、Nが提供されている場合は、
計算可能である。ボックスサイズは、基本として1ラインレイアウトを使用し、
すべてのテキストが適合するまで、連続して大きいボックスサイズに対し繰返す
。実際のレイアウトはこのように実行される必要がある。1ラインの所定のテキ
ストをレイアウトするのに必要なボックスサイズは計算できる。何かの現象が発
生すると、レイアウトは第1「ハード」ラインブレークの位置で停止する。実際
のレイアウトはこのように実行される必要がある。同一テキストスタイルの順次
実行をスタイル範囲オブジェクト内に組込んで、スタイル範囲を計算できる。デ
フォルトスタイルと異なるスタイルだけが格納される。これは便利なスペース節
約方法である。Java Breakitetatorオブジェクトを使用して
ワードブレークを計算し、テキストストリング内の各ワードブレークの位置を得
ることができる。
【0084】 目に見える文字はカウントできる。この方法はレイアウトリスト内の全文字を
カウントする。この目に見える文字のカウントを使用して、page upまた
は上矢印コマンドをスクロールする範囲を推定できる。スタイル化したテキスト
を形成できる。この方法は、所定のテキストストリングからJava Attr
ibutedStringを生成し、すべての「ハード」ラインブレークを、各
々単一スペースに置き換える。ラインブレークの位置は格納される。オリジナル
テキストは変更されない。次に各文字に適するテキストスタイルが与えれる。各
個別の文字に対して繰返してスタイルを与える代わりに、連続文字のグループに
1つのスタイルを与えて、有効な高速効率が得られる。スタイルリストはスタイ
ル範囲のリストから生成できる。この方法はスタイル範囲のリストを、文字当り
1つの、テキストスタイルのリストに変換する。スタイル範囲の1つによって変
換されない文字位置のすべては、デフォルトスタイルを適用される。文字も消去
できない。この方法はテキストから1文字を消去する。この方法はまた、スタイ
ルリストからのその文字に対するスタイルを削除し、そのテキストプロパティの
変化のアンドゥロガ(undo logger)に連絡し、テキストスクローラ
が使用中の場合は、そのスライダのサイズを調整する。さらに、選択を消去でき
る。消去選択方法は、現在のテキスト選択を使用して、テキストから1つまたは
複数の文字消去する。この方法はまた、スタイルリストからそれらの文字に対す
るスタイルを削除し、そのテキストプロパティ内の変更のアンドゥロガに連絡し
、テキストスクローラが使用中の場合は、そのスライダのサイズを調整する。カ
レット(脱字記号)位置を与えられたカレットレイアウトの検出の実行ができる
。この方法は、所定の文字位置(テキストの先頭から測定される)があるレイア
ウトのリストのカレットレイアウトを検出する。1つの点が与えられる場合は、
カレットを検出できる。この方法は、所定のx、y点があるレイアウトのリスト
のカレットレイアウトを検出する。
【0085】 カレット位置の検出も可能である。この方法は、所定のx、y点がどの文字位
置上にあるのかを検出する。これはプロセス中にFindCaretLayou
tGivenPointを使用して、その点を含むレイアウトを見出し、レイア
ウト番号と文字位置の両方を返す。ソフトウェアも、x座標せ与えられるカレッ
ト位置を検出できる。この方法は、所定のx座標がどの文字位置上ににあるのか
を検出する、この文字位置はx座標があるレイアウトを与えられている。本発明
により、ソフトウェアがレイアウト後のカレットを検出できる。テキストをレイ
アウト後、この方法は、FindCaretLayoutGivenCretP
osを使用して、カレット位置(および選択がある場合は、選択の他方の端)が
どのカレットにあるかを検出する。
【0086】 本発明のテキストは、それらの動作を定義するキーボードからの種々のキーを
使用して、機能させることができる。Backspaceキーについては、現在
選択が存在する場合は、この方法はDeleteSelectionを使用して
それを消去する。カーソルは、使用する選択を開始する位置に置かれる。一方、
カーソルがテキストの先頭に無い場合は、この方法はカースルを1文字上に戻し
、DeleteCharacterを使用して文字を消去する。control
−endキーはテキストをスクロールして、テキストの末尾をスクリーンに表示
する。これは本発明で推定される、そうでない場合はプロセスが繰り返される。
control−homeキーはテキストをスルロールして、テキストの先頭を
スクリーンに表示する。deleteキーは、現在の選択がある場合は、Del
etSelectionを使用して現在の選択を消去する。カーソルは使用する
選択を開始する位置に置かれる。一方、カーソルがテキストの末尾に無い場合は
、この方法は、DeleteCharacterを使用して文字を消去する。
【0087】 カーソルがテキストの最終ライン上に無い場合、下矢印キーは、ほぼ同一水平
位置にある次のラインにカーソルを移動する。テキストの次のラインが現在スク
リーン上に無い場合は、最初にそれをスクリーーン上にスクロールする。エレメ
ント形状が矩形でない場合は、平均ラインの文字数だけテキストを下に移動する
。endキーはカーソルをスクリーン上のテキストの末尾に移動する。home
キーはカーソルをスクリーン上のテキストの先頭に移動する。カーソルがテキス
トの先頭にない場合は、左矢印キーはカーソルを前の文字に移動する。カーソル
がラインの先頭にある場合は、前のラインの末尾に移動する。前のラインがスク
リーン上に無い場合は、最初にそれをスクリーーン上にスクロールする。エレメ
ント形状が矩形でない場合は、平均ラインの文字数だけテキストを上に移動する
【0088】 page downキーは、テキストの末尾がスクリーン上に表示されていな
い場合に、テキストを1ページだけ下にスクロールする。新しいページの最初の
文字は、前のスクリーン上に表示された最後の文字の後の文字である。page
upキーは、テキストの先頭がスクリーン上に表示されていない場合に、テキ
ストをほぼ1ページだけ上にスクロールする。新しいページの最後の文字は、前
のスクリーン上に表示された最初の文字の前の文字の隣りにある。これは本発明
で推定される。そうでない場合はプロセスを繰返す。カーソルがテキストの末尾
に無い場合は、右矢印キーはカーソルを次の文字に移動する。カーソルがライン
の末尾にある場合は、次のラインの先頭に移動する。次のラインが現在スクリー
ン上に無い場合は、最初にそれをスクリーーン上にスクロールする。エレメント
形状が矩形でない場合は、平均ラインの文字数だけテキストを下に移動する。
【0089】 1ライン下に移動する方法は、一般的には、1ラインずつ下にスクロールする
ようにする、この場合テキストは任意の形状にレイアウトできる。これには、ラ
イン当りのスクリーン上の中心文字(全文字/全ライン)を使用して、スクロー
ルする距離を決定する。1ライン上に移動する方法は、一般的には、1ラインず
つ上にスクロールするようにし、この場合テキストは任意の形状にレイアウトで
きる。これには、ライン当りのスクリーン上の中心文字(全文字/全ライン)を
使用して、スクロールする距離を決定する。
【0090】 カーソルがテキストの第1ライン上に無い場合、上矢印キーは、ほぼ同一水平
位置の前のラインまでカーソルを移動する。テキストの前のラインが現在スクリ
ーン上に無い場合は、最初にそれをスクリーーン上にスクロールする。エレメン
ト形状が矩形でない場合は、平均ラインの文字数だけテキストを上に移動する。
挿入文字方法は、テキストから1文字を挿入する。これはまた、その文字のスタ
イルをスタイルリストに挿入し、そのテキストプロパティ内の変化のアンドゥロ
ガに連絡する、またテキストスクロールが使用中の場合は、そのスライダを調整
する。
【0091】 ヘルパ方法では、上述のように形状を横切るレイアウトテキストが、任意の形
状を横断するテキストの1つのラインをレイアウトする。長方形の形状では、こ
れを呼出す必要はない。次の値、すなわちテキスト特性、形状、スタイルを与え
られたテキストを保持するJava(ジャバ) LineBreakMeasurerオブジェクト、テキ
ストの次のビットがどのくらい高いかを特定するJava Rectangle(ジャバ長方形
)オブジェクト、ライン断片が現在生成中であるライン破断位置リスト、適用さ
れる位置調整が用意される。
【0092】 与えられた高さを使用して、形状を横切る長方形のリストは形状のgetHorizRe
cts()方法から得られる。各長方形において、その中のいくつかのテキストをレ
イアウトすることが試行される。これは長方形の幅および次のライン破断部の位
置に関してJava LineBreakMeasurerオブジェクトのnextLayout()方法を使用する
ことによって達成される。少なくとも1つの完全な単語を含むレイアウトのみが
使用される。
【0093】 レイアウトは得られると、TextLayoutStoreとして記憶され、さらに文字の位
置および物理的な表示を常時監視する。最も高いレイアウトは、全ての長方形が
完成したときにどのくらい遠くへ進むかを知るために追跡される。ライン破断部
に到達すると、カウンタは次のテキストセグメントへ進む。全ての長方形が完成
するとき、y値は、獲得された最も高いレイアウトよりも低く動かされる。レイ
アウトが得られないときは、1ピクセル下げられる。レイアウトおよび現在のラ
インセグメント番号のリストは戻される。
【0094】 所定の形状内のレイアウトテキストの方法は、スタイルを与えられたテキスト
を、所定の形状内に整合するレイアウトのリストへ戻す。テキストの特性、形状
、および位置調整が用意される。スタイルを与えられたテキストを含むJava Att
ributedCharacterIteratorが得られる。Java LineBreakMeasurerはそれから生成
される。形状の境界を示している長方形が得られる。テキスト特性は、ライン破
断部のリストに必要である。テキストは一度にラインをレイアウトされ、ライン
破断部をがループする。テキストの1“ライン”(一般的に単一のパラグラフ)
がレイアウトの多くの“ライン”をまたぐことが一般的であることに注意するこ
とが重要である。次のレイアウトは、結合した長方形の幅および次のライン破断
部の位置を使用して、Java LineBreakMeasurerオブジェクトのnextLayout()方法
から得られる。レイアウトは少なくとも1つの単語を含まなければならない。
【0095】 レイアウトが結合した長方形の底部をその高さの半分以上を“ハングオフ”す
るとき、この方法は達成される。この形状自体が長方形であるときは、TextLayo
utStoreオブジェクトを使用して、開始位置および座標を常時監視するように、
レイアウトを記憶することができる。文字の位置が更新されると、この方法は次
のラインへ進む。この形状が長方形でないときは、存在しているレイアウトを使
用して、要求される高さを評価し、Java LineBreakMeasurerは以前の開始位置へ
戻され、LayoutTextAcrossShape方法を使用して、この形状を横切るレイアウト
を獲得する。生成され、記憶された全てのTextLayoutStoreオブジェクトは戻さ
れる。
【0096】 マルチライン選択も、本発明のグラフィクユーザインターフェイスを使用して
可能である。この方法は、マルチライン選択を特徴付け、MarkSingleLineSelect
ionへの反復呼を使用して、作業を実行する。この方法は、レイアウトの開始位
置から、開始位置が位置する終端位置まで、ライン全体、およびレイアウトの終
端位置から、終端位置が位置する開始位置までにマークを付す。
【0097】 単一のライン選択も特徴付けることができる。この方法は、選択のためにマー
クを付された単一のレイアウト内の全ての文字を取り囲む長方形を構成する。テ
キストがペイントされるとき、長方形は選択された色で満たされる。テキストも
ペイントされる。この方法ではテキストを最初に描く。これは最初に記憶された
全てのレイアウトをループして、記憶された座標にそれらを描く(Java TextLay
outオブジェクトは直接に描くことができる)。要素が編集可能であるときは、
テキスト選択があり、選択は選択色で満たされる。最後に、要素が編集可能であ
るとき、テキストのカーソールはペイントされ(これはアラビア語のような双方
向言語で行われ、いくつかの条件のもとに2つのカーソールがある)。
【0098】 本発明ではさらに、受取られた現在のキーストロークを調べることもできる。
受取られた現在のキーストリークがバックスペースであるとき、それはHandleBa
ckspaceKeyを使用して処理される。そうではなく、テキスト選択があるときは、
選択はDeleteSelectionを使用して削除される。次に文字はinsertCharacterを使
用して挿入される。迅速なタイピング中にバックログされ可能性があるので、こ
の方法では、現在の全てのキーストロークまでを含むタイピングバッファ内で全
てを処理する。キーコード処理方法は、上述の適切な方法を呼出すことによって
、矢印キー、homeおよびendキー、page upおよびpage downキーの処理を取扱う
。テキストがラインまたはページによってスクロールされるとき、“単語境界部
で開始する”方法では、(必要であれば)ページの先頭部の開始の文字の位置を
移動して、その文字が単語の最初に位置していることを保証する。
【0099】 “テキストレイアウトメモリ”と呼ばれる特定のヘルパクラスは単一のJava T
extLayoutオブジェクトと、それを表示するのに必要とされる追加情報とを記憶
する。TextLayoutはテキストの単一のラインを含む。マルチラインドキュメント
はTextLayoutオブジェクトのリストを要求し、それ自体を表示する。レイアウト
メモリは、レイアウトが表示される座標、実際のテキストの幅および高さ、この
レイアウトが開始する全テキスト内の文字の位置を常時監視する。このクラスで
はレイアウトされているテキスト内の各文字のx座標を計算する。この情報は、
必要とされるときのみコンピュータ処理される。上下方向の矢印キーを処理し、
選択にマークを付すのには、このレベルの詳細が必要とされる。次にレイアウト
は、各文字の位置におけるカーソールの形状を獲得するために使用される。位置
のx座標は保存される。
【0100】 テキストスタイルヘルパクラスは、キー/値のハッシュテーブルの形態で、単
一のテキストスタイルを生成するために必要とされる情報を記憶する。キーは、
Java TextAttributeの定数である。値には、各属性に適するように種々のタイプ
がある。テキストスタイルのオブジェクトは、スタイルを2以上の連続する文字
に適用することができるJava AttributedStringオブジェクトによって直接に使
用できる形態をとっている。テキストスタイルを構成するために、少なくともフ
ォントファミリ(アリアル(Arial)、クーリエ、など)およびサイズ(ポイン
ト)を用意しなければならない。必要なときは、フォントの重み(ボールドであ
るか、否か)、ポーズ(イタリックであるか、否か)、取消線(strike through
)(オンであるかオフであるか)、下線スタイル(6個の中の1つか、またはオ
フであるか)、スーパースクリプトレベルまたはサブスクリプトレベル、フォア
グラウンドまたはバックグラウンドの色も用意される。
【0101】 フォントファミリーは、“アリアル(Arial)”または“クーリエ”のような
ストリングとして供給される。使用可能なフォントフェースのリストはコンピュ
ータによって異なるので、本発明はコンピュータから使用可能なフォントンリス
トを得る。ファミリー属性は、Java String(ジャバストリング)値を予測する
。テキストスタイルは、ファミリ属性をもたなくてはならない。Javaはフォント
サイズを10進法の値としてポイント(ポイントは1/72インチ)で表わす。
大抵のフォントフェースは可変サイズを支持する。一部のフォントは、特定の整
数のフォントのサイズ(例えば8−、10−、12−、および16−ポイントは
一般的である)のみを支持する。サイズ属性は正のJava Float(ジャバフロート
)値を予測する。テキストスタイルはサイズの属性をもたなくてはならない。
【0102】 Javaは、0.25ないし2.75の実効範囲に関する10進法の値としてフォ
ントの重みを表わす。従来の“ボールド”は値2.0を割り当てられる。“標準
”は値1.0を割り当てられる。1.0未満の値は、標準よりも“より細く”表
わされる。本発明はボールドをブール属性として取扱う(ボールドはオン、標準
はオフ)。テキストスタイルのオブジェクトは値を変換する。重みの属性は0.
25ないし2.75のJava Float値を予測する。値が1.0であるときは、属性
は取除かれる。
【0103】 Javaが斜角のアークタンジェントとして+90°(右に傾斜、値+無限大)か
ら0°(標準)を介して−90°(左に傾斜、値−無限大)でフォントポーズを
表わす。従来の“イタリック”は値0.2を割り当てられる。“標準”は値0.
0を割り当てられる。0.0未満の値は左側に“傾斜”されているように表わさ
れる。本発明はブール属性としてイタリックを取扱う(イタリックはオン、標準
はオフ)。テキストスタイルオブジェクトは値を変換する。ポーズ属性はJava F
loat値を予測する。値が0.0であるときは、属性は取除かれる。
【0104】 Javaは、ブール属性として取消線を表わし、オンのときは真、オフのときは偽
である。取消せん属性はJava Boolean(ジャバブール)値を予測する。値が偽で
あるとき、属性は取除かれる。Javaは整数の属性として下線を表わす。Javaは6
つのスタイルの下線、すなわちスタンダード(ローマベースライン(Roman base
line))、シングル(1−ピクセル、デセンダより下)、ダブル(2−ピクセル
)、グレイ、長点、および短点を用意している。下線属性はJavaの整数値(Text
Attributeクラスは6つの値に対して定数を与える)。値が6つの定数の間にな
いときは、属性は取除かれる。
【0105】 Javaは、スーパースクリプトおよびサブスクリプトを単一の整数の属性として
、スーパースクリプトに対しては正の値、サブスクリプトに対しては負の値、標
準位置に対してはゼロを使用して表わす。都合の悪いことに、Java機構は現在、
スーパースクリプトまたはサブスクリプトを生成するために、テキストをスケー
ルまたはオフセットしない。本発明のテキストスタイルのクラスは、スーパース
クリプトおよびサブスクリプトを生成するために、周辺に作業を与える。しかし
ながら、これは完全に満足のいくものではない。例えば、テキストのバックグラ
ウンドの色はそれと適切に符号しない。この問題はおそらく将来発展したときに
解決されるであろう。
【0106】 フォントサイズに適用するためのスケールのサイズは“レベル”パワーに対し
て2/3増大され、なお、レベルはスーパースクリプトまたはスクリプト値の大
きさであり(すなわち、1、2、3、などであり、3より上の値は一般的にスー
パースクリプトになってしまい、読み取るのには小さ過ぎる)。変換に使用する
オフセットは反復的にコンピュータ処理される: factor=1 offset=0 size=font size/2 level=magnitude of superscript or subscript repeat level times factor=2/3×factor offset=offset×3/2+size×factor end repeat 最後に、フォントは両方の寸法においてそれをスケーリングし、高さにおいて
オフセットによってそれを変換することによって変形される(スーパースクリプ
トには−offsetを使用する)。
【0107】 Javaは、フォアグラウンドおよびバックグラウンドの色の属性についてJava C
olor(ジャバカラー)オブジェクトを使用する。この色が全く透明(ナル)であ
るときは、属性は取除かれる。
【0108】 スタイル範囲のヘルパクラスは、テキストスタイル、開始および終了文字の位
置を記憶する。開始位置は、スタイルが適用する最初の文字である。終了位置は
、スタイルが適用する最後の文字を過ぎたところである。スタイルの範囲は、テ
キストの特性が記憶されるときに使用され、スタイル情報を圧縮する。
【0109】 図8Aに示した簡単なテキストスタイルエディタ180は、活動状態の要素の構
成パネルの一部として与えられている。ユーザは、フォントの全ての属性を変更
して、結果のサンプルを確認することができる。テキストスタイルエディタを構
成するために、フォントファミリー、フォントサイズ、フォントの重み、フォン
トポーズ、下線付け、取消線、スーパースクリプトとサブスクリプト、およびフ
ォアグラウンドとバックグラウンドの色のようなオプションのリストを、後述す
るように、用意しなければならない。
【0110】 テキストスタイルエディタ180は、フォントファミリー選択リスト182を用意し
ている。使用可能なフォントファミリーのリストが用意される。ユーザは所望の
フォントをクリックすることによって1つを選択することができる。フォントフ
ァミリーリストを構成するために、全ての使用可能なフォントの名前を用意しな
ければならない。フォントサイズ用のスクローラ183によって、ユーザはボタン
を使用してフォントサイズのポイントを一度に上下に調節することができる。ユ
ーザは、フォントの重み、すなわちボールドを、“ボールド”ラジオボタン184
をクリックすることによってオンまたはオフにトグルすることができる。イタリ
ックにおいて、ユーザはフォントポーズ、すなわちイタリックを、“イタリック
”ラジオボタン185をクリックすることによってオンまたはオフにトグルするこ
とができる。下線付けも同様に行われる。ユーザは、186に示した所望のスタイ
ルをクリックすることによって、6つの下線付けスタイルの1つか、または下線
を付さないかを選択することができる。下線付けリストを構成するために、下線
付けスタイルの名前および“なし(None)”が用意されなけれなならない。取消
線では、ユーザは“取消線(strike through)”無線ボタン187をクリックする
ことによってストライクスルーをオンまたはオフにトグルすることができる。
【0111】 スーパースクリプトおよびサブスクリプトも、テキストエディタ180によって
指示することができる。ユーザは、188において所望の位置をクリックすること
によって標準、スーパースクリプト、またはサブスクリプトを選択することがで
きる。テキストエディタ180はさらに、フォントのフォアグラウンドまたはバッ
クグラウンドの色を変更するオプションもユーザに用意する。これらの色のため
のボタン189および190によって、上述の色エディタが起動する。
【0112】 テキスト要素は、編集可能なテキストフィールドの内容をラベル要素のプロン
プトへ加えることによってラベル要素を拡張する。したがってテキスト要素は、
テキストを記憶するのに使用可能な2つのテキストの特性を有する。テキストの
要素において、“プロンプト”は所望するものをユーザにフィードバックする役
割を果たし、テキストフィールドはユーザからのタイピング入力を受取るか、ま
たは編集する値を表示する。テキスト要素およびプロンプトは、相互に作用する
。テキストがテキストフィールドにおいて使用可能であるときは、テキストフィ
ールドが表示される。テキストフィールドがエンプティであるときは、プロンプ
トが表示される。正規の条件のもとで、テキストフィールドはユーザによって編
集可能であるが、プロンプトはそうではない。
【0113】 テキスト要素の最小サイズが計算されなければならない。テキストフィールド
およびプロンプトテキストの長い方が、近似値として使用され、これを2倍する
ことを避ける。テキストの1行のサイズが得られる。多数のラインがサイズのヒ
ントにおいて特定されるときは、多数のラインのサイズが評価される。要素の境
界の幅は全周囲に付加される。サイズのヒントにおいて特定される正確なサイズ
はこの最小値にオーバーライドする。
【0114】 テキスト要素は“テキストフィールド”を有し、テキストフィールドはユーザ
によって編集されるテキストを含む。ユーザが要素構成パネルを実行するとき、
プロンプトは編集可能になり、テキストフィールドの代わりに表示される。テキ
ストフィールドは構成が完成するときに、再び現れる。テキストフィールド内の
テキストは、何れかのスタイルまたはスタイルの組み合わせであってもよく、長
くても短くてもよい。
【0115】 テキストフィールドをもつ要素を構成するために、少なくともテキストストリ
ングを表示するために用意しなければならない。各文字についてのテキストスタ
イルも供給されることが多い。テキストスタイルの詳細は後述する。要素はテキ
ストフィールドを有する必要がない。空のストリングはデフォルトによって使用
される。用意されたテキストスタイルをもたないか、またはその文字の一部のみ
についてのテキストスタイルをもつテキスト特性は依然として有効である。シス
テムのデフォルトのテキストスタイルは、テキストスタイルの値を欠いている文
字について使用される。
【0116】 ボタン要素は特別なラベル要素である。ボタン要素は一般的に種々の動作を起
動するために使用される。ラベル要素と同様に、ボタン要素はテキストを表示す
るが、表示することを要求されている訳ではない。ボタンの最小の大きさは、ラ
ベル祖先(label ancestor)によって計算され、テキストを表示できることを保
証した最小のサイズに基いている。これは、各寸法において、固定された最小値
、すなわち現在は16ピクセルよりも小さくならない。したがって、ボタンが動
作するのに十分に大きいことを保証している。境界の幅は全周囲に付加される。
サイズヒントにおいて特定される正確なサイズはこの最小値にオーバーライドす
る。
【0117】 簡単なボタンは、“用意の整った(armed)”状態の内容をラベル祖先の振舞
いに加える。ボタンは、ユーザがボタンを押すときに用意が整えられ、ユーザが
ボタンを離したときに用意が解除される(disarmed)。この状態は、ボタンのペ
イント方法によってモニタされる。バックグラウンドは、ボタンが用意を整えた
ときに僅かにより暗い色に変化し、用意が解除されたときに戻る、ボタンのバッ
クグラウンドは画像でペイントされるとき、現在は表示のフィードバックは行わ
れていない。簡単なボタンは、作動開始および作動終了イベントを使用して、用
意および用意解除の振舞いと関係する再ペインティングを呼出す。僅かな例外に
おいて、簡単なボタンはさらに、プログラマによって特定される作動イベントを
有して、ボタンが押されたときに実行される動作を示す。デフォルトによって、
ボタンの作動は、マウスの左クリックを使用する。
【0118】 無線ボタンは、オン/オフ選択状態を追加することによって簡単なボタンを拡
張する。本発明では、これらのボタンはいくつかの目的に役立つ。無線ボタンは
、グループでは、従来の“無線ボタン”の機能を行ない、すなわちグループ内の
1つのみのボタンはいつでもオンになることができる。このようなグループは、1
組の相互に排他的な選択を与えるために使用される。スタンディングアローンの
、すなわち1つの無線ボタンは従来の“チェックボックス”の働きをし、選択さ
れたときおよび選択されないときに異なる境界を表示する。最後に、無線ボタン
は、グループでスクロールをもつときは、“結合ボックス”または“スクロール
形リスト”の機能を用意する。
【0119】 現在、無線ボタンは、基礎となっているJava JradioButtonオブジェクト(表
示されていない)を使用して、選択状態を記憶する。したがってJava ButtonGro
upオブジェクトを使用して、ボタンのグループにおける排他性を管理することが
できる。
【0120】 親要素は、1以上の子要素を管理する責務を有する。親要素は簡単な活動状態
の要素を拡張する。子要素は簡単な要素であるか、または簡単な要素の振舞いを
拡張する要素である。したがって親は子として他の親を有することができる。こ
れは、アプリケーションスクリーンを構築する要素の階層の基礎である。
【0121】 従来のウインドウ処理フレームワークを実行するのとは異なり、本発明におけ
る親−子関係は閉じ込めを示唆していない。子は、ユーザまたはディベロッパー
によて、親の境界の外側へ移動することができる。子は親と共に移動し、成長す
るが、親によって閉じ込められる必要はない(その振舞いの一部はレイアウトア
ルゴリズムによって制約される)。子も互いにオーバーラップしてもよい。この
振舞いも、レイアウトアルゴリズムによって若干制約される。親要素を構成する
ために、子のリストを用意しなければならない。親は子をもつ必要はない。この
リストは空であってもよい。
【0122】 親要素は子のリストを保持する。各子は、識別のために直系の親によって使用
される名前を有する。ディペロッパは、1つの親の全ての子の名前が重複しない
ことを保証しなければならない。“グローバル”に重複しないことは必要とされ
ない。名前の目的は、コードが、維持可能で、かつ人間が読取り可能なやり方で
特定の子にアドレス指定できるようにすることである。子のリストは、子がペイ
ントされる順序を制御する。したがって子がオーバーラップするときのみ重要で
あり、この場合に、最後の子は“最上部”に現れる。子のハッシュテーブルもあ
り、名前に対してキーされて、コードで名前によって子を迅速に位置付けること
を可能にしている。
【0123】 子のレイアウトはいくつかのステップを含む。第1のステップでは、要素の全
階層がどのくらい大きくなることを“望む”かを検出する。実際には、第1のス
テップは各要素に要求される最小のサイズを評価し、全てを一緒に継ぎ合わせる
ことを含む。大抵の簡単な要素について、ラベルおよび少量のテキストを有する
テキストフィールドを含む良好な値が得られる。問題は“大きい”テキストフィ
ールドにおいて生じる。要求されているサイズについての“正しい”答えはない
。極めて幅の広い1ライン高いレイアウト、極めて高い1単語幅の広いレイアウ
ト、またはその間であってもよい。このようなフィールドが1つのみでもあると
、サイズのヒントは問題を処理することができる。したがってディペロッパは“
全ての残りの”スペースを特定の要素に割り当てることができる。
【0124】 要求されたサイズが分かると、実際のレイアウトが実行される。表示は最も小
さいサイズでレイアウトされることが多い。簡単なエディタおよび制御パネルに
おいて、この表示は通常非常に良好にみえる。最小サイズよりも大きいスペース
が使用されるときは、超過分は全ての要素に分配されるか、またはたった1つに
集中させることができる。サイズのヒントによって、何れのアプローチを採用す
るかを決定する。一般的なレイアウト方式を水平方向のレイアウトを使用して例
示的に次に記載する: 1.サイズのヒントにしたがって、次の行にいくつの要素が整合しているか
を調べる。
【0125】 2.両寸法において、使用可能なスペース内に行を中央付けする。
【0126】 3.各要素の位置および大きさを行内に設定する。
【0127】 4.行内の最も高い要素よりも低くポイントを下げる。
【0128】 5.次の行に対して、これらを反復する。
【0129】 垂直方向のレイアウトの方式も同様である。ディベロッパーは意図されたアプ
リケーションについての整合を調べるので、サイズヒントのエラーチェックおよ
び競合解消は概ね組込まれる。
【0130】 本発明において“テーブル”の表示を自動的に生成するために、グリッドのレ
イアウトが使用され、これは多数のカスタムレイアウトにおいても同様に有益で
ある。グリッドのレイアウトは子を二次元の“リストの中のリスト(list of li
sts)”へ編成する。サイズのヒントによって、サブリストが行であるか、また
は列であるか(すなわちレイアウトが水平方向か垂直方向か)、および何れの要
素が各行または列の最後であるかを判断する。行または列は、同じ数の要素を有
する必要はなく、グリッドのサイズも予め特定される必要もない。
【0131】 レイアウト方式では、同じ列内の全ての要素は同じ幅をもつ。同じ行内の全て
の要素は、同じ高さをもつ。これは水平方向または垂直方向のリストにおいて真
である。それらの間の唯一の異なっていることは、連続する要素が同じ行(水平
方向)へ向かっているか、または同じ列(垂直方向)へ向かっているかである。
列の幅および行の高さの配列は、ベースとして各要素の所望の最小の大きさを使
用し、各列内の最も幅の広い要素および各行内の最も高さのある要素を検出して
計算される。各列は一般的に異なる幅をもつ。各行は、ときどき異なる高さをも
つことがある。サイズのヒントは、所望であれば全ての余分な幅を吸収する1つ
の列と、全ての余分な高さを吸収する1つの行を示すことができる。実際のレイ
アウトは、いったん列の幅および行の高さが計算されると端的に分かる。グリッ
ドは、2以上のライン上で各行をラップして、上述の全ての他のグリッドの振舞
いを保持することによって、幅が有効スクリーンスペースを越えることができる
ことを意図している。
【0132】 ボタングループは、グリッド要素を拡張して、排他性を与える。ボタングルー
プの全ての子は無線ボタン要素でなければならない。常にちょうど1つのみの子
が選択されなければならない。全ての子が選択解除される状態はない。この種類
の振舞いを実行するために、平面のグリッドレイアウトにおける無線ボタンが使
用される。ディペロッパは選択および選択解除の両方を管理しなければならない
【0133】 オーバーレイは、いくつかの代わりを連続して表示する1つのやり方を与える
。1つのみの代わりが一度に表示される。一般的にオーバーレイ要素の子はいく
つかの分類の各親要素であるが、必ずしもそうでなくてもよい。オーバレイは、
何れの子が現在表示されているかを設定する方法を与える。ユーザが有効な選択
肢から選択できるようにする制御は、外部に用意されなければならない。オーバ
ーレイ要素は“ウイザード”または“タブパネル(tabbed panel)”の振る舞い
を与えることができる。オーバーレイの最小のサイズは、子の最大サイズである
。オーバーレイ要素を構成するために、現在表示されている子が用意されなけれ
ばならない。
【0134】 スクローラは、2つの目的に役立つ。1つの目的は有効スペース内に整合する
には大き過ぎる材料の横断を可能にすることである。本発明によって、グリッド
要素、およびラベルまたはテキスト要素のための垂直方向のスクロールバーは、
その必要に応じることができる。第2の目的は、ユーザがタイプせずに一定の範
囲の数値から選択できるようにすることである。本発明は水平方向と垂直方向の
スライダおよびスクロール形ラベルをこの目的のために使用する。
【0135】 スクローラは、子と共に働き、従来のスクロールバー、スライダ、などの外観
を生成するカスタマイズされた親要素である。従来のウインドウ処理環境とは異
なり、本発明のスクローラは、ユーザによって自由に変更することができる。各
部分201ないし204(図8A参照)は、それぞれ活動状態の要素であり、図8Bに
それぞれ201’ないし204’で示したように、移動、再形成、およびペイント、な
どをすることができる。スクローラは、それが制御するアイテムからドラッグで
離されるが、それでも機能することができる。これらの振舞いの一部はレイアウ
トアルゴリズムによって影響される。
【0136】 垂直方向のグリッドスクローラは、従来のスクロールバーの外観を生成する。
これは、上下ボタン、スライダ、およびスライダが位置しているようにみえるト
ラフを有する。有益なことには、これはそのサイズヒントによっていくつの行が
表示されるかを示しているグリッド要素と関係付けられなければならず、グリッ
ドはそれらの行よりも多く含まれなければならない。レイアウト上では、スクロ
ーラは、使用可能な高さが不十分であるときは、スライダおよびトラフを損う(
collapse)ことがある。上下ボタンのみがそのまま残る。損われたスクローラと
対にされた高さの1つのアイテムに限定されたリストは、ときどき、標準の結合
ボックスのように働く。
【0137】 これらの条件が満たされると仮定すると、スクローラによって、ユーザはグリ
ッドの表示を上下にスライドして、行がスクリーンから見えなくすることができ
る。上下ボタンをクリックすると、グリッドの最初と最後に到達するまで、グリ
ッドが1行だけスクロールする。マウスボタンを押してスライダにドラッグをか
けると、グリッドはその制限範囲内で自由にスクロールすることができる。トラ
フはこのときに活動状態ではない。トラフをクリックしても、何も動作しない。
【0138】 図8Aを参照すると、垂直方向のテキストスクローラ200は従来のスクロール
バーの外観を生成する。これは上下ボタン201および202、スライダ203、および
スライダが位置しているようにみえるトラフ204を有する。有益なことには、こ
れは、境界の中で整合するよりも多くのテキストを含むラベルまたはテキスト要
素と関係付けられているにちがいない。レイアウト上では、有効な高さが不十分
であるときは、スクローラはそのスライダおよびトラフを損ない、上下ボタンの
みが残る。
【0139】 これらの条件が満たされると仮定すると、スクローラによって、ユーザはテキ
ストの表示を上下にスライドして、ラインをスクリーンから見えなくすることが
できる。上下ボタンをクリックすると、テキストの最初と最後に到達するまで、
1ライン毎にテキストをスクロールする。マウスボタンを押してスライダにドラ
ッグをかけると、テキストは制限範囲内で自由にスクロールすることができる。
水平方向のテキストのスクローラと同様に、トラフはこのときに動作しない。そ
れをクリックしても、何も動作しない。
【0140】 水平方向および垂直向のスライダによって、ユーザはタイプせずに、実際の値
を知らずに、一定の制限範囲内で数値の値を調節することができる。数値制限は
スライダの最後に割り当てられる。ユーザは、それらの間でマウスを使用してス
ライダにドラッグをかける。値はその制限内で線形に範囲内を動く。スライダは
、トラフとノブから構成されている。ノブのみが活動状態である。スライダを構
成するために、最小値、最大値、および現在の値を用意しなければならない。
【0141】 スクロール形ラベルは、上下ボタンで値のリストのように振る舞う。この値は
、ボタンがクリックされるたび毎に変更される。それらは一定の範囲の整数値に
適している。スクロール形ラベルを構成するために、最小値、最大値、および現
在の値を用意しなければならない。描画ツール (Drawing tool) 図9を参照すると、本発明の描画ツール210は、前述された方法、即ち描画
ツールの各構成部品のために能動要素を作る方法によって、構成されている。描
画ツール210は、使用者が形状(shape)のコレクションを収集するのを可能
にする。各形状は、様々の方法で、容易に操作され得る。形状のコレクションは
、移動され、大きさを変更され得る。仕上げられた描画は、名前を付けられ、保
存され得る。描画がリロードされるとき、形状は、再び、個々に操作され得る。
保存フォーマットは、非常に小型(形状と陽の色(plus color)との均衡、輪郭
幅情報)で、元の描画と比較して精度を失うことはない。描画ツールを構成する
ために、特別な情報は必要ない。描画を再構成するには、表示される形状のリス
トが、用意されなくてはならない。形状の詳細については、以下で説明する。
【0142】 幾つかのデザインの形状が、可能である。例えば、ボックス212、オーバル
213、丸められたボックス214、直角三角形状215などである。また、使
用者は、直線とフリースタイルの線(走り書き)とを引張り得る。形状は、ジャ
ワ成形状目的(Java Shape object)のような描画ツールに保
存される。これらは、形状と関連するジャワパスルテレイタ(Java Pat
hlterator)から調整されるように、データベースに保存される。形状
を再構成するために、以下の情報が提供されなくてはならない。形状のタイプ(
オーバル、三角形状等)、この輪郭の幅、この回転角度、この中心の色、輪郭の
色、このジャワの巻き取りルール、ジャワセグメント形状、形状を規定する座標
である。
【0143】 各形状は、この周囲に、最初の画素の幅の輪郭を有している。この時点の輪郭
の幅が、各形状に保存される。各“固形状の(solid)”形状は、中心の色と輪
郭の色とを有している。これらは、必要であれば、同じであり得る。線と走り書
きとは、輪郭の色のみを有している。本明細書で使用される色編集ツールについ
ては、上述された。本発明の他の色のように、描画ツールの色は、不透明もしく
は部分的に透明であり得る。中心の色を設定するために、色エディタを使用して
、所望の色を選択し、“中心”と名付けられたボックス215をクリックする。
輪郭の色は、“輪郭”と名付けられたボックス216をクリックすることによっ
て設定される。輪郭の色と中心の色とは、各形状に保存される。
【0144】 1回のクリックもしくはクリックアンドドラッグの形状式が、描画ツールの全
動作のために使用されており、使用を相当に容易化している。描画ツールの形状
の色を設定するために、使用者は、“色設定”ボタン217を選択する。使用者
が所定の形状をクリックすると、この中心の色と輪郭の色とは、ここで選択され
ている中心の色と輪郭の色とに変更される。形状によって使用される色を調達す
るために、使用者は、“色調達”ボタン218を選択する。使用者が形状をクリ
ックすると、この中心の色と輪郭の色とは、ここで選択されている中心の色と輪
郭の色とになる。正面移動ボタン219を押すと、使用者が、他の重なっている
形状全ての前に選択された形状を動かすのが可能になる。これは、形状をこれの
リストの最後に移動させることによって、コード内で実行される。後ろ移動ボタ
ン220を押すことは、使用者が、所定の形状を、他の重なっている形状全ての
後ろへ形状を移動させるのを可能にする。これは、形状を形状のリストの最初に
移動させることによって、コード内で実行される。
【0145】 削除ボタン221は、使用者がボタン221を選択し、次に形状を選択すると
、この形状は、描画から削除されるように、コード化されている。移動ボタン2
22は、使用者が、形状をスクリーン中で移動させるのを可能にするように、コ
ード化されている。ボタン222は、形状を、位置指示装置のカーソルに従わせ
るように、コード化されている。このカーソル上で、使用者は、形状をクリック
し、引っ張る。使用者が形状をクリックし引っ張ると、これは、スクリーン中の
マウスのカーソルに従う。描画ツールの形状は、描画ツールの中心領域221に
規定されているが、視域の外またはこの端部で引っ張られ得る。後述される“パ
ン(pan)”の特徴が、不足しているものを再現するまで形状を変化させるのに使
用され得る。これを再現されるとすぐに、属するところへ移動され得る。
【0146】 大きさ変更ボタン223は、使用者が形状の大きさを変更できるように、設け
られる。使用者が形状をクリックし引っ張ると、スクリーン中のマウスのカーソ
ルに従って大きさを変更できる。形状が回転されている場合は、大きさ変更の方
向は、直覚的ではあり得ない。大きさ変更は、回転とは関係なく、ボックス例え
ば丸められたボックスもしくは直角三角形状の形状内の角度を歪めないように、
形状の軸に沿って行われ得る。
【0147】 形状は、回転ボタン224を用いて、回転され得る。コードは、使用者が形状
をクリックし引っ張るときほぼ中心を軸にして回るように、描かれる。使用者は
、これを、所望する通りにどちらの方向にも、自由に回転させることができる。
回転角度は、各形状に保存される。
【0148】 また、各形状の輪郭の幅は、ボタン225によって変更され得る。使用者がボ
タン225を選択した後で形状をクリックし引っ張ると、この輪郭の幅は、広げ
られるか縮小され得る。ここでの輪郭の幅は、各形状に保存される。輪郭は、形
状の外形状上で、中心付けて描かれる。
【0149】 本発明の描画ツールにおいて、幾つかの動作は、全形状に同時に作用する。全
パンボタン226は、作動されているとき、全形状が、使用者が描画領域のどこ
かをクリックすると、スクリーン中の位置指示装置のカーソルに従うようにさせ
る。最初は、どこをクリックしても良い。拡大ボタン227が、作動されている
とき、使用者が描画領域のどこかをクリックすると、全形状が、一緒に大きくさ
れるか縮小され、スクリーン中の位置指示装置のカーソルに従うようにさせる。
最初は、どこをクリックしても良い。ボックス例えば丸められたボックス、三角
形状の形状内の角度が歪まないよう維持するために、大きさの変化は、両方の方
向で等しい。
【0150】 使用者が新しい描画のためにボタン228を選択するとき、古い描画は、消去
される。描画をスクリーンにロードするために、使用者は、描画名をテキスト領
域240に入力し、ボタン229を選択しなくてはならない。描画の名前が入力
されると、描画は、描画ツール210の描画領域211にロードされ、スクリー
ン上に表われるもの全てに加えられる。最初に古い描画を消去する場合は、ロー
ドする前に新しい描画を選択する。描画を保護するために、使用者は、描画名を
テキスト領域240に入力し、次に、ボタン230を選択しなくてはならない。
使用者が描画名を入力し、これを保護すると、この描画は、保存される。自動ビュージェネレータ 本発明は、目的物の単一記録ビュー、もしくは半自動制の目的物のグループの
複数記録ビューを発生させ得る。
【0151】 図10を参照すると、複数記録ビュー250は、表と類似している。各目的物
は、1つの列252を占めている。目的物の各欄254は、1つの列を占めてい
る。最初の列256に、領域名がリストアップされている。複数記録ビューを構
成するために、表示する記録のリストが提供されなくてはならない。各記録のた
めに、表示する欄とフォーマットされた値とが、提供されなくてはならない。分
類が、実際に表示されるフォーマットされた値ではなく、欄の内容物に対して行
われる。
【0152】 複数記録ビューは、使用者が、所定の列を分類するのを可能にする。最初の列
256は、各列を名付けている能動ボタン257から成る。こうしたボタンの1
つをクリックすることにより、列の内容物に係わる表が分類される。この分類は
、“インテリジェント”である。基礎を成すデータは本当のジャワ目的(Java o
bject)なので、数とデータとが、テキストの列ができるだけ正しくなるように
、分類される。再び同じボタンをクリックすることで、分類の方向を、増加から
減少もしくは元通りへと、逆にさせる。
【0153】 また、複数記録ビューは、所定の列の単一記録ビューの表示能力を提供する。
最も左の列には、各列毎にボタン258が設けられる。ボタンをクリックするこ
とで、この列の目的物の単一記録ビューが開かれる。
【0154】 図11を参照すると、単一記録ビュー270は、2列の表と類似している。左
列272は、欄名を、右列274は、データを有する。テキストの列、数、デー
タ等を有する1つの欄は、編集するためのテキスト欄として表示されている。ま
た、単一記録ビューは、関連する目的物を表示するためのボタンを有する。単一
記録ビューを構成するために、表示する欄のリストとこれらのフォーマットされ
た値が提供されなくてはならない。欄のいくつかが本発明の物品である場合、方
法は、存在し、内蔵された物の欄のリストを必要とする。表示された目的物は、
他タイプの目的物内の欄にあり、前記タイプの目的物は、単一記録ビューを構成
するために提供されなくてはならない。単一記録ビューは、ビュー11のA、B
並びにCに示されるように、これへの押しボタン接続を表示する。
【0155】 所定の内蔵された目的物は、広げられ得る。他の目的物を有する欄は、ラジオ
ボタン280、300のように表示される。ボタン300を押すことは、単一記
録ビュー302が最初の単一記録ビューに対し段付けされこの中に収納されるよ
うに、内蔵された欄を広げるということである。広げられた欄が他の目的物30
4を有している場合、これらの目的物もまた、広げられ得る。段付けと僅かな色
のコード化の両方が、このように広げられた欄の分離を助ける。
【0156】 単一記録ビューの1つのボタンは、使用者が、ここでの目的物と同じタイプの
全ての目的物の複数記録ビューを表示するのを、可能にする。他のボタン306
が、ここでの目的物が他の目的物の欄内にあるとき単一記録ビューに表われ得る
。全ての“関連する”目的物、即ちこれら複数の欄のうち1つに特定の目的物を
有する目的物は、表示され得る。データを介して掘り下げる循環的な能力が、非
常に強力である。
【0157】 更に、本発明は、所定の“定数”を用いている。この定数は、使用者により顕
色剤の勾配と作用とに応じて形成可能にされている。TIMER DELAY“
定数”は、レイアウト並びに塗り直しタイマのための標識要素に使用される遅れ
時間である。この初期値は、250ミリ秒である。タイマは、レイアウト並びに
塗りなおし活動を維持し、急速なタイピストの停滞から保護する。どんなに急速
な変化が与えられても、レイアウトは、250ミリ秒毎にのみ生じる。EMBE
DDED INDENT“定数”は、内蔵された目的物が単一記録ビューの親か
らどれだけ遠くに段付けされる(indent)かである。初期値は、1レベルにつき2
0画素である。もし、お金の動きの目的物(Moneymovement object)が計算目的を
有するとき、この計算目的は、20画素だけ、段付けされる(indent)。もし計
算自体が通貨目的を有する場合、この通貨目的は、40画素だけ、段付けされる
(indent)。以下同様である。
【0158】 The FACTOR PER PIXEL“定数”は、描画ツールの“全て
を拡大する(zoom all)”能力のために使用される対数の倍率である。初期値は
、0.01/画素である。使用者が、拡大中に位置指示装置を“比較的大きな”
方向へ(東並びに/もしくは南、+X並びに+yの方向)引張るとき、形状の大
きさは、最初の100画素の2倍である。次の100画素の後は、これらはまた
2倍になり、以下同様である。位置表示装置が、“比較的小さな”方向へ(西並
びに/もしくは北)移動するとき、大きさは、最初の100画素の半分である。
【0159】 The BORDER FACTOR PER PIXEL“定数”は、描画
ツールの端の幅を変更するために使用される線形状輪郭の倍率である。初期値は
、0.1/画素である。使用者が、位置指示装置を“比較的大きな”方向へ(東
並びに/もしくは南、+X並びに+yの方向)引張るとき、輪郭の幅は、100
画素引っ張るごとに10画素だけ増加する。位置表示装置が、“比較的小さな”
方向へ(西並びに/もしくは北)移動するとき、幅は、100画素引っ張るごと
に10画素だけ減少する。
【0160】 The DRAWING COLOR“定数”は、最初に始動されるとき描画
ツールによって表示される色である。初期設定は、不透明な黒(RGBA=0,
0,0,255)である。The TEXT CARET COLOR“定数”
は、編集可能なテキスト中の脱字を表示するのに使用される色である。初期設定
は、不透明な黒(RGBA=0,0,0,255)である。The MAX L
ABEL WIDTH“定数”は、レイアウトのアルゴリズムがテキスト欄もし
くは標識を与える傾向のある最大の大きさである。初期値は、250画素である
。上限が、自然な初期設定のサイズでない大きなテキストによって、問題を回避
する。
【0161】 The MIN BTN SIZE“定数”は、ボタン部材に許容された最少
の大きさである。初期値は、16画素である。低限は、ボタンが、押すために“
充分に大きい”のを確実にする。The MIN BORDER“定数”は、レ
イアウト中に親要素が子要素の周囲に残していった最少の大きさの輪郭である。
初期値は、2画素である。The MIN INNER“定数”は、内側能動形
状状の要素に許容された最少の大きさである。
【0162】 The SELECT COLOR“定数”は、テキストが選択されたときこ
のテキストを強調するのに使用される色である。初期設定は、ほぼ透明なマゼン
ダ色(RBGA=192,0,192,32)である。The BUTTON
COLOR“定数”は、ラジオボタンの、これが“オン”であるかもしくは選択
されているとき、輪郭を描くのに使用される色である。初期設定は、不透明な赤
(RGBA=255,0,0,255)である。The DEFAULT ST
YLE“定数”は、特定のスタイルが用いられないとき使用される初期設定の文
字スタイルである。初期設定は、フォントの系“問答”を利用しており、大きさ
12ポイント、不透明な暗い濃紺の表面(RGBA=102、102、153、
255)で際立つようにされている。
【0163】 当業者は、本発明の方法と装置とが、多くの応用例で使用され得ることを理解
するだろう。更に、本発明の範囲は、本明細書で説明されているシステムの構成
部品に対す従来的に公知の変形状並びに改善をカバーしている。このような変形
状と改善とは、請求項によって規定されているように、本発明の精神と範囲とか
ら逸脱しないよう意図されている。
【図面の簡単な説明】
【図1】 本発明の一実施例を示し、具体的にはグラフィカルユーザーインターフェイス
の種々の活性エレメントを示している。
【図2】 本発明の一実施例を示し、具体的にはグラフィカルユーザーインターフェイス
のある活性エレメントが有する種々の形態を示している。
【図3】 本発明の一実施例を示し、具体的には活性エレメント配置パネルを示している
【図4】 本発明の一実施例を示し、具体的にはシェイプエディタと呼ばれる簡単な形状
選択ツールを示している。
【図5】 本発明の一実施例を示し、具体的には簡単な境界選択ツールを示している。
【図5A】 本発明の一実施例を示し、具体的にはカラーエディタと呼ばれる色選択ツール
が有するパネルを示している。
【図5B】 本発明の一実施例を示し、具体的にはカラーエディタと呼ばれる色選択ツール
が有するパネルを示している。
【図5C】 本発明の一実施例を示し、具体的にはカラーエディタと呼ばれる色選択ツール
が有するパネルを示している。
【図5D】 本発明の一実施例を示し、具体的にはカラーエディタと呼ばれる色選択ツール
が有するパネルを示している。
【図5E】 本発明の一実施例を示し、具体的にはカラーエディタと呼ばれる色選択ツール
が有するパネルを示している。
【図5F】 本発明の一実施例を示し、具体的には透明度選択器を拡大して示している。
【図6】 本発明の一実施例を示し、具体的には簡単なイメージ選択ツールを示している
【図7】 本発明にかかる簡単なイベントエディタツールの一実施例を示している。
【図8A】 本発明にかかる簡単なテキストエディタの一実施例を示している。
【図8B】 本発明にかかる簡単なテキストエディタの一実施例を示し、具体的には本発明
の個々の活性エレメントが互いから動かす事が出来るとともに、それぞれが機能
しうる様子を示している。
【図9】 本発明にかかる線描ツールの一実施例を示している。
【図9A】 本発明にかかる線描ツールのツールパネルの拡大図であり、ツールグループか
ら離された種々の活性エレメントを示している。
【図10】 本発明の一実施例を示し、具体的にはマルチレコード図を示している。
【図11】 本発明の一実施例を示し、具体的には、拡大図で示すような埋め込まれた複数
のオブジェクトを有するシングルレコード図を示している。
【符号の説明】
3… ラベル 4… テキストフィールド 5… ボタン 6… ラジオボタン 7
… ペアレント 10… 箱型 20… 楕円形 30… 雲形 40… 三角形状 60 … アクティブエレメント環境設定パネル 61… 親アクティブエレメント 7
0… 図形 71… 簡素図形選択ツール 73… オーヴァル 74… クラウド 75… トライアングル 76… カスタム図形 77… レフト 78… ライ
ト 79… アップ 80… ダウン 81… プレイン 82… スラント 83
… ポイント 84… ベヴェル 87… イン 88… アウト 90… 配色 92… スクローラ 100… パネル 105… ページスライダ 110… 色
パレットツール 111… 境界選択ツール 120… 青ツール 121… 赤
スライダ 122… 緑スライダ 123… 青スライダ 130… 色相・彩度
・輝度ツール 131… 色相スライダ 132… 彩度スライダ 133… 輝
度スライダ 140… 赤・緑・青テキスト領域ツール 141… 赤テキスト領
域 142… 緑テキスト領域 143… 青テキスト領域 150… スライダ 152… 透明度スライダー 160… シンプル画像選択ツール 161… リスト 170… シンプル事象編集ツール 171… リスト 180… テキスト
スタイルエディタ 182… フォントファミリー選択リスト 183… スクローラ 184… ラジオボタン 185… ラジオボタン 187… 無線ボタン 189… ボタン 200… テキストスクローラ 201… 上下ボタン 203… スライダ 204… トラフ 210… 描画ツール 211… 描画領域 212… ボックス 213… オ
ーバル 214… ボックス 215… 直角三角形状 216… ボックス 2
17… ボタン 218… ボタン 219… 正面移動ボタン 220… 移動ボ
タン 221… 削除ボタン 222… 移動ボタン 223… 変更ボタ 22
4… 回転ボタン 225… ボタン 226… 全パンボタン 227… 拡大ボ
タン 228… ボタン 229… ボタン 230… ボタン 240… テキス
ト領域 250… 複数記録ビュー 252… 列 254… 欄 256… 列 257… 能動ボタン 258… ボタン 270… 単一記録ビュー 272…
左列 274… 右列 280.300… ラジオボタン 302… 単一記録ビ
ュー 304… 他の目的物 306… 他のボタン
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE,TR),OA(BF ,BJ,CF,CG,CI,CM,GA,GN,GW, ML,MR,NE,SN,TD,TG),AP(GH,G M,KE,LS,MW,MZ,SD,SL,SZ,TZ ,UG,ZW),EA(AM,AZ,BY,KG,KZ, MD,RU,TJ,TM),AE,AL,AM,AT, AU,AZ,BA,BB,BG,BR,BY,CA,C H,CN,CR,CU,CZ,DE,DK,DM,EE ,ES,FI,GB,GD,GE,GH,GM,HR, HU,ID,IL,IN,IS,JP,KE,KG,K P,KR,KZ,LC,LK,LR,LS,LT,LU ,LV,MA,MD,MG,MK,MN,MW,MX, NO,NZ,PL,PT,RO,RU,SD,SE,S G,SI,SK,SL,TJ,TM,TR,TT,TZ ,UA,UG,US,UZ,VN,YU,ZA,ZW Fターム(参考) 5B069 AA01 BA03 BB16 FA01 JA02 5E501 AA02 BA20 CA03 CB09 EA10 EA12 FA03 FA04 FA13 FA14 FA23 FA42

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 実質的に単一の画面を構成する様々な項目を表示するための
    デスクトップ表示画面と、 前記単一の画面上に表示される各々の項目が活性要素であり、前記単一の画面
    に描かれ、そして前記全項目が前記単一の画面から独立していない前記単一の画
    面上に表示される1以上の活性要素と、 前記1以上の活性要素で操作可能であり、前記1以上の活性要素の特性をユー
    ザが変えることが可能な構成ツールと、 オブジェクトの単一の記録ビュー、もしくは同じオブジェクトのグループの複
    合記録ビューを表示するように、活性要素を発生することが可能で、前記単一の
    記録ビューと前記複合記録ビューとは、半自動的に発生されるビュージェネレー
    タと、を具備するグラフィックユーザインタフェース。
  2. 【請求項2】 前記1以上の活性要素は、単一の要素、親要素、子要素もし
    くはこれら親要素と子要素との両方である請求項1に記載のグラフィックユーザ
    インタフェース。
  3. 【請求項3】 前記親要素は、1以上の子要素を有する請求項2に記載のグ
    ラフィックユーザインタフェース。
  4. 【請求項4】 2以上の子要素は、互いに重なり合わされるように調節され
    る請求項3に記載のグラフィックユーザインタフェース。
  5. 【請求項5】 1以上の子要素は、前記親要素の境界の外側を移動可能であ
    る請求項5に記載のグラフィックユーザインタフェース。
  6. 【請求項6】 前記1以上の活性要素は、ユーザによって選択可能な活性外
    形部分を有する請求項1に記載のグラフィックユーザインタフェース。
  7. 【請求項7】 前記活性外形部分は、ユーザによって変更可能な0以上の境
    界を有する請求項6に記載のグラフィックユーザインタフェース。
  8. 【請求項8】 前記子要素のいくらかは、その親要素のはっきりとした境界
    の外側を再計測され得る請求項3に記載のグラフィックユーザインタフェース。
  9. 【請求項9】 色選択ツールをさらに具備する請求項1に記載のグラフィッ
    クユーザインタフェース。
  10. 【請求項10】 スクリーン上に表示されたものすべてが活性要素であるグ
    ラフィックユーザインタフェースを供給する方法であって、 表示画面は、実質的に単一の画面を構成するコンピュータ用表示画面を供給す
    ることと、 前記1以上の活性要素が1以上の単一の活性要素、ラベルの活性要素、文字の
    活性要素、及びボタンの活性要素である前記表示画面に1以上の活性要素を描画
    することであって、この描画する工程は、 前記1以上の活性要素のそれぞれに対し、最初の矩形の大きさを供給するこ
    とと、 前記1以上の活性要素のそれぞれの中に、活性外形部分を供給することとを
    有することと、 前記1以上の活性要素のそれぞれが、ユーザによって動かされ、再計測され、
    並びにバッチ処理が行われる前記単一の画面上に描くのを可能にすることとを具
    備する方法。
  11. 【請求項11】 前記描画する工程は、前記1以上の活性要素のそれぞれが
    親要素と子要素であることを可能にすることをさらに有する請求項10に記載の
    方法。
  12. 【請求項12】 前記描画する工程は、前記1以上の活性要素のそれぞれに
    対し、活性要素構成パネルを供給することをさらに有する請求項10に記載の方
    法。
  13. 【請求項13】 前記描画する工程は、前記1以上の子要素が互いに重なり
    合うのを可能にすることをさらに有する請求項11に記載の方法。
  14. 【請求項14】 前記描画する工程は、前記1以上の子要素が前記親要素の
    境界の外側で動くのを可能にすることをさらに有する請求項11に記載の方法。
  15. 【請求項15】 スクリーン上に表示されたものすべてが活性要素であり、
    非活性要素が、前記スクリーンから独立していないグラフィックユーザインタフ
    ェースを供給する方法であって、この方法は、 表示画面が、実質的に単一の画面を構成するコンピュータ用表示画面を供給す
    るための表示手段と、 前記1以上の活性要素があるものからあるものへ(any−to−any)の
    データベース、もしくは自動ビュージェネレータによってあらかじめ定義され、
    1以上の単一の活性要素、ラベルの活性要素、文字の活性要素、並びにボタンの
    活性要素である前記表示画面に1以上の活性要素を描画する描画手段で、この描
    画する工程は、 前記1以上の活性要素のそれぞれに対し、最初の矩形の大きさを供給するた
    めの手段と、 前記1以上の活性要素のそれぞれの中に活性外形部分を供給するための手段
    とを有する描画手段と、 前記1以上の活性要素のそれぞれに、ユーザによって動かされ、再計測され、
    並びにバッチ処理を行わせるための手段とを具備する方法。
  16. 【請求項16】 コンピュータのためのコンピュータプログラム製品であっ
    て、このプログラム製品は、 コンピュータ可読プログラムコード手段を有するコンピュータの可読記憶媒体
    であって、前記コンピュータのスクリーン上に表示されたものすべてが活性要素
    で、かつ非活性要素が前記スクリーンと独立しているグラフィックユーザインタ
    フェースを供給するための前記媒体に収録され、前記コンピュータ可読プログラ
    ムコード手段は、 前記表示画面が実質的に単一の画面を構成するコンピュータ表示画面を供給
    する効果をを前記コンピュータにもたらすためのコンピュータ可読プログラムコ
    ード手段と、 前記1以上の活性要素が1以上単一要素、ラベルの活性要素、文字の活性要
    素、並びにボタンの活性要素である前記表示画面に1以上の活性要素を描画する
    効果をコンピュータにもたらすコンピュータ可読プログラムコード手段であって
    、前記描画する工程は、 前記1以上の活性要素のそれぞれに対し、最初の矩形の大きさを供給する
    効果を前記コンピュータにもたらすためのコンピュータ可読プログラムコード手
    段と、 前記1以上の活性要素のそれぞれの中で、活性外形部分を供給する効果を
    前記コンピュータにもたらすコンピュータ可読プログラムコード手段とを備える
    描画手段と、を有するコンピュータ可読プログラムコード手段と、を有するコン
    ピュータのためのコンピュータプログラム製品と、 前記単一の画面上に描かれた前記1以上の活性要素のそれぞれに、ユーザによ
    って動かし、再計測し、並びにバッチ処理を行わせる効果を前記コンピュータに
    もたらすためのコンピュータ可読プログラムコード手段と、を具備するコンピュ
    ータのためのコンピュータプログラム製品。
  17. 【請求項17】 前記1以上の活性要素のそれぞれが親要素と子要素である
    ことを可能にすることの効果を、前記コンピュータにもたらすための前記プログ
    ラム製品内にコンピュータ可読プログラム手段を具備する請求項16に記載のプ
    ログラム製品。
  18. 【請求項18】 前記親要素が1以上の子要素を備えることを可能にする効
    果を、前記コンピュータにもたらすための前記プログラム製品内に、コンピュー
    タ可読プログラム手段をさらに具備する請求項17に記載のプログラム製品。
  19. 【請求項19】 前記1以上の子要素が互いに重なり合うことを可能にする
    効果を前記コンピュータにもたらすための前記プログラム製品内に、コンピュー
    タ可読プログラム手段をさらに具備する請求項18に記載のプログラム製品。
  20. 【請求項20】 前記親要素の境界の外側で1以上の子要素が動くのを可能
    にする効果を前記コンピュータにもたらすための前記プログラム製品内に、コン
    ピュータ可読プログラム手段を具備する請求項18に記載のプログラム製品。
JP2001536685A 1999-11-12 2000-11-13 グラフィックユーザインタフェース Pending JP2003529818A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16488499P 1999-11-12 1999-11-12
US60/164,884 1999-11-12
PCT/US2000/031351 WO2001035217A2 (en) 1999-11-12 2000-11-13 Graphical user interface

Publications (1)

Publication Number Publication Date
JP2003529818A true JP2003529818A (ja) 2003-10-07

Family

ID=22596510

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2001536684A Pending JP2003514300A (ja) 1999-11-12 2000-11-13 任意数成分対任意数成分対応コンピュータシステム
JP2001536685A Pending JP2003529818A (ja) 1999-11-12 2000-11-13 グラフィックユーザインタフェース

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2001536684A Pending JP2003514300A (ja) 1999-11-12 2000-11-13 任意数成分対任意数成分対応コンピュータシステム

Country Status (9)

Country Link
EP (2) EP1247174A2 (ja)
JP (2) JP2003514300A (ja)
AU (2) AU1611301A (ja)
CA (2) CA2359997A1 (ja)
IL (2) IL144319A0 (ja)
NZ (1) NZ512939A (ja)
RU (2) RU2001122574A (ja)
WO (2) WO2001035217A2 (ja)
ZA (1) ZA200106526B (ja)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1627284B1 (en) 2003-05-23 2018-10-24 IP Reservoir, LLC Intelligent data storage and processing using fpga devices
US9715678B2 (en) 2003-06-26 2017-07-25 Microsoft Technology Licensing, Llc Side-by-side shared calendars
US7707255B2 (en) 2003-07-01 2010-04-27 Microsoft Corporation Automatic grouping of electronic mail
US8146016B2 (en) 2004-08-16 2012-03-27 Microsoft Corporation User interface for displaying a gallery of formatting options applicable to a selected object
US7703036B2 (en) 2004-08-16 2010-04-20 Microsoft Corporation User interface for displaying selectable software functionality controls that are relevant to a selected object
US8255828B2 (en) 2004-08-16 2012-08-28 Microsoft Corporation Command user interface for displaying selectable software functionality controls
US7895531B2 (en) 2004-08-16 2011-02-22 Microsoft Corporation Floating command object
US9015621B2 (en) 2004-08-16 2015-04-21 Microsoft Technology Licensing, Llc Command user interface for displaying multiple sections of software functionality controls
US7747966B2 (en) 2004-09-30 2010-06-29 Microsoft Corporation User interface for providing task management and calendar information
US8239882B2 (en) * 2005-08-30 2012-08-07 Microsoft Corporation Markup based extensibility for user interfaces
US8627222B2 (en) 2005-09-12 2014-01-07 Microsoft Corporation Expanded search and find user interface
US9727989B2 (en) 2006-06-01 2017-08-08 Microsoft Technology Licensing, Llc Modifying and formatting a chart using pictorially provided chart elements
US7921046B2 (en) 2006-06-19 2011-04-05 Exegy Incorporated High speed processing of financial information using FPGA devices
US7840482B2 (en) 2006-06-19 2010-11-23 Exegy Incorporated Method and system for high speed options pricing
US8326819B2 (en) 2006-11-13 2012-12-04 Exegy Incorporated Method and system for high performance data metatagging and data indexing using coprocessors
US7660793B2 (en) 2006-11-13 2010-02-09 Exegy Incorporated Method and system for high performance integration, processing and searching of structured and unstructured data using coprocessors
US8762880B2 (en) 2007-06-29 2014-06-24 Microsoft Corporation Exposing non-authoring features through document status information in an out-space user interface
US8484578B2 (en) 2007-06-29 2013-07-09 Microsoft Corporation Communication between a document editor in-space user interface and a document editor out-space user interface
US7444347B1 (en) 2007-11-16 2008-10-28 International Business Machines Corporation Systems, methods and computer products for compression of hierarchical identifiers
US10229453B2 (en) 2008-01-11 2019-03-12 Ip Reservoir, Llc Method and system for low latency basket calculation
US9588781B2 (en) 2008-03-31 2017-03-07 Microsoft Technology Licensing, Llc Associating command surfaces with multiple active components
US9665850B2 (en) 2008-06-20 2017-05-30 Microsoft Technology Licensing, Llc Synchronized conversation-centric message list and message reading pane
US8490026B2 (en) * 2008-10-27 2013-07-16 Microsoft Corporation Painting user controls
US8397222B2 (en) 2008-12-05 2013-03-12 Peter D. Warren Any-to-any system for doing computing
EP2370946A4 (en) 2008-12-15 2012-05-30 Exegy Inc METHOD AND DEVICE FOR HIGH-SPEED PROCESSING OF FINANCIAL MARKET DEFINITIONS
US9046983B2 (en) 2009-05-12 2015-06-02 Microsoft Technology Licensing, Llc Hierarchically-organized control galleries
CA2820898C (en) 2010-12-09 2020-03-10 Exegy Incorporated Method and apparatus for managing orders in financial markets
US11062238B2 (en) * 2011-08-11 2021-07-13 Cerner Innovation, Inc. Recreating a time-ordered sequence of events
US10650452B2 (en) 2012-03-27 2020-05-12 Ip Reservoir, Llc Offload processing of data packets
US11436672B2 (en) 2012-03-27 2022-09-06 Exegy Incorporated Intelligent switch for processing financial market data
US10121196B2 (en) 2012-03-27 2018-11-06 Ip Reservoir, Llc Offload processing of data packets containing financial market data
US9990393B2 (en) 2012-03-27 2018-06-05 Ip Reservoir, Llc Intelligent feed switch
US8997008B2 (en) 2012-07-17 2015-03-31 Pelicans Networks Ltd. System and method for searching through a graphic user interface
US9897986B2 (en) 2013-10-29 2018-02-20 Regal Beloit America, Inc. System and method for enabling a motor controller to communicate using multiple different communication protocols

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
EP0274087A3 (en) * 1987-01-05 1989-11-29 Computer X, Inc. Computer human interface
US5652850A (en) * 1995-06-07 1997-07-29 Ast Research, Inc. Panel creation engine using templates to automatically configure user interface screeen displays
US6272495B1 (en) * 1997-04-22 2001-08-07 Greg Hetherington Method and apparatus for processing free-format data

Also Published As

Publication number Publication date
WO2001035217A2 (en) 2001-05-17
AU1611301A (en) 2001-06-06
IL144319A0 (en) 2002-05-23
CA2359997A1 (en) 2001-05-17
WO2001035217A3 (en) 2002-09-19
JP2003514300A (ja) 2003-04-15
AU1606201A (en) 2001-06-06
WO2001035216A2 (en) 2001-05-17
CA2360067A1 (en) 2001-05-17
ZA200106526B (en) 2004-07-19
IL144314A0 (en) 2002-05-23
WO2001035216A3 (en) 2002-08-08
RU2001122576A (ru) 2003-09-20
RU2001122574A (ru) 2005-09-20
NZ512939A (en) 2004-06-25
EP1259880A2 (en) 2002-11-27
EP1247174A2 (en) 2002-10-09

Similar Documents

Publication Publication Date Title
JP2003529818A (ja) グラフィックユーザインタフェース
US11474665B2 (en) Multiple menus for use with a graphical user interface
US6057836A (en) System and method for resizing and rearranging a composite toolbar by direct manipulation
US7895536B2 (en) Layer editor system for a pen-based computer
US5644737A (en) Method and system for stacking toolbars in a computer display
US5528259A (en) Method and system for multi-dimensional scrolling of displayed data collections in a data processing system
JP3866302B2 (ja) プロセッサーベースの装置の操作方法
US5986657A (en) Method and apparatus for incorporating expandable and collapsible options in a graphical user interface
JPH0756840A (ja) プロセッサーベースの装置の操作方法
EP0635780B1 (en) User interface having clickthrough tools that can be composed with other tools
US6891551B2 (en) Selection handles in editing electronic documents
US5550967A (en) Method and apparatus for generating and displaying visual cues on a graphic user interface
CA2124604C (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
US20080109751A1 (en) Layer editor system for a pen-based computer
US5815151A (en) Graphical user interface
EP0650129B1 (en) Method, system, and computer-readable medium for automatic formatting of user selected text
US6636244B1 (en) Pointing device selection method
JPH07210353A (ja) データ処理システム・グラフィカル・ユーザ・インタフェースをカストマイズする方法及びシステム
JP5066877B2 (ja) 画像表示装置、画像表示方法、およびプログラム
US7703038B1 (en) Methods and apparatus for creating a quick canvas
Rasmussen et al. gCLUTO Documentation
Rasmussen et al. gCluto: A graphical clustering toolkit
CAN Bier et al.
JPH04295924A (ja) 折りたたみページ形式を備えたグラフィカルコンピュータユーザインタフェースにおけるデータ表示方法