// 下階層用テンプレート #topicpath ---- //ここにコンテンツを記述します。 さて、ここではプラグインが使用する設定値の保存とリストアを実装します。このサイトでも -[[org.eclipse.ui.IWorkbenchPreferencePage(設定ページ)>Eclipse/プラグイン開発のTIPS集/org.eclipse.ui.IWorkbenchPreferencePage(設定ページ)]] -[[IPreferenceStoreのサンプル:http://kino.mine.nu/pukiwiki/index.php?Eclipse%2F%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3%B3%AB%C8%AF%A4%CETIPS%BD%B8#r83fa929]] などでちょっとサンプルがあります。基本的には -UIプラグインごとに存在する、設定を保存する箱となる org.eclipse.jface.preference.IPreferenceStore インターフェース -上の箱に値を設定するためのダイアログを形成するorg.eclipse.ui.IWorkbenchPreferencePage インターフェース -初期値を設定するための拡張ポイント org.eclipse.core.runtime.preferences を作成することになります((IPreferenceStoreは作成しないけど))。 ***org.eclipse.core.runtime.preferences [#r6a0d150] まずは初期値を設定するための拡張ポイントと実装クラスを作成します。 この拡張ポイントのplugin.xmlの記述は以下のようになりました。 <extension point="org.eclipse.core.runtime.preferences"> <initializer class="nu.mine.kino.plugin.google.ui. initializer.GooglePreferenceInitializer"/> </extension> 実装クラスは以下の通り: package nu.mine.kino.plugin.google.ui.initializer; import nu.mine.kino.plugin.google.ui.GooglePlugin; import nu.mine.kino.plugin.google.ui.preferences.PreferenceConstants; import org.apache.log4j.Logger; import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer; import org.eclipse.jface.preference.IPreferenceStore; public class GooglePreferenceInitializer extends AbstractPreferenceInitializer { private static final Logger logger = Logger .getLogger(GooglePreferenceInitializer.class); public void initializeDefaultPreferences() { logger.debug("initializeDefaultPreferences() - start"); IPreferenceStore store = GooglePlugin.getDefault().getPreferenceStore(); logger.debug(store); store.setDefault(PreferenceConstants.GOOGLE_KEY, ""); // ↑ここで初期値を設定している logger.debug(GooglePlugin.getDefault().getPreferenceStore().getString( PreferenceConstants.GOOGLE_KEY)); logger.debug("initializeDefaultPreferences() - end"); } } ***org.eclipse.jface.preference.IPreferenceStore [#u2db184c] ***org.eclipse.ui.IWorkbenchPreferencePage [#t9d47523] 最後に設定画面を作成します。設定画面は org.eclipse.ui.preferencePages 拡張ポイントと、その実装クラスを作成します。 拡張ポイントの記述は以下の通り: <extension point="org.eclipse.ui.preferencePages"> <page class="nu.mine.kino.plugin.google.ui.preferences.GooglePreferencePage" name="Google検索" id="nu.mine.kino.plugin.google.ui.preferences.GooglePreferencePage"/> </extension> 実装クラスは以下の通り: ***スクリーンショット [#reecb6fd] ---- この記事は #vote(おもしろかった,そうでもない) #comment #topicpath SIZE(10){現在のアクセス:&counter;}