JP2741826B2 - Collaborative methods of computer-based systems and operation - Google Patents

Collaborative methods of computer-based systems and operation

Info

Publication number
JP2741826B2
JP2741826B2 JP4323418A JP32341892A JP2741826B2 JP 2741826 B2 JP2741826 B2 JP 2741826B2 JP 4323418 A JP4323418 A JP 4323418A JP 32341892 A JP32341892 A JP 32341892A JP 2741826 B2 JP2741826 B2 JP 2741826B2
Authority
JP
Japan
Prior art keywords
user
cursor
block
lock
record
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 - Fee Related
Application number
JP4323418A
Other languages
Japanese (ja)
Other versions
JPH05242027A (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
Priority to US816623 priority Critical
Priority to US07/816,623 priority patent/US5337407A/en
Application filed by インターナショナル・ビジネス・マシーンズ・コーポレイション filed Critical インターナショナル・ビジネス・マシーンズ・コーポレイション
Publication of JPH05242027A publication Critical patent/JPH05242027A/en
Application granted granted Critical
Publication of JP2741826B2 publication Critical patent/JP2741826B2/en
Anticipated expiration legal-status Critical
Application status is Expired - Fee Related legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation, e.g. computer aided management of electronic mail or groupware; Time management, e.g. calendars, reminders, meetings or time accounting

Description

【発明の詳細な説明】 DETAILED DESCRIPTION OF THE INVENTION

【0001】 [0001]

【産業上の利用分野】本発明は、協働的コンピュータ・ BACKGROUND OF THE INVENTION This invention is, collaborative computer
システムに関し、より具体的には、共用データ・オブジェクト用の協働的編集システムに関する。 It relates to a system, more particularly, to collaborative editing system for shared data objects. さらに具体的には、本発明は、協働的エディタ用の修正された「あなたが見る通りに私が見る」(WYSIWIS)インターフェースに関する。 More specifically, the present invention relates to a cooperative has been modified for the editor, "I see on the street you see" (WYSIWIS) interface.

【0002】 [0002]

【従来の技術】協働的システムは、タスクの完成を目指す個々の努力を調整する、実時間コンピュータ・ベース環境として定義される。 BACKGROUND ART collaborative system adjusts the individual efforts aimed at completion of the task is defined as a real-time computer-based environment. グループが関心をもつタスクまたは主題は、文書、生産スケジュール、コンピュータ・ Task or subject matter group has the interest, document, production schedules, computer
プログラム、製品設計、スチルもしくはフルモーションのビデオ・イメージ、またはその解決策が情報の編成された表現によって表されるその他のマルチメディア関連のタスクである。 Program, product design, and other multimedia related tasks represented by organized representation of still or full motion video image or its solutions, information. その表現の構築は、複数の人間の労力によって、具体的には複数の人間の同時の労力によって支援されると想定される。 Construction of the expression, the effort of the plurality of human is contemplated that is specifically supported by simultaneous effort plurality of persons.

【0003】コンピュータ・ネットワークは、通常、作業を調整する手段である。 [0003] The computer network is usually a means for adjusting the work. 作業の主題は、通常、ネットワークを介してアクセス可能なメモリに記憶された1つまたは複数の共用データ・オブジェクトとして構造化される。 Work subject is typically structured as one or more shared data objects stored in memory accessible over the network. データ・オブジェクトを構築するためのマシンは、テキスト・エディタやデータベース管理機能などのソフトウェアである。 Machines for building a data object is software, such as text editors and database management functions. ユーザは、ネットワークによってサポートされたマルチユーザ・インターフェース機能を介して共用データ・オブジェクトにアクセスする。 The user accesses the shared data object through a multiuser interface features supported by the network.

【0004】共用データ・オブジェクトとは、ネットワークを介して複数のユーザが同時にアクセスできるものである。 [0004] The shared data object, a plurality of users via a network is one that can be accessed simultaneously. このようなデータ・オブジェクトには、たとえば、ワード・プロセシング文書やスプレッド・シートが含まれる。 Such data objects, for example, include word processing documents and spreadsheets. 共用データ・オブジェクトは、複数のユーザがそれに対して同時にあるタイプのアクセスを行うことのできる、データ・オブジェクトである。 Shared data object may be a plurality of users simultaneously some type of access to it, it is a data object.

【0005】したがって、協働的システムの設計者が直面する共通の問題は、複数のユーザの一人一人にどんなタイプの同時アクセスが許されるかである。 [0005] Therefore, collaborative system of the designers of the common problems faced is whether the what type simultaneous access to every one of a plurality of users is allowed. この中心的問題には、いくつかの副次的問題がある。 The central problem, there are several secondary issues. ユーザ・アクセスを、あるオブジェクトを読み出せることだけに限定することもできるが、より一般的には、そのオブジェクトを操作または変更するある種の権利を含める。 User access, but can also be limited only to the ability to read a certain object, more generally, include certain rights to operate or modify the object. たとえば、複数のユーザのうちの誰にそのデータ・オブジェクトを変更する権利を与えるか。 For example, you give the right to change anyone in the data object of the plurality of users. 各ユーザにそのデータ・ The data to each user
オブジェクトの同じ表現を示すか。 Or show the same representation of the object. 各ユーザは共用データ・オブジェクトに対する自分の視点をどの程度自由に変えることができるか。 Or each user can change how freely their own point of view to the shared data objects.

【0006】ユーザは、マルチユーザ・インターフェースを介して共用データ・オブジェクトにアクセスできる。 [0006] The user can access the shared data object through a multiuser interface. このインターフェースは、通常、ユーザのローカル・ワークステーションの制御下にあるビデオ・モニタを含み、それを介して共用データ・オブジェクトのビューが表示される。 This interface typically includes a video monitor under the control of the local workstation of the user, the view of the shared data object is displayed through it. このインターフェースは、オブジェクトの内容を操作する権利を伴う、あるオブジェクトへの多数同時アクセスを可能にするソフトウェアによってサポートされる。 This interface involves the right to manipulate the contents of objects, is supported by software that allows multiple simultaneous access to an object. 共通のマルチユーザ・インターフェースの1つのカテゴリの一般的特徴は、WYSIWISコンセプトと呼ばれている。 General characteristics of one category of common multiuser interface are referred to as WYSIWIS concept. 厳密な形では、各ユーザが同じ視点から全く同じものを見るとともに、各ユーザは共用オブジェクトを操作する明白な直接の権利を与えられる。 In strict form, together with view exactly the same each user from the same perspective, the user is given an explicit direct authority to operate a shared object.
すべてのユーザ・カーソルが同時に表示される。 All of the user cursor is displayed at the same time. 更新は各参加者に伝送されるので、全参加者は実行されつつあることをその実行時に見ることができる。 Since the update is transmitted to each participant, all participants can see that is being executed in the runtime. 実際には、W In fact, W
YSIWISコンセプトは部分的に緩和される。 YSIWIS concept is partially relaxed. たとえば、ユーザは、通常、自分の視点を選択することができる。 For example, users typically can select his point of view. ユーザが選択した視点は、公用オブジェクトの私用ビューとして知られている。 Viewpoint selected by the user is known as private views of public objects. ワード・プロセシング文書では、ユーザが、その文書の自分が現在関心をもつ部分を私用ビューとして選択する。 In a word processing document, the user selects a portion of their own of the document has an interest now as a private view.

【0007】WYSIWISコンセプトは便宜のために緩和されているが、また技術の限界への容認としても緩和されている。 [0007] WYSIWIS concept has been relaxed for convenience and are also mitigated as an admission to a limit of technology. ワード・プロセシング文書のテキストに関する協働作業の例を考える。 Consider the example of collaborative work on the text of a word processing document. この文書に対して現在アクセス権を有する各ユーザのローカル・ワークステーションのビデオ・モニタ上にウィンドウが生成され、テキストはウィンドウ内に複製された文書から取られる。 Window is generated for the document on the video monitor of the local workstation of each user currently has access, text is taken from a document that are replicated in the window. 各ユーザは、文書内の自分が変更を行う点を示す、1つのテキスト・カーソルを有する。 Each user, indicates a point to carry out their own changes in the document, with one of the text cursor. 厳密なWYSIWISでは、すべてのテキスト・カーソルが表示されるはずである。 In strict WYSIWIS, should all of the text cursor is displayed. 実際には、カーソルまたは特定のユーザに関連する文書のその他の部分の所有権を一目で区別できないと、 In fact, indistinguishable ownership of the other parts of the documents relating to a cursor or a particular user at a glance,
混乱を生ずることがわかっており、ユーザ自身のものを除き、ユーザのビデオ・モニタから私用カーソルまたは文書の一部分を抑制することがしばしば必要になる。 Has been found to cause confusion, except those of the user's own, it is often necessary to suppress the part of private cursor or document from the video monitor of the user.

【0008】ワード・プロセシング文書内の同じ語を変更しようとする同時試行など、ユーザ活動における争奪または衝突も問題を引き起こす可能性がある。 [0008] and simultaneous attempts to change the same word of word-processing document, there is a possibility to cause contention or collision is also a problem in user activity. 厳密なW The exact W
YSIWISでは、争奪の発生が許される。 In YSIWIS, the occurrence of contention is allowed. 各ユーザに即時アクセス可能な印象が与えられる。 Immediate access possible impression is given to each user. すべてのワークステーションが1つの部屋にある、またはある形の遠隔会議が行われている状況では、参加者達が会話によって衝突を解決できるので、このような衝突を許すことは許容される。 All workstations are in one room, or in situations where remote conference some form is being performed, it is possible to resolve the conflict participant who is the conversation, it is acceptable to allow such collisions. ユーザ同士間の通常の通信が共用文書の変更によって暗示されるものである場合、または共用文書が図形イメージやその他のマルチメディア技術の使用のように複雑である場合、または複数のユーザが同時に同じ文書を編集中である場合、衝突はそれほど許容されない。 When normal communications between users to each other is intended to be implied by changes in the shared document, or if the shared document is complicated as the use of graphical images or other multimedia technologies, or a plurality of users simultaneously same If you are editing a document, collision is not so acceptable.

【0009】 [0009]

【発明が解決しようとする課題】本発明の目的は、協働的コンピュータ・ベース・システムを操作する改善された方法を提供することである。 An object of the present invention is to provide a, it is to provide an improved method of operating a collaborative computer based system.

【0010】本発明の別の目的は、データ・オブジェクトに対する協働的ユーザ・アクションのためのコンピュータ・ベース編集システムを提供することである。 Another object of the present invention is to provide a computer-based editing systems for collaborative user action for the data object.

【0011】本発明の別の目的は、協働的コンピュータ・ベース・システムでの操作に対してロックされた共用データ・オブジェクト内のセグメントを識別する方法を提供することである。 Another object of the present invention is to provide a method for identifying a segment of the locked shared data object with respect to operations in a collaborative computer based system.

【0012】 [0012]

【課題を解決するための手段】前記の諸目的は、以下に記載するようにして達成される。 Means for Solving the Problems] Purposes of above, is accomplished as described below. 本発明の方法は、協働的コンピュータ・ベース・システムにおいて、テキストのブロックまたは共用データ・オブジェクトの他の部分の識別を行うために利用できる。 The method of the present invention, the collaborative computer based system, available for identification of blocks or other parts of the shared data object text. この協働的コンピュータ・ベース・システムは、複数のワークステーションを含む。 The collaborative computer based system includes a plurality of workstations. 各ワークステーションは、出力表示装置及びユーザ入力装置を含む。 Each workstation includes an output display device and a user input device. 協働的コンピュータ・システムは、 Collaborative computer system,
そのシステムの複数のユーザによって同時にアクセス可能な共用データ・オブジェクトを含む。 Simultaneously by multiple users of the system including the accessible shared data object. ユーザが共用データ・オブジェクトへのアクセス権を得るのに応答して、そのユーザに、他のユーザの視覚表示装置上に表示するためのカーソルが割り当てられる。 In response to a user gain access to the shared data object, to the user, it is assigned a cursor for display on the visual display devices of other users. 割り当てられたカーソルは、そのユーザに関係する視覚特性をもつ。 Assigned cursor has a visual characteristic associated with the user. ユーザの選択に応答して、共用データ・オブジェクトの以前に選択されなかった部分が、ユーザに関連づけられる。 In response to a user selection, the previously not selected portion of the shared data object is associated with the user. 共用データ・オブジェクトの一部分のこのような関連づけの際に、確立ユーザのユーザに関係する視覚特性が、新しく関連づけられた部分にまで拡張される。 During such association of a portion of the shared data object, the visual characteristic associated with the user of the establishment user is extended to the associated new parts. さらに、他のユーザがこれらの関連づけられた部分を修正できないようにすべきかどうかなど、連関の性質を識別するための第2の視覚属性が、そのオブジェクトにまで拡張される。 Furthermore, whether it should not be modified the portion other users associated with them, a second visual attribute to identify the nature of the linkage is extended to the object.

【0013】本発明の上記ならびに追加の目的、特徴、 [0013] The above as well as additional object of the present invention, features,
及び長所は、以下の詳細な説明から明らかになろう。 And advantages will become apparent from the following detailed description.

【0014】 [0014]

【実施例】ここで図面、具体的には図1を参照すると、 EXAMPLES drawings where, and in particular with reference to Figure 1,
本発明の方法に従って利用されるローカル・エリア・ネットワークの絵画図が示されている。 Pictorial view of a local area network is shown which is utilized in accordance with the method of the present invention. ローカル・エリネットワーク8は、サーバに記憶されたデータ・オブジェクトに関係する協働的コンピュータ・ベース編集システムをサポートする。 Local area network 8 supports a collaborative computer based editing system relating to a data object stored on the server. ローカル・エリア・ネットワーク8 Local area network 8
は、伝送チャネル10を介して複数のパーソナル・コンピュータ12間のデータ通信を提供する。 Provides data communication between 12 the plurality of personal computers through a transmission channel 10. 図のシステム内のコンピュータ12は、IBMパーソナル・コンピュータ、IBMパーソナル・システム/2、またはその他の類似のシステムを利用して提供することが好ましい。 Computer 12 in Fig system is preferably provided using IBM personal computer, the IBM Personal System / 2 or other similar system.
当業者なら理解できるように、コンピュータ12は、一般に、ローカル・エリア・ネットワークのユーザにメッセージを送るためのユーザ入力をビデオ表示装置内で受け取るためのキーボードを含む。 As can be appreciated by those skilled in the art, the computer 12 typically includes a keyboard for receiving user input to send messages to users of the local area network in a video display device. コンピュータ12の1 1 of the computer 12
つは、ネットワーク8のサーバとして機能する。 One serves as a server of the network 8. このサーバは、たとえば、IBM適用業務システム/400などの大型コンピュータでよい。 This server may be, for example, a large computer such as the IBM application System / 400.

【0015】図2は、本発明によってサポートされるマルチユーザ・インターフェースの機能の例を含むウィンドウの絵画図である。 [0015] Figure 2 is a pictorial view of a window including examples of features of a multiuser interface supported by the present invention. ウィンドウ18は、コンピュータ12の表示スクリーン上に現れるような通常のウィンドウである。 Window 18 is the normal window as it appears on the display screen of the computer 12. ローカルで生成されるマウス・ポインタ22 Mouse pointer is generated locally 22
を使って、ウィンドウの制御機能を操作することができる。 Using, it is possible to operate the window of the control function. ウィンドウ18は、ユーザによってアクセスされる共用データ・オブジェクトを識別するタイトル・バー2 Window 18 includes a title bar 2 identifying the shared data object accessed by the user
4を含む。 Including 4. 表示フィールド27は、共用データ・オブジェクトの私用ビュー28を示す。 Display field 27 shows the private view 28 of the shared data object. カーソル20及び26 Cursor 20 and 26
も表示フィールド27内に現れている。 Also appear in the display field 27. カーソル20 Cursor 20
は、私用ビュー28のユーザに割り当てられたカーソルである。 Is a cursor that is assigned to the user's private view 28. カーソル26は、同じ共用データ・オブジェクトに対するアクセス権を有しているが、私用ビュー28 Cursor 26, but has access to the same shared data object, I for the view 28
中まで延びている共用データ・オブジェクトの少なくとも一部分にアクセスしている、別のユーザに割り当てられたカーソルである。 Accessing at least a portion of the shared data object extending up in a cursor assigned to another user. カーソル20は、ユーザによって発生された移動コマンドに応答して位置を移す。 The cursor 20 moves the position in response to movement commands generated by the user. カーソル26は、スクリーンの周囲を移動し、遠隔地点からのコマンドに応じて表示フィールド27の外に出ることもある。 The cursor 26 moves around the screen, sometimes out of the display field 27 in response to a command from the remote location. 共用データ・オブジェクトは、表示フィールド2 Shared data objects, display field 2
7内に複製されたテキストの行によって部分的に表されるワード・プロセシング文書でもよいが、図形イメージやその他のタイプの文書でもよい。 It may be a word processing document that partially represented by replicated lines of text in 7, but may be a document of graphical image or other type.

