我想在eclipse rcp应用程序中添加工具栏,我尝试在 ActionBarAdvisor.java 中的 fillCoolBar 函数中编写代码,并使用扩展。但其他插件提供的扩展未正确对齐。我的猜测是工具栏中各种toolbarManager的名称不合适。 任何人都可以告诉我如何添加所有图标,以便由其他插件添加并由我添加的额外图标正确对齐? 每次重新启动或打开新的工作区时,图标间距都会发生变化! 我附上了问题的图像。
fillCoolBar中的代码如下:
@Override
protected void fillCoolBar(ICoolBarManager coolBar){
IToolBarManager fileToolbar1 = new ToolBarManager(SWT.WRAP);
fileToolbar1.add(new Separator(IWorkbenchActionConstants.NEW_GROUP));
fileToolbar1.add(newDropDownAction);
fileToolbar1.add(new GroupMarker(IWorkbenchActionConstants.NEW_EXT));
fileToolbar1.add(new GroupMarker(IWorkbenchActionConstants.SAVE_GROUP));
fileToolbar1.add(saveFileAction);
fileToolbar1.add(saveAllFilesAction);
fileToolbar1.add(new GroupMarker(IWorkbenchActionConstants.SAVE_EXT));
fileToolbar1.add(printAction);
fileToolbar1.add(new GroupMarker(IWorkbenchActionConstants.PRINT_EXT));
coolBar.add(fileToolbar1);
}
答案 0 :(得分:1)
想出来。 需要添加CSS样式。 采取以下步骤:
1. Open plugin.xml
2. Add extension org.eclipse.e4.ui.css.swt.theme
2.1 Add Theme to above extension.
2.1.2 Basestyleurl is relative path to css file, like css/theme.css
2.1.2 Give a id like plugin.theme [id can be anything]
2.1.3 Fill rest of the fields
3. In extension org.eclipse.core.runtime.products , the one that has your product
3.1 Add a property
3.1.1 name: cssTheme [do not change]
3.1.2 value: id given in step 2.1.2
3.2 Add a property
3.2.1 name: applicationCSSResources
3.2.2 value: platform:/plugin/plugin.name/images/
[inside plugin i have images folder which has all essential images for my css, you can see images used by eclipse css theme in eclipse\plugins\org.eclipse.platform_4.3.0.v20130605-2000\images and the css used is inside css folder ]
就是这样! 完成:))