Module com.aoapps.hodgepodge
Package com.aoapps.hodgepodge.swing
Class SynchronizingComboBoxModel<E>
java.lang.Object
javax.swing.AbstractListModel<E>
javax.swing.DefaultComboBoxModel<E>
com.aoapps.hodgepodge.swing.SynchronizingComboBoxModel<E>
- All Implemented Interfaces:
Serializable,ComboBoxModel<E>,ListModel<E>,MutableComboBoxModel<E>
When requested, it will synchronize its list of elements to an externally-
provided list. The is useful when the data source is obtained elsewhere and
the list-based component needs to be synchronized.
Since these updates may occur while a user is manipulating the components, only the minimum number of changes to the elements is made. Thus selections and other aspects of the component remain intact. Most importantly, if nothing in the list has changed, the component is not changed.
- Author:
- AO Industries, Inc.
- See Also:
-
Field Summary
Fields inherited from class javax.swing.AbstractListModel
listenerList -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidsynchronize(List<? extends E> list) Synchronizes the list, adding and removing only a minimum number of elements.Methods inherited from class javax.swing.DefaultComboBoxModel
addAll, addAll, addElement, getElementAt, getIndexOf, getSelectedItem, getSize, insertElementAt, removeAllElements, removeElement, removeElementAt, setSelectedItemMethods inherited from class javax.swing.AbstractListModel
addListDataListener, fireContentsChanged, fireIntervalAdded, fireIntervalRemoved, getListDataListeners, getListeners, removeListDataListenerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface javax.swing.ListModel
addListDataListener, removeListDataListener
-
Constructor Details
-
SynchronizingComboBoxModel
public SynchronizingComboBoxModel() -
SynchronizingComboBoxModel
-
-
Method Details
-
synchronize
Synchronizes the list, adding and removing only a minimum number of elements. Comparisons are performed using .equals. This must be called from the Swing event dispatch thread.
-