【0016】カーソル20及び26は、カーソル20のソリッド・シェーディング及びカーソル26のクロスハッチングによって示される、視覚的に明確な外観を生ずる表示属性をもつ。 [0016] The cursor 20 and 26 has a display attribute that produces a visually distinct appearance indicated by cross-hatching of solid shading and the cursor 26 of the cursor 20. 好ましい実施例では、これらのカーソルは区別のできるカラーつきで見える。 In the preferred embodiment, these cursors appear in color with that can distinguish.

【0017】図3は、ユーザ表示装置上に生成されたウィンドウ102の絵画図である。 [0017] Figure 3 is a pictorial view of a window 102 generated on a user display device. テキスト・エディタ機能がウィンドウ102と関連している。 Text editor function is associated with the window 102. 表示フィールド104内には、目標テキスト・オブジェクトの私用ビューがある。 In the display field 104, there is a private view of a target text object. ユーザは、自分に割り当てられたカーソル1 The user, cursor 1 assigned to your
08を、自分が変更をしたいまたは資料を追加したい点に合わせることによって、この目標テキスト・オブジェクトを編集する。 08, by combining the point where you want to add a want or materials to their own change, to edit this goal text object. カーソル108は、浮動する一時的ロック領域106に埋め込まれた形で現れ、ロック領域1 The cursor 108 will appear in a form embedded in a temporary lock area 106 to float, lock area 1
06は、カーソル108が現在位置する語または語と同等なオブジェクトにまで延びる。 06 extends to the word or word equivalent object cursor 108 is presently located. カーソル108及びロック領域106は、カラー・モニタ上にカラーつき領域として現れ、カーソル108及びロック領域106の特定のカラーならびにロック領域106の背景の外観が、 Cursor 108 and lock region 106 appear as a color with areas on a color monitor, the appearance of the background of a particular color and lock area 106 of the cursor 108 and lock region 106,
カーソル108及びロック領域106の所有者ならびにロック領域のタイプを示す。 Indicating the type of the owner as well as the locking area of ​​the cursor 108 and lock region 106.

【0018】領域110は、特定のユーザに固有のカラーづけによってマークされ、そのユーザとの何らかの関連を示す。 The region 110 is marked by a unique color pickled to a particular user, show some association with that user. 領域110は、所有権を識別することができ、また他のユーザによって編集されないようにロックすることもできる。 Region 110 may identify ownership, it can also be locked so as not to be edited by other users. 第2のユーザ・カーソル114が、 The second user cursor 114,
浮動ロック領域112に埋め込まれて、表示フィールド104のビュー内に現れる。 Embedded in a floating lock region 112 appear in the view of display field 104. この場合も、カーソル11 In this case, the cursor 11
4及びロック領域112は、カーソル114の所有者を識別する固有のカラーである。 4 and the lock region 112 is a unique color to identify the owner of cursor 114. 領域110は、カーソル108、114の所有者、または協働的エディタの第3 Region 110, a third owner or collaborative editor cursor 108,114
の現在のまたは過去のクライアントと関連づけられる。 It is associated with a current or past clients.

【0019】図4は、協働的図形エディタを使用した編集用に、共用図形オブジェクトに開かれたウィンドウ1 [0019] FIG. 4, cooperatively for editing using the graphical editor, window 1 that is open to the shared graphic object
16の絵画図である。 16 is a pictorial view of. カーソル130、138、140 Cursor 130,138,140
によって表される3人のユーザが、表示フィールド11 3 users represented by the display field 11
7内に現れる共用図形オブジェクトのビュー内に現れる。 It appears in the view of the shared graphic objects that appear in the 7. テキスト・セグメント118、汽車の線画120、 Text segment 118, train of line drawing 120,
第2のテキスト・セグメント122、宇宙船オブジェクト124と月オブジェクト125と宇宙旅行者オブジェクト126と惑星オブジェクト127とを囲む線画12 Second text segment 122, a line drawing 12 surrounding and the planet object 127 spacecraft object 124 and the moon object 125 and space tourist objects 126
3、ならびに第3のテキスト・セグメント128を含む複数のサブオブジェクトがビュー内に現れる。 3, and a plurality of sub-object containing the third text segment 128 appears in the view. 各領域またはその境界の視覚属性が、その領域とユーザの間の何らかの関連状況を示す。 Each region or the visual attributes of the boundaries, show some relevant circumstances between that region and the user. 領域142、134、123 Area 142,134,123
は、ユーザ選択領域であり、いつでも当該の確立ユーザによって取り消される。 Is a user-selected area, at any time is canceled by the establishment user. このユーザ選択領域は、他のユーザによって操作されないようにロックすることができ、また単に所有者を示すために使用することもできる。 This user selected area may be locked so as not to be operated by another user, it can also be simply used to indicate the owner.

【0020】各ユーザ・カーソル130、138、14 [0020] each user cursor 130,138,14
0は、それ自体を区別するカラーをもつ。 0, with a distinguishing color itself. 各カーソルは、カーソル・ロック領域132、136、144の1 Each cursor, 1 of the cursor lock region 132,136,144
つの内部に現れ、これらのカーソル・ロック領域も区別する視覚属性、好ましくは固有のカラーをもつ。 One manifestation inside, these cursor lock region distinguishing visual attributes, preferably have a specific color. この場合も、これらのカーソル・ロック領域は、浮動的かつ一時的であり、カーソルがユーザ選択領域または別のユーザのカーソル・ロック領域をもたないときに生ずる。 Again, these cursor lock regions are floating and temporary, it occurs when the cursor is no cursor lock region of the user-selected area or another user. カーソル・ロック領域の形状及びサイズは、ユーザが選択できる。 The shape and size of the cursor lock area, the user can select. たとえば、カーソル138の所有者は円形のカーソル・ロック領域136を選択したが、カーソル14 For example, the owner of cursor 138 has selected the circular cursor lock region 136, the cursor 14
0の所有者は正方形のカーソル・ロック領域144を選択した。 The owner of 0 is selected the cursor lock region 144 of the square. カーソル130の所有者はオブジェクト・ロック領域132を選択したが、この領域132は下にあるオブジェクト125の形状を引き継いでいる。 The owner of cursor 130 has selected the object lock region 132, the region 132 has taken over the shape of the object 125 under.

【0021】図5は、カーソル146によって表される第4のユーザの、表示フィールド117のビューへの進入を示す絵画図である。 [0021] FIG 5 is a fourth user, represented by cursor 146, it is a pictorial view showing the entry to the view of display field 117. カーソル146のユーザは、表示フィールド117内に表示されたXによって示される選択点145を生成することによって、新しい領域の選択を開始した。 User cursor 146, by generating a selected point 145 as indicated by X displayed in the display field 117, selection was started in the new region. カーソル146は、他のカーソルと同様にカラーでそのユーザが識別される。 The cursor 146, the user is identified by a color similar to the other cursor. カーソル146 Cursor 146
は、正方形のカーソル・ロック領域148によって取り囲まれ、この領域148もカラーで所有者が識別される。 Is surrounded by a square cursor lock region 148, the region 148 is also the owner is identified by color.

【0022】図6は、カーソル146のユーザによる選択領域の完成を示す絵画図である。 [0022] FIG. 6 is a pictorial view showing the completion of the selected area by the user of the cursor 146. 第2の選択点147 The second selection point 147
の選択、及び矩形構築要求によって、表示フィールド1 The selection, and a rectangular construction request, display field 1
17に選択領域150がペイントされる。 17 selected region 150 is painted on. 選択領域15 Select region 15
0は、図6ではクロスハッチングによって示されており、他のユーザ関連領域と同様に、その所有者及びタイプを他のユーザに対して識別する、何らかの視覚的に区別する属性をもつ。 0 is indicated by cross-hatching in FIG. 6, as well as other user-related areas, it identifies the owner and type to other users, has some visually distinguishing attribute. この指示を行う表示スタイルが好ましい。 Display style to make this indication is preferred.

【0023】図7は、カーソル146のユーザによる、 [0023] FIG. 7, by the user of the cursor 146,
選択領域150の関連タイプの選択を示す絵画図である。 It is a pictorial diagram illustrating selection of a related type selection area 150. この場合も、このようなタイプは、ユーザ選択ロック領域の単なる「所有権」または作成でよい。 Again, such a type may simply "ownership" or creation of a user select lock region. 関連の変更は、その領域、この場合はユーザ選択ロック領域15 Related changes its area, in this case the user selects the lock region 15
1の視覚属性または表示スタイルの変化によって示される。 Represented by one of the changes in the visual attributes or display style. 異なるタイプの関連に、異なる形式の相互関連やカラー・シェーディングなど、異なる視覚属性を与えることもできる。 In the context of different types, such as inter-related and color shading of different formats, it is also possible to give a different visual attributes.

【0024】図8ないし図10は、カーソル・ロック・ [0024] FIGS. 8 through 10, the cursor lock
モード・パラメータを選択する機能を制御するために開かれた2つのウィンドウ152及び選択モード・ウィンドウ154の絵画図である。 It is a pictorial view of the two windows 152 and select mode window 154 opened to control features for selecting the mode parameter. 図8を参照すると、ユーザは、表示フィールド153及びマウス・ポインタ22を使って、ONまたはOFFボタンを選択して、テキスト・アプリケーションで自分に割り当てられたカーソルに自動的にロック領域を付加することを選択できる。 Referring to FIG. 8, the user uses the display field 153 and mouse pointer 22, to select the ON or OFF button, adding automatically lock area to the cursor assigned to them in a text application It can be selected. 自動的関連づけを選択する際、ユーザはロック・モードを選択する。 When you select the automatic association, the user selects the lock mode. 文字モード、ワード・モード及びライン・モードは一般にテキスト編集に適している。 Character mode, word mode and line mode is generally suitable for text editing. 当業者なら理解するように、文、パラグラフ、ページなど、他のモードも利用できる。 As will be appreciated by those skilled in the art, sentence, paragraph, such as a page, also other modes can be used. 図9は、イメージまたは図形アプリケーション用のロック領域の選択を示す。 Figure 9 shows the selection of a lock region for an image or graphics application. たとえば、POL For example, POL
YGONボタンの選択は、通常は絵または図形の編集により適したモードである。 Selection of YGON button is usually a mode that is suitable by the editing of the picture or graphic. 「ユーザ定義」モードでは、 In the "user-defined" mode,
ユーザが、さまざまな頂点を指定することによって不規則なロック領域を定義する。 User to define an irregular lock region by specifying various vertices. あるいは、OBJECTボタンを選択することによって、図形情報またはテキスト情報を含むオブジェクトをロック領域として選択することもできる。 Alternatively, by selecting the OBJECT button, you may select the object containing graphical information or text information as a lock region. 同様に、SQUAREまたはCIRCLE Similarly, SQUARE or CIRCLE
ボタンを選択して、それらの形状のロック領域を選択することもできる。 Select button can be selected the lock region of their shape.

【0025】図10は、どのようにしてユーザが選択領域の様々な形状を定義できるかを示す。 [0025] Figure 10 shows how a user can define a variety of shapes of the selected area. ウィンドウ15 Window 15
4の表示フィールド155は、マウスによって選択可能な3つのボタン、すなわちSQUAREボタン、CIR Display field 155 of 4 has three buttons selectable by mouse, i.e. SQUARE button, CIR
CLEボタン及びPOLYGONボタンを含む。 Including the CLE button and POLYGON button. 3つのボタンのいずれかを選択するには、円の半径などいくつかのパラメータの識別が必要である。 To select one of the three buttons, it is necessary to identify a number of parameters such as the radius of the circle. POLYGONを選択する場合は、複数の境界点を指定する必要がある。 When selecting the POLYGON, it is necessary to specify a plurality of boundary points.
このようにして選択モードを指定した後、そのユーザによる以後の選択操作は、選ばれた選択モードによって指定された形状の上で行われる。 After specifying the selection mode this way, the user subsequent selection operation by is performed on the specified by the chosen select mode shapes.

【0026】ネットワーク・サーバは、システムへのログオン時に各ユーザに割り当てられた、カーソルの省略時のカラーを生成する。 [0026] The network server, assigned to log on to the system to each user, to generate the color of the default of the cursor. ただし、このシステムはいくつかの方法でこのインターフェースをローカルに修正する権利をユーザに与える。 However, giving the right to modify the interface locally to the user in this system some methods. このような修正は、図11のウィンドウ34、及び図12のウィンドウ40を介してサポートされる。 Such modifications are supported through window 34, and window 40 of FIG. 12 in FIG. 11. 図11に示すように、ウィンドウ34 As shown in FIG. 11, the window 34
は、その名前バー36内に「ローカル表示オプション」 Is, "local display options" in the name bar 36
と記載されている。 It has been described as. カラー・モード38に関して4つの選択が提供される。 Four of selection is provided with respect to color mode 38. これらの選択は、各ユーザが異なるカラーを受け取るFULL、ユーザ自身のカーソルに1 These choices, 1 FULL, the user's own cursor each user receives a different color
つのカラーを、他のすべてのユーザのカーソルに別のカラーを提供するTWO COLOR、モノクロ・スクリーン上で各カーソルの強度を変えるGREY SCAL One of the color, changing TWO COLOR to provide a different color to the cursor of all other users, the intensity of each cursor on a monochrome screen GRAY SCAL
E、及び各カーソルを区別するためにハッチング、平行線、フラッシングなどの背景を使用するFILL PA E, and hatching to distinguish each cursor, parallel lines, FILL PA that uses backgrounds such flushing
TTERNである。 Is TTERN. 選択されたカラー・モードは、共用データ・オブジェクト内に発生するロック領域のユーザが選択し定義した関連及びユーザに割り当てられたカーソルにまで延びる。 Color mode selected extends to the assigned to the relevant and user user lock region which occurs in the shared data object is selected defines the cursor.

【0027】パレット・オプション39は、フル・カラー・モードでのカラーの選択に関係する。 The palette option 39 is related to the color of choice in full-color mode. DEFAUL DEFAUL
Tボタンを押すと、システムによって確立されたカラーが呼び出される。 Press T, color established by the system is called. CUSTOM PALLETTEボタンを押すと、図12に示すウィンドウ40が生成される。 Pressing the CUSTOM Pallette button, the window 40 shown in FIG. 12 is generated. ウィンドウ40内で、ユーザは各ユーザ用の新しいカラーを選択することができる。 In the window 40, the user can select a new color for each user. カラー選択によって、 By the color selection,
部分的に色盲であるユーザが各種カラーのパレットを選択することができる。 Partially user is color-blind can select a palette of various colors. ユーザ/カラー・テーブル44 User / color table 44
が、ウィンドウ40の表示フィールド内に現れる。 But, it appears in the display field of the window 40. 特定のユーザを選択すると、カラー・ホイール46から特定のカラーが選択される。 When selecting a particular user, a particular color is selected from color wheel 46. カラーの強度は、スクロール・ The intensity of the color, scroll
バー50を操作することによって変えることができる。 It can be varied by operating the bar 50.
選択は修正ボタン48からボタンによって行われる。 Selection is made by a button from the Modify button 48. ボタン48には、取消しボタン及び省略時値選択ボタンも含まれ、省略時値選択ボタンを押すと特定のユーザに最初に割り当てられたカラーが復元される。 The button 48, also includes a cancel button and the default selected button, initially assigned color to a particular user by pressing the default selection button is restored.

【0028】図13は、好ましい実施例において協働的コンピュータ・ベース編集システムをサポートするためのローカル・エリア・ネットワーク8のブロック・ダイアグラムを示す。 [0028] FIG. 13 shows a block diagram of a local area network 8 for supporting collaborative computer based editing system in the preferred embodiment. サーバ12は、通信チャネル10を介してコンピュータ12a〜12nと通信する。 Server 12 communicates with the computer 12a~12n through the communication channel 10. ローカル・エリア・ネットワーク8は、トークン・リングの形で示されているが、他の形状も可能である。 Local area network 8 is depicted in the form of a token ring, other shapes are possible. サーバ12 Server 12
は、本発明を実施するためにプログラミングされたIB It was programmed to implement the present invention IB
Mパーソナル・システム/2やAS/400システムなどの通常のコンピュータであり、中央演算処理装置6 A typical computer, such as M Personal System / 2 or AS / 400 system, a central processing unit 6
0、メモリ64、及び発信をフォーマットし着信をデフォーマットするためのネットワーク・アダプタ62を含む。 0, a network adapter 62 for de-formatting the formatted incoming memory 64, and outgoing. サーバ12は、一人または複数のユーザによるアクセス要求があるまで複数の共用データ・オブジェクトを記憶する、ハード・ドライブ・ユニット56を含む。 Server 12 stores a plurality of shared data object until there is an access request by one or more users, including a hard drive unit 56. このような要求があると、データ・オブジェクトがデータ・バス58を介してコンピュータ・メモリ64に転送される。 If there is such a request, the data object is transferred to the computer memory 64 through the data bus 58. いくつかのオブジェクトがメモリ64内に存在する。 Some of the objects are present in the memory 64. オペレーティング・システムとローカル・エリア・ Operating systems and local area
ネットワーク・サーバ66は、1つのオブジェクトとして表されている。 Network server 66 is represented as a single object. 協働的機械に共用データ・オブジェクトの生成及び修正を行わせるために、エディタ・プログラム68、関連/ロック・リスト70及びカーソル・リスト72が、特定の編集オブジェクト、ここでは第1の編集オブジェクト74と関連づけられている。 In order to perform the generation and modification of shared data object in collaborative machine editor program 68, association / lock list 70 and cursor list 72, specific editing objects, first edit object 74 here It has been associated with. 追加の編集オブジェクトが同時に存在してもよい。 Additional editing object may be present at the same time.

