首页 / 专利库 / 软件 / 所见即所得 / Graphical user interface provided with function for user-controlling object by wysiwyg type editor

Graphical user interface provided with function for user-controlling object by wysiwyg type editor

阅读:760发布:2021-01-03

专利汇可以提供Graphical user interface provided with function for user-controlling object by wysiwyg type editor专利检索,专利查询,专利分析的服务。并且PURPOSE: To attain the user-change of a graphical user interface(GUI). CONSTITUTION: A graphical user interface(GUI) panel file corresponding to a GUI panel having at least one object (for example, an icon or a control box or the like) is defined, generated, or edited. A GUI editor houses a GUI source code control file enabling user change. The control file houses a tag file for GUI definition. The tag file describes a GUI panel object. This method includes a step for opening the control file, and a step for adding edition to an object tag file in the control file. A new attribute tag file can be added to the object tag file, or edition can be added to the present attribute tag file in the object tag file.,下面是Graphical user interface provided with function for user-controlling object by wysiwyg type editor专利的具体信息内容。

【特許請求の範囲】
  • 【請求項1】 少なくとも1つのオブジェクトを有するグラフィカル・ユーザ・インターフェース・パネルに対応したグラフィカル・ユーザ・インターフェース・パネル・ファイルを、定義すること、生成すること、または編集することのうちの、1つないし2つ以上を行なう方法において、 a) 前記グラフィカル・ユーザ・インターフェース・
    パネルのオブジェクトを記述しているグラフィカル・ユーザ・インターフェース定義用タグファイルを収容しているユーザ変更可能なグラフィカル・ユーザ・インターフェース・ソース・コード制御ファイルをオープンするステップと、 b) 前記グラフィカル・ユーザ・インターフェース・
    ソース・コード制御ファイルの中の1つのオブジェクト・タグ・ファイルに編集を加えるステップと、 c) その編集後オブジェクト・タグ・ファイルをグラフィカル・ユーザ・インターフェース・パネル・ファイルへエンターするステップと、 d) 前記グラフィカル・ユーザ・インターフェース・
    ソース・コード・ファイルをコンパイルして、編集後グラフィカル・ユーザ・インターフェース・オブジェクト・コード・ファイルを形成するステップと、 e) コンパイルして得られた前記編集後グラフィカル・ユーザ・インターフェース・オブジェクト・コード・
    ファイルをパネル・バイナリ中間ファイルに格納するステップと、 を含んでいることを特徴とする方法。
  • 【請求項2】 オブジェクト・タグ・ファイルに新たな属性タグ・ファイルを追加するステップを含んでいること、を特徴とする請求項1記載の方法。
  • 【請求項3】 オブジェクト・タグ・ファイルの既存の属性タグ・ファイルに編集を加えるステップを含んでいること、を特徴とする請求項1記載の方法。
  • 说明书全文

    【発明の詳細な説明】

    【0001】

    【産業上の利用分野】本発明は、グラフィカル・ユーザ・インターフェースを定義し、生成し、編集するための、エンドユーザ用ツールに関するものである。 より詳しくは、本発明は、ユーザ・インターフェース・エディタが制御ファイルから得ることのできるグラフィカル・
    ユーザ・インターフェースのオブジェクトの、エンドユーザ変更に関するものである。 ユーザ・インターフェース・エディタが得ることのできるそれら個々のオブジェクトは、エンドユーザ変更可能にしてあり、即ち、エンドユーザが、複数のオブジェクトの間の順序を変更することができ、オブジェクトのテキストを変更することができ、オブジェクトを削除することができ、そして、ユーザ・インターフェースに変更を加えようとする際に呼出されるコードを変更することができるようにしてある。

    【0002】ユーザ・インターフェース・エディター(以下、UIE)の実行を開始させると、このUIE
    が、ユーザ変更可能な制御ファイルからの読込みを行なう。 この制御ファイルは、各パネル・タイプ(例えば、
    ウィンドウやメッセージ・ボックス)に対応したタグを収容しており、それらタグは、UIEのユーザがそれらタグに対して処理を加え得るようにしてある。 この制御ファイルは更に、そのパネル・タイプの中に配置することのできる各オブジェクト(例えば、チェックボックスやプッシュボタン)に対応したタグを収容している。

    【0003】本発明では、UIEに供給された制御ファイルのパラメータを変更することをとおして、ないしはその制御ファイルに新たなタグを追加することをとおして、ユーザが、そのUIEの呼び出しによって供給されるパネル及びオブジェクトの内容、外観、及び挙動に対する、完全な制御を把握できるようにしている。

    【0004】

    【従来の技術】ユーザ・インターフェースは、コンピュータの各部分のうちで最も良く目に見える部分である。
    また、ユーザ・インターフェースは、アプリケーション・ソフトウェアとエンドユーザとをつなぐリンクである。 歴史的には、ユーザ・インターフェースといえば、
    かつては、英数字を入する方式のユーザ・インターフェースのことであった。

    【0005】これに対して、グラフィカル・ユーザ・インターフェースは、図形オブジェクトを使用するユーザ・インターフェースであり、英数字式ユーザ・インターフェースに取って代わるものとして、ないしは、英数字式ユーザ・インターフェースを補完するものとして用いられている。 そして、それによって、グラフィカル・ユーザ・インターフェースは、エンドユーザや、アプリケーション・プログラマーの生産性を向上させている。

    【0006】グラフィカル・ユーザ・インターフェースでは、図形画像を用いて、現実世界の対象物(オブジェクト)を表わすようにしている。 「従来例」と記入してある図1は、グラフィカル・ユーザ・インターフェースのパネルを示した図である。 この図1において、グラフィカル・ユーザ・インターフェース(1)は、複数の図形画像11、21、31を含んでいる。 これら図形画像11、21、31はアイコンとも呼ばれ、ディスプレイの画面サイズよりも小さい。 そのため、グラフィカル・
    ユーザ・インターフェースのパネル1では、1つの物理ディスプレイ装置の画面(1)上に、テキストの複数のウィンドウ41と、画像11、21、31を同時にディスプレイすることができるようになっている。

    【0007】グラフィカル・ユーザ・インターフェースは、図形を利用した入力(以下、単に「図形入力」という)と、英数字による入力(以下、単に「英数字入力」
    という)との、両方に対応できる能力を備えている。 図形入力の具体的な手段としては、例えば、「ポイント・
    アンド・クリック」デバイスや、マウスや、タッチ・パネルや、「ライト・ペン」等々がある。 また、英数字入力の具体的な手段としては、例えばキーボードによる入力等がある。

    【0008】グラフィカル・ユーザ・インターフェースは、キーボードによる英数字入力と比べて、より直感に即したものであり、また使用法の習得がより容易で、使用法自体もより簡単である。 そして、これらのことによってエンドユーザの生産性を向上させている。

    【0009】

    【発明が解決しようとする課題】グラフィカル・ユーザ・インターフェースは、エンドユーザの間で広く受け容れられており、また、使用法も容易なものであるが、にもかかわらず、幾つかの問題がなお付随している。 最も大きな問題は、グラフィカル・ユーザ・インターフェースは、それをプログラミングする作業が複雑であること、即ち、グラフィカル・ユーザ・インターフェースを定義すること、生成すること、それに編集することが、
    困難だということにある。 実際に、グラフィカル・ユーザ・インターフェースをプログラミングするためには、
    長期に亙る学習によって習得した高度の技量が必要である。

    【0010】従ってエンドユーザが、グラフィカル・ユーザ・インターフェースを定義し、生成し、ないしは編集することができるようにする、グラフィカル・ユーザ・インターフェース・エディターが求められている。 このように、エンドユーザが、グラフィカル・ユーザ・インターフェースを定義し、生成し、ないしは編集することができるようにするためには、ウィズィウィグ(WY
    SIWYG:What-You-See-Is-What-You-Get)式エディター及びテキスト・エディターの一方又は両方を交換可能に利用することのできる能力と、結果として得られた(即ち、編集を加えた、或いは生成した)グラフィカル・ユーザ・インターフェースのパネルを、コンパイルしてセーブしておくことができる能力とが、エンドユーザに与えられていなければならない。 このように、グラフィカル・ユーザ・インターフェースのパネルを定義し、
    生成し、ないしは修正する能力は、従来例においては欠如していた。 その原因は、従来例に係るグラフィカル・
    ユーザ・インターフェース・エディターは、テキスト・
    エディターによって手操作の更新が行なわれてしまうと、ソース・ファイルの完全性を維持することができなかったことにある。

    【0011】本発明の主要な目的の1つは、エンドユーザが、グラフィカル・ユーザ・インターフェースを定義し、生成し、ないしは編集することができるようにした、グラフィカル・ユーザ・インターフェース・エディターを提供することにある。

    【0012】本発明の更なる目的は、ユーザ・フレンドリーなグラフィカル・ユーザ・インターフェース・エディターを提供することにあり、即ち、ウィズィウィグ(WYSIWYG:What-You-See-Is-What-You-Get)式エディター及びテキスト・エディターの一方又は両方を交換可能に利用するようにした、グラフィカル・ユーザ・インターフェース・エディターを提供することにある。

    【0013】本発明の更なる目的は、結果として得られた(即ち、編集を加えた、或いは生成した)グラフィカル・ユーザ・インターフェースのパネルをコンパイルしてセーブしておくことができる能力を、エンドユーザに付与することにある。

    【0014】本発明の更なる目的は、編集後のグラフィカル・ユーザ・インターフェースのパネルに対応した編集後のソース・コードをセーブしておくことのできる能力をエンドユーザに付与することにある。 こうすることによって、エンドユーザの能力が強化され、グラフィカル・ユーザ・インターフェース・ファイルに対して更に変更ないし編集を加えることも、また更には、グラフィカル・ユーザ・インターフェース・ファイルをコピーすることも可能になる。

    【0015】

    【課題を解決するための手段】以上の目的並びにその他の目的は、本発明の方法によって達成する。 本発明は、
    グラフィカル・ユーザ・インターフェースを定義し、生成し、編集するための、エンドユーザ用ツールを提供するものである。

    【0016】本発明の特に好適な実施例においては、ユーザ・インターフェース・エディターが得ることのできる個々のオブジェクトをエンドユーザ変更可能にしてある。 即ち、エンドユーザが、複数のオブジェクトの間の順序を変更することができ、オブジェクトのテキストを変更することができ、オブジェクトを削除することができ、そして、ユーザ・インターフェースに変更を加えようとしたときに呼出されるコードを変更することができるようにしてある。

    【0017】ユーザ・インターフェース・エディター(UIE)が実行を開始すると、このUIEが、ユーザ変更可能な制御ファイルからの読込みを行なう。 この制御ファイルは、各パネル・タイプ(例えば、ウィンドウやメッセージ・ボックス)に対応したタグを収容しており、それらタグは、UIEのユーザがそれらタグに対して処理を加え得るようにしてある。 この制御ファイルは更に、そのパネル・タイプの中に配置することのできる各オブジェクト(例えば、チェックボックスやプッシュボタン)に対応したタグを収容している。

    【0018】また、UIEに供給される制御ファイルのパラメータを変更することをとおして、ないしはその制御ファイルに新たなタグを追加することをとおして、ユーザが、そのUIEの呼出しによって供給されるパネル及びオブジェクトの内容、外観、及び挙動に対する、完全な制御を把握できるようにしている。 その具体例を挙げるならば、あるオブジェクトのテキスト記述を変更するには、そのオブジェクトに対応した「OBJECTタグ」の「TEXTパラメータ」を更新すれば良い。 尚、制御ファイルに新たなタグを追加することも可能にしてあり、既存のタグを削除したり並べ換えたりすることも可能にしてある。

    【0019】UIEアプリケーションの中では、メッセージ方式の技法を用いることによって、ユーザが、オブジェクト取扱いソフトウェア・ルーチンをカストマイズすることができるようにしてある。 その具体例を挙げるならば、ユーザがパネル上のある特定のオブジェクトの属性を変更することを欲しているとの通知をUIEが受け取ったならば、UIEは、そのオブジェクトに対応したパラメータによって指定されているプロシージャーへ宛てて編集メッセージを送出する。 このプロシージャーは、そのメッセージを受け取ったならば、それに応答して、ディスプレイ画面上にダイヤログを表示して、ユーザがその属性に対して変更を加えられるようにする。 もしユーザが、そのダイヤログを変更することを望むか、
    或いは、ダブル・クリック操作をしたときに実行されるアクションを、その他のアクションに変更することを望むのであれば、ユーザは、編集メッセージに対して望みの応答をするプロシージャーを書くようにすれば良い。
    このようにして、基礎となったUIEコードを変更することも、また、再コンパイルすることも必要とせずに、
    その種の変更をインプリメントすることができるようにしているのである。

    【0020】

    【実施例】本発明の方法においては、ユーザ・インターフェース(UI)のパネルを生成及び維持するために、
    パネル定義言語(タグ言語)を含んでいるウィズィウィグ(WYSIWYG)式エディター、ないしはテキスト・エディターを使用するようにしている。

    【0021】 システムの全体像 図2及び図3に示すように、グラフィカル・ユーザ・インターフェース・エディター(GUIE)とユーザ・インターフェース・コンパイラー(UIC)との間に、ソフトウェア・インターフェースが確立されており、これらGUIEとUICとは、プロセス・コールではなく、
    アプリケーション・プログラム・インターフェースによって結合されている。 プロセス・コールに代えてアプリケーション・プログラム・インターフェースを使用することによって、オーバーヘッドを軽減しているのである。

    【0022】エンドユーザは、グラフィカル・ユーザ・
    インターフェース・エディター(GUIE)ないしテキスト・エディターを使用して、コンパイル可能で格納可能なGUIソース・ファイルを生成することができる。
    GUIソース・ファイルは、グラフィカル・ユーザ・インターフェース(GUI)のパネルを定義するタグ言語を収容している。 タグ言語ファイルは、GUIEへの唯一の入力であり、また、GUIEからの唯一の出力である。 このタグ言語ファイルを、GUIEによって生成し、テキスト・エディターで変更を加え、再びGUIE
    の中へ読み込み、そして、ユーザ・インターフェース・
    コンパイラー(UIC)の中でコンパイルすることができるようにしてある。 この種の変更はいずれも、(GU
    IEとUICとの間のソフトウェア・リンクによって)
    保存され、GUIEによって生成されたタグ言語ファイルの中に収容される。 これによって、ソース・ファイルがどのように編集されようと、そのソース・ファイルの完全性が維持される。 このプロセスは、必要に応じて何度でも反復して実行することができるため、ユーザが行なう、パネルを生成したり、パネルに変更を加える作業に、最大限の融通性が与えられことになる。

    【0023】このシステムの構成要素には、ユーザ・インターフェース・エディター(UIE)、パネル定義言語を含んでいる構築時ツール、パネル言語コンパイラー/リンカー、それに、実行時サポート・パッケージが含まれている。 構築時ツールはウィズィウィグ(WYSI
    WIG)式パネル生成用エディターを含んでいる。 このウィズィウィグ式パネル生成用エディターは、アイコンで表示されたパネル・オブジェクトをユーザが直接、操作できるようにすることによって、高速のパネル生成作業を可能にしている。 これによって、アプリケーションの構築者、即ちエンドユーザを、パネルのレイアウト作業において支援することができ、エンドユーザが、パネルのフォーマッティングに関する、こまごまとした作業に手間を取られることなく、パネルのレイアウト作業に集中できるようにすることが可能になっている。

    【0024】パネル定義言語とは、パネル定義を生成する際の方式のことである。 本実施例においては、パネル定義言語は、タグ言語としてある。

    【0025】パネル言語コンパイラー/リンカーは、パネル定義ファイルを対象とした読取りと書込みとを行なうツールであり、それらを行なうことによって、パネル定義ファイルを生成したり、パネル定義ファイルに対してテキスト・エディターを用いて更新を加えた際に、その変更後のパネル定義ファイルを再びウィズィウィグ式ツールの中へ読み込めるようにしている。 このパネル言語コンパイラー/リンカーの機能の仕方は、ウィズィウィグ式パネル生成用エディターとパネル定義言語とを統合し、パネル定義言語ファイルを、パネル・テキストの分解及び分離が可能な中間ファイルの集合へ変換するというものである。 このコンパイル及びリンクの機能は、
    様々なグラフィカル・ユーザ・インターフェースのプラットフォームをサポートできるようにするための、かなめの機能である。 即ち、パネル言語リンカーは、プラットフォーム依存性を持たない中間ファイルのグループを結合して、それらを、特定プラットフォーム向け実行時パネル定義にするものである。

    【0026】実行時サポートの方式としては、UIディスプレイ・ノードの各々に1つずつUIサーバーのコピーをロードするようにした、クライアント・サーバー・
    アーキテクチャを採用している。 また、複数のアプリケーション・プログラムが夫々のUIサポートのサービス要求を、局所的UIサーバー、即ち遠隔UIサーバーから、単一の高機能のアプリケーション・プログラム・インターフェース(API)を介して、同時に発することができるようにしてある。 UI動作パラメータ(例えば、宛先UIサーバーのサーバー名や、パネル・ライブラリーのライブラリー名等)は、そのUIクライアント・アプリケーションを装備しているノードと同じノードに装備したUI制御ブロックの中に収容してある。 このようにUI制御ブロックを装備してあるため、そのクライアント・アプリケーションに変更を加えることなく、
    クライアント・アプリケーションのUIパラメータに対して実行時変更を加えることができるようになっている。

    【0027】UI実行時オブジェクト集合には、パネル(ウィンドウ)とメッセージ・ボックスとが含まれており、更に、例えばリスト・ボックスやエントリー・ボックス等の、パネルの中に配置することのできるコントロール類も全て含まれている。 それらオブジェクトの各々は、1つないし複数の属性(例えば、ディスプレイ特性、テキスト、エントリー特性、それに、ユーザ・データ等)によって特徴付けられている。

    【0028】パネル・アクションUI要求は、クライアント・アプリケーションが、あらゆるオブジェクトを対象としたデータ交換アクション(例えば、データの設定、照会、更新等のアクション)や、パネル上に存在しているオブジェクトを対象とした即時制御アクション(例えば、ロック/アンロック、隠蔽化/顕在化等のアクション)を実行できるようにするために、用意してあるものである。

    【0029】ユーザ・インターフェース・アプリケーション・プログラム・インターフェース(UI−API)
    は、連結グループ機能である、連結/切断の機能を備えている。 この機能を備えるようにしたのは、クライアント・アプリケーションが2つ以上のUIサーバーのディスプレイ・サービスを同時に利用できるようにするために、クライアント・アプリケーションが、先ず最初に、
    宛先UIサーバーとの間に固有のセッションを確立するようにしてあるからである。

    【0030】このUI−APIは更に、ディスプレイ・
    グループ機能である、ゲット・パネル機能、ディスプレイ・パネル機能、パネル・アクション機能、それにディスプレイ・メッセージ・ボックス機能を備えている。 U
    I−APIが、このディスプレイ・グループ機能を備えているために、UIサーバーがパネルをメモリー中にロードすることを、アプリケーションが要求できるようになっており、また更に、アプリケーションが、オブジェクトに対してデータ交換ないし即時制御アクションを実行すること、パネルをディスプレイさせること、それに、メッセージ・サービスをディスプレイさせることを行なえるようになっている。

    【0031】このUI−APIは更に、ユーザ出口ルーチン・グループ機能を備えている。 この機能は、ユーザ出口ルーチンを設定し、また、ユーザ出口ルーチン事象に処理を加えることのできる機能である。 ユーザ出口ルーチンは、ユーザがパネル・アクションを開始したときに、そのことがアプリケーション・プログラムに即座に通知されるようにするものである。 その要求(ユーザのそのパネル・アクションによる要求)によって、ユーザ出口ルーチンが、パネルないしコントロール・オブジェクトのレベルで設定される。 こうしてユーザ出口ルーチンを利用することにより、そのアプリケーションのうちのUI部分を、モジュラー式(即ち、ユニット式)に構築することができ、それによってコードの再使用可能性を可及的に増大させることができる。

    【0032】本発明の方法においては、タグ言語のソース・コード・ファイルを用いてグラフィカル・ユーザ・
    インターフェース(GUI)のパネルを定義するようにしている。 図4及び図5は、ウィズィウィグ式エディターが生成するソース・コードのタグ言語ファイル(即ち、.PDFファイル)の一例を示したものである。 これらの図において、コロン(:)で始まってピリオド(.)
    で終わる各エントリが、夫々1つのタグに相当している。

    【0033】夫々のタグ・ファイル(即ち、.PDFファイル)どうしは、連係リスト(linkedlist )の形で、内部的に互いに連結されている。 連係リストの一例を示すと、例えば次の表Iのようになる。

    【表1】

    【0034】上の表Iを見れば分かるように、先ず、Wi
    ndowdef によって、1つのウィンドウを Panel A(パネルA)として定義しており、そのサイズを50×50、
    そのロケーションを(0、0)としている。 このウィンドウを定義しているタグ・ファイルは、Panel A である。 この連係リストの第2番目のアイテムは、この連係リストのアドレス2に存在している。 このアイテムは、
    チェックボックス(Checkbox)であり、そのサイズを2
    ×7、そのロケーションを(10、10)とし、そしてそのタグ・ファイルを、Option A(オプションA)としている。 この連係リストの第3番目のアイテムは、アドレス3に存在している。 このアイテムもまた、チェックボックス(Checkbox)であり、そのサイズを2×7、そのロケーションを(20、10)とし、そして、Option
    B(オプションB)というテキスト・ファイルによって定義してある。 この連係リストの中の、次のアイテムは
    Ewindowdef である。

    【0035】エンドユーザは、この、タグ言語のソース・コード・ファイルに対して、グラフィカル・ウィズィウィグ・エディター及びテキスト・エディターの一方又は両方を交換可能に使用して、編集を加えることができる。 本発明の方法においては、結果として得られた(即ち、編集を加えた、或いは生成した)GUIパネルを、
    コンパイルしてセーブするようにしており、それによってソース・コードのGUIパネル・ファイルと、オブジェクト・コードのGUIファイルとの両方を得るようにしている。 またこれによって、GUIソース・コード・
    ファイルの完全性を、テキスト・エディターによって手操作の更新が行なわれた後までも、維持できるようにしている。

    【0036】 ユーザ・インターフェース・コンパイラー
    /リンカー ユーザ・インターフェース・コンパイラーは、パネルを定義しているタグファイルをコンパイルすることによって、PBI(パネル・バイナリ中間)ファイルを生成するものである。 その擬似コードの一例を示すと、例えば次のようになる。 コンパイラーは、ファイルからの読取りを行なう。 コンパイラーは、夫々のタグを解析した上で、タグ・メソッドをコールして、オブジェクト・リストを構築させる。 コンパイラーは、構築されたオブジェクト・リストを、PBIファイルに書込む。

    【0037】タグ言語で表わされるパネルを生成し、定義し、また、そのパネルに対して編集を加え、変更を加え、その後にソース・コードのタグ・ファイルをコンパイルしてオブジェクト・コードとし、そして、それらソース・コードとオブジェクト・コードとの両方をセーブするという能力は、GUIEとUICとを、それらの間のソフトウェア・リンクを介して完全に統合することによって、可能となったものである。

    【0038】このようにソフトウェア・リンクを用いているため、タグ言語ファイルがGUIEの中へ読込まれたときには、このソフトウェア・リンクがUICを呼出す。 呼出されたUICは、ソース・タグをバイナリ表示に変換し、その変換したバイナリ表示をファイルに書込む。 続いて、GUIEが、そのバイナリ・ファイルをメモリの中のデータ構造体の中へ読込み、その読込んだ内容を使用して、ユーザが行なうあらゆるパネル更新操作を追跡する。 ユーザが所望の全ての変更を完了したならば、UIEが、そのバイナリ表示のデータ構造体からソース・タグを生成し、その生成したソース・タグをユーザ指定されたファイルの中へ書込む。

    【0039】以上のようにして得られたシステムは、テキストと図形画像とを共にサポートするシステムであって、しかも、使用法の習得が容易で使用法自体も簡単なクライアント・サーバー式のグラフィカル・ユーザ・インターフェース機能を提供するシステムとなっている。
    このシステムは、あるアプリケーション・プログラムの全ライフ・サイクルに亙って、GUIと、ユーザ・インターフェース・アプリケーションのパネル及びソフトウェアとを開発及び保守するための、生産性の高い環境を提供するものとなっている。 また、この本発明のグラフィカル・ユーザ・インターフェース・システムは、非同期の、事象駆動形のプログラミングをサポートする、グラフィカル・ユーザ・インターフェースとなっている。

    【0040】 グラフィカル・ユーザ・インターフェース
    ・ソース・コード・ファイル及びグラフィカル・ユーザ
    ・インターフェース・エディター グラフィカル・ユーザ・インターフェース・エディター(GUIE)は、ウィンドウ、メッセージ・ボックス、
    及びコントロールを、アイコンで表示することのできる、視覚的インターフェースである。 ユーザは先ず、マウスや、タッチ・パネルや、カーソル・キー等を使用して、ウィンドウやメッセージ・ボックスの中へ、コントロールを移動させる。 こうしてコントロールを移動させたならば、移動させたコントロールに属性を付与する。
    この、属性を付与するアクションの結果として、パネル定義ファイル(.PDFファイル)の定義、生成、ないしは変更が生ずる。 更には、エンドユーザは、このユーザ・
    インターフェース・エディターを使用して、テキスト・
    エディターを用いて構築された、.PDFファイルの中に格納されているソース・タグをディスプレイさせたり、そのソース・タグに対して変更を加えたりすることもできる。 ユーザは、任意のテキスト・エディターを使用して、ウィンドウ、メッセージ・ボックス、それにコントロールを構築することができる。 例えば、エンドユーザは、ウィンドウを生成したければ「:windowdef」と、また、メッセージ・ボックスを生成したければ「:messag
    e」と、夫々タイピングして打ち込めば良い。 この方法によって、ユーザは、ユーザ・インターフェース・エディターか或いはテキスト・エディターを用いてパネル定義ファイル(.PDFファイル)に格納されている任意のソース・タグを、テキスト・エディタを使うことにより、
    ディスプレイ上に表示させたり、そのソース・タグに対して変更を加えたりすることができる。

    【0041】次のステップは、例えばウィンドウやメッセージ・ボックス等を収容しているそのパネル定義ファイル(.PDFファイル)を、セーブするステップである。
    この「セーブ」のアクションを実行すると、自動的に、
    そのときセーブしようとしているウィンドウないしメッセージ・ボックスをソース・タグに変換し、そのソース・タグには、UIツールがウィンドウないしメッセージ・ボックスを生成する際に必要とする定義が含まれている。

    【0042】ユーザ・インターフェース・エディターまたはテキスト・エディターを用いて構築されたパネル定義ファイル(.PDFファイル)を、ユーザが後にオープンしたときには、その「オープン」のアクションが実行されることによって、そのパネル定義ファイル(.PDFファイル)に格納されていたソース・タグが、コンパイルされて、ウィンドウないしメッセージ・ボックスとして、
    ディスプレイ上に表示される。

    【0043】パネルを定義するには、タグを用いて定義する。 タグとは、何らかのデータ集合に付随させる1つないし複数の文字であり、そのデータ集合に関する(例えばそのデータ集合の識別情報等をはじめとする)様々な情報を包含させたものである。 タグのうちには、言語オブジェクトのオブジェクト名を表わす字句単位を成しているものもある。 その例を挙げるならば、変数名、配列名、レコード名、ラベル名、それにプロシージャー名等である。 また、タグのうちには、ファイルの中のデータに関する様々な状態を明示する一組のビットないし文字であるものもある。 この種のビットないし文字は、しばしば、そのファイルのヘッダー・レコードの中で使用されており、例えば、ファイル、フィールド、パラグラフ、或いはその他のオブジェクト等の、種々のデータ構造体に対して付された、名や、略号とされている。

    【0044】1つの「タグ」は、そのタグに固有のタグ名と、様々な種類の必要なパラメータないしオプションのパラメータとから構成されている。 また、ユーザは、
    ウィンドウ定義タグ、ないしはメッセージ・ボックス定義タグの中に、コントロール・タグをタイピングして打ち込むことによって、ウィンドウ、ないしはメッセージ・ボックスの中に、コントロールを追加することができる。 タグ・タイプには、以下のものがある。 コンパイラー・タグ:コンパイラー・タグは、コンパイラーに対して情報を明示ないし指定するタグである。 この情報は、コンパイラーを制御するために使用される情報であることもあれば、また、その他のタグが参照すべき情報を明示ないし指定するために使用される情報であることもある。 このコンパイラー・タグに含まれるのは、ヘルプ・テキスト定義タグ、ヘルプ・テキスト・タグ、ラベル定義タグ、資源定義タグ、テキスト・ストリング定義タグ、それに、ユーザ・インターフェース定義ファイル識別子等である。 メッセージ・ボックス及びウィンドウ定義タグ:メッセージ・ボックス及びウィンドウ定義タグは、あるメッセージ・ボックスまたはあるウィンドウの始まりと終りとを明示するタグである。 レイアウト・タグ:レイアウト・タグは、ウィンドウ定義の中のコントロールのための、列と行の配列についての情報をはじめとするレイアウト関係の様々な情報を明示ないし指定するタグである。 このレイアウト・タグに含まれるのは、列タグ、部タグ、ライン・モード・タグ、ウィンドウ倍率タグ、スペース・タグ、それに、サブアイテム・タグ等である。 コントロール・タグ:コントロール・タグには、ウィンドウ定義の中に表示する実際の内容を指定するものもあり、また、メッセージ・ボックスの中に表示するコントロールを指定するものもある。 ウィンドウ定義関係のコントロール・タグには、チェック・ボックス、列見出し、列見出しグループ、コンビネーション・ボックス、
    ドロップ・ダウン・コンビネーション・ボックス、ドロップ・ダウン・リスト、エントリー・フィールド、グループ、アイコン、リスト、リスト・アイテム、メニュー・アイテム・グループ、メニュー・アイテム、出力フィールド、ファンクション・キー・エリア・プッシュ・ボタン、プッシュ・ボタン、ラジオ・ボタン、それに、スタティック・テキスト等のタグがある。 また、メッセージ・ボックス定義関係のコントロール・タグには、メッセージボックス・プッシュ・ボタンや、メッセージ・テキスト等のタグがある。

    【0045】ウィンドウないしメッセージ・ボックスを定義するには、一連の複数のタグによって定義する。 1
    つのタグは、そのタグに固有のタグ名に、必要なパラメータないしオプションのパラメータを付加したもので構成される。 1つのタグの構造は、次のようなものとなる。

    【0046】パネル定義ファイル(.PDFファイル)と、
    この.PDFファイルを構成している複数のタグとは、以下の諸特性を備えたものとしている。 先ず第1に、新たなタグは、改行した新たな行から始まる。 第2に、空行は無視される。 第3に、タグ及びパラメータは大文字小文字を区別しない。 第4に、1つのタグは先頭のコロンをもって始まる。 第5に、タグ行(タグを記載してある行)は、その次の行へと連続することができ、従って、
    パネル定義ファイル(.PDFファイル)の複数行に亙って存在することができる。 第6に、タグ行に存在する前置きのスペースは無視され、これは、ソース行が引用符付きストリングの途中で分割されている場合にも適用される。 第7に、タグ行は常にピリオドをもって終了する。

    【0047】ブロック・タグは、一対で使用するタグである。 ブロック・タグを使用するのは、通常、その他の一連のタグから成るタグ集合体を括るためである。 一対のブロック・タグのうちの終了タグは、開始タグと同じ形に、ただし、開始タグの頭にフォワード・スラッシュを付加した形で定義する。 例えば、あるブロックにおいて、その先頭タグが「WINDOWDEF」であったならば(即ち、それがウィンドウ定義用のブロックであったなら)、そのブロックの終了タグは「/WINDOWDEF」とする。

    【0048】既に存在しているウィンドウないしメッセージ・ボックスは、.PDFファイルの中に格納されている複数のソース・タグによって構成されている。 その.PDF
    ファイルを「オープン」したときには、その.PDFファイルの中に存在しているソース・タグが、コンパイルされて、ウィンドウないしメッセージ・ボックスとしてディスプレイ上に表示される。 また、「セーブ」のアクションを実行すると、それによって、ソース・タグが、.PDF
    ファイルに書込まれる。 .PDFファイルは、パネル全体に対応したエントリーと、そのパネルの中の各オブジェクトに対応したエントリーと、それらエントリーを、より大きなオブジェクトの中にネストされたサブオブジェクトの各々に対応させて連結する連係リストとを含んでいる必要がある。 この連係リストは、その中の各エントリーが、この連係リストの中の次のエントリーを包含したフィールドを備えているようにしてある。

    【0049】本発明の特に好適な実施例においては、ユーザ・インターフェース・エディターが得ることのできる個々のオブジェクトをエンドユーザ変更可能にしてある。 即ち、エンドユーザが、複数のオブジェクトの間の順序を変更することができ、オブジェクトのテキストを変更することができ、オブジェクトを削除することができ、そして、ユーザ・インターフェースに変更を加えようとしたときに呼出されるコードを変更することができるようにしてある。

    【0050】ユーザ・インターフェース・エディター(UIE)が実行を開始すると、このUIEが、ユーザ変更可能な制御ファイルからの読込みを行なう。 この制御ファイルは、各パネル・タイプ(例えば、ウィンドウやメッセージ・ボックス)に対応したタグを収容しており、それらタグは、UIEのユーザがそれらタグに対して処理を加え得るようにしてある。 この制御ファイルは更に、そのパネル・タイプの中に配置することのできる各オブジェクト(例えば、チェックボックスやプッシュボタン)に対応したタグを収容している。 図10は、パネルの生成及び編集に用いる具体例のパネルを示したものである。 このパネルは、その左辺の近くに「ウィンドウ」を含んでいる。 このウィンドウは、制御ファイルから得ることのできるオブジェクト(例えば、対話ツール等)を示している。 図10に示したこのユーザ・インターフェース・エディターのパネルは、プッシュ・ボタン(この図10では強調表示されている)と、ファンクション・キー・プッシュ・ボタンと、チェック・ボックスと、出力フィールドと、MLEエントリー・フィールドと、グループ・ボックスと、ラジオ・ボタンと、ファイル・アイコンとを含んでいる。 いうまでもないことであるが、制御ファイルには、その他のオブジェクトが含まれていることもある。

    【0051】タグには2種類のタイプがある( PANELタグ(パネル・タグ)と、OBJECTタグ(オブジェクト・タグ)との2種類である)。 夫々の種類のタグのパラメータを以下に示す。

    【0052】PANELタグ(パネル・タグ):このタイプのタグは、パネル・タイプ・コンパクトを次のように定義する。 ICON=UIEの中で、そのパネル・タイプを表わすアイコンの資源名。 TEXT=ディスプレイ画面上において、そのパネルのアイコンの下に表示するテキスト記述。 WINPROC =そのパネル・タイプに対応したプログラム・
    メッセージを取扱うべきCプロシージャーのプロシージャー名。 WINCLASS=UIEが、そのパネル・タイプのものとして登録するウィンドウ・クラスのウィンドウ・クラス名(例えば、IBM−OS/2“PresentationManager”
    (商標)というウィンドウ・クラス等)。 これによってそのパネル・タイプと、そのパネル・タイプの WINPROC
    との間の通信がセット・アップされる。 DLL = WINPROCを収容しているダイナミック・リンク・
    ライブラリー(DLL)のライブラリー名。 RESDLL=ICONを収容しているダイナミック・リンク・ライブラリー(DLL)のライブラリー名。 TAGTYPE =タグ言語ファイルの中で、そのパネル・タイプを明示するために使用するタグの識別子。

    【0053】OBJECTタグ(オブジェクト・タグ):このタイプのタグは、パネルの中に配置することのできるオブジェクトを次のように定義する。 ICON=UIEの中で、そのオブジェクトを表わすアイコンの資源名。 TEXT=ディスプレイ画面上において、そのオブジェクトのアイコンの下に表示するテキスト記述。 WINPROC =そのオブジェクトに対応したプログラム・メッセージを取扱うべきCプロシージャーのプロシージャー名。 WINCLASS=UIEが、そのオブジェクトのものとして登録する、例えば、「OS/2“Presentation Manager"
    (商標)というウィンドウ・クラスのウィンドウ・クラス名。 これによって、そのオブジェクトと、そのオブジェクトの WINPROCとの間の通信がセット・アップされる。 DLL = WINPROCを収容しているダイナミック・リンク・
    ライブラリー(DLL)のライブラリー名。 RESDLL=ICONを収容しているダイナミック・リンク・ライブラリー(DLL)のライブラリー名。 TAGTYPE =タグ言語ファイルの中で、そのオブジェクトを明示するために使用するタグの識別子。

    【0054】制御ファイルの内容の具体例を示すと、以下のとおりである。

    【0055】UIEへ供給される制御ファイルのパラメータを変更することをとおして、ないしはその制御ファイルに新たなタグを追加することをとおして、ユーザが、そのUIEの呼出しによって供給されるパネル及びオブジェクトの、内容、概観、及び挙動に対する、完全な制御を把握することができるようにしている。 その具体例を挙げるならば、「Pushbutton(プッシュボタン)」というテキスト記述を変更するには、そのオブジェクトに対応した「OBJECTタグ」(オブジェクト・タグ)の「TEXTパラメータ」を更新すれば良い。 尚、制御ファイルに新たなタグを追加することも可能にしてあり、既存のタグを削除したり並べ換えたりすることも可能にしてある。

    【0056】UIEアプリケーションの中では、メッセージ方式の技法を用いることによって、ユーザが、オブジェクト取扱いソフトウェア・ルーチンをカストマイズすることができるようにしてあり、それには、 WINPROC
    パラメータを操作するようにする。 その具体例を挙げるならば、例えばユーザが、マウスを使用してパネル上の特定のオブジェクトの上でダブル・クリック操作をする等によって、図10に示したパネルとの間で対話操作を行なった結果、ユーザがそのオブジェクトの属性を変更することを欲しているとの通知をUIEが受け取ったならば、UIEは、そのオブジェクトに対応した WINPROC
    パラメータによって指定されているプロシージャーへ宛てて EDIT ATTRIBUTESメッセージ(属性に対して編集を加えることを求めるメッセージ)を送出する。 このプロシージャーは、その EDIT ATTRIBUTESメッセージを受け取ったならば、それに応答して、ディスプレイ画面上にダイヤログを表示して(この表示は、図10に示した2
    つのユーザ・インターフェースの具体例のうちのいずれか一方のようにして行なわれる)、ユーザがその属性に対して変更を加えられるようにする。 もしユーザが、そのダイヤログを変更することを望むか、或いは、ダブル・クリック操作をしたときに実行されるアクションを、
    その他のアクションに変更することを望むのであれば、
    ユーザは、 EDIT ATTRIBUTESメッセージに対して望みの応答をするCプロシージャーを書くようにすれば良い。
    そしてそのCプロシージャーのプロシージャー名を、そのオブジェクトに対応した WINPROCパラメータの中に指定すれば、これによって、そのプロシージャー名が、 D
    LLパラメータの中に指定されたダイナミック・リンク・
    ライブラリーにリンクされる。 以上のようにして、基礎となったUIEコードを変更することも、また、再コンパイルすることも必要とせずに、その種の変更をインプリメントすることができるようにしているのである。

    【0057】 グラフィカル・ユーザ・インターフェース
    ・ソース・コード・ファイルをコンパイルしてグラフィ
    カル・ユーザ・インターフェース・オブジェクト・コー
    ド・ファイルを得ることについて 図7〜図9は、様々なファイル・タイプと本発明の夫々のステップの関係を詳細に示した図であり、図6は、それら図7〜図9の並べ方を示した図である。 図7において、先ず、パネル定義ファイル(.PDFファイル)が、エンドユーザによって生成される。 エンドユーザは、グラフィカル・ユーザ・インターフェース・エディターまたはテキスト・エディターを使用して、この.PDFファイルを生成する。 続いてユーザ・インターフェース・コンパイラー(UIコンパイラー)が、その.PDFファイルを、
    パネル・バイナリ中間ファイル(.PBIファイル)へ変換する。 続いてユーザ・インターフェース・リンカーがコールされる。 ユーザ・インターフェース・リンカーは、
    パネル定義情報を収容するための、様々な種類のファイルを生成する。 生成されるそれらファイルには、以下のファイル・タイプのものが含まれている。 .BIN:.PBIファイルの各々に対して、.BINファイルを1
    つずつ生成する。 .BINファイルは、パネルを構築するためのバイナリ命令を収容するファイルである。 .PDI:.PDIファイル(パネル定義中間ファイル)を1つ生成する。 .PDIファイルは.PDFファイルの中に定義されている.BINファイル及び資源ファイルの各々に対応した「組込みステートメント」を収容するファイルである。 .H:.Hファイルを1つ生成する。 .Hファイルは、そのパネルの中に定義されている、あらゆるコントロール、テキスト・ストリング、ヘルプ・パネル、等々に対応した
    #DEFINEステートメントを収容するファイルである。 また、.HファイルはUI構成要素と共に使用されるアプリケーションの中に収容される。 .PMI:.PMIファイル(パネル・マシン・リーダブル情報ファイル)を、1つ生成する。 .PMIファイルは、マシン・リーダブルなファイルであり、あらゆるパネルにおける、あらゆるテキストを収容するファイルである。 .PHI:.PHIファイル(パネル・ヘルプ中間ファイル)を1つ生成する。 .PHIファイルは、あらゆるヘルプ・パネルにおける、あらゆるヘルプ・パネル・テキストを収容するファイルである。 .DEF:暫定ファイルである.DEFファイル(定義ファイル)を2つ生成する。 これらの.DEFファイルは、後の構築プロセスにおけるステップで使用するファイルである。

    【0058】図8について説明すると、.DEFファイルと
    STUBファイルとが、リンカーによってリンクされ、また、.BINファイルの出力と.PDIファイルと.Hファイルとがコンパイルされて、.PDLファイル(パネル定義ライブラリー・ファイル)が生成されている。 図9について説明すると、.DEFファイルとSTUBファイルとが、リンカーによってリンクされ、また、.PMIファイルの出力と.Hファイルとがコンパイルされて、.PMLファイル(パネル・
    メッセージ・ライブラリー・ファイル)が生成されている。 続いて、結果として得られた出力が、適当なファイルに格納される。

    【0059】

    【発明の効果】以上から分かるように、本発明によって提供されるグラフィカル・ユーザ・インターフェース・
    エディターは、エンドユーザが、グラフィカル・ユーザ・インターフェースを定義し、生成し、ないしは編集することを、可能にするものである。 しかもこれは、ユーザ・フレンドリーなグラフィカル・ユーザ・インターフェース・エディターによって達成しており、即ち、ウィズィウィグ(WYSIWYG)式エディター及びテキスト・エディターの一方又は両方を交換可能に利用するようにした、グラフィカル・ユーザ・インターフェース・
    エディターによって達成している。

    【0060】本発明のグラフィカル・ユーザ・インターフェース・エディターによれば、結果として得られた(即ち、編集を加えた、或いは生成した)GUIパネルをコンパイルしてセーブしておくことができる能力がエンドユーザに付与され、更に、編集後のGUIパネルに対応した編集後のソース・コードをセーブする能力もエンドユーザに付与される。 これによって、エンドユーザの能力が強化され、グラフィカル・ユーザ・インターフェース・ファイルに対して更に変更を加えることも、また更には、グラフィカル・ユーザ・インターフェース・
    ファイルをコピーすることも可能になっている。

    【図面の簡単な説明】

    【図1】従来例に係るグラフィカル・ユーザ・インターフェースを示した図である。

    【図2】本発明に係るグラフィカル・ユーザ・インターフェース・エディターの全体像を示したフローチャートである。

    【図3】本発明に係るグラフィカル・ユーザ・インターフェース・エディターにおける複数のモジュールとそれらモジュールの間の関係を示した図である。

    【図4】ユーザ・アクセス可能なタグ・ファイル(.PDF
    ファイル)の一部を示したリストであり、図5へ続く図表である。

    【図5】ユーザ・アクセス可能なタグ・ファイル(.PDF
    ファイル)の一部を示したリストであり、図4から続く図表である。

    【図6】図7〜図9の並べ方を示した図である。

    【図7】本発明に係るモジュールとプロセスの関係を示した模式図の一部であり、図8及び図9と組合せる図である。

    【図8】本発明に係るモジュールとプロセスの関係を示した模式図の一部であり、図7及び図9と組合せる図である。

    【図9】本発明に係るモジュールとプロセスの関係を示した模式図の一部であり、図7及び図8と組合せる図である。

    【図10】その右辺に沿って利用可能なオブジェクトが表示されている、パネルの編集のために用いられるパネルを示した図である。

    【符号の説明】

    1 グラフィカル・ユーザ・インターフェースのパネル 11、21、31 図形画像

    ───────────────────────────────────────────────────── フロントページの続き (72)発明者 デービッド・マイケル・ダプキーヴィチ アメリカ合衆国05468、バーモント州 ミ ルトン、ピーオー・ボックス 604 (72)発明者 ロバート・パトリック・ホフマン アメリカ合衆国13760、ニューヨーク州 エンドウェル、ジョージ・エフ・ハイウェ イ 3600番地、アパートメント 2 (72)発明者 ジェリー・ウォルター・マルコム アメリカ合衆国78758、テキサス州 オー スチン、リンカーンシャー 12040番地 (72)発明者 ジョン・デービッド・モンゴメリー アメリカ合衆国13903、ニューヨーク州 ビンガムトン、オーデュボン 40番地 (72)発明者 スコット・アンソニー・シルベスター アメリカ合衆国13760、ニューヨーク州 エンディコット、ボスウェル・ヒル 125 番地

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