Package org.eclipse.jface.dialogs
Class DialogSettings
- java.lang.Object
-
- org.eclipse.jface.dialogs.DialogSettings
-
- All Implemented Interfaces:
IDialogSettings
public class DialogSettings extends Object implements IDialogSettings
Concrete implementation of a dialog settings (IDialogSettings
) using a hash table and XML. The dialog store can be read from and saved to a stream. All keys and values must be strings or array of strings. Primitive types are converted to strings.This class was not designed to be subclassed. Here is an example of using a DialogSettings:
DialogSettings settings = new DialogSettings("root"); settings.put("Boolean1",true); settings.put("Long1",100); settings.put("Array1",new String[]{"aaaa1","bbbb1","cccc1"}); DialogSettings section = new DialogSettings("sectionName"); settings.addSection(section); section.put("Int2",200); section.put("Float2",1.1); section.put("Array2",new String[]{"aaaa2","bbbb2","cccc2"}); settings.save("c:\\temp\\test\\dialog.xml");
- Restriction:
- This class is not intended to be subclassed by clients.
-
-
Constructor Summary
Constructors Constructor Description DialogSettings(String sectionName)
Create an empty dialog settings which loads and saves its content to a file.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description IDialogSettings
addNewSection(String sectionName)
Create a new section in the receiver and return it.void
addSection(IDialogSettings section)
Add a section in the receiver.String
get(String key)
Returns the value of the given key in this dialog settings.String[]
getArray(String key)
Returns the value, an array of strings, of the given key in this dialog settings.boolean
getBoolean(String key)
Convenience API.double
getDouble(String key)
Convenience API.float
getFloat(String key)
Convenience API.int
getInt(String key)
Convenience API.long
getLong(String key)
Convenience API.String
getName()
Returns the IDialogSettings name.static IDialogSettings
getOrCreateSection(IDialogSettings settings, String sectionName)
Returns a section with the given name in the given dialog settings.IDialogSettings
getSection(String sectionName)
Returns the section with the given name in this dialog settings.IDialogSettings[]
getSections()
Returns all the sections in this dialog settings.void
load(Reader r)
Load a dialog settings from a stream and fill the receiver with its content.void
load(String fileName)
Load a dialog settings from a file and fill the receiver with its content.void
put(String key, boolean value)
Convenience API.void
put(String key, double value)
Convenience API.void
put(String key, float value)
Convenience API.void
put(String key, int value)
Convenience API.void
put(String key, long value)
Convenience API.void
put(String key, String value)
Adds the pairkey/value
to this dialog settings.void
put(String key, String[] value)
Adds the pairkey/value
to this dialog settings.IDialogSettings
removeSection(String sectionName)
Remove a section by name in the receiver.void
removeSection(IDialogSettings section)
Remove a section in the receiver.void
save(Writer writer)
Save a dialog settings to a streamvoid
save(String fileName)
Save a dialog settings to a file.
-
-
-
Constructor Detail
-
DialogSettings
public DialogSettings(String sectionName)
Create an empty dialog settings which loads and saves its content to a file. Use the methodsload(String)
andstore(String)
to load and store this dialog settings.- Parameters:
sectionName
- the name of the section in the settings.
-
-
Method Detail
-
addNewSection
public IDialogSettings addNewSection(String sectionName)
Description copied from interface:IDialogSettings
Create a new section in the receiver and return it.- Specified by:
addNewSection
in interfaceIDialogSettings
- Parameters:
sectionName
- the name of the new section- Returns:
- the new section
- See Also:
getOrCreateSection(IDialogSettings, String)
-
addSection
public void addSection(IDialogSettings section)
Description copied from interface:IDialogSettings
Add a section in the receiver.- Specified by:
addSection
in interfaceIDialogSettings
- Parameters:
section
- the section to be added
-
removeSection
public void removeSection(IDialogSettings section)
Remove a section in the receiver. If the given section does not exist, nothing is done.- Parameters:
section
- the section to be removed. Must not benull
.- Since:
- 3.9
-
removeSection
public IDialogSettings removeSection(String sectionName)
Remove a section by name in the receiver. If the given section does not exist, nothing is done.- Parameters:
sectionName
- the name of the section to be removed. Must not benull
.- Returns:
- The dialog section removed, or
null
if it wasn't there. - Since:
- 3.9
-
get
public String get(String key)
Description copied from interface:IDialogSettings
Returns the value of the given key in this dialog settings.- Specified by:
get
in interfaceIDialogSettings
- Parameters:
key
- the key- Returns:
- the value, or
null
if none
-
getArray
public String[] getArray(String key)
Description copied from interface:IDialogSettings
Returns the value, an array of strings, of the given key in this dialog settings.- Specified by:
getArray
in interfaceIDialogSettings
- Parameters:
key
- the key- Returns:
- the array of string, or
null
if none
-
getBoolean
public boolean getBoolean(String key)
Description copied from interface:IDialogSettings
Convenience API. Convert the value of the given key in this dialog settings to a boolean and return it.- Specified by:
getBoolean
in interfaceIDialogSettings
- Parameters:
key
- the key- Returns:
- the boolean value, or
false
if none
-
getDouble
public double getDouble(String key) throws NumberFormatException
Description copied from interface:IDialogSettings
Convenience API. Convert the value of the given key in this dialog settings to a double and return it.- Specified by:
getDouble
in interfaceIDialogSettings
- Parameters:
key
- the key- Returns:
- the value coverted to double, or throws
NumberFormatException
if none - Throws:
NumberFormatException
- if the string value does not contain a parsable number.- See Also:
Double.valueOf(java.lang.String)
-
getFloat
public float getFloat(String key) throws NumberFormatException
Description copied from interface:IDialogSettings
Convenience API. Convert the value of the given key in this dialog settings to a float and return it.- Specified by:
getFloat
in interfaceIDialogSettings
- Parameters:
key
- the key- Returns:
- the value coverted to float, or throws
NumberFormatException
if none - Throws:
NumberFormatException
- if the string value does not contain a parsable number.- See Also:
Float.valueOf(java.lang.String)
-
getInt
public int getInt(String key) throws NumberFormatException
Description copied from interface:IDialogSettings
Convenience API. Convert the value of the given key in this dialog settings to a int and return it.- Specified by:
getInt
in interfaceIDialogSettings
- Parameters:
key
- the key- Returns:
- the value coverted to int, or throws
NumberFormatException
if none - Throws:
NumberFormatException
- if the string value does not contain a parsable number.- See Also:
Integer.valueOf(java.lang.String)
-
getLong
public long getLong(String key) throws NumberFormatException
Description copied from interface:IDialogSettings
Convenience API. Convert the value of the given key in this dialog settings to a long and return it.- Specified by:
getLong
in interfaceIDialogSettings
- Parameters:
key
- the key- Returns:
- the value coverted to long, or throws
NumberFormatException
if none - Throws:
NumberFormatException
- if the string value does not contain a parsable number.- See Also:
Long.valueOf(java.lang.String)
-
getName
public String getName()
Description copied from interface:IDialogSettings
Returns the IDialogSettings name.- Specified by:
getName
in interfaceIDialogSettings
- Returns:
- the name
-
getOrCreateSection
public static IDialogSettings getOrCreateSection(IDialogSettings settings, String sectionName)
Returns a section with the given name in the given dialog settings. If the section doesn't exist yet, then it is first created.- Parameters:
settings
- the parent settingssectionName
- the name of the section- Returns:
- the section
- Since:
- 3.7
-
getSection
public IDialogSettings getSection(String sectionName)
Description copied from interface:IDialogSettings
Returns the section with the given name in this dialog settings.- Specified by:
getSection
in interfaceIDialogSettings
- Parameters:
sectionName
- the key- Returns:
- IDialogSettings (the section), or
null
if none - See Also:
getOrCreateSection(IDialogSettings, String)
-
getSections
public IDialogSettings[] getSections()
Description copied from interface:IDialogSettings
Returns all the sections in this dialog settings.- Specified by:
getSections
in interfaceIDialogSettings
- Returns:
- the section, or
null
if none
-
load
public void load(Reader r)
Description copied from interface:IDialogSettings
Load a dialog settings from a stream and fill the receiver with its content.- Specified by:
load
in interfaceIDialogSettings
- Parameters:
r
- a Reader specifying the stream where the settings are read from.
-
load
public void load(String fileName) throws IOException
Description copied from interface:IDialogSettings
Load a dialog settings from a file and fill the receiver with its content.- Specified by:
load
in interfaceIDialogSettings
- Parameters:
fileName
- the name of the file the settings are read from.- Throws:
IOException
- on IO problem while loading
-
put
public void put(String key, String[] value)
Description copied from interface:IDialogSettings
Adds the pairkey/value
to this dialog settings.- Specified by:
put
in interfaceIDialogSettings
- Parameters:
key
- the key.value
- the value to be associated with thekey
-
put
public void put(String key, double value)
Description copied from interface:IDialogSettings
Convenience API. Converts the doublevalue
to a string and adds the pairkey/value
to this dialog settings.- Specified by:
put
in interfaceIDialogSettings
- Parameters:
key
- the key.value
- the value to be associated with thekey
-
put
public void put(String key, float value)
Description copied from interface:IDialogSettings
Convenience API. Converts the floatvalue
to a string and adds the pairkey/value
to this dialog settings.- Specified by:
put
in interfaceIDialogSettings
- Parameters:
key
- the key.value
- the value to be associated with thekey
-
put
public void put(String key, int value)
Description copied from interface:IDialogSettings
Convenience API. Converts the intvalue
to a string and adds the pairkey/value
to this dialog settings.- Specified by:
put
in interfaceIDialogSettings
- Parameters:
key
- the key.value
- the value to be associated with thekey
-
put
public void put(String key, long value)
Description copied from interface:IDialogSettings
Convenience API. Converts the longvalue
to a string and adds the pairkey/value
to this dialog settings.- Specified by:
put
in interfaceIDialogSettings
- Parameters:
key
- the key.value
- the value to be associated with thekey
-
put
public void put(String key, String value)
Description copied from interface:IDialogSettings
Adds the pairkey/value
to this dialog settings.- Specified by:
put
in interfaceIDialogSettings
- Parameters:
key
- the key.value
- the value to be associated with thekey
-
put
public void put(String key, boolean value)
Description copied from interface:IDialogSettings
Convenience API. Converts the booleanvalue
to a string and adds the pairkey/value
to this dialog settings.- Specified by:
put
in interfaceIDialogSettings
- Parameters:
key
- the key.value
- the value to be associated with thekey
-
save
public void save(Writer writer) throws IOException
Description copied from interface:IDialogSettings
Save a dialog settings to a stream- Specified by:
save
in interfaceIDialogSettings
- Parameters:
writer
- a Writer specifying the stream the settings are written in.- Throws:
IOException
- on IO problem while saving
-
save
public void save(String fileName) throws IOException
Description copied from interface:IDialogSettings
Save a dialog settings to a file.- Specified by:
save
in interfaceIDialogSettings
- Parameters:
fileName
- the name of the file the settings are written in.- Throws:
IOException
- on IO problem while saving
-
-