Interface IKStringArrayContainer

    • Method Detail

      • getKStringArrayContainer

        default IKStringArrayContainer getKStringArrayContainer()
        Gets the target implementor of the interface.
        Returns:
        The target implements of the interface, null for none (this instance).
      • isHTMLKStringSupported

        boolean isHTMLKStringSupported()
        Checks if KString's of HTML type are supported.
        Returns:
        true for HTML support, false if it must be plain KString's.
      • getItemsAsKStrings

        default KString[] getItemsAsKStrings()
        Gets the array of items as KStrings.
        Returns:
        An array of KString's.
      • getItemKString

        default KString getItemKString​(int index)
        Gets the item at the specified index as a KString.
        Parameters:
        index - The index.
        Returns:
        The KString item.
        Throws:
        java.lang.IndexOutOfBoundsException - If the index is invalid.
      • getItemCount

        default int getItemCount()
        Gets the item count.
        Returns:
        The count of items.
      • sortItems

        default void sortItems()
        Sorts the list according to the default JVM locale case sensitively.

        The selected index may change as a result of the sorting if selection is supported.

        Throws:
        java.lang.IllegalStateException - If the container is read-only.
      • sortItems

        default void sortItems​(boolean isCaseInsensitive)
        Sorts the list according to the default JVM locale.

        The selected index may change as a result of the sorting if selection is supported.

        Parameters:
        isCaseInsensitive - Flag for case insensitive.
        Throws:
        java.lang.IllegalStateException - If the container is read-only.
      • sortItems

        default void sortItems​(java.util.Locale locale)
        Sorts the list according to a locale case sensitively.

        The selected index may change as a result of the sorting if selection is supported.

        Parameters:
        locale - The locale to use for string sorting.
        Throws:
        java.lang.IllegalStateException - If the container is read-only.
      • sortItems

        default void sortItems​(java.util.Locale locale,
                               boolean isCaseInsensitive)
        Sorts the list according to a locale.

        The selected index may change as a result of the sorting if selection is supported.

        Parameters:
        locale - The locale to use for string sorting, null for default..
        isCaseInsensitive - Flag for case insensitive.
        Throws:
        java.lang.IllegalStateException - If the container is read-only.
      • addItem

        default void addItem​(KString item)
        Adds a new item.
        Parameters:
        item - The item to add.
        Throws:
        java.lang.NullPointerException - If the item is null.
        java.lang.IllegalStateException - If the container is read-only.
      • addItems

        default void addItems​(KString... items)
        Adds a new items.
        Parameters:
        items - The items to add.
        Throws:
        java.lang.NullPointerException - If an item is null.
        java.lang.IllegalStateException - If the container is read-only.
      • insertItem

        default void insertItem​(KString item,
                                int index)
        Inserts an item at specified index.

        The selection may be changed due to this operation if the owner support selection.

        Parameters:
        item - The item to add.
        index - The index to insert the item before (-1 for last).
        Throws:
        java.lang.NullPointerException - If the item is null.
        java.lang.IndexOutOfBoundsException - If the index is in error.
        java.lang.IllegalStateException - If the container is read-only.
      • setItem

        default KString setItem​(KString item,
                                int index)
        Sets an item at specified index.
        Parameters:
        item - The item to set.
        index - The index of the item.
        Returns:
        The old item.
        Throws:
        java.lang.NullPointerException - If the item is null.
        java.lang.IndexOutOfBoundsException - If the index is in error.
        java.lang.IllegalStateException - If the container is read-only.
      • removeItem

        default java.lang.Object removeItem​(int index)
        Removes an item.

        The selection may be changed due to this operation if the owner support selection.

        Parameters:
        index - The index of the item to delete.
        Returns:
        The item deleted.
        Throws:
        java.lang.IndexOutOfBoundsException - If the index is in error.
        java.lang.IllegalStateException - If the container is read-only.
      • removeItem

        default int removeItem​(KString item)
        Removes an item.

        The selection may be changed due to this operation if the owner support selection.

        Parameters:
        item - The item to remove.
        Returns:
        The index of the item removed, -1 if not found.
        Throws:
        java.lang.IndexOutOfBoundsException - If the index is in error.
        java.lang.IllegalStateException - If the container is read-only.
      • removeAllItems

        default void removeAllItems()
        Removes all items.

        The selection may be changed (cleared) due to this operation if the owner support selection.

        Throws:
        java.lang.IllegalStateException - If the container is read-only.
      • removeAllItems

        default void removeAllItems​(boolean keepSelection)
        Removes all items but keeps the selection depending on the flag.

        The selection may be changed (cleared) due to this operation if the owner support selection.

        Parameters:
        keepSelection - The boolean to keep the selection.
        Throws:
        java.lang.IllegalStateException - If the container is read-only.