<!ELEMENT extension (scope* , initializer* , modifier*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT scope EMPTY>
<!ATTLIST scope
name CDATA #REQUIRED
class CDATA #IMPLIED
storage CDATA #IMPLIED>
Element describing a client's definiton of a new preference scope.
<!ELEMENT initializer EMPTY>
<!ATTLIST initializer
class CDATA #REQUIRED>
Element which defines the class to use for runtime preference initialization.
<!ELEMENT modifier EMPTY>
<!ATTLIST modifier
class CDATA #REQUIRED>
Element which defines the class to use for preference modification listening.
<extension point="org.eclipse.equinox.preferences.preferences"> <scope name="foo" class="com.example.FooPrefs"/> <initializer class="com.example.MyPreferenceInitializer"/> <modifier class="com.example.MyModifyListener"/> </extension>If the client chooses let the Eclipse Platform handle the preference nodes but wishes to define a custom location/mechanism for persisting the data, then they are able to set the "storage" attribute on the "scope" element. Note that only one of the "class" and "storage" attributes can be defined at the same time. The class referenced in the "storage" attribute must extend the AbstractPreferenceStorage class. In the following example the "FooStorage" class handles the loading/saving for the "foo" preferences.
<extension point="org.eclipse.equinox.preferences.preferences"> <scope name="foo" storage="com.example.FooStorage"/> <initializer class="com.example.MyPreferenceInitializer"/> <modifier class="com.example.MyModifyListener"/> </extension>
org.eclipse.core.runtime.preferences.IPreferencesService
) is the hook into the Eclipse preference mechanism.
Copyright (c) 2004, 2014 IBM Corporation and others.
This program and the accompanying materials are made
available under the terms of the Eclipse Public License 2.0 which
accompanies this distribution, and is available at
https://www.eclipse.org/legal/epl-v20.html/
SPDX-License-Identifier: EPL-2.0