ToolTalk ユーザーズガイド

連携機能の追加

ツールが連携できるようになる前に、.c、個々のアプリケーションの Makefile、および Xedit アプリケーションのヘッダーファイルを変更する必要があります。さらに Xfontsel アプリケーションの ToolTalk プロセス型 (ptype) を宣言するための新しいファイルを作成する必要もあります。

「vi」などの標準エディタを使い、これらを変更して ptype ファイルを作成してください。

Xedit アプリケーションの変更

Xedit アプリケーションを変更し、Xfontsel アプリケーションと通信できるようにするには、次のファイルを変更する必要があります。

Xedit は、ToolTalk デモンストレーションのために、ToolTalk ヘッダーファイルと xedit.c ファイル内の新しい ToolTalk コマンドについて知る必要があります。xedit.h ファイルでの変更方法は、例 B–1にコメントとともに示します。

次に、ToolTalk セッションを設定してフォント変更用のボタンを作成し、Xedit が ToolTalk メッセージを受信し処理できるように Xedit.c ファイルにコードを追加する必要があります。これらのファイルでの変更方法は、例 B–2にコメントとともに示されています。

commands.c ファイルにコードを追加して、フォント変更の完了時に応答を送る、または操作の異常終了時に通知するように、Xedit が Xfontsel アプリケーションに指示できるようにします。また、Xedit が何の操作を実行してほしいかを Xfontsel に知らせるコードを追加する必要もあります。これらのファイルへの変更方法は、例 B–3 にコメントとともに示されています。

Xedit プログラムへの最後の変更は、ToolTalk ライブラリを使用するように Makefile を変更します。これを行うために、次のように -ltt オプションを追加します。

 LOCAL_LIBRARIES = -ltt $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB)

Xedit ファイルに対して指示された変更を行なった後、Xedit プログラムをコンパイルします。

Xfontsel アプリケーションの変更

Xfontsel アプリケーションを変更し、Xedit アプリケーションと通信できるようにするには、次のファイルを変更する必要があります。

また、Xfontsel アプリケーション用の ToolTalk ptype を宣言するための新しいファイルを作成する必要があります。

Xfontsel は、ToolTalk デモンストレーションのために、次のことを知る必要があります。

また Xfontsel は、フォントを変更するための適用ボタンとコマンドボックスを表示する必要があります。さらに、ToolTalk コールバックメッセージをいつ送信するかと、どのように ToolTalk セッションに参加するかを Xfontsel に知らせるために、コードを追加する必要があります。例 B–4でコメントとともに示しているように、Xfontsel.c ファイルが変更されます。

次に、ToolTalk ライブラリを使用する Xfontsel プログラムの Makefile を変更します。これを行うために、次のように -ltt オプションを追加します。

 LOCAL_LIBRARIES = -ltt $(XAWLIB) $(XMULIB) $(XTOOLLIB) $(XLIB)

ToolTalk 型機構は、ToolTalk サービスのルートメッセージを助けるように設計されています。最初にプロセス型 (ptype) を定義し、次にその ptype を ToolTalk 型コンパイラの tt_type_comp でコンパイルします。ToolTalk デモンストレーションについては、次に示すように Xfontsel アプリケーション用の ptype ファイルを作成する必要があります。


注 –

directory_name は、変更された Xfontsel ファイルが入っているディレクトリへのパス名です。


ptype xfontsel {				/* Process type identifier */
	start “/directory_name/xfontsel”; /* Start string */


 handle:	 			/* Receiving process */
		/* A signature is divided
 	 * into two parts by the => as follows:
		 * Part 1 specifies how the message is to be matched;
		 * Part 2 specifies what is to be taken when
 	 	 * a match occurs.
 		 */
 session GetFontName(out string fontname) => start;


} 

ツールが ptype を宣言すると、その ptype 内で表示されたメッセージパターンが自動的に登録されます。ToolTalk は、受信するメッセージをそれらの登録されたパターンと照合します。これらの静的メッセージパターンは、そのツールが ToolTalk サービスとの通信を終了するまで有効です。

ptype ファイルを作成した後、その ptype をインストールする必要があります。これを行うために、次のように ToolTalk 型コンパイラを実行します。

 machine_name% tt_type_comp xfontsel.ptype

xfontsel.ptype は、ユーザーの ptype ファイル名です。

Xfontsel ファイルに対して指示された変更を行い、ptype ファイルを作成し、その ptype をインストール後に Xfontsel プログラムをコンパイルします。