JP3849880B2 - 複合文書におけるコンピュータ/ヒューマンインタフェースシステム - Google Patents
複合文書におけるコンピュータ/ヒューマンインタフェースシステム Download PDFInfo
- Publication number
- JP3849880B2 JP3849880B2 JP52556694A JP52556694A JP3849880B2 JP 3849880 B2 JP3849880 B2 JP 3849880B2 JP 52556694 A JP52556694 A JP 52556694A JP 52556694 A JP52556694 A JP 52556694A JP 3849880 B2 JP3849880 B2 JP 3849880B2
- Authority
- JP
- Japan
- Prior art keywords
- document
- frame
- shape
- content
- operator
- 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.)
- Expired - Lifetime
Links
- 150000001875 compounds Chemical class 0.000 title claims description 25
- 238000000034 method Methods 0.000 claims description 32
- 230000004044 response Effects 0.000 claims description 10
- 230000004913 activation Effects 0.000 claims description 4
- 230000008014 freezing Effects 0.000 claims description 2
- 238000007710 freezing Methods 0.000 claims description 2
- 239000002131 composite material Substances 0.000 claims 2
- 239000000470 constituent Substances 0.000 claims 1
- 230000006870 function Effects 0.000 description 20
- 230000008859 change Effects 0.000 description 13
- 230000015654 memory Effects 0.000 description 11
- 238000012545 processing Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 4
- 238000003825 pressing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000010422 painting Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/123—Storage facilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/131—Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/174—Form filling; Merging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Processing Or Creating Images (AREA)
- Digital Computer Display Output (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- User Interface Of Digital Computer (AREA)
Description
本発明はコンピュータとそのユーザとの間のインタフェースに関するものであり、特に、複合文書の生成やその操作をより柔軟に行うことのできるコンピュータ/ヒューマンインタフェースのアークテクチュアに関するものである。
発明の背景
現在、パーソナルコンピュータで使用する多くのアプリケーションは、1つで完全な形をしたプログラム(シングル・モノリシック・プログラム)として記述され、その1つ1つは特定の基本的な機能を実行するように設計されている。例えば、ワードプロセッシングプログラムは、文字の文書を生成・編集するように設計されている。また、文字処理のために設計されている訳ではないが、他の多くのプログラムも、付随的に文字を使用できるようになっている。例えば、帳票プログラムは、その帳票に情報を設定する行と列に、記述子として文字が挿入できるようになっている。同様に、ペインティング、ドローイングプログラムのような図形アプリケーションも、そのペインティング、ドローイングの中にラベルとして文字の使用ができるようになっている。このように、これら種類の異なるプログラムの全てに、文字編集の機能が備えられているが、一方、その文字を編集する方法は互いに異なっている。あるアプリケーションでは、この機能について多くの能力を備えているが、他のアプリケーションではその機能は限定的なものでしかない。その結果、ユーザは同じタスクを実行する、即ち、文字を編集するのにも、異なる種類のアプリケーション各々について、異なる操作方法を学ぶ必要がある。
それ故に、文字編集を行う環境がどうであれ、それが必要とされるときにはどこでも、同じ統一された仕方で、文字のような文書のある1つの要素の生成・編集ができるようなアークテクチュアを備えることが望ましい。そのような考え方のもとに、ワードプロセッシング文書であれ、帳票であれ、図形文書であれ、その他どんな文書であれ、同じ体系のコマンドが文字を編集するために用いられる。ユーザはただ1つのテキストエディタについて学びさえすれば良く、従って、その編集作業はより作業がし易いものになる。
こうした考え方をさらに進めると、文書それ自体の中で、複合文書の要素を編集できることはもっと望ましいことである。本発明においては、2つ以上の異なったプログラムが用いられて、1つの統合された情報の形をとるようになる複合文書について考慮する。例えば、それは、図形プログラムによって生成された図面を含む文字文書であるかもしれない。これら2つのタイプの情報は、互いに相手を包含するような関係をもっている。特に、文字文書は、図形オブジェクトのコンテナとして機能し、図形オブジェクトは文字文書(コンテナ)とともに移動したり、影響を受けたりする。
過去において、この種の複合文書は、2つの異なるアプリケーションを実行させることで、生成される。ワードプロセッシングプログラムは、その文書の文字部を生成するために用いられてきた。別の図形アプリケーションは、図形を生成するために用いられてきた。これら2つのプログラムの生成物を1つの文書に組み込むためには、図形は特殊なデータ様式或は形式で保存され、そのデータ構造の内容が、例えば、カット・ペースト操作によって、ワードプロセッシング文書の中に置かれることになる。しばしば、これら別々の情報を1つの文書にマージすることは、プレゼンテーションマネージャーとして言及される3番目のプログラムによって達成されてきた。
1度、図面がワードプロセッシング文書に組み込まれると、その内容は静的なものになる。もし、その図面を修正する必要があるなら、ユーザは図形プログラムを呼び出し、元々の図面を引出し、その図面をその図形プログラムの実行下で編集する必要がある。その編集が、複合文書の外側でなされると、ユーザはその変更を、その変更がなされたようには見ることができない。その修正された図面は、それから、元々の図面の代わりに、ワードプロセッシング文書に組み込まれなければならない。
種々のプログラムの間での、そのような切り替えの必要を克服するために、複合文書の種々の要素が、複合文書の中で編集できるようにすることが望ましい。このようなやり方を用いれば、時間を節約するのみならず、手順も簡略化でき、ユーザが修正された内容をそのまま見ることができるようになる。
パーソナルコンピュータに関する従来のオペレーティングシステムの別の特徴には、種々のタイプの情報を操作する方法に種々の制約があった。例えば、文書と他の種類のファイルがコンテナに格納され、それらは、アップルコンピュータ株式会社によって提供されているマッキントッシュ・オペレーティングシステムでは“フォルダ”として認識され、マイクロソフト株式会社によって提供されているMS−DOSでは“ディレクトリ”或は“サブディレクトリ”として認識される。フォルダやディレクトリは、文書を含んではいるが、それら自身は文書には組み入れることはできない。
同様に、アプリケーションや文書は、マッキントッシュ・ファインダシステムやマイクロソフトのウインドウズ環境のようなデスクトップメタフォ図形インタフェースでアイコンとして表現される。現在、これらのインタフェースでは、アイコンでの操作方法には制約がある。例えば、アイコンは、フォルダ(サブディレクトリ)に属するデスクトップ或はウインドウにのみ存在する。もし、そのウインドウがフォルダ或はボリューム以外の何か、例えば、文字文書を表現していれば、アイコンをそこに置く事はできない。さらに、ある種のアイコンは、他の特定のアイコン上にしか置く事ができない。例えば、あるアイコンが文書を表現しているなら、それはただ、その文書に属しているアプリケーションを表現するアイコン上にしか置く事ができない。その文書のアイコンは、他の種類のアプリケーションに属しているかもしれない他の種類のアイコン上に置く事はできないのである。
従って、本発明の目的は、あるタスクの実行される環境に係わりなく、そのタスクに関しては一貫性のあるユーザインタフェースが備えられたシステムを提供することである。さらに、種々のタイプのデータ操作についての制約をなくし、これによって、全ての種類の複合文書の生成や編集をより柔軟に行うことができるようにすることも本発明の目的である。
本発明の簡単な説明
これらの目的の追求のため、本発明は、あらゆる異なった種類の情報を伝える要素が、以前は不可能であった方法で文書内で結合可能、また、操作可能になる均一なインタフェースを備える。本発明では、文書はインタフェースの1要素と考えられる。また、そのインタフェースの目的は、ユーザに情報を伝えることであり、その情報、例えば、文字文書や図形文書を編集できるようにすることである。
そのインタフェースの均一性は、以下、タスクを達成する“パート”として言及される基本的構造ブロックを用いる文書を中心としたアーキテクチュアによって備えられる。パートは、2つの基本的な構成要素、即ち、内容と、その内容の操作子で構成される自己完結的な要素である。これら2つの構成要素は、これらがシステムのどこに、例えば、文書の要素に、フォルダに、或は、デスクトップに、存在していようと、常にユーザには利用可能となっている。そのパートの操作子は、そのパートの内容に関して、いかなる種類のエディタやビューワともなり得、もし必要であれば、ユーザによって選択可能となっている。例えば、あるパートの内容が文字であれば、そのパートの構成要素であるエディタは、ユーザが親しんでいるどんなワードプロセッサともなり得る。そのワードプロセッサは、そのパートの文字部分を、その文字部分がどこに組み込まれていようと、編集するのに用いられる。従って、たとえそのパートが文字ではない文書、例えば、帳票などに組み込まれていようと、そのパートの文字部分は、依然として、ユーザが選択したワードプロセッサで編集できる。
この特徴を表わすインタフェースは、重要な固有の性質、即ち、より単純で、同時により強力であるという性質をもっている。この単純性は、ユーザはただ、文字を編集するといった特定のタスクを実行するのに1つの方法だけを学べは良いという事実から来ている。同時に、その文字エディタは十分な機能を備えたモジュールとなり得、それは、現在多くのアプリケーションで見かける能力のないものを置き換えることができるという点で、より強力なものと言える。
パートの2つの基本的な構成要素は、オブジェクト(その固有の内容のために)としてもアプリケーション(その固有の操作子やエディタを備えた結果)としても機能することができる。これらの特徴のために、パートは数多くの機能を備えている。例えば、文書1つ1つは、パートであり、パート1つ1つは1つの文書として振る舞う。このことを説明するために、文字パートは文字を含む文書であり、図形パートは線や円を含む文書である。本発明では、フォルダやデスクトップでさえも、パートを構成し、従って、これらは、以前は文字のような文書のみと結び付けられてきた内容を含むことができる。パートのこの特徴は、フォルダのようなオブジェクトが文書としては機能しない現在利用可能なアプリケーションには存在していない均一性を備えるものとなっている。
パートの別の特徴は、それがコンテナとして機能する、即ち、1つのパートが他のパートを含むことができるという点である。さらに、1つのパートは、それが含む他のパートの種類を制限しない。むしろ、もし、あるパートが他の種類のパートを含むとき、それは、全種類のパートを含むことができる。このパートの特徴は、本発明を、複合文書の生成に関して理想的なアーキテクチュアとしている。1つの文書が複数のパートを含むので、それは自動的に異なる種類の情報を表現する全ての種類のパートを、文書の変更や操作子がなくても、含むことができるようになる。
これらの特徴は、望むような結果を産み出すように異なるパートをアレンジすることで統合される複合文書におけるインタフェースを形造る結果となる。この意味において、本発明のインタフェースは、アプリケーション指向というよりはむしろ、文書中心的である。即ち、従来のアプリケーションプログラムは、パートを形成するように結合されるデータとは分離された本発明のインタフェースにおける役割を備えていなかった。
本発明の別の特徴は、ユーザに対して表現されるパートの方法である。1つのパートは、小さな絵でパートの操作方法を備える1つのアイコンとして表現され、それが全体として操作できるようになっている。例えば、アイコンは、デスクトップ上やウィンドウ間でドラッグされ、ドラッグ操作の間、他のアイコンをドロップする目的ともなり得る。また、パートの内容は、従来のアプリケーションと同様にして、デスクトップ上のウィンドウによって定義された作業領域に拡張される。
パートは、また、アイコンの代わりにフレームとしても表現される。フレームは、パートを表現するディスプレイスクリーンの領域である。アイコンのように、フレームは全体として操作されることが可能なパートへのハンドルを備えている。それらは、デスクトップ上で或はウィンドウ間でドラッグが可能であり、ドラッグ操作でのドロップ先を備えており、ウィンドウにオープンしたり、これをクローズしてフレームに戻すこともできる。しかしながら、アイコンとは異なって、フレームは、パートの内容をみたり適切に修正したりすることができる。
フレームは、それが含むパート、例えば、文書と組み込まれたパートとの間でのインタフェースとして機能するデータ構造である。フレームは、多くの属性から構成され、そのいくつかは、それが含むパートによって制御され、、またいくつかは組み込まれたパートによって制御される。フレームを媒介として、組み込むパートや組み込まれるパートについての操作子は、組み込むパート内でその組み込まれたパートに与えられた空間割り当てを調整することができる。
ユーザインタフェースに関する基本的な構造ブロックとしてのパートを利用することにより、本発明は以前のパーソナルコンピュータアプリケーションでは利用できなかった能力を備えることができる。これらの能力は、これ以降、本発明の好適な実施例を参照して説明する。
【図面の簡単な説明】
図1はコンピュータシステムの基本的な構成要素を示すブロック図である。
図2A及び図2Bは、スクリーンディスプレイの2つの画面であり、パートを1つのフォルダより文書にドラッグしている様子を示している。
図3A及び図3Bは、スクリーンディスプレイの2つの画面であり、フレームのアクティベーションの様子を示している。
図4A及び図4Bは、アクティブフレーム内の選択されたフレームの様子を示す図である。
図5A及び図5Bは、フレーム構造の2つの例を示す図である。
図5C−図5Fは、フレーム属性に関し、組み込まれたパートと組み込むパートとの間で発生する調整の例を示すフロー図である。
図6は、エディタを立ちあげる過程を示すフローチャートである。
図7は、デスクトップと文書との間でのパートのドラッグの手順を示すスクリーンディスプレイである。
図8は、パートをドラッグしたり、ドロップする過程を示すフローチャートである。
図9A−図9C、図10A−図10C、図11A−図11Cは夫々、マテリアルをあるパートから別のパートにコピーする手順を示すスクリーンディスプレイである。
図12は、マテリアルをあるパートから別のパートに置くようにする過程を示すフローチャートである。
図13は、制限されたアクセスをもったパートの様子を示すスクリーンディスプレイである。
図14は、パートビンを示したスクリーンディスプレイである。
詳細な説明
本発明とその発明によって達成される利点の理解を容易にするために、本発明の特徴は、アップルコンピュータ株式会社によって供給されているマッキントッシュ(登録商標)ブランドのコンピュータでの本発明の使用を参照して説明する。しかしながら、関連する技術に通じている人々にとって、本発明の原理は、この特殊なオペレーティングシステム環境にのみに限定的に適用されるものではないことが理解されよう。むしろ、本発明を基礎とする原理は、文書、特に、複合文書のコンパイルや編集のために、均一なインタフェースを備えることが望ましいあらゆる種類のコンピュータのオペレーティングシステムにでも適用可能である。
本発明が採用されるような種類の典型的なコンピュータシステムは、図1のブロック図に示されるものである。そのコンピュータの構造そのものは、本発明のパートを形成しているのではない。ここで、本発明の特徴とそのコンピュータの構造とが協働した方法に関し、後での理解のために、簡単に、コンピュータシステムについて説明する。図1において、そのシステムは、種々の外部周辺装置12が接続されるコンピュータ10を含んでいる。コンピュータ10は、中央処理装置14と、通常、ランダムアクセスメモリ12、リードオンリメモリ18を含むスタティックメモリがインプリメントされたメインメモリ、そして、磁気、或は、光学的ディスク20のような永久記憶装置を含んでいる。CPU14は、内部バス22を経てこれら種々のメモリ1つ1つと交信する。周辺装置12は、キーボードようなデータ入力装置、マウス、トラックボールなどのようなポインティング、或は、カーソル制御装置26を含んでいる。CRTモニタ、LCDスクリーンのようなディスプレイ装置28は、コンピュータ内で処理される情報、例えば、文書の内容の可視化表示を行う。この情報のハードコピーは、プリンタ30或は類似の装置によって備えられる。これら外部周辺装置各々は、CPU14と、そのコンピュータの1つ以上の入出力ポート32によって、交信する。
本発明は、特に、CPU14がキーボード24やカーソル制御装置26によって操作される情報を扱う方法と、操作された情報を表示装置30をとおしてユーザに描写する方法とを制御するシステムに関するものである。本発明の原理を採用したインタフェースの例が、図2Aと図2Bに示されている。これらの図は、作業領域36を定義するデスクトップ34を描写している。また、デスクトップにはメニューバー38が含まれている。作業領域36の中には、2つのウィンドウ40と42がある。左側のウィンドウ40は、フォルダウィンドウであり、種々のパートを表現するアイコンを含んでいる。図2Aに示されているように、3つのアイコン44は文字パートに属し、4番目のアイコン45は図形パートを表現し、他のアイコン46は帳票パートを表現している。6番目のアイコン48は、プレゼンテーションスライドの生成のために用いられるパートを表現するステーショナリアイコンである。図2Aにおいて、右側のウィンドウ42は文字文書を含んでいる。即ち、その文書は文字パート50を含んでいる。この文字パートは、ウィンドウ42内で文字をタイプすることにより、或は、そのウィンドウ内で以前に生成されアイコンで表現されている文字パートをオープンすることにより生成される。
図2Bは、操作の結果を示し、図形アイコン45が左側ウィンドウ40のフォルダから右側ウィンドウ42の文字文書にドラッグされている。図2Aと図2Bに示されたようなデスクトップメタフォーを備えたインタフェースでは知られたことであるが、ドラッギングは、カーソル制御装置26を動作させてデスクトップ上やウィンドウ内でオブジェクトを移動したりコピーしたりする動作のことである。いったん、図形アイコンが文書の中に置かれると、その内容がフレーム52の中に表示される。文書は今や文字要素の他に図形要素を含んでいるのであるから、それは、複合文書として言及されるものである。文字50とフレーム52の中にある図形要素は別々のパートに属しており、これらが集合して文書を作り上げる。前述したように、パートは、内容とその内容の操作子とから構成される自己完結型のエンティティである。これら2つの構成要素は、そのパートがアクセスされたときは、それが、デスクトップのどこに位置していようと、常に利用可能である。従って、図2Aに示すように、図形アイコン45がウィンドウ40のフォルダに位置しているとき、それは、図形要素とその要素についてのエディタとを含むパートを表現している。そのパートがウィンドウ42の文書に移動したとき、その内容もパートとともに移動し、それらの内容のエディタの機能もユーザには利用可能である。
この特徴で重要なことは、パートの内容は、それがどこに位置していようとも常に編集可能、さもなければ、操作可能であるという事実である。従って、図2Bの複合文書において、文字の内容50は、その文書内で、例えば、その文字を始めて生成したときに用いられたと同じワードプロセッサを用いて編集可能である。図形エディタが、フレーム52によって表現されるパートの構成要素として存在しているので、パートの図形要素も適宜に直接編集可能となる。従って、パーソナルコンピュータの以前のアプリケーションとは異なり、ユーザが図形アプリケーションを、例えば、デスクトップ34の別のウィンドウでオープンし、その図形情報を所望の形に編集し、その後、編集された図形をウィンドウ42の文書に移動させる必要はない。むしろ、ユーザは、直接、ウィンドウ42の文書の内容の中で、中間的な過程を組み込むことなく、フレーム52の内容を編集することができる。ユーザは、アプリケーションプログラムではなく、むしろ、文書の内容に注意を集中することができ、周辺の文書によって備えられた文脈を利用することができる。
それ故に、パートとは、基幹システム技術で自律性のある自己完結的なオブジェクトである。それは、どんな種類のソフトウェアエンジンでも環境でも使用することができ、ユーザはパートについて特別なエディタの操作を学ぶ必要はない。そのカテゴリーのパートのエディタが基幹システムで表現されている限り、ユーザは、そのパートの能力を十分に利用することができる。さらに、もし、文字部分が特別なテキストエディタ(ワードプロセッサ)で生成されたなら、ユーザはただそのテキストエディタをそのパートに用いるように限定されている訳ではない。もし、そのユーザが異なるワードプロセッサのコマンドにより親しんでいるなら、そのプロセッサを、コンピュータシステムでの全ての文字パートに関する好適なエディタとして指定できる。
パートは、文書やその内容にのみ限定されない。むしろ、システム内のどのオブジェクトもパートを構成する。従って、ウィンドウ40のフォルダは、パートであり、その内容はアイコン44−48である。同様に、デスクトップ34それ自身もパートであり、ダイヤログボックスや他のユーザインタフェースオブジェクトも同様である。
フレームとアイコンは、パートの2者択一的な表示である。ユーザは、パートのフレーム表示とアイコン表示とを切り替えることができ、これは、適当なキーボードからのコマンドやメニューコマンドによってなされる。もし、文書が大きく、例えば、数ページにも及ぶなら、その一部分だけしかフレームに表示されない。それゆえ、アイコンのようなフレームは、ウィンドウ内にオープンすることができ、これによって、例えば、これをスクロールして大きなパートの全ての内容を見る事ができ、ウィンドウ内で利用可能な機能、例えば、拡大、を用いて編集することができる。同様に、そのパートはウィンドウ表示からクローズしてフレーム表示に戻すこともできる。フレームは、その内容を適宜編集することができるという点で、アイコンと異なる。フレームはまた、1つのフレーム、或は、複数のフレームがウィンドウ内に存在するので、ウィンドウとも異なる。ウィンドウは、オブジェクトの遷移的なビューであり、それは、ただパートが編集されたり、検証されたりするときにのみ、オープンされたままになる。これに対して、フレームは、パートの内容の永久的な表示方法である。
パート、それはアイコン或はフレームの表示形式をとっているが、それは、他のパートのコンテナとしても働く。図2Bの例において、文字50はフレーム内に存在するが、そのフレームの境界は、ウィンドウ42のそれと同じである。この比較的大きなフレームは、図形パートに関する比較的小さなフレーム52を含んでいる。その文字部分は、ウィンドウの最外部にあるので、それば、“ルートパート”とラベルが付される。一般的にいって、そのルートパートは、ウィンドウに関する基本的な編集方針を確立する。
ルートパートは、図2Aで示されるアイコン48のような、ステイショナリアイコンによって生成される。一般に、ステイショナリアイコンは、予め定義されたパートを表現し、物理世界におけるペーパ台についてのメタフォーとして機能する。新しい文書を生成したいとき、人はペーパ台より未使用の用紙を一枚むしりとり、文書の内容、例えば、単語や図面などをその上に置く。ステイショナリアイコンも同様の役割を果たすのである。ユーザが新しい文字文書を生成したい場合、文字文書ステイショナリアイコンが、それをダブルクリックすることによって、オープンされる。これに応答して、そのステイショナリアイコンは、それ自身のコピーを生成し(或は、“むしりとり”)、ウィンドウやフレーム内にそれをオープンする。このコピーは、最初は何の内容も入っていないブランクか、或は、レターヘッドや会社のロゴのような所定の情報をもった普通のパートである。それから、ユーザは、その文書に付加的な内容、例えば、文字をいれる。
ステイショナリそれ自身は、ウィンドウしてもフレームとしてもオープンはされず、ただアイコンとして存在する。はぎとられたコピーのみが、オープンするのである。従って、ステイショナリアイコンが文書内にドラッグされた場合、それ自身をフレーム内にオープンするというよりむしろ、コピーがむしりとられ、文書内に置かれ、そのコピーがフレーム内でオープンするのである。ステイショナリアイコンそれ自身は、移動前に占めていた位置に戻る。これによって、ステイショナリが間違って文書に挿入されたり、或は、失われていまうことを防いでいる。
フレームは、コンテナとして機能するのであるから、それはウィンドウの良く知られた性質を示すことになる。例えば、ユーザがフレーム内に含まれる図形オブジェクトのようなパートを選択すると、そのパートを含むフレームは、アクティブになる。パートがアクティブであると、それはコマンドやキーボードのイベントを受け付け、そのメニューと他のユーザインタフェースオプションが表示される。フレームのアクティベーションの例が図3Aと図3Bに示されている。図3Aは、文字と図形部分とを有する複合文書を含むウィンドウ54を有したデスクトップを示す。この複合文書において、文字はその文書のルートパートを形成する。図3Aの例では、その文字の一部56が選択され、反転表示されている。この場合、選択されたパートを含むフレームは、ウィンドウ自身の境界に接している。デスクトップのメニューバー58は、文字を編集するために適切なコマンドを含んでいる。
図3Bは、図形要素、即ち、三角形60が選択された例を示している。その図形要素を含むフレームが、今度はアクティブになり、その境界線は、点線62によって示されている。そのアクティブフレームが今回は図形パートであるので、メニューバー58のコマンドは、図形の内容を編集するのに適切なものに変えられる。さらに、パレット64がデスクトップに表示され、アクティブフレームの図形の内容を編集するのに必要なツールを備える。
フレームをアクティベートすることに加え、ユーザは、また、フレームを選択しても良い。そのフレーム選択は、例えば、フレームをアクティベートしてその境界が見えるようにし、その後、カーソルのポインタをフレームの境界上に位置させる一方、カーソル制御装置のボタンを押してすることで達成される。図4は、図形の内容と文字の内容の両方を含むフレーム66を図示している。そのフレームの境界68は、点線によって示され、それがアクティブフレームであるという事実を示している。そのアクティブフレームの中に、文字の内容を含むフレーム70がある。このフレームは、カーソル72のポインタをフレームの境界73の上に位置させる一方、カーソル制御装置のボタンを押すことによって選択される。フレーム72が選択されたという事実を示すために、選択フレーム72の境界73は、アクティブフレーム66のそれとは異なる外観となる。例えば、その境界は、図4にしめすように、広くなる。さらに加えて、サイズ変更ハンドル74が備えられ、これを用いてフレームの形やサイズをよく知られた方法で変化させることができる。
一般に、パートの内容の一部或はいくつかが選択されたときはいつでも、選択された要素を含む最小のフレームがアクティブフレームとなる。従って、フレーム70内の1つのワードが、例えば、カーソルをそのワードに位置付けしてカーソル制御ボタンをクリックすることによって、選択されると、フレーム70はその状態が選択よりアクティブへと変化する。同時に、フレーム66の境界は目には見えなくなる。なぜなら、このフレームは、もはやアクティブでもなければ、選択されている訳でもないからである。逆に、もしフレーム66が、その境界68上をクリックすることで選択されたなら、境界73が消滅し、境界68が現れるようになり、フレーム66を含むフレーム(或はウィンドウ)の境界(図4には示されていない)が高輝度表示になって、それがアクティブであることを示す。
図3A、図3B、図4の例において、フレームは矩形であるように示されている。さて、この形はたいていの種類のパートの内容を表示するためには好ましいものであるが、フレームの形は、矩形に限定される必要はない。むしろ、そのフレームは、その表示内容に適するようにどんな形をとっても良い。
フレームは、パートそれ自身の要素ではない。むしろ、フレームは、別のデータ構造であり、それは、コンテナパートと組み込まれるパートとの間のインタフェースとして機能する。フレーム各々は、多くの特徴的な属性を有している。その属性は、種々の“シェイプ”として示される。これらのシェイプ各々は、コンテナパートと組み込まれるパートとによって共有されるある文書の内容を定義する領域の幾何学的な記述を表現している。そのシェイプのいくつかは、コンテナパートによって制御され、一方、他のものは組み込まれるパートによって決定される。一般に、これらの種々のシェイプは、文書の文章の座標空間の任意の領域を表現できる。この点、フレームのシェイプは、隣接領域と同様に分離領域を表現できる。
フレームの種々の特徴的なシェイプを、図5Aと図5Bとを参照して説明する。これらの図において、左側の図は、文字(ルートパート)と三角形によって示される図形パートとを含む複合文書を表わしている。一方、右側の図は、図形パートに関するフレームのシェイプ属性を示している。
フレームの特徴的な属性の1つは、フレームシェイプである。そのシェイプは、コンテナパートによって決定され、その組み込まれたパートにそのレイアウトを示すために用いる幾何学的な領域を記述する。図5Aと図5Bとにおいて、フレームシェイプは、最外部の実線の境界75によって示されている。そのシェイプによって示される領域は、スケーリングやライン切断や、組み込まれたパートに関するエディタによってなされねばならないその他類似のレイアウト決定に影響する。ただ、コンテナパートだけが直接にフレームシェイプを変更できる。このシェイプがコンテナパートによって変更されたとき、通知が組み込まれたパートに対してなされ、適切な変更が組み込まれたパートの内容においてもなされるようにしている。
フレームの2番目の特徴的な属性は、そのクリップシェイプである。これは、図5Aと図5Bの斜線が施された境界76によって示されている。そのクリップシェイプは、その組み込まれたパートに、そのパートの内容が記述可能な幾何学的な領域を記述する。図5Aの例において、クリップシェイプは、フレームシェイプと共存する。しかしながら、図5Bの例では、三角形の図形パートの左下側の部分は、表がオーバレイしている。従って、図形パートに関するクリップシェイプ76は、その表によって覆われてしまう領域を除外している。クリップシェイプは、コンテナ、即ち、図5Aと図5Bで示されている例のルートパートを形成する文字文書によって決定される。ただ、そのコンテナだけがクリップシェイプを変更でき、それがなされたときには、コンテナはその変更を組み込まれたパートに通知する。
フレームのさらに別の特徴的な属性は、図5Aと図5Bに実線77で示されている使用中シェイプである。このシェイプは、組み込まれたパートによって決定され、コンテナに対して、その組み込まれたパートによって実際に使用されている幾何学領域のパートを記述する。このシェイプは、必要に応じてフレームシェイプのサブセットになる。コンテナパートは、使用中シェイプに引張ってくる事が許されているのではなく、使用中シェイプの外側の領域、それがたとえ、クリップシェイプやフレームシェイプの内側であっても、その領域に引張ってくることは自由である。その組み込まれたパートが使用中シェイプを変更でき、それがなされたときには、その組み込まれたパートはその変更をコンテナパートに通知する。
フレームの特徴的な属性である4番目のシェイプは、そのアクティブシェイプであり、これは、図5Aと図5Bの影が施された線78によって示されている。このシェイプは、組み込まれたパートによって決定され、そのコンテナパートに対して、その組み込まれたパートがカーソル制御入力のような幾何学的に関連したイベントを受け付ける幾何学的な領域を記述する。イベントがその領域で発生したときにはいつでも、コンテナパートはそのイベント自身に応答するのではなく、そのイベントをその組み込まれたパートに伝えねばならない。しかしながら、そのコンテナパートは、その組み込まれたパートのアクティブシェイプの外側の領域で発生するイベントには自由に応答する。
フレームのもう1つの属性は、そのグループタグである。フレームのグループタグは、数字のような識別子であり、それは、与えられたコンテナでの関連するフレームセットをユニークに識別する。コンテナパートは、そのグループタグを用いて、そのグループの種々のフレームの幾何学的な関係を制御する。
そのフレームは、組み込むパートとその組み込まれたパートが、互いの内部制約をできる限り知らないようにして、文書構造を互いに調整できるようにしている。組み込むパートとその組み込まれたパートとの間で発生する調整の例は、図5C−図5Fに示されている。図5Cの例では、フレームシェイプは、コンテナで変更されている。この手順は、ユーザからのコマンドで始まり、例えば、フレームのサイズを変更する。ステップ501では、組み込むパートは、その組み込まれたパートのために、新たなフレームシェイプを決定し、その新しいシェイプのフレーム(FRAME)を通知する。これに応じて、ステップ502では、その組み込まれたフレームは、組み込むフレームの座標空間からのシェイプを組み込まれたフレームのそれに変換する。この新しいシェイプは、フレームシェイプとして格納され、その組み込まれたパート(PART)に伝えられる。ステップ503では、その組み込まれたパートは、自分自身を新しいフレームシェイプに調整する。例えば、テキストエディタが文字のレイアウトのためのマージンをリセットするかもしれない。もし、使用中シェイプ、及び、アクティブシェイプがフレームシェイプのマージンと異なっているならば、その組み込まれたパートもまた、これら新しいシェイプを計算する。その時に、制御は組み込むパートに戻り、ステップ504では組み込むパートは、新しいフレームシェイプに対応するためにフレーム(FRAME)のクリップシェイプを変更し、その新しいクリップシェイプのフレームを通知する。
図5Dは、組み込まれたパートが新しいフレームシェイプを要求するときに発生する手順を図示している。この要求は、内容が正しくレイアウトされるために付加的な空間を必要とする組み込まれたパートの内容の編集結果として、もたらされるかもしれない。ステップ505では、組み込まれたパートが新しいフレームシェイプを必要とするという決定がなされ、新しいシェイプのための表示フレームに要求が伝えられる。古いシェイプは、後で必要とされる場合に備えて、組み込まれたパートによって保存される。ステップ506では、表示フレームは、組み込まれたパートの座標空間からのシェイプをコンテナフレームの座標空間でのものに変換し、その要求を組み込むパートに伝える。ステップ507では、コンテナパートは、その要求への返答方法を決定する。それは、望まれた形に対する要求を認めるかもしれないし、或は、より小さい形が要求されていると決定するかもしれない。フレームシェイプが一度決定されたなら、そのフレームに関するクリップシェイプもまた変形され、その許されたシェイプに関して、通知がフレームに与えられる。ステップ508では、表示フレームは、組み込むフレームの座標でのシェイプを組み込まれたフレームでのシェイプに変換する。その新しい形は、フレームシェイプとして保存され、そのフレームシェイプは、組み込まれたパートに伝えられる。ステップ509では、組み込まれたパートは、その表示フレームの使用シェイプとアクティブシェイプを変更して、新しいフレームシェイプに合わせるようにする。
図5Eは、コンテナパートがクリップシェイプを変更する場合の手順を図示している。図5Bにおいて、例えば、クリップシェイプを変更する必要は、表示フレームによって囲まれた領域の一部が異なるパートの内容に重なるようになってしまうようにするといったユーザの動作の結果として、発生するかもしれない。ステップ510では、組み込むパートは、表示フレームのために新しいクリップシェイプを決定し、この新しいシェイプのフレームを通知する。ステップ511では、表示フレームは、その通知を組み込まれたパートに伝える。これに応答して、ステップ512では、組み込まれたパートは、その内容が適切にレイアウトされるように変更することで、それ自身を新しいクリップシェイプに合わせる。
図5Fは、組み込まれたパートが、その使用中シェイプを変更する場合の手順を図示している。再び、そのような変更の必要は、ユーザによってそのパートの内容を編集するときに、発生するかもしれない。ステップ513では、組み込まれたパートは、新しい使用中シェイプをその表示フレームのために取り上げ、この新しいシェイプのフレームを通知する。ステップ514では、その表示フレームは、組み込むパートにその通知を伝える。これに応答してステップ515では、組み込むパートは、それ自身を新しい使用中シェイプに合わせる。例えば、組み込むパートは、その内容がレイアウトされる仕方を変更して、新しいシェイプにそって以前とは異なるようにするかもしれない。
従って、フレームは、組み込まれたパートと組み込むパートとの間での必要とされる空間割り当てを調整するデータ構造である。種々のシェイプの属性を用いることで、フレームは、その組み込むパートや組み込まれたパートが、各々のパートが他のパートの内容や振る舞いに関しての詳細な情報をもつ必要なく、効率的に利用可能な空間を利用できるようにしている。従って、複合文書が非常に柔軟に組み合わせられるのである。
パートに関するエディタや他の操作子は、従来のコンピュータシステムにおけるアプリケーションプログラムに類似している。パートの内容を表示し、そして、適切な場合には、その内容を変更修正するユーザインタフェースを与えるために必要な機能を提供しているのはソフトウェア要素である。それには、メニュー、コントローラ、ツールパレット、他のインタラクション技術が含まれるかもしれない。他のパートを含むことが可能なパートに関し、そのエディタは、その内容が表示される場合には、含まれるパートを考慮する。例えば、テキストエディタは、そのパートの内容を包み込み、それが組み合われた図形パートの使用中シェイプでは現れないようにする。
従来のアプリケーションで提供される機能を用いるために、プログラムが立ちあげられるか或はブートされねばならない。言い換えると、それは、システムのアクティブなメモリ、例えば、RAM16に格納されている必要がある。同じような方法で、パートに関するエディタは、システムのメモリ或はCPUがアクセス可能なメモリで実行されねばならない。これを行うために、エディタは、システムにインストールされている必要がある。例えば、それは、ハードディスク20のフォルダに格納され、関連パートがアクセスされたときに呼び出される。システム資源を浪費しないために、全てのインストールされたエディタは、常時システムメモリにはロードしなくとも良い。むしろ、それらは必要な時に、立ちあげることができる。例えば、パートに関するエディタは、そのパートが文書内にドラッグされたとき、その時が編集機能がおそらく必要な時であるので、立ちあげればよい。
エディタや他の操作子を立ちあげる過程は、図6のフローチャートに図示されている。その図を参照して説明すると、ステップ601では、システムはアクティベートされるべきパートを探す。このステップのアクセスは、マウスボタンが押されたときにいつでも生成されるイベントフラグに応答してなされる。或は、このアクセスは、スクリプトでのステップでも良い。一度、パートのアクティベーションが検出されると、システムはそのパートに関連するエディタを識別する(ステップ602)。この点、夫々のパートは、それに関連した一定の特性を有している。これらの内の1つは、そのパートに関するエディタを指示するポインタである。2つの他の特性は、例えば、それが文字であるか、図形であるか、帳票であるかなどの、そのパートのカテゴリと、そのタイプである。タイプは、そのパートの内容に関するフォーマットの指標となる。例えば、1つの文字パートは、それが同じカテゴリ(文字)に属していても、“ワードプロセッサA”タイプのもので有り得るし、別のタイプは“ワードプロセッサB”で有り得る。しばしば、パートのタイプは、パートの内容で用いられた最後のエディタによって決定される。一般的に言って、カテゴリとは、1セットのパートのタイプであり、カテゴリが、与えられたパートに適用可能であるパートエディタやビューワのセットを決定する。パートの特性は、その内容とともに保存される。例えば、全てのパートの特性は、そのパートの内容とともに格納される“特性シート”に含まれている。
一度、エディタ(或はパートのタイプ)がステップ602で認識されたなら、システムはそのエディタが既にメモリ上で実行しているかどうかを判別する(ステップ603)。もし、そうであれば、システムはメインルーチンに戻り、ユーザからのさらなる動作を待つ。もし、エディタがまだ実行していないなら、システムはステップ602で識別されたエディタがシステムにインストールされているかどうかをチェックする(ステップ604)。もし、ステップ602で識別されたエディタがシステムにインストールされているなら、そのエディタはステップ605で立ちあげられ、パートの内容を編集できるようにされる。
しかしながら、パートエディタが現在システムにインストールされていないという場合も有り得る。この場合、ステップ604での決定は“ネガティブ”となり、これに応答して、システムはユーザがパートのカテゴリに関して好適なエディタを選択したかどうかを判別する(ステップ606)。即ち、ユーザは、好適な、或は、デフォルトのエディタをパートの夫々異なるカテゴリに関して選択することができる。従って、もし、ユーザが特定のワードプロセッサの機能コマンドに良く親しんでいるなら、そのプロセッサが文字カテゴリの全てのパートに関しての好適なテキストエディタとして選択される。もし、好適なエディタが選択されたなら、システムはその好適なエディタがシステムにインストールされているかどうかをチェックする(ステップ607)。そして、もし、そうであれば、ステップ608でそれは立ちあげられる。
もし、好適なエディタが指定されなかったなら、或は、その好適なエディタがシステムに存在しなかったなら、ステップ609では、パートのそのカテゴリについて何かのエディタがシステムに存在するかどうかのチェックがなされる。もし、何のエディタもなければ、適切な警告がユーザに与えられ(ステップ610)、そして、システムはバックグラウンドルーチンに戻る。もし、そのカテゴリについて1つ以上のエディタが利用可能であれば、それらはリストアップされ、ユーザはその1つを選択するように促される(ステップ611)。ユーザによるその選択に応答して、選択されたエディタが立ちあげられ(ステップ612)、それは、パートのそのカテゴリについての好適なエディタとして保管される(ステップ613)。システムは、それから、バックグラウンドルーチンに戻り、ユーザからのさらなる入力を待つ。
ユーザは、いつでも、例えば、適切なメニューコマンドを通して、パートについて指定されたエディタを変更する機会が与えられている。このコマンドを実施することによって、ユーザは、パートの特性の1つとして格納されているポインタを、システムにインストールされている異なるエディタの位置に変えるようにできる。メニューコマンドは、また、ユーザが、例えば、文書レベル(文書の全ての文字パートは同じエディタをもつ)やグローバルレベル(システムにわたる)といった異なるレベルで好適なエディタを選択できるように備えられている。ユーザがメニューにアクセスし、パートのエディタを選択したり、変更したりするときにはいつでも、パートのカテゴリについて適切なインストール済みのエディタのセットだけがユーザに選択させるために表示される。
もし望むなら、システムはメモリ上で実行しているエディタ各々が使用された最新時刻の記録を保存できる。もし、エディタが所定時間の間に使用されなかったなら、システムは自動的にそのエディタをメモリから消去し、これによってシステム資源の浪費を防いでいる。また、文書がクローズされたとき、その文書のパートに関連したエディタもまた、それが現在オープンされている他のパート、例えば、他の文書に属していないならば、クローズされる。
パートの自律的な性質のために、種々のパートのコンテナは、決して特別なパイプに限定されるものではない。例えば、過去において、文字文書は特定のデータフォーマットである場合にのみ図形や他の内容を含むことができた。この種の制約は、本発明のアーキテクチュアによって取り除かれる。基本的に、どんなパートも他のパートに対しては、“ブラックボックス”となっている。コンテナパートはその中に含む他のパートの内部構造やセマティックスについての情報をもつ必要はない。コンテナパートは、単に、それが含む他のパートについてはラッパとしてのみ機能する。この種のアーキテクチュアは、複合文書のコンパイルや編集を非常に楽なものにしている。
さらに説明を続けるが、文書はデスクトップそれ自身の上に位置したアイコンによって表現される。図7Aにおいて、図示されたデスクトップは、文字文書を含むウィンドウ79を含んでいる。また、デスクトップ上にあるものとして、図形文書のアイコン80がある。ウィンドウとアイコンの各々は、夫々のパートを表現している。ウィンドウ内に位置した文字文書の場合には、パートはフレームの形で表現されている。そして、そのフレームの境界はウィンドウ自身の境界と接している。本発明に従えば、アイコンによって表現されたパートは、ダイアログボックスなどのようなものを介する必要なく、直接ユーザによって操作され、文字文書の中に置かれる。この操作は、この後、図7A−図7E、及び、図8A−図8Bのフローチャートを参照して説明する。
アイコン80によって表現される図形文書をウィンドウ79内の文字文書本体に置くためには、ユーザは、まず、そのアイコン上にマウスのポインタを位置づけ(ステップ801)、そして、マウスボタンを押してそのアイコンを選択する(ステップ802)。これに応答して、システムはそのアイコンの表示を高輝度にし、それが選択されたという事実を示す(ステップ803)。図7Aの例では、アイコン80の高輝度化は、そのアイコンの絵とタイトルの反転表示によって示されている。
そのマウスボタンを押さえたまま、ユーザはそのカーソルを図形パートの所望の位置にまで移動させる(ステップ804)。図7Bに図示されているように、選択されたアイコンは、そのカーソルの動きに合わせて移動する。カーソルに合わせたアイコンの移動は、“ドラッグ”操作として知られている。そのアイコンが所望の位置にまでドラッグされると、アイコンのゴーストアウトライン81がデスクトップ上には残り、その元々の位置を示す。或は、その代わりに、そのゴーストアウトラインがカーソルとともに移動して、ステップ805に図示されているように、完全な形のアイコン表示がその元々の位置に残つていても良い。
このアイコンのドラッグの間、システムはそのカーソルがウィンドウに入ったかどうかを判別する(ステップ806)。アイコン80がウィンドウ79の内側に位置すると、ウィンドウそれ自身が高輝度表示に変わる。そのシステムがドラッグされたアイコンがウィンドウ内のフレームに入ったことを検出すると(ステップ807)、そのフレームは適当に高輝度表示され、そのフレームがドラッグされたオブジェクトを受け付けたことを示す(ステップ808)。もし、そのアイコンがドラッグを続け、そのフレームの外側にでてしまうなら、そのフレームの高輝度表示はなくなる(ステップ809)。逆に、複数のフレームが互いに内側に入れ子になっているなら、順々に入れ子になっているフレーム各々は、そのアイコンがその内側にドラッグされていくにつれ、アクティブになる。このようにして、システムは、アクティブになるフレームと、カーソル制御ボタンが放された場合にアイコンがドロップされる場合とに関してフィードバックを備えている。
一旦、ドラッグされたアイコンが所望の位置にきたなら、ユーザはマウスボタンを放す(ステップ810)。この時点で、システムはそのパートに関する好適な表示方法を決定する。例えば、それが、アイコンとして表示されるべきか、或は、フレームとして表示されるべきかなどである(ステップ811)。図7A−図7Eの例では、パートが文書の中に置かれているので、その好適な表示方法は、フレームとなっている。従って、図7Cに示されているように、そのマウスボタンが放されたときに、そのカーソルの位置に対応する場所を左上隅として図形パートはフレーム86として表示される(ステップ812)。また、図7Cに示されているように、そのフレームは、太い点線の境界で、また、サイズ変更ハンドルが付加されて表現され、それが、選択されたパートであることを示している。
逆の操作が、そのパートを文書からデスクトップに戻すために実行される。さらにその上、そのパートをコピーし、その内容がその文書内に残るようにし、一方でそのパートの別の表示がデスクトップに置かれるようにすることもできる。これを行うために、ユーザは、そのフレームをドラッグしながら、キーボード上のコントロール或はオプションキーのような機能キーを押す。マウスボタンの押下とともに同時に機能キーを押下することで、システムにコピー動作が実行されることを指示する。その時、マウスボタンを押さえつづけながら、図7Dに示すようにユーザがフレームをデスクトップまでドラッグする。ここで、図形パートの内容88が文字文書の中に残り、そのパートの第2のコピーがフレーム86に現れる。一旦、フレームがデスクトップ上の所望の位置に移動したなら、マウスボタンを放し、システムは再びパートに関する好適な表示方法を決定する。この場合、そのパートはデスクトップに位置しているのであるから、その好適な表示はアイコンである。従って、パートのアイコン表示80が、図7Eに示されるようにデスクトップに表示される。
本発明のシステムにおいて、パートは直接にデスクトップと文書との間で操作されるのであるから、デスクトップのメタフォーはより良く保存される。即ち、ユーザは、ダイアログボックスなどに書き込むといった中間的な操作を行うことなく、デスクトップから所望のパートをピックアップし、それを直接に文書の中に置く。その結果、新しい内容を文書内に持ち込むために必要な時間や数多くのステップを減らすことができる。
デスクトップと文書との間でのオブジェクトをドラッグしたりドロップする機能をシステムがインプリメントした場合の1つの方法に関するさらに詳しい情報は、1993年3月3日出願の、出願番号_______、発明者がロバート G.ジョンソン ジュニア、マーク L.スターン、デビット L.エバンス、名称が“コンピュータ制御表示システムにおけるアプリケーションプログラムとファイルシステムとの間の改良型データ操作装置と方法”という発明に説明されている。その開示内容はここで参照のために、本願に組み込まれている。
さて、上述のように、パート各々はある特性をもち、その特性はその好適な表示で参照される。この特性は、与えられたパート中に含まれるパートが通常は、従来よりフォルダと文書ウィンドウの両方に関係づけられている振る舞いを得るために、アイコンとして表示されるか、或は、フレームとして表示されるかを決定する。一般的に言って、全てのパートは、デスクトップパートか或は文書パートかに分類される。デスクトップパートは、フォルダ、プリンタ、或は、メールボックスのような他のパートを含むことか、或は、そこで動作することが、その目的である。デスクトップパートに含まれるパートに関する好適な表示は、アイコンのようなものである。文書パートは、最終的には、文字文書や図形文書のような用紙或は他のハードコピー上にプリントされることが、その目的となるものである。文書パートに含まれるパートに関する好適な表示は、フレームのようなものである。従って、図7A−図7Cに図示されている動作を参照すると、図形パートは、それがデスクトップにある時には、アイコンとして表示され(図7A)、しかし、それが文書の中に置かれるときにはフレーム表示に変更される(図7C)。同様に、そのパートは文書からデスクトップに移動すると、その表示はフレームからアイコンに変化する(図7C−図7E)。もちろん、ユーザには、例えば、キーボードやメニューコマンドを通して、どんなパートの表示でも変更できるオプションが備えられている。
上述したように、ステーショナリパートは、それが、ただアイコンで表示されるという点で異なる。それは、1つのデスクトップパートから別のパートに移動できる。従って、例えば、フォルダ内の普通のパートのように扱うことができる。しかしながら、ステーショナリパートを文書パートに移動させようと試みても、ステーショナリパートのコピーが代わりに、文書パートに置かれ、そのコピーがフレームとして現れる。
全体としてパートを移動させることに加えて、ユーザはパートの内容のいくつか或は全てを選択し、移動できる。パート各々は、それ固有のタイプの内容を有している。例えば、文字パートはテキスト文字を含んでいるし、図形パートは図形要素などを含んでいる。ユーザは、1つのパートの固有の内容のいくつか、即ち、ドナーパートを選択し、これらを異なるパート、即ち、行き先パートに移動したりコピーしたりできる。この種の動作が発生するときに3つのシナリオが有り得る。即ち、(1)ドナーパートと行き先パートとは両方とも同じ固有のタイプのデータを含んでいる。(2)ドナーパートと行き先パートとは異なるタイプのデータを含むが、行き先パートはドナーパートから受信するデータのカテゴリを組み入れることができる。(3)ドナーパートと行き先パートとは異なるタイプのデータであり、行き先パートはドナーパートから受信するデータのカテゴリを組み入れるようには調整されていない。これら3つの場合の夫々について、図示した例を参照して以下に説明する。
最初のシナリオの場合、ドナーパートと行き先パートとは同じタイプのパートである。例えば、それらの固有の内容は、テキスト文字であるかもしれず、それらは、同じワードプロセッサによって生成されたかもしれない。図9Aは、2つの文字文書90、92が夫々、デスクトップ上の2つのウィンドウにある例について図示している。左側の文書90の文字の一部94が選択されており、このことが反転表示で示されている。この選択された文字は、右側のウィンドウの文書92にコピーされることになっている。従って、ユーザが機能キーを押しながらマウスボタンを押下し、もし必要なら、選択された文字94のコピー95を図9Bに示されているように、右側の文書92にドラッグしてもってくる。一旦、カーソルが第2の文書92に入ると、この文書は高輝度表示になる。左側の文書90は今やアクティブではないので、それは文書92の後ろに置かれ、そのタイトルバーはもはや高輝度表示ではなくなる。
一旦、コピーされたテキストが所望の位置にくれば、ユーザはマウスボタンを放し、図9Cに図示されているように、その文書にそのテキストを置く。第1の文書から第2の文書にコピーされたテキストは、第2のテキストの固有の内容と同じタイプであるので、そのテキストは第2の文書の内容に組み込まれる。言い換えると、選択されたテキストが一旦、第2の文書に置かれると、それはもはやそれ自身の独立した主体性をもたなくなる。むしろ、行き先の文書の固有の内容の一部となる。従って、行き先の文書の元々の内容のために用いられたのと同じエディタで、それは編集できる。
上述した第2のシナリオの場合、ドナーパートと行き先パートの固有の内容は異なるタイプであるが、行き先パートはドナーパートに含まれるカテゴリの情報を取り扱うことができる。図10Aにおいて、テキストエディタの能力を十分に用いて生成された文書90から選択されたテキスト96は、ダイヤログボックス98にコピーされることになっている。この例において、選択されたテキスト96は、ある形式に合わせられる。即ち、それは太字の属性をもっており、また、イタリックフォントとなっている。しかしながら、ダイヤログボックスはだた普通のテキストを取り扱うだけである。
前の例と類似した方法で、選択されたテキスト96のコピーが文字文書からダイヤログボックスにドラッグされる。そのカーソルがダイヤログボックスに入ると、それは図10Bに図示されているように表示の最上部に移動する。一旦、選択されたテキストのコピーが、ダイヤログボックスの適切な位置にくると、ユーザはマウスボタンを放し、これを適切に“ドロップ”する。この時点で、システムはそのドロップされたテキストがダイヤログボックスの固有の内容とは同じタイプではない、即ち、普通の書式ではなくある形式をもっている、ことを判別する。しかしながら、それは、文字であるので、互換性のあるカテゴリに属している。従って、システムはある書式をもったテキストを、そのスタイルの属性を取り除くことによって、普通のテキストに変換し、それから、それを、図10Cに示されているように、固有の内容の一部としてダイヤログボックスの中に組み入れる。さて、オリジナルの文書90で2行にわたってラップされているコピーされたテキストは、例えば、選択されたテキストのコピーには存在したキャリッジリターンを除去することで、ダイヤログボックス98の中で変換過程の一部として1行に再ラップされる。
上述の第3のシナリオの場合には、ドナー文書の固有の内容は、行き先パートと比較して、異なるタイプであり、互換性のないカテゴリにある。図11Aにおいて、テキスト文書90から選択されたテキスト94は、図形文書100にコピーされることになっている。再び、ユーザは、テキスト文書90から選択されたテキストのコピーを図形文書100にドラッグする。そのカーソルが行き先文書に入るや否や、図形文書100は高輝度表示となる(図11B)。そのテキストのコピー95が一旦、適切な位置にくれば、ユーザはマウスボタンを放し、そのテキストを図形文書にドロップする。この場合、選択されたもの、即ち、テキストのカテゴリは、行き先文書の固有の内容、即ち、図形要素とは、互換性をもっていない。従って、システムはドナー文書と同じタイプ(文字)の新しいパートを生成し、選択されたもののコピーをそのパートに挿入し、行き先文書にその新しいパートを組み込む。このようにして、新しいパートは、行き先文書の中でそれ自身の独自性を保持することなる。それは,それ自身の固有の内容、即ち、テキスト文字と、それに関連したテキストエディタとを有するようになる。その新しい生成物は、分離したパートであるので、図形文書内には、図11Cに図示されるように、フレーム102として留まる。フレーム102は、そのフレームの回りの境界によって図示されてるように、選択されたオブジェクトとして留まる。
選択されたテキストのコピーが、文字文書から図形文書に移動するとき、デスクトップのメニューバー104は、図11Aと図11Bとに図示されてるように、文字文書に関連したコマンドを留めている。しかしながら、そのコピーされたテキストが図形文書に一旦、ドロップされたなら、図11Cに示されているように、メニューバー104で利用可能なコマンドはテキストエディタに合わせたものから、図形エディタに合わせたものに切り替わる。さらに、図形エディタに関連したツールバー106がデスクトップに現れる。なぜなら、図形文書には今や、選択されたパートが位置しており、図形文書がアクティブな文書であるからである。しかしながら、もし、ユーザがフレーム102の中にカーソルを位置させ、文字や単語を選択するなら、ツールバー106が取り除かれ、メニューバー104のコマンドが文字の編集のために適切なものに変わる。
要約すれば、1つの文書から他の文書に内容が移動するとき、システムはその内容が行き先文書にその固有内容の一部として組み込まれるかどうか、或は、行き先文書の中で自律的なパートとして組み込まれねばならないかを判断する。このプロセスを実行するシステムの動作が、図12のフローチャートには図示されている。ユーザが1つのオブジェクトを選択し、それを意図する行き先にドラッグした後に、システムは選択されたオブジェクトが元々存在したパートのタイプを判別する(ステップ1201)。例えば、選択されたオブジェクトは、普通のテキストであるかもしれないし、ある書式のテキストであるかもしれないし、図形要素などであるかもしれない。夫々のパートについて格納されている特性の1つは、それがどのタイプのパートであるかを識別し、そして、そのパートから移動される或はコピーされるオブジェクト各々もまた、その識別されたタイプであるとして認識される。パートのタイプが識別された後、そのタイプが行き先文書のタイプと同じであるかどうか判定される(ステップ1202)。もし、そうであれば、選択された内容は、行き先の文書に組み込まれるか或は挿入され、その固有の内容の一部となる(ステップ1203)。もし、選択された情報が、行き先文書のタイプと同じではない場合、システムはそれが同じカテゴリに属しているかどうかを判別する(ステップ1204)。例えば、もし、選択された情報が、ある書式スタイルをもったテキストであり、その行き先の文書では普通のテキストであれば、それらは異なるタイプではあるが、同じカテゴリに属している。もし、選択された情報が行き先文書と同じカテゴリに属していれば、システムは選択された情報を行き先文書と同じタイプに変換する(ステップ1205)。例えば、あるワードプロセッサで生成されたテキストが、異なるワードプロセッサによって採用されているフォーマットに変換される。或は、図形文書はあるファイルフォーマットから別のものに変換される。一旦、その変換が完了すると、選択された情報は、行き先文書の内容に組み込まれる(ステップ1209)。もし、その選択された情報が、行き先文書と同じカテゴリに属していなければ、新しいパートが、その選択された情報がその内容となるように生成され(ステップ1206)、そして、その新しいパートがフレームとして行き先文書に組み込まれる(ステップ1207)。
パートの自律的な性質のため、パートは、種々のユーザの間での情報交換を非常に容易にする。文書、例えば、ルートパートは、幾つかの他のパートを含んでいる。ユーザはその文書全体を取り出すことができ、それを眺め、所望ならその個々のパートを編集できる。或は、個々のパートは夫々がデスクトップに置かれ、多くのユーザによって共有されるが、一方、その文書へのアクセスは全体として保護される。
これらのことをさらに詳しく述べると、パート1つ1つは限定されたアクセス権で保護される。例えば、幾つかの異なるパートを含む文書は多くの異なる種類の人々への配布が目的となっていることもある。それらのパートのいくつかは、ある種類の人々には公開されたくはない機密情報を含んでいるかもしれない。本発明の主旨によれば、これら個々のパートは、限定されたアクセス権で保護される。そして、その内容は適切なパスワードや或は他のアクセス手段を有した人々によってのみ回覧される。言い換えると、アクセス制限機能はパートの別の特徴的な性質である。
図13において、図示されている文書108は、多くのパートから構成され、そのパート1つ1つは、破線で示されたフレーム内に含まれている。パートの1つ110へのアクセスは制限されている。例えば、そのパートは機密の帳票データを含んでいるかもしれない。このパートへのアクセスが制限されているので、その内容はそのフレームには表示されない。むしろ、そのフレームは不透明となっており、キー112のような適切なシンボルを表示し、パスワードなどのようなものがそれにアクセスするためには必要であることを示す。
文書108はシステムのユーザによってオープンされ、その概要レイアウトと機密ではないパートの情報を見ることができる。しかしながら、機密のパート110の中に含まれているデータは、そのパートにアクセスする適切なパスワードを有した人達だけが見ることができる。そのような人がそのパートを選択すると、その不透明カバーが取り去られ、その内容が表示される。
その内容はアクセスされないが、制限されたパートの他の特性は、そのパスワードを有していないシステムユーザに対しても、やはり、利用可能である。例えば、文書中のそのパートの位置は変更できるし、それを選択し、そのフレームの境界にあるサイズ変更ハンドルを移動させて、そのサイズを変更することもできる。同じように、そのアクセスが制限されたパートはどこにでもコピーすることができる。しかしながら、そのアクセス制限は、どこにそれがコピーされようとも、そのコピーされたものにも付加されたままである。
制限されたアクセス権をもつパートは、それに組み込まれる他のパートをもつことができる。その結果、あるユーザが適切なパスワードを有しておらず、パートの内容にアクセスするならば、それに含まれる他のパートもまた、制限されて見る事はできない。一旦、パスワードが受け付けられたなら、そのパスワードは自動的に全ての組み込まれたパートにも伝えられ、それらの制限が解除されて、ユーザの手を煩わせる事なく見る事ができる。しかしながら、もちろん、その組み込まれたパートがそれに関連した異なるパスワードをもつことはでき、たとえユーザが1つの制限があるパートにアクセスできようとも、それに含まれる他のパートへのアクセスはさらに制限されていることもある。
従って、本発明は文書の内部レベルで文書の内容へのアクセスを制限できる。そのアクセス制限は、パート毎に指定することができ、パートのデータがどこに存在するかに係わらず、効力をもつ。このような手法によって、文書の中で特権が与えられていないパートは、文書全体にわたるアクセス制限を課すことなく、ユーザによってアクセス可能となる。多くの著者をもつ大きな文書において、パートパート単位にアクセスを制限できることは、その著者たちが文書を概観し、協力して作業を行うことを、非常に柔軟性に富んだものにする。
パート操作や複合文書のコンパイルを容易にするために、“パーツビン”と呼ばれる特殊なタイプのパートが備えられている。パーツビンの例が図14に示されている。その図を参照して説明すると、文書がウィンドウ120でオープンされ、その文書に関するパーツビンが、ウィンドイドとして言及されている別の領域に現れている。そのウィンドイドは、ウィンドウ120に関連したものであり、もし、その文書ウィンドウがスクリーンの前面にもってこられたなら、ウィンドイドもともにスクリーンの前面にくる。
パーツビン122は、本質的には、他のパートに関するソースとして機能するユーザ定義のパレットである。それは、他のパートだけを含み、固有の内容はもたない。パーツビンの内部にあるパートは、“凍結”した特性をもっている。即ち、ユーザが通常カーソルをフレーム内に位置させながら、マウスボタンを押すと、そのカーソルの位置にある最小の要素が選択される。図14において、通常の場合、もし、カーソルが帳票フレーム124の1つのセルに置かれ、そのカーソル制御ボタンが押下されたなら、そのセルの内容が選択される。さて、ユーザは異なるオブジェクト、例えば、実際に選択されたセルを含む帳票全体、を選択することを意図していたかもしれない。これを行うために、ユーザはフレーム内の別の領域、しかし、所望のパート内に組み込まれた他のパートの外側にカーソルを移動させなければならない。しかしながら、この要求は、パーツビンのパートを凍結させることで取り除かれる。この場合、ユーザはパートのどこにでもカーソルを位置させてマウスをクリックし、そのパート全体を選択する。従って、たとえ、パーツビン内にあるパートが他の組み込まれたパートを含むフレームとして表現されていても、それらは全体として扱われる。
パーツビン内にあるパートは、また、ロックされ、その内容が修正されないようになっている。パーツビンのロックされた特性は、ウィンドイドのヘッダのパッドロックのシンボル126によって示される。もし、ユーザがロックされたパーツピンの外にパートをドラッグしようとすると、そのパートのコピーが自動的に作られ、元々のパートはパーツビンの中に留まり、これによってビンの内容の完全性が保証される。ユーザが自分のパーツビンをカスタマイズできるようにするために、パーツビンのロックは、例えば、パッドロックのシンボル126をクリックすることで解除され、そのパートが修正される。
本発明のこの特徴のさらなる実施例では、どの文書も付随したパーツビンをもつことができる。“文書パーツビン”は、標準的なパートのセットが文書に結合されるようにしており、その結果、その文書のユーザはすぐに利用可能なパートをもつことができるようになる。あるコマンドを実行することで、そのユーザは文書パーツビンをウィンドイド或はドロワに表示させる。付随したパーツビンとともに文書は、そこに置かれた制限的な特性をもつことができ、その文書に置かれるパートだけがそのビンの中のものとなる。他のパートをその制限された文書に置こうとすると、その試みは拒絶される。その特性は文書のユーザがあるセットのパートとともにだけ作業することを保証し、これによって、その文書作成に関連した訓練、サポート、保守などを減らしている。例えば、データ入力フォームでのパーツビンは、その書式でデータを入力するために必要なパートのみを有する。その結果、訓練を受けていないユーザは、正しく用いることがでいないかもしれない予期しないパートに出くわすこともない。パートについてその制限は、また、組織が文書の内容をコントロールすることにも役立つ。
上述したユーザに対する利点に加えて、本発明のアーキテクチュアはソフトウェアの開発者にも種々の利点を備えている。例えば、帳票プログラムは元々は数字を処理するために設計されている。この分野で経験のある開発者は、この機能に関して最も効率的に時間を用いることができる。しかしながら、ユーザが公式や数値のあるテキストを編集することができなけれなならないので、テキストエディタは、帳票アプリケーションの必要な部分である。テキストエディタを書かねばならないことは、帳票プログラムの開発者にとって、従来のプログラムとともに必要なことではあるが、難儀なことでもある。しかしながら、ユーザが選択したテキストエディタが帳票において分離独立した部分として利用可能であるような環境では、帳票プログラムの開発者にとってテキストエディタを書く事はもはや必要なことではなくなる。その開発者は、自分の時間を帳票プログラムの核の部分にいっそうふりむけることができ、以前は帳票の数多くの処理機能にとっては付帯的であった他の部分を開発するために費やさねばならなかった時間のために用いることができなかった時間を用いて、特別な機能などを組み込むことができるようになる。
さらに、そのソフトウェア開発者がさらに新しい機能を追加したり、或は、存在するバグを修正することを決めたときに、その仕事はさらに容易になる。特に、その開発者はプログラムの帳票部分にのみ集中すればよく、テキストエディタのような付帯的な要素に気を払う必要はない。
本発明は、ここで説明された、発明の基本となる原理についての理解をいっそう容易にするためになされた具体的な実施例によって限定されるものではない。例えば、テキストや図形は文書の要素を表現するために例として用いられただけである。パートの内容もまたここでの2つの具体例に限定されるものではない。むしろ、パートの内容は、どんな種類の媒体でも良く、これにはビデオや、音や、動画などを含んでいても良い。従って、本発明の範囲は、以下に付属したクレームによってのみ定義され、前述の説明によって定義されるものではない。そして、クレームの意味に矛盾のない全ての等価物が、その範囲に含められるものである。
Claims (15)
- 文書の内容を前記文書が生成され、編集されたように表示するディスプレイと、編集の間、前記文書の要素の操作を制御するポインティングデバイスと、複合文書の生成と操作のためのコンピュータ・ヒューマンインタフェースとを備えたコンピュータシステムにおいて、
文書の全ての構成オブジェクトを、夫々が固有の内容と前記内容についての付随する操作子とを含むパートとして格納する手段と、
ユーザに前記パートを表示する手段と、
前記デバイスの起動に応じて、前記表示されたパートが、前記ユーザによって選択でき、前記ディスプレイの中で移動でき、他のパート内に置かれ、前記他のパートの内容の一部となり、前記内容が前記付随する操作子によって操作可能であるようにする手段と、
前記コンピュータで前記パートの選択によって、パートに関する操作子を決定し、前記決定された操作子を自動的に立ちあげ、前記パートの機能を前記ユーザに利用可能にする手段とを有し、
前記操作子は、前記パートの内容を表示し、必要であれば前記パートの内容を変更修正するためのユーザインタフェースを提供するソフトウェアであることを特徴とするシステム。 - 前記表示手段は、パートをアイコン、或は、フレームで表示し、
前記フレーム内では、前記パートの固有の内容が可視化され、前記付随する操作子によって操作されることを特徴とする請求項1に記載のシステム。 - 前記インタフェースは、前記ディスプレイ上にウィンドウを備えるデスクトップメタフォーを含み、
前記ディスプレイでは、文書の内容が表示され、編集と概観目的のためにスクロールされ、
前記デバイスに応答して、パートを、前記アイコンやフレーム表示から、前記パートの内容の表示と操作のためにオープンしてウィンドウにする手段をさらに有することを特徴とする請求項2に記載のシステム。 - 前記フレームは、第1のパートと、前記第1のパートの中に含まれる組み込まれた第2のパートとの間の幾何学的な関係を定義し、
前記定義には前記関係を定義するために前記コンピュータに格納される属性が含まれ、
前記属性は、
(i)前記第2のパートの内容のために、利用可能である前記第1のパート内での領域を記述するフレームシェイプと、
(ii)実際に前記第2のパートの内容を含む前記フレームシェイプ内での領域を記述する使用中シェイプとを含む
ことを特徴とする請求項2に記載のシステム。 - フレームはさらに前記格納される属性として,
(iii)前記第2のパートの内容が表示される前記フレームのシェイプ内での領域を記述するクリップシェイプと、
(iv)前記デバイスの起動に関連したイベントが前記第2のパートについての操作子に送られる前記クリップシェイプ内での領域を記述するアクティブシェイプとを含むことを特徴とする請求項4に記載のシステム。 - ユーザがパートに付随する操作子を、前記パートの固有の内容を用いるために適切な異なる操作子で置換できるようにする手段をさらに有することを特徴とする請求項1に記載のシステム。
- 他のパートを含むパーツビンとして1つのパートを定義する手段をさらに含み、
前記パートに含まれる他のパートは、前記デバイスによる前記パートに含まれる他のパート内での個々の要素へのアクセスが禁止される一方、前記パートに含まれる他のパートが前記デバイスによって全体として選択され操作されるような凍結特性を有していることを特徴とする請求項1に記載のシステム。 - 前記パーツビンは、前記ビンの内容を有するパートがコピーは可能であるが、前記パーツビンから除去されたり、或は、ユーザによって修正されたりすることがないように、ロック可能であることを特徴とする請求項7に記載のシステム。
- 前記コンピュータに格納された文書にパーツビンを付随させ、前記文書の内容を前記パーツビンに含まれたパートに限定させる手段をさらに有することを特徴とする請求項7に記載のシステム。
- 文書の第1の要素が前記文書の第2の要素に組み込まれるような複合文書の生成及び操作を行い、前記要素各々は、付随する内容と前記内容の操作子と前記第1と第2の要素の間の関連を定義するインタフェースシステムとを有しているようなコンピュータシステムにおいて、前記インタフェースシステムは、
第1のシェイプを格納する手段と、
第2のシェイプを格納する手段とを有し、
前記第1のシェイプは、前記第2の要素によって決定され、前記第1の要素の内容の配置に対して利用可能である前記第2の要素内に領域を定義し、
前記第2のシェイプは、前記第1の要素によって決定され、前記第1の要素の内容が実際に位置する前記領域の一部を定義し、
前記操作子は、前記内容を表示し、必要であれば前記内容を変更修正するためのユーザインタフェースを提供するソフトウェアであることを特徴とするインタフェースシステム。 - 第3のシェイプを格納する手段と、
第4のシェイプを格納する手段とを有し、
前記第3のシェイプは、前記第2の要素によって決定され、前記第1の要素の内容が表示される前記領域の一部を定義し、
前記第4のシェイプは、前記第1の要素によって決定され、前記システムへのユーザ入力が前記第1の要素に関する前記操作子へ伝えられる前記第3のシェイプの一部を定義していることを特徴とすることを特徴とする請求項10に記載のインタフェースシステム。 - 各要素が内容を有したオブジェクトとして格納され、前記オブジェクト各々が前記オブジェクトの内容に付随した操作子を有し、第2のオブジェクトの中に第1のオブジェクトが組み込まれているような複合文書をコンピュータシステムにおいて生成する方法であって、
前記第2のオブジェクトに関する前記操作子によって、前記第1のオブジェクトの内容に割り当てられることになる前記第2のオブジェクトの内容の中にある領域を決定する工程と、
前記領域に対応したフレームシェイプを確立し、前記第1のオブジェクトに関する前記操作子に、前記フレームシェイプを通知する工程と、
前記第1のオブジェクトに関する前記操作子によって、前記フレームシェイプの中に前記第1のオブジェクトの内容のレイアウトを決定する工程と、
前記第2のオブジェクトに関する前記操作子によって、前記第1のオブジェクトの内容が表示される前記領域の一部を決定する工程と、
前記第1のオブジェクトに関する前記操作子に、前記領域の一部を通知する工程と、
前記領域の一部に、少なくとも、前記第1のオブジェクトの内容のいくつかを表示する工程とを有し、
前記操作子は、前記オブジェクトの内容を表示し、必要であれば前記オブジェクトの内容を変更修正するためのユーザインタフェースを提供するソフトウェアであることを特徴とする複合文書生成方法。 - 前記第1のオブジェクトに関する前記操作子によって、前記第1のオブジェクトの内容によって占有される前記領域のサブセットに対応した使用中シェイプを決定し、前記使用中シェイプの前記第2のオブジェクトに関する操作子に通知する工程をさらに有することを特徴とする請求項12に記載の複合文書生成方法。
- 前記使用中シェイプの外側の領域に、少なくとも、前記第2のオブジェクトの内容のいくつかを表示する工程をさらに有することを特徴とする請求項13に記載の複合文書生成方法。
- 前記第1のオブジェクトに関する前記操作子によって、前記領域の一部のサブセットに対応するアクティブシェイプを決定する工程と、
前記文書の内容の操作に関係するユーザ入力イベントを検出する工程と、
ユーザ入力イベントが前記アクティブシェイプの中で発生したかどうかを判断する工程と、
前記アクティブシェイプの中での発生が判別されたとき、検出されたユーザ入力イベントを前記第1のオブジェクトに関する前記操作子に提示する工程とをさらに有することを特徴とする請求項12に記載の複合文書生成方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/058,260 US5812862A (en) | 1993-05-10 | 1993-05-10 | Computer-human interface system for compound documents |
US08/058,260 | 1993-05-10 | ||
PCT/US1994/005026 WO1994027227A1 (en) | 1993-05-10 | 1994-05-04 | Computer-human interface system for compound documents |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08510345A JPH08510345A (ja) | 1996-10-29 |
JP3849880B2 true JP3849880B2 (ja) | 2006-11-22 |
Family
ID=22015692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP52556694A Expired - Lifetime JP3849880B2 (ja) | 1993-05-10 | 1994-05-04 | 複合文書におけるコンピュータ/ヒューマンインタフェースシステム |
Country Status (8)
Country | Link |
---|---|
US (1) | US5812862A (ja) |
EP (1) | EP0698241B1 (ja) |
JP (1) | JP3849880B2 (ja) |
CN (1) | CN1125492A (ja) |
AU (1) | AU6784594A (ja) |
CA (1) | CA2162583C (ja) |
DE (1) | DE69429658T2 (ja) |
WO (1) | WO1994027227A1 (ja) |
Families Citing this family (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0626635B1 (en) * | 1993-05-24 | 2003-03-05 | Sun Microsystems, Inc. | Improved graphical user interface with method for interfacing to remote devices |
US5838906A (en) | 1994-10-17 | 1998-11-17 | The Regents Of The University Of California | Distributed hypermedia method for automatically invoking external application providing interaction and display of embedded objects within a hypermedia document |
US5640553A (en) * | 1995-09-15 | 1997-06-17 | Infonautics Corporation | Relevance normalization for documents retrieved from an information retrieval system in response to a query |
US5822731A (en) * | 1995-09-15 | 1998-10-13 | Infonautics Corporation | Adjusting a hidden Markov model tagger for sentence fragments |
US5742816A (en) * | 1995-09-15 | 1998-04-21 | Infonautics Corporation | Method and apparatus for identifying textual documents and multi-mediafiles corresponding to a search topic |
US5717914A (en) * | 1995-09-15 | 1998-02-10 | Infonautics Corporation | Method for categorizing documents into subjects using relevance normalization for documents retrieved from an information retrieval system in response to a query |
US5675788A (en) * | 1995-09-15 | 1997-10-07 | Infonautics Corp. | Method and apparatus for generating a composite document on a selected topic from a plurality of information sources |
US5873076A (en) * | 1995-09-15 | 1999-02-16 | Infonautics Corporation | Architecture for processing search queries, retrieving documents identified thereby, and method for using same |
US5659742A (en) * | 1995-09-15 | 1997-08-19 | Infonautics Corporation | Method for storing multi-media information in an information retrieval system |
US5721902A (en) * | 1995-09-15 | 1998-02-24 | Infonautics Corporation | Restricted expansion of query terms using part of speech tagging |
JP3968176B2 (ja) * | 1997-10-06 | 2007-08-29 | 松下電器産業株式会社 | 送信文書編集装置、受信文書処理装置 |
AU1586299A (en) * | 1997-11-14 | 1999-06-07 | Avesta Technologies, Inc. | System and method for displaying multiple sources of data in near real-time |
US6230170B1 (en) * | 1998-06-17 | 2001-05-08 | Xerox Corporation | Spatial morphing of text to accommodate annotations |
US6226658B1 (en) * | 1998-06-19 | 2001-05-01 | Hewlett-Packard Company | Layout code tuning in universally readable document files |
US6562076B2 (en) | 1998-08-31 | 2003-05-13 | Xerox Corporation | Extending application behavior through active properties attached to a document in a document management system |
US6266682B1 (en) | 1998-08-31 | 2001-07-24 | Xerox Corporation | Tagging related files in a document management system |
US6499040B1 (en) * | 1999-03-05 | 2002-12-24 | Dassault Systemes | Document and task coordination system for a computer |
US6757740B1 (en) | 1999-05-03 | 2004-06-29 | Digital Envoy, Inc. | Systems and methods for determining collecting and using geographic locations of internet users |
US6636244B1 (en) * | 1999-09-13 | 2003-10-21 | International Business Machines Corporation | Pointing device selection method |
WO2001077847A1 (en) * | 2000-04-07 | 2001-10-18 | Financeware.Com | Method and apparatus for rendering electronic documents |
AU2001264895A1 (en) * | 2000-06-21 | 2002-01-02 | Microsoft Corporation | System and method for integrating spreadsheets and word processing tables |
JP2003162520A (ja) * | 2001-09-14 | 2003-06-06 | Canon Inc | 情報処理装置及び方法 |
US7027071B2 (en) * | 2002-07-02 | 2006-04-11 | Hewlett-Packard Development Company, L.P. | Selecting elements from an electronic document |
US7415672B1 (en) | 2003-03-24 | 2008-08-19 | Microsoft Corporation | System and method for designing electronic forms |
US7913159B2 (en) | 2003-03-28 | 2011-03-22 | Microsoft Corporation | System and method for real-time validation of structured data files |
US7406660B1 (en) | 2003-08-01 | 2008-07-29 | Microsoft Corporation | Mapping between structured data and a visual surface |
US7334187B1 (en) | 2003-08-06 | 2008-02-19 | Microsoft Corporation | Electronic form aggregation |
US20050114361A1 (en) * | 2003-11-26 | 2005-05-26 | Brent Roberts | Method and apparatus for integrating data repositories and frameworks |
CN1301455C (zh) * | 2004-04-21 | 2007-02-21 | 腾讯科技(深圳)有限公司 | 一种树状结构的子项拖放方法 |
WO2006034218A2 (en) * | 2004-09-20 | 2006-03-30 | On A Chart, Llc | Electronic file system graphical user interface |
JP4047326B2 (ja) * | 2004-11-25 | 2008-02-13 | キヤノン株式会社 | レイアウト装置、レイアウト方法及びプログラム |
US8001459B2 (en) | 2005-12-05 | 2011-08-16 | Microsoft Corporation | Enabling electronic documents for limited-capability computing devices |
US7725530B2 (en) * | 2005-12-12 | 2010-05-25 | Google Inc. | Proxy server collection of data for module incorporation into a container document |
US7730082B2 (en) | 2005-12-12 | 2010-06-01 | Google Inc. | Remote module incorporation into a container document |
US8185819B2 (en) | 2005-12-12 | 2012-05-22 | Google Inc. | Module specification for a module to be incorporated into a container document |
US20070204010A1 (en) * | 2005-12-12 | 2007-08-30 | Steven Goldberg | Remote Module Syndication System and Method |
US7730109B2 (en) * | 2005-12-12 | 2010-06-01 | Google, Inc. | Message catalogs for remote modules |
US7626571B2 (en) * | 2005-12-22 | 2009-12-01 | The Board Of Trustees Of The Leland Stanford Junior University | Workspace expansion controller for human interface systems |
US7509588B2 (en) | 2005-12-30 | 2009-03-24 | Apple Inc. | Portable electronic device with interface reconfiguration mode |
JP4897520B2 (ja) | 2006-03-20 | 2012-03-14 | 株式会社リコー | 情報配信システム |
JP2007300565A (ja) * | 2006-05-03 | 2007-11-15 | Sony Computer Entertainment Inc | マルチメディア再生装置およびメニュー画面表示方法 |
US8185830B2 (en) | 2006-08-07 | 2012-05-22 | Google Inc. | Configuring a content document for users and user groups |
US8954861B1 (en) | 2006-08-07 | 2015-02-10 | Google Inc. | Administrator configurable gadget directory for personalized start pages |
US8407250B2 (en) | 2006-08-07 | 2013-03-26 | Google Inc. | Distribution of content document to varying users with security customization and scalability |
US20090037935A1 (en) * | 2006-08-07 | 2009-02-05 | Shoumen Saha | Updating The Configuration of Container Documents |
US7940250B2 (en) | 2006-09-06 | 2011-05-10 | Apple Inc. | Web-clip widgets on a portable multifunction device |
US10313505B2 (en) | 2006-09-06 | 2019-06-04 | Apple Inc. | Portable multifunction device, method, and graphical user interface for configuring and displaying widgets |
US8564544B2 (en) | 2006-09-06 | 2013-10-22 | Apple Inc. | Touch screen device, method, and graphical user interface for customizing display of content category icons |
US8788954B2 (en) | 2007-01-07 | 2014-07-22 | Apple Inc. | Web-clip widgets on a portable multifunction device |
US8519964B2 (en) | 2007-01-07 | 2013-08-27 | Apple Inc. | Portable multifunction device, method, and graphical user interface supporting user navigations of graphical objects on a touch screen display |
US20080235597A1 (en) * | 2007-03-19 | 2008-09-25 | Mor Schlesinger | Systems and methods of data integration for creating custom books |
US7911465B2 (en) * | 2007-03-30 | 2011-03-22 | Ricoh Company, Ltd. | Techniques for displaying information for collection hierarchies |
US9933937B2 (en) | 2007-06-20 | 2018-04-03 | Apple Inc. | Portable multifunction device, method, and graphical user interface for playing online videos |
US9772751B2 (en) | 2007-06-29 | 2017-09-26 | Apple Inc. | Using gestures to slide between user interfaces |
US8619038B2 (en) | 2007-09-04 | 2013-12-31 | Apple Inc. | Editing interface |
US9619143B2 (en) * | 2008-01-06 | 2017-04-11 | Apple Inc. | Device, method, and graphical user interface for viewing application launch icons |
US11126321B2 (en) * | 2007-09-04 | 2021-09-21 | Apple Inc. | Application menu user interface |
US20100333017A1 (en) * | 2007-11-27 | 2010-12-30 | David J. Ortiz | Computer graphic user interface and display system |
JP5309777B2 (ja) * | 2008-08-08 | 2013-10-09 | 株式会社ニコン | プロジェクタ |
US8584031B2 (en) | 2008-11-19 | 2013-11-12 | Apple Inc. | Portable touch screen device, method, and graphical user interface for using emoji characters |
US8453057B2 (en) * | 2008-12-22 | 2013-05-28 | Verizon Patent And Licensing Inc. | Stage interaction for mobile device |
JP2010218411A (ja) * | 2009-03-18 | 2010-09-30 | Toshiba Tec Corp | Webサービス提供装置及び提供方法 |
CN101944087B (zh) * | 2009-07-08 | 2013-03-27 | 方正国际软件(北京)有限公司 | 复合文档生成装置和方法 |
US8736561B2 (en) | 2010-01-06 | 2014-05-27 | Apple Inc. | Device, method, and graphical user interface with content display modes and display rotation heuristics |
US9727226B2 (en) | 2010-04-02 | 2017-08-08 | Nokia Technologies Oy | Methods and apparatuses for providing an enhanced user interface |
US10788976B2 (en) | 2010-04-07 | 2020-09-29 | Apple Inc. | Device, method, and graphical user interface for managing folders with multiple pages |
US8458615B2 (en) | 2010-04-07 | 2013-06-04 | Apple Inc. | Device, method, and graphical user interface for managing folders |
CN102375661B (zh) * | 2010-08-18 | 2013-06-12 | 宏碁股份有限公司 | 具有拖曳效果的触控装置和在触控装置上拖曳对象的方法 |
US9244606B2 (en) | 2010-12-20 | 2016-01-26 | Apple Inc. | Device, method, and graphical user interface for navigation of concurrently open software applications |
CN102654822A (zh) * | 2011-03-04 | 2012-09-05 | 联想(北京)有限公司 | 显示方法、显示装置和终端 |
KR101873056B1 (ko) * | 2011-09-20 | 2018-07-02 | 삼성전자주식회사 | 휴대단말기의 어플리케이션 수행 장치 및 방법 |
US9176933B2 (en) | 2011-10-13 | 2015-11-03 | Microsoft Technology Licensing, Llc | Application of multiple content items and functionality to an electronic content item |
US8965940B2 (en) | 2012-07-20 | 2015-02-24 | Microsoft Technology Licensing, Llc | Imitation of file embedding in a document |
KR102405189B1 (ko) | 2013-10-30 | 2022-06-07 | 애플 인크. | 관련 사용자 인터페이스 객체를 표시 |
CN105373326B (zh) * | 2014-09-01 | 2020-11-24 | 深圳富泰宏精密工业有限公司 | 数据处理系统及方法 |
JP6019074B2 (ja) * | 2014-09-16 | 2016-11-02 | 京セラドキュメントソリューションズ株式会社 | 電子機器、及び、タッチパネルの操作方法 |
JP6673654B2 (ja) * | 2015-08-20 | 2020-03-25 | Yamagata Intech株式会社 | 情報処理装置 |
DK201670595A1 (en) | 2016-06-11 | 2018-01-22 | Apple Inc | Configuring context-specific user interfaces |
US11816325B2 (en) | 2016-06-12 | 2023-11-14 | Apple Inc. | Application shortcuts for carplay |
JP6714853B2 (ja) * | 2016-07-25 | 2020-07-01 | 株式会社リコー | 情報処理装置、情報処理方法、および情報処理プログラム |
US11016643B2 (en) | 2019-04-15 | 2021-05-25 | Apple Inc. | Movement of user interface object with user-specified content |
US11675476B2 (en) | 2019-05-05 | 2023-06-13 | Apple Inc. | User interfaces for widgets |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4723210A (en) * | 1984-08-30 | 1988-02-02 | International Business Machines Corp. | Superblock structure in a multiple in a data editor |
US4815029A (en) * | 1985-09-23 | 1989-03-21 | International Business Machines Corp. | In-line dynamic editor for mixed object documents |
US5243691A (en) * | 1986-06-18 | 1993-09-07 | Hitachi, Ltd. | System for printing documents |
US5142618A (en) * | 1986-11-21 | 1992-08-25 | Hitachi, Ltd. | Window management apparatus for a document creating apparatus |
US5206951A (en) * | 1987-08-21 | 1993-04-27 | Wang Laboratories, Inc. | Integration of data between typed objects by mutual, direct invocation between object managers corresponding to object types |
JPH01211067A (ja) * | 1988-02-19 | 1989-08-24 | Hitachi Ltd | 文書編集装置 |
US4933880A (en) * | 1988-06-15 | 1990-06-12 | International Business Machines Corp. | Method for dynamically processing non-text components in compound documents |
US5181162A (en) * | 1989-12-06 | 1993-01-19 | Eastman Kodak Company | Document management and production system |
US5140677A (en) * | 1990-05-11 | 1992-08-18 | International Business Machines Corporation | Computer user interface with window title bar mini-icons |
DE69032348T2 (de) * | 1990-07-31 | 1998-09-24 | Hewlett Packard Co | Objektbasiertes System |
CA2093123A1 (en) * | 1990-10-31 | 1992-05-01 | Robert Carr | Computer documents as compound documents in a notebook metaphor |
CA2064508A1 (en) * | 1991-04-26 | 1992-10-27 | John D. Gerlach, Jr. | Methods and apparatus providing for a multimedia authoring and presentation system |
CA2068486C (en) * | 1991-08-30 | 1998-09-15 | Stephen S. Fleming | System and graphical method for creating an object |
EP0930566A3 (en) * | 1992-07-06 | 2006-07-05 | Microsoft Corporation | Method and system for composing objects |
US5506983A (en) * | 1992-07-06 | 1996-04-09 | Microsoft Corporation | Method and system for transactioning of modifications to a tree structured file |
-
1993
- 1993-05-10 US US08/058,260 patent/US5812862A/en not_active Expired - Lifetime
-
1994
- 1994-05-04 DE DE69429658T patent/DE69429658T2/de not_active Expired - Lifetime
- 1994-05-04 AU AU67845/94A patent/AU6784594A/en not_active Abandoned
- 1994-05-04 CA CA002162583A patent/CA2162583C/en not_active Expired - Lifetime
- 1994-05-04 JP JP52556694A patent/JP3849880B2/ja not_active Expired - Lifetime
- 1994-05-04 EP EP94916037A patent/EP0698241B1/en not_active Expired - Lifetime
- 1994-05-04 WO PCT/US1994/005026 patent/WO1994027227A1/en active IP Right Grant
- 1994-05-04 CN CN94192430A patent/CN1125492A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN1125492A (zh) | 1996-06-26 |
DE69429658T2 (de) | 2002-09-12 |
US5812862A (en) | 1998-09-22 |
JPH08510345A (ja) | 1996-10-29 |
EP0698241A1 (en) | 1996-02-28 |
CA2162583A1 (en) | 1994-11-24 |
AU6784594A (en) | 1994-12-12 |
EP0698241B1 (en) | 2002-01-16 |
CA2162583C (en) | 2005-01-18 |
DE69429658D1 (de) | 2002-02-21 |
WO1994027227A1 (en) | 1994-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3849880B2 (ja) | 複合文書におけるコンピュータ/ヒューマンインタフェースシステム | |
US5835919A (en) | Computer-human interface system which manipulates parts between a desktop and a document | |
US5669005A (en) | System for automatically embedding or incorporating contents added to a document | |
US5745910A (en) | Frame structure which provides an interface between parts of a compound document | |
CA2512102C (en) | An improved user interface for displaying selectable software functionality controls that are contextually relevant to a selected object | |
JP4091622B2 (ja) | ソフトウェアメモ | |
US6957395B1 (en) | Computer interface having a single window mode of operation | |
US7490314B2 (en) | System and method for exposing tasks in a development environment | |
US5140677A (en) | Computer user interface with window title bar mini-icons | |
US6201539B1 (en) | Method and system for customizing a data processing system graphical user interface | |
US5579466A (en) | Method and system for editing and formatting data in a dialog window | |
US5428734A (en) | Method and apparatus for enhancing drag and drop manipulation of objects in a graphical user interface | |
EP1526463A1 (en) | Electronic sticky notes | |
JPH0683561A (ja) | 電子メイルを入力する方法及び装置 | |
US7614009B2 (en) | Method for controlling filename display for image and video file types | |
JP3950937B2 (ja) | インターフェースの方法、複合文書生成方法、及び複合文書表示方法 | |
WO1995018406A9 (en) | Frame structure which provides an interface between parts of a compound document | |
JP2007317212A (ja) | コンピュータ・ディスプレイ上の不明瞭なアイテムを取り扱う方法 | |
CA2487312C (en) | Computer-human interface system for compound documents | |
MXPA05008354A (en) | An improved user interface for displaying selectable software functionality controls that are contextually relevant to a selected object |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040928 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041215 |
|
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: 20060725 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060824 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090908 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100908 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100908 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110908 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120908 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130908 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |