使用者可以使用其即現式功能表與子面板中的「安裝圖像」控制來自訂「前方面板」。
本章涵蓋藉由建立與編輯配置檔案來自訂「前方面板」。
有關「前方面板」控制與配置的參考資訊,請參閱 dtfpfile(4X) 線上援助頁。
有關「工作區管理者」的參考資訊,請參閱 dtwm(1) 與 dtwmrc(4) 線上援助頁。
「前方面板」定義於配置檔案的資料庫中。
配置檔案提供自訂「前方面板」的方法。特定的修改只可藉由編輯配置檔案來完成,包括:
增加新的控制位置至「主面板」。
增加特殊類型的控制,例如客戶機視窗。
變更特定的內定行為-例如,「前方面板」控制是要回應按一下或連按兩下。
如果要提供配置面板的最大彈性,這些檔案可以是個人的、整個系統的或是位於其它系統上的。
「前方面板」是由「工作區管理者」所建立與管理的。
內定「前方面板」定義於「前方面板」配置檔案/usr/dt/appconfig/types/language/dtwm.fp 中。
不應改變此檔案。
「前方面板」定義可以分配於任何數目的位於區域或遠程系統上的檔案之間。
檔案名稱必須以 .fp 結尾;例如,mail.fp.
檔案必須位於動作資料庫搜尋路徑沿途。
內定動作資料庫搜尋路徑包括這些以如下順序搜尋的目錄:
個人自訂-HomeDirectory/.dt/types
整個系統的自訂-/etc/dt/appconfig/types/language
內建面板與控制-/usr/dt/appconfig/types/language
另外的目錄 HomeDirectory/.dt/types/fp_dynamic 是用於以使用者介面製作的個人自訂。請勿使用此目錄於人工自訂。
動作資料庫搜尋路徑可包括增加以配置網路系統的其它目錄。特別是當配置系統以存取應用程式伺服器時,會增加其它的遠程位置。有關更多的資訊,請參閱 "資料庫(動作/資料類型)搜尋路徑"。
「前方面板」是由所有位於動作資料庫搜尋路徑上的配置檔案所組合的。
在定義的元件之間有衝突之處,優先順序規則會決定使用何種定義。當兩種元件有以下情況時會彼此衝突:
有相同的控制名稱,CONTAINER_NAME, 與 CONTAINER_TYPE。
爭相同的位置(藉由有不同的名稱但相同的 CONTAINER_NAME、CONTAINER_TYPE 與 POSITION_HINTS)。
「前方面板」使用下列的優先順序規則:
如果元件有相同的控制名稱以及儲存區名稱與類型,則使用先讀取的元件。
例如,如果整個系統與內建的控制都包含這些欄位,但其它部分不同時:
CONTROL TextEditor
{
CONTAINER_TYPE BOX
CONTAINER_NAME TOP
...
}
那麼整個系統的控制就會有優先順序。
如果兩個元件爭相同的位置,則以讀取的順序來放置。
例如,如果使用者建立「主面板」(CONTAINER_TYPE BOX與 CONTAINER_NAME 頂端)的新個人控制並指派它 POSITION_HINTS5,個人控制將會把內建控制與所有其它具有較高位置編號的控制往右推一個位置。
當您正藉由建立新的整個系統或其個人版本來修改控制時,新的控制定義必須指定相同的控制名稱,CONTAINER_NAME 與 CONTAINER_TYPE。否則,除了現存控制外將會出現新的控制。
當使用者使用「安裝圖像」控制與即現式功能表來自訂「前方面板」時,檔案會寫入至目錄 HomeDirectory/.dt/types/fp_dynamic。
「前方面板」建立另外的檔案 HomeDirectory/.dt/sessions/dtwmfp.session,它是用以儲存與回復每個階段作業的自訂「前方面板」的狀態。
使用者可以使用即現式功能表與「前方面板」控制的「安裝圖像」控制來擴展自訂「前方面板」。
本節描述如何:
防止特定的個人自訂。例如,您可能想要讓使用者不能刪除控制。
還原個人自訂。例如,使用者可能會要求您回復意外刪除的單一控制。
如果控制是內建的控制,請從 /usr/dt/appconfig/types/language/dtwm.fp 複製其定義至 /etc/dt/appconfig/types/language/name.fp。
將下行增加至控制定義:
LOCKED True
Desktop_Tools 應用程式群組中的「回復前方面板」動作刪除了所有以使用者介面作的「前方面板」自訂。使用者可以使用此動作來刪除他們所有以「前方面板」的即現式功能表所作的個人自訂。
使用以下程序來回復個別控制。
在 HomeDirectory/.dt/types/fp_dynamic 目錄中,刪除在使用者刪除控制時所建立的檔案。控制將會有與被刪除的原始控制相同的名稱。
例如,如果使用者刪除「圖像編輯器」控制, fp_dynamic 目錄中的檔案將會包含:
CONTROL IconEditor
{
...
DELETE True
}
當使用者刪除子面板時,會為子面板及子面板中的每個控制建立個別的動態檔案。
「前方面板」是藉由組合其元件的定義所建立的。這些元件每個都需要有定義元件放在「前方面板」中何處、元件看起來像什麼以及其如何行為的語法。

