共通デスクトップ環境 プログラマ概要

デスクトップ・メッセージ・セット

ToolTalk メッセージ・サービスは次のようなメッセージ・セットをサポートします。

デスクトップの処理

デスクトップ要求の処理は、メッセージング統合の中で最も基本的なものです。ToolTalk メッセージを送信するアプリケーションは、tt_message_send() または DtActionInvoke() のいずれを呼び出す場合も、デスクトップ要求を処理します。これによって、アプリケーションの現在のディレクトリ、アイコンの状態、$DISPLAY などを他のアプリケーションが設定または照会できます。詳細は、ttdt_open()ttdt_session_join()ttdt_session_quit()ttdt_close() のマニュアル・ページを参照してください。

デスクトップの送信

アプリケーションを ttsession で起動し、ToolTalk 要求を処理するようにすると、このアプリケーションは要求送信者ではなく ttsession の子になります。アプリケーションは通常、送信者と同じ X の表示セッションで起動されますが、同じ X11 画面または同じ現在のディレクトリ・コンテキストにある必要はありません。アプリケーションがサーバ・プロセスとして実装された場合、すでに特定の画面または特定のディレクトリ・コンテキストに表示されています。

デスクトップ要求を使用すると、アプリケーションの操作は、デスクトップ以外でコマンド行の起動で継承される送信者の属性から継承できます。このようにデスクトップ・メッセージ・セットを使用し、ハンドラのロケール、現在の作業ディレクトリ、$DISPLAY をリセットしてください。これにより、入念にコード化された受信アプリケーションが送信者として同じ X11 画面に表示されます。要求ハンドラは要求送信者の現在のディレクトリとウィンドウのジオメトリを見つけることもできます。ウィンドウのジオメトリを知っていると、要求ハンドラのウィンドウが要求送信者のウィンドウをできる限り隠さないようにできます。詳細は、ttdt_sender_imprint_on() のマニュアル・ページを参照してください。

メディアの処理

ToolTalk メッセージ・サービスは、エディタが処理するメディアの型に対する標準メディア要求を、処理しやすくします。詳細は次のマニュアル・ページを参照してください。

ttmedia_ptype_declare()ttdt_message_accept()ttmedia_load_reply()ttmedia_Deposit()

メディアの送信

ToolTalk メッセージ・サービスは、コンテナのメディア要求送信と、ハンドラが返す一連のドキュメントの管理を容易にします。コンテナがメディア・ハンドラで 実行中の ToolTalk ダイアログを処理していない場合は、ToolTalk API を直接使用するのではなく、アクション API を使用してください。相当するアクション ([開く] と [印刷]) は、ToolTalk および ToolTalk 以外が検知するメディア・ハンドラと同等のハンドラをサポートする上位の概念を示します。詳細は、ttmedia_load() および ttdt_subcontract_manage() のマニュアル・ページを参照してください。ほとんどの場合、コンテナ・アプリケーションは ttmedia_load() ではなく DtActionInvoke() を使用してオブジェクトのオペレーションを実行するので注意してください。アクションによって ToolTalk アプリケーションを起動する方法の詳細は、『ToolTalk メッセージの概要』を参照してください。

デスクトップ・ファイル

ToolTalk メッセージ・サービスは、ファイルに関するデスクトップのメッセージを送受信しやすくします。これらのメッセージにより、アプリケーションがファイルへのアクセスを調整できるようになります。詳細は次のマニュアル・ページを参照してください。

ttdt_file_join()ttdt_file_quit()ttdt_file_event()ttdt_Get_Modified()ttdt_Save()ttdt_Revert()

ToolTalk メッセージ・サービスをすでに使用しているアプリケーションの例は、共通デスクトップ環境のアイコン・エディタ、メール・プログラム、テキスト・エディタ、カレンダなどです。共通デスクトップ環境の他の部分では、メッセージを送信するアクションを定義することにより、ToolTalk メッセージ・サービスを間接的に使用しています。