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

How do I access general eclipse preferences in my own plugin

我想在我的插件中获取通用控制台属性的值。 我该怎么做?

我想我应该这样做:

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

但是"preferenseName"是什么?我必须使用哪一家偏好商店。 http://i.stack.imgur.com/IqSuE.jpg

您使用 ID 访问首选项:

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

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

这些首选项在 org.eclipse.debug.ui 插件中

您可以使用

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

首选项值列在 IDebugPreferenceConstants 界面中,但这是内部 class,因此不应使用。

值为

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);