【0029】ユーザはコンピュータ12a〜12nを介して共用データ・オブジェクトにアクセスする。 The user has access to shared data objects via a computer 12a~12n. コンピュータ12bは、典型的な例である。 Computer 12b is a typical example. コンピュータ12 Computer 12
bは、コンピュータ12と通信するパーソナル・ワークステーションとして機能する。 b functions as a personal workstation communicating with computer 12. 概略的には、パーソナル・ワークステーション12bは、実質的にコンピュータ12に類似しており、ネットワーク・アダプタ78、ディスプレイ・アダプタ84、ハード・ドライブ・ユニット90、中央演算処理装置(CPU)82及びアドレス可能メモリ88を含む。 Schematically, personal workstation 12b is substantially similar to computer 12, a network adapter 78, display adapter 84, a hard drive unit 90, a central processing unit (CPU) 82 and the address possible, including the memory 88. パーソナル・ワークステーション12bの諸構成要素が、データ・バス83を介してデータを転送する。 Various components of the personal workstation 12b transfers the data via the data bus 83. CPU82は、キーボード及びマウスを含む入力周辺装置80を直接制御する。 CPU82 controls input peripherals 80 which includes a keyboard and a mouse directly. ディスプレイ・アダプタ84は、ウィンドウを生成する表示装置86 Display adapter 84, display apparatus for generating a window 86
を駆動する。 To drive. メモリ88は、パーソナル・ワークステーション12bのユーザによってアクセスされる文書71 Memory 88, the document is accessed by the user of the personal workstation 12b 71
のレプリカ92を含む。 Including a replica 92. レプリカ92にアクセスすると、共用データ・オブジェクトのユーザの私用ビューを、その私用ビューをサポートするためにネットワーク10にそのデータを転送するという負担をかける必要なく、変更することができる。 When accessing a replica 92, a private view of the user of the shared data object without the need to burden of transferring the data to the network 10 to support the private view can be changed. また、コマンド構造94も存在し、ネットワーク8上で通信セッションを確立するために使用される。 The command structure 94 also exists, which is used to establish a communication session over the network 8.

【0030】第1の編集オブジェクト74の変更を実施するマシンは、それに関連するエディタ68、関連/ロック・リスト70、及びカーソル・リスト72である。 [0030] machine to carry out the change of the first edit object 74, editor 68 associated with it, association / lock list 70, and a cursor list 72.
文書71は、関連/ロック・リスト70、カーソル・リスト72、及び目標編集オブジェクト74からなる。 Document 71, association / lock list 70, the cursor list 72, and a target edit object 74. カーソル・リスト72は、第1の編集オブジェクト74に現在アクセスしている各ユーザのレコードである。 Cursor list 72 is each user's record that are currently accessing the first edit object 74. 関連/ロック・リスト70は、編集オブジェクト74のアンロック領域へのカーソルの移動によって生成されるロック領域、及びユーザによってすでに確立されているロック領域、ならびにユーザに関連するその他の領域を含む。 Association / lock list 70 includes lock regions generated by the movement of the cursor to the unlocked area of ​​edit object 74, and already locked are established area by the user, as well as other regions associated with the user. カーソル・リスト72は、新しいユーザが編集オブジェクト74にアクセスしたとき、またはユーザが編集オブジェクトをログオフしたときに更新される。 Cursor list 72, when a new user has access to edit object 74, or the user is updated when you log off the editing object. 関連/ Relation/
ロック・リスト70内のエントリ・レコードは、カーソルの移動、及びユーザによる選択及び選択解除操作の実行によって変化する。 Entry records lock list 70 may vary with the execution of the movement of the cursor, and select and deselect operations by the user. 関連/ロック・レコードは、起点、終点、関連タイプ、及びユーザ識別を含む。 Association / lock record includes origin, end point, an association type, and user identification.

【0031】図14は、協働的コンピュータ・ベース・ [0031] FIG. 14 is a collaborative computer-based
システム6をサポートする代替実施例のブロック・ダイアグラムである。 It is a block diagram of an alternative embodiment that supports the system 6. 図14は、クライアント12A〜12 Figure 14, client 12A~12
C用の文書71のレプリカ92が、メモリ64内に含まれており、サーバ12内で実行される点を除いて、図1 Replica 92 of document 71 for C is included in the memory 64, except that it is executed by the server 12 within, FIG. 1
3に類似している。 It is similar to 3. 入出力プロセッサ61は、複数のプログラミング不能なワークステーション(NWS)85 The input-output processor 61, a plurality of programming non workstations (NWS) 85
と通信する。 To communicate with. この実施例では、サーバ12は、複数のプログラミング不能ワークステーションに接続されたIB IB In this embodiment, the server 12, which is connected to a plurality of programming non workstation
M適用業務システム/400など、複数のプロセスを走らせる単一のコンピュータ・システムになる。 Such as M application system / 400, into a single computer system running multiple processes. 各プログラミング不能ワークステーション85は、メモリ64内に対応するレプリカ92をもつ。 Each programming non workstation 85 has a replica 92 corresponding to the memory 64.

【0032】図15及び図16は、それぞれ、本発明の第1の実施例、及び第2の実施例を実施する際に使用されるデータ・レコード160、162、164、166 [0032] FIGS. 15 and 16, respectively, the first embodiment, and the data records used in practicing the second embodiment of the present invention 160, 162, 164, 166
を示す。 It is shown. これらの実施例は、協働的テキスト編集、及び協働的図形またはピクチャ編集に関する。 These examples, collaborative text editing and collaborative related graphic or picture editing.

【0033】協働的テキスト・エディタ用の現ユーザ・ The current user for a collaborative text editor
リストは、カーソル・レコード160を指すポインタのリストを含み、カーソル・レコードの1つが詳細に示されている。 List includes a list of pointers to cursor records 160, one of the cursor record is shown in detail. 各現ユーザごとに1つのカーソル・レコードが存在する。 One of the cursor record exists for each current user. レコード160は、そのカーソルの一義的識別子を含む。 Record 160 includes a unique identifier of the cursor. テキストの行、及びカーソルの行内でのオフセットを示す現在位置レコードが維持され、各コマンドによる更新を受けて、位置が変化する。 Line of text, and the current position record indicating the offset in the row of the cursor is maintained, it receives updated by each command, position changes. レコード1 Record 1
60は、新しい領域の選択の際にロッキングまたはその他の目的で利用される2つの関連フィールドを含む。 60 includes two related fields utilized in locking or other purposes in the selection of a new region. S
ELECT_ONフィールドは、選択領域が活動状態であることを示すフラグである。 ELECT_ON field is a flag indicating that the selected region is active. 選択領域は、関連タイプに関して識別されていない、新たに識別された領域である。 Selected region is not identified for the relevant type, a newly identified region. SELECT_LOCKフィールドは、選択領域用のレコードを指すポインタである。 SELECT_LOCK field is a pointer to a record for the selected area.

【0034】ユーザ・ロック・リストは、他のユーザに対してロックされている領域のロック・レコードを指すポインタのリストである。 The user lock list is a list of pointers to lock records of the area that is locked to other users. カーソル・ロックは、そのカーソルに関連する浮動ロックに関するロック・レコードを指すポインタを含むフィールドである。 Cursor lock is a field that contains a pointer to a lock record for floating lock associated with the cursor. ポインタは存在することもしないこともある。 Pointer is also not also be present. 最後に、関連領域リストは、他のユーザによって操作されないようにロックされている以外の何らかの形でユーザと関連づけられている「関連/ロック」レコードを指すポインタを含むフィールドの集まりである。 Finally, relevant region list is a collection of fields containing pointers to "association / lock" records which are associated with the user in some manner other than that is locked so as not to be operated by another user.

【0035】レコード162は、このような関連/ロック・レコードの特徴を備えている。 The record 162 has a feature of such association / lock record. このレコードは、所有カーソルの識別番号を含む。 This record includes the identification number of the owner cursor. 関連タイプ、たとえば選択ロック、ユーザ・ロック、カーソル・ロック、所有権などが識別される。 Related type, for example selection lock, user lock, cursor lock, such as the ownership is identified. 行及びオフセットに関して、領域の先頭及び末尾を識別するためのフィールドが設けられている。 Respect rows and offset, it is provided fields for identifying the beginning and end of the region.

【0036】図16は、協働的図形エディタ用に利用されるデータ構造レコードを示す。 [0036] FIG. 16 shows a data structure records utilized for a collaborative graphics editor. 協働的図形エディタ用の現ユーザ・リストは、カーソル・レコード164を指すポインタのリストを含み、カーソル・レコードの1つが詳細に示されている。 Collaborative current user list for the graphics editor includes a list of pointers to cursor records 164, one of the cursor record is shown in detail. 各現ユーザごとに1つのカーソル・レコードが存在する。 One of the cursor record exists for each current user. レコード164は、そのカーソルの一義的識別子を含む。 Record 164 includes a unique identifier of the cursor. 図形またはピクチャ内のカーソルのX軸及びY軸座標を示す現在位置レコードが維持され、各コマンドによる更新を受けて位置が変化する。 Current position record indicating the X-axis and Y-axis coordinates of the cursor of a graphic or the picture is maintained, position changes by receiving updated by each command. レコード164は、新しい領域の選択の際にロッキングまたはその他の目的で利用される2つの関連フィールドを含む。 Record 164 includes two related fields utilized in locking or other purposes in the selection of a new region. SELECT_ONフィールドは、選択領域が活動状態であることを示すフラグである。 SELECT_ON field is a flag indicating that the selected region is active. 選択領域は、関連タイプに関して識別されていない、新たに識別された領域である。 Selected region is not identified for the relevant type, a newly identified region. SELECT_LOCKフィールドは、選択領域用のレコードを指すポインタである。 SELECT_LOCK field is a pointer to a record for the selected area.

【0037】ユーザ・ロック・リストは、他のユーザに対してロックされている領域のロック・レコードを指すポインタのリストである。 The user lock list is a list of pointers to lock records of the area that is locked to other users. カーソル・ロックは、そのカーソルに関連する浮動ロックに関するロック・レコードを指すポインタを含むフィールドである。 Cursor lock is a field that contains a pointer to a lock record for floating lock associated with the cursor. ポインタは存在することもしないこともある。 Pointer is also not also be present. 最後に、関連領域リストは、他のユーザによって操作されないようにロックされている以外の何らかの形でユーザと関連づけられている「関連/ロック」レコードを指すポインタを含むフィールドの集まりである。 Finally, relevant region list is a collection of fields containing pointers to "association / lock" records which are associated with the user in some manner other than that is locked so as not to be operated by another user.

【0038】レコード166は、協働的図形エディタ用の関連/ロック・レコードの特徴を備えている。 The record 166 is provided with the features of the cooperative association / lock record for the graphic editor. このレコードは、所有カーソルの識別番号を含む。 This record includes the identification number of the owner cursor. 関連タイプ、たとえば選択ロック、ユーザ・ロック、カーソル・ Related type, for example selection lock, user lock, cursor
ロック、所有権などが識別される。 Lock, such as the ownership is identified. 1つのフィールドが、正方形、円、及びユーザ定義の多角形を含む、領域の形状を識別する。 Identifying one field, a square, a circle, and a polygon of a user-defined, the shape of the region. その領域用に、定義点、すなわち頂点の順序通り並べたリストが維持される。 For that region, defining points, i.e. ordered list in sequence of vertices is maintained. リストの配列は、多角形の境界線によって結合された点のシーケンスを識別するように行われる。 Array of lists is performed to identify the sequence of points joined by polygonal boundaries.

【0039】図17は、テキストまたは図形/ピクチャタイプの協働的編集システムへのクライアントによるアクセスを示す高水準の流れ図である。 [0039] FIG. 17 is a high level flow chart showing the access by the client to the text or graphic / picture types of collaborative editing system. このシステムの初期状態は、サーバがクライアントの接続要求を待っている状態である(ブロック200)。 The initial state of this system is the state in which the server is waiting for client connection request (block 200). サーバは、通常はブロックされ、ホスト・マシンの計算資源をほとんど必要としない。 The server, usually is blocked, requires little computational resources of the host machine. ユーザの要求があると、接続が確立される。 If there is a user request, a connection is established.
判断ブロック202は、ユーザが疑似ユーザであってもよいことを反映しており、終了フラグをセットすることによって終了コマンドをサーバに渡す。 Decision block 202, the user reflects that may be pseudo-user, and passes the end command to the server by setting the end flag. ブロック202 Block 202
からのYES分岐は、このようなフラグを反映している。 YES branch from reflects such a flag. しかし、より普通には、実際のユーザが接続されており、その結果ブロック204が実行されて、要求側クライアント用の「非同期クライアント・マネージャ」が確立される。 However, more usually, it is connected actual users, the result block 204 is executed, "Asynchronous Client Manager" is established for the requesting client. クライアント・マネージャは以下の図19 Client manager the following 19
に示されている。 It is shown in.

【0040】ここで図18を参照すると、クライアントにおけるテキストまたは図形アプリケーション用の協働的エディタの操作を示す高水準の流れ図が示されている。 Referring to FIG. 18, there is shown a high level flow diagram illustrating the operation of a collaborative editor for text or graphics application at the client. このプロセスは、ブロック206から始まり、編集すべき共用文書が識別される。 The process begins at block 206, the shared document to be edited is identified. 次に、ブロック208 Next, block 208
で、クライアントは、サーバと連絡をとり、ブロック2 In, the client contacts the server, block 2
06で識別された文書を要求する。 Requesting document identified by 06. この要求から出た伝送は文字Aで示されている。 Transmission out of this request is indicated by the letter A. サーバによる伝送の受取り(これも文字Aで示されている)は、上の図17のブロック200に示されている。 Receipt of the transmission by the server (which is also indicated by the letter A) is shown in block 200 of the upper of Figure 17. ブロック210で、クライアントは、文字Bで示されるように、サーバからその文書のコピーを受け取る。 At block 210, the client, as indicated by the letter B, receives a copy of the document from the server. その文書は、編集用の目標オブジェクト、カーソル・リスト、カーソル・レコード、及び関連/ロック・レコードを含む。 The document, including the target object for editing, the cursor list, the cursor record, and the association / lock record. その文書はクライアント・メモリに記憶される。 The document is stored in the client memory. 最後に、ブロック212 Finally, block 212
で、ローカル・エディタが初期設定される。 In, the local editor is initialized. これで編集が開始できる。 This editing can begin.

【0041】次に、判断ブロック214で、ユーザから入力を受け取ったか否かを判定する。 Next, at decision block 214 determines whether it has received an input from the user. YESの場合、判断ブロック216で、そのコマンドが有効であったか否かを判定する。 If YES, at decision block 216 determines whether the command is valid. そのコマンドが有効でない場合、ブロック218で、そのユーザに警告が出され、ブロック21 If the command is not valid, at block 218, a warning is issued to the user, block 21
4に戻って次のユーザ・エントリを解析する。 4 to go back to analyze the following user entry. そのコマンドが有効であった場合は、ブロック220で、編集コマンドをサーバに送る。 If the command is valid, at block 220, it sends the edit command to the server. ローカル・エディタ・プログラムとサーバ・エディタ・プログラムの切替え点は、文字Cで示されている。 Switching point of the local editor program and the server editor program is indicated by the letter C.

【0042】次に、有効コマンドに対するローカル・エディタの応答について詳しく説明する。 Next, it will be described in detail the response of the local editor for the effective command. 最初に、ブロック215で、切替え点Fで示されるように、新しいカーソルをサーバから受け取ったか否か判定する。 First, as in block 215, indicated by the switching point F, whether received a new cursor from the server judges. YESの場合、ブロック217で、そのカーソルがローカル文書に追加される。 If YES, at block 217, the cursor is added to the local document. 新しいカーソルをサーバから受け取っていない場合は、ブロック222に進み、ここで編集コマンドをサーバからすでに受け取ったか否かを判定する。 If you did not receive a new cursor from the server proceeds to block 222 to determine where or not it has received already editing commands from the server.
編集コマンドはローカルにも、また別のユーザから出すこともできる。 Editing commands can also be issued as well, also from another user local. ただし、編集コマンドは、サーバからクライアントが受け取るまで作用を受けない。 However, editing commands, not subjected to the action from the server to the client receives. したがって、サーバに伝送するコマンドを識別し、サーバからコマンドを受け取るために、ブロック214及び222が繰り返し実行される。 Therefore, to identify the command to be transmitted to the server in order to receive commands from the server, block 214 and 222 are repeated.

