麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

關于Eclipse工作臺中的Preference

2019-11-18 13:02:13
字體:
來源:轉載
供稿:網友

  Eclipse平臺支持PReference,preference伴隨著工作空間出現。這篇文章將討論preference的數據存儲類型,并講述怎樣開發和注冊用戶接口使用戶設置preference更加方便,同時還告訴你怎樣利用導入和導出功能存儲不依靠于工作臺的preference。它同時也告訴你當其它的插件要使用你的插件的preference時候怎樣初始化和得到preference。這個功能將在下面的例子中進行演示,這個例子是在文件中查找錯誤的單詞。我們將在這個工具中用2個preference頁設置我們的preference,其中一個是設置高量顯示的顏色`,這個頁面比較簡單,另外一個稍微復雜點,是設置單詞的列表。
  
  何時使用Preference
  
  Preference是一種數據,它存在于工作空間中,答應用戶存儲插件的狀態,以保證它在Eclipse中的一致性。Eclipse 2.0提供2種preference,用戶接口(UI)preference(同樣存在于1.0中)和核心preference。這篇文章僅僅涉及到怎樣使用UI preference存儲。典型的UI preference有新的實例的默認值,編輯器的顏色,路徑等等。核心preference用于不是UI的部分的值。
  
  Preference并不涉及到當前工作空間中的任何資源,相反,它應該被編輯器,視圖或者其它的操作資源的對象所使用。一種資源實例對應的數據最好存儲成一個屬性。
  
  Preference對任何插件來說都是可用的,當然,先決條件是存在插件。通常的方法是你的插件上提供API,答應preference可以被訪問。Preference的值存儲在工作空間的.metadata/.plugins目錄下面。下面我們舉例怎么做。
  
  Preference Store和插件
  
  每個插件都有自己的preference store,這是工作空間提供的。在這個例子中,我們將定義一個插件,使用它的preference store存儲preference。在UI中當要使用插件的時候我們定義AbustractUIPlugin的子類。構造函數(參見 )將在工作臺中創建一個獨立的答應輕易訪問的插件實例。我們實現方法initializeDefaultPreferences()為preference設置默認值。首先為錯誤的單詞定義了一個preference,另外一個是定義高量顯示的顏色。每個preference的值與給定的要害字相對應。在下面的代碼中使用的要害字是在中定義的常量。
  
  所有的preference應該都有默認值來保證在任何時候都有值。默認值也保證了UI能夠提供一種方式重置preference的值回到初始設定,這是通過“保存默認按鈕”實現的。Preference的默認值在插件中也應該進行初始化,以便它在任何UI創建之前設置。
  
  IabstractWorkbenchPlugin定義了一個方法,當preference第一次創建的時候,它會被調用。這個方法就是initializeDefaultPreferences(IPreferenceStore)。在這個方法中(參見)你應該把所有的值都設為默認值,才能夠使用preference store。我們在PreferenceConverter中用helper方法設定默認的color,PreferenceConverter答應插件開發者設置和得到一些常見的存儲類型的preference的值,例如FontData,Point等等。提供API是因為preference無論是存儲還是讀取都是String,以一種我們人可以理解的格式。這樣來平衡java的屬性機制。我們那個稍微復雜的錯誤單詞的preference在初始化的時候使用了預先設定的值。在PreferenceConvertor中并沒有提供API來存儲和讀取String數組。
  
  Color color= Display.getDefault().getSystemColor(SWT.COLOR_BLUE);PreferenceConverter.setDefault
  (store, HIGHLIGHT_PREFERENCE,
  color.getRGB());
  public class BadWordCheckerPlugin extends AbstractUIPlugin
  {
  //The shared instance.
  private static BadWordCheckerPlugin plugin;
  //The identifiers for the preferences
  public static final String BAD_WORDS_PREFERENCE = "badwords";
  public static final String HIGHLIGHT_PREFERENCE = "highlight";
  //The default values for the preferences
  public static final String DEFAULT_BAD_WORDS = "bug;bogus;hack;";
  public static final int DEFAULT_HIGHLIGHT = SWT.COLOR_BLUE;
  public BadWordCheckerPlugin(IPluginDescriptor descriptor)
  {
  super(descriptor);
  plugin = this;
  }
  public static BadWordCheckerPlugin getDefault()
  {
  return plugin;  }
  /**   * Initializes a preference store with default preference values
  * for this plug-in.
  */  protected void initializeDefaultPreferences(IPreferenceStore store)
  {
  store.setDefault(BAD_WORDS_PREFERENCE, DEFAULT_BAD_WORDS);
  Color color= Display.getDefault().getSystemColor(DEFAULT_HIGHLIGHT);
  PreferenceConverter.setDefault(store, HIGHLIGHT_PREFERENCE, color.getRGB());
  }
  }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91短视频版高清在线观看www | 欧美激情第一区 | 精品国产一区二区三区久久久蜜月 | 免费观看黄色影片 | 久久久久se | av电影免费在线看 | 国产资源在线看 | 国产精品视频2021 | 九九热精品视频在线免费观看 | 色七七网站 | 国产papa| 成年人在线免费播放视频 | 久久国产精品91 | 思思久而久而蕉人 | 草莓福利视频在线观看 | 国产精品久久久久久久久久久久久久久久 | 欧美一级美片在线观看免费 | 日韩毛片网 | 天天都色| 久久精品免费国产 | 在线成人免费观看视频 | 亚洲第一页中文字幕 | 久草在线最新免费 | 亚洲综合视频网 | 毛片大全免费 | 一级免费大片 | 国产精品热| 色诱亚洲精品久久久久久 | 欧美成人午夜精品久久久 | 小雪奶水翁胀公吸小说最新章节 | 一级免费黄色免费片 | 一级外国毛片 | xvideos korean | 亚洲一区二区三区精品在线观看 | 欧美伦理一区二区 | 12av毛片 | 毛片视频网址 | 色婷婷tv | 成av人在线观看 | 免费一级欧美在线观看视频 | 国产九色在线观看 |