Class SourceListModel


  • public final class SourceListModel
    extends java.lang.Object
    The backing model to be used with a SourceList.
    • Constructor Detail

      • SourceListModel

        public SourceListModel()
    • Method Detail

      • addCategory

        public void addCategory​(SourceListCategory category,
                                int index)
        Adds the given category to the model at the given index and fires an event such that SourceListModelListeners will be notified.
        Parameters:
        category - the SourceListCategory to add.
        index - the index to add the category at.
      • removeCategory

        public void removeCategory​(SourceListCategory category)
        Removes the given category from the model and fires an event such that SourceListModelListeners will be notified.
        Parameters:
        category - the SourceListCategory to remove.
        Throws:
        java.lang.IllegalArgumentException - if the given category is not part of this model.
      • removeCategoryAt

        public void removeCategoryAt​(int index)
        Removes the category at the given index from the model and fires an event such that SourceListModelListeners will be notified.
        Parameters:
        index - the index of the SourceListCategory to remove.
        Throws:
        java.lang.IllegalArgumentException - if there is no category at the given index.
      • addItemToCategory

        public void addItemToCategory​(SourceListItem item,
                                      SourceListCategory category)
        Adds the given item to the given SourceListCategory.
        Parameters:
        item - the item to add.
        category - the category to add the item to.
        Throws:
        java.lang.IllegalStateException - if the given category is not in the model.
      • addItemToCategory

        public void addItemToCategory​(SourceListItem item,
                                      SourceListCategory category,
                                      int index)
        Adds the given item to the given SourceListCategory at the given index within that category.
        Parameters:
        item - the item to add.
        category - the category to add the item to.
        index - the index in the category to add the item.
        Throws:
        java.lang.IllegalStateException - if the given category is not in the model.
      • addItemToItem

        public void addItemToItem​(SourceListItem childItem,
                                  SourceListItem parentItem)
        Adds the given "child" item to the given "parent" item.
        Parameters:
        childItem - the item to add to the given parent item.
        parentItem - the item to add the child item to.
        Throws:
        java.lang.IllegalStateException - if the given parent item is not in the model.
      • addItemToItem

        public void addItemToItem​(SourceListItem childItem,
                                  SourceListItem parentItem,
                                  int index)
        Adds the given "child" item to the given "parent" item at the given index. The parent SourceListItem will be expanded if it was not a parent but becomes a parent as a result of this call.
        Parameters:
        childItem - the item to add to the given parent item.
        parentItem - the item to add the child item to.
        index - the index of the parent item at which to add the child item.
        Throws:
        java.lang.IllegalStateException - if the given child or parent item is not in the model.
      • removeItemFromCategory

        public void removeItemFromCategory​(SourceListItem item,
                                           SourceListCategory category)
        Removes the given item from the given category.
        Parameters:
        item - the item to remove from the given category.
        category - the category form which to remove the given item.
        Throws:
        java.lang.IllegalStateException - if the given category is not in the model.
      • removeItemFromCategoryAtIndex

        public void removeItemFromCategoryAtIndex​(SourceListCategory category,
                                                  int index)
        Removes the item at the given index from the given category.
        Parameters:
        category - the category from which to remove the item.
        index - the index of the item to remove.
        Throws:
        java.lang.IllegalStateException - if the given category is not in the model.
      • removeItemFromItem

        public void removeItemFromItem​(SourceListItem childItem,
                                       SourceListItem parentItem)
        Removes the given child item at from the given parent item.
        Parameters:
        childItem - the item to remove.
        parentItem - the item from which to remove the given child item.
        Throws:
        java.lang.IllegalStateException - if the given child or parent item is not in the model.
      • removeItemFromItem

        public void removeItemFromItem​(SourceListItem parentItem,
                                       int index)
        Removes the given child item at from the given parent item.
        Parameters:
        parentItem - the item from which to remove the given child item.
        index - the index of the item to remove.
        Throws:
        java.lang.IllegalStateException - if the given child or parent item is not in the model.
      • validateItemIsInModel

        public void validateItemIsInModel​(SourceListItem item)
        Checks if the given SourceListItem is in this model.
        Parameters:
        item - the item to check if is in this model.
        Throws:
        java.lang.IllegalArgumentException - if the given item is not part of this model.
      • removeSourceListModelListener

        public void removeSourceListModelListener​(SourceListModelListener listener)
        Removes the given SourceListModelListener from the list of listeners.
        Parameters:
        listener - the listener to remove.