JPH05189218A - ロケーション情報にアクセスするための方法及び装置 - Google Patents

ロケーション情報にアクセスするための方法及び装置

Info

Publication number
JPH05189218A
JPH05189218A JP4132205A JP13220592A JPH05189218A JP H05189218 A JPH05189218 A JP H05189218A JP 4132205 A JP4132205 A JP 4132205A JP 13220592 A JP13220592 A JP 13220592A JP H05189218 A JPH05189218 A JP H05189218A
Authority
JP
Japan
Prior art keywords
location
tree
access request
message
operating environment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP4132205A
Other languages
English (en)
Other versions
JPH0797316B2 (ja
Inventor
Patrice R Miller
パトリス・アール・ミラー
Wade A Miller
ウェイド・エイ・ミラー
John K Rayborn
ジョン・ケイ・レイボーン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH05189218A publication Critical patent/JPH05189218A/ja
Publication of JPH0797316B2 publication Critical patent/JPH0797316B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Digital Computer Display Output (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

(57)【要約】 (修正有) 【目的】 オブジェクト指向環境40からグラフィック
・ユーザ・インターフェース(GUI)環境42に対
し、ロケーション情報をアクセスすること等を目的とす
る。 【構成】 ロケーション・マネージャ44はアプリケー
ション48からの要求に対し自己の環境内のロケーショ
ン・ツリー46を検索し、情報を発見できた場合はそれ
を返答し、発見できない場合はGUI環境内42に照会
を行う。同様に、本発明によってロケーション情報の生
成50、アイテムの追加52をも可能とする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、一般に、非オブジェク
ト指向環境で動作しているグラフィック・ユーザ・イン
ターフェース動作環境で使用するアプリケーションを開
発する際の助けとなるオブジェクト指向開発ツール・キ
ット・コンポーネントに関し、具体的には、オブジェク
ト指向環境の外部にあるグラフィック・ユーザ・インタ
ーフェース動作環境からのロケーション情報にアクセス
するための方法に関する。より具体的には、本発明は、
オブジェクト指向アプリケーションの開発者がこの動作
環境に特有なプログラム呼出しを理解し使用する必要を
なくすこと、及びこの動作環境で使用されるアプリケー
ションを開発することによって、オブジェクト指向環境
の外部にあるグラフィック・ユーザ・インターフェース
動作環境からのロケーション情報にアクセスするための
方法に関する。
【0002】
【従来の技術】オブジェクト指向言語は、拡張が可能で
コードが再使用可能という利点をもつが、オブジェクト
指向環境では、この環境の外部にあるデータにアクセス
すること、情報をこの環境の外部に送ること、あるいは
この環境の外部にあるアプリケーションまたはオペレー
ティング・システムへの他のプログラミング呼出しなど
の動作が望ましい場合がある。従来から、開発者は、オ
ブジェクト指向環境で使用されるアプリケーションは少
なく、主として、オブジェクト指向環境内にないグラフ
ィック・ユーザ・インターフェース動作環境が開発され
ている。しかし、状況によっては、アプリケーション開
発者はオブジェクト指向言語でプログラミングする。こ
のような場合、オブジェクト指向環境の内部と外部の両
方で動作を実行する必要がある。1つの動作環境は、エ
ンド・ユーザ・インターフェースであり、これはその動
作環境とエンド・ユーザが対話するための装置及びその
動作環境内のアプリケーションを含む、構成を成してい
る。グラフィック・ユーザ・インターフェース("GU
I")動作環境は、グラフィカルなエンド・ユーザ環境
である。たとえば、エンド・ユーザは、ウィンドウ、ア
イコン、メニュー、ポインティング・デバイスなどを介
して、GUI環境と対話する。
【0003】現在、GUI動作環境用のオブジェクト指
向言語でアプリケーションを作成する人は、作成したア
プリケーション内にCコードまたはアプリケーション・
プログラミング・インターフェース("API")呼出し
あるいはその両方を含めなければならない。C言語また
はAPI呼出しの使用、及びオブジェクト指向言語の訓
練を受けたプログラマ及び開発者の再訓練の問題はきわ
めてコストが高くつく。
【0004】オブジェクトを使用してアプリケーション
を構築することができる。オブジェクト指向環境では、
オブジェクトは、互いに関係するいくつかのコード及び
データからなる。オブジェクトは、1つのオブジェクト
には本質的に同一であり、実行することによってオブジ
ェクトにそれ特有の挙動を与える、手段の集合を有す
る。あるオブジェクトのクラスは、1つまたは複数の属
性に基づくグループ分と定義され、またインターフェー
スとは、クラス内の一の要素(アイテム)と定義され
る。たとえば、オブジェクトのクラスは、職業、すなわ
ち弁護士、医者、技術者、プログラマなどに対応し、イ
ンスタンスは、クラス内の特定の個人に対応する。
【0005】クラスは、新しいインスタンスを構築する
方法及び、インスタンスが入りメッセージに対してどの
ように反応するかを定義する。インスタンス変数は、例
えば個人の給料のようなインスタンス・オブジェクトの
具体的な特徴を定義する。インスタンス変数は定義され
ていることもあり、定義を待って空のこともある。イン
スタンスのデータ構造はそのインスタンス変数の集まり
によって記述される。オブジェクト指向環境中のアプリ
ケーションは、3つの基本的構成要素、すなわちモデ
ル、ビュー、コントローラに分割される。モデル・オブ
ジェクトとは、仕事をする、すなわちデータを操作する
という、アプリケーションの構成要素である。次に、ビ
ュー・オブジェクトは、すべてのグラフィカル態様、す
なわちスクリーン・プレゼンテーションを扱う。コント
ローラ・オブジェクトは、モデル・オブジェクト、ビュ
ー・オブジェクト、及び入力装置(たとえば、キーボー
ドやポインティング・デバイス)の間のインターフェー
スを構成する。言い換えると、コントローラ・オブジェ
クトは、ユーザと入力装置の対話を扱う。
【0006】インターナショナル・ビジネス・マシーン
ズ・コーポレーションの製品であるオフィス・ビジョン
/2などある種のGUI動作環境は、オブジェクト指向
言語を使って作成されない。現在このような状況で、こ
のような動作環境で使用されるアプリケーションを作成
するために開発者が利用できるただ1つの開発オプショ
ンは、C言語、プレゼンテーション・マネージャ、及び
オフィス・ビジョン/2 アプリケーション・プログラ
ミング・インターフェース(API)を使ってアプリケ
ーションを作成することであった。
【0007】GUI動作環境用のアプリケーションを作
成する際、ロケーション情報にアクセスすることがしば
しば必要となる。たとえば、アプリケーション開発者
は、ユーザが入力の一部分を動作環境ロケーションにセ
ーブする必要のある、アプリケーションを作成すること
がある。そのような状況では、アプリケーション開発者
は、ユーザがそこからロケーションを選択できる、動作
環境内のロケーションのリストを提供しようとする。
【0008】GUI動作環境内のロケーションは、論理
的ロケーションであり、ハード・ディスク装置またはそ
の他の記憶装置上の実際のディレクトリまたはサブディ
レクトリに対応することもあり、しないこともある。
【0009】GUI動作環境用に開発されたアプリケー
ションは、その動作環境内でロケーション情報にアクセ
スすることを必要とするので、オブジェクト指向言語で
プログラミングする開発者にとって、別の言語の使用ま
たは特別のアプリケーション・プログラム・インターフ
ェース呼出しの学習、及び関連の再教育が不要になる方
法及び装置が必要であることが明らかなはずである。
【0010】
【発明が解決しようとする課題】本発明の一目的は、非
オブジェクト指向環境で動作しているGUI動作環境で
使用されるアプリケーションを開発する際に助けとな
る、オブジェクト指向開発ツール・キット構成要素を提
供することである。
【0011】本発明の別の目的は、オブジェクト指向環
境の外部にあるGUI動作環境からのロケーション情報
にアクセスする方法を提供することである。
【0012】本発明の別の目的は、オブジェクト指向ア
プリケーションの開発者が、GUI動作環境に特有のプ
ログラム呼出しを理解して使用する必要のない、オブジ
ェクト指向環境の外部にあるGUI動作環境からのロケ
ーション情報にアクセスし、GUI動作環境で使用され
るアプリケーションを開発する方法を提供することであ
る。
【0013】
【課題を解決するための手段】その他の目的、特徴、及
び利点は、以下の説明から明らかになろう。本発明の方
法及び装置は、オブジェクト指向ソフトウェア・システ
ムにおいて、グラフィック・ユーザ・インターフェース
動作環境からのロケーション情報を要求するオブジェク
ト指向環境内のアプリケーションにロケーション情報へ
のアクセスを提供する方法を含む。ロケーション・マネ
ージャは、メモリ内のオブジェクト指向メモリ・ロケー
ションでオブジェクト指向環境内のアプリケーションか
らロケーション情報にアクセスしたいとの要求を受け取
る。ロケーション・アクセス要求がロケーション情報を
求めるものである場合、ロケーション情報が存在するか
どうかオブジェクト指向環境内のロケーション・ツリー
の探索が行われる。ロケーション・アクセス要求に対応
するロケーション情報が存在する場合、そのロケーショ
ン・アクセス要求に対応するロケーション情報がロケー
ション・ツリーから取り出される。しかし、ロケーショ
ン・アクセス要求に対応するロケーション情報がロケー
ション・ツリーに存在しない場合は、ロケーション情報
のためのロケーション・アクセス・メッセージがグラフ
ィック・ユーザ・インターフェース動作環境に送られ
る。これに応答して、そのロケーション・アクセス要求
に対応するロケーション情報を含むメッセージを受け取
る。次に、ロケーション・ツリーが、ロケーション・ア
クセス要求に対応するロケーション情報で更新され、結
果がアプリケーションに返される。
【0014】しかし、ロケーション・アクセス要求がロ
ケーション情報を修正するためのものである場合は、修
正のためのロケーション・アクセス・メッセージをグラ
フィック・ユーザ・インターフェース環境に送ることに
よって修正が行なわれる。修正のためのロケーション・
アクセス・メッセージの成否に関する情報を含むメッセ
ージを応答として受け取る。この試行段階の成否に関す
る情報を含むメッセージがイエスである場合、ロケーシ
ョン・ツリーがその修正で更新され、結果がアプリケー
ションに返される。
【0015】本発明の上記及びその他の目的、特徴、利
点は、以下の詳細な説明で明らかになろう。
【0016】
【実施例】これから図面、具体的には図1を参照する
と、本発明の方法を実施するために利用できるデータ処
理システム8の模式図が示されている。図を見ると分か
るように、データ処理システム8は、ローカル・エリア
・ネットワーク(LAN)10及び32などの複数のネ
ットワークを含むことができる。各LANは、それぞれ
複数の個別のコンピュータ12及び30を含むことが好
ましい。もちろん、当業者なら、ホスト・プロセッサに
結合された複数のインテリジェント・ワーク・ステーシ
ョン(IWS)をこのような各ネットワークで利用でき
ることを理解するであろう。
【0017】このようなデータ処理システムで共通する
ことであるが、各個別コンピュータは、記憶装置14ま
たはプリンタ/出力装置16あるいはその両方に結合す
ることができる。本発明の方法によれば、データ処理シ
ステム8の内部で任意のユーザによって定期的にアクセ
スされる文書または資源オブジェクトを記憶するため
に、1つまたは複数のそのような記憶装置14を利用す
ることができる。従来技術で周知のように、記憶装置1
4の内部に記憶されたそのような各文書または資源オブ
ジェクトは、たとえば個別コンピュータ12または32
のユーザに文書を転送することによって、データ処理シ
ステム8内で自由に交換することができる。
【0018】さらに図1を参照すると、データ処理ネッ
トワーク8はまた、メインフレーム・コンピュータ18
などの多数のメインフレーム・コンピュータを含むこと
ができることが分かる。このようなメインフレーム・コ
ンピュータは、通信リンク22によってローカル・エリ
ア・ネットワーク(LAN)10に結合することが好ま
しい。メインフレーム・コンピュータ18はまた、ロー
カル・エリア・ネットワーク(LAN)10の遠隔記憶
装置として働く記憶装置20にも結合できる。同様に、
ローカル・エリア・ネットワーク(LAN)10は、通
信リンク24、サブシステム制御装置/通信コントロー
ラ26、及び通信リンク34を介してゲートウェイ・サ
ーバ28にも結合できる。ゲートウェイ・サーバ28
は、ローカル・エリア・ネットワーク(LAN)32を
ローカル・エリア・ネットワーク(LAN)10にリン
クする、個別のコンピュータまたは対話型ワークステー
ション(IWS)であることが好ましい。
【0019】ローカル・エリア・ネットワーク(LA
N)32及びローカル・エリア・ネットワーク(LA
N)10に関して上述したように、複数の文書または資
源オブジェクトが、記憶装置20内に記憶され、このよ
うに記憶された資源オブジェクトの「資源マネージャ」
または「ライブラリ・サービス」として働くメインフレ
ーム・コンピュータ18によって制御される。もちろ
ん、当業者なら、メイン・フレーム・コンピュータ18
はローカル・エリア・ネットワーク(LAN)10から
地理的に離れた所にあってもよく、同様にローカル・エ
リア・ネットワーク(LAN)10はローカル・エリア
・ネットワーク(LAN)32から大きな距離の所にあ
ってもよいことを理解できよう。
【0020】GUI動作環境は、個別コンピュータ12
及び30上、ゲートウェイ・サーバ28上、LAN10
または32内のいずれかのコンピュータ上、またはメイ
ン・フレーム・コンピュータ18上で見られることがあ
る。GUI動作環境は、オブジェクト指向環境でなくて
もよい。各個人は、自分の個別コンピュータ上でGUI
動作環境をスタンド・アローンとして使用することがで
き、またGUI動作環境をLAN上のユーザとして使用
することもできる。
【0021】次に図2を参照すると、本発明に従ってク
ラス情報にアクセスする方法を示す図が示されている。
図のように、分散データ処理システム8は、「アドレス
・ブック」ウィンドウ40及びGUIオペレーティング
・システム42を含むオブジェクト指向環境を含む。本
発明の好ましい実施例で使用するのに適したGUIオペ
レーティング・システムの1つは、インターナショナル
・ビジネス・マシーンズ・コーポレーションの製品であ
る「オフィス・ビジョン/2」である。Digital
k,Inc.の製品であるSmalltalk/V P
Mが、本発明の好ましい実施例で使用されるオブジェク
ト指向環境である。
【0022】ロケーション・マネージャ44は、オブジ
ェクト指向環境の内部にあるオブジェクトである。ロケ
ーション・ツリー46は、ロケーション・マネージャ4
4によって作成し維持されるが、これもまたオブジェク
ト指向環境40内にある。アプリケーションA48、ア
プリケーションB50、アプリケーションC52が、ロ
ケーション・アクセス要求をロケーション・マネージャ
44に送る。これらの要求は、ロケーション情報、新し
いロケーションの作成、またはあるロケーションへのア
イテムの挿入を求める要求の形をとることができる。
【0023】たとえば、アプリケーションA48は、文
書を記憶するようユーザにプロンプトを出す。アプリケ
ーション開発者はユーザにロケーションのリストを提示
したいと思うことがある。したがって、アプリケーショ
ンA48は、ロケーション情報のためのロケーション・
アクセス要求をロケーション・マネージャ44に送るこ
とになる。ロケーション・マネージャ44は、要求され
たロケーション情報を得るためにロケーション・ツリー
46内で探索を実行する。要求されたロケーション情報
がロケーション・ツリー46内にある場合、この情報は
ロケーション・マネージャ44によって検索され、結果
としてアプリケーションA48に返される。一方、アプ
リケーションA48によって要求されたロケーション情
報がロケーション・ツリー46内で見つからなかった場
合、ロケーション情報はGUI動作環境42内の構造5
4から検索される。ロケーション情報がロケーション・
マネージャ44に返され、ロケーション・ツリー46が
新しいロケーション情報で更新されることになる。その
後、ロケーション情報が結果としてアプリケーションA
48に送られる。
【0024】別の例では、アプリケーションB50はコ
ンテナであり、その名前を有効エントリとしてロケーシ
ョン・テーブル54内に追加するようロケーション・マ
ネージャ44に要求する。アプリケーションB50を追
加すると、他のすべてのアプリケーションがアプリケー
ションB50の記憶ロケーションが有効であることを認
識し提示することができるようになる。このためにアプ
リケーションB50は、ロケーション情報を修正するた
めのロケーション・アクセス要求を送り、その結果この
修正はロケーションを作成することになる。
【0025】要求を受け取ったとき、ロケーション・マ
ネージャ44は、アプリケーションB50を新しいロケ
ーションとして追加するようにロケーション・テーブル
54を修正するためのロケーション・アクセス・メッセ
ージをGUI動作環境42に送る。この修正の成否に関
するメッセージが、GUI動作環境42からロケーショ
ン・マネージャ44に返される。修正が成功した場合、
ロケーション・マネージャ44はロケーション・ツリー
46を更新し、成功の結果をアプリケーションB50に
返す。何らかの理由でロケーションが作成できなかった
場合、ロケーション・ツリー46は更新されず、新しい
ロケーション作成の失敗を示すメッセージがアプリケー
ションB50に返される。
【0026】アプリケーションC52は、あるアイテム
をあるロケーションに挿入するようロケーション・マネ
ージャ44に要求する。アイテムをロケーションに挿入
することによる修正のためのロケーション・アクセス・
メッセージが、ロケーション・マネージャ44に送られ
る。ロケーション・マネージャ44は、GUI動作環境
42に照会して、そのロケーションが有効か否か、及び
そのロケーションが開いていて目に見えるか否かを決定
する。ここで開いていて目に見えるとは、そのロケーシ
ョンが、開かれているウィンドウまたはビューポートあ
るいはビデオ・ディスプレイ内にあること、及びそのウ
ィンドウまたはビューポートがユーザに見えることを意
味する。GUI動作環境42は、そのロケーションが有
効かどうか及び開いていて目に見えるかどうかを含むメ
ッセージをロケーション・マネージャ44に送る。その
ロケーションが有効である場合、ロケーション・マネー
ジャ44はアイテム追加メッセージを、そのアイテムを
追加すべきロケーションに送る。そのロケーションが有
効でありかつ開いていて目に見える場合、アイコン挿入
メッセージがそのロケーションに送られ、そのロケーシ
ョン及びそのアイテムが表示されるスクリーンをリフレ
ッシュする操作なしに、この新しいアイテムをユーザに
表示する。
【0027】アプリケーションA48、アプリケーショ
ンB50、及びアプリケーションC52によって行われ
る要求は、アプリケーションが必要とするロケーション
・アクセスのいくつかのタイプの例であるが、これらの
例は限定的なものではない。さらに、これらのロケーシ
ョンは、論理的ロケーションであり、それらの名前が記
憶装置、すなわち、ハード・ディスク・ドライブや光デ
ィスク上の物理的ロケーションに対応することもあり、
しないこともある。
【0028】API呼出しは、GUI動作環境42及び
ロケーション・テーブル54とのすべての対話を実施す
るために使用される。すべてのロケーション・アクセス
を実行するために必要なAPI呼出しは、ロケーション
・マネージャ44内のSmalltalkコード内にあ
り、したがってアプリケーション開発者は、C言語を知
らなくとも、あるいはどのオフィスビジョン/2 AP
Iを使用すべきかを知らなくとも、さらにはAPIが予
想するパラメータさえも知る必要なく、ロケーション情
報にアクセスするアプリケーションを作成することがで
きる。その代わりに、アプリケーション開発者は、ロケ
ーション・マネージャ44にアクセスするようにアプリ
ケーションをプログラミングする。以下に、Small
talkV/PM内でのアクセスのためにロケーション
・マネージャが提供しうるオブジェクト・サービスを示
す。 1.ロケーションからクラス情報を抽出する − 所与
のロケーションから特定のクラスのオブジェクトを抽出
する。 2.パスからクラスを抽出する − 所与のサブディレ
クトリ・パスから特定のクラスのオブジェクトを抽出す
る。 3.デフォルトのNIFパスを照会する − オフィス
ビジョン/2に照会して、新アイコン・フォルダ(NI
F)のサブディレクトリ経路を決定する。 4.デフォルトのオフィス・パスを照会する − オフ
ィスビジョン/2に照会して、オフィスビジョン/2が
常駐するパスを決定する。 5.ロケーション・クラスを照会する − この方法に
提供されたロケーションに対するオフィスビジョン/2
クラスを決定する。 6.ロケーション・パスを照会する − この方法に提
供されたロケーションに対するオフィスビジョン/2経
路を決定する。 7.NIFパスを照会する − 完全に修飾された新ア
イコン・フォルダのパスを返す(このリストの第3項と
第4項の組み合わせ)。 8.オフィスロケーションを照会する − このデスク
トップに対するすべての有効なオフィスビジョン/2ロ
ケーションのリストを返す。 9.OS2ドロワー・パスを照会する − オフィスビ
ジョン/2ドロワーのOS/2パスを返す。 10.OWパスを照会する − オフィス・ウィンドウ
のOS2パスを返す。
【0029】ロケーション・マネージャを使用すると、
アプリケーション開発者は、単にロケーション・マネー
ジャを呼び出すだけでオフィスビジョン/2ロケーショ
ン情報にアクセスすることができる。このように、アプ
リケーション開発者が、オフィスビジョン/2とともに
使用されるように開発されたアプリケーションに必要な
以上の諸機能を実行するのに必要なコードを学んだり、
書いたりする必要なく、Smalltalk V/VP
Mなどのオブジェクト指向環境でアプリケーションの作
成に集中できるようにするツールをロケーション・マネ
ージャは提供する。その結果、アプリケーションをオフ
ィスビジョン/2と統合するのに必要な時間が減少し複
雑が軽減される。
【0030】図3は、本発明の好ましい実施例でロケー
ション・マネージャが使用するロケーション・ツリーの
アーキテクチャを示す。各ロケーション・マネージャ・
エントリ56は、名前、経路、ディレクトリ、及びサブ
ロケーションの4グループの情報を含む。各サブロケー
ションは、ロケーション・マネージャ・エントリ(LM
E)56をすぐ下のレベルのロケーション・マネージャ
・エントリ(LME)を示す情報またはポインタを含
む。また各LMEは、そのLMEを、ロケーション・ツ
リー内のそれより上のLMEに向けるポインタを含む。
ルート・ノードまたはルートLMEは、名前、経路、及
びディレクトリに関してヌル値を含むので、ロケーショ
ン・マネージャは、いつルート・レベルに戻されるかを
知ることができる。
【0031】この例では、ルート・ロケーション・マネ
ージャ・エントリ58は、ジョンのオフィス、新しいア
イコン・フォルダ、及びドロワーAに関するサブロケー
ションを含む。ジョンのオフィス60、新しいアイコン
・フォルダ62、及びドロワーA64は、ルート・ロケ
ーション・マネージャ・エントリより1レベル下のLM
Eである。また、これらのロケーション・マネージャ・
エントリも、それぞれ名前、経路、ディレクトリ、及び
サブロケーション情報を含む。たとえば、ドロワーA6
4は、フォルダB、フォルダC、などと呼ばれるサブロ
ケーションを含む。フォルダB66は、ドロワーA64
より1レベル下であり、ルートLME58より2レベル
下である。すでに述べたように、フォルダB66は、ド
ロワーA64に戻るポインタを含む。このようなロケー
ション・ツリー・アーキテクチャによって、ロケーショ
ン・マネージャは、アプリケーションからロケーション
情報へのアクセスを求める要求を受け取ったとき、ロケ
ーション・ツリーを迅速に探索または修正することが可
能になる。このロケーション・ツリーは、GUI動作環
境から情報を得る機会が最小になるので、アプリケーシ
ョンの性能を時間及び速度の点で向上させることができ
る。
【0032】図4は、本発明の好ましい実施例の下でロ
ケーション情報にアクセスする方法を示す詳細流れ図で
ある。図のように、プロセスはブロック80から始ま
り、次にブロック82に進んで、アプリケーションから
ロケーション情報のためのロケーション・アクセス要求
を受け取る。次に、ブロック84で、そのロケーション
・アクセス要求に対応するロケーション情報を求めてロ
ケーション・ツリーを探索する。次に、ブロック86
で、ロケーション・ツリーの探索の結果、そのロケーシ
ョン・アクセス要求に対応するロケーション情報が見つ
かったかどうか判定する。
【0033】ロケーション・ツリーの探索でロケーショ
ン・アクセス要求に対応するロケーション情報が見つか
らなかったとブロック86で判定された場合、ブロック
88に進んで、ロケーション情報のためのロケーション
・アクセス要求をGUI動作環境に送る。ブロック88
で、ロケーション・アクセス要求を、適当なAPI呼出
し、またはGUIオペレーティング・システムに特有の
他の何らかの呼出しに変換する。次に、ブロック90
で、GUI動作環境から要求されたロケーション情報を
含むメッセージを受け取る。その後、ブロック92で、
そのメッセージ中で返されたロケーション情報でロケー
ション・ツリーを更新する。
【0034】GUI動作環境からロケーション情報を受
け取る際、ロケーション情報は、そのロケーション情報
を要求するアプリケーションが指定または必要とする形
式に変換することができ、また修正なしでアプリケーシ
ョンに直接送ることもできる。ブロック94に進んで、
ロケーション・アクセス要求に対応するロケーション情
報をアプリケーションに送る。次に、ブロック96でプ
ロセスは終了する。
【0035】再びブロック86を参照すると、ブロック
84での探索の結果、ロケーション・アクセス要求に対
応するロケーション情報がロケーション・ツリー内に存
在している場合、ブロック98に進んで、ロケーション
情報をロケーション・ツリーから取り出す。次に、ブロ
ック94に進んで、ロケーション情報がアプリケーショ
ンに送られる。その後、ブロック96でプロセスは終了
する。
【0036】図5は、本発明の好ましい実施例に従って
ロケーション情報にアクセスする方法の詳細流れ図を示
す。図のように、プロセスはブロック110から始ま
り、次にブロック112に進んで、ロケーション情報の
修正のためのロケーション・アクセス要求を受け取る。
次に、ブロック114で、修正のためのロケーション・
アクセス・メッセージをGUI動作環境に送る。次にブ
ロック116に進んで、ブロック114でロケーション
・アクセス・メッセージを送ったことに応答して、GU
I動作環境からメッセージを受け取る。次に、ブロック
118で、このメッセージがイエスか否か判定する。
【0037】メッセージがイエスの場合、ブロック12
0に進んで、ロケーション・ツリーがその修正で更新さ
れる。その後、修正の結果が、要求側アプリケーション
に送られ、ブロック124でプロセスは終了する。
【0038】再びブロック118に戻って、メッセージ
がノーの場合、ブロック122に進んで、修正の結果、
すなわち修正が行えないことをアプリケーションに送
る。その後、ブロック124でプロセスは終了する。
【0039】図6は、本発明の好ましい実施例の下でロ
ケーション情報にアクセスする方法を示す詳細流れ図で
ある。図のように、プロセスはブロック130から始ま
り、次に、ブロック132に進んで、アプリケーション
からアイテムをあるロケーションに挿入するためのロケ
ーション・アクセス要求を受け取る。次にブロック13
4で、GUI動作環境に照会して、そのロケーションが
有効か否か、及びそのロケーションが開いていて目に見
えるか否かを決定する。ブロック136で、ブロック1
34の照会に応答して、GUI動作環境からメッセージ
を受け取る。
【0040】その後、ブロック138で、そのロケーシ
ョンが有効であるか否か決定する。そのロケーションが
有効である場合、ブロック140に進んで、そのアイテ
ムをそのロケーションに追加する。次に、ブロック14
2で、そのロケーションが開いていて目に見えるか否か
決定する。ロケーションが開いていて目に見える場合、
ブロック144に進んで、アイコンをそのロケーション
に挿入する。アイコンの挿入は、そのアイコンを指すポ
インタを獲得し、そのポインタを、アイコンの表示を求
める要求とともにそのロケーションに送ることによって
達成される。
【0041】次に、ブロック146でロケーション・ツ
リーが更新され、ブロック148に進んで、アイテム挿
入のためのロケーション・アクセス要求の結果をアプリ
ケーションに送る。その後、ブロック150でプロセス
は終了する。
【0042】再びブロック138に戻って、ロケーショ
ンが有効でない場合、ブロック148に進んで、アイテ
ム挿入のための要求の結果をその要求を行っているアプ
リケーションに送る。その後、ブロック158でプロセ
スは終了する。ブロック142でロケーションが開いて
おらず目に見えない場合、再びブロック148に進ん
で、結果をアイテムの挿入を要求しているアプリケーシ
ョンに送り、ブロック150でプロセスは終了する。
【0043】本発明の各段階の説明は、GUI動作環境
で使用されるアプリケーションを開発する際の助けとな
るツール・キット構成要素として実施することができ
る。別の実施例では、本発明の様々な方法は、ロケーシ
ョン情報へのアクセスを提供することによって、オブジ
ェクト指向プログラムをGUI動作環境と統合するため
のコンピュータ・プログラムとして実施することができ
る。
【0044】以下に、本発明の下で使用される疑似コー
ドのいくつかの例を示す。最初の例は、アプリケーショ
ンがロケーション・マネージャからロケーション情報を
要求することに関するものである。 Application: ロケーション情報の要求を
ロケーション・マネージャに送る。 Location Manager: 現在のロケーシ
ョン・ツリーを探索して、
要求されたロケーション情報がすでに存
在しているかどうか
調べる。 If True: ロケーション情報を要求側アプリ
ケーションに返す。 If False: GUIからロケーション情報を要
求する;ロケーション情報をツリー内に記憶する;ロケ
ーション情報をアプリケーションに返す。
【0045】以下に、GUI動作環境でロケーション・
マネージャがアプリケーションからロケーション情報を
修正する要求を受け取ることに関する疑似コードの一例
を示す。 Location Manager: アプリケーショ
ンからロケーション情報を修正することを求める要求を
受け取る。修正要求をGUI動作環境に送る。GUI動
作環境から返されたコードが成功かどうか検査する。 If True: 変化を反映するようにロケーショ
ン・ツリーを更新する。 If False: エラー・コードを要求側アプリケ
ーションに送る。
【0046】アプリケーションによる要求に応答してロ
ケーション・マネージャがアイテムをあるロケーション
に挿入することに関する疑似コードは、以下のように書
くことができる。 Application: アイテムを指定されたロケ
ーションに挿入することを求める要求をロケーション・
マネージャに送る。 Location Manager: ロケーションが
有効か否か、及びロケーションが現在開いているか否か
を決定するために照会文をGUI動作環境に送る。ロケ
ーションは有効か If False: エラー・コードを要求側アプリケ
ーションに送る。 If True: アイテムをロケーションに追加す
る。ロケーションは開いていて目に見える。 If False: 要求側アプリケーションに返る。 If True: アイコン挿入メッセージを開いた
ロケーションに送る;ロケーション・ツリーを更新す
る;結果を要求側アプリケーションに送る。
【図面の簡単な説明】
【図1】本発明の方法を実施するために利用できる分散
データ処理システムの絵画図である。
【図2】本発明の好ましい実施例に従ってロケーション
情報にアクセスする方法を示す図である。
【図3】本発明の好ましい実施例でロケーション・マネ
ージャが使用するロケーション・ツリーのアーキテクチ
ャを示す図である。
【図4】本発明の好ましい実施例の下でロケーション情
報にアクセスする方法を示す詳細流れ図である。
【図5】本発明の好ましい実施例に従ってロケーション
情報にアクセスする方法の詳細流れ図である。
【図6】本発明の好ましい実施例の下でロケーション情
報にアクセスする方法を示す詳細流れ図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ウェイド・エイ・ミラー アメリカ合衆国76248、テキサス州ケラー、 クェイル・リッジ 986番地 (72)発明者 ジョン・ケイ・レイボーン アメリカ合衆国75209、テキサス州ダラス、 サウスウェスターン・ブールヴァード 5631番地

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】オブジェクト指向ソフトウェア・システム
    において、グラフィック・ユーザ・インターフェース動
    作環境内でロケーション情報にアクセスするための方法
    であって、 オブジェクト指向環境内のアプリケーションからメモリ
    内のメモリ・ロケーションでロケーション・アクセス要
    求を受け取る段階と、 前記ロケーション・アクセス要求が、ロケーション情報
    を求めるものである場合、前記ロケーション情報を求め
    て前記オブジェクト指向環境内のロケーション・ツリー
    を探索し、前記ロケーション・アクセス要求に対応する
    ロケーション情報が存在する場合、前記ロケーション・
    ツリーから前記ロケーション・アクセス要求に対応する
    ロケーション情報を取り出し、前記ロケーション・アク
    セス要求に対応するロケーション情報が前記ロケーショ
    ン・ツリーに存在しない場合は、ロケーション情報のた
    めのロケーション・アクセス・メッセージを前記グラフ
    ィック・ユーザ・インターフェース動作環境に送り、前
    記ロケーション・アクセス・メッセージに応答して前記
    ロケーション・アクセス要求に対応するロケーション情
    報を含むメッセージを受け取り、前記ロケーション・ア
    クセス要求に対応するロケーション情報で前記ロケーシ
    ョン・ツリーを更新する段階と、 前記ロケーション・アクセス要求が、ロケーション情報
    を修正するためのものである場合、修正のためのロケー
    ション・アクセス・メッセージを前記グラフィック・ユ
    ーザ・インターフェース動作環境に送ることによって修
    正を行い、修正のための前記ロケーション・アクセス・
    メッセージの成否に関する情報を含むメッセージを受け
    取り、前記試行段階の成否に関する情報を含む前記メッ
    セージがイエスである場合、前記修正で前記ロケーショ
    ン・ツリーを更新する段階と、 結果を前記アプリケーションに返す段階とを含む方法。
  2. 【請求項2】ロケーション情報を修正するための前記ロ
    ケーション・アクセス要求が、前記グラフィック・ユー
    ザ・インターフェース動作環境内のあるロケーションに
    アイテムを挿入するためのものであり、前記修正実行段
    階が、 前記ロケーションが有効なロケーションであるか否か、
    及び前記ロケーションが開いていて目に見えるか否かを
    決定するために前記グラフィック・ユーザ・インターフ
    ェース動作環境にに照会し、照会に応答して前記グラフ
    ィック・ユーザ・インターフェース動作環境からロケー
    ションが有効かどうか及び開いていて目に見えるかどう
    かを含むメッセージを受け取る段階と、 前記ロケーションが有効である場合、アイテム追加メッ
    セージを前記ロケーションに送る段階と、 ロケーションが有効で、開いていて目に見える場合、前
    記アイテムに関連するアイコンを表示するようにとのメ
    ッセージを前記ロケーションに送る段階とを含む請求項
    1に記載の方法。
  3. 【請求項3】グラフィック・ユーザ・インターフェース
    動作環境内でアイテムをあるロケーションに挿入し、前
    記アイテムを表すアイコンを、前記ロケーションを表す
    ウィンドウ内で表示するための方法であって、 前記アイテムを前記ロケーションに挿入するためのロケ
    ーション・アクセス要求をオブジェクト指向環境内のア
    プリケーションから受け取る段階と、 前記ロケーションが有効であるか否か、及び前記ロケー
    ションが開いていて目に見えるか否かを決定するために
    前記オブジェクト指向環境内でロケーション・ツリーを
    探索する段階と、 ロケーション情報が前記ロケーション・ツリーに存在し
    なかった場合、前記ロケーションが有効なロケーション
    であるか否か、及び前記ロケーションが開いていて目に
    見えるか否かを決定するために照会文を前記グラフィッ
    ク・ユーザ・インターフェース動作環境に送る段階と、 前記ロケーションが有効であった場合、前記ロケーショ
    ン・ツリーを前記ロケーションで更新し、アイテム追加
    メッセージを前記ロケーションに送る段階と、 ロケーションが有効で開いていて目に見える場合、前記
    ロケーションにアイコン追加メッセージを送る段階と、 結果を前記のアプリケーションに送る段階と、 を含む方法。
  4. 【請求項4】グラフィック・ユーザ・インターフェース
    動作環境内でロケーション情報にアクセスするためのコ
    ンピュータ・プログラムとして実施されたロケーション
    ・マネージャ構成要素を含むデータ処理システムであっ
    て、 アプリケーションからメモリ内のオブジェクト指向メモ
    リ・ロケーションでロケーション・アクセス要求を受け
    取る手段と、 前記ロケーション・アクセス要求が、ロケーション情報
    を求めるものである場合、ロケーション情報を求めて前
    記オブジェクト指向環境内でロケーション・ツリーを探
    索する手段と、 前記ロケーション・アクセス要求に対応するロケーショ
    ン情報が存在する場合、前記ロケーション・ツリーから
    前記ロケーション・アクセス要求に対応するロケーショ
    ン情報を取り出すための電子ディジタル・コンピュータ
    手段と、 ロケーション情報のためのロケーション・アクセス・メ
    ッセージを前記グラフィック・ユーザ・インターフェー
    ス動作環境に送り、前記ロケーション・アクセス・メッ
    セージに応答して前記ロケーション・アクセス要求に対
    応するロケーション情報を含むメッセージを受け取り、
    前記ロケーション・アクセス要求に対応するロケーショ
    ン情報が前記ロケーション・ツリーに存在しなかった場
    合、前記ロケーション・アクセス要求に対応するロケー
    ション情報で前記ロケーション・ツリーを更新するため
    の電子ディジタル手段と、 前記ロケーション・アクセス要求が、ロケーション情報
    を修正するためのものである場合、修正のためのロケー
    ション・アクセス・メッセージを前記グラフィック・ユ
    ーザ・インターフェース動作環境に送ることによって修
    正を行う手段と、前記修正の成否に関する情報を含むメ
    ッセージを受け取るための電子ディジタル手段と、修正
    の成否に関する情報を含む前記メッセージがイエスであ
    る場合、前記修正で前記ロケーション・ツリーを更新す
    るための電子ディジタル手段と、 結果を前記のアプリケーションに返す手段と、 を含むデータ処理システム。
  5. 【請求項5】グラフィック・ユーザ・インターフェース
    動作環境内でアイテムをあるロケーションに挿入するこ
    とを求める要求を処理するための電子ディジタル・コン
    ピュータ手段を付与されたロケーション・マネージャ構
    成要素であって、 アプリケーションから前記アイテムを前記ロケーション
    に挿入することを求める前記要求を受け取るための電子
    ディジタル・コンピュータ手段と、 前記ロケーションが有効なロケーションであるか否か、
    及び前記ロケーションが開いていて目に見えるか否かを
    決定するために照会文を前記グラフィック・ユーザ・イ
    ンターフェース動作環境に送るための電子ディジタル・
    コンピュータ手段と、 前記ロケーションが有効であった場合、前記アイテムを
    前記ロケーションに入れるための電子ディジタル・コン
    ピュータ手段と、 前記のロケーションが有効で開いていた場合、アイコン
    を前記ロケーションに追加するよう要求するための電子
    ディジタル・コンピュータ手段と、 結果を前記のアプリケーションに送るための電子ディジ
    タル・コンピュータ手段とを含むロケーション・マネー
    ジャ構成要素。
JP4132205A 1991-06-28 1992-05-25 ロケーション情報にアクセスするための方法及び装置 Expired - Lifetime JPH0797316B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US72300691A 1991-06-28 1991-06-28
US723006 1991-06-28

Publications (2)

Publication Number Publication Date
JPH05189218A true JPH05189218A (ja) 1993-07-30
JPH0797316B2 JPH0797316B2 (ja) 1995-10-18

Family

ID=24904411

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4132205A Expired - Lifetime JPH0797316B2 (ja) 1991-06-28 1992-05-25 ロケーション情報にアクセスするための方法及び装置

Country Status (2)

Country Link
EP (1) EP0520922A3 (ja)
JP (1) JPH0797316B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08147243A (ja) * 1994-11-21 1996-06-07 Nec Corp マルチメディアデータ通信方式

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5396626A (en) * 1993-08-04 1995-03-07 Taligent, Inc. Object-oriented locator system
US5379430A (en) * 1993-08-04 1995-01-03 Taligent, Inc. Object-oriented system locator system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08147243A (ja) * 1994-11-21 1996-06-07 Nec Corp マルチメディアデータ通信方式

Also Published As

Publication number Publication date
EP0520922A3 (en) 1993-01-27
EP0520922A2 (en) 1992-12-30
JPH0797316B2 (ja) 1995-10-18

Similar Documents

Publication Publication Date Title
EP0504085B1 (en) Method and apparatus for accessing a relational database without exiting an object-oriented environment
US6757868B1 (en) Programmatic switching of arbitrary HTML forms
EP0647909B1 (en) Information catalog system with object-dependent functionality
US6785869B1 (en) Method and apparatus for providing a central dictionary and glossary server
AU729483B2 (en) Multiple database access server for application programs
US8056091B2 (en) Systems and methods for using application services
US6366916B1 (en) Configurable and extensible system for deploying asset management functions to client applications
JP2837311B2 (ja) 非コンテナ・オブジェクトにコンテナ・オブジェクト属性を与える方法
US7526507B2 (en) Methods, apparatus and computer programs for visualization and management of data organisation within a data processing system
US7627583B2 (en) Methods, apparatus and computer programs for visualization and management of data organisation within a data processing system
JP2000089989A (ja) 文書に付与されたプロパティを用いたサ―ビスの起動方法
JPH0954782A (ja) ウェブ・ブラウザのリクエストを実行するためのサブエージェント・サービス・エージェント
US20060259638A1 (en) Rapid development in a distributed application environment
US8832600B2 (en) Method, system, and program for navigating files
US5657447A (en) Platform-transparent registration and build of stored procedures and user-defined functions
US7117433B1 (en) HTML mapping substitution graphical user interface for display of elements mapped to HTML files
US6968340B1 (en) Technique for navigating components of a model having complex relationships
EP1909170B1 (en) Method and system for automatically generating a communication interface
US6826571B1 (en) Method and apparatus for dynamically customizing and extending functions of a server program to enable and restrict functions of the server
US6292824B1 (en) Framework and method for facilitating client-server programming and interactions
JPH05189218A (ja) ロケーション情報にアクセスするための方法及び装置
EP0601254A1 (en) Method for allowing the access of a database by an application program
EP0520926A2 (en) Method and apparatus for managing class information
US10162472B1 (en) Specifying sizes for user interface elements
US9665589B1 (en) Techniques for reducing resource property files