【0043】切替え点Dで示されるように、サーバ・エディタから編集コマンドが戻されると、ブロック224 [0043] As indicated by the switching point D, when the edit command from a server editor returned, block 224
でローカル文書上でそのコマンドを実行する。 In executing the command on the local document. そのようなコマンドが、他のユーザ用のクライアント・マネージャからくることがあり得ることは、以下の議論から明らかになるであろう。 Such a command is, that there may be coming from a client manager for other users, will become apparent from the following discussion. ブロック224で行われる操作については、図20ないし図33を参照して以下で詳細に説明する。 The operations performed at block 224, the following will be described in detail with reference to FIGS. 20 to 33. それには、編集操作、領域関連操作、カーソル移動及びその他の段階が含まれる。 To do this, the editing operation, the area-related operations include moving the cursor, and other steps. 判断ブロック226 Decision block 226
で、そのコマンドがクイット・コマンドまたは脱出コマンドであるかどうか判定する。 In, it is determined that the command is whether the quit command or escape command. そうである場合、ブロック227に進み、所有者のカーソルを削除する。 If so, the flow proceeds to block 227, to remove the cursor of the owner. ブロック229で、削除されたカーソルがこのクライアントのカーソルであったか否かを判定する。 At block 229, the cursor is deleted determines whether a cursor of the client. そうでない場合は、ブロック214に戻って、次のコマンドを待つ。 Otherwise, back to block 214, wait for the next command. 削除されたカーソルがこのクライアントのカーソルであった場合は、ブロック228で、ローカル文書を閉じ、他のローカル・クリーンアップ機能を実行し、その後ローカル・プロセスが打ち切られる。 If the deleted cursor was Cursor of this client, in block 228, close the local document, perform other local cleanup functions, subsequently aborted local process. ブロック226からN N from block 226
O分岐をとってブロック214に戻り、次のコマンドを待つ。 Taking O branch back to block 214, wait for the next command.

【0044】図19は、サーバにおいて処理されているクライアント・マネージャ及び協働的エディタを示す高水準の流れ図である。 [0044] Figure 19 is a high level flow diagram illustrating a client manager and collaborative editor being processed at the server. このプロセスはブロック230から始まり、要求目標オブジェクトまたは文書が他の誰かによって現在編集されているかどうかを判定する。 The process begins at block 230, determines whether the currently edited request target object or document by someone else. NO NO
の場合、ブロック232で、その文書を開き、協働的編集をサポートするために適切なデータ構造を初期設定する。 For, at block 232, open the document, the appropriate data structures to support collaborative editing initializing. 開いた文書が得られた後、またはそれがすでに存在している場合、ブロック234で、新しいユーザ用のカーソル・レコードを作成する。 After the document is opened is obtained, or if it already exists, at block 234, to create a cursor record for the new user. 切替え点Bで示されるように、更新されたカーソル・レコード及びロック・レコードが存在する場合はそれらを含めて、その文書のコピーが、クライアント端末にダウンロードされる。 As indicated by the switching point B, and the cursor record and the lock record the updated exists including their copy of the document is downloaded to the client terminal. ファンアウト点Fで示されるように、新しいカーソルが、他のすべてのクライアントに配布される。 As shown in the fan-out point F, new cursor is distributed to all of the other clients. ブロック236 Block 236
で、その文書にアクセスしているクライアントのリストに新しいユーザを追加する。 In, to add a new user to the list of clients that have access to the document.

【0045】文書内の目標オブジェクトに対するクライアント・アクセスの管理は、ブロック238から始まる。 [0045] The management of client access to the target object in the document, starting from the block 238. 切替え点Cで示されるように、クライアントから編集コマンドを受け取ると、ブロック240で、文書のサーバ・バージョンのセマフォアを得る。 As shown in the switching point C, and receives the editing command from the client, in block 240, obtain the semaphore of the server version of the document. セマフォアを得ると、クライアント・マネージャは文書ファイルに対する排他的アクセス権をもつ。 Upon obtaining the semaphore, the client manager will have exclusive access to the document file. したがって、クライアントによる文書へのアクセスが、一貫性を保持するために直列化される。 Therefore, access to documents by the client is serialized to be consistent. このとき、ブロック242で、文書のサーバ・バージョン上で編集操作を実行する。 At this time, in block 242, to perform the editing operation on the server version of the document. これらの操作については、図20ないし図33を参照して以下で詳細に説明する。 These operations are described in detail below with reference to FIGS. 20 to 33. 次に、ファンアウト点Dで示されるように、ブロック246で、文書のローカル・バージョンに対する並列操作のために現文書に接続されたすべてのクライアントに編集コマンドを配布する。 Next, as indicated by fan-out point D, at block 246, to distribute an edit command to all clients connected to the current document for parallel operation on local versions of the document. 以下で明らかになるように、図18に示したクライアント・エディタは、複数のクライアント・マネージャから編集コマンドを受け取ることがある。 As will become apparent below, the client editor depicted in Figure 18 may receive edit commands from a plurality of client managers. 次に、ブロック248で、最後の編集コマンドがこのクライアント・マネージャのクライアントによるクイットであったかどうか判定する。 Next, it is determined whether or not in block 248, last edit command was quit by the client for this client manager. N
Oの場合は、ブロック250に進み、文書にセマフォアを解放する。 O, see proceeds to block 250, to release the semaphore to the document.

【0046】クライアントのクイット命令の結果として、ブロック252で、文書に接続されたクライアントのリストからそのクライアントを除去し、そのクライアントのカーソル・レコードを削除する。 [0046] As a result of the quit instruction of the client, in block 252, to remove the client from the list of clients that are connected to the document, remove the cursor record of the client. ブロック254 Block 254
で、あるクライアントが、ある文書に接続された唯一の残りのクライアントであったかどうか判定する。 In determines whether a client was the only remaining client connected to a document. YES YES
の場合、ブロック256で、文書を閉じ、必要なクリーンアップ段階を実行する。 For, at block 256, close the document, to perform a clean-up steps required. 次に、ブロック257で、その文書のセマフォアを解放する。 Next, at block 257, to release the semaphore of the document. クライアント・マネージャを閉じて、クライアントだけを取り下げる。 Close the client manager, withdraw the only client.

【0047】図20は、クライアント・エディタがローカル端末上で走っているブロック224及びクライアント・マネージャがサーバ上で走っているブロック242 [0047] Figure 20 is a block 224 and client manager client editor running on a local terminal is running on a server block 242
で行われる操作を示す。 Indicating the operation to be performed in. これらの操作は、大部分が並行しているが、存在する相違について指摘する。 These operations, although mostly in parallel, point out the differences present. ここで図20を参照すると、協働的エディタの操作を示す流れ図が示されている。 Referring to Figure 20, there is shown a flow diagram illustrating the operation of a collaborative editor. このプロセスはブロック258で始まり、コマンド及びそのコマンドを実行するためのカーソルを受け取る。 The process begins at block 258, receives a cursor to execute a command and its command. ブロック260で、そのコマンドが文書の目標オブジェクトを何らかの形で修正するものであるか否かを判定する。 At block 260, it determines whether the command is intended to correct somehow the target object of the document.

【0048】コマンドが目標オブジェクトを修正するものである場合、ブロック262で、そのカーソルに対してロックされている目標オブジェクト内のある位置にそのカーソルが位置するか否かを判定する。 [0048] If the command is intended to correct the target object is determined, at block 262, whether or not the cursor to a location within the target object which is locked against that cursor is positioned. NOの場合、 If NO,
ブロック264で、目標オブジェクトを修正するアプリケーション・コマンドを実行する。 In block 264, to run the application command to modify the target object. これは、カナダ、オタワのCorelsystems Corp. This is Canada, in Ottawa Corelsystems Corp. から市販されているCorelDrawなどの図形エディタ、またはいくつかのテキスト・エディタのうちのいずれかによって利用されるコマンドに類似のコマンドを含み、セーブ・コマンドと編集コマンドを含む。 It includes similar command to commands utilized by any of the graphics editor or some text editor, such as CorelDraw commercially available from, including editing commands and save commands. 操作がクライアント・エディタのビュー内で行われる場合、ディスプレイの適切な修正が実行される。 If the operation is performed in the client editor view, appropriate modifications of the display is executed. 目標オブジェクトがロックされている場合、変更は入力されず、クライアント・ If the target object is locked, the changes are not input, the client
エディタまたはクライアント・マネージャのどちらか該当する方に戻る。 Back toward the corresponding one of the editor or client manager. 目標オブジェクト・ロック状況の決定については、図23及び図24を参照して以下で説明する。 The determination of the target object lock status is explained below with reference to FIGS. 23 and 24.

【0049】文書の目標オブジェクトを修正しないコマンドには、カーソル移動を制御するコマンド、及びロックまたはその他の関連状況に関して目標オブジェクトの領域の選択及び選択解除を必要とするコマンドが含まれる。 [0049] The commands do not modify the target object of a document include commands that require a selection and deselection command, and lock or region of the target object on other relevant circumstances to control the cursor movement. また、このようなコマンドには、目標オブジェクトのセーブ・コマンド及びクイット・コマンドも含まれる。 Moreover, such a command, also includes the save command and quit commands the target object. ただし、ここでは第1のグループのコマンドが主に重要である。 However, here in the command of the first group it is of primary importance. 判断ブロック260からNO分岐をとる場合、判断ブロック266で、コマンドがカーソルを移動させるものであったか否かを判定する。 When taking the NO branch from decision block 260, decision block 266 determines whether the command was to move the cursor. YESの場合、 If YES,
ブロック268で、カーソル移動を実行する、すなわちそのカーソルのカーソル・レコード160または164 At block 268, to perform the cursor movement, i.e. or cursor record 160 of the cursor 164
を更新する。 To update. 次に、プロセスがクライアント・エディタ上で動作している場合、新しいカーソル位置を反映するように表示が更新される(図21及び図22参照)。 Then, if the process is running on the client editor, the display is updated to reflect the new cursor position (see FIGS. 21 and 22). 次に、ブロック272で、カーソル・ロックが更新される(詳細については図25及び図26参照)。 Next, at block 272, the cursor lock is updated (see FIGS. 25 and 26 for details). 以下に説明するように、カーソル・ロックは、カーソルの新しい位置に応じて、戻されることも戻されないこともある。 As explained below, cursor lock, depending on the new position of the cursor is also no returned it to be returned. 次に、適切なクライアント・エディタまたはクライアント・マネージャのどちらか該当する方に戻る。 Then, back toward the corresponding one of the appropriate client editor or client manager.

【0050】コマンドがカーソル移動コマンドでなかった場合は、判断ブロック266からNO分岐をとって判断ブロック274に進む。 [0050] If the command is not a cursor movement command, it proceeds to decision block 274 by taking the NO branch from decision block 266. ブロック274で、コマンドが選択コマンドであるか否かを判定する。 At block 274, it determines whether the command is a selection command. このコマンドは、ユーザとの関連の形について共用データ・オブジェクトの一部分を識別するために利用される。 This command is used to identify the portion of the shared data object for association form of the user. YESの場合、ブロック276で、選択操作を実行する(以下の図27及び図28参照)。 If YES, at block 276, to perform the selection operation (see the following figures 27 and 28).

【0051】コマンドが選択コマンドでなかった場合は、判断ブロック274からNO分岐をとって判断ブロック278に進む。 [0051] If the command was not a selection command, proceed to decision block 278 by taking the NO branch from decision block 274. ブロック278で、コマンドがロック・コマンドであるか否かを判定する。 At block 278, the command determines whether the lock command. このコマンドは、共用データ・オブジェクト内で選択領域をユーザ選択ロック領域に変換する。 This command converts the selected regions to a user selected lock area in a shared data object. YESの場合、ブロック28 If YES, block 28
0で、ロック操作を実行する(以下の図29参照)。 0, executes the locking operation (see below Figure 29).

【0052】コマンドがロック・コマンドでなかった場合は、判断ブロック278からNO分岐をとって判断ブロック282に進む。 [0052] If the command was not a lock command, it proceeds to decision block 282 by taking the NO branch from decision block 278. ブロック282で、コマンドがロック解除コマンドであるか否かを判定する。 At block 282, the command determines whether the unlock command. このコマンドは、共用データ・オブジェクト内のユーザ選択ロック領域を削除するために利用される。 This command is used to remove a user select lock region in a shared data object. YESの場合、ブロック284で、ロック解除操作を実行する(以下の図3 If YES, at block 284, to perform the unlock operation (following figure 3
1参照)。 Reference 1).

【0053】コマンドがロック解除コマンドでなかった場合、判断ブロック282からNO分岐をとって判断ブロック286に進む。 [0053] If the command is not the unlock command, it proceeds to decision block 286 by taking the NO branch from decision block 282. ブロック286で、コマンドが関連づけコマンドであるか否かを判定する。 At block 286, it determines whether the command associated with the command. このコマンドは、共用データ・オブジェクト内で選択領域をユーザ関連領域に変換するために利用される。 This command is used to convert the selected area to the user-related area in the shared data object. YESの場合、ブロック288で、セーブ・コマンドと編集コマンドを含む、ブロック264に関して上で説明した機能と類似の機能を実行する(以下の図30参照)。 If YES, at block 288, including the editing commands and save commands, it performs the functions similar to functions described above with respect to block 264 (see below Fig. 30).

【0054】残りの可能性のあるコマンドの実行は、ロック領域との衝突を意味せず、ブロック288で、そのコマンドを実行する。 [0054] execution of a remaining potential command does not imply a collision with the lock region, in block 288, to execute the command. このプロセスのすべての操作が終わり、クライアント・エディタまたはクライアント・マネージャのどちらか該当する方に戻る。 The end all of the operation of this process, back toward the appropriate either the client editor or client manager.

【0055】図21及び図22は、ローカル端末上の表示を更新するプロセスに関するものである。 [0055] FIGS. 21 and 22 relate to the process of updating the display on the local terminal. 一般に、サーバでは表示は行われない。 In general, the display on the server is not performed. 表示の更新は、文書の修正の後、カーソル移動コマンドの後、及びユーザ関連領域に関する操作の後に行われる。 Display update, after the document modification, after the cursor movement command, and is performed after the operation relating to user association regions. 図21及び図22の流れ図は、後者の2つのケースに関し、ブロック276、2 The flowchart of FIG. 21 and FIG. 22 relates to the latter two cases, the block 276,2
80、284、または290で企図される操作の後に実行されると想定できる。 80,284, or supposed to be executed after the operations contemplated by 290.

【0056】表示更新プロセスは、判断ブロック292 [0056] The process of updating a display, decision block 292
で始まり、受け取った編集コマンドの性質を識別するプロセスを開始する。 At the beginning, to start the process of identifying the nature of the editing commands received. 判断ブロック292で、コマンドがカーソル移動コマンドであったか否かを判定する。 In decision block 292, the command determines whether or not a cursor movement command. YE YE
Sの場合、ブロック294でカーソルの所有者を識別し、ブロック296で所有者のカラーを決定し、ブロック298でカーソルの新しい位置を決定し、ブロック3 For S, to identify the owner of the cursor in block 294, to determine the color of the owner in block 296, to determine the new position of the cursor in block 298, block 3
00で古いカーソルを削除し、ブロック302で指定されたカラーでカーソルをその新しい位置に表示する。 Remove the old cursor at 00, to display the cursor to the new position in the color specified by the block 302.

【0057】表示更新プロセスは判断ブロック304に進む。 [0057] The display update process proceeds to decision block 304. 判断ブロック304で、コマンドが領域を選択するものか否かを判定する。 In decision block 304 determines whether or not the command to select a region. YESの場合、一連のブロック306、308、310、312及び314で、その領域を、選択されたものとして識別するように修正し、 If YES, a series of blocks 306, 308, 310, 312 and 314, modified to identify the area, as selected,
選択ユーザを識別する。 Identifying the selected user. 具体的には、これらのブロックでは、選択領域の所有者を識別し、所有者のカラーを回復し、SELECT表示スタイルを回復し、外観の修正が必要なディスプレイ内の領域を決定し、最後に、所有者のカラー及びSELECT表示スタイルを使って領域をペイントする。 Specifically, in these blocks, to identify the owner of the selected region, and restore the color of the owner to recover the SELECT display style, determination of the region in the appearance of the corrected required display, finally , painting the region using the color and SELECT display style of the owner.

