Class OptionConfigKey<T>
java.lang.Object
uk.ac.starlink.ttools.plot2.config.ConfigKey<T>
uk.ac.starlink.ttools.plot2.config.OptionConfigKey<T>
- Direct Known Subclasses:
MultiPointConfigKey
,PerUnitConfigKey
,SkySysConfigKey
Config key for use with items that can be chosen from a list of options.
The list is basically closed, though it may be possible programmatically
to supply an object of the required type.
For open lists of options see
ChoiceConfigKey
.- Since:
- 23 Feb 2013
- Author:
- Mark Taylor
-
Constructor Summary
ConstructorsConstructorDescriptionOptionConfigKey
(ConfigMeta meta, Class<T> clazz, T[] options) Constructor that uses the first of the supplied options as a default.OptionConfigKey
(ConfigMeta meta, Class<T> clazz, T[] options, T dflt) Constructor that specifies an explicit default and uses the default specifier type.OptionConfigKey
(ConfigMeta meta, Class<T> clazz, T[] options, T dflt, boolean useRadio) Constructor that specifies an explicit default and specifier type. -
Method Summary
Modifier and TypeMethodDescriptionConvenience method to add the result ofgetOptionsXml()
to the XML documentation of this key.Constructs a graphical control with which the user can specify a suitable value for association with this key.T[]
Returns the available options for this key.Returns an XML list of the available options for this config key.abstract String
getXmlDescription
(T value) Returns a description in XML of the given option value.Sets the usage string based on the currently configured options.stringToValue
(String txt) CallsvalueToString
repeatedly looking for a match.valueToString
(T value) Invokes thetoString
method of the supplied option.Methods inherited from class uk.ac.starlink.ttools.plot2.config.ConfigKey
cast, getDefaultValue, getMeta, getValueClass, toString
-
Constructor Details
-
OptionConfigKey
Constructor that specifies an explicit default and specifier type.- Parameters:
meta
- metadataclazz
- class to which all the possible options belongoptions
- array of possible values for this keydflt
- default option, should be one ofoptions
useRadio
- true to use radio buttons, false for a combo box
-
OptionConfigKey
Constructor that specifies an explicit default and uses the default specifier type.- Parameters:
meta
- metadataclazz
- class to which all the possible options belongoptions
- array of possible values for this keydflt
- default option, should be one ofoptions
-
OptionConfigKey
Constructor that uses the first of the supplied options as a default.- Parameters:
meta
- metadataclazz
- class to which all the possible options belongoptions
- array of possible values for this key, first element is used as the default value
-
-
Method Details
-
valueToString
Invokes thetoString
method of the supplied option. May be overridden.- Specified by:
valueToString
in classConfigKey<T>
- Parameters:
value
- possible value associated with this key- Returns:
- string representation
-
getXmlDescription
Returns a description in XML of the given option value. This, along withvalueToString(T)
, is used by thegetOptionsXml()
method to assemble a described list of the options.- Parameters:
value
- possible value of this key- Returns:
- short snippet of XML (not wrapped in any outer element) describing the value; may be null if no description required or available
-
stringToValue
CallsvalueToString
repeatedly looking for a match. This means that ifvalueToString
is overridden it is usually not necessary to override this method.- Specified by:
stringToValue
in classConfigKey<T>
- Parameters:
txt
- string representation of value- Returns:
- value
- Throws:
ConfigException
-
getOptions
Returns the available options for this key.- Returns:
- choosable values
-
createSpecifier
Description copied from class:ConfigKey
Constructs a graphical control with which the user can specify a suitable value for association with this key.- Specified by:
createSpecifier
in classConfigKey<T>
- Returns:
- new specifier
-
setOptionUsage
Sets the usage string based on the currently configured options. This method calls setStringUsage.- Returns:
- this object, as a convenience
-
addOptionsXml
Convenience method to add the result ofgetOptionsXml()
to the XML documentation of this key.- Returns:
- this object, as a convenience
-
getOptionsXml
Returns an XML list of the available options for this config key. Descriptions are not included.- Returns:
- p element
-