JPH04303240A - オブジェクト指向インタフェース標準を与えるシステムおよび方法 - Google Patents

オブジェクト指向インタフェース標準を与えるシステムおよび方法

Info

Publication number
JPH04303240A
JPH04303240A JP3344109A JP34410991A JPH04303240A JP H04303240 A JPH04303240 A JP H04303240A JP 3344109 A JP3344109 A JP 3344109A JP 34410991 A JP34410991 A JP 34410991A JP H04303240 A JPH04303240 A JP H04303240A
Authority
JP
Japan
Prior art keywords
message
icon
application
instance
objects
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
JP3344109A
Other languages
English (en)
Other versions
JPH0756643B2 (ja
Inventor
Catherine J Cavendish
キャサリン・ジェイ・カヴェンディッシュ
Stacey C Ramos
ステイシー・シー・ラモス
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 JPH04303240A publication Critical patent/JPH04303240A/ja
Publication of JPH0756643B2 publication Critical patent/JPH0756643B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/545Gui

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Digital Computer Display Output (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、入出力(I/O)装置
からソフトウェア・アプリケーションに、装置と無関係
に信号(“メッセージ”と呼ばれる)を伝送するための
システムおよび方法に関する。特に、I/O装置からメ
ッセージを受け取り、それらのメッセージをオブジェク
ト指向技術を用いて翻訳し、翻訳されたメッセージを、
I/O装置と無関係な共通プロトコルを用いて、アプリ
ケーション・オブジェクトに伝送するシステムおよび方
法に関する。
【0002】
【従来の技術】最近、コンピュータ・プログラムの作成
と使用を“オブジェクト指向”環境で行おうとする風潮
が出ている。そのような環境は“オブジェクト”の概念
を利用し、オブジェクトは一般に、特定の“メソッド”
を有する操作可能アイテムを示す。メソッドは、オブジ
ェクトが実行可能な動作を示す。メソッドをオブジェク
トに結びつけることを“カプセル化”という。
【0003】オブジェクトによって示されるアイテムは
、共通オフィス・オブジェクトおよびコンピュータ周辺
機器,コンピュータ・プログラム,ドキュメントを含ん
でいる。このようなオブジェクト(ここでは“アプリケ
ーション・オブジェクト”と呼ぶ)の例は、ワードプロ
セッシング文書によって示される。このアプリケーショ
ン・オブジェクトの内部にカプセル化されるメソッドは
、I/O装置から特定のメッセージを受け取るとき(例
えばマウスから左ボタン・ダブルクリック・メッセージ
を受け取ると)、ワードプロセッシング・プログラムを
呼出し、それ自身をそのワードプロセッシング・プログ
ラムに読み出す機能を含んでいる。
【0004】アプリケーション・オブジェクトは従来、
ユーザには“アイコン”によって示され、そのアイコン
は視覚的ディスプレイ装置に表示されたビットマップで
ある。ワードプロセッシング文書のためのアイコンは、
例えば、中にWPの文字を有した小さなグレーの矩形で
表される。アイコンの外観は従来ビットマップによって
定められた。
【0005】従来、マウスのようなI/O装置は、I/
O装置の相対位置を示す視覚的ディスプレイ装置上にポ
インタ・マーカを生成・制御して、ユーザにアイコンを
指示させた。言い換えれば、I/O装置が一定の方向に
移動すると、ポインタ・マーカは同じ方向に移動する。 このようにして、ユーザはI/O装置を用いて、そのポ
インタ・マーカを、視覚的ディスプレイ装置上の所望の
アイコンに移動させることができる。
【0006】ポインタ・マーカを視覚的ディスプレイ装
置上の複数のアイコンに移動させる能力は、ユーザに、
アプリケーション・オブジェクトのメソッドを利用する
ことを可能にした。これは従来、アイコンを視覚的ディ
スプレイ装置上の様々な位置に移動させることにより、
もしくはI/O装置を用いて、代表アイコンが直接指示
するアプリケーション・オブジェクトにメッセージを送
ることにより、行われてきた。このようにして、アイコ
ンはユーザに、視覚的に、オブジェクト指向環境の中で
アプリケーション・オブジェクトの操作および対話に関
係することを可能にする。
【0007】アイコンを用いてアプリケーション・オブ
ジェクトを操作する例は、上記の例のワードプロセッシ
ング文書を参照して記述できる。この例では、ユーザは
I/O装置を操作し、ポインタ・マーカはワードプロセ
ッシング文書アプリケーション・オブジェクトを示すア
イコンを指示する。ユーザはさらにアプリケーション・
オブジェクトにメッセージを送ることができ(例えばI
/O装置上の適切なボタンを押下することによって)、
アプリケーション・オブジェクトはいくつかあるそのメ
ソッドを呼出すことができる。上記の例において、それ
らのメソッドは、ワードプロセッシング・プログラムを
呼出すこと、およびワードプロセッシング文書の中をそ
のプログラムに読ませることを含んでいる。
【0008】上記の例は、アプリケーション・オブジェ
クトをオブジェクト指向環境の中で操作し、アプリケー
ション・オブジェクトのカプセル化されたメソッドを利
用する有効な方法である。上記のように、アイコンは一
般に、I/O装置を用いて視覚的ディスプレイ装置の他
の部分に移動することができる。例えば、I/O装置と
してマウスが使用される場合では、アイコンを指示する
ためにポインタ・マーカを用い、マウス・ボタンの一方
を押す、あるいは押し続けることにより、ユーザはマウ
スを動かして視覚的ディスプレイ装置の他の部分にアイ
コンを移動させることができる。
【0009】再び上記のワードプロセッシング文書の例
を用いると、アイコンを移動させる能力はユーザに、あ
るアイコン上にアプリケーション・オブジェクトを示す
他のアイコン(ワードプロセッシング・プログラム・ア
イコンもしくはワードプロセッシング文書アイコン)の
一つを移動することを許容する。従来のオブジェクト指
向環境においては、この“オブジェクト間”対話は結果
としてワードプロセッシング・プログラムの呼出しを招
き、このプログラムにワードプロセッシング文書を読ま
せる。留意すべきは、この結果はこのワードプロセッシ
ング文書の例に特有で、オブジェクト間の対話の結果は
一般に、アイコンが示すアプリケーション・オブジェク
トに依存しているということである。
【0010】上記に説明したように、I/O装置はメッ
セージを送信することによって、オブジェクト指向環境
と通信する。マウスのようなポインタ式I/O装置の場
合は、マウス・ボタンの一つが押下される度に、メッセ
ージはオブジェクト指向環境に送信される。他のボタン
もしくはボタンの組合せを押下すると、普通は違ったメ
ッセージを送信できる。これらのメッセージの受信時の
これらのメッセージ翻訳についてはオブジェクト指向環
境に依存している。
【0011】I/O装置からのメッセージ翻訳の例とし
て、例えば、オブジェクト指向環境が、アプリケーショ
ン・オブジェクトと、アイコンが示すワードプロセッシ
ング・プログラムを含むものと仮定しよう。もし、マウ
スのようなポインタ式I/O装置がワードプロセッシン
グ・プログラム・アイコンを(ポインタ・マーカで)指
示するのに使用され、さらにマウスの左ボタンが2度ク
リックされると、このメッセージはオブジェクト指向環
境のどこかで翻訳される必要がある。従来は、アプリケ
ーション・オブジェクト(この場合、ワードプロセッシ
ング・プログラム)自身が、このメッセージを受け取り
翻訳する。このように、ワードプロセッシング・プログ
ラムは、メッセージを如何に翻訳するかを“決定”する
。この例では、マウスの左ボタンが押されたというメッ
セージは、アプリケーション・オブジェクトに対して、
ワードプロセッシング・プログラムが呼び出されるべき
であると指示している。
【0012】アプリケーション・オブジェクト設計者が
、有限個のI/O装置が、アプリケーション・オブジェ
クトと結び付いて使用されることを前もって知っていた
ら、そのアプリケーション・オブジェクトは、任意のI
/O装置から送られて来ることのできるメッセージをす
べて翻訳するように設計することができる。例えば、ア
プリケーション・オブジェクトは、2ボタン・マウスお
よび3ボタン・マウスの双方からのメッセージを、翻訳
するように設計することができる。この2つのI/O装
置のいずれかからのメッセージを考慮して、設計者は、
例えば、3ボタン・マウスの第3ボタンが押下されたこ
とを示すメッセージを、2ボタン・マウスの両方のボタ
ンが同時に押下されたことに等しくする(すなわち、同
じ結果を得る)アプリケーション・オブジェクトを設計
することができる。しかし、一旦アプリケーション・オ
ブジェクト(またはそれを生成するメカニズム)が完成
されると、もし、設計者がアプリケーション・オブジェ
クトに、4ボタン・マウスのような予め説明されていな
いI/O装置を翻訳してほしいときには、アプリケーシ
ョン・オブジェクト(または生成メカニズム)の一部を
、再設計しなければならない。
【0013】新しいI/O装置の考慮の問題は、従来の
オブジェクト指向環境が多くのアプリケーション・オブ
ジェクトを含んでいるという事実と、一つ以上のI/O
装置が続いて発展するときに、それに相当する量の、な
されるべき再設計が存在するという事実とによって増大
する。よって、I/O装置とアプリケーション・オブジ
ェクトとの間で、介在物として働くスキームを生成し、
この介在物が、付加的なI/O装置が実行されるときに
各アプリケーション・オブジェクト(または、オブジェ
クト指向環境においてアプリケーション・オブジェクト
を生成する機構、例えば、ワードプロセッシング・プロ
グラム・アプリケーション・オブジェクトはワードプロ
セッシング文書アプリケーション・オブジェクトを生成
することができる)を変更することなく、集中した変更
または付加を可能にするのが望ましい。アプリケーショ
ン・オブジェクトの再設計の量を最小にするために、そ
のようなスキームは、アプリケーション・オブジェクト
に送信されるべきメッセージが、一様なプロトコルを使
用して送信されることを要求する。その結果、アプリケ
ーション・オブジェクトの設計者は、使用されたI/O
装置のタイプにかかわらず、受け取ったメッセージ中に
一貫性を期待して、全アプリケーション・オブジェクト
を設計することができる。
【0014】I/O装置との直接の対話に加えて、オブ
ジェクト指向環境には、I/O装置によって直接生成さ
れるメッセージに匹敵するメッセージを生成できる他の
機構がある。例えば、上述のように、オブジェクト指向
環境において、一方のアイコンを他のアイコンの上に移
動させる(すなわち、オブジェクト間の対話)と、アプ
リケーション・オブジェクトのある種のメソッドを呼び
出すことができる。アプリケーション・オブジェクトは
不必要に複雑である必要はないので、この対話の結果と
して適切な単一のアプリケーション・オブジェクト(ま
たは複数のアプリケーション・オブジェクト)に送られ
るメッセージは、I/O装置によって直接単一のアプリ
ケーション・オブジェクト(または複数のアプリケーシ
ョン・オブジェクト)に送られる同等のメッセージと同
じメッセージである。そうでなければ、アプリケーショ
ン・オブジェクトは、個々のオブジェクト間の対話の結
果であるこれらのメッセージを、さらに翻訳するように
設計されねばならない。
【0015】上述のように、一方のアイコンが他方のア
イコン上に移動した状況において、この対話(これはア
イコンが示すアプリケーション・オブジェクトのメソッ
ドに基づいている)からの結果メッセージ(すなわち、
結果出力)が、何らかの形で決定される必要がある。こ
の種の決定をする従来の技術は、手続き型プログラミン
グ環境の使用である。この環境は、代表アイコンを互い
の上に落とすことのできるアプリケーション・オブジェ
クトの、可能な全組合せを考慮することができる。
【0016】しかし、従来技術に伴う問題は、プログラ
ムによって考慮されなかったアプリケーション・オブジ
ェクトが、このような手続き型プログラムの作成の後に
付加しうるということである。手続き型プログラムの変
数のデータ型は、プログラムのコンパイル時にわかって
いなければならず(すなわち、変数は“静的束縛”)、
もし、一方のアプリケーション・オブジェクトから他方
のアプリケーション・オブジェクトへメッセージを渡す
のに使用される変数が同じ型でないなら、データの型変
換が生じなければならない。もし、手続き型プログラミ
ング環境が多くの異なるデータ型を許容するなら、この
ような変換は非常に厄介で複雑となる。よって、必要な
のは、変数が“動的に”束縛(すなわち、走行時に束縛
)された、データ変換が不必要な環境において、オブジ
ェクト間の対話を解決するためのシステムまたは方法で
ある。
【0017】次の説明に関連して、以下にオブジェクト
指向環境のいくつかの様相を示す。オブジェクト指向環
境の1つの基本的様相は、アプリケーション・オブジェ
クトが階層的にクラスを組織することができることであ
る。クラスは単一の実体の内部で機能とデータのカテゴ
リまたはグループを定義する。クラス・メソッドの改良
は、“サブクラス”の作成によって行われる。言い換え
れば、クラスは属、サブクラスは種と考えることができ
る。サブクラスは、新しいクラスのクラス階層への導入
を許容し、上位クラスの振舞いを継承する一方で、スー
パークラスに新しい振舞いを付加する。
【0018】クラスはアプリケーション・オブジェクト
,メソッド,および振舞いの抽象的で一般的な記述であ
る。クラスのインスタンスは、オブジェクト指向環境に
おいて動的に生成される。インスタンスは特定の個別実
体であり、認識可能な振舞いを持つ具体的なものである
。インスタンスは動的に生成され削除される。しかし、
クラスはインスタンスが属する広い概念であり、抽象的
概念である。インスタンスはそのクラスの全メソッドを
継承し、それに伴う固有の、特定の個別価値を有する。
【0019】オブジェクト指向環境においては、クラス
はそのクラスの全インスタンスによって共有される所定
のパラメータ、および所定のメソッドまたは振舞いを記
述する。コンピュータのメモリ上は、クラスに対し、唯
一つの位置しか存在しない。しかし、クラスには多数の
インスタンスがあり、その各々は異なる値と異なる物理
位置をメモリに有している。
【0020】例えば、オブジェクト階層の頂点には“オ
フィス・オブジェクト”と呼ばれるアプリケーション・
オブジェクトが存在する。オフィス・オブジェクトのメ
ソッドは、プリント・メソッドを含むかもしれず、その
場合ユーザは、文書アイコンを、プリントされるように
プリンタ・アイコン上に移動させることによって、どの
プリンタを使うべきかを特定することができる。“オフ
ィス・オブジェクト”の下のクラスは、“ワードプロセ
ッサ”とすることができる。このクラスのアプリケーシ
ョン・オブジェクトのメソッドは、制御信号をプリンタ
に送る能力を含んでいる。このクラスの下に、“ディス
プレイ書込み5”のような他のクラスがあるかもしれな
い。このメソッドは、その特定のワードプロセッシング
・プログラムのメソッドであり、ディスプレイ書込み5
に特有のフォーマット情報を有する。
【0021】要するに、必要なのは、オブジェクト指向
環境における、I/O装置とアプリケーション・オブジ
ェクトとの間の中間層であり、それによって適切なメッ
セージが、装置と無関係な共通プロトコルに変換され、
さらに使用中のI/O装置とは無関係にアプリケーショ
ン・オブジェクトに送られる。これは新しいI/O装置
が付加されるときに、単一の位置で行われる変化を許容
する。また、必要なのは、2つのアプリケーション・オ
ブジェクトの対話を含むイベントの結果を相互に決定す
るシステムまたは方法であり、その結果正しいメッセー
ジが適切なアプリケーション・オブジェクトに送られる
。このようなシステムまたは方法は、静的束縛の非効率
を克服するための手法を使用する。
【0022】
【課題を解決するための手段】本発明は従来技術の欠陥
を克服し、I/O装置から、オブジェクト指向環境のア
プリケーション・オブジェクトに送られるメッセージを
翻訳するためのシステムおよび方法を提供し、これらメ
ッセージの翻訳はメッセージ生成に用いられたI/O装
置にかかわらず一貫していることを目指す。さらに、本
発明は、翻訳されたメッセージが送られる全アプリケー
ション・オブジェクトに変化を起こすことよりむしろ、
本発明の範囲内で行われるべき必要な変化全部(これは
、追加のI/O装置をオブジェクト指向装置に対して識
別できるようにするために、なされる必要がある)を許
容する。
【0023】特に本発明は、I/O装置から、行うべき
動作を指示するメッセージを受け取ることができる。こ
のメッセージの意味は、それを生成したI/O装置のタ
イプと、本発明が存在する環境に基づいて識別される。 正確な意味は、選ばれたプロトコル(すなわち、所定の
I/O装置のための所定のメッセージがいかに翻訳され
るか)に依存している。例えば、I/O装置から受け取
った特定のメッセージは、本発明の環境に対して、異な
るI/O装置からの異なるメッセージと同じものを“意
味する”ことができる。任意のイベントにおいて、メッ
セージは翻訳されて、I/O装置と無関係な共通プロト
コルとなる。
【0024】I/O装置からの直接のメッセージ翻訳に
加えて、本発明は、オブジェクト間の対話がI/Oメッ
セージの結果として生じるかどうかを判断することがで
きる。本発明は、動的束縛(dynamic  bin
ding)を用いてオブジェクト間の対話を分析し、オ
ブジェクト間の対話の結果のメッセージを翻訳してI/
O装置と無関係な共通プロトコルにする。メッセージが
I/O装置の直接の結果であろうとオブジェクト間の対
話の結果であろうと、翻訳されたメッセージは、適切な
アプリケーション・オブジェクトに送られる。
【0025】
【実施例】a.概要 上述のように、本発明は、I/O装置からメッセージを
受け取り、オブジェクト指向技術を用いてメッセージを
翻訳し、翻訳されたメッセージを、I/O装置と無関係
な共通プロトコルを用いてアプリケーション・オブジェ
クトに送信するシステムおよび方法に関する。
【0026】本発明の実施例に関して使用を予想される
オブジェクト指向環境において、本発明は、対応するア
プリケーション・オブジェクト・インスタンスの生成時
に、それ自身のインスタンスを生成するように誘導され
る。このようにして、このインスタンスは、アプリケー
ション・オブジェクト・インスタンスを“表現する”と
言える。本発明の少なくとも一つの実施例は、アプリケ
ーション・オブジェクトを表現するアイコンのビットマ
ップを管理すると予想されるので、本発明はアイコン表
現オブジェクトと呼ばれる。
【0027】本発明の実施例は、それが存在すると予想
される環境に関し、かつ環境内部の実体間のメッセージ
のフローに関し、好適に説明することができる。本発明
の実施例に関して使用を予想される環境は、図1におい
て広く示してある。図1を見ると、イベントのシーケン
スは、I/O装置106に始まり、メッセージ110を
ウィンドゥ104に送信する。I/O装置106は、キ
ーボード,マウス,もしくはその他のポインタ装置,デ
ィスクといった任意の標準I/O装置である。
【0028】この詳細な説明を通して、本発明のいくつ
かの様相を説明するために、マウスがI/O装置106
の例として用いられる。しかし、マウスは単なる例であ
って、他のI/O装置も使用できることは、理解してお
くべきである。
【0029】ウィンドゥ104は、任意の時間に視覚的
ディスプレイ装置(図示せず)上に表示された、これら
のアイコンを追跡する。このように、ポインタ・マーカ
(または他の指示手段)がアプリケーション・オブジェ
クトを表現する特定のアイコンを指示するのに用いられ
るとき、そのアプリケーション・オブジェクトは“選択
”され(すなわち、そのような選択を示すメッセージ1
10が、I/O装置106からウィンドゥ104に送信
され)、ウィンドゥ104はどのアイコン(ひいてはど
のアプリケーション・オブジェクト)が選択されるのか
を見出すことを担当する。この決定がなされると、ウィ
ンドゥ104は、指示されたアプリケーション・オブジ
ェクトを表現するアイコン表現オブジェクト(icon
  object  presentation)10
2に、メッセージ110を渡す。
【0030】本発明のいくつかの実施例は、ウィンドゥ
104の使用を予想し、他の実施例は、I/O装置10
6からのメッセージ110が、ウィンドゥ104を使用
せずに、アイコン表現オブジェクト102に直接渡され
ることを考慮する。
【0031】メッセージ110を受け取ると、アイコン
表現オブジェクト102は、メッセージをI/O装置と
無関係な共通プロトコルに変換し、この変換されたメッ
セージ108をその対応アプリケーション・オブジェク
ト101に送信する。言い換えれば、アイコン表現オブ
ジェクト102は、メッセージの意味を、それがオブジ
ェクト指向環境に適用され適切に変換されるように、見
分ける。例えば、2ボタン・マウスからの左ボタン・ダ
ブルクリック・メッセージは、特定の環境を“オープン
”することを意味し、このようにしてメッセージは、“
オープン”メッセージに変換され、適切なアプリケーシ
ョン・オブジェクト101に送信される。同様に、3ボ
タン・マウスからの中央ボタン・ダブルクリックもまた
、“オープン”を意味し、これも変換されて、同じ“オ
ープン”メッセージとなる。任意のイベントにおいて、
本発明の実施例と共に用いられるアプリケーション・オ
ブジェクトは、発展して、I/O装置からのメッセージ
110が変換できる、ある一様なプロトコルをすべて受
容するようになる。
【0032】アイコン表現オブジェクト102は、この
ように、メッセージをアプリケーション・オブジェクト
101に変換し、そこではアプリケーション・オブジェ
クト101は、使用中のI/O装置106の種類に関係
を有する必要はない。このようにして、複数のI/O装
置は、メッセージをアプリケーション・オブジェクト1
01に送信するのに使用され、環境と共に用いられるI
/O装置の追加は、アプリケーション・オブジェクト1
01そのものを変更するよりむしろ、アイコン表現オブ
ジェクト102を更新することにより(すなわち、“メ
ソッド”を追加することにより)表明することができる
。(本発明の実施例は、事実上、アイコン表現オブジェ
クト102そのものよりもむしろ、選択されたアプリケ
ーション・オブジェクト101を表現するアイコン表現
オブジェクトのインスタンスに、メッセージ110が渡
されることを意図していることに注目すべきであろう。 しかし、この概要での説明のために、このことは強調さ
れない。)複数のアプリケーション・オブジェクト10
1が、本発明に関する使用を意図する環境で使用される
ときは、本発明は、新しいI/O装置を考慮するために
必要な変化全てが、アイコン表現オブジェクト102に
対して起こり得ることを規定する。このように、アイコ
ン表現オブジェクト102における変化の効果は、オブ
ジェクト指向環境における全アプリケーション・オブジ
ェクト101に対して大域的である。
【0033】マウス・ボタンのクリックのようなメッセ
ージ110の変換に加えて、アイコン表現オブジェクト
102は、オブジェクト間の対話(すなわち、アプリケ
ーション・オブジェクトの1つのアイコン表現が、異な
るアプリケーション・オブジェクトの他のアイコン表現
の上に移動するとき)においても使用される。 b.環境のクラス階層相関関係 図2に示したのは、クラス階層関係からみた本発明の環
境である。図2によると、図1の各部は(I/O装置1
06を除いて)、“オブジェクト”というクラスの下の
クラスとして示され、そこではこれらのクラスの各々は
、1つ以上のインスタンスを生成する。例えば、任意の
時間に視覚的ディスプレイ装置上に現われるアイコンの
セットは、ウィンドゥ104というクラスのウィンドゥ
・インスタンス120の中に含まれる。
【0034】各アイコンは、特定のアプリケーション・
オブジェクト101の表現であり、これはアプリケーシ
ョン・オブジェクト・インスタンス122とも呼ばれる
。このようなアプリケーション・オブジェクト・インス
タンス122の例は、オブジェクト指向環境において用
いられる特定のワードプロセッシング文書である。
【0035】各アプリケーション・オブジェクト・イン
スタンス122は、アイコン表現オブジェクト・インス
タンス124に関連する。本発明の実施例において、ア
イコン表現オブジェクト・インスタンス124は、アプ
リケーション・オブジェクト・インスタンス122を表
現するアイコンが、視覚的ディスプレイ装置上に現れた
ウィンドゥ・インスタンス120の一部として表示され
るのと同時に生成される。各アイコン表現オブジェクト
・インスタンス124は、それに関連するアプリケーシ
ョン・オブジェクト・インスタンス122の名前を有し
、こうして任意の翻訳メッセージ108をどこへ送信す
るべきなのかを知る。
【0036】例えば、視覚的ディスプレイ装置がいくつ
かのアイコンを示すとしよう。その時点のウィンドゥ・
インスタンス120は、この特定のアイコン・セットを
追跡することに責任を負っている。各アイコンはアプリ
ケーション・オブジェクト・インスタンス122を表現
し、各アプリケーション・オブジェクト・インスタンス
122は、異なるアイコン表現オブジェクト・インスタ
ンス124を有している。
【0037】ポインタ・マーカがあるアプリケーション
・オブジェクト・インスタンス122を表現するアイコ
ンを指示し、そのアプリケーション・オブジェクト・イ
ンスタンス122が選択されるとき、ウィンドゥ・イン
スタンス120は、どのアイコンが選択されて、メッセ
ージ110を、I/O装置106から適切なアイコン表
現オブジェクト・インスタンス124へ送るのかを検出
する。メッセージ110はアイコン表現オブジェクト・
インスタンス124によって翻訳され(翻訳メッセージ
108を形成)、そのアイコン表現オブジェクト・イン
スタンス124が属するアプリケーション・オブジェク
ト・インスタンス122へ送られる。もし、メッセージ
110が、例えば、“オープン”(例えばこれは、選択
されたアイコン表現オブジェクト・インスタンス124
を呼出すかもしれない)であったとすると、その結果と
して、他のアイコン・セットが視覚的ディスプレイ装置
へ現れるかもしれない。このようにして、他のウィンド
ゥ・インスタンス120は生成される。
【0038】本発明のいくつかの実施例において、アイ
コン表現オブジェクト102と、ウィンドゥ104のよ
うな環境の様相とは、Digitalk社のthe  
Smalltalk  V/PM  オブジェクト指向
環境のファシリティを利用している。もちろん、Sma
lltalkとは違うオブジェクト指向言語が使用され
得ることは、理解しておくべきである。また、いくつか
の実施例において、アイコン表現オブジェクト102は
、米国のIntel社のIntel  familyo
f  microprocessorsの16ビットま
たはそれ以上の大規模マイクロプロセッサ(80286
や32ビット80386のような)を有するコンピュー
タ・ハードウェアと共に使用されることが企図される。 もちろん、他のブランド,他の種類のプロセッサおよび
マイクロプロセッサが、他の実施例にと共に用いられる
ことは理解しておくべきである。
【0039】一般に、このオブジェクト指向アプローチ
の使用は、本発明が以前よりも効率的にその機能を実行
できるようにする。その理由は、本発明によって企図さ
れるオブジェクト指向環境は、あらゆるデータ型変換が
オブジェクト指向環境によって自動的に行われるように
、オブジェクトの間でメッセージを授受することを可能
にするからである。なぜならこれは、本発明に関する使
用を意図するオブジェクト指向環境は、従来の手続き型
言語に見出されるすべての異なるデータ型に対抗して競
合する“オブジェクト”のデータ型を有するのみだから
である。1つのオブジェクトが、オブジェクト間の対話
に際して何をするのか、についての他からの“問合せ”
に対しメッセージを送るとき、データ変換は必要でなく
、このため多大な効率が得られる。この概念においてオ
ブジェクトは、データ型が互換でないというような問題
に煩わされることなく、互いに“束縛”することができ
、この概念は動的束縛、すなわち“遅延”束縛と呼ばれ
る。遅延束縛は、オブジェクト間の対話中に生じる。
【0040】図3は図2に示したオブジェクト・クラス
のより詳細な説明である。参照されるのはクラス自身だ
けであっても、アプリケーションにおいて、その種々の
タスクを実行するために、これらクラスによって特定の
インスタンスが生成されることは理解しておくべきであ
る。図3を参照すると、上述のように、ウィンドゥ10
4は、I/O装置106によってそこに送られたメッセ
ージを、アイコン表現オブジェクト102に送ることに
責任を負っている。さらに、アイコン表現オブジェクト
102は、対応する個々のアイコンの実際のビット・マ
ップに責任を負っているが、ウィンドゥ104は、アイ
コンの視覚的表現を生成するためにグラフィック・サポ
ートを与えることにも責任を負っている。本発明の1実
施例において、ウィンドゥ104は、視覚的ディスプレ
イ装置においてビットを描画したり操作したりするため
のSmallTalk  V/PMにおけるアプリケー
ション・ウィンドゥ・クラスのサブクラスである。
【0041】また上述のように、アイコン表現オブジェ
クト102は、I/O装置106からのメッセージを装
置と無関係な共通プロトコルに翻訳し、翻訳したメッセ
ージを適切なアプリケーション・オブジェクト101に
送る。さらに、アイコン表現オブジェクト102および
アプリケーション・オブジェクト101は、オブジェク
ト間の対話のイベントの中でどんな動作を採るべきかを
決定するために、この装置と無関係な共通プロトコルを
用いて、互いにメッセージを交換し合うであろう。
【0042】例えば、オブジェクト間の対話が生ずると
き、アイコン表現オブジェクト102(第1のアプリケ
ーション・オブジェクトを表現)は、この対話を如何に
分析する(resolve)かに係わっている第2のア
プリケーション・オブジェクトに関する“問合せ”を行
う。この第2のアプリケーション・オブジェクトは、ア
イコン表現オブジェクト102の問合せに対する“答え
”を含み、応答する。この応答はさらに、I/O装置と
無関係な共通プロトコルで、第1および第2のアプリケ
ーション・オブジェクトに送られる。 c.アイコン表現オブジェクト アイコン表現オブジェクト102そのものは、ここでよ
り詳細に説明する。図4はアイコン表現オブジェクト1
02の上位の流れ図である。図4を見ると、ブロック3
02に示したように、I/O装置106からメッセージ
が受け取られる。このメッセージはさらに、ブロック3
04に示したように、I/O装置と無関係なプロトコル
に翻訳される。アイコン表現オブジェクト102はさら
に、ブロック306に示したように、この翻訳されたメ
ッセージを、対応するアプリケーション・オブジェクト
に送る。
【0043】図5に示したのは、アイコン表現オブジェ
クト102の一般構造である。図5を見ると、アイコン
表現オブジェクト102は一連の同心シェルとして視覚
化することができる。最外殻シェル402は、I/O装
置106から送られてきたI/Oメッセージを表現して
いる。次のシェルは(メソッド・シェル404と呼ぶ)
、アイコン表現オブジェクト102によって使用される
メソッドを表現している。アイコン表現オブジェクト1
02において使用される当該メソッドは、I/O装置1
06によって送られてきたI/Oメッセージを翻訳する
のに必要なメソッドを有している。アイコン表現オブジ
ェクト102の最も内側のシェルは、データ・シェル4
06であり、アイコン表現オブジェクト102のメソッ
ド・シェル404のメソッドによって使用される。 データ・シェルにおけるデータは、オブジェクトおよび
対応アイコンもしくはそのいずれか一方の状態を示す様
々なフラグおよびメッセージ(例えば、フラグはアイコ
ンが移動処理の最中か否かを表現するかもしれない)を
有する変数を有している。
【0044】図6はアイコン表現オブジェクト102の
一実施例に使用されたメソッドの例であり、具体的には
マウスのようなポインタ装置の使用に関連している。図
6によって示される実施例は、アイコン表現オブジェク
ト・インスタンス124を意図しているが、本発明の一
実施例におけるアイコン表現オブジェクト・インスタン
ス124の間の相違は、所有者はだれか(すなわち、ど
のアプリケーション・オブジェクトに対応しているのか
、どのビット・マップを使用しているのか)、変数にど
んな特定のデータ値が伴うかということのみである。 各アイコン表現オブジェクト・インスタンス124のメ
ソッドは、それ以外は同じである。
【0045】図6を参照して一例を上げると、メソッド
・シェル404の一部として設計された504(メソッ
ド504と呼ぶ)およびメソッド510は、I/O装置
106からきた、(2ボタン・マウスの)ボタン1また
は(3ボタン・マウスの)ボタン3がダブル・クリック
されたというメッセージの受け取りによって、このメッ
セージが、アプリケーション・オブジェクト・インスタ
ンス122は呼び出される(オープンされる)べきであ
ることを示すメッセージに翻訳されることを示している
。このように、メソッド504およびメソッド510は
、I/O装置106のダブル・クリック・メッセージを
、翻訳メッセージに翻訳し、この翻訳メッセージは、ア
プリケーション・オブジェクト・インスタンス122が
オープンされたことを示す、装置と無関係な共通プロト
コルを有している。この翻訳メッセージはさらに、対応
するアプリケーション・オブジェクト・インスタンス1
22に送られる。
【0046】よって上記の例は、翻訳メッセージが、異
なるI/O装置から受け取った各メッセージに対し、異
なるメソッドおよびデータを使用して生成されることを
示している。しかし理解されたいのは、本発明の実施例
は、上記の例のメソッド504とメソッド510が結合
されて、同じデータを使用する単一のメソッドになれる
ことを示すということである。
【0047】この例によると、2ボタン・マウスのボタ
ン1、または3ボタン・マウスのボタン3の使用は、ア
プリケーション・オブジェクト・インスタンス122に
関する限りは、同一の結果を生ずる。これは、本発明が
I/O装置に無関係であることを示す。言い換えると、
もし本発明が、2ボタン・マウスのボタン1ダブル・ク
リック・メッセージ、または3ボタン・マウスのボタン
3ダブル・クリック・メッセージを受け取るならば、適
切なアプリケーション・オブジェクト・インスタンス1
22に送られる翻訳メッセージは、どちらのタイプのマ
ウスを用いても同じである。
【0048】上に説明した例は単なる例であって、本発
明の企図するところは、種々のメッセージを種々のI/
O装置から翻訳することである。さらに、これらのメッ
セージは種々の“翻訳”メッセージに翻訳することがで
きる。
【0049】また、図6は本発明によって意図される実
施例を示すが、そこではI/O装置106からの所定の
メッセージが、翻訳されずにアプリケーション・オブジ
ェクト・インスタンス122に送られる場合や、アプリ
ケーション・オブジェクトに送られるメッセージ群が、
I/O装置106からのメッセージによって起動される
動作の間接的な結果となる場合が考慮されている。前者
の例は、1つのアイコンが他のアイコン上に移動する場
合である。この例においては、I/O装置106のボタ
ン2押下メッセージが受け取られ、メソッド506によ
って翻訳される。  この例において、メソッド506
は、そのメソッドがアイコンをドラッギング(すなわち
移動)のために選択できるということを示している。こ
うして、ボタン2押下メッセージを受けると、ポインタ
・マーカに指示されたどんなアイコンも、I/O装置1
06の移動と共にドラッギングされる。これはメソッド
508によって示される。このように、そのメソッドは
I/O装置106の移動に基づく選択されたアイコンの
移動を含む。本発明の一実施例において、メソッド50
6およびメソッド508の双方によって示されるメソッ
ドは、どんな翻訳メッセージも対応するアプリケーショ
ン・オブジェクト・インスタンス122に送られないこ
とを示す。なぜなら、アイコンのポジションだけが、任
意のアプリケーション・オブジェクト・インスタンス1
22に対抗して、それまで影響を受けてしまうからであ
る。言い換えれば、適切なアプリケーション・オブジェ
クトの特定のデータだけが影響を受けるのである。
【0050】I/O装置106のボタン2解放メッセー
ジは、ドラッギング中のアイコンが、現在、視覚的ディ
スプレイ装置上のどこにあろうと、メソッド502が示
すように、そのアイコンを落とす。このように、メソッ
ド502のメソッドは、アイコン落下を可能にするメソ
ッドを含んでいる。さらにもしアイコンが他のアイコン
の上に落下するなら、メソッド502は、その次にオブ
ジェクト間の対話の結果の分析を開始する。この分析の
開始は、メソッド502のメソッドの一部であり、上述
の“後者の場合”の一例である。そこではアプリケーシ
ョン・オブジェクトに送られるメッセージは、I/O装
置106からのメッセージによって起動した動作の集合
の間接結果である。
【0051】本発明の実施例において、装置と無関係な
共通プロトコルは、共通ユーザ・アクセス・ガイドライ
ン(以下の文献によって説明される。“System 
 Application  Architectur
e;Common  User  Access:Ad
vanced  Interface  Design
Guide,”1989年6月、出版番号SC26−4
582−0、発行者International  B
usiness  Machines,ArmonkN
Y)に準拠することを意図して本明細書に引用されてい
る。
【0052】オブジェクト間の対話を分析する方法は、
図7の流れ図によって示される。図7を見ると、他のア
イコン(アイコンB)上に落とされたアイコン(例えば
アイコンA)によって、対応するアプリケーション・オ
ブジェクト・インスタンスAは、ブロック602に示さ
れたように、アプリケーション・オブジェクト・インス
タンスBに対話すると仮定されている。上述のように、
アプリケーション・オブジェクト・インスタンスAおよ
びBは、対応するアイコン表現オブジェクト・インスタ
ンスAおよびBを生成する。
【0053】アプリケーション・オブジェクト・インス
タンスAおよびBの対話時に、アイコン表現オブジェク
ト・インスタンスAは、(メッセージの形で)アイコン
表現オブジェクト・インスタンスBに、どのアプリケー
ション・オブジェクト・インスタンスにアイコン表現オ
ブジェクト・インスタンスBが属するかを、ブロック6
04に示したように、“問合せる”。この例では、アイ
コン表現オブジェクト・インスタンスBは、それがアプ
リケーション・オブジェクト・インスタンスBに属する
と答える。
【0054】ブロック606に示したように、このよう
な所有権の決定時に、アイコン表現オブジェクト・イン
スタンスAは、アプリケーション・オブジェクト・イン
スタンスBに、オブジェクト間の対話の結果がどうある
べきかを“問合せる”。このように、本発明の実施例で
は、アイコン表現オブジェクト102のインスタンスは
、アイコン表現オブジェクト102の他のインスタンス
に、“だれが所有者であるか”を尋ね、さらにそのアイ
コン表現オブジェクトの所有者に、“もしオブジェクト
(またはその表現)があなたの上に’落とされた’とし
たらどうするか”を尋ねることができる必要がある。
【0055】ブロック608に示したように、アイコン
表現オブジェクト・インスタンスAから質問を受けると
、アプリケーション・オブジェクト・インスタンスBは
、I/O装置と無関係な共通プロトコルでオブジェクト
間の対話の結果(翻訳メッセージ608の形式をとる)
を判断する。本発明の一実施例では、アプリケーション
・オブジェクト・インスタンスBは、任意のオブジェク
トが“落とされた”時、どう行動するかを決定できるこ
とが、考慮されている。例えば、アプリケーション・オ
ブジェクト・インスタンスAがワードプロセッシング文
書で、アプリケーション・オブジェクト・インスタンス
Bがワードプロセッシング・プログラムであるとすると
、アイコンAがアイコンB上に“落とされた”時、アイ
コン表現オブジェクト・インスタンスAは、アプリケー
ション・オブジェクトBに“ワードプロセッシング文書
があなたに落とされたらどうする”と“問合せる”。こ
の場合、答えは“私は自分自身を呼出し、ワードプロセ
ッシング文書中を読む”であろう。
【0056】しかしもし、ワードプロセッシング・プロ
グラムを表現するアイコンが、“捨てる”を示すアイコ
ン上に落とされるならば、質問は“ワードプロセッシン
グ・オブジェクトがあなたに落とされたらどうするか”
である。この対話は効果的なので、“捨てる”(アプリ
ケーション・オブジェクト・インスタンスB)は、捨て
る動作をどのように行うかを知る必要がある。もしそれ
がある種のイベントにどう反応するかを知らないなら、
デフォルトの答えが返される、すなわち“どうしてよい
かわからない”という答えである。例えば、プリンタを
表現するアイコンが、“捨てる”を表現するアイコン上
に落とされたときに、こういうことが起こる。本発明の
実施例の意図は、どんなイベントにも常に答えが返され
るということである。
【0057】ブロック610に示したように、アプリケ
ーション・オブジェクト・インスタンスBによって、ど
んな結果が与えられようと、翻訳結果がアイコン表現オ
ブジェクト・インスタンスAに送られる。アイコン表現
オブジェクト・インスタンスAはさらに、そのアプリケ
ーション・オブジェクトに(アプリケーション・オブジ
ェクト・インスタンスAに)、翻訳結果によって特定さ
れた動作を実行できるかどうかを尋ねる。これはブロッ
ク612によって示される。ブロック614に示したよ
うに、もしアプリケーション・オブジェクト・インスタ
ンスAが動作を実行できるなら、それは実行される。
【0058】ここに意図されるアイコン表現オブジェク
ト102は、ソース・コードおよびマシン・コードが導
出可能な次のリストから導かれる。コメントは括弧内に
示す。本発明の少なくとも一実施例において、このリス
トから導出可能なソース・コードは、SmallTal
k  V/PM言語に含まれる。
【0059】インスタンス変数 cursor  [カレント・カーソル・ビットマップ
]dragging  [インスタンスがドラッグされ
るとき記述される状態変数] dropMessage  [インスタンスが落とされ
るその時にアプリケーション・オブジェクト(repO
bject)に送られるメッセージ] graphPane  [インスタンスを引き込むべき
グラフィック画面]icon  [インスタンスのカラ
ー・ビットマップ] label  [アイコン・ビットマップに続いて書き
込むべきストリング] location  [グラフィック画面においてイン
スタンスを引っ張る べき点(アイコンの左下隅を参照する)]newGra
shPane  [インスタンスが落とされたその時イ
ンスタンス・グラフィック画面となるグラフィック画面
] newLocation  [新しいグラフィック画面
において、インスタンスが落とされたその時、インスタ
ンスがアイコンを引っ張る点] repObject  [インスタンスによって表現さ
れるアプリケーション・オブジェクト] selected  [インスタンスがその後の行動を
選択するか否かを記述する状態変数] クラス・メソッド new  [インスタンス変数を画面で初期化し、新し
いインスタンスを生成する] インスタンス・メソッド arrowLeft [セレクション・ボックスを左に移動する]arrow
Right [セレクション・ボックスを右に移動する]b1dou
ble [アイコンが“ボタン1ダブル・クリック”イベントを
受け取った時; “オープン”を意味するように翻訳する;このインスタ
ンスにセレクション・ボックスを移動する; ファイル・メニューをイネーブルする;“オープン”メ
ッセージを、このインスタンスによって表現されるアプ
リケーション・オブジェクトに送る]b1down [アイコンが“ボタン1押下”イベントを受け取った時
; セレクション状態を反転させる(セレクトされていれば
非セレクトし、そのまた逆もある)] b2down [アイコンが“ボタン2押下”イベントを受け取った時
; ドラッグ・シーケンスを開始するように翻訳する;シス
テム・カーソルをアイコン・ビットマップに変更する; ドラッギング状態と状態変数をセットする;ウィンドゥ
・フォーカスをセットする]b2up [アイコンが“ボタン2解放”イベントを受け取った時
; ドラッギング状態を変更する; カーソルを通常のカーソルに変更する;ウィンドゥ・フ
ォーカスを解放する; 落とされたオブジェクトを次のように配置する;セルフ
でないかまたは他のアイコンの付近に落とされなかった
ならば; ウィンドゥに落とし; それ以外は; 落ちた付近にあるアイコンの所有者を獲得し;落ちたア
イコンをその付近のアイコンに送る]display:
  a  GraphPane[グラフィック画面(デ
ィスプレイ・ウィンドゥ)にこのインスタンスのアイコ
ンを与えられた表示をする]droppedNear:
  nearObject[アイコンがnearObj
ectの付近にドロップを受け取った時; 適切なdropMessageを自己に送る(言い換え
れば、nearObjectに落下メッセージを実行す
る)] initialize:  anObject[インス
タンスの状態を次のようにセットする;ドラッグは偽; 選択されたものは偽; このインスタンスによって表現されるアプリケーション
・オブジェクトにポインタをセットする;nullラベ
ルを初期化する] move [アイコンがマウス・ドラッグ・イベントを受け取った
時; どんなオブジェクト・アイコンがその上にドラッギング
されるかをチェックする; 可能なドロップの結果とそれが有効か否か判断する;も
し有効でないならカーソルを“イリーガル”シンボルに
変更する; それ以外はカーソルをオブジェクトのアイコン・ビット
マップに変更する] near [アイコンがマウス位置の付近にあるか否かを指示する
論理式に戻る] overDesktopWindow [包含ウィンドゥの上に来れば真を返し、それ以外は偽
を返す] owner [ポインタを表現されたアプリケーション・オブジェク
トに戻す] validDrop [インスタンスが落とされることが可能ならば真を返し
(グラフィック画面が“付近の”アイコンを獲得したか
をチェックし、付近のアイコンの所有者にドロップに対
して如何に応答するかを尋ねなければならない;さらに
、その所有者アプリケーション・オブジェクトに、それ
が所望の動作を実行できるかどうかを尋ねなければなら
ない) 有効ドロップでない時は偽を返す] このリストは、イベントの発生時に呼び出される様々な
メソッドを有している。このリストは2ボタン・マウス
の使用を意図しているが、本発明は複数のI/O装置の
使用を意図している。
【0060】本発明は上記の実施例に限定されるもので
はなく、上に提供した例は単に図示することが目的だと
いうことを理解されたい。
【図面の簡単な説明】
【図1】本発明実施例の環境の上位レベルの流れ図であ
る。
【図2】本発明実施例の環境の上位レベルの階層図であ
る。
【図3】本発明実施例の環境の中位レベルの階層図であ
る。
【図4】本発明実施例の流れ図である。
【図5】本発明実施例の上位レベル構造図である。
【図6】本発明実施例によって意図される特定のインス
タンスの例を示す図である。
【図7】本発明実施例のオブジェクト間の対話を示す流
れ図である。
【符号の説明】
101  アプリケーション・オブジェクト102  
アイコン表現オブジェクト 104  ウィンドゥ 106  I/O装置 112  オブジェクト 120  ウィンドゥ・インスタンス 122  アプリケーション・オブジェクト・インスタ
ンス

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】オブジェクト指向インタフェース標準を与
    えるシステムにおいて、とるべき動作を指示するI/O
    装置からメッセージを受け取る第1の手段と、前記メッ
    セージを生成したI/O装置の種類に基づいて、前記メ
    ッセージの意味を識別する第2の手段と、オブジェクト
    間の対話が前記メッセージの結果として生ずるかどうか
    を判断し、結果メッセージを形成するために動的束縛を
    用いる前記オブジェクト間の対話を分析する第3の手段
    と、前記メッセージまたは前記結果メッセージを、I/
    O装置と無関係な共通プロトコルに翻訳し、翻訳メッセ
    ージを形成する第4の手段と、前記翻訳メッセージをア
    プリケーション・オブジェクトに送る第5の手段と、を
    備えることを特徴とする、オブジェクト指向インタフェ
    ース標準を与えるシステム。
  2. 【請求項2】前記翻訳メッセージは、異なるI/O装置
    から受け取った前記メッセージの各々に対して異なるメ
    ソッドおよびデータを用いて生成されることを特徴とす
    る、請求項1記載のオブジェクト指向インタフェース標
    準を与えるシステム。
  3. 【請求項3】前記翻訳メッセージは共通ユーザ・アクセ
    ス・プロトコルを用いて生成されることを特徴とする、
    請求項1記載のオブジェクト指向インタフェース標準を
    与えるシステム。
  4. 【請求項4】オブジェクト指向インタフェース標準を与
    える方法において、(a)I/O装置からのメッセージ
    の意味を、前記メッセージを形成したI/O装置の種類
    に基づいて識別するステップと、(b)オブジェクト間
    の対話が、前記メッセージの結果として生じるかどうか
    を判断し、前記オブジェクト間の対話を、結果メッセー
    ジを形成するために動的束縛を用いて分析するステップ
    と、(c)前記メッセージまたは前記結果メッセージを
    、I/O装置と無関係な共通プロトコルに翻訳して、翻
    訳メッセージを形成するステップと、(d)前記翻訳メ
    ッセージをアプリケーション・オブジェクトに送るステ
    ップと、を含むことを特徴とする、オブジェクト指向イ
    ンタフェース標準を与える方法。
  5. 【請求項5】前記ステップ(c)は、異なるI/O装置
    から受け取った前記メッセージの各々に対して異なるメ
    ソッドおよびデータを用いて、前記メッセージを翻訳す
    るステップを含むことを特徴とする、請求項4記載のオ
    ブジェクト指向インタフェース標準を与える方法。
  6. 【請求項6】前記ステップ(c)は、共通ユーザ・アク
    セス・プロトコルを用いて、前記翻訳メッセージを生成
    するステップを含むことを特徴とする、請求項4記載の
    オブジェクト指向インタフェース標準を与える方法。
  7. 【請求項7】前記ステップ(a)〜(d)は、32ビッ
    トのマイクロプロセッサを用いるコンピュータを利用す
    るステップを含むことを特徴とする、請求項4記載のオ
    ブジェクト指向インタフェース標準を与える方法。
JP3344109A 1990-12-31 1991-12-03 オブジェクト指向インタフェース標準を与えるシステムおよび方法 Expired - Fee Related JPH0756643B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/636,275 US5276816A (en) 1990-12-31 1990-12-31 Icon object interface system and method
US636275 1990-12-31

Publications (2)

Publication Number Publication Date
JPH04303240A true JPH04303240A (ja) 1992-10-27
JPH0756643B2 JPH0756643B2 (ja) 1995-06-14

Family

ID=24551202

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3344109A Expired - Fee Related JPH0756643B2 (ja) 1990-12-31 1991-12-03 オブジェクト指向インタフェース標準を与えるシステムおよび方法

Country Status (4)

Country Link
US (1) US5276816A (ja)
EP (1) EP0494032B1 (ja)
JP (1) JPH0756643B2 (ja)
DE (1) DE69129328T2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06202837A (ja) * 1992-11-05 1994-07-22 Internatl Business Mach Corp <Ibm> オブジェクト指向プログラミング・システムにおけるウィンドウ環境の管理方法及び装置
JPH0764791A (ja) * 1993-08-04 1995-03-10 Internatl Business Mach Corp <Ibm> オブジェクト指向コンピュータ・システムにおけるインタフェース方法及び装置
JP2008146664A (ja) * 1992-12-23 2008-06-26 Object Technology Licensing Corp メニュー項目表示方法および装置

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5479614A (en) * 1989-09-14 1995-12-26 Fujitsu Limited Object sensor processing method and processor
US5301326A (en) * 1991-09-24 1994-04-05 Microsoft Corporation Method and system for controlling the execution of an application program
US5826017A (en) * 1992-02-10 1998-10-20 Lucent Technologies Apparatus and method for communicating data between elements of a distributed system using a general protocol
US5727174A (en) * 1992-03-23 1998-03-10 International Business Machines Corporation Graphical end-user interface for intelligent assistants
US5754174A (en) * 1992-08-27 1998-05-19 Starfish Software, Inc. User interface with individually configurable panel interfaces for use in a computer system
CA2101864A1 (en) * 1992-08-27 1994-02-28 Claudia Carpenter Customizable program control interface for a computer system
US5790120A (en) * 1992-08-27 1998-08-04 Starfish Software, Inc. Individually configurable panel user interface with selective launching, sticky windows, hot keys, start up options and configurable background
US5530864A (en) * 1992-12-23 1996-06-25 Taligent Command object system for an object-oriented software platform
JPH08505721A (ja) 1992-12-23 1996-06-18 タリジェント インコーポレイテッド オブジェクト指向フレームワーク・システム
CA2159467C (en) * 1993-03-31 2002-07-30 Erik R. Neumann Costume objects
US5530859A (en) * 1993-05-10 1996-06-25 Taligent, Inc. System for synchronizing a midi presentation with presentations generated by other multimedia streams by means of clock objects
AU5990194A (en) * 1993-05-10 1994-12-12 Taligent, Inc. Audio synchronization system
EP0714531B1 (en) 1993-09-13 1997-06-18 Taligent, Inc. Object-oriented video system
US5388264A (en) * 1993-09-13 1995-02-07 Taligent, Inc. Object oriented framework system for routing, editing, and synchronizing MIDI multimedia information using graphically represented connection object
CA2153968A1 (en) 1993-09-13 1995-03-23 Steven H. Milne Multimedia data routing system
US5632033A (en) * 1994-01-18 1997-05-20 Sybase, Inc. Variable resolution method and arrangement
US5619636A (en) * 1994-02-17 1997-04-08 Autodesk, Inc. Multimedia publishing system
US6404433B1 (en) 1994-05-16 2002-06-11 Apple Computer, Inc. Data-driven layout engine
US5912666A (en) * 1994-08-23 1999-06-15 Object Technology Licensing Corp. Object-oriented global cursor tool
US6195095B1 (en) 1994-09-20 2001-02-27 International Business Machines Corporation Method and apparatus for displaying attributes of a computer work station on a graphical user interface
SE515179C2 (sv) 1994-10-24 2001-06-25 Ericsson Telefon Ab L M Sätt för internkommunikaton i telekommunikationssystem
EP0803093B1 (en) * 1994-12-07 2001-09-12 NeXT SOFTWARE, INC. Method for associating data bearing objects with user interface objects
US5706454A (en) * 1995-04-26 1998-01-06 International Business Machines Corporation Changeable live icon with visual state indicator option
US5732283A (en) * 1995-10-24 1998-03-24 International Business Machines Corporation System and method of providing universal support for multiple pointing devices
US5898422A (en) * 1996-05-31 1999-04-27 International Business Machines Corporation Method and system for recognition of pointers
US7003482B1 (en) 1999-12-10 2006-02-21 Computer Sciences Corporation Middleware for business transactions
GB2362236A (en) * 2000-05-12 2001-11-14 Int Computers Ltd Method of providing self-service banking
US6820268B2 (en) 2000-10-30 2004-11-16 Next Computer, Inc. Method for associating data bearing objects with user interface objects
CN1205541C (zh) * 2000-11-27 2005-06-08 诺基亚公司 提供媒介功能的方法与系统
US7631299B2 (en) * 2002-01-24 2009-12-08 Computer Sciences Corporation System for modifying software using reusable software components
US8010391B2 (en) * 2007-06-29 2011-08-30 Computer Sciences Corporation Claims processing hierarchy for insured
US8000986B2 (en) * 2007-06-04 2011-08-16 Computer Sciences Corporation Claims processing hierarchy for designee
US8010390B2 (en) 2007-06-04 2011-08-30 Computer Sciences Corporation Claims processing of information requirements
JP4433049B2 (ja) * 2007-12-28 2010-03-17 ブラザー工業株式会社 情報処理装置、情報処理方法及びプログラム。
US20110029904A1 (en) * 2009-07-30 2011-02-03 Adam Miles Smith Behavior and Appearance of Touch-Optimized User Interface Elements for Controlling Computer Function
CN107885995A (zh) 2017-10-09 2018-04-06 阿里巴巴集团控股有限公司 小程序的安全扫描方法、装置以及电子设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4656603A (en) * 1984-03-01 1987-04-07 The Cadware Group, Ltd. Schematic diagram generating system using library of general purpose interactively selectable graphic primitives to create special applications icons
US4791556A (en) * 1984-08-29 1988-12-13 Vilkaitis John V Method for operating a computer which searches for operational symbols and executes functions corresponding to the operational symbols in response to user inputted signal
US5083262A (en) * 1986-04-28 1992-01-21 International Business Machines Corporation Language bindings for graphics functions to enable one application program to be used in different processing environments
US4899136A (en) * 1986-04-28 1990-02-06 Xerox Corporation Data processor having a user interface display with metaphoric objects
US4787032A (en) * 1986-09-08 1988-11-22 Compaq Computer Corporation Priority arbitration circuit for processor access
US4943932A (en) * 1986-11-25 1990-07-24 Cimflex Teknowledge Corporation Architecture for composing computational modules uniformly across diverse developmental frameworks
JPS63254513A (ja) * 1987-04-13 1988-10-21 Toshiba Corp 画面表示方法
US4914567A (en) * 1987-11-02 1990-04-03 Savoir Design system using visual language
US5157384A (en) * 1989-04-28 1992-10-20 International Business Machines Corporation Advanced user interface

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PROC OF THE 23RD ANNUAL HAWAII INT CONF ON SYSTEM SCIENCES=1990 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06202837A (ja) * 1992-11-05 1994-07-22 Internatl Business Mach Corp <Ibm> オブジェクト指向プログラミング・システムにおけるウィンドウ環境の管理方法及び装置
JP2008146664A (ja) * 1992-12-23 2008-06-26 Object Technology Licensing Corp メニュー項目表示方法および装置
JPH0764791A (ja) * 1993-08-04 1995-03-10 Internatl Business Mach Corp <Ibm> オブジェクト指向コンピュータ・システムにおけるインタフェース方法及び装置

Also Published As

Publication number Publication date
EP0494032A3 (en) 1993-02-24
EP0494032A2 (en) 1992-07-08
US5276816A (en) 1994-01-04
DE69129328D1 (de) 1998-06-04
EP0494032B1 (en) 1998-04-29
JPH0756643B2 (ja) 1995-06-14
DE69129328T2 (de) 1998-11-19

Similar Documents

Publication Publication Date Title
JPH04303240A (ja) オブジェクト指向インタフェース標準を与えるシステムおよび方法
US5530864A (en) Command object system for an object-oriented software platform
EP0669017B1 (en) Object oriented application interface
CA2145679C (en) Object oriented framework system
US5551055A (en) System for providing locale dependent user interface for presenting control graphic which has different contents or same contents displayed in a predetermined order
US5517606A (en) Object-oriented menuing system using command objects of an object-oriented operation system
CA2145676C (en) Menu state system
US5638504A (en) System and method of processing documents with document proxies
EP0672282B1 (en) Concurrent framework system
EP0667972B1 (en) Collaborative work system
US5850548A (en) System and methods for visual programming based on a high-level hierarchical data flow model
US6097391A (en) Method and apparatus for graphically manipulating objects
CA2135518C (en) Load system
US5479601A (en) Method and apparatus for processing commands generated by user interface controls in an atomic manner
US5912666A (en) Object-oriented global cursor tool
JP2006092570A (ja) プログラムを構成するためのシステム及び方法
US5790132A (en) Image rendering system with extensible mechanism for providing visual user feedback when an image graphic is selected
EP0664020B1 (en) Scrolling system

Legal Events

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