Eclipse插件:操作栏与菜单,工具栏之间有什么区别......?

时间:2012-01-15 19:32:32

标签: android menu eclipse-plugin android-actionbar eclipse-pde

问题:关于Eclipse插件开发,在添加操作(特别是Java编辑器)时,操作栏与菜单,工具栏之间有什么区别?

我想在Eclipse中向Java编辑器添加操作。我在org.eclipse.jdt.ui中找到的“更改方法签名”操作之后对操作进行建模。起初,我以为我会简单地按常规org.eclipse.ui.menus添加菜单项,这对我的目的来说已经足够了。在仔细阅读org.eclipse.jdt.ui.actions.RefactorActionGroup后,我发现RefactorActionGroup类将操作放在方法

中的操作栏中
public void fillActionBars(IActionBars)

我在这个主题上发现的唯一讨论是2006 article引用Eclipse 3.1:

  

在Eclipse术语中,“操作栏”是菜单的全部术语,   工具栏和状态栏。 ActionBar Advisor处理创建   这些地点内的行动。插件也可以提供动作   动态使用其plugin.xml文件。请参见清单7   插件向导和表7提供的实现   方法

我很困惑。为什么像org.eclipse.jdt.ui.actions.RefactorActionGroup这样的代码示例会处理操作栏,如果您要在任何事件中将操作显式添加为菜单? Action Bars与其他添加动作的方式之间的关系是什么......

感谢。

1 个答案:

答案 0 :(得分:3)

RefactorActionGroup是一个遗留类(自2.0以来一直在 ),org.eclipse.ui.menus之后被添加了很多。你应该坚持menus扩展点。

动作组的使用是直接的 - 每个编辑都知道它需要哪些动作,并要求相应的动作组创建它们。而通过org.eclipse.ui.menus扩展点的命令和菜单贡献是动态的 - 原始编辑器/视图不需要知道有关添加的任何内容。

相关问题