Dengues Studio: Google Group:http://groups.google.com/group/dengues; QQ Group:24885404.
          關(guān)于如何配置GEF中的Palette

          參考Dengues源代碼: org.dengues.designer.ui.process.editors.GEFComponentsEditor。在一個(gè)Editor里面重寫getPaletteRoot()方法。可以返回一個(gè)PaletteRoot。但是要配置Palette就要覆蓋 getPalettePreferences();返回一個(gè)FlyoutPreferences主要需要三個(gè)參數(shù):
          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);
          }
          這三個(gè)參數(shù)的值范圍:
          getDockLocation()的參數(shù)有:
          1.PositionConstants.EAST表示Palette在右邊或說東邊,這個(gè)是默認(rèn)值。
          2.PositionConstants.WEST表示Palette在左邊或說西邊。
          getPaletteState()的參數(shù)有:
          1.FlyoutPaletteComposite.STATE_COLLAPSED表示Palette會用完后自動(dòng)收縮,還可以放大縮小。為默認(rèn)值。
          2.FlyoutPaletteComposite.STATE_PINNED_OPEN表示Palette會無法收縮和放大縮小。
          getPaletteWidth()的參數(shù)范圍是:FlyoutPaletteComposite.MAX_PALETTE_SIZE=500;
          FlyoutPaletteComposite.MIN_PALETTE_SIZE=20;
          FlyoutPaletteComposite.DEFAULT_PALETTE_SIZE=125;
          可以參考代碼:
          CompEditorPaletteFactory.createPalettePreferences();



          Dengues論壇(http://groups.google.com/group/dengues/),一個(gè)很好的Eclipse開發(fā)者樂園.

          Feedback

          # re: [Dengues] 關(guān)于如何配置GEF中的Palette  回復(fù)  更多評論   

          2007-10-26 10:46 by 小張飛刀
          不錯(cuò),頂頂先~

          # re: [Dengues] 關(guān)于如何配置GEF中的Palette[未登錄]  回復(fù)  更多評論   

          2007-10-26 11:02 by yy
          期待文檔阿....~~~~

          # re: [Dengues] 關(guān)于如何配置GEF中的Palette  回復(fù)  更多評論   

          2007-10-26 11:24 by 小張飛刀(Dengues Studio)
          補(bǔ)充一下其實(shí)說白了,在Graphical Editor的getPalettePreference方法里返回一個(gè)FlyoutPreferences對象就可以了,它是一個(gè)寫在FlyoutPaletteComposite里的接口,源代碼如下:


          /**
          * FlyoutPreferences is used to save/load the preferences for the flyout palette.
          *
          * @author Pratik Shah
          * @since 3.0
          */
          public interface FlyoutPreferences {
          /**
          * Should return {@link PositionConstants#EAST} or {@link PositionConstants#WEST}.
          * Any other int will be ignored and the default dock location (EAST) will be
          * used instead.
          * @return the saved dock location of the Palette
          */
          int getDockLocation();
          /**
          * When there is no saved state, this method can return any non-positive int (which
          * will result in the palette using the default state -- collapsed), or
          * {@link FlyoutPaletteComposite#STATE_COLLAPSED}, or
          * {@link FlyoutPaletteComposite#STATE_PINNED_OPEN}
          * @return the saved state of the palette
          */
          int getPaletteState();
          /**
          * When there is no saved width, this method can return any int (preferrably a
          * non-positive int). Returning a non-positive int will cause the palette to be
          * sized to the default size, whereas returning a postive int will find the
          * closest match in the valid range (>= minimum and <= maximum)
          * @return the saved width of the flyout palette
          */
          int getPaletteWidth();
          /**
          * This method is invoked when the flyout palette's dock location is changed. The
          * provided dock location should be persisted and returned in
          * {@link #getDockLocation()}.
          * @param location {@link PositionConstants#EAST} or {@link PositionConstants#WEST}
          */
          void setDockLocation(int location);
          /**
          * This method is invoked when the flyout palette's state is changed (the new state
          * becomes the default). The provided state should be persisted and returned in
          * {@link #getPaletteState()}.
          * @param state {@link FlyoutPaletteComposite#STATE_COLLAPSED} or
          * {@link FlyoutPaletteComposite#STATE_PINNED_OPEN}
          */
          void setPaletteState(int state);
          /**
          * This method is invoked when the flyout palette is resized. The provided width
          * should be persisted and returned in {@link #getPaletteWidth()}.
          * @param width the new size of the flyout palette
          */
          void setPaletteWidth(int width);
          }


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          Dengues Studio: Google Group:http://groups.google.com/group/dengues; QQ Group:24885404.
          主站蜘蛛池模板: 桃源县| 墨脱县| 开阳县| 娄底市| 繁峙县| 邢台市| 固始县| 大方县| 贵阳市| 徐州市| 玉门市| 铜陵市| 郧西县| 乌兰察布市| 惠水县| 信宜市| 德清县| 文化| 屏山县| 翁牛特旗| 平凉市| 扎赉特旗| 桂阳县| 香河县| 玛曲县| 故城县| 喀喇沁旗| 萍乡市| 柘荣县| 逊克县| 剑阁县| 金阳县| 左贡县| 定日县| 沙洋县| 新安县| 高邮市| 鸡泽县| 咸阳市| 灌云县| 凉山|