# re: [Dengues] 關于如何配置GEF中的Palette 回復 更多評論
2007-10-23 20:17 by
參考Dengues源代碼:org.dengues.designer.ui.process.editors.GEFComponentsEditor。在一個Editor里面重寫getPaletteRoot()方法。可以返回一個PaletteRoot。但是要配置Palette就要覆蓋getPalettePreferences();返回一個FlyoutPreferences主要需要三個參數:
public int getDockLocation() {
return getPreferenceStore().getInt(IDenguesPrefsConstant.PALETTE_DOCK_LOCATION);
}
public int getPaletteState() {
return getPreferenceStore().getInt(IDenguesPrefsConstant.PALETTE_STATE);
}
public int getPaletteWidth() {
return getPreferenceStore().getInt(IDenguesPrefsConstant.PALETTE_SIZE);
}
這三個參數的值范圍:
getDockLocation()的參數有:
1.PositionConstants.EAST表示Palette在右邊或說東邊,這個是默認值。
2.PositionConstants.WEST表示Palette在左邊或說西邊。
getPaletteState()的參數有:
1.FlyoutPaletteComposite.STATE_COLLAPSED表示Palette會用完后自動收縮,還可以放大縮小。為默認值。
2.FlyoutPaletteComposite.STATE_PINNED_OPEN表示Palette會無法收縮和放大縮小。
getPaletteWidth()的參數范圍是:FlyoutPaletteComposite.MAX_PALETTE_SIZE=500;
FlyoutPaletteComposite.MIN_PALETTE_SIZE=20;
FlyoutPaletteComposite.DEFAULT_PALETTE_SIZE=125;
可以參考代碼:
CompEditorPaletteFactory.createPalettePreferences();