Class CheckBoxListSelectionModel

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.util.EventListener, javax.swing.event.ListDataListener, javax.swing.ListSelectionModel

    public class CheckBoxListSelectionModel
    extends javax.swing.DefaultListSelectionModel
    implements javax.swing.event.ListDataListener
    See Also:
    Serialized Form
    • Field Summary

      • Fields inherited from class javax.swing.DefaultListSelectionModel

        leadAnchorNotificationEnabled, listenerList
      • Fields inherited from interface javax.swing.ListSelectionModel

        MULTIPLE_INTERVAL_SELECTION, SINGLE_INTERVAL_SELECTION, SINGLE_SELECTION
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addSelectionInterval​(int index0, int index1)  
      void contentsChanged​(javax.swing.event.ListDataEvent e)  
      int getAllEntryIndex()
      Gets the index of the "all" entry in the CheckBoxList.
      int getMinSelectionIndex()  
      javax.swing.ListModel getModel()  
      void insertIndexInterval​(int index, int length, boolean before)
      Overrides so that inserting a row will not be selected automatically if the row after it is selected.
      void intervalAdded​(javax.swing.event.ListDataEvent e)  
      void intervalRemoved​(javax.swing.event.ListDataEvent e)  
      boolean isAllEntryConsidered()
      Gets the flag indicating if this CheckBoxListSelectionModel should consider the CheckBoxList.ALL item if there is one.
      boolean isSelectedIndex​(int index)  
      void removeSelectionInterval​(int index0, int index1)  
      void setAllEntryConsidered​(boolean allEntryConsidered)
      Sets the flag indicating if this CheckBoxListSelectionModel should consider the CheckBoxList.ALL item if there is one.
      void setAllEntryIndex​(int allEntryIndex)
      Sets the index of the "all" entry in the CheckBoxList.
      void setModel​(javax.swing.ListModel model)  
      void setSelectionInterval​(int index0, int index1)  
      protected void updateAllEntryIf()  
      • Methods inherited from class javax.swing.DefaultListSelectionModel

        addListSelectionListener, clearSelection, clone, fireValueChanged, fireValueChanged, fireValueChanged, getAnchorSelectionIndex, getLeadSelectionIndex, getListeners, getListSelectionListeners, getMaxSelectionIndex, getSelectionMode, getValueIsAdjusting, isLeadAnchorNotificationEnabled, isSelectionEmpty, moveLeadSelectionIndex, removeIndexInterval, removeListSelectionListener, setAnchorSelectionIndex, setLeadAnchorNotificationEnabled, setLeadSelectionIndex, setSelectionMode, setValueIsAdjusting, toString
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface javax.swing.ListSelectionModel

        getSelectedIndices, getSelectedItemsCount
    • Constructor Detail

      • CheckBoxListSelectionModel

        public CheckBoxListSelectionModel()
      • CheckBoxListSelectionModel

        public CheckBoxListSelectionModel​(javax.swing.ListModel model)
    • Method Detail

      • getAllEntryIndex

        public int getAllEntryIndex()
        Gets the index of the "all" entry in the CheckBoxList.
        Returns:
        the index of the "all" entry. -1 if no "all" entry exists.
        Since:
        3.3.5
        See Also:
        setAllEntryIndex(int)
      • setAllEntryIndex

        public void setAllEntryIndex​(int allEntryIndex)
        Sets the index of the "all" entry in the CheckBoxList.

        If the CheckBoxList has an "all" entry, check that entry on/off will check/uncheck all other entries. Uncheck any other entry will uncheck the "all" entry.

        Parameters:
        allEntryIndex - the index of the "all" entry.
      • getModel

        public javax.swing.ListModel getModel()
      • setModel

        public void setModel​(javax.swing.ListModel model)
      • intervalAdded

        public void intervalAdded​(javax.swing.event.ListDataEvent e)
        Specified by:
        intervalAdded in interface javax.swing.event.ListDataListener
      • intervalRemoved

        public void intervalRemoved​(javax.swing.event.ListDataEvent e)
        Specified by:
        intervalRemoved in interface javax.swing.event.ListDataListener
      • contentsChanged

        public void contentsChanged​(javax.swing.event.ListDataEvent e)
        Specified by:
        contentsChanged in interface javax.swing.event.ListDataListener
      • updateAllEntryIf

        protected void updateAllEntryIf()
      • insertIndexInterval

        public void insertIndexInterval​(int index,
                                        int length,
                                        boolean before)
        Overrides so that inserting a row will not be selected automatically if the row after it is selected.
        Specified by:
        insertIndexInterval in interface javax.swing.ListSelectionModel
        Overrides:
        insertIndexInterval in class javax.swing.DefaultListSelectionModel
        Parameters:
        index - the index where the rows will be inserted.
        length - the number of the rows that will be inserted.
        before - it's before or after the index.
      • isAllEntryConsidered

        public boolean isAllEntryConsidered()
        Gets the flag indicating if this CheckBoxListSelectionModel should consider the CheckBoxList.ALL item if there is one.
        Returns:
        true if need check. Otherwise false.
        Since:
        3.3.3
        See Also:
        setAllEntryConsidered(boolean)
      • setAllEntryConsidered

        public void setAllEntryConsidered​(boolean allEntryConsidered)
        Sets the flag indicating if this CheckBoxListSelectionModel should consider the CheckBoxList.ALL item if there is one.

        By default, the flag is true. If you want to improve the performance and don't have "all" entry, or if you do have an entry similar to "all" entry but want to treat it as a normal entry, please set it to false.

        Parameters:
        allEntryConsidered - the flag
        Since:
        3.3.3
      • isSelectedIndex

        public boolean isSelectedIndex​(int index)
        Specified by:
        isSelectedIndex in interface javax.swing.ListSelectionModel
        Overrides:
        isSelectedIndex in class javax.swing.DefaultListSelectionModel
      • setSelectionInterval

        public void setSelectionInterval​(int index0,
                                         int index1)
        Specified by:
        setSelectionInterval in interface javax.swing.ListSelectionModel
        Overrides:
        setSelectionInterval in class javax.swing.DefaultListSelectionModel
      • getMinSelectionIndex

        public int getMinSelectionIndex()
        Specified by:
        getMinSelectionIndex in interface javax.swing.ListSelectionModel
        Overrides:
        getMinSelectionIndex in class javax.swing.DefaultListSelectionModel
      • addSelectionInterval

        public void addSelectionInterval​(int index0,
                                         int index1)
        Specified by:
        addSelectionInterval in interface javax.swing.ListSelectionModel
        Overrides:
        addSelectionInterval in class javax.swing.DefaultListSelectionModel
      • removeSelectionInterval

        public void removeSelectionInterval​(int index0,
                                            int index1)
        Specified by:
        removeSelectionInterval in interface javax.swing.ListSelectionModel
        Overrides:
        removeSelectionInterval in class javax.swing.DefaultListSelectionModel