本文主要实现右击时,弹出菜单中加上自己制定的多级菜单的功能。菜单的加法有很多,这里只介绍org.eclipse.ui.popupMenus方式的多级菜单
plugin.xml的配置如下
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
<extension point="org.eclipse.ui.popupMenus">
<objectContribution id="Clarity.objectContribution"
objectClass="org.eclipse.core.runtime.IAdaptable">
<menu
label="Quick Start"
id="QuickStart">
<separator name="conf"> </separator>
</menu>
<menu
label="配置文件编辑"
path="QuickStart/conf"
id="ConfFileEditor">
<separator
name="additions">
</separator>
</menu>
<action
label="表一览"
class="com.linkstec.qsp.plugin.menu.TableListGetter"
menubarPath="QuickStart/additions"
id="com.linkstec.qsp.plugin.menu.TableListGetter">
</action>
<action
label="Bean一览"
class="com.linkstec.qsp.plugin.menu.BeanListGetter"
menubarPath="QuickStart/additions"
id="com.linkstec.qsp.plugin.menu.BeanListGetter">
</action>
<action
label="db.property文件配置"
class="com.linkstec.qsp.plugin.menu.ConfFileEditor"
menubarPath="QuickStart/ConfFileEditor/additions"
id="com.linkstec.qsp.plugin.menu.dbProperty">
</action>
<action
label="plugin文件配置"
class="com.linkstec.qsp.plugin.menu.ConfFileEditor"
menubarPath="QuickStart/ConfFileEditor/additions"
id="com.linkstec.qsp.plugin.menu.plugin">
</action>
</objectContribution>
</extension>
</plugin>这里重点解释几个节点的配置:
1.objectClass="org.eclipse.core.runtime.IAdaptable" 此节点主要指定此菜单在哪些对象右击时能弹出,通俗一点讲,就是指定在右击工程时弹出,还是在右击java文件时弹出……。
2.<separator name="conf"> </separator> 此节点主要设置两个菜单中分隔的那根线,当2个separator的name属性不同时,显示的时候会有一根横线分隔。
3.menubarPath="QuickStart/ConfFileEditor/additions" 此节点主要指定此菜单是哪个菜单的子菜单。QuickStart和ConfFileEditor都是父菜单的ID。
显示的效果图如下:

本文详细介绍了如何使用org.eclipse.ui.popupMenus在Eclipse中创建右击时弹出的多级菜单功能。通过配置plugin.xml,设置objectClass以指定菜单触发对象,利用separator分隔菜单项,并通过menubarPath定义菜单层级结构。最终效果展示了一个具有多级结构的右键菜单。
4307

被折叠的 条评论
为什么被折叠?



