# Class DashConfigKey

java.lang.Object
uk.ac.starlink.ttools.plot2.config.ConfigKey<float[]>
uk.ac.starlink.ttools.plot2.config.ChoiceConfigKey<float[]>
uk.ac.starlink.ttools.plot2.config.DashConfigKey

public class DashConfigKey extends ChoiceConfigKey<float[]>
ConfigKey for selecting line dash types.

Since:
  9 Sep 2014
Author:
  Mark Taylor
See Also:
  - `BasicStroke.getDashArray()`

## Constructor Summary

Constructors
Constructor
Description
`DashConfigKey(ConfigMeta meta)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`static ConfigMeta`
`createDashMeta(String shortName, String longName)`
Returns a metadata object suitable for use with a DashConfigKey.
`Specifier<float[]>`
`createSpecifier()`
Constructs a graphical control with which the user can specify a suitable value for association with this key.
`float[]`
`decodeString(String sval)`
Takes a string, and attempts to turn it into an object which may be a value for this key.
`String`
`stringifyValue(float[] dash)`
Takes an object which may be a value of this key, and attempts to turn it into a string for reporting purposes.

### Methods inherited from class ChoiceConfigKey

`addOption, getOptionMap, stringToValue, valueToString`

### Methods inherited from class ConfigKey

`cast, getDefaultValue, getMeta, getValueClass, toString`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### DashConfigKey

public DashConfigKey(ConfigMeta meta)
Constructor.

Parameters:
  `meta` - key metadata

## Method Details

### decodeString

public float[] decodeString(String sval)
Description copied from class: `ChoiceConfigKey`
Takes a string, and attempts to turn it into an object which may be a value for this key. If the string is not of a recognised form, null is returned.

This method should be the opposite of `ChoiceConfigKey.stringifyValue(T)`, but does not need to be consistent with `stringToValue` or `valueToString`.

Specified by:
  `decodeString` in class `ChoiceConfigKey<float[]>`
Parameters:
  `sval` - string representation
Returns:
  typed object represented by sval, or null

### stringifyValue

public String stringifyValue(float[] dash)
Description copied from class: `ChoiceConfigKey`
Takes an object which may be a value of this key, and attempts to turn it into a string for reporting purposes.

This method should if possible be the opposite of `ChoiceConfigKey.decodeString(String)`, but does not need to be consistent with `stringToValue` or `valueToString`. If no round-trippable value is available, null should be returned.

Specified by:
  `stringifyValue` in class `ChoiceConfigKey<float[]>`
Parameters:
  `dash` - typed object
Returns:
  string representing object, or null

### createSpecifier

public Specifier<float[]> 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 class `ConfigKey<float[]>`
Returns:
  new specifier

### createDashMeta

public static ConfigMeta createDashMeta(String shortName, String longName)
Returns a metadata object suitable for use with a DashConfigKey.

Parameters:
  `shortName` - short key name
  `longName` - long key name
Returns:
  dash config metadata