Class ParameterImpl
- java.lang.Object
-
- com.biglybt.pifimpl.local.ui.config.ParameterImpl
-
- All Implemented Interfaces:
ParameterListener
,ConfigParameter
,EnablerParameter
,Parameter
- Direct Known Subclasses:
ActionParameterImpl
,BooleanParameterImpl
,ColorParameterImpl
,DirectoryParameterImpl
,FileParameterImpl
,FloatParameterImpl
,HyperlinkParameterImpl
,InfoParameterImpl
,IntListParameterImpl
,IntParameterImpl
,LabelParameterImpl
,ParameterGroupImpl
,ParameterTabFolderImpl
,PasswordParameterImpl
,StringListParameterImpl
,StringParameterImpl
,UIParameterImpl
,UITextAreaImpl
public abstract class ParameterImpl extends java.lang.Object implements EnablerParameter, ParameterListener
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String[]
allowedUiTypes
private java.util.List
change_listeners
protected java.lang.String
configKey
private java.lang.Boolean
enabled
private boolean
fancyIndent
private boolean
generate_intermediate_events
private java.util.List<ParameterImplListener>
impl_listeners
private int
indent
private java.lang.String
label
private java.lang.String
labelKey
private int
mode
private ParameterGroupImpl
parameter_group
private java.lang.String
refID
private java.util.List<Parameter>
toDisable
private java.util.List<Parameter>
toEnable
private java.util.List<ParameterValidator>
validator_listeners
private boolean
visible
-
Fields inherited from interface com.biglybt.pif.ui.config.Parameter
MODE_ADVANCED, MODE_BEGINNER, MODE_INTERMEDIATE
-
-
Constructor Summary
Constructors Constructor Description ParameterImpl(java.lang.String coreConfigKey, java.lang.String _labelKey)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
addConfigParameterListener(ConfigParameterListener l)
void
addDisabledOnSelection(Parameter parameter)
disables parameter when EnablerParameter is selected.void
addDisabledOnSelection(Parameter... parameters)
disables parameter when EnablerParameter is selected.void
addEnabledOnSelection(Parameter paramToEnable)
enables paramToEnable when this EnablerParameter is selected (checked).
paramToEnable is disabled when this EnablerParameter isn't selected (checked).void
addEnabledOnSelection(Parameter... parameters)
enables paramToEnable when this EnablerParameter is selected (checked).
paramToEnable is disabled when this EnablerParameter isn't selected (checked).void
addImplListener(ParameterImplListener l)
void
addListener(ParameterListener l)
Adds a listener triggered when the parameter is changed by the uservoid
addValidator(ParameterValidator validator)
Adds a validator to this parameter.void
destroy()
void
fireParameterChanged()
java.lang.String
getConfigKeyName()
java.util.List<Parameter>
getDisabledOnSelectionParameters()
java.util.List<Parameter>
getEnabledOnSelectionParameters()
boolean
getGenerateIntermediateEvents()
ParameterGroupImpl
getGroup()
int
getIndent()
java.lang.String
getKey()
Deprecated.(forRemoval=true) UsegetConfigKeyName()
java.lang.String
getLabelKey()
Retrieve the language bundle key for the label associated with this parameter.java.lang.String
getLabelText()
Retrieve the actual text of the label associated with this parameter.int
getMinimumRequiredUserMode()
Gets the lowest user mode required for this parameter to be displayed.java.lang.String
getReferenceID()
java.lang.Object
getValueObject()
Retrieve the parameter's value as an Object.boolean
hasBeenSet()
Indicates if a value has been set for the parameter.boolean
isEnabled()
Retrieves the enabled state for the UI object for this parameterboolean
isForUIType(java.lang.String uiType)
boolean
isIndentFancy()
boolean
isVisible()
Retrieves the visiblility state for the UI object for this parametervoid
parameterChanged(java.lang.String key)
Called, when a parameter has changed.void
refreshControl()
void
removeConfigParameterListener(ConfigParameterListener l)
void
removeImplListener(ParameterImplListener l)
void
removeListener(ParameterListener l)
Removes a previously added listenerboolean
resetToDefault()
Resets the parameter to its default valueboolean
search(java.util.regex.Pattern regex)
void
setAllowedUiTypes(java.lang.String... uiTypes)
void
setEnabled(boolean e)
Sets whether the UI object for this parameter is enabled (changeable) or disabled (not changeable, and usually grayed out)void
setGenerateIntermediateEvents(boolean b)
Controls whether or not 'parameter change' events are fired for each incremental value changevoid
setGroup(ParameterGroupImpl _group)
void
setIndent(int indent, boolean fancy)
void
setLabelKey(java.lang.String sLabelKey)
Set the label to use the supplied language bundle key for the label associated with this parametervoid
setLabelText(java.lang.String sText)
Set the text of the label associated to with this parameter to the literal text supplied.void
setMinimumRequiredUserMode(int _mode)
Sets the lowest user mode required for this parameter to be displayed.void
setReferenceID(java.lang.String refID)
void
setVisible(boolean _visible)
Sets whether the UI object for this parameter is visible to the userprivate void
triggerLabelChanged(java.lang.String text, boolean isKey)
ParameterValidator.ValidationInfo
validate(java.lang.Object newValue)
-
-
-
Field Detail
-
configKey
protected final java.lang.String configKey
-
labelKey
private java.lang.String labelKey
-
label
private java.lang.String label
-
mode
private int mode
-
enabled
private java.lang.Boolean enabled
-
visible
private boolean visible
-
generate_intermediate_events
private boolean generate_intermediate_events
-
toDisable
private java.util.List<Parameter> toDisable
-
toEnable
private java.util.List<Parameter> toEnable
-
change_listeners
private java.util.List change_listeners
-
impl_listeners
private java.util.List<ParameterImplListener> impl_listeners
-
validator_listeners
private java.util.List<ParameterValidator> validator_listeners
-
parameter_group
private ParameterGroupImpl parameter_group
-
indent
private int indent
-
fancyIndent
private boolean fancyIndent
-
refID
private java.lang.String refID
-
allowedUiTypes
private java.lang.String[] allowedUiTypes
-
-
Method Detail
-
getKey
@Deprecated public java.lang.String getKey()
Deprecated.(forRemoval=true) UsegetConfigKeyName()
-
addDisabledOnSelection
public void addDisabledOnSelection(Parameter parameter)
Description copied from interface:EnablerParameter
disables parameter when EnablerParameter is selected.- Specified by:
addDisabledOnSelection
in interfaceEnablerParameter
- Parameters:
parameter
- the Parameter to act on
-
addDisabledOnSelection
public void addDisabledOnSelection(Parameter... parameters)
Description copied from interface:EnablerParameter
disables parameter when EnablerParameter is selected.- Specified by:
addDisabledOnSelection
in interfaceEnablerParameter
- Parameters:
parameters
- the Parameter to act on
-
addEnabledOnSelection
public void addEnabledOnSelection(Parameter paramToEnable)
Description copied from interface:EnablerParameter
enables paramToEnable when this EnablerParameter is selected (checked).
paramToEnable is disabled when this EnablerParameter isn't selected (checked). Note: When this EnableParameter is disabled, paramToEnable's state will not be modified. In cases where parameter1 is enabled by its parent, and parameter1 enabled children, you must also parent.addEnabledOnSelection(children) if you want the children to be disabled when parent is unselected (unchecked).- Specified by:
addEnabledOnSelection
in interfaceEnablerParameter
- Parameters:
paramToEnable
- the Parameter to act on
-
addEnabledOnSelection
public void addEnabledOnSelection(Parameter... parameters)
Description copied from interface:EnablerParameter
enables paramToEnable when this EnablerParameter is selected (checked).
paramToEnable is disabled when this EnablerParameter isn't selected (checked). Note: When this EnableParameter is disabled, parametersToDisable's state will not be modified. In cases where parameter1 is enabled by its parent, and parameter1 enabled children, you must also parent.addEnabledOnSelection(children) if you want the children to be disabled when parent is unselected (unchecked).- Specified by:
addEnabledOnSelection
in interfaceEnablerParameter
- Parameters:
parameters
- the Parameter to act on
-
getDisabledOnSelectionParameters
public java.util.List<Parameter> getDisabledOnSelectionParameters()
-
getEnabledOnSelectionParameters
public java.util.List<Parameter> getEnabledOnSelectionParameters()
-
parameterChanged
public void parameterChanged(java.lang.String key)
Description copied from interface:ParameterListener
Called, when a parameter has changed. The listener could only react if the parameter name is relevant. Or the listener can just read all parameters again.- Specified by:
parameterChanged
in interfaceParameterListener
- Parameters:
key
- the name of the parameter that has changed
-
fireParameterChanged
public void fireParameterChanged()
-
setEnabled
public void setEnabled(boolean e)
Description copied from interface:Parameter
Sets whether the UI object for this parameter is enabled (changeable) or disabled (not changeable, and usually grayed out)- Specified by:
setEnabled
in interfaceParameter
- Parameters:
e
- The new enabled state
-
isEnabled
public boolean isEnabled()
Description copied from interface:Parameter
Retrieves the enabled state for the UI object for this parameter
-
getMinimumRequiredUserMode
public int getMinimumRequiredUserMode()
Description copied from interface:Parameter
Gets the lowest user mode required for this parameter to be displayed.- Specified by:
getMinimumRequiredUserMode
in interfaceParameter
- Returns:
- MODE_ constants above
-
setMinimumRequiredUserMode
public void setMinimumRequiredUserMode(int _mode)
Description copied from interface:Parameter
Sets the lowest user mode required for this parameter to be displayed.- Specified by:
setMinimumRequiredUserMode
in interfaceParameter
- Parameters:
_mode
- see MODE_ constants defined above
-
setVisible
public void setVisible(boolean _visible)
Description copied from interface:Parameter
Sets whether the UI object for this parameter is visible to the user- Specified by:
setVisible
in interfaceParameter
- Parameters:
_visible
- The new visibility state
-
isVisible
public boolean isVisible()
Description copied from interface:Parameter
Retrieves the visiblility state for the UI object for this parameter
-
setGenerateIntermediateEvents
public void setGenerateIntermediateEvents(boolean b)
Description copied from interface:Parameter
Controls whether or not 'parameter change' events are fired for each incremental value change- Specified by:
setGenerateIntermediateEvents
in interfaceParameter
-
getGenerateIntermediateEvents
public boolean getGenerateIntermediateEvents()
- Specified by:
getGenerateIntermediateEvents
in interfaceParameter
- Returns:
-
setGroup
public void setGroup(ParameterGroupImpl _group)
-
getGroup
public ParameterGroupImpl getGroup()
-
addListener
public void addListener(ParameterListener l)
Description copied from interface:Parameter
Adds a listener triggered when the parameter is changed by the user- Specified by:
addListener
in interfaceParameter
- Parameters:
l
- Listener to add
-
removeListener
public void removeListener(ParameterListener l)
Description copied from interface:Parameter
Removes a previously added listener- Specified by:
removeListener
in interfaceParameter
- Parameters:
l
- Listener to remove.
-
addImplListener
public void addImplListener(ParameterImplListener l)
-
removeImplListener
public void removeImplListener(ParameterImplListener l)
-
addConfigParameterListener
public void addConfigParameterListener(ConfigParameterListener l)
- Specified by:
addConfigParameterListener
in interfaceConfigParameter
-
removeConfigParameterListener
public void removeConfigParameterListener(ConfigParameterListener l)
- Specified by:
removeConfigParameterListener
in interfaceConfigParameter
-
addValidator
public void addValidator(ParameterValidator validator)
Description copied from interface:Parameter
Adds a validator to this parameter. The Validator will be called when the user tries to change the value. For parameters that have a text field, the validator will be called on each edit of the field. This allows you to notify the user of a potential error while they type. Subclasses may have helper functions that cast the "toValue" for you.- Specified by:
addValidator
in interfaceParameter
-
validate
public ParameterValidator.ValidationInfo validate(java.lang.Object newValue)
-
getLabelText
public java.lang.String getLabelText()
Description copied from interface:Parameter
Retrieve the actual text of the label associated with this parameter. This is the text after it has been looked up in the language bundle.- Specified by:
getLabelText
in interfaceParameter
- Returns:
- The label's text
-
setLabelText
public void setLabelText(java.lang.String sText)
Description copied from interface:Parameter
Set the text of the label associated to with this parameter to the literal text supplied.- Specified by:
setLabelText
in interfaceParameter
- Parameters:
sText
- The actual text to assign to the label
-
getLabelKey
public java.lang.String getLabelKey()
Description copied from interface:Parameter
Retrieve the language bundle key for the label associated with this parameter.- Specified by:
getLabelKey
in interfaceParameter
- Returns:
- The language bundle key, or null if the label is using literal text
-
setLabelKey
public void setLabelKey(java.lang.String sLabelKey)
Description copied from interface:Parameter
Set the label to use the supplied language bundle key for the label associated with this parameter- Specified by:
setLabelKey
in interfaceParameter
- Parameters:
sLabelKey
- The language bundle key to use.
-
getConfigKeyName
public final java.lang.String getConfigKeyName()
- Specified by:
getConfigKeyName
in interfaceParameter
-
hasBeenSet
public boolean hasBeenSet()
Description copied from interface:Parameter
Indicates if a value has been set for the parameter. If no value has been set, the default value will be used. To capture a "reset to default" event, you canParameter.addListener(ParameterListener)
orConfigParameter.addConfigParameterListener(ConfigParameterListener)
, and check if hasBeenSet is false.- Specified by:
hasBeenSet
in interfaceParameter
-
triggerLabelChanged
private void triggerLabelChanged(java.lang.String text, boolean isKey)
-
refreshControl
public void refreshControl()
-
destroy
public void destroy()
-
setIndent
public void setIndent(int indent, boolean fancy)
-
getIndent
public int getIndent()
-
isIndentFancy
public boolean isIndentFancy()
-
setReferenceID
public void setReferenceID(java.lang.String refID)
-
getReferenceID
public java.lang.String getReferenceID()
-
setAllowedUiTypes
public void setAllowedUiTypes(java.lang.String... uiTypes)
- Specified by:
setAllowedUiTypes
in interfaceParameter
-
isForUIType
public boolean isForUIType(java.lang.String uiType)
- Specified by:
isForUIType
in interfaceParameter
-
resetToDefault
public boolean resetToDefault()
Description copied from interface:Parameter
Resets the parameter to its default value- Specified by:
resetToDefault
in interfaceParameter
- Returns:
- true - value was reset; false - already reset
-
getValueObject
public java.lang.Object getValueObject()
Description copied from interface:Parameter
Retrieve the parameter's value as an Object. Subclasses will usually have a getValue() that will return a specific type.- Specified by:
getValueObject
in interfaceParameter
-
search
public boolean search(java.util.regex.Pattern regex)
-
-