Solaris 共通デスクトップ環境 上級ユーザ及びシステム管理者ガイド

特定の引き数へのアクションの制限

特定の型の引き数にアクションを制限すると、アクションが改良されます。たとえば、PostScript ファイル引き数に対してのみ PostScript ファイルのビューアを呼び出すようにアクションを制限すると便利です。つまり制限があると、PostScript ファイル以外を指定した場合、アクションはエラー・ダイアログを返します。

次のことに基づいてアクションを制限できます。

指定されたデータ型へのアクションの制限

ARG_TYPE フィールドを使用して、アクションが有効であるデータ型を指定します。データ属性名を使用します。

コンマでエントリを区切って、データ型のリストを入力できます。

たとえば、次のアクション定義は Gif データ型が作成されている場合の例です。

ACTION Open_Gif
 {
 	TYPE					COMMAND
 	LABEL					"Display Gif"
 	WINDOW_TYPE			NO_STDIO
 	ARG_TYPE				Gif
 	ICON					xgif
 	DESCRIPTION			Displays gif files
 	EXEC_STRING			xgif
 }

引き数の数に基づいたアクションの制限

ARG_COUNT フィールドを使用して、アクションが受け入れることができる引き数の数を指定します。有効な値は次のとおりです。

* (デフォルト) - 任意の数の引き数。その他の値は * よりも優先されます

n - 任意の負でない値 (0 を含む)

>n - n よりも大きい引き数

<n - n よりも小さい引き数

ARG_COUNT の使用方法の 1 つは、アイコンをダブルクリックするか、そのアイコンにファイルをドロップするかに応じて、異なるアクション・アイコン動作を提供することです。次の「異なるダブルクリック・アンド・ドロップ動作を提供するには」を参照してください。

異なるダブルクリック&ドロップ動作を提供するには

次の手順を使用して、ドロップされたファイルを受け取るアクションを作成しますが、アクション・アイコンをダブルクリックしてもファイルを要求しません。

  1. ダブルクリック機能のためのアクション定義を作成します。

    ARG_COUNT フィールドを使用して 0 引き数を指定します。ドロップされた引き数を受け取らない EXEC_STRING の構文を使用します。

  2. ドロップ機能のための 2 番目のアクション定義を作成します。

    ARG_COUNT フィールドを使用して >0 引き数を指定します。ドロップされたファイルを受け取る EXEC_STRING の構文を使用します。

    たとえば、次の 2 つのコマンド行は vedit という名前のエディタを起動するのに使用できるとします。

    • ファイル引き数を使用しないでエディタを起動するには、次のようにします。

          vedit
    • 読み専用ドキュメントとして開くファイル引き数でエディタを起動するには、次のようにします。

          vedit -R filename
    

次の 2 つのアクションは、Vedit という名前のアクションのためのドロップ&ダブルクリック機能を作成します。ARG_COUNT 0 は暗示的なドロップ機能定義の ARG_COUNT * よりも明確なので、データベースで一致するものを検索するときには、最初のアクションが優先されます。

# Double-click functionality
ACTION Vedit
 {
 	TYPE						COMMAND
 	ARG_COUNT				0
 	WINDOW_TYPE				PERM_TERMINAL
 	EXEC_STRING				vedit
 }

# Drop functionality
ACTION Vedit
 {
 	TYPE						COMMAND
 	WINDOW_TYPE				PERM_TERMINAL
 	EXEC_STRING				vedit -R %Arg_1%
 }

引き数のモードに基づいたアクションの制限

ARG_MODE フィールドを使用して、引き数の読み取りまたは書き込みモードを指定します。有効な値は次のとおりです。

* (デフォルト) - 任意のモード

!w - 書き込み不可

w - 書き込み可能