如何将自定义菜单栏项目放置在“地图”菜单中的所需位置

时间:2013-09-23 11:41:34

标签: java eclipse-plugin eclipse-rcp plugin.xml

我使用自己的自定义插件添加了自定义菜单项。 但是这个插件放在我想要的位置是我想要实现的。 这就是我现在拥有的 enter image description here

这就是我想要实现的目标

enter image description here

我们如何将自定义菜单项'Dsiplay Properties'添加到分隔符下方的Map'menubar'中。它是plugin.xml中的配置更改吗? 期待您的帮助。

我用于自定义插件的plugin.xml是。

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>
  <extension
    id="net.refractions.udig.project.ui.menus"
    name="Project Menus"
   point="org.eclipse.ui.menus">
   <menuContribution
        allPopups="false"
        locationURI="menu:map?after=mapGroup">
     <command
         commandId="com.abc.gis.map.displayScale.command1"
         label="Display Properties"
         style="push"
         tooltip="Display Properties">
      <visibleWhen
            checkEnabled="true">
      </visibleWhen>
   </command>
  </menuContribution>
   </extension> 
   <extension
     point="org.eclipse.ui.handlers">      
   <handler
          class="com.abc.gis.map.displayscale.DisplayPropertiesCommandHandler"
          commandId="com.abc.gis.map.displayScale.command1">
       <enabledWhen>
          <iterate
                ifEmpty="false"
                operator="or">
             <adapt
                   type="net.refractions.udig.project.IMap">
             </adapt>
             <instanceof
                   value="net.refractions.udig.project.IMap">
             </instanceof>
          </iterate>
       </enabledWhen>
    </handler>

  </extension>
   <extension
     point="org.eclipse.ui.propertyPages">
    <page
        class="com.abc.gis.map.displayscale.DisplayProperties"
        id="com.abc.gis.map.displayScale.page4"
        name="Display Properties">
  </page>
  </extension>
  <extension
       point="org.eclipse.ui.commands">
       <command
        description="Display Properties"
        id="com.abc.gis.map.displayScale.command1"
        name="Display Properties">
     </command>

   </extension>
  </plugin>

由于 甲

1 个答案:

答案 0 :(得分:1)

您使用什么声明将该菜单条目带到其位置? Eclipse使用贡献URL,如: menu:org.eclipse.search.menu?after = contextMenuActionsGroup 。 这意味着“在菜单搜索菜单中将此条目放在 contextMenuActionsGroup 组之后。

在你的情况下,这将是: menu:my.path.map?after = mapGroup

如果您不知道菜单的路径,可以使用快捷键Alt + Shift + F2选择组之前的菜单条目并检查其路径。