Class MLText

All Implemented Interfaces:
IContentData<MLItemProp>, ICustomDataProvider, IMLActionButtonListener, IMLArrowActionListener

public class MLText extends MLItem implements IMLArrowActionListener, IMLActionButtonListener
Text entry is a text box that accepts any user input, with the additional specification of text type to show a special keyboard (e.g. URL, Phone Number, Numeric).

The text entry 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.

The text entry may have a fixed width and be trailing justified (i.e. right for LTR or left for RTL).

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:
Christopher Mindus
  • Field Details Link icon

    • PN_EF_HINT Link icon

      public static final String PN_EF_HINT
      Property name: entry field hint "hint".
      See Also:
    • PN_EF_VISUAL_LENGTH Link icon

      public static final String PN_EF_VISUAL_LENGTH
      Property name: maximum entry field visual length "sLen".
      See Also:
    • PN_EF_MAXIMUM_LENGTH Link icon

      public static final String PN_EF_MAXIMUM_LENGTH
      Property name: maximum entry field input length "maxlen".
      See Also:
    • PN_EF_MULTI_LINE Link icon

      public static final String PN_EF_MULTI_LINE
      Property name: multiple-line input field "multi".
      See Also:
    • PN_EF_ALIGN Link icon

      public static final String PN_EF_ALIGN
      Property name: entry field align trailing (right) "efAlign".
      See Also:
    • PN_EF_CHAR_UPDATE Link icon

      public static final String PN_EF_CHAR_UPDATE
      Property name: entry field character update "$charUpdate".
      See Also:
    • PN_EF_CHAR_CASE Link icon

      public static final String PN_EF_CHAR_CASE
      Property name: entry field character case "ccase".
      See Also:
    • PN_EF_TYPE Link icon

      public static final String PN_EF_TYPE
      Property name: entry field type (soft keyboard, etc: text, password number, tel, email, url) "fldType".
      See Also:
    • PN_EF_TEXT Link icon

      public static final String PN_EF_TEXT
      Property name: entry field text "efText".
      See Also:
    • PN_ARROW Link icon

      public static final String PN_ARROW
      Property name: display trailing arrow "arrow".
      See Also:
    • TABLE_COLUMN_NAME_OR_ATOMS Link icon

      public static Object[] TABLE_COLUMN_NAME_OR_ATOMS
      The table column atoms or property names used.
    • TABLE_COLUMN_VALUE_TYPES Link icon

      public static Value.Type[] TABLE_COLUMN_VALUE_TYPES
      Best value types for the columns.
  • Constructor Details Link icon

    • MLText Link icon

      public MLText(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.
    • MLText Link icon

      public MLText(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 Details Link icon

    • getType Link icon

      public MLItemType getType()
      Returns the type.
      Specified by:
      getType in class MLItem
      Returns:
      MLItemType.TEXT_ENTRY.
    • getLeadingTextColumn Link icon

      protected int getLeadingTextColumn()
      Returns the column index for the leading text. Types supporting description text must override this method.
      Specified by:
      getLeadingTextColumn in class MLItem
      Returns:
      The column index, or -1 for none.
    • getDescriptionColumn Link icon

      protected int getDescriptionColumn()
      Returns the column index for the description. Types supporting description text must override this method.
      Specified by:
      getDescriptionColumn in class MLItem
      Returns:
      The column index = 2.
    • refreshFromVS Link icon

      public void refreshFromVS(int[] columns)
      Refreshes contents from VirtualSpace.
      Specified by:
      refreshFromVS in interface IContentData<MLItemProp>
      Specified by:
      refreshFromVS in class MLItem
      Parameters:
      columns - The connected table columns indicies, -1 for none.
    • initialize Link icon

      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 interface IContentData<MLItemProp>
      Parameters:
      item - The item.
    • getHint Link icon

      public KString getHint()
      Gets the entry field hint for the list item. It defines a hint to help users fill out the input field (also called place holder in HTML).
      Returns:
      The text, or null if none is set.
    • setHint Link icon

      public boolean setHint(String text)
      Sets the entry field hint for the list item. It defines a hint to help users fill out the input field (also called place holder in HTML).
      Parameters:
      text - The new text, or null for none.
      Returns:
      true for changed, false for no change.
    • setHint Link icon

      public boolean setHint(KString text)
      Sets the entry field hint for the list item. It defines a hint to help users fill out the input field (also called place holder in HTML).
      Parameters:
      text - The new text, or null for none.
      Returns:
      true for changed, false for no change.
      Throws:
      IllegalArgumentException - If the KString is not in PLAIN text format.
    • getMaximumLength Link icon

      public int getMaximumLength()
      Gets the maximum length of the number of input characters in entry field.
      Returns:
      The maximum character input length, zero for no limit.
    • setMaximumLength Link icon

      public boolean setMaximumLength(int length)
      Sets the maximum length of the number of input characters in entry field.
      Parameters:
      length - The new length, or zero for no limit.
      Returns:
      true for changed, false for no change.
      Throws:
      IllegalArgumentException - If length is negative.
    • getMultipleLine Link icon

      public boolean getMultipleLine()
      Gets the entry field multiple-line option.
      Returns:
      The multiple-line option.
    • setMUltipleLine Link icon

      public boolean setMUltipleLine(boolean on)
      Sets the entry field multiple-line option.
      Parameters:
      on - The new option state, true for use multiple-line.
      Returns:
      true for changed, false for no change.
    • getEntryFieldTrailingAlign Link icon

      public boolean getEntryFieldTrailingAlign()
      Gets the entry field trailing align flag.
      Returns:
      false (default) means left (LTR) or right (RTL), true means right (LTR) or left (RTL).
    • setEntryFieldTrailingAlign Link icon

      public boolean setEntryFieldTrailingAlign(boolean on)
      Sets the entry field trailing align flag.
      Parameters:
      on - false (default) means left (LTR) or right (RTL), true means right (LTR) or left (RTL).
      Returns:
      true for changed, false for no change.
    • getCharUpdate Link icon

      public String getCharUpdate()
      Gets the entry field character update flag.
      Returns:
      false (default) means entry updates server when user leaves the field, true means upon every change.
    • setCharUpdate Link icon

      public boolean setCharUpdate(boolean on)
      Sets the entry field character update flag.
      Parameters:
      on - false (default) means entry updates server when user leaves the field, true means upon every change.
      Returns:
      true for changed, false for no change.
    • getCharCase Link icon

      public int getCharCase()
      Gets the character case conversion in entry field.
      Returns:
      The value as:
      • 0 = Normal: no conversion (default),
      • 1 = Upper: converts all characters to upper case,
      • 2 = Lower: converts all characters to lower case,
      • 3 = Proper: converts the first character of each word to upper case (typically used by names).
    • setCharCase Link icon

      public boolean setCharCase(int value)
      Gets the character case conversion in entry field.
      Parameters:
      value - A value between 0 and 3 as:
      • 0 = Normal: no conversion (default),
      • 1 = Upper: converts all characters to upper case,
      • 2 = Lower: converts all characters to lower case,
      • 3 = Proper: converts the first character of each word to upper case (typically used by names).
      Returns:
      true for changed, false for no change.
      Throws:
      IllegalArgumentException - If value is not 0 to 3.
    • getEntryFieldType Link icon

      public EntryFieldType getEntryFieldType()
      Gets the entry field type defined.
      Returns:
      The entry field type.
    • setEntryFieldType Link icon

      public boolean setEntryFieldType(EntryFieldType type)
      Sets the entry field type.
      Parameters:
      type - The new type.
      Returns:
      true for value changed, false for no change.
    • getEntryFieldText Link icon

      public String getEntryFieldText()
      Gets the entry field text for the list item.
      Returns:
      The text, or null if none is set.
    • setEntryFieldText Link icon

      public boolean setEntryFieldText(String text)
      Sets the entry field text for the list item.
      Parameters:
      text - The new text, or null for none.
      Returns:
      true for changed, false for no change.
    • isArrowDisplayed Link icon

      public boolean isArrowDisplayed()
      Returns if the trailing arrow is displayed or not.
      Returns:
      true to display arrow, false not to display arrow.
    • setArrowDisplayed Link icon

      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 Link icon

      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:
      NullPointerException - If the listener is null.
    • removeListener Link icon

      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 Link icon

      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 the super.onActionButtonInvoked(item) method in case listeners are added by others.
      Specified by:
      onActionButtonInvoked in interface IMLActionButtonListener
      Parameters:
      item - "this" item.
    • addListener Link icon

      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:
      NullPointerException - If the listener is null.
    • removeListener Link icon

      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 Link icon

      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 the super.onArrowInvoked(item) method in case listeners are added by others.
      Specified by:
      onArrowInvoked in interface IMLArrowActionListener
      Parameters:
      item - "this" item.