22 package com.realtime.crossfire.jxclient.settings.options;
26 import java.util.HashMap;
28 import org.jetbrains.annotations.NotNull;
40 private final Map<String, Entry>
options =
new HashMap<>();
64 if (options.containsKey(optionName)) {
68 options.put(optionName,
new Entry(option, documentation));
76 options.remove(optionName);
87 final Entry entry = options.get(optionName);
99 for (
final Map.Entry<String,
Entry> e : options.entrySet()) {
100 final String optionName = e.getKey();
101 final Object option = e.getValue().getOption();
103 final CheckBoxOption checkBoxOption = (CheckBoxOption)option;
105 if (checkBoxOption.
isChecked() == checked) {
112 throw new AssertionError();
121 for (
final Map.Entry<String,
Entry> e : options.entrySet()) {
122 final String optionName = e.getKey();
123 final Entry entry = e.getValue();
127 final CheckBoxOption checkBoxOption = (CheckBoxOption)option;
130 throw new AssertionError();
159 private Entry(@NotNull
final Option option, @NotNull
final String documentation) {
final Settings settings
The settings instance for loading/saving option values.
The base class for all options.
void putBoolean(@NotNull final SettingsEntry< Boolean > key, final boolean value)
Stores a key/value pair.
final Map< String, Entry > options
Maps option name to option instance.
void setChecked(final boolean checked)
Sets the current state.
Option getOption()
Returns the Option instance.
OptionManager(@NotNull final Settings settings)
Creates a new instance.
Pair of Option and corresponding documentation string.
Maintains a set of named options.
CheckBoxOption getCheckBoxOption(@NotNull final String optionName)
Returns a check box option.
void addOption(@NotNull final String optionName, @NotNull final String documentation, @NotNull final Option option)
Adds a new option.
An entry in the settings file.
final String documentation
The corresponding documentation string.
boolean getBoolean(@NotNull final SettingsEntry< Boolean > key)
Returns the boolean associated with the specified key at a node or.
void removeOption(@NotNull final String optionName)
Removes an option by name.
boolean inhibitSave()
Returns whether the option should not be saved.
Maintains a set of key/value pairs.
void loadOptions()
Loads all options' states from the backing settings instance.
Indicates about an incorrect option.
String getDocumentation()
Returns the corresponding documentation string.
final Option option
The Option instance.
void saveOptions()
Saves all options' states to the backing settings instance.
boolean isChecked()
Returns the current state.
The base class for all check box options.
Entry(@NotNull final Option option, @NotNull final String documentation)
Creates a new instance.
void fireStateChangedEvent()
abstract boolean isDefaultChecked()
Returns the default value of isChecked().