Eclipse 如何在弹出菜单中添加项目?
在eclipse插件开发中,我想在弹出菜单中添加一项(例如:Mystyle) 比如, 项目资源管理器-->右键单击-->新建-->MyStyle 如何在eclipse插件开发中实现这一点 问候Eclipse 如何在弹出菜单中添加项目?,eclipse,plugins,Eclipse,Plugins,在eclipse插件开发中,我想在弹出菜单中添加一项(例如:Mystyle) 比如, 项目资源管理器-->右键单击-->新建-->MyStyle 如何在eclipse插件开发中实现这一点 问候 Mathan像这样的东西应该可以做到(如下所示): 看 定义命令UI结构的有序添加集。已定义的元素将添加到命令UI结构中locationURI元素指定的位置 无论菜单、工具栏或修剪出现在UI中的何处,这都应该是所有贡献到菜单、工具栏或修剪中的起点 locationURI-一种URI规范,用于定义将在
Mathan像这样的东西应该可以做到(如下所示):
看
定义命令UI结构的有序添加集。已定义的元素将添加到命令UI结构中locationURI
元素指定的位置
无论菜单、工具栏或修剪出现在UI中的何处,这都应该是所有贡献到菜单、工具栏或修剪中的起点
-一种URI规范,用于定义将在其中添加包含的添加内容的插入点。locationURI
URI的格式由三个基本部分组成:- 方案:“菜单”、“弹出窗口”或“工具栏”之一。
指示用于处理供款的经理的类型 - Id:这是现有菜单的Id、视图Id或编辑器“type”的Id
- 查询:查询格式为
,其中:=
是“之前”或“之后”,并且
是现有菜单项的id
- 方案:“菜单”、“弹出窗口”或“工具栏”之一。
menuContribution
,其locationURI
-属性指向popup:org.eclipse.ui.popup.any?after=additions
警告,正如评论中提到的,该包
org.eclipse.ui.popupmones
已被弃用。更多信息请参见问题。刚才我花了一段时间才解决了这个问题,所以我将给出OP问题的答案(添加到文件->新建菜单) 贡献地点(常用.新建.菜单) 多亏了这篇文章,我发现你想加入popup:common.new.menu?after=new.why,你会问吗?如果我知道的话,那就见鬼去吧;但它是有效的
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
<extension
point="org.eclipse.ui.commands">
<command
defaultHandler="com.justin.debug.SampleHandler"
id="com.justin.debug.commands.sampleCommand"
name="Sample Command">
</command>
</extension>
<extension
point="org.eclipse.ui.menus">
<menuContribution
locationURI="popup:common.new.menu?after=new">
<command
commandId="com.justin.debug.commands.sampleCommand"
icon="icons/sample.gif"
label="New Root Command From Justin"
style="push">
<visibleWhen
checkEnabled="false">
<with
variable="activeWorkbenchWindow.activePerspective">
<equals
value="org.eclipse.cdt.ui.CPerspective">
</equals>
</with>
</visibleWhen>
</command>
</menuContribution>
<menuContribution
locationURI="popup:common.new.menu?after=new">
<menu
id="org.ecilpse.ui.navigator.ProjectExplorer.helloJustin"
label="Hello Justin">
<command
commandId="com.justin.debug.commands.sampleCommand"
icon="icons/sample.gif"
label="New Submenu Command From Justin"
style="push">
</command>
</menu>
</menuContribution>
</extension>
</plugin>
我在这里添加了一个重要的部分,即“visibleWhen”参数。这仅在C/C++透视图中显示Justin的新根命令。事实证明,要弄清楚这一点是很困难的,因此我将其包含在示例中。以下是我在研究时挖掘的有用资源:
现在,如果有人能告诉我将来如何轻松查找这些uri/resources/properties…天哪。我认为org.eclipse.ui.popupmones已被删除,现在请看@Prashant:非常好的观点。我编辑了我的答案以反映您的评论。@VonC您答案中的eclipse.org链接现在已断开。@reprogrammer所有链接现在都已恢复。这个问题tion从未收到答案;如何添加到文件->新建菜单?当视图更改为Package Explorer时,该方法不起作用。有任何建议吗。
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
<extension
point="org.eclipse.ui.commands">
<command
defaultHandler="com.justin.debug.SampleHandler"
id="com.justin.debug.commands.sampleCommand"
name="Sample Command">
</command>
</extension>
<extension
point="org.eclipse.ui.menus">
<menuContribution
locationURI="popup:common.new.menu?after=new">
<command
commandId="com.justin.debug.commands.sampleCommand"
icon="icons/sample.gif"
label="New Root Command From Justin"
style="push">
<visibleWhen
checkEnabled="false">
<with
variable="activeWorkbenchWindow.activePerspective">
<equals
value="org.eclipse.cdt.ui.CPerspective">
</equals>
</with>
</visibleWhen>
</command>
</menuContribution>
<menuContribution
locationURI="popup:common.new.menu?after=new">
<menu
id="org.ecilpse.ui.navigator.ProjectExplorer.helloJustin"
label="Hello Justin">
<command
commandId="com.justin.debug.commands.sampleCommand"
icon="icons/sample.gif"
label="New Submenu Command From Justin"
style="push">
</command>
</menu>
</menuContribution>
</extension>
</plugin>