文档提到before
、after
和endof
是menuContribution
的locationURI中的有效位置修饰符。
<!ELEMENT menuContribution (menu* , command* , separator* , dynamic* ,> toolbar* , control*) > <!ATTLIST menuContribution locationURI CDATA #REQUIRED class CDATA #IMPLIED allPopups (true | false) "false">
定义对命令UI结构的一组有序添加。这个定义的元素将在locationURI元素指定的位置。
这应该是菜单中所有贡献的起点,工具栏或修剪,无论它们出现在UI中的任何位置。
- locationURI-一个URI规范,用于定义将添加包含的添加的插入点。URI的格式由三个基本部分组成:方案:"菜单"、"弹出窗口"或"工具栏。指示用于处理contributions Id:这要么是现有菜单的Id,要么是视图Id或者编辑器"type"的id查询:查询格式为<placement>=<id>其中:<placement>是"before"、"after"或"endof">和<id>是现有菜单项的id。放置修改器在处理此贡献时执行。下列的贡献可能会改变菜单的最终形状已处理
- class-如果指定了这个可选属性,则提供的类将被实例化,并用于在地方如果提供,则将忽略所有子元素
- allPopups-默认情况下,弹出贡献不会贡献给不包括添加标记的上下文菜单
我在一些代码片段中也看到了last
,并尝试过它。它很有效。但文件中没有提到"最后"。知道eclipse文档经常过时:我怎么能总是看到有效的选项?
据我所知,唯一能查看放置值的是org.eclipse.e4.ui.internal.workbench.ContributionsAnalyzer
。
它接受任何值。它实际上只测试before
值,其他所有内容都被视为after
。