如何在我自己的插件中访问常规eclipse首选项

时间:2015-06-08 10:07:31

标签: java eclipse plugins eclipse-plugin preferences

我想在我的插件中获得通用控制台属性的价值。 我怎么能这样做?

我想我应该这样做:

IPreferenceStore store = ScriptUIActivator.getDefault().getPreferenceStore();
store.getDefaultInt(preferenceName);

但是" preferenseName"?我必须使用哪个首选商店。 http://i.stack.imgur.com/IqSuE.jpg

2 个答案:

答案 0 :(得分:2)

这些首选项位于org.eclipse.debug.ui插件

您可以使用

访问首选项商店
IPreferenceStore store = new ScopedPreferenceStore(InstanceScope.INSTANCE, "org.eclipse.debug.ui");

首选项值列在IDebugPreferenceConstants接口中,但这是一个内部类,因此不应使用。

值为

public static final String CONSOLE_SYS_ERR_COLOR= "org.eclipse.debug.ui.errorColor";
public static final String CONSOLE_SYS_OUT_COLOR= "org.eclipse.debug.ui.outColor"; 
public static final String CONSOLE_SYS_IN_COLOR= "org.eclipse.debug.ui.inColor"; 
public static final String CONSOLE_BAKGROUND_COLOR= "org.eclipse.debug.ui.consoleBackground"; 

由于这些值是内部的,因此可能会更改,恕不另行通知。

首选项值是RGB字符串,您可以使用PreferenceConverter来处理这些:

RGB color = PreferenceConverter.getColor(preferenceStore, key);

PreferenceConverter.setValue(preferenceStore, key, rgb);

答案 1 :(得分:0)

您可以使用ID访问首选项:

来自org.eclipse.debug.internal.ui.preferences.IDebugPreferenceConstants

ID:

"org.eclipse.debug.ui.errorColor"
"org.eclipse.debug.ui.outColor"
"org.eclipse.debug.ui.inColor"
"org.eclipse.debug.ui.consoleBackground"