在项目资源管理器中右键单击时,如何将在新建->文件->其他中创建的向导添加到弹出菜单中
how to add Wizards created in New->File->others into popup menus when right click in project explorer
我在 File->New->Others 中创建了一个类别 "Enterprise"。其中有一些 Wizards 让我们说 "Instance"、"Component"、等。
现在我想要的是,当我右键单击 Project Explorer 并进入 New 时,应该可以看到这些向导本身。基本上是尝试制作那些向导的弹出菜单。
所以我将弹出菜单创建为:
<extension
point="org.eclipse.ui.menus">
<menuContribution
allPopups="true"
locationURI="popup:common.new.menu?before=additions">
<command
commandId="CommandComponent"
label="Component"
style="push">
</command>
</menuContribution>
</extension>
<extension
point="org.eclipse.ui.commands">
<command
id="CommandComponent"
name="Component">
</command>
</extension>
<extension
point="org.eclipse.ui.handlers">
<handler
commandId="CommandComponent">
</handler>
</extension>
现在我怎样才能将相同的 class 提供给向导组件的处理程序?
或者我是否必须编写一个具有相同功能但按照处理程序格式(如果可能)的新 class?
您使用 org.eclipse.ui.perspectiveExtensions
扩展点来定义新向导,它们使用 newWizardShortcut
元素显示在新菜单的顶层。
类似于:
<extension
point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension
targetID="org.eclipse.jdt.ui.JavaPerspective">
<newWizardShortcut
id="org.eclipse.jdt.junit.wizards.NewTestCaseCreationWizard">
</newWizardShortcut>
</perspectiveExtension>
(这是新的 JUnit 测试用例快捷方式)。
您可能需要重置透视图或使用自定义透视图使项目可见,因为用户可以控制显示哪些快捷方式。
更多信息在 help
就像提到的 greg-449 一样,使用 "org.eclipse.ui.perspectiveExtensions" 扩展点将您的元素贡献给您想要的视角。
当您右键单击项目资源管理器或包资源管理器并单击新建时,此处显示的项目取决于您所在的视角。如果您处于 Java 视角,您会发现 Java 项目。如果您在 PDE 透视图中,您会发现 Plugin 项目。因此,最好以您想要的视角贡献您的项目类型。
这就是我所做的,以实现我的要求。
当我在项目资源管理器中右键单击时弹出菜单显示新建 -> 组件向导。我在文件 -> 新建 -> 其他中添加了。
<extension point="org.eclipse.ui.menus">
<menuContribution allPopups="false" locationURI="popup:common.new.menu?after=new">
<command commandId=" org.eclipse.ui.newWizard" style="push">
<visibleWhen checkEnabled="false">
<with variable="activeWorkbenchWindow.activePerspective">
<equals value="org.eclipse.ui.resourcePerspective"></equals>
</with>
</visibleWhen>
<parameter name="newWizardId" value="Component"></parameter>
</command>
</menuContribution>
</extension>
我在 File->New->Others 中创建了一个类别 "Enterprise"。其中有一些 Wizards 让我们说 "Instance"、"Component"、等。 现在我想要的是,当我右键单击 Project Explorer 并进入 New 时,应该可以看到这些向导本身。基本上是尝试制作那些向导的弹出菜单。
所以我将弹出菜单创建为:
<extension
point="org.eclipse.ui.menus">
<menuContribution
allPopups="true"
locationURI="popup:common.new.menu?before=additions">
<command
commandId="CommandComponent"
label="Component"
style="push">
</command>
</menuContribution>
</extension>
<extension
point="org.eclipse.ui.commands">
<command
id="CommandComponent"
name="Component">
</command>
</extension>
<extension
point="org.eclipse.ui.handlers">
<handler
commandId="CommandComponent">
</handler>
</extension>
现在我怎样才能将相同的 class 提供给向导组件的处理程序?
或者我是否必须编写一个具有相同功能但按照处理程序格式(如果可能)的新 class?
您使用 org.eclipse.ui.perspectiveExtensions
扩展点来定义新向导,它们使用 newWizardShortcut
元素显示在新菜单的顶层。
类似于:
<extension
point="org.eclipse.ui.perspectiveExtensions">
<perspectiveExtension
targetID="org.eclipse.jdt.ui.JavaPerspective">
<newWizardShortcut
id="org.eclipse.jdt.junit.wizards.NewTestCaseCreationWizard">
</newWizardShortcut>
</perspectiveExtension>
(这是新的 JUnit 测试用例快捷方式)。
您可能需要重置透视图或使用自定义透视图使项目可见,因为用户可以控制显示哪些快捷方式。
更多信息在 help
就像提到的 greg-449 一样,使用 "org.eclipse.ui.perspectiveExtensions" 扩展点将您的元素贡献给您想要的视角。
当您右键单击项目资源管理器或包资源管理器并单击新建时,此处显示的项目取决于您所在的视角。如果您处于 Java 视角,您会发现 Java 项目。如果您在 PDE 透视图中,您会发现 Plugin 项目。因此,最好以您想要的视角贡献您的项目类型。
这就是我所做的,以实现我的要求。
当我在项目资源管理器中右键单击时弹出菜单显示新建 -> 组件向导。我在文件 -> 新建 -> 其他中添加了。
<extension point="org.eclipse.ui.menus">
<menuContribution allPopups="false" locationURI="popup:common.new.menu?after=new">
<command commandId=" org.eclipse.ui.newWizard" style="push">
<visibleWhen checkEnabled="false">
<with variable="activeWorkbenchWindow.activePerspective">
<equals value="org.eclipse.ui.resourcePerspective"></equals>
</with>
</visibleWhen>
<parameter name="newWizardId" value="Component"></parameter>
</command>
</menuContribution>
</extension>