【0058】表示更新プロセスは、判断ブロック326 [0058] The process of updating a display, a decision block 326
に進む。 Proceed to. 判断ブロック326で、コマンドが領域をロックするコマンドであるか否かを判定する。 In decision block 326, the command determines whether the command to lock a region. YESの場合、一連のブロック328、330、332、334、 If YES, a series of blocks 328,330,332,334,
336及び338で、その領域を、ロックされたものとして識別するように修正し、所有者を識別する。 336 and 338 are utilized to modify the region to identify as being locked to identify the owner. 具体的には、これらのブロックでは、ロック領域の所有者を識別し、所有者のカラーを回復し、LOCK表示スタイルを回復し、外観の修正が必要なディスプレイ内の領域を決定し、最後に、所有者のカラー及びLOCK表示スタイルを使って領域をペイントする。 Specifically, in these blocks, to identify the owner of the lock region, and restore the color of the owner to recover the LOCK display style, determination of the region in the appearance of the corrected required display, finally , painting the region using the color and LOCK display style of the owner.

【0059】表示更新プロセスは、判断ブロック340 [0059] The process of updating a display, decision block 340
に進む。 Proceed to. 判断ブロック340で、コマンドが領域を選択解除またはロック解除するコマンドであるか否かを判定する。 In decision block 340, the command determines whether the command for releasing or unlocking select an area. YESの場合、一連のブロック342、344、 If YES, a series of blocks 342, 344,
346及び348で、その領域を「通常」の外観に回復する。 In 346 and 348, to restore the area to the appearance of "normal". 具体的には、これらのブロックでは、通常の表示カラーを回復し、通常の表示スタイルを回復し、外観の修正が必要なディスプレイ内の領域を決定し、最後に、 Specifically, in these blocks to recover the normal display color, and restore normal display style, determination of the region in the appearance of the corrected required display, finally,
通常のカラー及び表示スタイルを使って領域をペイントする。 Painting the region using the normal color and display style.

【0060】図22を参照すると、表示更新プロセスは、判断ブロック350に進む。 [0060] Referring to FIG. 22, the display update process proceeds to decision block 350. 判断ブロック350 Decision block 350
で、ビュー内でONである関連が他にあるか否かを判定する。 In, it determines whether or not another associated is ON in the view. YESの場合、一連のブロック352、354、 If YES, a series of blocks 352, 354,
356及び358で、その領域を、その関連を識別するように修正し、その所有者を識別する。 In 356 and 358 are utilized to modify the region to identify the association to identify its owner. 具体的には、これらのブロックでは、所有者の表示カラーを回復し、適切な表示スタイルを回復し、外観の修正が必要なディスプレイ内の領域を決定し、最後に、所有者のカラー及び適切な関連表示スタイルを使用して領域をペイントする。 Specifically, in these blocks to recover the display color of the owner to recover the appropriate display style, determination of the region in the appearance of the corrected required display, finally, collar and right owners to paint the area by using the Do-related display style.

【0061】表示更新プロセスは、判断ブロック360 [0061] The process of updating a display, decision block 360
に進む。 Proceed to. 判断ブロック360で、ビュー内の領域に関して関連がOFFであるか否かを判定する。 In decision block 360 determines whether a related with respect to those regions in the view is OFF. YESの場合、一連のブロック362、364、366及び368 If YES, a series of blocks 362, 364, and 366 and 368
で、それらの領域を「通常」の外観で表示する。 In, and displays them in the area in the appearance of "normal". 具体的には、これらのブロックでは、通常の表示カラーを回復し、通常の表示スタイルを回復し、ディスプレイ内の領域を決定し、通常のカラー及び表示スタイルを使ってその領域をペイントする。 Specifically, in these blocks to recover the normal display color, and restore normal display style, determination of the region in the display, to paint the area with a normal color and display style. 表示更新の完了後、ローカル・ After the completion of the display update, the local
エディタ内の適切な位置に戻る。 Back to the appropriate position in the editor.

【0062】図23及び図24は、カーソルがその現位置で編集できないようにロックされているか否かの判定に関する流れ図である。 [0062] FIGS. 23 and 24 are flow diagram for determining whether a cursor is locked to prevent editing at its current position. これらの図は、それぞれ、本発明の第1及び第2の実施例、すなわちテキスト・エディタ状況及び図形または絵画エディタ状況に関するものである。 These figures, respectively, the first and second embodiments of the present invention, i.e. relates text editor context and graphic or painting editor status. テキスト・エディタに関する図23を参照すると、プロセスは判断ブロック370から始まり、カーソル・ロック・レコードを含む、まだ検査されていない関連/ロック・レコードが存在するか否かを判定する。 Referring to FIG. 23 relates to a text editor, the process begins at decision block 370, including cursor lock records, still determines whether there is association / lock records that have not been examined. N
Oの場合、どのロックもこの判定を要求している操作を阻止せず、元に戻る。 O, see which locks also not block the operation requesting the determination, the flow returns to the original. しかし、レコードが存在する場合は、それらのレコードを検査しなければならない。 However, if there is a record, it must be checked those records. 次に、ブロック372で、次のレコードが回復される。 Next, at block 372, the next record is recovered. 判断ブロック374で、このレコードがユーザ・ロック、 In decision block 374, lock this record-user,
選択ロック、またはカーソル・ロックを含むロック・タイプであるか否かを判定する。 Selection lock or determines whether the lock type comprising a cursor lock. NOの場合、このレコードは無関係のものであり、ブロック370に戻る。 If NO, the record is irrelevant and returns to block 370. レコードがロック・タイプである場合は、判断ブロック37 If the record is a lock type, decision block 37
5で、そのユーザが所有者であるか否かを決定する。 5, the user determines whether the owner. Y
ESの場合、そのレコードは無関係のものであり、ブロック370に戻る。 In the case of ES, the record is irrelevant, and the flow returns to block 370. 最後に、判断ブロック376で、カーソルの位置を、ロック・レコードの起点及び終点と比較する。 Finally, in decision block 376, the position of the cursor is compared with the start point and the end point of the lock record. カーソルが起点と終点の間にある場合、文書を修正するためにまたは選択点を確立するためにカーソルを使用することがロックによって阻止される。 If there between cursor origin and end point, it is blocked by the lock using cursors to establish or selected points in order to modify the document. ロック済みの指示が、ホスト・プロセスに戻される。 Locked indication is returned to the host process. カーソルが厳密にレコードの起点と終点の外側にある場合、ロックはそのカーソル位置で有効でない。 If the cursor exactly outside the origin and end point of the record, the lock is not effective at the cursor position. ブロック370に戻って、次のレコードを評価する。 Returning to block 370, to evaluate the next record. すべてのレコードをクリアしたときだけ、非ロックの指示が戻される。 Only when it clear all of the records, an indication of non-lock is returned.

【0063】図形エディタに関する図24を参照すると、プロセスは判断ブロック378から始まり、カーソル・ロック・レコードを含む、まだ検査されていない関連/ロック・レコードが存在するか否かを判定する。 [0063] With reference to FIG. 24 relates to the graphics editor, the process begins at decision block 378, including cursor lock records, still determines whether there is association / lock records that have not been examined. N
Oの場合、どのロックもこの判定を要求している操作を阻止せず、元に戻る。 O, see which locks also not block the operation requesting the determination, the flow returns to the original. しかし、レコードが存在する場合は、それらのレコードを検査しなければならない。 However, if there is a record, it must be checked those records. 次に、ブロック380で、次のレコードが回復される。 Then, in block 380, the next record is restored. 判断ブロック382で、このレコードがユーザ・ロック、 In decision block 382, ​​lock this record-user,
選択ロック、またはカーソル・ロックを含むロック・タイプであるか否かを判定する。 Selection lock or determines whether the lock type comprising a cursor lock. NOの場合、このレコードは無関係のものであり、ブロック378に戻る。 If NO, the record is irrelevant and returns to block 378. レコードがロック・タイプである場合は、判断ブロック38 If the record is a lock type, decision block 38
3で、そのユーザが所有者であるか否かを判定する。 3, the user determines whether the owner. Y
ESの場合、そのレコードは無関係のものであり、ブロック378に戻る。 In the case of ES, the record is irrelevant, and the flow returns to block 378. 最後に、判断ブロック384で、カーソルの位置を、ロック・レコードの境界点によって形成される多角形の境界と比較する。 Finally, in decision block 384, the position of the cursor is compared with polygon boundaries formed by the boundary points of the lock record. カーソルが多角形の内部にある場合、文書を修正するためにまたは選択点を確立するためにカーソルを使用することが、ロックによって阻止される。 If the cursor is inside the polygon, using the cursor to establish or selected points in order to modify the document, it is prevented by the lock. ロック済みの指示が戻される。 Locked instruction is returned. カーソルが厳密に多角形の外側にある場合、ロックはそのカーソル位置で有効でない。 If the cursor is outside the strictly polygonal, lock is not effective at the cursor position. ブロック378に戻って、次のレコードを評価する。 Returning to block 378, to evaluate the next record. すべてのレコードをクリアしたときだけ、非ロックの指示が戻される。 Only when it clear all of the records, an indication of non-lock is returned.

【0064】図25及び図26は、カーソルを移動する際の共用データ・オブジェクト内のカーソル・ロック領域の更新に関する流れ図である。 [0064] FIGS. 25 and 26 are flow diagram for updating of cursor lock region of the shared data object as it moves the cursor. 図25を参照すると、 Referring to FIG. 25,
テキスト目標オブジェクト内のロックの更新プロセスは、判断ブロック386から始まり、現カーソル・ロック・レコードがないか否かを判定する。 The update process of the lock of the text within the target object, starting from the decision block 386, it is determined whether or not there is no current cursor lock record. YESの場合、 If YES,
機能ブロック388で、新しいカーソル・ロック・レコードを生成し、機能ブロック390で、そのカーソル・ In function block 388, to generate a new cursor lock record, in function block 390, the cursor
レコード内のポインタを新しいカーソル・ロック・レコードにセットする。 To set the pointer in the record to a new cursor lock record. カーソル・ロック・レコードが得られると、判断ブロック392で、そのカーソル・ロックのロック・モードが文字位置であるか否かを判定する。 It determines if the cursor lock record is obtained, in decision block 392, whether the lock mode for the cursor lock is a character position.
YESの場合、ブロック394で、カーソル・ロック・ If YES, at block 394, the cursor lock
レコード内の開始フィールド及び終了フィールドをカーソルの現在位置に等しくなるように変更する。 To change the start and end fields in the record to be equal to the current position of the cursor. ロック・ Lock·
モードが文字でない場合、ブロック392からNO分岐を取って判断ブロック396に進む。 If the mode is not a character, the process proceeds to decision block 396 takes the NO branch from the block 392. 判断ブロック39 Decision block 39
6で、ロック・モードがワードに等しいか否かを判定する。 6, the lock mode is equal to or equal to a word. YESの場合、ブロック396からYES分岐を取ってブロック398に進む。 If YES, the flow proceeds to block 398 takes the YES branch from the block 396. ブロック398で、目標オブジェクトから現在行を取り出す。 In block 398, the current taking out a line from the target object. 次に、ブロック40 Next, block 40
0で、現在ワードの先頭と末尾のオフセットを決定する。 0, to determine the beginning and end of the offset of the current word. 次に、ブロック402で、カーソル・ロック・レコード内の開始フィールド及び終了フィールドを現在の語の先頭及び末尾に等しくセットする。 Then, in block 402, it is set equal the start and end fields of the cursor lock in a record at the beginning and end of the current word. ブロック396でロック・モードが語に等しくなかったと判定された場合は、ロック・モードは行に等しいと仮定される。 If the lock mode at block 396 is determined to not equal to the word, the lock mode is assumed to be equal to row. ブロック396からのNO分岐に沿ってブロック404に進み、目標オブジェクトから現在行を取り出す。 Along the NO branch from block 396 proceeds to block 404 to retrieve the current line from the target object. 次に、ブロック406で、先頭及び末尾びのカーソル・ロック・ Then, in block 406, the beginning and the end beauty cursor lock of
レコード・フィールドが、現在行の先頭及び末尾に等しくセットされる。 Record field is set equal to the beginning and to the end of the current line.

【0065】いずれかのモードでロック・レコードの開始フィールド及び終了フィールドをセットした後、判断ブロック408で、新しいカーソル・ロック・レコードがその他のロックと衝突するか否かを判定する(この解析の詳細については図32参照)。 [0065] After setting the start and end fields in the lock record in any mode, decision block 408, the new cursor lock record is determined whether the conflict with other locks (for this analysis see FIG. 32 for details). 衝突する場合、ブロック410で、新しいカーソル・ロック・レコードが文書データ構造から除去され、ブロック412で、そのポインタのカーソル・レコードがゼロにセットされる。 When impinging, at block 410, the new cursor lock record is removed from the document data structure, in block 412, the cursor record for the pointer is set to zero. 次に、ブロック413で表示が更新される。 Next, the display in block 413 is updated. 次には編集プロセス内の適切な点に戻る。 The following return to the appropriate point in the editing process. ブロック408で衝突が検出されなかった場合は、エディタ内の適切な点に直接戻る。 If a collision at block 408 is not detected, the flow returns directly to the appropriate point in the editor.

【0066】図形編集環境におけるカーソル・ロックの更新は、これよりいくぶん複雑である。 [0066] update of the cursor lock in graphics editing environment is somewhat more complex than this. 図26を参照すると、最初に操作ブロック414で新しい仮のカーソル・ロック・レコードを作成する。 Referring to FIG. 26, to create a new temporary cursor lock record in the first operation block 414. このカーソル・レコード内のポインタ・フィールドは、この時点では変更されない。 Pointer field of the cursor in the record is not changed at this point. 次に、判断ブロック416で、ロック・モードが正方形に等しいか否かを判定する。 Next, at decision block 416, the lock mode is equal to or equal to a square. YESの場合、ブロック424で、ビューの平面内の現カーソル位置で中心合せされた正方形の4つの絶対座標を生成する。 If YES, at block 424, to generate four absolute coordinates of the square that is centered at the current cursor position in the plane of the view. カーソル・ロック領域の形状が正方形でない場合、判断ブロック418で、形状モードが円に等しいか否かを判定する。 When the shape of the cursor lock region is not square, decision block 418 determines whether or not the shape mode equals a circle. YESの場合、ブロック426で、円を近似する多角形の座標の集合、すなわちビューの平面内のカーソルから等距離の1組の点を決定する。 If YES, at block 426, a set of polygon coordinates which approximates a circle, i.e. to determine the points of a set of equidistant from the cursor in the plane of the view. N個の点が選択されるが、使用される特定のマシンの解像度が与えられているものとして、これはユーザには円のように見える。 Although N points is selected, as the resolution of the particular machines used are given, which looks like a circle to the user.

【0067】ブロック418で形状モードが円でないと決定された場合は、判断ブロック420で、そのモードがユーザの定義した多角形であるか否かを判定する。 [0067] When the shape mode in block 418 is determined not to be a circle, it determines in decision block 420, whether the mode is the defined polygon a user. Y
ESの場合、ブロック432で、カーソル位置に関する点のユーザ定義をロック・レコードに関する絶対点に変換する。 For ES, in block 432, converts the user-defined regarding cursor position absolutely regarding lock record.

【0068】図形編集環境では、カーソル・ロック・モードが、カーソルが位置する現在のオブジェクトに等しい場合も可能である。 [0068] In the graphic editing environment, cursor lock mode, it is also equal to the current object that the cursor is located. ブロック420でこのモードが多角形モードでないと判定された場合、ブロック422 If this mode at block 420 is determined not to be polygonal mode, block 422
で、オブジェクト・モードが使用中であるか否かを判定する。 In, it determines whether or not the object mode is in use. YESの場合、ブロック430で、表示画像に照会してカーソルがオブジェクトの上にあるか否かを判定する。 If YES, at block 430, the cursor query the display image and determines whether or not the top of the object. YESの場合、ブロック432で、オブジェクトにその絶対境界点を照会する。 If YES, at block 432, to query the absolute boundary point to the object. これらの絶対境界点は、 These absolute boundary points,
多角形のカーソル・ロック・レコードの定義点として使用される。 It is used as a defining point of the polygon of the cursor lock record.

