用于 Solaris 操作环境的 GNOME 2.0 桌面系统管理指南

设置单个面板和面板对象的首选项

panel-per-panel-config.schemas 架构定义文件指定桌面上面板的以下详细信息:

配置单个面板和面板对象是一项复杂的任务。要配置单个面板和面板对象,必须了解 panel-per-panel-config.schemas 架构定义文件的结构。有关 panel-per-panel-config.schemas 架构定义文件的更多信息,请参阅下一节。

要设置单个面板和面板对象的首选项,必须在配置源中设置许多首选项的值。要设置多个首选项的值,最简单的方法就是使用脚本。 有关设置面板和面板对象的首选项的示例脚本,请参阅设置单个面板首选项的示例脚本

单个面板和面板对象的架构定义文件

架构定义文件 panel-per-panel-config.schemas 包含为大、中和小屏幕指定面板和面板内容的部分。 关于小屏幕和大屏幕的部分在本指南发布时尚无法使用。要了解面板或面板对象的首选项键,请阅读只适用于中等尺寸屏幕的部分。

panel-per-panel-config.schemas 文件的中等尺寸屏幕部分的结构如下所示:

  1. 指定桌面上的面板、小程序和其他面板对象的常规结构的首选项键。以下各键指定显示在桌面上的面板数、小程序数和其他面板对象数:

    • /apps/panel/default_profiles/medium/general/panel_id_list

    • /apps/panel/default_profiles/medium/general/applet_id_list

    • /apps/panel/default_profiles/medium/general/object_id_list

    这些键还为每个面板、小程序和面板对象指定标识符。例如,panel-per-panel-config.schemas 中的以下设置指定在桌面上显示两个面板:

    <key>/schemas/apps/panel/default_profiles/medium/
    general/panel_id_list</key>
    .
    .
    .
    <default>[00000001,00000002]</default>

    panel-per-panel-config.schemas 中,标识符 00000001 标识底边面板,标识符 00000002 标识菜单面板。

  2. 指定面板属性的首选项键。面板属性键的结构如下所示:

    /apps/panel/default_profiles/medium/panels/panel_number/panel_property_key
    

    例如,/apps/panel/default_profiles/medium/panels/00000001/screen_edge 键指定底边面板所在的屏幕边缘。

    指定底边面板属性的键首先列出。 在 panel-per-panel-config.schemas 的中等尺寸屏幕部分的结尾列出了指定“菜单面板”属性的键。

  3. 列出面板对象、面板对象属性和对象所在的面板的首选项键。例如,panel-per-panel-config.schemas 中的以下设置指定了对象 00000001:

    <key>/schemas/apps/panel/default_profiles/medium/
    objects/00000001/object_type</key>
    .
    .
    .
    <default>launcher-object</default>
    .
    .
    .
    <key>/schemas/apps/panel/default_profiles/medium/
    objects/00000001/launcher_location</key>
    .
    .
    .
    <default>applications:///nautilus.desktop</default>
    .
    .
    .
    <key>/schemas/apps/panel/default_profiles/medium/
    objects/00000001/panel_id</key>
    .
    .
    .
    <default>00000002</default>

    该对象是启动 Nautilus 文件管理器的启动程序。该启动程序位于菜单面板中。

  4. 列出小程序、小程序首选项和小程序所在的面板的首选项键。例如,panel-per-panel-config.schemas 中的以下设置指定了小程序 00000001:

    <key>/schemas/apps/panel/default_profiles/medium/
    applets/00000001/object_type</key>
    .
    .
    .
    <default>bonobo-applet</default>
    .
    .
    .
    <key>/schemas/apps/panel/default_profiles/medium/
    applets/00000001/panel_id</key>
    .
    .
    .
    <default>00000001</default>
    .
    .
    .
    <key>/schemas/apps/panel/default_profiles/medium/
    applets/00000001/bonobo_iid</key>
    .
    .
    .
    <default>OAFIID:GNOME_TasklistApplet</default>

    该小程序是 Window List 小程序。 它位于底边面板中。

设置单个面板首选项的示例脚本

本节包含一个示例脚本,此脚本为具有以下主要特性的面板设置首选项:

该示例脚本还设置其他不太重要的首选项。所有的首选项都有默认值而不是强制值。

该示例脚本如下所示:

# Usage is: set_key <type> <key> <value> <extra options if any>

function set_key() 
{
  TYPE="$1"
  shift
  KEY="$1"
  shift
  VALUE="$1"
  shift
  OTHER_ARGS="$*"
  gconftool-2 --direct --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults 
--owner=panel $OTHER_ARGS --type "$TYPE" --set "$KEY" "$VALUE"
}

# Define the number of panels, the number of launchers, and the number of applets 
set_key list /apps/panel/default_profiles/medium/general
/panel_id_list [00000001] --list-type string
set_key list /apps/panel/default_profiles/medium/general
/object_id_list [00000001,00000002] --list-type string
set_key list /apps/panel/default_profiles/medium/general
/applet_id_list [00000001] --list-type string

# Define the characteristics of the panel 
set_key string /apps/panel/default_profiles/medium/panels
/00000001/panel_type edge-panel
set_key string /apps/panel/default_profiles/medium/panels
/00000001/panel_size panel-size-x-small
set_key string /apps/panel/default_profiles/medium/panels
/00000001/screen_edge panel-edge-bottom
set_key bool /apps/panel/default_profiles/medium/panels
/00000001/hide_buttons_enabled false
set_key string /apps/panel/default_profiles/medium/panels
/00000001/panel_background_type no-background

# Define the first launcher
set_key string /apps/panel/default_profiles/medium/objects
/00000001/object_type launcher-object
set_key string /apps/panel/default_profiles/medium/objects
/00000001/launcher_location 'applications:///nautilus.desktop'
set_key string /apps/panel/default_profiles/medium/objects
/00000001/panel_id 00000001
set_key int /apps/panel/default_profiles/medium/objects
/00000001/position 20

# Define the second launcher
set_key string /apps/panel/default_profiles/medium/objects
/00000002/object_type launcher-object
set_key string /apps/panel/default_profiles/medium/objects
/00000002/launcher_location 'applications:///System/gnome-terminal.desktop'
set_key string /apps/panel/default_profiles/medium/objects
/00000002/panel_id 00000001
set_key int /apps/panel/default_profiles/medium/objects
/00000002/position 25

# Define the applet
set_key string /apps/panel/default_profiles/medium/applets
/00000001/object_type bonobo-applet
set_key string /apps/panel/default_profiles/medium/applets
/00000001/bonobo_iid OAFIID:GNOME_TasklistApplet
set_key string /apps/panel/default_profiles/medium/applets
/00000001/panel_id 00000001
set_key int /apps/panel/default_profiles/medium/applets
/00000001/position 25