1. 通过精读gnome-panel源码包,了解gnome-pane实现的机制。
gnome-panel包括桌面上方菜单,条形面板,状态显示条,快捷图标,还有下方显示最小化窗口,桌面切换几个部分。
菜单的显示是动态产生的,每次gnome-panel的启用都会自动创建菜单项,在panel初始时,会先根据在配置的菜单文件找到需要创建的项目--"/etc/xdg/menus/ ",如applications.menu中定义了所有的菜单项的信息,如Development、Office等,文件采用的是XML形式。
<!-- Office --> //定义应用程序中的Office办公菜单
<Menu> //每一组<Menu></Menu>定义出一个菜单,通过嵌套可以定义多级目录。
<Name>Office</Name> //菜单在显示时的名称
<Directory>Office.directory</Directory> //该文件定义office菜单的信息
<Include> //该菜单要显示哪些项目
<And>
<Category>Office</Category> //可以定义多个类型,<And>表示同时满足,<Or>满足其一,<Not>等。
</And>
</Include>
</Menu> <!-- End O
gnome-panel包括桌面上方菜单,条形面板,状态显示条,快捷图标,还有下方显示最小化窗口,桌面切换几个部分。
菜单的显示是动态产生的,每次gnome-panel的启用都会自动创建菜单项,在panel初始时,会先根据在配置的菜单文件找到需要创建的项目--"/etc/xdg/menus/ ",如applications.menu中定义了所有的菜单项的信息,如Development、Office等,文件采用的是XML形式。
<!-- Office --> //定义应用程序中的Office办公菜单
<Menu> //每一组<Menu></Menu>定义出一个菜单,通过嵌套可以定义多级目录。
<Name>Office</Name> //菜单在显示时的名称
<Directory>Office.directory</Directory> //该文件定义office菜单的信息
<Include> //该菜单要显示哪些项目
<And>
<Category>Office</Category> //可以定义多个类型,<And>表示同时满足,<Or>满足其一,<Not>等。
</And>
</Include>
</Menu> <!-- End O