eclipse方法上右击菜单插件怎么实现
eclipse的右击菜单扩展点是用的:org.eclipse.ui.popupMenus
objectClass="org.eclipse.core.resources.IProject"可实现工程右击菜单。
objectClass="org.eclipse.core.resources.IFile"可实现文件右击菜单。
但是method方法上怎样可以实现右击菜单呢?
能不能看到eclipse是怎么实现文件和方法的区别的呢?
[解决办法]
凭借我开发的经验,我给楼主分享下我们的右键菜单怎么做:
一般我们现在的项目中右键菜单也就用到两种地方:
1.就是Navigator上,就是eclipse中类似于Package explorer视图,我们做的方法是通过扩展点的方式:
实现扩展点:org.eclipse.ui.menus 然后右键new一个menuContribution 然后实现它的locationURI属性:
你现在做的是popup菜单就这样实现 popup:com.test.view popup:后面的com.test.view就是你要添加右键菜单的目标的ID ,我现在添加的目标是一个ID是com.test.view的视图,
然后在menuContribution下面在创建command 在这里有个commandID之类的,主要就是天上commandID,
然后你就是要实现org.eclipse.ui.commands、org.eclipse.ui.handlers两个扩展点,这两个扩这点的作用是:
前者是一个类似于连接的作用,这里你要创建command,也会有个ID,你要个菜单那里的command一致
然后在后者这里你要创建handler也会有commandID,就是说三者要一致,然后在创建一个实现了IHandler的类,这里主要就要实现execute方法,它里面执行的就是你点击菜单以后执行的动作,
剩下还一种实现方式就是在table上添加右键菜单,这种情况一般是通过代码的方式实现:
简单说下:就是new一个MenuManager然后给这个manager添加已经new 好的Action
如果楼主先知道的更详细,我可以写个demo给你,
如果有需要可以联系我,不过得给分啊,呵呵
[解决办法]
点击method节点,我觉得你说的是JavaProject下面的Java Class节点打开吧?这个你需要在objectClass里设置objectClass="org.eclipse.jdt.core.IMethod"就好了。 IMethod是jdt里面定义的一个模型。