Eclipse plugin 编辑器具有焦点时添加/删除操作工具栏
我正在使用Eclipse插件基础架构扩展Eclipse,我遇到了一个问题: 我创建了一个文本编辑器,我想在编辑器打开并具有焦点时向Eclipse工具栏添加操作。例如:Eclipse plugin 编辑器具有焦点时添加/删除操作工具栏,eclipse-plugin,toolbar,Eclipse Plugin,Toolbar,我正在使用Eclipse插件基础架构扩展Eclipse,我遇到了一个问题: 我创建了一个文本编辑器,我想在编辑器打开并具有焦点时向Eclipse工具栏添加操作。例如: textViewer.getTextWidget().addFocusListener(new FocusListener(){ public void focusGained(FocusEvent e) { /* add actions */ } public void focusLost(FocusEv
textViewer.getTextWidget().addFocusListener(new FocusListener(){
public void focusGained(FocusEvent e) {
/* add actions */
}
public void focusLost(FocusEvent e) {
/* remove actions */
}
}))
下面是extensionPoint的示例:ActionSet,将操作按钮永久添加到工具栏:
<action
class="MyActionClass"
id="MyActionID"
label="MyActionLabel"
menubarPath="MyActionMenuBarPath"
toolbarPath="MyActionToolBarPath" <-- this property
...
</action>
您可以查看类似动态工具栏更新的Eclipse实现
例如,只能为Java编辑器激活Breadcrumb bare,而对于任何其他类型的编辑器,工具栏“Toggle Breadcrumb”按钮都不可见
这是一个,在as中声明
您可以尝试相同类型的定义。谢谢您的回答,我找到了一种简单的方法来实现这一点,如果按钮是ActionSet,只需添加以下扩展点:
<extension
point="org.eclipse.ui.actionSetPartAssociations">
<actionSetPartAssociation
targetID="myActionSetId">
<part
id="myEditorId">
</part>
</actionSetPartAssociation>
<extension
point="org.eclipse.ui.actionSetPartAssociations">
<actionSetPartAssociation
targetID="myActionSetId">
<part
id="myEditorId">
</part>
</actionSetPartAssociation>