2011-12-25 100 views
0

在我的插件中,我创建了一个编辑器和EditorActionBarContributor,它将一些操作添加到编辑器中。我以编程方式将操作添加到编辑器的上下文菜单中。在seletionChanged()中,我根据编辑器的状态来控制上下文菜单中应该启用哪些动作,例如,选择或文件的类型。Eclipse:启用/禁用工具栏中的按钮

现在我想将这些操作移动到eclipse工具栏。为此,我为扩展点org.eclipse.ui.editorActions创建了扩展,并为编辑器中的每个操作添加了一个操作,并为每个操作添加了一个IEditorActionDelegate,该操作从编辑器获取对应的操作并运行它。

我想控制启用/禁用工具栏中的按钮,这些操作就像我在编辑器中做的那样,但我不知道该怎么做。例如,我希望只有在编辑器中选择了文本时才能启用按钮。

我该怎么做?

回答

1

这不是对你的问题的直接回答,但我会考虑使用Eclipse commands来代替。他们更干净地分开,以便您可以有一个地方,指示命令启用/禁用,然后自动显示在菜单/工具栏/绑定键等。

此外,操作已被有效弃用,因为命令自从Eclipse 3.5以来一直是首选机制。

+0

你是对的,我应该迁移到命令。有没有关于如何将操作“转换”为命令的教程?我似乎无法找到任何。 – Sebastian 2011-12-26 18:59:08

+0

不是我所知道的,但Commands的东西要容易得多,所以如果你阅读帮助文档,你应该能够很快地弄清楚它。 – 2011-12-26 19:00:26