「前方面板」是由外向內組合的:
「前方面板」中每個元件都使用此語法分別定義:
COMPONENT 名稱
{
KEYWORD 值
KEYWORD 值
...
}
有些關鍵字是需要的,其它則是選擇性的。有關更多的資訊,請參閱 dtfpfile(4X) 線上援助頁。
PANEL(面板) 是頂層的元件。其定義包括:
「前方面板」名稱
描述整個「前方面板」的一般外觀與行為的欄位
PANEL front_panel_name
{
KEYWORD 值
KEYWORD 值
...
}
front_panel_name 是「前方面板」的唯一名稱。內定名稱為 "FrontPanel."
A BOX(方框) 定義描述:
BOX(方框) 名稱
PANEL(面板)(POSITION_HINTS) 中方框的位置
應用至整個方框的描述外觀與行為的欄位
BOX box_name
{
CONTAINER_NAME front_panel_name
POSITION_HINTS 位置
KEYWORD 值
KEYWORD 值
...
}
CONTROL(控制) 定義描述:
The CONTROL(控制) 名稱
BOX(方框) (POSITION_HINTS)中 CONTROL(控制) 的位置。
描述控制的外觀與行為的欄位
CONTROL control_name
{
CONTAINER_TYPE BOX 或
SUBPANEL 或 SWITCH
CONTAINER_NAME box_name 或 subpanel_name 或 switch_name
TYPE control_type
POSITION_HINTS 位置 KEYWORD
值 KEYWORD 值
...
}
SUBPANEL(子面板) 定義描述:
SUBPANEL(子面板) 名稱
描述子面板特定的外觀與行為的欄位
SUBPANELsubpanel_name
{
CONTAINER_NAME control_name
KEYWORD 值
KEYWORD 值
...
}
SWITCH(開關) 定義描述:
SWITCH(開關) 名稱
BOX(方框)(POSITION_HINTS)中 SWITCH(開關) 的位置
描述 SWITCH(開關) 的外觀與行為的欄位
SWITCH switch_name
{
CONTAINER_NAME box_name
POSITION_HINTS 位置
KEYWORD 值
KEYWORD 值
...
}
「主面板」是「前方面板」視窗,除了子面板以外。