【0069】ブロック424、426、428及び43 [0069] block 424, 426, 428 and 43
2の、カーソル・ロックの境界点の定義の後に、判断ブロック434で、新しいロック・レコードを他のロック・レコードと比較して、衝突があるか調べる(詳細については図33参照)。 2, after the definition of boundary points of the cursor lock, at decision block 434, a new lock record compared to other lock records, check whether there is a collision (see FIG. 33 for details). 衝突が発見されなかった場合、ブロック444で、古いロック・レコードが削除され、ブロック446で、カーソル・レコード内のポインタ・フィールドがリセットされ、新しいロック・レコードに更新される。 If a collision is not found, in block 444, to delete the old lock record, in block 446, the pointer field in the cursor record is reset, it is updated to the new lock record. ブロック447で、表示が更新される。 In block 447, the display is updated. 編集プロセス内の適切な点に戻る。 Back to the appropriate point in the editing process. しかし、判断ブロック4 However, the decision block 4
34で衝突が発見された場合、またはブロック430でカーソルの下にオブジェクトが発見されない場合、またはブロック422でロック・モードがオブジェクト・モードにないことが分かり、ロックとカーソルの自動的関連づけがオフであることを暗示する場合は、ブロック4 If a collision at 34 is found, or if the object under the cursor in block 430 is not found, or found locked mode in block 422 is not in the object mode, automatically associate is off locking and cursors If you are implying that there is a block 4
36で、新しく作成されたロック・レコードを削除する。 At 36, to remove the newly created lock record. 次に、ブロック438で、現カーソル位置がそれ自体の古いロック・レコード内にあるか否かを判定する。 Next, at block 438, it determines the current cursor position whether on its own old lock record.
YESの場合、視覚的にカーソルはそのロック領域内でもはや中心合せされないが、古いロック・レコードはそのまま残ることを許される。 If YES, the visual cursor is no longer centered in its lock region, it is allowed to remain intact old lock record. カーソルがその古いカーソル・ロックの外側にある場合、ブロック440で、カーソル・レコード内のカーソル・ロック・ポインタが指すロック・レコードの削除によって古いカーソル・ロックが除去され、そのポインタがゼロにリセットされる。 If the cursor is outside of its old cursor lock, in block 440, is eliminated the old cursor lock by the deletion of the lock record pointed to by the cursor lock pointer in the cursor record, the pointer is reset to zero that. 次に、ブロック447で表示が更新される。 Next, the display in block 447 is updated.

【0070】ユーザ選択領域の確立は、関連タイプまたはユーザ選択ロック・タイプ領域をユーザが確立するための予備段階である。 [0070] Establishment of the user selected area is a preliminary step for the relevant type or user select lock type region user establishes. 図27を参照すると、流れ図は、 Referring to FIG. 27, the flow diagram,
テキスト文書における選択領域の確立を示す。 It shows the establishment of a selected area in a text document. 編集プロセスで選択点を選択することによって、選択実行プロセスが始まる。 By selecting a selection point in the editing process, starting with the selection execution process. 判断ブロック448で、プロセスを続行するために必要な第2の選択点が入力されたか否かを判定する。 In decision block 448 determines whether or not the second selection point is input needed to continue the process. 第2の選択点を受け取っていない場合、編集プロセス内の適切な点に戻る。 If you have not received the second selection point, it returns to the appropriate point in the editing process. ユーザは、第1の選択点として識別された点と同じ点を第2の点として選択することもでき、その場合は単一文字の選択領域が作成される。 The user can also select the same point as the point identified as the first selection point as the second point, in which case the selected area of ​​the single character is created.

【0071】ブロック450で第2の選択点を受け取った後、ブロック452で、第1選択点及び第2選択点を適切な順序でその先頭及び末尾とする、関連/ロック・ [0071] After receiving the second selection point in block 450, at block 452, and the start and end of the first selected point and the second selected point in the proper order, association / lock
レコードを作成する。 To create a record. レコード・タイプは“SELEC Record type "SELEC
T LOCK”にセットされる。次に、ブロック454 Is set to T LOCK ". Next, block 454
で、新しい選択領域がいずれかのロック領域と衝突するか否かを判定する(この場合も図32のプロセスを利用する)。 In determines whether a new selection area collides with any of the locking region (again utilizing the process of FIG. 32). 衝突する場合は、ブロック456で、選択が失敗したことをユーザに警告し、そのレコードを削除する。 If the collision, in block 456, to alert the user that the selection has failed, and deletes the record. 次に、エディタ内の適切な点に戻る。 Then, return to the appropriate point in the editor. ブロック45 Block 45
4で衝突が発見されなかった場合は、ブロック458 4 In the case where the collision is not found, block 458
で、カーソル・レコード内の選択フィールドをONにセットし、ブロック460でそのレコードを選択ロック・ In, set the selection field in the cursor record to ON, select the record in the block 460 lock
フィールドに追加し、ブロック462で表示を更新してから、エディタ内の適切な点に戻る。 To add to the field, it updates the display in block 462, returns to the appropriate point in the editor.

【0072】図28を参照すると、流れ図は図形文書内での選択領域の確立を示している。 [0072] Referring to FIG. 28, the flow diagram illustrates the establishment of a selected area in a graphic document. 編集中に選択点の選択によって選択実行プロセスが始まる。 Selecting and executing process by the selection point selected during the editing begins. プロセスは流れ図に入り、ブロック464で、選択タイプの関連/ロック・レコードを作成する。 The process enters the flow diagram, in block 464, to create an association / lock record of the selected type. それは多角形として示された形状を有し、その最初の点は初期選択点である。 It has the shape shown as polygons, the first point is the initial select point. 次に、 next,
判断ブロック466で、ユーザが選択領域に正方形(または長方形)の形状を選択したか否かを判定する。 In decision block 466 determines whether the user has selected a square shape (or rectangular) in the selection area. YE YE
Sの場合、ブロック468で、その領域を定義するためにユーザが第2の点を供給するようにとのプロンプトが出る。 For S, at block 468, the user to define the region prompt out with to provide the second point. ユーザは、第1の選択点として識別された点と同じ点を第2の点として選択することもでき、その場合は、単一画素の選択領域が作成される。 The user can also select the same point as the point identified as the first selection point as the second point, in which case, the selected area of ​​the single pixel is created.

【0073】正方形の形状が選択されない場合、ブロック470で、ユーザが円形を選択したか否かを判定する。 [0073] If the shape of a square is not selected, at block 470, the user determines whether to select the circle. YESの場合、ブロック472で、ユーザが半径を供給するようにとのプロンプトが出る。 If YES, at block 472, it exits prompt and the user to supply a radius. この半径から次のN個の選択点を生成して、実質的に円形に見える多角形を完成することができる。 This radius generates the following N selected points, can be substantially complete the polygon looks circular.

【0074】ブロック470で円形であると決定されなかった場合、判断ブロック474で、一般の多角形がユーザによって選択されたか否かを判定する。 [0074] determines if not determined to be circular in block 470, at decision block 474, general polygons whether the user has selected. YESの場合、ブロック476で、ユーザが一連の点を供給するようにとのプロンプトが出る。 If YES, at block 476, the user exits prompt and to supply a series of points. ユーザは、追加の点を選択する代わりに、すべての点がすでに供給されているとマシンに通知してもよい。 The user, instead of selecting the additional point, all points may notify the machine the already supplied. このことは判断ブロック478 This is a decision block 478
で検出される。 In is detected. 選択が実行されたと判定した後、多角形は閉じられ、判断ブロック478からYES分岐に沿ってループから出る。 After determining that selection is performed, the polygon is closed, it exits from the loop along the YES branch from decision block 478. ユーザが完了を通知しない限り、またはユーザが許容される最大数の点を選択し終えるまで、ブロック478からNO分岐に沿ってブロック48 As long as the user does not signal completion, or until the user has selected the point of maximum number allowed, along NO branch from the block 478 the block 48
0に進み、そこで最近の選択を関連/ロック・レコード内の点のリストに追加して、ブロック476に戻る。 The process goes to 0, where they add the most recent selection to the list of points of association / lock the record, it returns to block 476.

【0075】判断ブロック474からNO分岐をとると、ユーザがユーザ選択領域の形状を選択しなかったことを示し、ブロック482で、ユーザにエラーを指摘し、ブロック464で作成されたレコードを削除した後、編集プロセス内の適切な点に戻る。 [0075] Taking the NO branch from decision block 474 indicates that the user has not selected the shape of the user-selected area, at block 482, point out error to the user, and deletes the record created at block 464 after, return to the appropriate point in the editing process.

【0076】ユーザ選択領域の境界点が完成すると、判断ブロック484で、新しいレコードが別のロック・レコードと衝突するか否かを判定する(図33参照)。 [0076] determining the boundary points of the user-selected area is completed, at decision block 484, whether the new record conflicts with another lock record (see Figure 33). Y
ESの場合、ブロック492でユーザに警告が出る。 In the case of ES, a warning to the user in block 492 exits. 次に、ブロック494で、ブロック464で作成されたレコードを削除する。 Then, in block 494, to delete the records that have been created in block 464. 次に、エディタ内の適切な点に戻る。 Then, return to the appropriate point in the editor.

【0077】判断ブロック484で衝突が検出されなかった場合、NO分岐をとって機能ブロック486に進み、そこでカーソル・レコード内の選択フィールドをO [0077] If a collision at decision block 484 is not detected, the process proceeds to functional block 486 takes the NO branch, where the selection field in the cursor record O
Nにセットする。 It is set to N. 次に、ブロック488で、カーソル・ Then, in block 488, the cursor
レコードの関連レコード・リスト内のポインタ・フィールドに記入する。 To fill in the pointer field of the related record in the list of records. 次に、操作がクライアント内で行われる場合、ブロック490で、領域の選択を示すように表示を更新する。 Then, if the operation is performed in the client, in block 490, it updates the display to indicate the selected area. 次に、エディタ内の適切な点に戻る。 Then, return to the appropriate point in the editor.

【0078】選択領域をユーザ選択ロック領域に変換するためのロック・セット操作は、どちらの実施例でも同じである。 [0078] lock set operation to convert the selected area to the user selected lock region is the same in both embodiments. 図29には、ユーザによる選択領域からのロック領域の確立に関する流れ図が示されている。 Figure 29 shows a flow diagram relating to the establishment of the lock region from the selection area is given by the user. ロックをセットする要求に応じて、ブロック496で、そのユーザ用のカーソル・レコード内のSELECT_ONフィールドがONであるか否かを判定する。 In response to a request to set the lock determines, at block 496, whether SELECT_ON field in the cursor record for the user is ON. 否の場合、要求は無効であり、実質的な処置を必要とせずにエディタ内の適切な点に戻る。 If not, the request is invalid, the flow returns without requiring substantial treatment to the appropriate point in the editor. SELECT_ONフィールドがONの場合、かつクライアント内の場合、ブロック49 If SELECT_ON field is ON, and if in the client, block 49
8で、カーソル・レコード内で指し示された領域から選択標識を除去するように表示を更新する。 8, to update the display to remove the selectable marker from the area pointed to by the cursor record. ブロック50 Block 50
0で、選択ロック・フィールドからそのレコードを除去し、それをユーザ・ロック・リスト内に置く(このような区別がカーソル・レコード内で維持されている場合)。 0 to remove the record from the select lock field and put it in the user lock list (if such a distinction is maintained in cursor records). 次に、ブロック502で、ロック・レコード内のタイプ・フィールドをUser lockにリセットする。 Next, at block 502, to reset the type field in the lock record to User lock. 次に、ブロック504で、カーソル・レコード内及びロック・レコード内のSELECT_ONフィールドをオフにリセットする。 Next, at block 504, resets the off SELECT_ON field in the cursor and lock the record record. 最後に、ブロック506で、新しいロック領域を反映するように表示を更新してからエディタに戻る。 Finally, in block 506, and then return update the display to reflect the new lock area in the editor.

【0079】図30は、ユーザが選択領域を関連領域として指定する操作に関する流れ図である。 [0079] Figure 30 is a flow diagram for operation for the user to specify the selected area as the relevant region. 関連操作の実行要求に応じて、ブロック508で、ユーザ用のカーソル・レコード内のSELECT_ONフィールドがON In response to the execution request of the related operations, at block 508, the SELECT_ON field in the cursor record for the user ON
であるか否かを決定する。 Determining whether a. 否の場合、その要求は無効であり、プロセスは実質的な活動を必要とせずにエディタ内の適切な点に戻される。 If not, the request is invalid, the process is returned to the appropriate point in the editor without requiring substantial activities. SELECT_ONフィールドがONの場合、かつプロセスがクライアントにある場合、ブロック510で、表示を更新しカーソル・レコード内で指し示された領域から選択標識を除去する。 If SELECT_ON field is ON, and if the process is in the client, in block 510, to remove the selectable marker from the pointed by updating the display cursor in the record area. ブロック512で、選択ロック・フィールドからその領域を除去し、それを関連リスト内に置く(このような区別がカーソル・レコード内で維持されている場合)。 At block 512, to remove the region from the selected lock field and put it in the association list (if such a distinction is maintained in cursor records). 次に、 next,
ブロック514で、ロック・レコード内のタイプ・フィールドをUser associationにリセットする。 At block 514, to reset the type field in the lock record to User association. 次に、ブロック516で、カーソル・レコード内及び関連/ロック・レコード内のSELECT_ONフィールドをOFFにリセットする。 Next, at block 516, to reset the SELECT_ON field in the cursor record and association / lock the record to OFF. 最後に、ブロック5 Finally, block 5
18で、新しい関連領域を反映するように表示を更新してからエディタに戻る。 At 18, and then return update the display to reflect the new related areas to the editor.

【0080】ロック領域及び関連領域のユーザによる解放について、次に説明する。 [0080] The release by the user lock region and related areas will now be described. 図31には、領域のロック解除または関連づけ解除に関する流れ図が示されている。 Figure 31 is shown a flow diagram relating to unlocking or disassociation of regions. プロセスはブロック520から始まり、ロック解除または関連づけ解除操作が実行されつつあるか否かを示すフラグをセットする。 The process begins at block 520, it sets a flag indicating whether or not the unlocking or disassociation operation is being performed. カーソル・ロック及び関連リスト内の各レコードを、そのカーソルが位置するレコードが1つ見つかるまで調べる。 Each record in the cursor lock and the related list, checks to record the cursor is positioned is found one. このプロセスは判断ブロック522で行われる。 This process is performed at decision block 522. ブロック522で、除去できるレコードがユーザ選択ロック・リストまたは関連リスト内に存在するか否かを判定する。 At block 522, the record can be removed determines whether there the user selects the lock list or association list. このようなレコードが存在する場合、ブロック524で、それらのレコードをそのリストの順序で回復し、判断ブロック526で、カーソルがそのレコードの範囲内にあるか否かを判定する。 If such record exists, at block 524, to recover those records in the order of the list, at decision block 526 determines whether the cursor is within the range of the record.
NOの場合、プロセスはブロック522に戻る。 If NO, the process returns to block 522. カーソルがあるレコードが見つかった場合、ブロック527 If a record where the cursor is found, block 527
で、現ユーザがそのレコードの所有者であるか否か判定する。 In determines whether the current user is the owner of the record. NOの場合、ブロック522に戻る。 If NO, the flow returns to block 522. YESの場合、そのレコードを指すポインタがカーソル・レコード内の適切なリストから除去される。 If YES, a pointer to the record is removed from the appropriate list in the cursor record. 次に、ブロック53 Next, block 53
0で、そのレコード自体が解放される。 0, the record itself is released. 最後に、ブロック532で、(この場合もクライアント端末においてだけ)表示を更新する。 Finally, at block 532, it updates the display (again only in client terminals). 次に、エディタ内の適切な点に戻る。 Then, return to the appropriate point in the editor.

【0081】図32及び図33は、領域を選択しようとするユーザが試みる際、またはカーソル・ロックを移動しようと試みる際に生ずるロック衝突を検出するための、本発明の第1及び第2の実施例に関する流れ図である。 [0081] FIGS. 32 and 33, when attempting a user attempting to select an area, or for detecting a lock collision generated when attempting to move a cursor lock, the first and second aspects of the present invention it is a flow diagram of an embodiment. 図32には、テキスト編集環境でのそのような比較が示されている。 Figure 32 is illustrated such a comparison in a text editing environment. このプロセスはユーザ選択ロック・レコードまたはカーソル・ロック・レコードが存在するかどうかの照会から始まる。 This process begins with one of the query whether there is a user-selectable lock records or cursor lock record. 存在しないまたは残っていない場合、照会は完了し、ブロック534からNO分岐をとって要求側ルーチンに戻り、衝突が存在しないことを要求側ルーチンに知らせる。 If no or left not, the query is complete, return to the requesting routine taking the NO branch from the block 534, informing the requesting routine that no conflict exists. レコードが残っている場合、ブロック536で、次のそのようなレコードが取り出される。 If there are still records, in block 536, it is taken out next such record. 判断ブロック538で、現カーソルがそのレコードの所有者であるか否かを判定する。 In decision block 538, the current cursor determines whether the owner of the record. イエスの場合、そのレコードは無視でき、ブロック538からYE In the case of Jesus, the record can be ignored, YE from block 538
S分岐をとってブロック534に戻る。 It returns to block 534 to take the S branch. NO分岐をとる場合、判断ブロック540で、レコードがどちらかのタイプのロックであるか否を判定する。 When taking the NO branch is determined at decision block 540, as to whether or not the record is a lock of either type. NOの場合、そのレコードは無視され、ブロック534に戻る。 If NO, that record is ignored, returning to block 534. YESの場合、要求された選択領域またはロック領域がロック・ If YES, the requested selected area or lock regions Lock
レコードと共通な点をもつか否か判定する。 It determines whether having records and common point. 判断ブロック542で、ロック(選択)領域入力開始が、回復されたロック・レコードの先頭と同時にまたはその後に起こるか否かを判定する。 In decision block 542, the lock (select) region input start, determines the beginning and whether simultaneously or subsequently occurring of the recovered lock record. YESの場合、ブロック546 If YES, block 546
で、入力レコード開始が、回復されたロック・レコードの末尾より前にまたはそれと同時に起こるか否かを判定する。 In, input record start, determines whether or not before or to occur at the same time than the end of the recovered lock record. そうである場合、衝突が存在し、その旨の通知が要求プロセスに戻される。 If so, there is a conflict, notification thereof is returned to the requesting process. そうでない場合は、ブロック534に戻り、次のレコードを調べる。 If not, return to the block 534, examine the next record. 判断ブロック5 Decision block 5
42からNO分岐をとって、判断ブロック544で、入力レコードの末尾がロック・レコードの開始の後またはそれと同時に起こるか否かを判定する。 42 taking the NO branch from determines at decision block 544, whether the tail occurs simultaneously after the start of the lock record or the input record. NOの場合、衝突は存在せず、ブロック534に戻る。 If NO, the collision does not exist, the flow returns to block 534. YESの場合、 If YES,
衝突が存在し、衝突を指示して要求側プロセスに戻る。 Collision exists and returns to the requesting process to instruct a collision.

