Questions tagged «eclipse-rcp»


1
Eclipse RCP-在“编辑器”区域中打开一个视图(3.8 / e4混合)
我正在研究3.8-e4混合动力车(即,我们具有Luna依赖项,但尚未使用Application.e4xmi)。因此,我们基本上在运行紧凑层。 话虽这么说,最好找到一种e4编程方式将这些讨厌的视图堆叠到editor文件夹中。 1.)问题 我想在编辑器区域中放置一个通用视图文件夹,以便在运行时打开的每个视图都将在那里打开。 (从这个问题中偷来的图片) 2.1)可能的修补程序1:使用plugin.xml 创建一个透视扩展,并将每个可能的视图添加到该扩展,并在相对的org.eclipse.ui.editorss上建立关系堆栈。如果您有太多无法打开的视图,并且项目迅速扩展,那么这将带来一些不便。我还注意到通配符视图ID在这里不起作用。 如果您发现有时间将每个可能的视图添加到透视图扩展中,那将起作用。虽然,如果您打开未在此处添加的视图(即:在另一个文件夹中打开),则随后的每个打开的视图将在上一个文件夹中打开,而不是在编辑器区域中打开(如果不这样做,请进一步说明)得到它)。 2.2)可能的解决方案2:在透视图工厂中使用代码 在中IPerspectiveFactory,我们确实可以访问IPageLayout,而恰好是org.eclipse.ui.internal.e4.compatibility.ModeledPageLayout(e4东西)。 现在,这种ModeledPageLayout实现是合理的,但是也没有文档和怪异的公共API。这使人们有可能在其他任何亲戚之间堆叠视图 modeledPageLayout.stackView("newView0", IPageLayout.ID_EDITOR_AREA); 这将是2.1的编程版本。同样,这里也会出现同样的问题。如果在其他地方打开视图,则上面的代码将变得无用。 有趣的是,stackViewAPI不支持通配符(而其他则支持通配符addView)。 2.3)可能的解决方法3:变通了! 我有很多观点,每个观点都有很多不同的文件夹。一切都已精确放置。 由于Eclipse提供了API以便从系统各处获取所有视图ID,因此,我希望从每个角度执行以下操作:未添加到特定文件夹的每个视图ID将附加到编辑器区域(即,编辑器文件夹) ,编辑器堆栈)。 除非有人提供更方便,更省时的解决方案,否则这将是我的最后选择。 请记住,e4编程替代方案更加灵活! 3.)相关问题 Eclipse RCP-在编辑器文件夹中打开视图 Eclipse RCP-将视图与编辑器区域堆叠在一起? 自定义Eclipse透视图,最初隐藏的视图堆叠到编辑器区域 Google问题,Lars回答 这些将在e4版本中被弃用。 4.)Eclipse Bugzilla上的相关Bug: 我自己打开的这个最新bug带有一个小型SSCCE的附件。重现此步骤的步骤在此注释中进行了描述,因此在这里我不会将其复制粘贴。

2
如何为快捷菜单添加类似于JDT中“重构”上下文菜单的键绑定?
我想为我的eclipse插件添加一个快捷方式,以显示具有现有绑定的快捷菜单。它应该像JDT中的“重构”快捷菜单一样工作。 JDT中快捷菜单的快捷方式: JDT快速菜单: 我已经添加了绑定和命令,但似乎缺少一些东西。“删除某物”条目也适用于上下文菜单,只是缺少快捷菜单的快捷方式。有人怎么做吗? <extension point="org.eclipse.ui.bindings"> <key commandId="myplugin.refactoring.actions.DeleteSomething" schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" sequence="M1+5"> </key> <key commandId="myplugin.refactoring.quickMenu" schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" sequence="M1+9"> </key> <extension point="org.eclipse.ui.commands"> <command categoryId="myplugin.category.refactor" description="Delete Something" id="myplugin.refactoring.actions.DeleteSomething" name="Extract Method"> </command> <command categoryId="myplugin.category.refactor" id="myplugin.refactoring.quickMenu" name="Show Refactor Quick Menu"> </command> <category id="myplugin.category.refactor" name="Refactor"> </category>
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.