您可以作的修改包括:
增加或刪除控制
交換控制的位置
建立「前方面板」配置檔案:
整個系統的:/etc/dt/appconfig/types/language/*.fp
個人的:HomeDirectory/.dt/types/*.fp
在檔案中定義控制。
使用 CONTAINER_NAME 與 CONTAINER_TYPE 欄位來指定控制的儲存區:
CONTAINER_NAME 頂端 CONTAINER_TYPE BOX
使用 POSITION_HINTS 來指定由左到右的控制位置。既然自訂對於內建控制有優先順序,新的控制會把具有該位置的現存控制往右 "推" 一個位置。
儲存配置檔案。
建立「前方面板」控制的圖像。
請參閱 "指定由控制所使用的圖像"。
從「工作區」功能表選擇「重新啟動工作區管理者」。
例如,放在檔案 /etc/dt/appconfig/types/language/audio.fp 中的以下控制定義會插入「時鐘」與「日曆」控制之間的聲訊應用程式控制。
CONTROL AudioApplication
{
TYPE 圖像
CONTAINER_NAME 頂端
CONTAINER_TYPE BOX
ICON AudioApp
POSITION_HINTS 2
PUSH_ACTION StartAudioApplication
PUSH_RECALL 正確
}
建立「前方面板」配置檔案:
整個系統的:/etc/dt/appconfig/types/language/name.fp
個人的:HomeDirectory/.dt/types/name.fp
將您想要刪除的控制定義複製到新檔案。
如果控制是內建的,其定義是在 /usr/dt/appconfig/types/language/dtwm.fp 中。
您不需要複製整個定義。但是,您所複製的部分必須包括欄位 CONTAINER_NAME 與 CONTAINER_TYPE。
增加 DELETE(刪除) 欄位至定義:
DELETE True
儲存配置檔案
從「工作區」功能表選擇「重新啟動工作區管理者」。
例如,放在檔案 /etc/dt/appconfig/types/language/TrashCan.fp 中的以 下控制定義會從「前方面板」刪除「檔案垃圾桶」控制。
CONTROL Trash
{
CONTAINER_NAME TOP
CONTAINER_TYPE BOX
DELETE True
}
當您需要修改控制定義時,請使用此程序-例如,如果要變更其圖像影像。
從 /usr/dt/appconfig/types/language/dtwm.fp 複製整個控制定義至:
整個系統的:/etc/dt/appconfig/types/language/name.fp
個人的:HomeDirectory/.dt/types/name.fp。
編輯您想要變更的欄位。您也可以增加其它的欄位。
儲存檔案
從「工作區」功能表選擇「重新啟動工作區管理者」。
複製您想要從 /usr/dt/appconfig/types/language/dtwm.fp 變更至如下的控制的控制定義:
整個系統的:/etc/dt/appconfig/types/language/name.fp
個人的:HomeDirectory/.dt/types/name.fp。
您必須複製整個控制定義,這樣才能移動每個控制。
儲存檔案
從「工作區」功能表選擇「重新啟動工作區管理者」。
例如,放在檔案 /etc/dt/appconfig/types/C/MailHelp.fp 中的下列定義會交換「郵件」與「輔助說明管理者」的位置,並鎖定這些對於個人變更的控制。
CONTROL Mail
{
POSITION_HINTS 12
LOCKED True
其餘的控制定義
}
CONTROL Help
{
POSITION_HINTS 5
LOCKED True
其餘的控制定義
}
建立另一個控制定義,其具有相同的:
/etc/dt/appconfig/types/C/SysControls.fp 中的定義:
CONTROL ImportantApplication
{
CONTAINER_NAME TOP
CONTAINER_TYPE BOX
POSITION_HINTS 2
...
}
HomeDirectory/.dt/types/MyControls.fp 中的定義:
CONTROL ImportantApplication
{
CONTAINER_NAME TOP
CONTAINER_TYPE BOX
POSITION_HINTS 6
...
}
個人控制有優先順序,因此控制會位於位置 6。
ICON(圖像) 欄位的值可以是:
基本檔案名稱。
基本檔案名稱是包含圖像影像減去檔案名稱的大小 (m 與 t)與影像類型(bm and pm)字尾的檔案名稱。例如,如果檔案名為 MyGame.l.pm 與 MyGame.m.pm,使用 MyGame。
如果您使用基本檔案名稱,圖像檔案必須放在圖像搜尋路徑上的目錄中:
個人圖像:HomeDirectory/.dt/icons
整個系統的圖像:/etc/dt/appconfig/icons/language
到圖像檔案的絕對路徑,包括完整的檔案名稱。
唯有當圖像檔案不在圖像搜尋路徑上時才應使用絕對路徑。
您需要的大小圖像取決於控制的位置:
位置大小
主面板 - 48 乘 48 像素(名稱.l.pm 或 名稱.l.bm)
子面板 - 24 乘 24 像素(名稱.s.pm 或 名稱.s.bm)
將圖像檔案置於這些位置之一:
個人圖像:HomeDirectory/.dt/icons
整個系統的圖像:/etc/dt/appconfig/icons/language
使用者可以使用「前方面板」即現式功能表來建立與修改子面板。
本節討論如何提供整個系統的自訂,其需要您修改「前方面板」配置檔案。
子面板 "附加" 至「主面板」中的控制。

附件完成於子面板定義中。CONTAINER_NAME 欄位指定子面板附加於其中的控制:
CONTROL control_name
{
...
}
SUBPANEL subpanel_name
{
CONTAINER_NAME control_name
...
}
找出位於「主面板」中,您要附加子面板於其中的控制的 control_name。
如果控制是內建控制之一,其定義是在/usr/dt/appconfig/types/language/dtwm.fp 中。
建立新檔案 /etc/dt/appconfig/types/language/*.fp。
定義子面板:
SUBPANEL subpanel_name
{
CONTAINER_NAME control_name
TITLE 值
KEYWORD 值
...
}
儲存新的配置檔案。
從「工作區」功能表選擇「重新啟動工作區管理者」。
您可以修改內建子面板的一般屬性(例如標題)與內容。
建立新的「前方面板」配置檔案:
整個系統的:/etc/dt/appconfig/types/language/name.fp
個人的:HomeDirectory/.dt/types/name.fp。
從 /usr/dt/appconfig/types/language/dtwm.fp 將整個內定 SUBPANEL (子面板)定義複製到新檔案:
SUBPANEL subpanel_name
{
...
}
修改子面板定義。
儲存新的配置檔案。
從「工作區」功能表選擇「重新啟動工作區管理者」。
例如,以下放在檔案 /users/janice/.dt/types/PerApps.fp 中的定義變更了「個人應用程式」子面板的名稱:
SUBPANEL PersAppsSubpanel
{
CONTAINER_NAME TextEditor
TITLE Janice 的 應用程式
}
建立「前方面板」配置檔案 /etc/dt/appconfig/types/language/name.fp。
定義檔案中整個系統的控制。
使用 CONTAINER_NAME 與 CONTAINER_TYPE 欄位以指定控制的儲存區:
CONTROL control_name
{
CONTAINER_NAME subpanel_name
CONTAINER_TYPE SUBPANEL
...
}
請參閱 "定義前方面板控制"。
儲存配置檔案。
從「工作區」功能表選擇「重新啟動工作區管理者」。
例如,新檔案 /etc/dt/appconfig/types/language/DigitalClock.fp 中所定義的以下控制會將 DigitalClock(在 Desktop_Tools 應用程式群組中)增加至所有使用者的「個人應用程式」子面板。
CONTROL DigitalClockControl
{
TYPE icon
CONTAINER_NAME PerAppsSubpanel
CONTAINER_TYPE SUBPANEL
ICON Dtdgclk
PUSH_ACTION DigitalClock
PUSH_RECALL True
}
使用與刪除「主面板」控制相同的程序。請參閱 "如果要刪除控制"。
將以下欄位增加至子面板定義:
CONTROL_INSTALL Fasle
當使用者選擇控制時,子面板的內定行為是關閉,除非使用者已從其原始位置移去子面板。
可以配置「前方面板」以保持子面板開啟至使用者確實地關閉為止。
建立新的「前方面板」配置檔案於:
整個系統的:/etc/dt/appconfig/types/language/*.fp
個人的:HomeDirectory/.dt/types/*.fp
從 /usr/dt/appconfig/types/language/dtwm.fp 將內定PANEL(面板) 定義複製到新檔案:
PANEL FrontPanel
{
...
}
將以下欄位增加至 PANEL(面板) 定義:
SUBPANEL_UNPOST Fasle
儲存新的配置檔案。
從「工作區」功能表選擇「重新啟動工作區管理者」。
使用者可以藉由將圖像定位於「安裝圖像控制」上來建立個人控制。
當此動作個人控制提供簡易自訂性之時,其所提供的功能是「前方面板」控制能力的子集。例如,使用「安裝圖像控制」所建立的控制無法:
提供動畫
顯示客戶機視窗
在事件發生時(例如,在收到新郵件時)變更外觀
本節描述如何人工建立「前方面板」控制。
有關「前方面板」控制的語法的參考資訊,請參閱 dtfpfile(4X) 線上援助頁。
「前方面板」控制定義的結構為:
CONTROL control_name
{
TYPE control_type
CONTAINER_NAME 值
CONTAINER_TYPE 值
定義 外觀與行為的其它欄位
}
控制行為
當使用者按一下控制或於其上定位檔案時,控制將會執行指定的動作。
進行燈。當調用動作時,控制會閃爍(切換影像)
「前方面板」中的客戶機視窗。
時鐘。
顯示目前日期。
本節描述定義控制的一般步驟,以及描述如何建立各種類型的控制。
如果控制將會有 PUSH_ACTION 及/或 DROP_ACTION,請建立動作定義。這些是當使用者按一下控制或於其上定位檔案時所執行的動作。
建立控制的圖像影像檔案。
有關圖像大小、名稱與位置的資訊,請參閱 "圖像影像檔案"。
建立新的「前方面板」配置檔案於:
整個系統的:/etc/dt/appconfig/types/language/*.fp
個人的:HomeDirectory/.dt/types/*.fp
將控制定義增加至檔案。
儲存檔案。
從「工作區」功能表選擇「重新啟動工作區管理者」。
使用這些欄位來定義控制的行為:
TYPE(類型):設定至圖像
例如,將會放在「個人應用程式」子面板的以下控制會執行使用者已獲得的遊戲:
CONTROL Ball
{
TYPE icon
CONTAINER_NAME PersAppsSubpanel
CONTAINER_TYPE SUBPANEL
ICON ball
PUSH_ACTION RunBallGame
HELP_STRING "選擇此控制以玩球。"
}
以下控制將會位於開關的左上角。它會啟動名為 CutDisp 的動作。
CONTROL StartCutDisp
{
TYPE icon
CONTAINER_NAME Switch
CONTAINER_TYPE SWITCH
POSITION_HINTS first
ICON cutdisp
HELP_STRING "選擇此控制以執行 cutdisp。"
PUSH_ACTION CutDisp
}
使用這些欄位來定義控制的行為:
TYPE(類型): 設定至檔案
PUSH_ACTION: 設定成「開啟」
必須要有一個為檔案的資料類型定義的「開啟」動作。
例如,以下控制將會位於「主面板」的最右邊。它會啟動具有資料檔案 /users/ellen/PhoneList.txt 的「文字編輯器」。*.txt 檔案的「開啟」動作是內定動作資料庫的一部分。
CONTROL EditPhoneList
{
TYPE file
FILE_NAME /users/ellen/PhoneList.txt
CONTAINER_NAME Top
CONTAINER_TYPE BOX
POSITION_HINTS last
ICON phonebook
HELP_STRING "此控制顯示 Ellen 的 電話列表。"
PUSH_ACTION Open
}
當使用者在控制上定位檔案時,使用 DROP_ACTION 欄位來指定執行的動作。動作必須要能夠接受檔案引數。
控制定義經常同時包括 PUSH_ACTION 與 DROP_ACTION 欄位。您可以使用相同的動作於放入與定位動作。
例如,位於「個人應用程式」子面板中的以下控制執行取得檔案引數的 X 客戶機 xwud。
CONTROL Run_xwud
{
CONTAINER_NAME PerAppsSubpanel
CONTAINER_TYPE SUBPANEL
POSITION_HINTS 2
ICON XwudImage
PUSH_ACTION RunXwud
DROP_ACTION RunXwud
}
使用這些欄位來定義控制的行為:
例如,以下的控制尋找您期望使用匿名 ftp 將其傳輸至您的系統的名為 meetings(會議)的檔案。控制是放在「個人應用程式」子面板的頂端。
CONTROL MonitorCalendar
{
TYPE file
CONTAINER_NAME PersonalApps
CONTAINER_TYPE SUBPANEL
POSITION_HINTS first
FILE_NAME /users/ftp/meetings
MONITOR_TYPE file
ICON meetingsno
ALTERNATE_ICON meetingsyes
}
一個實例的控制會檢查由 PUSH_ACTION 啟動的處理是否已經執行。如果處理未執行,則執行 PUSH_ACTION。如果處理已經執行,視窗會移動至目前工作區中視窗堆疊的頂端。
使用這些欄位來定義控制的行為:
PUSH_RECALL: 設定為 「正確」。
CLIENT_NAME 的值必須符合應用程式頂層視窗上 WM_CLASS 屬性中的第一個字串 (res_name)。有關更多的資訊,請參閱 xprop(1) 線上援助頁。
PUSH_ACTION:描述使用者按一下控制時動作的執行。
例如,以下控制執行其動作名為 MyEditor 的應用程式的一個實例。
CONTROL MyEditor
{
TYPE icon
CONTAINER_NAME Top
CONTAINER_TYPE BOX
POSITION_HINTS 15
PUSH_RECALL True
CLIENT_NAME BestEditor
PUSH_ACTION StartMyEditor
ICON MyEd
}
客戶機視窗控制是內含於「前方面板」中的應用程式視窗。例如,您可以藉由建立 xload 客戶機視窗控制將系統載入表放在「前方面板」中。
定義控制。
使用這些欄位來定義控制的行為:
TYPE(類型): 設定至 客戶機。
CLIENT_NAME 的值必須符合應用程式頂層視窗上 WM_CLASS 屬性中的第一個字串(res_name)。有關更多的資訊,請參閱 xprop(1) 線上援助頁。
從「工作區」功能表選擇「重新啟動工作區管理者」。
從終端機模擬器指令行啟動客戶機。
例如,以下控制顯示 30\u00d720的像素載入表。
CONTROL LoadMeter
{
TYPE client
CONTAINER_NAME Top
CONTAINER_TYPE BOX
CLIENT_NAME xload
CLIENT_GEOMETRY 30x20
}
如果在階段作業之間未儲存與回復客戶機,您可能會想要配置控制以在使用者按一下時啟動客戶機。例如,您可以藉由將下行增加至定義來配置 LoadMeter 控制以啟動 xload:
PUSH_ACTION StartXload
以及建立動作:
ACTION StartXload
{
WINDOW_TYPE NO_STDIO
EXEC_STRING /usr/contrib/bin/X11/xload
}
當使用者選擇控制或於其上定位物件時,您可以附加要使用的動畫順序。
為了要有動畫順序,控制必須:
為類型 圖像
有 PUSH_ACTION 或 DROP_ACTION
ANIMATION animation_name
{
ANIMATION 圖像1 [milisecond_delay]
ANIMATION 圖像2 [milisecond_delay]
...
}
其中 圖像1、圖像 2 等等是圖像的名稱,而 milisecond_delay 是以毫秒計算的動畫圖像之間的時間延遲。內定時間延遲為 200 毫秒。
增加 PUSH_ANIMATION 及/或 DROP_ANIMATION 欄位至控制定義。此值為 ANIMATION(動畫) 順序的名稱。
例如,下列各行使啟動 BestEditor 應用程式的控制成為動畫。圖像之間的時間延遲是 300 毫秒。範例假定您已建立圖像檔案 frame1、frame2 等等。
CONTROL BestEditor
{
...
PUSH_ANIMATION BestEdAnimation
...
}
ANIMATION BestEdAnimation
{
frame1 300
frame2
...
}
提供控制的輔助說明有兩種方法:
在控制定義中提供輔助說明字串。
當使用者調用控制的關於項目輔助說明時,輔助說明字串會顯示於輔助說明查看器中。輔助說明字串不得包括製作格式(例如標題)或連結。
如果要提供輔助說明字串,請在控制定義中指定它:
HELP_STRING help_string
在註冊的輔助說明內容中指定輔助說明主題。
輔助說明主題是使用輔助說明系統的完整能力所著作的資訊。著作輔助說明主題主題需要您使用桌上管理系統「輔助說明設計者工具箱」。
如果要提供輔助說明主題,請指定控制定義中的輔助說明內容與主題 ID:
HELP_VOLUME help_volume_name HELP_TOPIC topic_id
自訂工作區開關的方法有數種:
變更工作區的數目
變更開關的佈局
變更開關中的控制
修改以下的「工作區管理者」來源:
Dtwm*workspaceCount: n
有關更多的資訊,請參閱 "如果要以整個系統的基礎來變更工作區的數目"。
例如,以下的定義會定義一個三列的開關。
SWITCH Switch
{
CONTAINER_NAME box_name
NUMBER_OF_ROWS 3
...
}
建立具有控制定義的「前方面板」配置檔案。
建立控制的圖像。建議的大小為 16 乘 16 像素。
例如,以下控制會將「終端機」控制放在開關中。
CONTROL SwitchTerminal
{
TYPE icon
CONTAINER_NAME Switch
CONTAINER_TYPE SWITCH
POSITION_HINTS 3
ICON Fpterm
LABEL Terminal
PUSH_ACTION Dtterm
HELP_TOPIC FPOnItemTerm
HELP_VOLUME FPanel
}
控制使用內建的圖像以及由「個人應用程式」子面板中的「終端機」控制所使用的相同輔助說明主題。
「前方面板」的 PANEL(面板) 語法允許您:
變更「前方面板」的位置
變更視窗裝飾
設定控制的一般外觀與行為
內定的 PANEL(面板) 說明是在 /usr/dt/appconfig/types/language/dtwm.fp 中。
有關其它的資訊,請參閱 dtfpfile(4X) 線上援助頁。
在 /etc/dt/appconfig/types/language 或HomeDirectory/.dt/types 中建立新的「前方面板」配置檔案。
從 /usr/dt/appconfig/types/language/dtwm.fp 將內定PANEL(面板) 說明複製到新的檔案。
編輯 PANEL(面板) 說明。
新的 PANEL(面板) 說明對於內定的面板有優先順序。
例如,以下面板在右上角。
PANEL SpecialFrontPanel
{
PANEL_GEOMETRY -1+1
...
}
增加下行至 PANEL(面板) 定義:
DISPLAY_CONTROL_LABELS True
增加 LABEL(標籤) 欄位至每個控制。
如果未指定 LABEL(標籤),則使用 control_name。
使用 LABEL(標籤) 定義中的 CONTROL_BEHAVIOR 欄位來指定使用者如何執行控制的 PUSH_ACTION。欄位的值為:
single_click-使用者按一下控制以執行 PUSH_ACTION
double_click-使用者連按兩下控制以執行 PUSH_ACTION
當您想要作大規模的變更時,建立新的「前方面板」可能會比較好。
如果要避免與內建的「前方面板」元件發生衝突,全新的「前方面板」應該使用新的名稱於 PANEL(面板) 與其它儲存區。
建立新的「前方面板」的 PANEL(面板) 元件。給它一個唯一的名稱:
PANEL front_panel_name
{
...
}
使用新的儲存區名稱來建立新的方框與控制。
如果您想要使用現存元件,您必須複製其定義並變更 CONTAINER_NAME 值。
從「工作區」功能表選擇「重新啟動工作區管理者」。
下例的範例變更了內定「前方面板」,使得其控制組織成為三列。
將 /usr/dt/appconfig/types/language/dtwm.fp 複製到 HomeDirectory/.dt/types/MyFrontPanel.fp。給予檔案寫入許可權。
此為您將要編輯以提供新的「前方面板」的檔案。
變更「前方面板」的名稱:
PANEL NewFrontPanel
變更名為Top(頂端)的方框名稱,並編輯其儲存區名稱:
BOX NewFrontPanelTop
{
CONTAINER_NAME NewFrontPanel
POSITION_HINTS 第一個
...
}
增加中間與底部各列的方框定義:
BOX NewFrontPanelMiddle
{
CONTAINER_NAME NewFrontPanel
POSITION_HINTS 第二個
}
BOX NewFrontPanelBottom
{
CONTAINER_NAME NewFrontPanel
POSITION_HINTS 第二個
}
將下列控制的 CONTAINER_NAME 變更為 NewFrontPanelTop:
時鐘
日期
主目錄
TextEditor
郵件
將下列控制的 CONTAINER_NAME 變更為 NewFrontPanelBottom:
印表機
樣式
應用程式
輔助說明
作廢
將開關的 CONTAINER_NAME 變更為 NewFrontPanelMiddle。
從「工作區」功能表選擇「重新啟動工作區管理者」。