Solaris 共通デスクトップ環境 プログラマーズ・ガイド

完全に統合された印刷アクション

印刷アクションは、登録パッケージの一部分であり、構成ファイル app_root/dt/appconfig/types/<language>/name.dt の中で提供されます。

印刷アクションが、「デスクトップ印刷環境変数」で示した 4 つの環境変数を参照するプログラムを実行する場合には、データ型は完全に統合されています。印刷アクションは、アプリケーションのデータ型に応じて書かなければならず、1 つのファイルだけを受け入れなければなりません。

たとえば、次の印刷アクションは、ThisAppData という名前のデータ型に固有です。

ACTION Print 
{
 	ARG_TYPE			ThisAppData
 	EXEC_STRING		print_command -file %(file)Arg_1% 
}

アプリケーションが ToolTalk の印刷要求を処理する場合には、印刷アクションは、次のアクションの変形で送ることができます。(4 つの環境変数のどれかが設定されていない場合には、対応するメッセージ引き数はヌルになります。メッセージ引き数がヌルのときのデフォルトの解釈については、「デスクトップ印刷環境変数」を参照してください。)

ACTION Print 
{
 	ARG_TYPE				ThisAppData
 	ARG_CLASS			FILE
 	ARG_COUNT			1
 	TYPE					TT_MSG
 	TT_CLASS				TT_REQUEST
 	TT_SCOPE				TT_SESSION
   TT_OPERATION		Print
 	TT_FILE				%Arg_1%
 	TT_ARG0_				MODE	TT_IN
 	TT_ARG0_				VTYPE	%Arg_1%
 	TT_ARG1_				MODE	TT_IN
 	TT_ARG1_				VTYPE	LPDEST
 	TT_ARG1_VALUE		$LPDEST
 	TT_ARG2_MODE		TT_IN
 	TT_ARG2_VTYPE		DTPRINTUSERFILENAME
 	TT_ARG2_VALUE		$DTPRINTUSERFILENAME
 	TT_ARG3_MODE		TT_IN
 	TT_ARG3_VTYPE		DTPRINTSILENT
   TT_ARG3_VALUE		$DTPRINTSILENT
 	TT_ARG4_MODE		TT_IN 
   TT_ARG4_VTYPE		DTPRINTFILEREMOVE
 	TT_ARG4_VALUE		$DTPRINTFILEREMOVE 
} 

ACTION Print 
{
 	ARG_TYPE					      ThisAppData
 	ARG_CLASS					   BUFFER
 	ARG_COUNT		   			1
 	TYPE				         	TT_MSG
 	TT_CLASS				      	TT_REQUEST
 	TT_SCOPE				      	TT_SESSION
 	TT_OPERATION					Print
 	TT_ARG0_MODE					TT_IN
 	TT_ARG0_VTYPE					%Arg_1%
 	TT_ARG0_VALUE					%Arg_1%
 	TT_ARG1_MODE					TT_IN
 	TT_ARG1_VTYPE					LPDEST
 	TT_ARG1_VALUE					$LPDEST
 	TT_ARG2_MODE					TT_IN
 	TT_ARG2_VTYPE					DTPRINTUSERFILENAME
 	TT_ARG2_VALUE					$DTPRINTUSERFILENAME
 	TT_ARG3_MODE					TT_IN
 	TT_ARG3_VTYPE					DTPRINTSILENT
 	TT_ARG3_VALUE					$DTPRINTSILENT
 	TT_ARG4_MODE					TT_IN
 	TT_ARG4_VTYPE					DTPRINTFILEREMOVE
 	TT_ARG4_VALUE					false 
}