Package com.iizix.prop.ui.mlist
Class MLSimple
- java.lang.Object
- com.iizix.prop.ui.mlist.MLItem
- com.iizix.prop.ui.mlist.MLSimple
- All Implemented Interfaces:
IContentData<MLItemProp>
,IMLArrowActionListener
public class MLSimple extends MLItem implements IMLArrowActionListener
The simple list item class.A simple list item has a text on leading/trailing sides and a description.
The trailing side is optional as well as the description.
- Author:
- Christopher Mindus
Field Summary
Fields Modifier and Type Field Description static java.lang.String
PN_ALIGN_OPPOSITE
Property name: trailing align opposite "ao".static java.lang.String
PN_ARROW
Property name: display trailing arrow "arrow".static java.lang.String
PN_TRAILING_TEXT
Property name: trailing text "tt".static java.lang.String
PN_TRAILING_WRAP
Property name: trailing text "tw".static java.lang.String
PN_V_TRAILING_TEXT
Property name: trailing text virtual column reference "V_tt".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 MLSimple(KString text, KString trailing, boolean isArrowDisplayed)
Constructor for a simple item that is to be added into a list.MLSimple(java.lang.String text, boolean isArrowDisplayed)
Constructor for a simple item without trailing text that is to be added into a list.MLSimple(java.lang.String text, java.lang.String trailing, boolean isArrowDisplayed)
Constructor for a simple item that is to be added into a list.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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.KString
getTrailingText()
Gets the trailing text for the list item.int
getTrailingTextWrap()
Gets option for trailing text wrap.MLItemType
getType()
Returns the type.void
initialize(MLItemProp item)
Initializes the item property from the content data.boolean
isArrowDisplayed()
Returns if the trailing arrow is displayed or not.boolean
isTrailingTextOppositeAligned()
Returns if the trailing text is aligned to the opposite side, i.e.void
onArrowInvoked(MLItem item)
Called when the arrow action is invoked.void
refreshFromVS(int[] columns)
Refreshes contents from VirtualSpace.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
setTrailingText(KString text)
Sets the trailing text for the list item.boolean
setTrailingTextOppositeAligned(boolean opposite)
Sets if the trailing text is aligned to the opposite side, i.e.boolean
setTrailingTextWrap(int opt)
Sets the option for trailing text wrap.boolean
setTrailingTextWrapEllipsis()
Sets the option for trailing text wrap to single line.boolean
setTrailingTextWrapMultiple()
Sets the option for trailing text wrap to multiple line.boolean
setTrailingTextWrapSingle()
Sets the option for trailing text wrap to single line.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_TRAILING_TEXT
public static final java.lang.String PN_TRAILING_TEXT
Property name: trailing text "tt".- See Also:
- Constant Field Values
PN_TRAILING_WRAP
public static final java.lang.String PN_TRAILING_WRAP
Property name: trailing text "tw".- See Also:
- Constant Field Values
PN_V_TRAILING_TEXT
public static final java.lang.String PN_V_TRAILING_TEXT
Property name: trailing text virtual column reference "V_tt".- See Also:
- Constant Field Values
PN_ALIGN_OPPOSITE
public static final java.lang.String PN_ALIGN_OPPOSITE
Property name: trailing align opposite "ao".- 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
MLSimple
public MLSimple(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.
MLSimple
public MLSimple(java.lang.String text, java.lang.String trailing, boolean isArrowDisplayed)
Constructor for a simple item that is to be added into a list.- Parameters:
text
- The leading text, null for none.trailing
- The trailing text, null for none.isArrowDisplayed
- Flag for arrow display.
Method Detail
getType
public MLItemType getType()
Returns the type.
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.
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, or -1 for none.
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.
getTrailingText
public KString getTrailingText()
Gets the trailing text for the list item.- Returns:
- The text, or null if none is set.
setTrailingText
public boolean setTrailingText(KString text)
Sets the trailing text for the list item.- Parameters:
text
- The new text, or null for none.- Returns:
- true for changed, false for no change.
isTrailingTextOppositeAligned
public boolean isTrailingTextOppositeAligned()
Returns if the trailing text is aligned to the opposite side, i.e. leading instead of trailing.- Returns:
- true if trailing text is aligned to leading side, false for aligned to the trailing side.
setTrailingTextOppositeAligned
public boolean setTrailingTextOppositeAligned(boolean opposite)
Sets if the trailing text is aligned to the opposite side, i.e. leading instead of trailing.- Parameters:
opposite
- Alignment flag: true if trailing text is aligned to leading side, false for aligned to the trailing side.- Returns:
- true for changed, false for no change.
getTrailingTextWrap
public int getTrailingTextWrap()
Gets option for trailing text wrap.- Returns:
- The trailing text wrap, multiple(0), single line(1), ellipsis(2).
setTrailingTextWrap
public boolean setTrailingTextWrap(int opt)
Sets the option for trailing text wrap.- Parameters:
opt
- The wrap option; multiple(0), single line(1), ellipsis(2).- Returns:
- true for changed, false for no change.
setTrailingTextWrapMultiple
public boolean setTrailingTextWrapMultiple()
Sets the option for trailing text wrap to multiple line.- Returns:
- true for changed, false for no change.
setTrailingTextWrapSingle
public boolean setTrailingTextWrapSingle()
Sets the option for trailing text wrap to single line.- Returns:
- true for changed, false for no change.
setTrailingTextWrapEllipsis
public boolean setTrailingTextWrapEllipsis()
Sets the option for trailing text wrap to single line.- 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(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.