[英]How do I disable/remove the Palette of an Eclipse Graphiti editor?
Trying to remove the palette of a Eclipse Graphiti editor. 尝试删除Eclipse Graphiti编辑器的调色板。
org.eclipse.graphiti.ui.editor.DiagramBehavior
has a createPaletteBehaviour()
to override but if I return null
, the editor crashes. org.eclipse.graphiti.ui.editor.DiagramBehavior
具有要覆盖的createPaletteBehaviour()
,但是如果我返回null
,则编辑器将崩溃。
I also tried this in the diagram behavior, but I actually don't want it collapsed but removed: 我也在图表行为中尝试了此方法,但实际上我不希望它崩溃而被删除:
@Override
protected DefaultPaletteBehavior createPaletteBehaviour() {
return new DefaultPaletteBehavior(this) {
@Override
public FlyoutPreferences getPalettePreferences() {
FlyoutPreferences palettePreferences = super.getPalettePreferences();
palettePreferences.setPaletteState(FlyoutPaletteComposite.STATE_COLLAPSED);
return palettePreferences;
}
};
}
I would also prefer to use some API instead of manipulating the preferences. 我也希望使用一些API而不是操纵首选项。
I just got a reply in the eclipse forum: https://www.eclipse.org/forums/index.php/m/1698886/ 我刚刚在eclipse论坛上得到了答复: https : //www.eclipse.org/forums/index.php/m/1698886/
" you can override isShowFlyoutPalette() in your tool behavior provider and return false there to hide the palette." “ 您可以在工具行为提供程序中覆盖isShowFlyoutPalette()并在其中返回false以隐藏调色板。”
This is what I was looking for. 这就是我想要的。
This is the hack I came up with, there is a org.eclipse.gef.ui.palette.FlyoutPaletteComposite.STATE_HIDDEN
with the value "8", since the constant is private (and probably should not be used) I have to set it directly. 这是我想出的办法,这里有一个
org.eclipse.gef.ui.palette.FlyoutPaletteComposite.STATE_HIDDEN
,其值为“ 8”,因为该常量是私有的(可能不应该使用),我必须对其进行设置直。
@Override
protected DefaultPaletteBehavior createPaletteBehaviour() {
return new DefaultPaletteBehavior(this) {
@Override
public FlyoutPreferences getPalettePreferences() {
FlyoutPreferences palettePreferences = super.getPalettePreferences();
palettePreferences.setPaletteState(8);
return palettePreferences;
}
};
}
But as mentioned I would prefer API instead of this preferences hack. 但是如上所述,我更喜欢API而不是这种偏好设置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.