【0082】図33には、図形編集環境でのこのような比較が示されている。 [0082] Figure 33 is such a comparison in a graphics editing environment is shown. このプロセスはユーザ選択ロック・レコードまたはカーソル・ロック・レコードが存在するかどうかの照会から始まる。 This process begins with one of the query whether there is a user-selectable lock records or cursor lock record. 存在しないまたは残っていない場合、照会は完了し、ブロック548からのNO If no or left not, the query is complete, NO from block 548
分岐をとって要求側ルーチンに戻り、衝突が存在しないことを要求側ルーチンに知らせる。 Taking a branch back to the requesting routine, it informs the requesting routine that no conflict exists. レコードが残っている場合、ブロック550で、次のそのようなレコードが取り出される。 If there are still records, in block 550, it is taken out next such record. 次に、判断ブロック552で、現カーソルがそのレコードの所有者であるか否かを判定する。 Next, at decision block 552, the current cursor determines whether the owner of the record. Y
ESの場合、そのレコードは無視でき、ブロック552 In the case of ES, the record can be ignored, block 552
からYES分岐をとってブロック548に戻る。 Back in block 548 by taking the YES branch from. NO分岐をとる場合、判断ブロック554で、レコードがどちらかのタイプのロックであるか否かを判定する。 When taking the NO branch is determined at decision block 554, whether the record is a lock of either type. 否の場合、そのレコードは無視され、ブロック548に戻る。 If not, the record is ignored, and the flow returns to block 548.
YESの場合、そのレコードと入力領域をオーバーラップするかどうか比較しなければならない。 If YES, must be compared whether overlapping input area and the record. 判断ブロック556で、そのようなオーバーラップがあるか判定する。 Determines at decision block 556, there is such a overlap. この試験は、入力領域の多角形がブロック550で回復されたロック・レコードから戻された多角形とオーバーラップするか否かを判定するためのものである。 This test is polygonal input region is used to determine whether a polygon overlaps returned from the lock record recovered at block 550. Y
ESの場合、衝突の指示が要求側プロセスに戻される。 For ES, indication of the collision is returned to the requesting process.
オーバーラップが見つからなかった場合は、ブロック5 If the overlap is not found, block 5
48に戻り、次のレコードを調べる。 Return to 48, examine the next record.

【0083】 [0083]

【発明の効果】本発明の協働的コンピュータ・ベース・ According to the present invention collaborative computer-based of the present invention
システムを操作する方法によれば、ユーザ選択に応答してユーザ関連領域を設定でき、なおかつ、ユーザ関連領域の所有者を識別するための視覚的に区別できる特徴を割り当てることができる。 According to the method of operating the system, in response to a user selection can set user-related area, yet can be assigned a feature that can be visually distinguished to identify the owner of the user-related regions. さらに、このユーザ関連領域に対して設定したロックあるいはアンロックなどの編集コマンドのタイプに応じて、ユーザ識別領域に対する編集タイプを視覚的に区別できる特徴を割り当てることができる。 Furthermore, depending on the type of edit commands such as lock or unlock set for this user-related areas, it can be assigned a feature that visually distinct editing type for user identification area.

【0084】本発明の編集システムによれば、ユーザがカーソルをデータ・オブジェクトの表示部分内へ移動すると、そのカーソルがそのユーザ独自の視覚的特徴を付与されるので、操作が容易になる。 According to the editing system of [0084] the present invention, when the user moves the cursor to a data object in the display portion, so that the cursor is given its own visual characteristics, operation becomes easy.

【0085】本発明のセグメントを識別する方法によれば、共用データ・オブジェクトのセグメントがユーザに関連づけられると、そのセグメントにまで現ユーザ独自の特徴が拡張して適用されるので、操作が容易になる。 [0085] According to the method of identifying a segment of the present invention, a segment of the shared data object is associated with a user, the current user unique characteristics to its segment is applied to expand the operation is easily Become.

【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS

【図1】本発明が有利に使用できるローカル・エリア・ Local area [1] The present invention can be advantageously used,
ネットワークの絵画図である。 It is a pictorial diagram of the network.

【図2】コンピュータ・グラフィックス・システムによって生成される、本発明のユーザ・インターフェースをサポートするためのウィンドウの絵画図である。 [Figure 2] is generated by the computer graphics system is a pictorial view of a window for supporting user interface of the present invention.

【図3】編集用に目標テキスト・オブジェクトに開かれたウィンドウの絵画図である。 FIG. 3 is a pictorial view of a window that is open to the target text object for editing.

【図4】目標図形オブジェクトに開かれたウィンドウのウィンドウ編集時の絵画図である。 FIG. 4 is a pictorial view of the time window editing window that is open to the target graphic object.

【図5】目標図形オブジェクトに開かれたウィンドウのウィンドウ編集時の絵画図である。 FIG. 5 is a pictorial view of the time window editing window that is open to the target graphic object.

【図6】目標図形オブジェクトに開かれたウィンドウのウィンドウ編集時の絵画図である。 FIG. 6 is a pictorial view of the time window editing window that is open to the target graphic object.

【図7】目標図形オブジェクトに開かれたウィンドウのウィンドウ編集時の絵画図である。 FIG. 7 is a pictorial view of the time window editing window that is open to the target graphic object.

【図8】本発明のシステム及び方法と一緒に使用される、選択ロック・モード及びユーザ選択可能領域に開かれたウィンドウの絵画図である。 [Figure 8] is used with the system and method of the present invention, is a pictorial view of the open to select lock modes and user selectable area window.

【図9】本発明のシステム及び方法と一緒に使用される、選択ロック・モード及びユーザ選択可能領域に開かれたウィンドウの絵画図である。 [Figure 9] is used with the system and method of the present invention, is a pictorial view of the open to select lock modes and user selectable area window.

【図10】本発明のシステム及び方法と一緒に使用される、選択ロック・モード及びユーザ選択可能領域に開かれたウィンドウの絵画図である。 [Figure 10] is used with the system and method of the present invention, is a pictorial view of the open to select lock modes and user selectable area window.

【図11】本発明の制御機能に関するユーザ・インターフェース用のウィンドウの絵画図である。 11 is a pictorial view of a window for a user interface relating to control features of the present invention.

【図12】本発明の制御機能に関するユーザ・インターフェース用のウィンドウの絵画図である。 12 is a pictorial view of a window for a user interface relating to control features of the present invention.

【図13】本発明のシステム及び方法をサポートするデータ・オブジェクトの配布を示すローカル・エリア・ネットワークのブロック・ダイアグラムである。 13 is a block diagram of a local area network that indicates the distribution of the data object that supports the system and method of the present invention.

【図14】本発明のシステム及び方法をサポートするデータ・オブジェクトの配布を示すローカル・エリア・ネットワークのブロック・ダイアグラムである。 14 is a block diagram of a local area network that indicates the distribution of the data object that supports the system and method of the present invention.

【図15】本発明の第1の実施例を実施する際に使用されるデータ・レコードを示す図である。 Is a diagram illustrating a data record used in carrying out the first embodiment of the present invention; FIG.

【図16】本発明の第2の実施例を実施する際に使用されるデータ・レコードを示す図である。 It is a diagram illustrating a data record used in carrying out the second embodiment of Figure 16 the present invention.

【図17】協働的データ処理システムへのクライアントによるアクセスを示す高水準の流れ図である。 17 is a high level flow chart illustrating access by a client to a collaborative data processing system.

【図18】本発明の方法及びシステムを組み込んだクライアント端末における協働的エディタの動作を示す高水準の流れ図である。 18 is a high level flow diagram illustrating the operation of the collaborative editors of methods and client terminal incorporating the system of the present invention.

【図19】本発明の方法及びシステムを組み込んだサーバにおける協働的エディタの動作を示す高水準の流れ図である。 19 is a flowchart high level showing the operation of a collaborative editor at a method and a server incorporating the system of the present invention.

【図20】本システムのユーザから受け取ったコマンドに対する応答に関する図18及び図19の協働的エディタの動作を示す流れ図である。 Figure 20 is a flow diagram illustrating the operation of a collaborative editor 18 and 19 relating to response to commands received from the user of the system.

【図21】本発明によって提供されるグループ編集システムにおけるクライアント表示の更新に関する流れ図である。 It is a flow diagram for updating the client display in a group editing system provided by Figure 21 the present invention.

【図22】本発明によって提供されるグループ編集システムにおけるクライアント表示の更新に関する流れ図である。 It is a flow diagram for updating the client display in a group editing system provided by Figure 22 the present invention.

【図23】本発明の第1の実施例においてカーソル位置がカーソルによる編集が行えないようにロックされているか否かの決定に関する流れ図である。 [23] the cursor position in the first embodiment of the present invention is a flow diagram for the determination of whether or not it is locked so as not can edit with a cursor.

【図24】本発明の第2の実施例においてカーソル位置がカーソルによる編集が行えないようにロックされているか否かの決定に関する流れ図である。 Cursor position in the second embodiment of FIG. 24 the present invention is a flow diagram for the determination of whether or not it is locked so as not can edit with a cursor.

【図25】共用データ・オブジェクト内のカーソル関連ロック領域の更新を提供する、本発明の第1の実施例に関する流れ図である。 [Figure 25] to provide updates of the cursor associated lock region of the shared data object, a flow diagram for a first embodiment of the present invention.

【図26】共用データ・オブジェクト内のカーソル関連ロック領域の更新を提供する、本発明の第2の実施例に関する流れ図である。 [Figure 26] to provide updates of the cursor associated lock region of the shared data object is a flow diagram for a second embodiment of the present invention.

【図27】共用データ・オブジェクト内の領域のユーザ選択を提供する、本発明の第1の実施例に関する流れ図である。 [Figure 27] to provide a user-selected area of ​​the shared data object, a flow diagram for a first embodiment of the present invention.

【図28】共用データ・オブジェクト内の領域のユーザ選択を提供する、本発明の第2の実施例に関する流れ図である。 [Figure 28] to provide a user-selected area of ​​the shared data object is a flow diagram for a second embodiment of the present invention.

【図29】選択領域からのロック領域のユーザ確立に関する流れ図である。 Figure 29 is a flow diagram for user establishment of a lock region from the selected region.

【図30】選択領域の関連領域としてのユーザ指定に関する流れ図である。 FIG. 30 is a flow diagram for user specified as the related area of ​​the selected region.

【図31】領域からのロックまたは関連指定の除去に関する流れ図である。 FIG. 31 is a flow diagram for the removal of the lock or related specification from the region.

【図32】領域を選択しようとの試みに関して行われるロック衝突決定の検出を提供する、本発明の第1の実施例に関する流れ図である。 [Figure 32] to provide for detection of lock collision determinations made with respect to attempt attempts to select a region, a flow diagram for a first embodiment of the present invention.

【図33】領域を選択しようとの試みに関して行われるロック衝突決定の検出を提供する、本発明の第2の実施例に関する流れ図である。 [Figure 33] to provide for detection of lock collision determinations made with respect to attempt attempts to select a region, a flow diagram for a second embodiment of the present invention.

【符号の説明】 DESCRIPTION OF SYMBOLS

12a ネットワーク・アダプタ 12c ネットワーク・アダプタ 56 ハード・ドライブ装置 58 データ・バス 62 ネットワーク・アダプタ 66 オペレーティング・システム及びLANサーバ 68 エディタ1 70 ロック・レコード1 70 ネットワーク・アダプタ 72 カーソル・リスト/カーソル・ロック・レコード 74 編集オブジェクト1 編集オブジェクト2 80 入力周辺装置 83 データ・バス 84 ディスプレイ・アダプタ 86 表示装置 90 ハード・ドライブ 94 メモリ 12a network adapter 12c network adapter 56 hard drive 58 data bus 62 network adapter 66 operating system and LAN server 68 editor 1 70 lock record 1 70 network adapter 72 Cursor list / cursor lock record 74 edit object 1 edit object 2 80 input peripheral device 83 data bus 84 94 memory display adapter 86 display 90 hard drives

───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジェフリー・エム・ライアン アメリカ合衆国55920、ミネソタ州バイ ロン、セカンド・ストリート、ノースウ エスト 6 (56)参考文献 特開 平3−240823(JP,A) 日経コンピュータ (1991年3月11 日) 「普及の糸口を模索する日本のグ ループウエア」 P. ────────────────────────────────────────────────── ─── of the front page continued (72) inventor Jeffrey M. Ryan United States 55920, Minnesota by Ron, second Street, Nosuu Est 6 (56) reference Patent flat 3-240823 (JP, a) Nikkei computer (March 11, 1991) "Japan's group wear to seek clues spread" P. 62−77 62-77

Claims (2)

    (57)【特許請求の範囲】 (57) [the claims]
  1. 【請求項1】共有データ・オブジェクトの私用ビューを表示するための複数の表示装置を有する協働的コンピュータ・ベース編集システムを操作する方法であって、 ユーザ選択に応答して、ユーザ関連領域を共用データ・ 1. A method of operating a collaborative computer based editing system having a plurality of display devices for displaying a private view of the shared data object, in response to a user selection, the user-related areas the shared data
    オブジェクト内に設定するステップと、 ユーザ関連領域にユーザを識別するための視覚的に区別できる第1の特徴を割り当てるステップと、 前記ユーザ関連領域に対する編集タイプのユーザ選択に応答して、前記ユーザ関連領域に前記編集タイプを識別するための視覚的に区別できる第2の特徴を割り当てるステップと、 前記視覚的に区別できる第1の特徴および前記第2の特徴によって示されるユーザ関連領域の一部分を含む前記共用データ・オブジェクトの私用ビューの表示を表示装置上に表示するステップと、 を含む協働的コンピュータ・ベース編集システムを操作する方法。 And setting in the object, assigning a first characteristic which can be visually distinguished to identify the user in the user-related area, in response to a user selection of edit types for the user-related area, the user-related It includes a portion of the user-related regions indicated and assigning a second characteristic that can be visually distinguished to identify the edit type region, the first feature and the second feature that can be said visually distinct method of operating a collaborative computer based editing system and displaying on a display device the display of private view of the shared data object.
  2. 【請求項2】共有データ・オブジェクトの私用ビューを表示するための複数の表示装置を有する協働的コンピュータ・ベース編集システムであって、 ユーザ選択に応答して、ユーザ関連領域を共用データ・ 2. A collaborative computer based editing system having a plurality of display devices for displaying a private view of the shared data object, in response to a user selection, and Common user-related area data
    オブジェクト内に設定する手段と、 ユーザ関連領域にユーザを識別するための視覚的に区別できる第1の特徴を割り当てる手段と、 前記ユーザ関連領域に対する編集タイプのユーザ選択に応答して、前記ユーザ関連領域に前記編集タイプを識別するための視覚的に区別できる第2の特徴を割り当てる手段と、 前記視覚的に区別できる第1の特徴および前記第2の特徴によって示されるユーザ関連領域の一部分を含む前記共用データ・オブジェクトの私用ビューの表示を表示装置上に表示する手段と、 を含む協働的コンピュータ・ベース編集システム。 Means for setting in the object, means for assigning a first characteristic which can be visually distinguished to identify the user in the user-related area, in response to a user selection of edit types for the user-related area, the user-related includes a portion of the user-related area indicated means for assigning a second feature that can be visually distinguished to identify the edit type region, the first feature and the second feature that can be said visually distinct collaborative computer based editing system comprising, means for displaying on the display device the display of private view of the shared data object.
