Package com.iizix.prop.ui.mlist
Class MLSlider
- java.lang.Object
- com.iizix.prop.ui.mlist.MLItem
- com.iizix.prop.ui.mlist.MLSlider
- All Implemented Interfaces:
IContentData<MLItemProp>
,IMLActionButtonListener
,IMLArrowActionListener
public class MLSlider extends MLItem implements IMLArrowActionListener, IMLActionButtonListener
Slider is a component that accepts any user input (sliding selection on a numeric value).The slider can be preceded with a leading text with an optional fixed width, and the text entry will take up the remaining space in the list item.
An action button can be added to the trailing side.
An optional description text can be added to the bottom of the list item.
- Author:
- Mikael Andersson, Christopher Mindus
Field Summary
Fields Modifier and Type Field Description static java.lang.String
PN_ARROW
Property name: display trailing arrow "arrow".static java.lang.String
PN_SL_MAX_VALUE
Property name: Maximum value.static java.lang.String
PN_SL_MIN_VALUE
Property name: Minimum value.static java.lang.String
PN_SL_VALUE
Property name: Numeric value.static java.lang.String
PN_SL_VALUE_STEP
Property name: Value step.static java.lang.Object[]
TABLE_COLUMN_NAME_OR_ATOMS
The table column atoms or property names used.static Value.Type[]
TABLE_COLUMN_VALUE_TYPES
Best value types for the columns.Fields inherited from class com.iizix.prop.ui.mlist.MLItem
FIRST_COLUMN_INDEX, PN_ACTION, PN_ANIMATION, PN_DESCRIPTION, PN_ICON, PN_ICON_MARGINS, PN_LEADING_TEXT, PN_LEADING_WIDTH, PN_LEADING_WRAP, PN_V_DESCRIPTION, PN_V_LEADING_TEXT, PN_VS_FOCUS
Constructor Summary
Constructors Constructor Description MLSlider(KString text, boolean isArrowDisplayed)
Constructor for a simple item that is to be added into a list.MLSlider(java.lang.String text, boolean isArrowDisplayed)
Constructor for a simple item without trailing text that is to be added into a list.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
addListener(IMLActionButtonListener listener)
Adds an action button listener.boolean
addListener(IMLArrowActionListener listener)
Adds an action listener for the arrow.protected int
getDescriptionColumn()
Returns the column index for the description.protected int
getLeadingTextColumn()
Returns the column index for the leading text.double
getMaxValue()
Gets the maximum value for the list item.double
getMinValue()
Gets the minimum value for the list item.MLItemType
getType()
Returns the type.double
getValue()
Gets the value for the list item.double
getValueStep()
Gets the value step for the list item.void
initialize(MLItemProp item)
Initializes the item property from the content data.boolean
isArrowDisplayed()
Returns if the trailing arrow is displayed or not.void
onActionButtonInvoked(MLItem item)
Called when the action button is invoked by the user.void
onArrowInvoked(MLItem item)
Called when the arrow action is invoked.void
refreshFromVS(int[] columns)
Refreshes contents from VirtualSpace.boolean
removeListener(IMLActionButtonListener listener)
Removes an action button listener.boolean
removeListener(IMLArrowActionListener listener)
Removes an action listener for the arrow.boolean
setArrowDisplayed(boolean on)
Sets if the trailing arrow should be displayed or not.boolean
setSetMaxValue(double d)
Sets the maximum value for the list item.boolean
setSetMinValue(double d)
Sets the minimum value for the list item.boolean
setValue(double d)
Sets the value for the list item.boolean
setValueStep(double d)
Sets the value step for the list item.Methods inherited from class com.iizix.prop.ui.mlist.MLItem
addMappings, doBooleanSelectionOnly, getContextMenu, getGroup, getIcon, getIconMargins, getItemProp, getLeadingText, getLeadingTextWrap, getLeadingWidth, getSelectionPropName, getSelectionState, getVSRow, hasActionSupport, isEnabled, isReadOnly, isSelected, isVisible, setActionSupport, setContextMenu, setDescription, setEnabled, setIcon, setIconMargins, setIconPadding, setLeadingText, setLeadingTextEllipsis, setLeadingTextSingleLine, setLeadingTextWrap, setLeadingTextWrap, setLeadingWidth, setReadOnly, setSelected, setSelection, setSelectionInternal, setVisible
Field Detail
PN_SL_VALUE
public static final java.lang.String PN_SL_VALUE
Property name: Numeric value.- See Also:
- Constant Field Values
PN_SL_MAX_VALUE
public static final java.lang.String PN_SL_MAX_VALUE
Property name: Maximum value.- See Also:
- Constant Field Values
PN_SL_MIN_VALUE
public static final java.lang.String PN_SL_MIN_VALUE
Property name: Minimum value.- See Also:
- Constant Field Values
PN_SL_VALUE_STEP
public static final java.lang.String PN_SL_VALUE_STEP
Property name: Value step.- See Also:
- Constant Field Values
PN_ARROW
public static final java.lang.String PN_ARROW
Property name: display trailing arrow "arrow".- See Also:
- Constant Field Values
TABLE_COLUMN_NAME_OR_ATOMS
public static java.lang.Object[] TABLE_COLUMN_NAME_OR_ATOMS
The table column atoms or property names used.
TABLE_COLUMN_VALUE_TYPES
public static Value.Type[] TABLE_COLUMN_VALUE_TYPES
Best value types for the columns.
Constructor Detail
MLSlider
public MLSlider(java.lang.String text, boolean isArrowDisplayed)
Constructor for a simple item without trailing text that is to be added into a list.- Parameters:
text
- The leading text, null for none.isArrowDisplayed
- Flag for arrow display.
MLSlider
public MLSlider(KString text, boolean isArrowDisplayed)
Constructor for a simple item that is to be added into a list.- Parameters:
text
- The leading text, null for none.isArrowDisplayed
- Flag for arrow display.
Method Detail
getType
public MLItemType getType()
Returns the type.
getLeadingTextColumn
protected int getLeadingTextColumn()
Returns the column index for the leading text. Types supporting description text must override this method.- Specified by:
getLeadingTextColumn
in classMLItem
- Returns:
- The column index, or -1 for none.
getDescriptionColumn
protected int getDescriptionColumn()
Returns the column index for the description. Types supporting description text must override this method.- Specified by:
getDescriptionColumn
in classMLItem
- Returns:
- The column index = 2.
refreshFromVS
public void refreshFromVS(int[] columns)
Refreshes contents from VirtualSpace.- Specified by:
refreshFromVS
in interfaceIContentData<MLItemProp>
- Specified by:
refreshFromVS
in classMLItem
- Parameters:
columns
- The connected table columns indicies, -1 for none.
initialize
public void initialize(MLItemProp item)
Initializes the item property from the content data. Each list item must implement this method to provider initialization of its own and call
.initialize(MLItemProp)
- Specified by:
initialize
in interfaceIContentData<MLItemProp>
- Parameters:
item
- The item.
getValue
public double getValue()
Gets the value for the list item.- Returns:
- The double value, or null if not set.
setValue
public boolean setValue(double d)
Sets the value for the list item.- Parameters:
d
- The new value, or null for none.- Returns:
- true for changed, false for no change.
getMaxValue
public double getMaxValue()
Gets the maximum value for the list item.- Returns:
- The double value, or null if not set.
setSetMaxValue
public boolean setSetMaxValue(double d)
Sets the maximum value for the list item.- Parameters:
d
- The new value, or null for none.- Returns:
- true for changed, false for no change.
getMinValue
public double getMinValue()
Gets the minimum value for the list item.- Returns:
- The double value, or null if not set.
setSetMinValue
public boolean setSetMinValue(double d)
Sets the minimum value for the list item.- Parameters:
d
- The new value, or null for none.- Returns:
- true for changed, false for no change.
getValueStep
public double getValueStep()
Gets the value step for the list item.- Returns:
- The double value, or null if not set.
setValueStep
public boolean setValueStep(double d)
Sets the value step for the list item.- Parameters:
d
- The new value, or null for none.- Returns:
- true for changed, false for no change.
isArrowDisplayed
public boolean isArrowDisplayed()
Returns if the trailing arrow is displayed or not.- Returns:
- true to display arrow, false not to display arrow.
setArrowDisplayed
public boolean setArrowDisplayed(boolean on)
Sets if the trailing arrow should be displayed or not.- Parameters:
on
- The display flag: true to display arrow, false not to display arrow.- Returns:
- true for changed, false for no change.
addListener
public boolean addListener(IMLActionButtonListener listener)
Adds an action button listener. Calling this method multiple times with the same listener will have no effect (but to return false).- Parameters:
listener
- The listener to add.- Returns:
- true if the listener was added, false otherwise.
- Throws:
java.lang.NullPointerException
- If the listener isnull
.
removeListener
public boolean removeListener(IMLActionButtonListener listener)
Removes an action button listener.- Parameters:
listener
- The listener to remove.- Returns:
- true if listener is successfully removed, false otherwise.
onActionButtonInvoked
public void onActionButtonInvoked(MLItem item)
Called when the action button is invoked by the user. By default, this method will invoke all potential action listeners. A subclass might override this method instead of adding a listener. This subclass should then call thesuper.onActionButtonInvoked(item)
method in case listeners are added by others.- Specified by:
onActionButtonInvoked
in interfaceIMLActionButtonListener
- Parameters:
item
- "this" item.
addListener
public boolean addListener(IMLArrowActionListener listener)
Adds an action listener for the arrow. Calling this method multiple times with the same listener will have no effect (but to return false).- Parameters:
listener
- The listener to add.- Returns:
- true if the listener was added, false otherwise.
- Throws:
java.lang.NullPointerException
- If the listener isnull
.
removeListener
public boolean removeListener(IMLArrowActionListener listener)
Removes an action listener for the arrow.- Parameters:
listener
- The listener to remove.- Returns:
- true if listener is successfully removed, false otherwise.
onArrowInvoked
public void onArrowInvoked(MLItem item)
Called when the arrow action is invoked. By default, this method will invoke all potential arrow action listeners. A subclass might override this method instead of adding a listener. This subclass should then call thesuper.onArrowInvoked(item)
method in case listeners are added by others.- Specified by:
onArrowInvoked
in interfaceIMLArrowActionListener
- Parameters:
item
- "this" item.