用户可以使用其弹出式菜单和在子面板中的"安装图标"控制,定制"前面板"。
本章介绍通过创建和编辑配置文件来定制"前面板"的内容。
关于"前面板"控制和配置的参考信息,请参阅 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
Top)并指定它为 POSITION_HINTS
5,个人控制将碰撞内置控制和所有其它控制,使其向右移动一个位置 而具有了更高位置号。
通过创建新系统范围版本或个人版本来修改控制时,必须指定新的控制定义具有相同 的控制名称,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 name { KEYWORD value KEYWORDvalue ... }
一些关键字是必需的,另一些只供选用。关于进一步信息,请参阅 dtfpfile(4X) 的手册页。
PANEL 是顶层组件。它的定义包含:
前面板名称
描述整个"前面板"一般外观和性能的字段
PANEL front_panel_name { KEYWORD value KEYWORD value ... }
front_panel_name 是"前面板"的唯一名称。 缺省的名称为"前面板"。
BOX 定义描述:
BOX 名称
PANEL 中的框的位置 (POSITION_HINTS)
描述用于整个框的外观和特性的字段
BOX box_name { CONTAINER_NAME front_panel_name POSITION_HINTS position KEYWORD value KEYWORD value ... }
CONTROL 定义描述:
CONTROL 名称
CONTROL 在 BOX 中的位置 (POSITION_HINTS)
描述控制的外观和性能的字段
CONTROL control_name { CONTAINER_TYPE BOX or SUBPANEL or SWITCH CONTAINER_NAME box_name or subpanel_name or switch_name TYPE control_type POSITION_HINTS position KEYWORD value KEYWORD value ... }
SUBPANEL 定义描述:
SUBPANEL 名称
描述子面板的外观和性能的字段
SUBPANEL subpanel_name { CONTAINER_NAME control_name KEYWORD value KEYWORD value ... }
SWITCH 定义描述:
SWITCH 名称
SWITCH 在 BOX 中的位置 (POSITION_HINTS)
描述 SWITCH 的外观和性能的字段
SWITCH switch_name { CONTAINER_NAME box_name POSITION_HINTS position KEYWORD value KEYWORD value ... }
"主面板"是"前面板"窗口,不包括子面板。
可进行的修改包括:
添加或去除控制
交换控制的位置
创建前面板配置文件:
系统范围:/etc/dt/appconfig/types/language/*.fp
个人: HomeDirectory/.dt/types/*.fp
在文件中定义控制。
使用 CONTAINER_NAME 和 CONTAINER_TYPE 字段指定来控制的容器:
CONTAINER_NAME Top CONTAINER_TYPE BOX
使用 POSITION_HINTS 来指定控制的从左到右的放置。 因为定制具有高于内置控制的优先级,新的控制将"碰撞"现有控制,使其 向右移动一个位置。
保存配置文件。
创建"前面板"控制的图标。
请参阅"指定控制所用的图标"。
从"工作区"菜单选择"重新启动工作区管理器"。
例如,放置在文件/etc/dt/appconfig/types/language/audio.fp中的下列控制定义,在"时钟" 和"日历"控制之间插入音频应用程序控制。
CONTROL AudioApplication { TYPE icon CONTAINER_NAME Top CONTAINER_TYPE BOX ICON AudioApp POSITION_HINTS 2 PUSH_ACTION StartAudioApplication PUSH_RECALL true }
创建"前面板"配置文件:
系统范围:/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 ...the rest of the control definition }
CONTROL Help { POSITION_HINTS 5 LOCKED True ...the rest of the control definition }
创建另一个控制定义,用相同的:
/etc/dt/appconfig/types/C/SysControls.fp 中的定义:
Control ImportantApplication { CONTAINER_NAME Top CONTAINER_TYP 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 和 pm)的文件名后缀。例如,如果文件名为 MyGame.l.pm 和 MyGame.m.pm, 则使用 MyGame。
如果使用基本文件名,图标文件必须放置在图标搜索路径的目录中:
个人的图标: HomeDirectory/.dt/icons
系统范围的图标:/etc/dt/appconfig/icons/language
图标文件的绝对路径,包括全文件名。
只有在图标文件不在图标搜索路径中的情况下,才应使用绝对路径。
所需的大小图标取决于控制的位置:
位置大小
主面板-48 乘 48 象素(name.l.pm 或 name.l.bm)
子面板-24 乘 24 象素(name.s.pm 或 name.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 value KEYWORD value ... }
保存新的配置文件。
从"工作区"菜单中选择"重新启动工作区管理器"。
可修改内置子面板的一般属性(如标题之类)和内容。
创建新的"前面板"配置文件:
系统范围的:/etc/dt/appconfig/types/language/name.fp
个人的:HomeDirectory/.dt/types/name.fp.
将整个缺省 SUBPANEL 定义,从 /usr/dt/appconfig/types/language/dtwm.fp 复制到新的文件中:
SUBPANEL subpanel_name { ... }
修改子面板定义。
保存新的配置文件。
从"工作区"菜单中选择"重新启动工作区管理器"。
例如,放置在文件 /users/janice/.dt/types/PerApps.fp 的下列定义, 会更改"个人应用程序"子面板的名称:
SUBPANEL PersAppsSubpanel { CONTAINER_NAME TextEditor TITLE Janice's Applications }
创建"前面板"配置文件 /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 False
用户选择控制时,除非用户从子面板的原始位置将其移动,否则子面板的缺省 特性是关闭。
可配置"前面板"以保持子面板的打开状态,直到用户明确地关闭它们。
在下列位置创建"前面板"配置文件:
系统范围的:/etc/dt/appconfig/types/language/*.fp
个人的:HomeDirectory/.dt/types/*.fp
将缺省的 PANEL 定义从 /usr/dt/appconfig/types/language/dtwm.fp 复制到新的文件:
PANEL FrontPanel { ... }
向 PANEL 定义中添加下列字段:
SUBPANEL_UNPOST False
保存新的配置文件。
从"工作区"菜单中选择"重新启动工作区管理器"。
用户可通过在"安装图标"控制上放置图标来创建个人控制。
虽然这样可提供简捷的可定制性,但所提供的功能却是"前面板"控制的功能的子集。例如,使用"安装图标"控制所创建的控制无法:
提供动画
显示客户窗口
在事件发生时(例如,在收到新的邮件时)更改外观
本节描述如何手动地创建"前面板"控制。
关于"前面板"控制的语法参考信息,请参阅 dtfpfile(4X) 的手册页。
"前面板"控制定义的结构是:
CONTROL control_name { TYPE control_type CONTAINER_NAME value CONTAINER_TYPE value other fields defining appearance and behavior }
控制特性
用户单击控制或在其上放置文件时,它将运行指定的动作。
忙灯。调用动作时,该控制闪烁(切换图象)
"前面板"中的客户窗口。
时钟。
显示当前日期。
本节描述定义控制的一般步骤,以及如何创建各种类型的控制。
如果控制具有 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 "Choose this control to play Ball." }
下面的控制将位于 switch(开关)的左上角。它启动名为 CutDisp 的动作。
CONTROL StartCutDisp { TYPE icon CONTAINER_NAME Switch CONTAINER_TYPE SWITCH POSITION_HINTS first ICON cutdisp HELP_STRING "Choose this control to run 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 "This control displays Ellen's phone list." 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 将该文件传输到系统上。这个控制放置在"个人应用程序" 子面板的顶层。
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。如果该进程已在运行, 则将窗口移动到当前工作区窗口 stack(堆栈)的顶部。
使用这些字段定义控制的性能:
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乘 20 象素的负荷监测器。
CONTROL LoadMeter { TYPE client CONTAINER_NAME Top CONTAINER_TYPE BOX CLIENT_NAME xload CLIENT_GEOMETRY 30x20 }
如果未保存客户程序,未在会话之间恢复它,您可能想配置控制,以便当用户单击它时启动客户程序。 例如,可以通过向定义中添加下列行,来配置 "负荷监测器"控制,以便启动 xload:
PUSH_ACTION StartXload
并创建动作:
ACTION StartXload { WINDOW_TYPE NO_STDIO EXEC_STRING /usr/contrib/bin/X11/xload }
可附加动画序列,它将在用户选中控制时或在其上放置对象时使用。
为了具有动画序列,控制必须:
为类型 图标
具有 PUSH_ACTION 或 DROP_ACTION
ANIMATION animation_name { icon_image [delay] icon_image [delay] ... }
其中 icon1、icon 2 等等为图标的名称,而 milisecond_delay 是动画图标之间的以毫秒为单位的时间延迟。缺省的时间 延迟为二百毫秒。
在控制定义中添加 PUSH_ANIMATION 和/或 DROP_ANIMATION 字段。该值是 ANIMATION 序列的名称。
例如,下列行动画了启动 BestEditor 应用程序的控制。图标间的时间延迟为三百毫秒。该示例假定已创建了图 标文件 框架 1、框架 2等等。
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 中创建新的"前面板"配置文件。
将缺省的PANEL 描述从 /usr/dt/appconfig/types/language/dtwm.fp 复制到新文件中。
编辑 PANEL 描述。
新的 PANEL 描述具有高于缺省描述的优先级。
例如,下列面板在右上角。
PANEL SpecialFrontPanel { PANEL_GEOMETRY -1+1 ... }
使用在 PANEL 定义中的 CONTROL_BEHAVIOR 字段来指定用户如何运行控制的 PUSH_ACTION 。该字段的值是:
单击-用户单击控制来运行 PUSH_ACTION
双击-用户双击控制来运行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 first ... }
为中间和底部的列添加框定义:
BOX NewFrontPanelMiddle { CONTAINER_NAME NewFrontPanel POSITION_HINTS second }
BOX NewFrontPanelBottom { CONTAINER_NAME NewFrontPanel POSITION_HINT second }
将下列控制的 CONTAINER_NAME 改为 NewFrontPanelTop:
时钟
日期
起始
文本编辑器
邮寄
将下列控制的 CONTAINER_NAME 改为 NewFrontPanelBottom:
打印机
式样
应用程序
帮助
垃圾篓
将该开关的 CONTAINER_NAME 改为 NewFrontPanelMiddle.
从"工作区"菜单中选择"重新启动工作区管理器"。