在项目浏览器中右键单击时,如何将在New-> File->其他人中创建的向导添加到弹出菜单中

时间:2015-04-08 08:53:59

标签: eclipse-plugin wizard popupmenu

我在文件 - > New->其他中创建了一个类别" Enterprise"。其中有一些向导可以说" Instance& #34;,"组件",等 现在我想要的是,当我右键单击 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>

现在我怎样才能将同一个类赋予我给Wizard Component的处理程序?

或者我是否必须编写一个具有相同功能的新类,但是根据处理程序格式(如果可能的话)?

3 个答案:

答案 0 :(得分:4)

您可以使用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>

(这是New JUnit Test Case的快捷方式)。

您可能需要重置透视图或使用自定义透视图使项目可见,因为用户可以控制显示哪些快捷方式。

help

中的更多信息

答案 1 :(得分:0)

就像提到的greg-449一样,使用&#34; org.eclipse.ui.perspectiveExtensions&#34;扩展点,将您的元素贡献给您想要的透视图。

右键单击项目资源管理器或包浏览器并单击“新建”时,显示的项目取决于您所处的透视图。如果您处于Java透视图中,则可以找到Java项目。如果您处于PDE透视图中,您将找到插件项目。因此,以您想要的角度提供项目类型是很好的。

答案 2 :(得分:0)

感谢greg-449和Henry的帮助。

这就是我所做的,为了实现我所要求的目标。

当我在项目浏览器中右键单击时,弹出菜单显示New-&gt; Component Wizard。我在File-&gt; New-&gt; Others中添加了。

<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>