2013-10-04 76 views
0

我試圖設置一些值到Eclipse首選項,特別是在網絡連接 - >代理旁路。我想製作一些自己的作品。 那麼我怎麼能把那裏的一些價值? 通過eclipse偏好設置:通過插件設置代理旁路默認值

IPreferenceStore store = JavaPlugin.getDefault().getPreferenceStore(); 

或更好地

InstanceScope.INSTANCE.getNode(... ? 

我如何訪問它,把一些值? 任何提示將受到歡迎。

非常感謝你們!

回答

0

你可以找到有關ConfigurationScopeInstanceScopeDefaultScoperight here, from Vogella的詳細信息。您要做的是創建FieldEditor s。

創建首選項頁面是這樣的:
public class ProxyPreferencesPage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage

你還需要一個「靜態」類(最好接口)舉行的首選項鍵 IProxyPreferenceKeys - >把你的所有喜好的變量在這裏。

創建字段編輯器時,將首選項常量傳遞給它。

new ColorFieldEditor(IProxyPreferenceKeys.PROXY, "Proxy color:", parent); 

最後,在你的代碼,當你需要的偏好設置,只得到這樣的:

Activator.getDefault().getPreferenceStore().getString(IProxyPreferenceKeys.PROXY)

+0

嗨格雷格定義的按鍵,感謝您的諮詢。 但我不想在eclipse首選項中啓動一個新頁面,我想將值添加到現有的代理旁路字段(在網絡連接頁面上)。 您最後的代碼片段就是我要找的內容,但我需要更多有關如何將值添加到商店中的信息。 或者我可以訪問ProxyPreferencePage來添加我的值嗎? – Ahpuch

+0

@Ahpuch嘗試使用'InstanceScope.INSTANCE.getNode(..)'中的'put' API或偏好存儲中的'setValue(..)'API。測試一下。我認爲玩'InstanceScope'是更好的解決方案,只有你必須知道代理設置的首選項。 – GGrec

0

的網絡連接首選項頁面是org.eclipse.ui.internal.net.ProxyPreferencePage。這並不直接從首選項中獲取值,而是通過ProxySelectorProxyManager(所有內部類)等類。

貌似值實際上來自ConfigurationScope.INSTANCE.getNode("org.eclipse.core.net")org.eclipse.core.internal.net.ProxyManager