JPH07219753A - 会話型プログラム開発支援システム - Google Patents
会話型プログラム開発支援システムInfo
- Publication number
- JPH07219753A JPH07219753A JP6010921A JP1092194A JPH07219753A JP H07219753 A JPH07219753 A JP H07219753A JP 6010921 A JP6010921 A JP 6010921A JP 1092194 A JP1092194 A JP 1092194A JP H07219753 A JPH07219753 A JP H07219753A
- Authority
- JP
- Japan
- Prior art keywords
- resource
- callback
- description
- development support
- support system
- 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.)
- Withdrawn
Links
Landscapes
- Stored Programmes (AREA)
- User Interface Of Digital Computer (AREA)
- Digital Computer Display Output (AREA)
Abstract
(57)【要約】
【目的】 会話型プログラム開発支援システムに関し、
GUIの構造やコールバック関数の一部をリソース化す
ることにより、開発作業の効率を向上する。 【構成】 GUI環境が提供されたコンピュータシステ
ムに適用される会話型プログラム開発支援システムにお
いて、リソースファイル103は、GUIを構成する各
部品の種類および関係を記述した構造記述リソース10
4を備え、会話型プログラム開発支援システムは、アプ
リケーションプログラム101からの依頼に応じて、該
当するリソースを判別する判定手段111と、構造記述
リソース104である場合に、該当する記述に基づい
て、各部品の種類および相互の関係を解釈して、各部品
の作成処理をウインドウシステム102にそれぞれ依頼
する解釈処理手段112と、構造記述リソース104で
ない場合に、GUI作成の依頼をウインドウシステム1
02に中継する中継手段113とを備える。
GUIの構造やコールバック関数の一部をリソース化す
ることにより、開発作業の効率を向上する。 【構成】 GUI環境が提供されたコンピュータシステ
ムに適用される会話型プログラム開発支援システムにお
いて、リソースファイル103は、GUIを構成する各
部品の種類および関係を記述した構造記述リソース10
4を備え、会話型プログラム開発支援システムは、アプ
リケーションプログラム101からの依頼に応じて、該
当するリソースを判別する判定手段111と、構造記述
リソース104である場合に、該当する記述に基づい
て、各部品の種類および相互の関係を解釈して、各部品
の作成処理をウインドウシステム102にそれぞれ依頼
する解釈処理手段112と、構造記述リソース104で
ない場合に、GUI作成の依頼をウインドウシステム1
02に中継する中継手段113とを備える。
Description
【0001】
【産業上の利用分野】本発明は、GUI(Graphical Us
er Interface) を利用した会話型のアプリケーションプ
ログラムの開発を支援する会話型プログラム開発支援シ
ステムに関するものである。
er Interface) を利用した会話型のアプリケーションプ
ログラムの開発を支援する会話型プログラム開発支援シ
ステムに関するものである。
【0002】情報処理装置が様々な分野で普及するにつ
れて、情報処理についての専門知識の少ない利用者にと
っても使いやすいソフトウェアの開発が要望されてい
る。このような要望に応える技術として、GUIが脚光
を浴びている。
れて、情報処理についての専門知識の少ない利用者にと
っても使いやすいソフトウェアの開発が要望されてい
る。このような要望に応える技術として、GUIが脚光
を浴びている。
【0003】GUIは、コマンドや選択肢に対応してそ
の内容を示すアイコンを表示し、利用者が直観的に内容
を把握できるように工夫されており、専門知識の少ない
利用者もこれらのアイコンを操作することにより、様々
な処理を簡単な操作で実行させることができる。
の内容を示すアイコンを表示し、利用者が直観的に内容
を把握できるように工夫されており、専門知識の少ない
利用者もこれらのアイコンを操作することにより、様々
な処理を簡単な操作で実行させることができる。
【0004】このようなGUI環境を提供するシステム
として、Xウインドウシステムがあり、様々なワークス
テーションに適用されている。一方、上述したようなG
UIを取り入れるためには、本来の処理のほかにGUI
の操作についても記述する必要があるため、アプリケー
ションソフトウェアを開発するソフトウェア技術者の作
業負担が重くなっている。
として、Xウインドウシステムがあり、様々なワークス
テーションに適用されている。一方、上述したようなG
UIを取り入れるためには、本来の処理のほかにGUI
の操作についても記述する必要があるため、アプリケー
ションソフトウェアを開発するソフトウェア技術者の作
業負担が重くなっている。
【0005】
【従来の技術】ソフトウェア開発に要する労力を削減す
るための技術として、従来は、アイコンやメニューを構
成する枠などGUIを構成する各部品の形状などに関す
る記述をリソースとして、アプリケーションプログラム
から分離しておくものがあり、Xウインドウシステムな
どに適用されている。
るための技術として、従来は、アイコンやメニューを構
成する枠などGUIを構成する各部品の形状などに関す
る記述をリソースとして、アプリケーションプログラム
から分離しておくものがあり、Xウインドウシステムな
どに適用されている。
【0006】Xウインドウシステムにおいては、各部品
に対応するリソースは、その部品の位置や形状,色など
を表すテキスト情報であり、これらのリソースからリソ
ースファイルが形成されている。また、アプリケーショ
ンプログラムの実行時に、Xウインドウシステムは、リ
ソースファイルから該当するリソースの内容を解釈し
て、該当する部品を作成して表示装置に表示する。
に対応するリソースは、その部品の位置や形状,色など
を表すテキスト情報であり、これらのリソースからリソ
ースファイルが形成されている。また、アプリケーショ
ンプログラムの実行時に、Xウインドウシステムは、リ
ソースファイルから該当するリソースの内容を解釈し
て、該当する部品を作成して表示装置に表示する。
【0007】このように、部品の形状などに関するテキ
スト情報をリソースとして分離したことにより、アプリ
ケーションプログラムのコンパイルなどを伴うことな
く、その部品の形状や色などを簡単に修正することを可
能としている。
スト情報をリソースとして分離したことにより、アプリ
ケーションプログラムのコンパイルなどを伴うことな
く、その部品の形状や色などを簡単に修正することを可
能としている。
【0008】図12に、従来のXウインドウシステムを
適用したワークステーションの構成を示す。図12にお
いて、Xウインドウシステム201は、アプリケーショ
ンプログラム101の記述に従って、リソースファイル
103から該当するリソースを読み出し、そのリソース
で記述された形状の部品を作成し、オペレーティングシ
ステム204を介して表示装置205に表示する。
適用したワークステーションの構成を示す。図12にお
いて、Xウインドウシステム201は、アプリケーショ
ンプログラム101の記述に従って、リソースファイル
103から該当するリソースを読み出し、そのリソース
で記述された形状の部品を作成し、オペレーティングシ
ステム204を介して表示装置205に表示する。
【0009】すなわち、アプリケーションプログラム1
01において、各リソースで表される部品の配置などを
記述しておき、Xウインドウシステム201が、その記
述に従って部品を組み立てることにより、メニューなど
のGUIを形成する構成となっている。
01において、各リソースで表される部品の配置などを
記述しておき、Xウインドウシステム201が、その記
述に従って部品を組み立てることにより、メニューなど
のGUIを形成する構成となっている。
【0010】また、キーボード206やマウス207な
どの入力装置からの入力データは、オペレーティングシ
ステム204を介してXウインドウシステム201に伝
達され、更に、Xウインドウシステム201からアプリ
ケーションプログラム101に中継される構成となって
いる。
どの入力装置からの入力データは、オペレーティングシ
ステム204を介してXウインドウシステム201に伝
達され、更に、Xウインドウシステム201からアプリ
ケーションプログラム101に中継される構成となって
いる。
【0011】したがって、アプリケーションプログラム
101において、ボタンなどの部品が操作されたときに
実行する動作を表すコールバック関数を記述し、このコ
ールバック関数を登録しておけば、利用者が該当する部
品を操作したときに、Xウインドウシステム201によ
り、該当するコールバック関数にその旨が通知され、そ
のコールバック関数で記述された処理が実行される。
101において、ボタンなどの部品が操作されたときに
実行する動作を表すコールバック関数を記述し、このコ
ールバック関数を登録しておけば、利用者が該当する部
品を操作したときに、Xウインドウシステム201によ
り、該当するコールバック関数にその旨が通知され、そ
のコールバック関数で記述された処理が実行される。
【0012】
【発明が解決しようとする課題】ところで、従来のリソ
ースは、あくまでも各部品そのものに関する記述であ
り、また、Xウインドウシステムは、該当するリソース
が記述した部品を作成するものである。
ースは、あくまでも各部品そのものに関する記述であ
り、また、Xウインドウシステムは、該当するリソース
が記述した部品を作成するものである。
【0013】したがって、部品相互の位置関係はアプリ
ケーションプログラムに記述されており、メニューのよ
うに、各部品が複雑に組み合わされたGUIの各部品の
位置関係を記述する作業は煩雑であった。また、このよ
うなGUIを構成する各部品の配置などを変更する場合
には、アプリケーションプログラムを修正する必要があ
り、これに伴うコンパイルやリンケージなどの処理のた
めに、ソフトウェア開発作業の能率が低下していた。
ケーションプログラムに記述されており、メニューのよ
うに、各部品が複雑に組み合わされたGUIの各部品の
位置関係を記述する作業は煩雑であった。また、このよ
うなGUIを構成する各部品の配置などを変更する場合
には、アプリケーションプログラムを修正する必要があ
り、これに伴うコンパイルやリンケージなどの処理のた
めに、ソフトウェア開発作業の能率が低下していた。
【0014】また、Xウインドウは、あくまでもアプリ
ケーションプログラムとハードウェアとのあいだを仲介
するものであり、入力データは単純にアプリケーション
プログラムに中継される。
ケーションプログラムとハードウェアとのあいだを仲介
するものであり、入力データは単純にアプリケーション
プログラムに中継される。
【0015】したがって、操作される全ての部品に対応
するコールバック関数をアプリケーションプログラムに
記述しておく必要があった。これらのコールバック関数
のなかには、例えば、特定のメッセージを表示すると
か、メニューの表示/非表示を制御するなどといった単
純な操作を記述するものも含まれており、これらの単純
な操作の記述のために、ソフトウェア開発者の作業が煩
雑になっていた。
するコールバック関数をアプリケーションプログラムに
記述しておく必要があった。これらのコールバック関数
のなかには、例えば、特定のメッセージを表示すると
か、メニューの表示/非表示を制御するなどといった単
純な操作を記述するものも含まれており、これらの単純
な操作の記述のために、ソフトウェア開発者の作業が煩
雑になっていた。
【0016】本発明は、部品相互の階層関係をリソース
として分離することが可能な会話型プログラム開発支援
システムを提供することおよびコールバック関数をリソ
ースとして分離することが可能な会話型プログラム開発
支援システムを提供することを目的とする。
として分離することが可能な会話型プログラム開発支援
システムを提供することおよびコールバック関数をリソ
ースとして分離することが可能な会話型プログラム開発
支援システムを提供することを目的とする。
【0017】
【課題を解決するための手段】図1は、請求項1の会話
型プログラム開発支援システムの原理ブロック図であ
る。
型プログラム開発支援システムの原理ブロック図であ
る。
【0018】請求項1の発明は、アプリケーションプロ
グラム101からの指示に応じて、ウインドウシステム
102がリソースファイル103内の指定されたリソー
スに基づいて、GUIを構成する各部品を作成する構成
のコンピュータシステムに適用される会話型プログラム
開発支援システムにおいて、リソースファイル103
は、複数の部品を組み合わせたGUIのそれぞれに対応
し、GUIを構成する各部品の種類および部品間の関係
をそれぞれ識別子を付して記述した構造記述リソース1
04を備え、会話型プログラム開発支援システムは、ア
プリケーションプログラム101からGUI作成の依頼
を受けて、リソースファイル103内の該当するリソー
スを参照し、識別子の有無に基づいて、このリソースが
構造記述リソース104であるか否かを判定する判定手
段111と、構造記述リソース104である旨の判定結
果に応じて、構造記述リソース104に含まれる識別子
で示された記述に基づいて、該当するGUIを構成する
各部品の種類および部品相互間の関係を解釈し、この解
釈結果に従って、各部品の作成処理をウインドウシステ
ム102にそれぞれ依頼する解釈処理手段112と、構
造記述リソース104でない旨の判定結果に応じて、G
UI作成の依頼をウインドウシステム102に中継する
中継手段113とを備えたことを特徴とする。
グラム101からの指示に応じて、ウインドウシステム
102がリソースファイル103内の指定されたリソー
スに基づいて、GUIを構成する各部品を作成する構成
のコンピュータシステムに適用される会話型プログラム
開発支援システムにおいて、リソースファイル103
は、複数の部品を組み合わせたGUIのそれぞれに対応
し、GUIを構成する各部品の種類および部品間の関係
をそれぞれ識別子を付して記述した構造記述リソース1
04を備え、会話型プログラム開発支援システムは、ア
プリケーションプログラム101からGUI作成の依頼
を受けて、リソースファイル103内の該当するリソー
スを参照し、識別子の有無に基づいて、このリソースが
構造記述リソース104であるか否かを判定する判定手
段111と、構造記述リソース104である旨の判定結
果に応じて、構造記述リソース104に含まれる識別子
で示された記述に基づいて、該当するGUIを構成する
各部品の種類および部品相互間の関係を解釈し、この解
釈結果に従って、各部品の作成処理をウインドウシステ
ム102にそれぞれ依頼する解釈処理手段112と、構
造記述リソース104でない旨の判定結果に応じて、G
UI作成の依頼をウインドウシステム102に中継する
中継手段113とを備えたことを特徴とする。
【0019】図2は、請求項2ないし請求項8の会話型
プログラム開発支援システムの原理ブロック図である。
請求項2の発明は、アプリケーションプログラム101
からの指示に応じて、ウインドウシステム102がリソ
ースファイル103内の指定されたリソースに基づい
て、GUIを構成する各部品を作成する構成のコンピュ
ータシステムに適用される会話型プログラム開発支援シ
ステムにおいて、リソースファイル103は、対応する
部品自体に関する情報とともに部品が操作されたときに
実行すべきコールバック処理に関する情報をその処理に
対応する識別子を付して示した記述を含むコールバック
記述リソース105を備え、会話型プログラム開発支援
システムは、ウインドウシステム102からGUIが操
作された旨の通知を受けて、リソースファイル103内
の該当するリソースを参照し、処理に対応する識別子の
有無に基づいて、該当するリソースがコールバック記述
リソース105であるか否かを判定する判定手段121
と、コールバック記述リソース105である旨の判定結
果に応じて、コールバック記述リソース105に含まれ
ている識別子で示された記述に従って、コールバック処
理を実行するコールバック処理手段122と、コールバ
ック記述リソース105でない旨の判定結果に応じて、
ウインドウシステム102からの通知をアプリケーショ
ンプログラム101に中継する中継手段123とを備え
たことを特徴とする。
プログラム開発支援システムの原理ブロック図である。
請求項2の発明は、アプリケーションプログラム101
からの指示に応じて、ウインドウシステム102がリソ
ースファイル103内の指定されたリソースに基づい
て、GUIを構成する各部品を作成する構成のコンピュ
ータシステムに適用される会話型プログラム開発支援シ
ステムにおいて、リソースファイル103は、対応する
部品自体に関する情報とともに部品が操作されたときに
実行すべきコールバック処理に関する情報をその処理に
対応する識別子を付して示した記述を含むコールバック
記述リソース105を備え、会話型プログラム開発支援
システムは、ウインドウシステム102からGUIが操
作された旨の通知を受けて、リソースファイル103内
の該当するリソースを参照し、処理に対応する識別子の
有無に基づいて、該当するリソースがコールバック記述
リソース105であるか否かを判定する判定手段121
と、コールバック記述リソース105である旨の判定結
果に応じて、コールバック記述リソース105に含まれ
ている識別子で示された記述に従って、コールバック処
理を実行するコールバック処理手段122と、コールバ
ック記述リソース105でない旨の判定結果に応じて、
ウインドウシステム102からの通知をアプリケーショ
ンプログラム101に中継する中継手段123とを備え
たことを特徴とする。
【0020】請求項3の発明は、請求項2に記載の会話
型プログラム開発支援システムにおいて、コールバック
記述リソース105は、コールバック関数を示す記述と
して、所定の識別子とメッセージの格納場所を示す情報
とを含んだ構成であり、判定手段121は、所定の識別
子の有無に基づいて、リソースの判別を行う構成であ
り、コールバック処理手段122は、コールバック記述
リソース105内のコールバック関数の記述で示される
格納場所からメッセージを読み出して、ウインドウシス
テム102にウインドウへの出力を依頼する構成である
ことを特徴とする。
型プログラム開発支援システムにおいて、コールバック
記述リソース105は、コールバック関数を示す記述と
して、所定の識別子とメッセージの格納場所を示す情報
とを含んだ構成であり、判定手段121は、所定の識別
子の有無に基づいて、リソースの判別を行う構成であ
り、コールバック処理手段122は、コールバック記述
リソース105内のコールバック関数の記述で示される
格納場所からメッセージを読み出して、ウインドウシス
テム102にウインドウへの出力を依頼する構成である
ことを特徴とする。
【0021】請求項4の発明は、請求項2に記載の会話
型プログラム開発支援システムにおいて、コールバック
記述リソース105は、コールバック関数を示す記述と
して、所定の識別子とメニューの表示を制御するコマン
ドとメニューに対応するリソースを示す情報とを含んだ
構成であり、判定手段121は、所定の識別子の有無に
基づいて、リソースの判別を行う構成であり、コールバ
ック処理手段122は、コールバック記述リソース10
5内のコールバック関数の記述で示されるリソースを指
定して、コマンドで示される処理の実行をソースウイン
ドウシステム102に依頼する構成であることを特徴と
する。
型プログラム開発支援システムにおいて、コールバック
記述リソース105は、コールバック関数を示す記述と
して、所定の識別子とメニューの表示を制御するコマン
ドとメニューに対応するリソースを示す情報とを含んだ
構成であり、判定手段121は、所定の識別子の有無に
基づいて、リソースの判別を行う構成であり、コールバ
ック処理手段122は、コールバック記述リソース10
5内のコールバック関数の記述で示されるリソースを指
定して、コマンドで示される処理の実行をソースウイン
ドウシステム102に依頼する構成であることを特徴と
する。
【0022】請求項5の発明は、請求項2に記載の会話
型プログラム開発支援システムにおいて、コールバック
記述リソース105は、コールバック関数を示す記述と
して、所定の識別子とシステムコマンドを示す情報とを
含んだ構成であり、判定手段121は、所定の識別子の
有無に基づいて、リソースの判別を行う構成であり、コ
ールバック処理手段122は、コールバック記述リソー
ス105内のコールバック関数の記述で示されるシステ
ムコマンドの実行を直接にオペレーティングシステムに
依頼する構成であることを特徴とする。
型プログラム開発支援システムにおいて、コールバック
記述リソース105は、コールバック関数を示す記述と
して、所定の識別子とシステムコマンドを示す情報とを
含んだ構成であり、判定手段121は、所定の識別子の
有無に基づいて、リソースの判別を行う構成であり、コ
ールバック処理手段122は、コールバック記述リソー
ス105内のコールバック関数の記述で示されるシステ
ムコマンドの実行を直接にオペレーティングシステムに
依頼する構成であることを特徴とする。
【0023】請求項6の発明は、請求項2に記載の会話
型プログラム開発支援システムにおいて、コールバック
記述リソース105は、コールバック関数を示す記述と
して、所定の識別子と変数の操作に関する情報とを含ん
だ構成であり、判定手段121は、所定の識別子の有無
に基づいて、リソースの判別を行う構成であり、コール
バック処理手段122は、コールバック記述リソース1
05に対応するGUIの状態に応じて、コールバック記
述リソース105内のコールバック関数の記述で示され
る変数の操作処理を実行する構成であることを特徴とす
る。
型プログラム開発支援システムにおいて、コールバック
記述リソース105は、コールバック関数を示す記述と
して、所定の識別子と変数の操作に関する情報とを含ん
だ構成であり、判定手段121は、所定の識別子の有無
に基づいて、リソースの判別を行う構成であり、コール
バック処理手段122は、コールバック記述リソース1
05に対応するGUIの状態に応じて、コールバック記
述リソース105内のコールバック関数の記述で示され
る変数の操作処理を実行する構成であることを特徴とす
る。
【0024】請求項7の発明は、請求項6に記載の会話
型プログラム開発支援システムにおいて、会話型プログ
ラム開発支援システムは、コールバック記述リソース1
05において操作される変数の少なくとも1部につい
て、アプリケーションプログラム101におけるアドレ
スをそれぞれ格納する変数テーブル124を備え、コー
ルバック処理手段122は、コールバック記述リソース
105に対応するGUIの状態に応じて、コールバック
記述リソース105内のコールバック関数の記述で示さ
れる変数の操作処理を実行するとともに、変数テーブル
124から該当するアドレスを得て、アプリケーション
プログラム101内の変数の値を操作する構成であるこ
とを特徴とする。
型プログラム開発支援システムにおいて、会話型プログ
ラム開発支援システムは、コールバック記述リソース1
05において操作される変数の少なくとも1部につい
て、アプリケーションプログラム101におけるアドレ
スをそれぞれ格納する変数テーブル124を備え、コー
ルバック処理手段122は、コールバック記述リソース
105に対応するGUIの状態に応じて、コールバック
記述リソース105内のコールバック関数の記述で示さ
れる変数の操作処理を実行するとともに、変数テーブル
124から該当するアドレスを得て、アプリケーション
プログラム101内の変数の値を操作する構成であるこ
とを特徴とする。
【0025】請求項8の発明は、請求項5に記載の会話
型プログラム開発支援システムにおいて、コールバック
記述リソース105は、システムコマンドの処理結果の
出力先を特定する出力先情報を含んだ構成であり、コー
ルバック処理手段122は、システムコマンドの処理結
果を受け取って、コールバック記述リソース105内の
出力先情報で特定された出力先を指定して、ウインドウ
システム102に処理結果の出力を依頼する構成である
ことを特徴とする。
型プログラム開発支援システムにおいて、コールバック
記述リソース105は、システムコマンドの処理結果の
出力先を特定する出力先情報を含んだ構成であり、コー
ルバック処理手段122は、システムコマンドの処理結
果を受け取って、コールバック記述リソース105内の
出力先情報で特定された出力先を指定して、ウインドウ
システム102に処理結果の出力を依頼する構成である
ことを特徴とする。
【0026】
【作用】請求項1の発明は、構造記述リソース104に
識別子を付してGUIを構成する部品の種類および部品
相互の関係が記述されているので、判定手段111の判
定結果に応じて、解釈処理手段112が動作することに
より、該当するGUIの構造を解釈し、このGUIを構
成する各部品の作成処理をアプリケーションプログラム
101に代わってウインドウシステム102に依頼する
ことができる。また、アプリケーションプログラム10
1により、構造記述リソース以外のリソースが指定され
た場合には、中継手段113によりアプリケーションプ
ログラム101からの指示がウインドウシステム102
に中継される。したがって、この場合は、従来と同様
に、リソースファイル103内の該当するリソースに基
づいて、ウインドウシステム102により、該当するG
UIの作成処理が行われる。
識別子を付してGUIを構成する部品の種類および部品
相互の関係が記述されているので、判定手段111の判
定結果に応じて、解釈処理手段112が動作することに
より、該当するGUIの構造を解釈し、このGUIを構
成する各部品の作成処理をアプリケーションプログラム
101に代わってウインドウシステム102に依頼する
ことができる。また、アプリケーションプログラム10
1により、構造記述リソース以外のリソースが指定され
た場合には、中継手段113によりアプリケーションプ
ログラム101からの指示がウインドウシステム102
に中継される。したがって、この場合は、従来と同様
に、リソースファイル103内の該当するリソースに基
づいて、ウインドウシステム102により、該当するG
UIの作成処理が行われる。
【0027】請求項2の発明は、コールバック記述リソ
ース105に識別子を付してコールバック関数が記述さ
れているので、判定手段121の判定結果に応じてコー
ルバック処理手段122が動作することにより、アプリ
ケーションプログラム101に代わってコールバック処
理をウインドウシステム102やオペレーティングシス
テムに対して依頼することが可能である。また、該当す
るGUIに対応するリソースにコールバック関数が記述
されていない場合には、中継手段123により、ウイン
ドウシステム102からの通知がアプリケーションプロ
グラム101に中継されるから、もちろん、従来と同様
に、コールバック関数をアプリケーションプログラム1
01側で定義することもできる。
ース105に識別子を付してコールバック関数が記述さ
れているので、判定手段121の判定結果に応じてコー
ルバック処理手段122が動作することにより、アプリ
ケーションプログラム101に代わってコールバック処
理をウインドウシステム102やオペレーティングシス
テムに対して依頼することが可能である。また、該当す
るGUIに対応するリソースにコールバック関数が記述
されていない場合には、中継手段123により、ウイン
ドウシステム102からの通知がアプリケーションプロ
グラム101に中継されるから、もちろん、従来と同様
に、コールバック関数をアプリケーションプログラム1
01側で定義することもできる。
【0028】請求項3の発明は、コールバック記述リソ
ース105に、所定の識別子とメッセージの格納場所を
示す情報とを記述しておき、ウインドウシステム102
からの通知に応じて、判定手段121とコールバック処
理手段122とが動作することによって、該当するメッ
セージをウインドウシステム102を介して表示するこ
とができる。
ース105に、所定の識別子とメッセージの格納場所を
示す情報とを記述しておき、ウインドウシステム102
からの通知に応じて、判定手段121とコールバック処
理手段122とが動作することによって、該当するメッ
セージをウインドウシステム102を介して表示するこ
とができる。
【0029】請求項4の発明は、コールバック記述リソ
ース105に、所定の識別子とメニューの表示を制御す
るコマンドと操作対象のメニューに対応するリソースを
示す情報(例えばリソース名)とを記述しておき、ウイ
ンドウシステム102からの通知に応じて、判定手段1
21とコールバック処理手段122とが動作することに
よって、ウインドウシステム102を介して、リソース
名で示されたメニューの表示を制御することができる。
ース105に、所定の識別子とメニューの表示を制御す
るコマンドと操作対象のメニューに対応するリソースを
示す情報(例えばリソース名)とを記述しておき、ウイ
ンドウシステム102からの通知に応じて、判定手段1
21とコールバック処理手段122とが動作することに
よって、ウインドウシステム102を介して、リソース
名で示されたメニューの表示を制御することができる。
【0030】請求項5の発明は、コールバック記述リソ
ース105に、所定の識別子とシステムコマンドを示す
情報とを記述しておき、ウインドウシステム102から
の通知に応じて、判定手段121とコールバック処理手
段122とが動作することによって、上述したシステム
コマンドの実行をオペレーティングシステムに依頼する
ことができる。
ース105に、所定の識別子とシステムコマンドを示す
情報とを記述しておき、ウインドウシステム102から
の通知に応じて、判定手段121とコールバック処理手
段122とが動作することによって、上述したシステム
コマンドの実行をオペレーティングシステムに依頼する
ことができる。
【0031】請求項6の発明は、コールバック記述リソ
ース105に、所定の識別子と変数の操作に関する情報
とを記述しておき、ウインドウシステム102からの通
知に応じて、判定手段121とコールバック処理手段1
22とが動作することによって、上述した変数の値を操
作することができる。
ース105に、所定の識別子と変数の操作に関する情報
とを記述しておき、ウインドウシステム102からの通
知に応じて、判定手段121とコールバック処理手段1
22とが動作することによって、上述した変数の値を操
作することができる。
【0032】請求項7の発明は、コールバック処理手段
122が、上述した変数の操作を行う際に、変数テーブ
ル124を参照し、該当するアドレスにも同一の操作を
行うことにより、アプリケーションプログラム101の
変数の値を操作することができる。
122が、上述した変数の操作を行う際に、変数テーブ
ル124を参照し、該当するアドレスにも同一の操作を
行うことにより、アプリケーションプログラム101の
変数の値を操作することができる。
【0033】請求項8の発明は、コールバック記述リソ
ース105にシステムコマンドの処理結果の出力先を特
定する出力先情報を付加しておき、ウインドウシステム
102からの通知に応じて、コールバック処理手段12
2が動作することにより、オペレーティングシステムに
よるシステムコマンドの処理結果を出力先情報で特定さ
れた出力先を指定して、ウインドウシステム102に処
理結果の出力を依頼することができる。
ース105にシステムコマンドの処理結果の出力先を特
定する出力先情報を付加しておき、ウインドウシステム
102からの通知に応じて、コールバック処理手段12
2が動作することにより、オペレーティングシステムに
よるシステムコマンドの処理結果を出力先情報で特定さ
れた出力先を指定して、ウインドウシステム102に処
理結果の出力を依頼することができる。
【0034】
【実施例】以下、図面に基づいて本発明の実施例につい
て詳細に説明する。図3は、本発明の会話型プログラム
開発支援システムを適用したワークステーションの実施
例構成図を示す。
て詳細に説明する。図3は、本発明の会話型プログラム
開発支援システムを適用したワークステーションの実施
例構成図を示す。
【0035】図3に示したワークステーションにおい
て、会話型プログラム開発支援システム(支援システ
ム)210は、ウインドウシステム101に相当するX
ウインドウシステム201とアプリケーションプログラ
ム101との間を仲介する構成となっている。
て、会話型プログラム開発支援システム(支援システ
ム)210は、ウインドウシステム101に相当するX
ウインドウシステム201とアプリケーションプログラ
ム101との間を仲介する構成となっている。
【0036】また、図3において、Xウインドウシステ
ム201は、従来と同様に、オペレーティングシステム
204を介して表示装置205などの出力装置およびキ
ーボード206,マウス207などの入力装置を制御し
て、GUI環境を提供する構成となっている。
ム201は、従来と同様に、オペレーティングシステム
204を介して表示装置205などの出力装置およびキ
ーボード206,マウス207などの入力装置を制御し
て、GUI環境を提供する構成となっている。
【0037】本実施例においては、リソース内部におい
て、GUIを構成する各部品の種類を示す識別子“part
skind ”と部品の組み合わせを示す識別子“partslist
”とを用いて、後述するようにして部品相互間の階層
関係を表す。
て、GUIを構成する各部品の種類を示す識別子“part
skind ”と部品の組み合わせを示す識別子“partslist
”とを用いて、後述するようにして部品相互間の階層
関係を表す。
【0038】また、操作される可能性のある部品のリソ
ースにおいて、それぞれの処理に対応する識別子を付加
して、対応するコールバック関数の記述部分を示す。本
実施例においては、比較的単純なコールバックの例とし
て、特定のメッセージの表示処理,メニューの表示制
御,変数の操作およびシステムコマンドの実行を取り上
げて説明する。
ースにおいて、それぞれの処理に対応する識別子を付加
して、対応するコールバック関数の記述部分を示す。本
実施例においては、比較的単純なコールバックの例とし
て、特定のメッセージの表示処理,メニューの表示制
御,変数の操作およびシステムコマンドの実行を取り上
げて説明する。
【0039】図3に示した会話型プログラム開発支援シ
ステム210において、イベント処理部211は、アプ
リケーションプログラム101がXウインドウシステム
201にGUI部品の作成を依頼するときおよびGUI
部品の操作に応じてXウインドウシステム201がアプ
リケーションプログラム101に入力を通知するとき
に、該当するリソースを指定してリソース管理部212
を起動する構成となっている。
ステム210において、イベント処理部211は、アプ
リケーションプログラム101がXウインドウシステム
201にGUI部品の作成を依頼するときおよびGUI
部品の操作に応じてXウインドウシステム201がアプ
リケーションプログラム101に入力を通知するとき
に、該当するリソースを指定してリソース管理部212
を起動する構成となっている。
【0040】このリソース管理部212は、指定された
リソースをリソースファイル103から検索し、このリ
ソース内部の上述した識別子を検出し、検出された識別
子に応じて、階層解釈部213,メッセージ処理部21
4,表示制御部215,コマンド処理部216および変
数操作部217のいずれかを起動する構成となってい
る。
リソースをリソースファイル103から検索し、このリ
ソース内部の上述した識別子を検出し、検出された識別
子に応じて、階層解釈部213,メッセージ処理部21
4,表示制御部215,コマンド処理部216および変
数操作部217のいずれかを起動する構成となってい
る。
【0041】例えば、階層関係を示す識別子を検出した
場合に、リソース管理部212は、該当するリソースを
指定して、請求項1で述べた解釈処理手段112に相当
する階層解釈部213を起動する。
場合に、リソース管理部212は、該当するリソースを
指定して、請求項1で述べた解釈処理手段112に相当
する階層解釈部213を起動する。
【0042】この場合は、イベント処理部211とリソ
ース管理部213とによって、請求項1で述べた判定手
段111の機能が果たされている。また、メッセージの
表示を示す識別子"message",メニューの表示制御を示す
識別子"menuControl",システムコマンドの実行を示す識
別子“command ”および変数操作を示す識別子“operat
ion"のそれぞれを検出したときに、リソース管理部21
2は、同様にして、メッセージ処理部214,表示制御
部215,コマンド処理部216,変数操作部217を
それぞれ起動すればよい。
ース管理部213とによって、請求項1で述べた判定手
段111の機能が果たされている。また、メッセージの
表示を示す識別子"message",メニューの表示制御を示す
識別子"menuControl",システムコマンドの実行を示す識
別子“command ”および変数操作を示す識別子“operat
ion"のそれぞれを検出したときに、リソース管理部21
2は、同様にして、メッセージ処理部214,表示制御
部215,コマンド処理部216,変数操作部217を
それぞれ起動すればよい。
【0043】この場合は、イベント処理部211とリソ
ース管理部212とによって、請求項2で述べた判定手
段121の機能が果たされ、メッセージ処理部214,
表示制御部215,コマンド処理部216,変数操作部
217の各部からなるコールバック処理手段122を起
動する構成となっている。
ース管理部212とによって、請求項2で述べた判定手
段121の機能が果たされ、メッセージ処理部214,
表示制御部215,コマンド処理部216,変数操作部
217の各部からなるコールバック処理手段122を起
動する構成となっている。
【0044】一方、該当するリソース内部に上述した識
別子が含まれていない場合は、リソース管理部212
は、イベント処理部211に、起動のきっかけとなった
依頼および通知をそのまま中継する旨を指示すればよ
い。これに応じて、イベント処理部211は、請求項1
および請求項2で述べた中継手段113,123として
動作する。
別子が含まれていない場合は、リソース管理部212
は、イベント処理部211に、起動のきっかけとなった
依頼および通知をそのまま中継する旨を指示すればよ
い。これに応じて、イベント処理部211は、請求項1
および請求項2で述べた中継手段113,123として
動作する。
【0045】また、図3に示した会話型プログラム開発
支援システム210において、変数テーブル218は、
変数操作部217からの指示に応じて、変数名に対応し
て、その変数のアプリケーションプログラム210にお
けるアドレスを格納する構成となっている。
支援システム210において、変数テーブル218は、
変数操作部217からの指示に応じて、変数名に対応し
て、その変数のアプリケーションプログラム210にお
けるアドレスを格納する構成となっている。
【0046】また、会話型プログラム開発支援システム
210は、作業領域219を備えており、上述した各部
が処理を進める際に、その途中結果などを格納しておく
ために使われる。
210は、作業領域219を備えており、上述した各部
が処理を進める際に、その途中結果などを格納しておく
ために使われる。
【0047】次に、本発明の会話型プログラム開発支援
システムを用いて、図4に示すようなメニューを形成す
る方法について具体的に説明する。図5に、図4に示し
たメニューの階層構造を記述した構造記述リソースの例
を示す。
システムを用いて、図4に示すようなメニューを形成す
る方法について具体的に説明する。図5に、図4に示し
たメニューの階層構造を記述した構造記述リソースの例
を示す。
【0048】図5において、リソースmenuの第1行は、
上述した識別子"partskind”を用いて、メニューの基本
構成menu(図4において符号を付して示した)が、リ
ソースRowcolumn で表される部品であることを記述して
いる。第2行は、上述した識別子“partslist"を用い
て、上述した基本構成menuで形成される二つの部分につ
いて、それぞれ部品の名前lb,rcを基本構成menuの子と
して定義している。
上述した識別子"partskind”を用いて、メニューの基本
構成menu(図4において符号を付して示した)が、リ
ソースRowcolumn で表される部品であることを記述して
いる。第2行は、上述した識別子“partslist"を用い
て、上述した基本構成menuで形成される二つの部分につ
いて、それぞれ部品の名前lb,rcを基本構成menuの子と
して定義している。
【0049】また、以下の各行においては、基本構成me
nuから親子関係の順に部品名をピリオドで区切って並べ
ることにより部品の階層関係を記述し、この階層関係で
特定された部品について記述している。例えば、リソー
スmenuの第3行は、基本構成menuの子に当たる部品lb
が、リソースLabel で表される部品であることを記述
し、一方、第8行は、基本構成menuの子に当たる部品rc
の子として、部品r1,r2を定義している。
nuから親子関係の順に部品名をピリオドで区切って並べ
ることにより部品の階層関係を記述し、この階層関係で
特定された部品について記述している。例えば、リソー
スmenuの第3行は、基本構成menuの子に当たる部品lb
が、リソースLabel で表される部品であることを記述
し、一方、第8行は、基本構成menuの子に当たる部品rc
の子として、部品r1,r2を定義している。
【0050】この場合は、アプリケーションプログラム
101側では、図5に示したリソースmenuを指定して、
メニューを作成する旨を会話型プログラム開発支援シス
テム210に依頼すればよい。
101側では、図5に示したリソースmenuを指定して、
メニューを作成する旨を会話型プログラム開発支援シス
テム210に依頼すればよい。
【0051】これに応じて、会話型プログラム開発支援
システム210のイベント処理部211が動作し、リソ
ースmenuを指定してリソース管理部212を起動する。
図5に示したように、リソースmenuは、構造記述リソー
ス104であり、上述した識別子"partskind”および識
別子“partslist ”を含んでいるから、リソース管理部
212は、このリソースmenuを指定して階層解釈部21
3を起動する。これに応じて、階層解釈部213は、リ
ソースmenuの記述に基づいて、メニューを構成する各部
品の組み立てを解釈し、その構造に従って各部品の作成
をXウインドウシステム201に順次に依頼する。
システム210のイベント処理部211が動作し、リソ
ースmenuを指定してリソース管理部212を起動する。
図5に示したように、リソースmenuは、構造記述リソー
ス104であり、上述した識別子"partskind”および識
別子“partslist ”を含んでいるから、リソース管理部
212は、このリソースmenuを指定して階層解釈部21
3を起動する。これに応じて、階層解釈部213は、リ
ソースmenuの記述に基づいて、メニューを構成する各部
品の組み立てを解釈し、その構造に従って各部品の作成
をXウインドウシステム201に順次に依頼する。
【0052】このように、メニューなどの複雑なGUI
を構成する各部品相互間の階層関係を記述する構造記述
リソース104と、この構造記述リソースにおける記述
を解釈する階層解釈部213とを設け、この階層解釈部
213が上述したリソースの作成依頼に応じて動作する
構成としたことにより、アプリケーションプログラム1
01から複雑なGUIを構成する各部品の階層構造に関
する記述を分離することができる。
を構成する各部品相互間の階層関係を記述する構造記述
リソース104と、この構造記述リソースにおける記述
を解釈する階層解釈部213とを設け、この階層解釈部
213が上述したリソースの作成依頼に応じて動作する
構成としたことにより、アプリケーションプログラム1
01から複雑なGUIを構成する各部品の階層構造に関
する記述を分離することができる。
【0053】これにより、アプリケーションプログラム
101側では、メニューのような複雑なGUIをあたか
も1つの部品であるかのように、1つの命令で作成を依
頼することが可能となる。また、GUIの構造を記述し
たリソースを修正することによって、複雑なGUIの修
正を簡単に行うことが可能となる。したがって、アプリ
ケーションプログラムを開発するソフトウェア開発者の
作業負担を大幅に軽減し、ソフトウェア開発作業の効率
を向上することができる。
101側では、メニューのような複雑なGUIをあたか
も1つの部品であるかのように、1つの命令で作成を依
頼することが可能となる。また、GUIの構造を記述し
たリソースを修正することによって、複雑なGUIの修
正を簡単に行うことが可能となる。したがって、アプリ
ケーションプログラムを開発するソフトウェア開発者の
作業負担を大幅に軽減し、ソフトウェア開発作業の効率
を向上することができる。
【0054】次に、本発明の会話型プログラム開発支援
システムを用いて、単純なコールバック関数の処理を行
う方法について説明する。単純なコールバック関数の例
として、まず、図6(a) に示すように、メッセージを表
示するウインドウw1と2つのボタンb1,b2とを備えたG
UI(図6において符号g1を付して示す)において、ボ
タンb2の操作に応じて、特定のメッセージをウインドウ
w1に表示する処理について説明する。
システムを用いて、単純なコールバック関数の処理を行
う方法について説明する。単純なコールバック関数の例
として、まず、図6(a) に示すように、メッセージを表
示するウインドウw1と2つのボタンb1,b2とを備えたG
UI(図6において符号g1を付して示す)において、ボ
タンb2の操作に応じて、特定のメッセージをウインドウ
w1に表示する処理について説明する。
【0055】この場合は、図6(a) に示したGUI(以
下、GUIg1と称する)に対応するリソースg1は、この
GUIg1の構造に関する記述に、ボタンb2に関する記述
として『〜.b2.message:adrs』を付加した構成とする。
すなわち、リソースg1は、請求項3で述べたコールバッ
ク記述リソース105であり、所定の識別子として識別
子“message ”とメッセージの格納場所を示す情報とし
て、後述するメッセージファイル208のアドレスadrs
とを含んだ構成となっている。但し、上述したボタンb2
の記述においては、ボタンb2のGUIg1における配置を
示す階層関係の記述は省略し、記号『〜』で示した。
下、GUIg1と称する)に対応するリソースg1は、この
GUIg1の構造に関する記述に、ボタンb2に関する記述
として『〜.b2.message:adrs』を付加した構成とする。
すなわち、リソースg1は、請求項3で述べたコールバッ
ク記述リソース105であり、所定の識別子として識別
子“message ”とメッセージの格納場所を示す情報とし
て、後述するメッセージファイル208のアドレスadrs
とを含んだ構成となっている。但し、上述したボタンb2
の記述においては、ボタンb2のGUIg1における配置を
示す階層関係の記述は省略し、記号『〜』で示した。
【0056】図3において、メッセージファイル208
は、メッセージ処理部214からアクセス可能な構成と
なっており、このメッセージファイル208には、上述
したアドレスadrsに対応して、表示すべきメッセージ
(例えば、“abc001i 部品を選択せよ。”)が登録され
ている。
は、メッセージ処理部214からアクセス可能な構成と
なっており、このメッセージファイル208には、上述
したアドレスadrsに対応して、表示すべきメッセージ
(例えば、“abc001i 部品を選択せよ。”)が登録され
ている。
【0057】利用者が、マウス207を介してGUIg1
のボタンb2を操作すると、Xウインドウシステム201
を介してその旨が会話型プログラム開発支援システム2
10のイベント処理部211に伝達される。これに応じ
て、イベント処理部211により、該当するリソースg1
を指定してリソース管理部212が起動される。
のボタンb2を操作すると、Xウインドウシステム201
を介してその旨が会話型プログラム開発支援システム2
10のイベント処理部211に伝達される。これに応じ
て、イベント処理部211により、該当するリソースg1
を指定してリソース管理部212が起動される。
【0058】上述したように、リソースg1はボタンb2の
記述として識別子"message" を含んでいるから、この識
別子"message" の検出に応じて、リソース管理部212
により、メッセージ処理部214が起動される。
記述として識別子"message" を含んでいるから、この識
別子"message" の検出に応じて、リソース管理部212
により、メッセージ処理部214が起動される。
【0059】この起動指示に応じて、メッセージ処理部
214は、まず、リソースg1のボタンb2に関する記述か
ら、表示すべきメッセージが格納されているアドレスad
rsを得る。次に、メッセージ処理部214は、メッセー
ジファイル208の該当するアドレスからテキストデー
タを読み出して、このテキストデータをXウインドウシ
ステム201に送出し、ウインドウw1への出力を依頼す
る。
214は、まず、リソースg1のボタンb2に関する記述か
ら、表示すべきメッセージが格納されているアドレスad
rsを得る。次に、メッセージ処理部214は、メッセー
ジファイル208の該当するアドレスからテキストデー
タを読み出して、このテキストデータをXウインドウシ
ステム201に送出し、ウインドウw1への出力を依頼す
る。
【0060】このメッセージ処理部214からの依頼に
応じて、Xウインドウシステム201により、該当する
メッセージの表示作業が行われ、図6(b) に示すよう
に、ウインドウw1に該当するメッセージが表示される。
応じて、Xウインドウシステム201により、該当する
メッセージの表示作業が行われ、図6(b) に示すよう
に、ウインドウw1に該当するメッセージが表示される。
【0061】このように、リソース内部のボタンb2の記
述として、識別子“message ”とメッセージファイル2
08のアドレスとを付加し、Xウインドウシステム20
1からの通知に応じて、メッセージ処理部214が上述
した処理を行うことにより、GUIg1内部のボタンb2の
操作に応じて、メッセージファイル208に格納された
メッセージをウインドウw1に表示することが可能とな
る。
述として、識別子“message ”とメッセージファイル2
08のアドレスとを付加し、Xウインドウシステム20
1からの通知に応じて、メッセージ処理部214が上述
した処理を行うことにより、GUIg1内部のボタンb2の
操作に応じて、メッセージファイル208に格納された
メッセージをウインドウw1に表示することが可能とな
る。
【0062】これにより、アプリケーションプログラム
101から、単純なメッセージの表示処理を分離するこ
とができる。上述したメッセージの表示処理のように単
純なメッセージの表示処理の一つ一つは、簡単なプログ
ラムで実現できるものであるが、このような処理は非常
に出現頻度が多く、いちいちアプリケーション側でプロ
グラムするのは煩雑であった。
101から、単純なメッセージの表示処理を分離するこ
とができる。上述したメッセージの表示処理のように単
純なメッセージの表示処理の一つ一つは、簡単なプログ
ラムで実現できるものであるが、このような処理は非常
に出現頻度が多く、いちいちアプリケーション側でプロ
グラムするのは煩雑であった。
【0063】したがって、上述したようにして、リソー
スとして分離することにより、ソフトウェア開発者の作
業負担を大幅に軽減することが可能であり、ソフトウェ
ア開発作業の能率を向上する効果が大きい。
スとして分離することにより、ソフトウェア開発者の作
業負担を大幅に軽減することが可能であり、ソフトウェ
ア開発作業の能率を向上する効果が大きい。
【0064】同様の処理として、メニューの表示処理が
ある。次に、本発明の会話型プログラム開発支援システ
ムを用いて、図7に示すようなボタンb3の操作に応じ
て、図4に示したメニューの作成処理を行う方法につい
て説明する。
ある。次に、本発明の会話型プログラム開発支援システ
ムを用いて、図7に示すようなボタンb3の操作に応じ
て、図4に示したメニューの作成処理を行う方法につい
て説明する。
【0065】この場合は、図7に示したボタンb3に対応
するリソースb3は、このボタンb3の構造を記述する部分
に、図4に示したメニューを作成を指示するための記述
として、『〜b3.menuControl:CreateMenu("menu")』を
付加した構成とする。但し、上述した記述においては、
ボタンb3を構成要素として含むGUIにおけるボタンb3
の配置を示す階層関係の記述は省略し、記号『〜』で示
した。
するリソースb3は、このボタンb3の構造を記述する部分
に、図4に示したメニューを作成を指示するための記述
として、『〜b3.menuControl:CreateMenu("menu")』を
付加した構成とする。但し、上述した記述においては、
ボタンb3を構成要素として含むGUIにおけるボタンb3
の配置を示す階層関係の記述は省略し、記号『〜』で示
した。
【0066】ここで、『CreateMenu("menu")』は、リソ
ースmenuで表されるメニューの作成を指示するメニュー
表示制御コマンドである。すなわち、このリソースb3
は、請求項4で述べたコールバック記述リソース105
に相当するものとなっている。
ースmenuで表されるメニューの作成を指示するメニュー
表示制御コマンドである。すなわち、このリソースb3
は、請求項4で述べたコールバック記述リソース105
に相当するものとなっている。
【0067】上述したメッセージの表示処理と同様に、
利用者がマウス207を介してボタンb3を操作すると、
Xウインドウシステム201からの通知に応じて、会話
型プログラム開発支援システム210のイベント処理部
211とリソース管理部212とが判定手段121とし
て動作する。
利用者がマウス207を介してボタンb3を操作すると、
Xウインドウシステム201からの通知に応じて、会話
型プログラム開発支援システム210のイベント処理部
211とリソース管理部212とが判定手段121とし
て動作する。
【0068】このとき、リソース管理部212は、ボタ
ンb3に対応するリソースb3から上述したメニュー表示の
制御を示す識別子“menuControl ”を検出し、これに応
じて表示制御部215を起動する。
ンb3に対応するリソースb3から上述したメニュー表示の
制御を示す識別子“menuControl ”を検出し、これに応
じて表示制御部215を起動する。
【0069】これに応じて、表示制御部215は、識別
子“menuControl ”に続く記述に含まれるコマンド『Cr
eateMenu("menu")』を解釈し、この記述によって指示さ
れた表示制御動作を行う。すなわち、アプリケーション
プログラム101に代わって、図5に示したリソースme
nuに基づくGUIの作成をXウインドウシステム201
に依頼する処理を行う。
子“menuControl ”に続く記述に含まれるコマンド『Cr
eateMenu("menu")』を解釈し、この記述によって指示さ
れた表示制御動作を行う。すなわち、アプリケーション
プログラム101に代わって、図5に示したリソースme
nuに基づくGUIの作成をXウインドウシステム201
に依頼する処理を行う。
【0070】これにより、図4に示したメニューが表示
装置205に表示される。実際には、上述したリソース
menuを指定した依頼に応じて、イベント処理部211と
リソース管理部212とが動作して階層解釈部213が
起動され、この階層解釈部213によって、図4に示し
たGUIの各部品の作成処理をXウインドウシステム2
01に依頼することにより、メニューの表示が行われ
る。
装置205に表示される。実際には、上述したリソース
menuを指定した依頼に応じて、イベント処理部211と
リソース管理部212とが動作して階層解釈部213が
起動され、この階層解釈部213によって、図4に示し
たGUIの各部品の作成処理をXウインドウシステム2
01に依頼することにより、メニューの表示が行われ
る。
【0071】このように、ボタンb3に対応するリソース
内部に、識別子“menuControl ”とメニューの表示制御
用のコマンドとを記述しておき、Xウインドウシステム
201からの通知に応じて、表示制御部215が上述し
た処理を行うことにより、ボタンb3の操作に応じて、メ
ニューを作成して表示装置205に表示することが可能
となる。
内部に、識別子“menuControl ”とメニューの表示制御
用のコマンドとを記述しておき、Xウインドウシステム
201からの通知に応じて、表示制御部215が上述し
た処理を行うことにより、ボタンb3の操作に応じて、メ
ニューを作成して表示装置205に表示することが可能
となる。
【0072】また、同様にして、識別子“menuControl
”に続くメニューの表示制御コマンドとして『MapMenu
』や『UnmapMenu 』を含むリソースを作成すれば、こ
れらのリソースに対応するGUIの操作に応じて、既に
作成されたメニューの表示/非表示を制御することがで
きる。同様に、『DestroyMenu 』をメニューの表示制御
コマンドとして含むリソースを作成すれば、対応するG
UIの操作に応じて、指定したメニューを削除すること
ができる。
”に続くメニューの表示制御コマンドとして『MapMenu
』や『UnmapMenu 』を含むリソースを作成すれば、こ
れらのリソースに対応するGUIの操作に応じて、既に
作成されたメニューの表示/非表示を制御することがで
きる。同様に、『DestroyMenu 』をメニューの表示制御
コマンドとして含むリソースを作成すれば、対応するG
UIの操作に応じて、指定したメニューを削除すること
ができる。
【0073】これにより、アプリケーションプログラム
101から、メニューの表示制御に関する煩雑な記述を
リソースに分離して、アプリケーションプログラムの負
担を軽減することが可能となり、ソフトウェア開発者の
作業負担を大幅に軽減し、ソフトウェア開発作業の能率
を向上することができる。
101から、メニューの表示制御に関する煩雑な記述を
リソースに分離して、アプリケーションプログラムの負
担を軽減することが可能となり、ソフトウェア開発者の
作業負担を大幅に軽減し、ソフトウェア開発作業の能率
を向上することができる。
【0074】ところで、ディレクトリ内容の表示のよう
に、利用者が頻繁に入力する可能性があるシステムコマ
ンドについては、キー入力の手間を省くために、図8に
示すようなボタンb4を設け、このボタンb4の操作に応じ
て、該当するシステムコマンドを実行する機能を提供す
る場合がある。
に、利用者が頻繁に入力する可能性があるシステムコマ
ンドについては、キー入力の手間を省くために、図8に
示すようなボタンb4を設け、このボタンb4の操作に応じ
て、該当するシステムコマンドを実行する機能を提供す
る場合がある。
【0075】次に、本発明の会話型プログラム開発支援
システムを用いて、図8に示したボタンb4の操作に応じ
て、システムコマンドを実行する方法について説明す
る。この場合は、図8に示したボタンb4に対応するリソ
ースb4は、請求項5で述べたコールバック記述リソース
105に相当するものであり、ボタンb4の構造を記述す
る部分に加えて、実行すべきシステムコマンドを指定す
るための記述として、『〜b4.command:ls -l /usr/bin
』を含んでいる。但し、上述したボタンb4の記述にお
いては、ボタンb4のGUIにおける配置を示す階層関係
の記述は省略し、記号『〜』で示した。上述したメッセ
ージの表示処理と同様に、利用者がマウス207を介し
てボタンb4を操作すると、Xウインドウシステム201
からの通知に応じて、会話型プログラム開発支援システ
ム210のイベント処理部211とリソース管理部21
2とが判定手段121として動作する。
システムを用いて、図8に示したボタンb4の操作に応じ
て、システムコマンドを実行する方法について説明す
る。この場合は、図8に示したボタンb4に対応するリソ
ースb4は、請求項5で述べたコールバック記述リソース
105に相当するものであり、ボタンb4の構造を記述す
る部分に加えて、実行すべきシステムコマンドを指定す
るための記述として、『〜b4.command:ls -l /usr/bin
』を含んでいる。但し、上述したボタンb4の記述にお
いては、ボタンb4のGUIにおける配置を示す階層関係
の記述は省略し、記号『〜』で示した。上述したメッセ
ージの表示処理と同様に、利用者がマウス207を介し
てボタンb4を操作すると、Xウインドウシステム201
からの通知に応じて、会話型プログラム開発支援システ
ム210のイベント処理部211とリソース管理部21
2とが判定手段121として動作する。
【0076】このとき、リソース管理部212は、ボタ
ンb4に対応するリソースb4から上述したシステムコマン
ドの実行を示す識別子“command"を検出するので、コマ
ンド処理部216を起動する。
ンb4に対応するリソースb4から上述したシステムコマン
ドの実行を示す識別子“command"を検出するので、コマ
ンド処理部216を起動する。
【0077】これに応じて、コマンド処理部215が、
識別子“command"に続くシステムコマンドの処理をオペ
レーティングシステム204に直接に依頼することによ
り、表示装置205にディレクトリの内容が表示され
る。
識別子“command"に続くシステムコマンドの処理をオペ
レーティングシステム204に直接に依頼することによ
り、表示装置205にディレクトリの内容が表示され
る。
【0078】このように、ボタンb4に対応するリソース
内部に、識別子“command"と実行すべきシステムコマン
ドとを記述しておき、Xウインドウシステム201から
の通知に応じて、コマンド処理部216が上述した処理
を行うことにより、ボタンb4の操作に応じて、上述した
システムコマンドを実行し、ディレクトリの内容を表示
装置205に表示することが可能となる。
内部に、識別子“command"と実行すべきシステムコマン
ドとを記述しておき、Xウインドウシステム201から
の通知に応じて、コマンド処理部216が上述した処理
を行うことにより、ボタンb4の操作に応じて、上述した
システムコマンドを実行し、ディレクトリの内容を表示
装置205に表示することが可能となる。
【0079】また、同様にして、識別子“command"に続
いて、様々なシステムコマンドを含むリソースをそれぞ
れ作成すれば、これらのリソースに対応するGUIの操
作に応じて、様々なシステムコマンドを実行させること
ができる。
いて、様々なシステムコマンドを含むリソースをそれぞ
れ作成すれば、これらのリソースに対応するGUIの操
作に応じて、様々なシステムコマンドを実行させること
ができる。
【0080】これにより、アプリケーションプログラム
101から、システムコマンドの実行指示に関する煩雑
な記述をリソースとして分離して、アプリケーションプ
ログラムの負担を軽減することが可能となり、ソフトウ
ェア開発者の作業負担を大幅に軽減し、ソフトウェア開
発作業の能率を向上することができる。
101から、システムコマンドの実行指示に関する煩雑
な記述をリソースとして分離して、アプリケーションプ
ログラムの負担を軽減することが可能となり、ソフトウ
ェア開発者の作業負担を大幅に軽減し、ソフトウェア開
発作業の能率を向上することができる。
【0081】更に、本発明の会話型プログラム開発支援
システムを用いて、図9に示すようなGUI(図9にお
いて符号g2を付して示す)を構成するトグルボタンt1,
t2の操作に応じて、アプリケーションプログラム101
内部の変数aの値を操作することも可能である。
システムを用いて、図9に示すようなGUI(図9にお
いて符号g2を付して示す)を構成するトグルボタンt1,
t2の操作に応じて、アプリケーションプログラム101
内部の変数aの値を操作することも可能である。
【0082】この場合は、図9に示したGUI(以下、
GUIg2と称する)に対応するリソースg2は、請求項7
で述べたコールバック記述リソース105に相当するも
のであり、このGUIg2の構造を記述する部分に加え
て、トグルボタンt1,t2のそれぞれについての記述とし
て、『〜.operation :if(&SELF) &a=20 』および『〜.o
peration:if(&SELF) &a=30 』を付加した構成とする。
ここで、記号“&"は、リソース内部における変数を示す
識別子である。
GUIg2と称する)に対応するリソースg2は、請求項7
で述べたコールバック記述リソース105に相当するも
のであり、このGUIg2の構造を記述する部分に加え
て、トグルボタンt1,t2のそれぞれについての記述とし
て、『〜.operation :if(&SELF) &a=20 』および『〜.o
peration:if(&SELF) &a=30 』を付加した構成とする。
ここで、記号“&"は、リソース内部における変数を示す
識別子である。
【0083】また、アプリケーションプログラム101
は、変数aをリソースg2と共有の変数とする旨の記述を
含んだ構成となっている。まず、アプリケーションプロ
グラム101内部の上述した変数aに関する記述が実行
されると、会話型プログラム開発支援システム210の
イベント処理部211により、変数操作部217が起動
される。これに応じて、変数操作部217は、変数テー
ブル218に変数aとこの変数aのアプリケーションプ
ログラム101におけるアドレスとを登録する。
は、変数aをリソースg2と共有の変数とする旨の記述を
含んだ構成となっている。まず、アプリケーションプロ
グラム101内部の上述した変数aに関する記述が実行
されると、会話型プログラム開発支援システム210の
イベント処理部211により、変数操作部217が起動
される。これに応じて、変数操作部217は、変数テー
ブル218に変数aとこの変数aのアプリケーションプ
ログラム101におけるアドレスとを登録する。
【0084】このように、アプリケーションプログラム
101における共有の変数に関する記述に応じて、イベ
ント処理部211と変数操作部217とが動作し、変数
テーブル218に登録することにより、変数テーブル1
24の機能を実現することができる。
101における共有の変数に関する記述に応じて、イベ
ント処理部211と変数操作部217とが動作し、変数
テーブル218に登録することにより、変数テーブル1
24の機能を実現することができる。
【0085】その後、利用者がマウス207を介してト
グルボタンt1を操作すると、Xウインドウシステム20
1を介して会話型プログラム開発支援システム210に
その旨が通知される。これに応じて、イベント処理部2
11とリソース管理部212とが判定手段121として
動作し、このとき、リソース管理部212は、上述した
識別子“operation ”の検出に応じて、変数操作部21
7を起動する。
グルボタンt1を操作すると、Xウインドウシステム20
1を介して会話型プログラム開発支援システム210に
その旨が通知される。これに応じて、イベント処理部2
11とリソース管理部212とが判定手段121として
動作し、このとき、リソース管理部212は、上述した
識別子“operation ”の検出に応じて、変数操作部21
7を起動する。
【0086】これに応じて、変数操作部217は、識別
子“operation ”に続く変数操作に関する記述から識別
子“&"に基づいて変数を識別し、上述した記述に従っ
て、識別した変数のそれぞれの値を操作する。
子“operation ”に続く変数操作に関する記述から識別
子“&"に基づいて変数を識別し、上述した記述に従っ
て、識別した変数のそれぞれの値を操作する。
【0087】このとき、識別した変数の中に変数SELFが
あれば、変数操作部217は、まず、対応する部品の状
態に相当する値をこの変数SELFに設定する。例えば、ト
グルボタンt1が操作された場合に、変数操作部217
は、トグルボタンt1に対応する変数SELFに“真”を設定
し、トグルボタンt2に対応する変数SELFには“偽”を設
定すればよい。
あれば、変数操作部217は、まず、対応する部品の状
態に相当する値をこの変数SELFに設定する。例えば、ト
グルボタンt1が操作された場合に、変数操作部217
は、トグルボタンt1に対応する変数SELFに“真”を設定
し、トグルボタンt2に対応する変数SELFには“偽”を設
定すればよい。
【0088】次に、変数操作部217は、識別した変数
名に基づいて変数テーブル218を検索し、上述した変
数操作の対象となった変数に対応するアプリケーション
プログラム101のアドレスを求め、得られたアドレス
に上述した操作結果を代入する。
名に基づいて変数テーブル218を検索し、上述した変
数操作の対象となった変数に対応するアプリケーション
プログラム101のアドレスを求め、得られたアドレス
に上述した操作結果を代入する。
【0089】このように、イベント処理部211および
リソース管理部212からの指示に応じて、変数処理部
217がコールバック処理手段122として動作し、変
数テーブル218に登録されたアドレスの値を操作する
ことにより、アプリケーションプログラム101の変数
の値を操作することが可能となる。
リソース管理部212からの指示に応じて、変数処理部
217がコールバック処理手段122として動作し、変
数テーブル218に登録されたアドレスの値を操作する
ことにより、アプリケーションプログラム101の変数
の値を操作することが可能となる。
【0090】これにより、GUIの操作に応じて単に変
数を操作するだけの処理をアプリケーションプログラム
から分離することが可能となる。同様にして、図10に
示すようなスケールの操作に応じて、設定温度を示す変
数temperature の値を操作する処理をアプリケーション
プログラム101から分離することもできる。
数を操作するだけの処理をアプリケーションプログラム
から分離することが可能となる。同様にして、図10に
示すようなスケールの操作に応じて、設定温度を示す変
数temperature の値を操作する処理をアプリケーション
プログラム101から分離することもできる。
【0091】この場合は、スケールに対応するリソース
s1に、変数の操作に関する記述として、『〜.operatio
n:&temperature=&SELF 』を付加し、アプリケーション
プログラム101に、変数temperature をリソースと共
有の変数として登録する記述を付加すればよい。
s1に、変数の操作に関する記述として、『〜.operatio
n:&temperature=&SELF 』を付加し、アプリケーション
プログラム101に、変数temperature をリソースと共
有の変数として登録する記述を付加すればよい。
【0092】このように、GUIの操作に応じて変数の
値を操作する処理は、1つ1つの処理は単純ではある
が、アプリケーションプログラムのなかに多数出現する
ためにアプリケーションプログラムの作成作業を煩雑に
していたものである。したがって、上述したようにし
て、変数の操作処理をリソースとして分離したことによ
り、アプリケーションプログラムの負担を大幅に軽減す
ることができる。また、GUIの構造を記述するリソー
スの内部で、対応する変数の操作に関する記述を行う構
成としたことにより、GUIの変更に伴う変数の操作処
理の修正作業を容易とすることができる。
値を操作する処理は、1つ1つの処理は単純ではある
が、アプリケーションプログラムのなかに多数出現する
ためにアプリケーションプログラムの作成作業を煩雑に
していたものである。したがって、上述したようにし
て、変数の操作処理をリソースとして分離したことによ
り、アプリケーションプログラムの負担を大幅に軽減す
ることができる。また、GUIの構造を記述するリソー
スの内部で、対応する変数の操作に関する記述を行う構
成としたことにより、GUIの変更に伴う変数の操作処
理の修正作業を容易とすることができる。
【0093】また、上述した変数操作機能とシステムコ
マンドの実行機能とを組み合わせることにより、GUI
の操作に応じて、より複雑な処理を行うことも可能であ
る。以下、本発明の会話型プログラム開発支援システム
を用いて、図11に示すような構造を有するGUI(図
11において符号g3を付して示す)において、ボタンb5
を操作したときに、トグルボタンt3,t4の状態に応じ
て、ウインドウw2に異なる結果を得る方法について説明
する。
マンドの実行機能とを組み合わせることにより、GUI
の操作に応じて、より複雑な処理を行うことも可能であ
る。以下、本発明の会話型プログラム開発支援システム
を用いて、図11に示すような構造を有するGUI(図
11において符号g3を付して示す)において、ボタンb5
を操作したときに、トグルボタンt3,t4の状態に応じ
て、ウインドウw2に異なる結果を得る方法について説明
する。
【0094】この場合は、図11に示したGUI(以
下、GUIg3と称する)に対応するリソースg3は、GU
Ig3の構造を記述する部分に加えて、トグルボタンt3,
t4のそれぞれについての記述として、『〜.operation :
if(&SELF) &PARAM="-l" 』と『〜.operation: if(&SEL
F) &PARAM="" 』とを含んでいる。また、リソースg3
は、ボタンb5の記述として、『〜.command:ls &PARAM &
> &window 』を含んでおり、この記述は、システムコマ
ンドの処理結果の出力先を特定する情報として『&> &wi
ndow』を含んでいる。すなわち、このリソースg3は、請
求項5および請求項6で述べたコールバック記述リソー
ス105に相当するとともに、請求項8で述べたコール
バック記述リソース105に相当するものとなってい
る。
下、GUIg3と称する)に対応するリソースg3は、GU
Ig3の構造を記述する部分に加えて、トグルボタンt3,
t4のそれぞれについての記述として、『〜.operation :
if(&SELF) &PARAM="-l" 』と『〜.operation: if(&SEL
F) &PARAM="" 』とを含んでいる。また、リソースg3
は、ボタンb5の記述として、『〜.command:ls &PARAM &
> &window 』を含んでおり、この記述は、システムコマ
ンドの処理結果の出力先を特定する情報として『&> &wi
ndow』を含んでいる。すなわち、このリソースg3は、請
求項5および請求項6で述べたコールバック記述リソー
ス105に相当するとともに、請求項8で述べたコール
バック記述リソース105に相当するものとなってい
る。
【0095】利用者がマウス207を介して、例えば、
トグルボタンt3を操作すると、上述した変数操作処理と
同様に、Xウインドウシステム201からの通知に応じ
て、イベント処理部211とリソース管理部212とが
判定手段121として動作し、トグルボタンb3について
の記述に含まれる識別子“operation ”の検出に応じ
て、変数操作部217を起動する。これに応じて、変数
操作部217は、トグルボタンt3についての記述に従っ
て、変数PARAM に文字列“-l”を設定する。
トグルボタンt3を操作すると、上述した変数操作処理と
同様に、Xウインドウシステム201からの通知に応じ
て、イベント処理部211とリソース管理部212とが
判定手段121として動作し、トグルボタンb3について
の記述に含まれる識別子“operation ”の検出に応じ
て、変数操作部217を起動する。これに応じて、変数
操作部217は、トグルボタンt3についての記述に従っ
て、変数PARAM に文字列“-l”を設定する。
【0096】一方、利用者によってトグルボタンt4が操
作された場合は、同様にして変数操作部217が起動さ
れ、この変数操作部217により、トグルボタンt4につ
いての記述が実行されるから、変数PARAM には文字
列“”が設定される。
作された場合は、同様にして変数操作部217が起動さ
れ、この変数操作部217により、トグルボタンt4につ
いての記述が実行されるから、変数PARAM には文字
列“”が設定される。
【0097】その後、ボタンb5が操作されると、同様に
してイベント処理部211とリソース管理部212とが
判定手段121として動作し、今度は、ボタンb5につい
ての記述に含まれる識別子“command ”の検出に応じ
て、コマンド処理部216が起動される。
してイベント処理部211とリソース管理部212とが
判定手段121として動作し、今度は、ボタンb5につい
ての記述に含まれる識別子“command ”の検出に応じ
て、コマンド処理部216が起動される。
【0098】これに応じて、コマンド処理部216は、
識別子“command ”に続く記述にしたがって、システム
コマンドの処理を開始する。ここで、上述したようにし
て、変数PARAM に既に文字列“-l”が設定されていれ
ば、コマンド処理部216が認識する記述は、『ls -l
&> &window』となり、文字列“”が設定されていれば、
該当する記述は『ls &> &window 』となる。
識別子“command ”に続く記述にしたがって、システム
コマンドの処理を開始する。ここで、上述したようにし
て、変数PARAM に既に文字列“-l”が設定されていれ
ば、コマンド処理部216が認識する記述は、『ls -l
&> &window』となり、文字列“”が設定されていれば、
該当する記述は『ls &> &window 』となる。
【0099】このように、システムコマンドの実行を指
示する記述に変数を取り入れることにより、GUIの操
作に応じて、コマンド処理部216が認識する記述を変
更することが可能となる。これにより、GUIの操作に
応じて、コマンド処理部216がオペレーティングシス
テム204を介して実行するシステムコマンドの一部を
変更し、異なるシステムコマンドの処理結果を得ること
ができる。
示する記述に変数を取り入れることにより、GUIの操
作に応じて、コマンド処理部216が認識する記述を変
更することが可能となる。これにより、GUIの操作に
応じて、コマンド処理部216がオペレーティングシス
テム204を介して実行するシステムコマンドの一部を
変更し、異なるシステムコマンドの処理結果を得ること
ができる。
【0100】また、このとき、コマンド処理部216
は、上述した記述の後半の部分に含まれる変数を示す識
別子“&"に基づいて、この記述によってコマンドの処理
結果の出力先として、ウインドウ名windowのウインドウ
w2が指定されていることを認識する。
は、上述した記述の後半の部分に含まれる変数を示す識
別子“&"に基づいて、この記述によってコマンドの処理
結果の出力先として、ウインドウ名windowのウインドウ
w2が指定されていることを認識する。
【0101】この場合に、コマンド処理部216は、ま
ず、作業領域219にコマンド処理結果を一時的に保持
するためのファイルf1を確保し、このファイルf1を出力
先として指定して、システムコマンド『ls -l > f1』の
実行をオペレーティングシステム204に依頼する。次
に、コマンド処理部216は、このファイルf1に保持さ
れたシステムコマンドの実行結果をXウインドウシステ
ム201に送出し、ウインドウw2への出力を依頼する。
ず、作業領域219にコマンド処理結果を一時的に保持
するためのファイルf1を確保し、このファイルf1を出力
先として指定して、システムコマンド『ls -l > f1』の
実行をオペレーティングシステム204に依頼する。次
に、コマンド処理部216は、このファイルf1に保持さ
れたシステムコマンドの実行結果をXウインドウシステ
ム201に送出し、ウインドウw2への出力を依頼する。
【0102】このように、システムコマンドの実行を指
示する記述において、変数を示す識別子“&"を付して出
力先としてウインドウを指定し、コマンド処理部216
が、この識別子“&"に基づいて、出力先がウインドウで
あることを認識することにより、請求項8で述べた出力
先指定機能を実現し、システムコマンドの処理結果をウ
インドウに出力するためのプログラムを簡易化すること
ができる。
示する記述において、変数を示す識別子“&"を付して出
力先としてウインドウを指定し、コマンド処理部216
が、この識別子“&"に基づいて、出力先がウインドウで
あることを認識することにより、請求項8で述べた出力
先指定機能を実現し、システムコマンドの処理結果をウ
インドウに出力するためのプログラムを簡易化すること
ができる。
【0103】
【発明の効果】以上説明したように本発明は、リソース
において部品の種類および各部品間の関係を識別子を付
して示したので、この識別子を検出し、部品相互の階層
構造を解釈することにより、メニューなどの複雑なGU
Iの構造を解釈し、アプリケーションプログラムに代わ
って、ウインドウシステムに各部品の作成を依頼するこ
とが可能である。これにより、GUIの構造に関する記
述をアプリケーションプログラムから分離してリソース
とすることができ、GUIの構造の記述そのものおよび
その修正作業を大幅に簡易化することができる。これに
より、アプリケーションプログラムの負担を大幅に軽減
し、ソフトウェアの開発作業の能率を向上することがで
きる。
において部品の種類および各部品間の関係を識別子を付
して示したので、この識別子を検出し、部品相互の階層
構造を解釈することにより、メニューなどの複雑なGU
Iの構造を解釈し、アプリケーションプログラムに代わ
って、ウインドウシステムに各部品の作成を依頼するこ
とが可能である。これにより、GUIの構造に関する記
述をアプリケーションプログラムから分離してリソース
とすることができ、GUIの構造の記述そのものおよび
その修正作業を大幅に簡易化することができる。これに
より、アプリケーションプログラムの負担を大幅に軽減
し、ソフトウェアの開発作業の能率を向上することがで
きる。
【0104】また、リソースにおいて、各部品が操作さ
れた際のコールバック関数をそれぞれの処理に対応する
識別子を付して示し、本発明の会話型プログラム開発支
援システムが、この識別子に基づいて該当する処理を認
識することにより、GUIの操作に応じて、該当するコ
ールバック関数をアプリケーションプログラムに代わっ
て実行することができる。更に、アプリケーションプロ
グラムとリソースとのあいだで共通の変数を変数テーブ
ルに登録しておくことにより、本発明の会話型プログラ
ム開発支援システムが、GUIの操作に応じて、アプリ
ケーションプログラムの変数の値を操作することができ
る。
れた際のコールバック関数をそれぞれの処理に対応する
識別子を付して示し、本発明の会話型プログラム開発支
援システムが、この識別子に基づいて該当する処理を認
識することにより、GUIの操作に応じて、該当するコ
ールバック関数をアプリケーションプログラムに代わっ
て実行することができる。更に、アプリケーションプロ
グラムとリソースとのあいだで共通の変数を変数テーブ
ルに登録しておくことにより、本発明の会話型プログラ
ム開発支援システムが、GUIの操作に応じて、アプリ
ケーションプログラムの変数の値を操作することができ
る。
【0105】これにより、メッセージの表示や変数の操
作のように、比較的単純なコールバック関数の記述をア
プリケーションプログラムから分離して、リソースとす
ることができる。上述したように、これらのコールバッ
ク処理は、出現頻度が非常に高いものであるから、これ
らをリソースとして分離したことによって、アプリケー
ションプログラムの作成作業の負担を大幅に軽減するこ
とができる。
作のように、比較的単純なコールバック関数の記述をア
プリケーションプログラムから分離して、リソースとす
ることができる。上述したように、これらのコールバッ
ク処理は、出現頻度が非常に高いものであるから、これ
らをリソースとして分離したことによって、アプリケー
ションプログラムの作成作業の負担を大幅に軽減するこ
とができる。
【図1】請求項1の会話型プログラム開発支援システム
の原理ブロック図である。
の原理ブロック図である。
【図2】請求項2〜請求項8の会話型プログラム開発支
援システムの原理ブロック図である。
援システムの原理ブロック図である。
【図3】本発明の会話型プログラム開発支援システムを
適用したワークステーションの実施例構成図である。
適用したワークステーションの実施例構成図である。
【図4】GUIの例を示す図である。
【図5】構造記述リソースの例を示す図である。
【図6】GUIの例を示す図である。
【図7】GUIの例を示す図である。
【図8】GUIの例を示す図である。
【図9】GUIの例を示す図である。
【図10】GUIの例を示す図である。
【図11】GUIの例を示す図である。
【図12】従来のXウインドウシステムを適用したワー
クステーションの構成図である。
クステーションの構成図である。
101 アプリケーションプログラム 102 ウインドウシステム 103 リソースファイル 104 構造記述リソース 105 コールバック記述リソース 111,121 判定手段 112 解釈処理手段 113,123 中継手段 122 コールバック処理手段 124 変数テーブル 201 Xウインドウシステム 204 オペレーティングシステム 205 表示装置 206 キーボード 207 マウス 208 メッセージファイル 210 会話型プログラム開発支援システム(支援シス
テム) 211 イベント処理部 212 リソース管理部 213 階層解釈部 214 メッセージ処理部 215 表示制御部 216 コマンド処理部 217 変数操作部 218 変数テーブル 219 作業領域
テム) 211 イベント処理部 212 リソース管理部 213 階層解釈部 214 メッセージ処理部 215 表示制御部 216 コマンド処理部 217 変数操作部 218 変数テーブル 219 作業領域
Claims (8)
- 【請求項1】 アプリケーションプログラム(101)
からの指示に応じて、ウインドウシステム(102)が
リソースファイル(103)内の指定されたリソースに
基づいて、GUIを構成する各部品を作成する構成のコ
ンピュータシステムに適用される会話型プログラム開発
支援システムにおいて、 前記リソースファイル(103)は、複数の部品を組み
合わせたGUIのそれぞれに対応し、前記GUIを構成
する各部品の種類および部品間の関係をそれぞれ識別子
を付して記述した構造記述リソース(104)を備え、 前記会話型プログラム開発支援システムは、 前記アプリケーションプログラム(101)からGUI
作成の依頼を受けて、前記リソースファイル(103)
内の該当するリソースを参照し、前記識別子の有無に基
づいて、このリソースが前記構造記述リソース(10
4)であるか否かを判定する判定手段(111)と、 構造記述リソース(104)である旨の判定結果に応じ
て、前記構造記述リソース(104)に含まれる識別子
で示された記述に基づいて、該当するGUIを構成する
各部品の種類および部品相互間の関係を解釈し、この解
釈結果に従って、各部品の作成処理をウインドウシステ
ム(102)にそれぞれ依頼する解釈処理手段(11
2)と、 構造記述リソース(104)でない旨の判定結果に応じ
て、前記GUI作成の依頼をウインドウシステム(10
2)に中継する中継手段(113)とを備えたことを特
徴とする会話型プログラム開発支援システム。 - 【請求項2】 アプリケーションプログラム(101)
からの指示に応じて、ウインドウシステム(102)が
リソースファイル(103)内の指定されたリソースに
基づいて、GUIを構成する各部品を作成する構成のコ
ンピュータシステムに適用される会話型プログラム開発
支援システムにおいて、 前記リソースファイル(103)は、対応する部品自体
に関する情報とともに前記部品が操作されたときに実行
すべきコールバック処理に関する情報をその処理に対応
する識別子を付して示した記述を含むコールバック記述
リソース(105)を備え、 前記会話型プログラム開発支援システムは、 前記ウインドウシステム(102)からGUIが操作さ
れた旨の通知を受けて、前記リソースファイル(10
3)内の該当するリソースを参照し、前記処理に対応す
る識別子の有無に基づいて、前記該当するリソースがコ
ールバック記述リソース(105)であるか否かを判定
する判定手段(121)と、 コールバック記述リソース(105)である旨の判定結
果に応じて、前記コールバック記述リソース(105)
に含まれている前記識別子で示された記述に従って、コ
ールバック処理を実行するコールバック処理手段(12
2)と、 コールバック記述リソース(105)でない旨の判定結
果に応じて、前記ウインドウシステム(102)からの
通知をアプリケーションプログラム(101)に中継す
る中継手段(123)とを備えたことを特徴とする会話
型プログラム開発支援システム。 - 【請求項3】 請求項2に記載の会話型プログラム開発
支援システムにおいて、 コールバック記述リソース(105)は、コールバック
関数を示す記述として、所定の識別子とメッセージの格
納場所を示す情報とを含んだ構成であり、 判定手段(121)は、前記所定の識別子の有無に基づ
いて、リソースの判別を行う構成であり、 コールバック処理手段(122)は、コールバック記述
リソース(105)内のコールバック関数の記述で示さ
れる格納場所からメッセージを読み出して、ウインドウ
システム(102)にウインドウへの出力を依頼する構
成であることを特徴とする会話型プログラム開発支援シ
ステム。 - 【請求項4】 請求項2に記載の会話型プログラム開発
支援システムにおいて、 コールバック記述リソース(105)は、コールバック
関数を示す記述として、所定の識別子とメニューの表示
を制御するコマンドとメニューに対応するリソースを示
す情報とを含んだ構成であり、 判定手段(121)は、前記所定の識別子の有無に基づ
いて、リソースの判別を行う構成であり、 コールバック処理手段(122)は、コールバック記述
リソース(105)内のコールバック関数の記述で示さ
れるリソースを指定して、前記コマンドで示される処理
の実行をウインドウシステム(102)に依頼する構成
であることを特徴とする会話型プログラム開発支援シス
テム。 - 【請求項5】 請求項2に記載の会話型プログラム開発
支援システムにおいて、 コールバック記述リソース(105)は、コールバック
関数を示す記述として、所定の識別子とシステムコマン
ドを示す情報とを含んだ構成であり、 判定手段(121)は、前記所定の識別子の有無に基づ
いて、リソースの判別を行う構成であり、 コールバック処理手段(122)は、コールバック記述
リソース(105)内のコールバック関数の記述で示さ
れるシステムコマンドの実行を直接にオペレーティング
システムに依頼する構成であることを特徴とする会話型
プログラム開発支援システム。 - 【請求項6】 請求項2に記載の会話型プログラム開発
支援システムにおいて、 コールバック記述リソース(105)は、コールバック
関数を示す記述として、所定の識別子と変数の操作に関
する情報とを含んだ構成であり、 判定手段(121)は、前記所定の識別子の有無に基づ
いて、リソースの判別を行う構成であり、 コールバック処理手段(122)は、前記コールバック
記述リソース(105)に対応するGUIの状態に応じ
て、前記コールバック記述リソース(105)内のコー
ルバック関数の記述で示される変数の操作処理を実行す
る構成であることを特徴とする会話型プログラム開発支
援システム。 - 【請求項7】 請求項6に記載の会話型プログラム開発
支援システムにおいて、 前記会話型プログラム開発支援システムは、コールバッ
ク記述リソース(105)において操作される変数の少
なくとも1部について、アプリケーションプログラム
(101)におけるアドレスをそれぞれ格納する変数テ
ーブル(124)を備え、 コールバック処理手段(122)は、前記コールバック
記述リソース(105)に対応するGUIの状態に応じ
て、前記コールバック記述リソース(105)内のコー
ルバック関数の記述で示される変数の操作処理を実行す
るとともに、前記変数テーブル(124)から該当する
アドレスを得て、前記アプリケーションプログラム(1
01)内の変数の値を操作する構成であることを特徴と
する会話型プログラム開発支援システム。 - 【請求項8】 請求項5に記載の会話型プログラム開発
支援システムにおいて、 コールバック記述リソース(105)は、システムコマ
ンドの処理結果の出力先を特定する出力先情報を含んだ
構成であり、 コールバック処理手段(122)は、前記システムコマ
ンドの処理結果を受け取って、前記コールバック記述リ
ソース(105)内の出力先情報で特定された出力先を
指定して、ウインドウシステム(102)に前記処理結
果の出力を依頼する構成であることを特徴とする会話型
プログラム開発支援システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6010921A JPH07219753A (ja) | 1994-02-02 | 1994-02-02 | 会話型プログラム開発支援システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6010921A JPH07219753A (ja) | 1994-02-02 | 1994-02-02 | 会話型プログラム開発支援システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07219753A true JPH07219753A (ja) | 1995-08-18 |
Family
ID=11763718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6010921A Withdrawn JPH07219753A (ja) | 1994-02-02 | 1994-02-02 | 会話型プログラム開発支援システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07219753A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6075529A (en) * | 1997-02-14 | 2000-06-13 | Nec Corporation | GUI automatic generating system for inputting data of a manufacturing process |
JP2001306309A (ja) * | 2000-04-17 | 2001-11-02 | Internatl Business Mach Corp <Ibm> | 入力装置、インタフェース作成システム、データ処理方法、記憶媒体及びプログラム伝送装置 |
JP2002055818A (ja) * | 2000-08-10 | 2002-02-20 | N K Ekusa:Kk | アプリケーション構築方法及び実行方法並びにアプリケーション構築装置及びアプリケーション実行システム並びにアプリケーション構築方法を記録した記録媒体及びアプリケーション実行方法を記録した記録媒体 |
JP2007249418A (ja) * | 2006-03-14 | 2007-09-27 | Sony Corp | 情報処理装置およびその起動方法 |
JP2008276585A (ja) * | 2007-05-01 | 2008-11-13 | Nippon Syst Wear Kk | 組込み装置、その開発システム、開発プログラム、データの転送方法およびデータ構造 |
-
1994
- 1994-02-02 JP JP6010921A patent/JPH07219753A/ja not_active Withdrawn
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6075529A (en) * | 1997-02-14 | 2000-06-13 | Nec Corporation | GUI automatic generating system for inputting data of a manufacturing process |
JP2001306309A (ja) * | 2000-04-17 | 2001-11-02 | Internatl Business Mach Corp <Ibm> | 入力装置、インタフェース作成システム、データ処理方法、記憶媒体及びプログラム伝送装置 |
JP2002055818A (ja) * | 2000-08-10 | 2002-02-20 | N K Ekusa:Kk | アプリケーション構築方法及び実行方法並びにアプリケーション構築装置及びアプリケーション実行システム並びにアプリケーション構築方法を記録した記録媒体及びアプリケーション実行方法を記録した記録媒体 |
JP2007249418A (ja) * | 2006-03-14 | 2007-09-27 | Sony Corp | 情報処理装置およびその起動方法 |
US7913072B2 (en) | 2006-03-14 | 2011-03-22 | Sony Corporation | Information-processing apparatus and activation method thereof |
JP2008276585A (ja) * | 2007-05-01 | 2008-11-13 | Nippon Syst Wear Kk | 組込み装置、その開発システム、開発プログラム、データの転送方法およびデータ構造 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hayes et al. | Design alternatives for user interface management sytems based on experience with cousin | |
US8504930B1 (en) | User interface substitution | |
JP2006092570A (ja) | プログラムを構成するためのシステム及び方法 | |
JPH08137646A (ja) | ダイアログ・ボックスの表示方法及びシステム | |
JP2008009712A (ja) | パラメータの入力を受け付ける方法 | |
JPH05233690A (ja) | オブジェクトネットワークによる言語処理システム | |
JPH07219753A (ja) | 会話型プログラム開発支援システム | |
JPH09231061A (ja) | プログラミング支援装置および方法 | |
JPH10289084A (ja) | 情報処理装置および読み出し専用の記憶媒体 | |
JP3031624B2 (ja) | マンマシンインタフェース処理装置 | |
JPH05216641A (ja) | グラフィカル・ユーザ・インタフェース制御プログラム生成装置 | |
JP3288939B2 (ja) | 画面遷移制御装置 | |
JPH11237978A (ja) | グラフィカル・ユーザインタフェース作成装置及び方法並びにその制御プログラムを記憶した媒体 | |
JP3770660B2 (ja) | マルチタスクオペレーティングシステムのキュー表示方法およびデバッグ装置 | |
JPH10222356A (ja) | アプリケーション作成装置及びアプリケーション作成方法 | |
JPH06202863A (ja) | Guiアプリケーションプログラムの設計支援システム | |
JP3647888B2 (ja) | ユーザインタフェース処理システム | |
JPH07306776A (ja) | ビジュアルプログラミング方法 | |
JP2003050698A (ja) | 画面構築システムおよび方法。 | |
JPH02263227A (ja) | 表示制御装置 | |
JP3168762B2 (ja) | 対話処理システム | |
JPH08335178A (ja) | 情報処理方法及びその装置 | |
JPH07175619A (ja) | 対話型データ入力システム | |
JPH0651932A (ja) | ウインドウシステム | |
JPH04141760A (ja) | 会話型システム設計方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20010403 |