希望在eclipse RCP产品中提供pdf文件作为帮助文档,也就是在菜单帮助中提供一个打开pdf帮助文件的功能。可以如下完成:
1、首先在帮助菜单中开辟空间
打开ApplicationActionBarAdvisor.java文件,为菜单函数修改如下:
protected void fillMenuBar(IMenuManager menuBar) {
MenuManager helpMenu = new MenuManager("&Help", IWorkbenchActionConstants.M_HELP);
menuBar.add(helpMenu);
......
// Help
helpMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
helpMenu.add(aboutAction);
}
2、在扩展中添加一个Action
打开plugin.xml,定位到“扩展”页,然后添加扩展:org.eclipse.ui.actionSets,并依此添加actionset和action,并填写相关属性,如图:
注意:其中在写该action的类时,点击左边的class,然后弹出新建类的页面,创建新的类,重载该类的run函数如下:
@Override
public void run(IAction action) {
// TODO Auto-generated method stub
//Rcp程序获取程序安装路径
String path = null;
Location location = Platform.getInstallLocation();
if (location != null) {
URL url = location.getURL();
path = url.getPath();
}
//Rcp程序获取程序workspace路径
//String workspacepath = Platform.getInstanceLocation().getURL().getPath();
path = path.substring(1); //路径是以/开头,所以去掉/
//help.pdf 放在产品根目录下
String filename = path + "help.pdf";
Program.launch(filename);
}
注意:在actionset页面,一定要记住将visible属性设为true!其默认值没写,这导致我总是看不到新添加的菜单(在帮助菜单的第一个,也就是help/additions),弄了半天,才找到是这个原因!如图:
3、导出产品,然后将帮助文件help.pdf放在产品的根目录下面,就可以了!