Interface ListHolderStateObject<T>

    • Method Detail

      • addItem

        <S extends T> S addItem​(S item)
        Adds the given StateObject as a child of this one.
        Parameters:
        item - The child StateObject to become a child of this one return The given item
      • addItems

        void addItems​(java.util.List<? extends T> items)
        Adds the given list of StateObjects as children of this one.
        Parameters:
        items - The StateObjects to become children of this one
      • addListChangeListener

        void addListChangeListener​(java.lang.String listName,
                                   IListChangeListener<T> listener)
        Registers the given IListChangeListener for the specified list. The listener will be notified only when items are added, removed, moved from the list.
        Parameters:
        listName - The name of the list for which the listener will be notified when the content of the list has changed
        listener - The listener to be notified upon changes
        Throws:
        java.lang.NullPointerException - IListChangeListener cannot be null
        java.lang.IllegalArgumentException - The listener is already registered with the list name
      • canMoveDown

        boolean canMoveDown​(T item)
        Determines whether the given StateObject can be moved down by one position in the list owned by its parent.
        Parameters:
        item - The StateObject that could potentially be moved down
        Returns:
        true if the object can be moved down by one unit; false otherwise
      • canMoveUp

        boolean canMoveUp​(T item)
        Determines whether the given StateObject can be moved up by one position in the list owned by its parent.
        Parameters:
        item - The StateObject that could potentially be moved up
        Returns:
        true if the object can be moved up by one unit; false otherwise
      • getItem

        T getItem​(int index)
        Returns the StateObject at the given positions from the list
        Parameters:
        index - The position of the StateObject to retrieve
        Returns:
        The StateObject at the given position
      • hasItems

        boolean hasItems()
        Determines whether this StateObject has any children.
        Returns:
        true if this StateObject has children; false otherwise
      • itemsSize

        int itemsSize()
        Returns the number of children this list holder has.
        Returns:
        The count of StateObjects that are children of this one
      • moveDown

        T moveDown​(T item)
        Moves the given StateObject down by one position in the list owned by its parent.
        Parameters:
        item - The StateObject to move down in the list
        Returns:
        The given item
      • moveUp

        T moveUp​(T item)
        Moves the given StateObject up by one position in the list owned by its parent.
        Parameters:
        item - The StateObject to move up in the list
        Returns:
        The given item
      • removeItem

        void removeItem​(T item)
        Removes the given StateObject from the list of children.
        Parameters:
        item - The child StateObject to not longer be a child
      • removeItems

        void removeItems​(java.util.Collection<T> items)
        Removes the given StateObject from the list of children.
        Parameters:
        items - The StateObjects to remove from this one
      • removeListChangeListener

        void removeListChangeListener​(java.lang.String listName,
                                      IListChangeListener<T> listener)
        Unregisters the given IListChangeListener that was registered for the specified list. The listener will no longer be notified only when items are added, removed, moved from the list.
        Parameters:
        listName - The name of the list for which the listener was registered
        listener - The listener to unregister
        Throws:
        java.lang.NullPointerException - IListChangeListener cannot be null
        java.lang.IllegalArgumentException - The listener was never registered with the list name