JP4323418A 1991-12-31 1992-12-02 Collaborative methods of computer-based systems and operation Expired - Fee Related JP2741826B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US816623 1991-12-31
US07/816,623 US5337407A (en) 1991-12-31 1991-12-31 Method and system for identifying users in a collaborative computer-based system

Publications (2)

Publication Number Publication Date
JPH05242027A JPH05242027A (en) 1993-09-21
JP2741826B2 true JP2741826B2 (en) 1998-04-22

Family

ID=25221166

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4323418A Expired - Fee Related JP2741826B2 (en) 1991-12-31 1992-12-02 Collaborative methods of computer-based systems and operation

Country Status (3)

Country Link
US (1) US5337407A (en)
JP (1) JP2741826B2 (en)
CA (1) CA2076463C (en)

Families Citing this family (97)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5241464A (en) * 1990-08-17 1993-08-31 Moore Business Forms, Inc. Desktop forms order system
CA2072198A1 (en) * 1991-06-24 1992-12-25 Scott C. Farrand Remote console emulator for computer system manager
US6005560A (en) * 1992-10-01 1999-12-21 Quark, Inc. Multi-media project management and control system
WO1994008310A1 (en) * 1992-10-01 1994-04-14 Quark, Inc. Publication system management and coordination
US5561811A (en) * 1992-11-10 1996-10-01 Xerox Corporation Method and apparatus for per-user customization of applications shared by a plurality of users on a single display
SE9300671D0 (en) * 1993-03-01 1993-03-01 Sven Nauckhoff Work Flow Management
JPH06266662A (en) * 1993-03-12 1994-09-22 Toshiba Corp Cooperative work support device
US5835713A (en) * 1993-03-19 1998-11-10 Ncr Corporation Remote collaboration system for selectively locking the display at remote computers to prevent annotation of the display by users of the remote computers
EP0622930A3 (en) * 1993-03-19 1996-06-05 At & T Global Inf Solution Application sharing for computer collaboration system.
US6662210B1 (en) 1997-03-31 2003-12-09 Ncr Corporation Method of remote collaboration system
US5649104A (en) * 1993-03-19 1997-07-15 Ncr Corporation System for allowing user of any computer to draw image over that generated by the host computer and replicating the drawn image to other computers
CA2160343C (en) * 1993-04-13 2002-07-16 Peter J. Ahimovic System for computer supported collaboration
JP2863428B2 (en) * 1993-05-18 1999-03-03 富士通株式会社 Interactive graphics system
GB9313761D0 (en) * 1993-07-02 1993-08-18 Gay Clive H Method of generating a visual design
US6049334A (en) * 1993-12-20 2000-04-11 International Business Machines Corporation Method and system for graphically indicating the activity of a plurality of users within a shared data collection
US5799292A (en) * 1994-04-29 1998-08-25 International Business Machines Corporation Adaptive hypermedia presentation method and system
US6243714B1 (en) 1997-04-11 2001-06-05 Ubique Ltd. Co-presence data retrieval system
US6651050B2 (en) 1994-05-02 2003-11-18 International Business Machines Corporation Co-presence data retrieval system which indicates observers of data
JPH0822370A (en) * 1994-07-06 1996-01-23 Minolta Co Ltd Information processor
US5913920A (en) * 1994-12-13 1999-06-22 International Business Machines Corporation Indicating updates from a remote display
JP3591917B2 (en) * 1995-06-06 2004-11-24 キヤノン株式会社 Supported Cooperative Work method and system
JPH0934843A (en) * 1995-07-18 1997-02-07 Canon Inc Processing system and processor
GB2303946A (en) * 1995-07-29 1997-03-05 Ibm Data conferencing system
US5706452A (en) * 1995-12-06 1998-01-06 Ivanov; Vladimir I. Method and apparatus for structuring and managing the participatory evaluation of documents by a plurality of reviewers
DE19548397C1 (en) * 1995-12-22 1997-01-23 Siemens Ag Access control system for shared computer programme
US5960173A (en) * 1995-12-22 1999-09-28 Sun Microsystems, Inc. System and method enabling awareness of others working on similar tasks in a computer work environment
US5784056A (en) * 1995-12-29 1998-07-21 Sun Microsystems, Inc. System and method for temporally varying pointer icons
JPH09269931A (en) * 1996-01-30 1997-10-14 Canon Inc Cooperative work environment constructing system, its method and medium
JPH09244980A (en) * 1996-03-05 1997-09-19 Casio Comput Co Ltd Communication data output device
US6570589B1 (en) * 1996-07-02 2003-05-27 Sun Microsystems, Inc. Method and apparatus for associating capabilities with a virtual input device and a display object
US5966512A (en) * 1997-06-05 1999-10-12 International Business Machines Corporation Groupware save operation
US5995102A (en) * 1997-06-25 1999-11-30 Comet Systems, Inc. Server system and method for modifying a cursor image
US6463461B1 (en) * 1999-08-30 2002-10-08 Zaplet, Inc. System for communicating information among a group of participants
US6691153B1 (en) * 1999-08-30 2004-02-10 Zaplet, Inc. Method and system for process interaction among a group
AU2022301A (en) * 1999-12-30 2001-07-16 Shlomo Shkolnik Multidisciplinary project integration system
US7810037B1 (en) * 2000-02-11 2010-10-05 Sony Corporation Online story collaboration
US7130885B2 (en) * 2000-09-05 2006-10-31 Zaplet, Inc. Methods and apparatus providing electronic messages that are linked and aggregated
JP2002236790A (en) * 2001-02-08 2002-08-23 Fujitsu Ltd Device, method and program for paper deliberation
US7283136B2 (en) * 2001-03-23 2007-10-16 Dassault Systemes Cell descriptor
US7176942B2 (en) * 2001-03-23 2007-02-13 Dassault Systemes Collaborative design
JP2002324037A (en) * 2001-04-24 2002-11-08 Fujitsu Ltd Coordinated display program
US7124362B2 (en) * 2001-08-31 2006-10-17 Robert Tischer Method and system for producing an ordered compilation of information with more than one author contributing information contemporaneously
US6938070B2 (en) * 2001-12-17 2005-08-30 Dassault Systemes Conflict resolution for collaborative work system
US20030131342A1 (en) * 2002-01-08 2003-07-10 International Business Machines Corporation Debugger with activity alert
US7509577B2 (en) * 2002-03-08 2009-03-24 Toshiba Corp Oration Method and system for implementing a clipboard
US7039677B2 (en) * 2002-05-07 2006-05-02 International Business Machines Corporation Threaded text-based chat collaboration
JP4547990B2 (en) * 2004-05-25 2010-09-22 富士ゼロックス株式会社 Information processing apparatus, and information processing program
US8321786B2 (en) * 2004-06-17 2012-11-27 Apple Inc. Routine and interface for correcting electronic text
US20050283727A1 (en) * 2004-06-21 2005-12-22 Large William T Non-resident methods and systems for providing clickless user actuation of a webpage
US7516132B1 (en) * 2004-11-12 2009-04-07 Sun Microsystems, Inc. Mechanism for enabling distributed file sharing among a plurality of nodes in a network
US20090198604A1 (en) * 2004-12-17 2009-08-06 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Tracking a participant loss in a virtual world
EP1672533B1 (en) * 2004-12-20 2013-02-27 Dassault Systèmes Method and computer system for interacting with a database
US7958047B2 (en) * 2005-02-04 2011-06-07 The Invention Science Fund I Virtual credit in simulated environments
US8566111B2 (en) 2005-02-04 2013-10-22 The Invention Science Fund I, Llc Disposition of component virtual property rights
US20080092065A1 (en) * 2005-02-04 2008-04-17 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Third party control over virtual world characters
US8271365B2 (en) * 2005-02-04 2012-09-18 The Invention Science Fund I, Llc Real-world profile data for making virtual world contacts
US8096882B2 (en) 2005-02-04 2012-01-17 The Invention Science Fund I, Llc Risk mitigation in a virtual world
US8556723B2 (en) 2005-02-04 2013-10-15 The Invention Science Fund I. LLC Third party control over virtual world characters
US8457991B2 (en) 2005-02-04 2013-06-04 The Invention Science Fund I, Llc Virtual credit in simulated environments
US7774275B2 (en) * 2005-02-28 2010-08-10 Searete Llc Payment options for virtual credit
US8512143B2 (en) * 2005-07-18 2013-08-20 The Invention Science Fund I, Llc Third party control over virtual world characters
GB0523703D0 (en) 2005-11-22 2005-12-28 Ibm Collaborative editing of a document
US20070124370A1 (en) * 2005-11-29 2007-05-31 Microsoft Corporation Interactive table based platform to facilitate collaborative activities
US8473382B2 (en) * 2006-02-28 2013-06-25 The Invention Science Fund I, Llc Virtual collateral for real-world obligations
US8307119B2 (en) * 2006-03-31 2012-11-06 Google Inc. Collaborative online spreadsheet application
US20070273695A1 (en) * 2006-05-26 2007-11-29 Stevens Matthew J Mechanism for collaboratively exchanging navigation information in distributed document review
US20080003559A1 (en) * 2006-06-20 2008-01-03 Microsoft Corporation Multi-User Multi-Input Application for Education
US7853886B2 (en) * 2007-02-27 2010-12-14 Microsoft Corporation Persistent spatial collaboration
US7849399B2 (en) * 2007-06-29 2010-12-07 Walter Hoffmann Method and system for tracking authorship of content in data
US7889210B2 (en) * 2007-07-31 2011-02-15 International Business Machines Corporation Visual integration hub
JP2009140018A (en) 2007-12-03 2009-06-25 Canon Inc Information processing system and its processing method, device, and program
US20090288041A1 (en) * 2008-05-14 2009-11-19 Amy Herrman Dewar Methodology to Create a Logical Landing Zone Surrounding an Object to React to Determined HTML Events
US8892630B1 (en) 2008-09-29 2014-11-18 Amazon Technologies, Inc. Facilitating discussion group formation and interaction
US8924863B2 (en) * 2008-09-30 2014-12-30 Lenovo (Singapore) Pte. Ltd. Collaborative web navigation using document object model (DOM) based document references
US8706685B1 (en) 2008-10-29 2014-04-22 Amazon Technologies, Inc. Organizing collaborative annotations
US9083600B1 (en) * 2008-10-29 2015-07-14 Amazon Technologies, Inc. Providing presence information within digital items
US9152644B2 (en) * 2008-12-30 2015-10-06 Novell, Inc. Systems and methods for providing collaborative editing
JP2010181978A (en) * 2009-02-03 2010-08-19 Seiko Epson Corp Collaborative work apparatus and method of controlling collaborative work
US20100275130A1 (en) * 2009-04-23 2010-10-28 Mcbride Patrick Thomas Application personas
US8201094B2 (en) * 2009-09-25 2012-06-12 Nokia Corporation Method and apparatus for collaborative graphical creation
US8719294B2 (en) * 2010-03-12 2014-05-06 Fiitotech Company Limited Network digital creation system and method thereof
JP2012038210A (en) * 2010-08-10 2012-02-23 Sony Corp Information processing unit, information processing method, computer program, and content display system
US9118612B2 (en) 2010-12-15 2015-08-25 Microsoft Technology Licensing, Llc Meeting-specific state indicators
US9383888B2 (en) * 2010-12-15 2016-07-05 Microsoft Technology Licensing, Llc Optimized joint document review
US9864612B2 (en) 2010-12-23 2018-01-09 Microsoft Technology Licensing, Llc Techniques to customize a user interface for different displays
US9251130B1 (en) 2011-03-31 2016-02-02 Amazon Technologies, Inc. Tagging annotations of electronic books
US8682973B2 (en) 2011-10-05 2014-03-25 Microsoft Corporation Multi-user and multi-device collaboration
US9542366B2 (en) 2011-12-20 2017-01-10 Apple Inc. Smart text in document chat
US20130159849A1 (en) * 2011-12-20 2013-06-20 Keng Fai Lee Jump to Collaborator Cursor
US9158746B2 (en) * 2012-06-13 2015-10-13 International Business Machines Corporation Managing concurrent editing in a collaborative editing environment using cursor proximity and a delay
KR20140034612A (en) * 2012-09-12 2014-03-20 삼성전자주식회사 Display apparatus for multi user and the method thereof
JP2014197256A (en) * 2013-03-29 2014-10-16 エヌ・ティ・ティ・コムウェア株式会社 Editing device, editing method, and program
JP6244902B2 (en) * 2013-12-27 2017-12-13 富士通株式会社 Inter-gadget display cooperation method, inter-gadget display cooperation program, and information processing apparatus
US10171579B2 (en) 2014-04-08 2019-01-01 Dropbox, Inc. Managing presence among devices accessing shared and synchronized content
US10270871B2 (en) 2014-04-08 2019-04-23 Dropbox, Inc. Browser display of native application presence and interaction data
US9998555B2 (en) 2014-04-08 2018-06-12 Dropbox, Inc. Displaying presence in an application accessing shared and synchronized content
US10091287B2 (en) 2014-04-08 2018-10-02 Dropbox, Inc. Determining presence in an application accessing shared and synchronized content

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4698752A (en) * 1982-11-15 1987-10-06 American Telephone And Telegraph Company At&T Bell Laboratories Data base locking
US4651299A (en) * 1983-04-27 1987-03-17 Canon Kabushiki Kaisha Data processing apparatus
EP0130018B1 (en) * 1983-06-28 1990-08-22 Fujitsu Limited Electronic conference system
US4558413A (en) * 1983-11-21 1985-12-10 Xerox Corporation Software version management system
US4635189A (en) * 1984-03-01 1987-01-06 Measurex Corporation Real-time distributed data-base management system
JPH0580015B2 (en) * 1984-11-02 1993-11-05 Nippon Telegraph & Telephone
JPS61275795A (en) * 1985-05-31 1986-12-05 Canon Kk Document processor
GB2191917A (en) * 1986-06-16 1987-12-23 Ibm A multiple window display system
US5001628A (en) * 1987-02-13 1991-03-19 International Business Machines Corporation Single system image uniquely defining an environment for each user in a data processing system
US4890098A (en) * 1987-10-20 1989-12-26 International Business Machines Corporation Flexible window management on a computer display
US4974173A (en) * 1987-12-02 1990-11-27 Xerox Corporation Small-scale workspace representations indicating activities by other users
US5008853A (en) * 1987-12-02 1991-04-16 Xerox Corporation Representation of collaborative multi-user activities relative to shared structured data objects in a networked workstation environment
US4853843A (en) * 1987-12-18 1989-08-01 Tektronix, Inc. System for merging virtual partitions of a distributed database
JPH01248187A (en) * 1988-03-30 1989-10-03 Toshiba Corp Display system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
日経コンピュータ (1991年3月11日) 「普及の糸口を模索する日本のグループウエア」 P.62−77

Also Published As

Publication number Publication date
CA2076463A1 (en) 1993-07-01
US5337407A (en) 1994-08-09
CA2076463C (en) 1996-10-08
JPH05242027A (en) 1993-09-21

Similar Documents

Publication Publication Date Title
US5522025A (en) Object-oriented window area display system
US5933637A (en) Method and apparatus for configuring computer programs from available subprograms
KR101027868B1 (en) Method, apparatus and computer readable medium for sharing applications with multiple users
US5917730A (en) Computer implemented object oriented visualization system and method
US5905496A (en) Workflow product navigation system
US5630069A (en) Method and apparatus for creating workflow maps of business processes
US5668966A (en) System and method for direct manipulation of search predicates using a graphical user interface
US5742286A (en) Graphical user interface system and method for multiple simultaneous targets
US6092048A (en) Task execution support system
US5630080A (en) Method and system for the direct manipulation of information, including non-default drag and drop operation
US4819189A (en) Computer system with multiwindow presentation manager
JP3014286B2 (en) Assist device and method for direct manipulation
US6598068B1 (en) Method and apparatus for automatically managing concurrent access to a shared resource in a multi-threaded programming environment
US5844569A (en) Display device interface including support for generalized flipping of surfaces
US4710763A (en) Method for generating and displaying tree structures in a limited display area
US5784583A (en) Intuitive technique for building graphical menus
US5544301A (en) Object-oriented view layout system
EP0713175B1 (en) Window management system
US6052514A (en) Distributed publication system with simultaneous separate access to publication data and publication status information
US6243721B1 (en) Method and apparatus for providing automatic layout capabilities for computer forms
JP3036758B2 (en) The presentation of a private area in the shared workspace
JP3272281B2 (en) Data item display method and a display device, a storage medium storing a program for controlling the display of data items
US6392669B1 (en) Schedule management system and method for displaying, managing, and changing a schedule and recording medium for storing the same
US5572731A (en) Sequentially navigated object oriented computer system
US7487452B2 (en) Method and system for making resources available

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees