當使用者呼叫動作時,系統會搜尋符合動作名稱的資料庫。當一個以上的動作以該名稱存在時,系統會使用優先順序規則來決定要使用何者。
如果未應用其它的優先順序規則,優先順序以定義的位置為基礎。下表的優先順序是由高到低的順序:
個人動作(HomeDirectory /.dt/types)
整個系統的本機動作(/etc/dt/appconfig/types/language)
整個系統的遠端動作(主機名稱 :/etc/dt/appconfig/types/language)。搜尋的遠端主機就是列在應用程式搜尋路徑中的那一些。
內建動作(/usr/dt/appconfig/types/language)
在已知的目錄中,*.dt 檔案是以字母順序讀取的。
由 ARG_CLASS、ARG_TYPE、ARG_MODE 或 ARG_COUNT所限制的動作對於未受限制的動作有優先順序。(此四個欄位的預設值為 *。)
其中應用一項以上的限制,由高到低的優先順序為:
ARG_CLASS
ARG_TYPE
ARG_MODE
ARG_COUNT
其中有一項以上的受限制 ARG_COUNT 存在,由高到低的優先順序為:
特定的整數值 n
<n
>n
*
例如,試想下列部分的動作定義:
ACTION EditGraphics # EditGraphics-1 { ARG_TYPE XWD … }
ACTION EditGraphics # EditGraphics-2 { ARG_COUNT 0 … }
ACTION EditGraphics # EditGraphics-3 { ARG_TYPE * … }
連按兩下 EditGraphics 動作圖示會啟動 EditGraphics-2,因為未提供引數,而且 ARG_COUNT 0 有優先順序。當 XWD 類型的檔案引數被提供時,會使用 EditGraphics-1,因為其指定 XWD ARG_TYPE。所有其它檔案引數都使用 EditGraphics-3。