|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectca.odell.glazedlists.swing.DefaultEventListModel<E>
public class DefaultEventListModel<E>
A DefaultEventListModel adapts an EventList to the ListModel interface making it
appropriate for use with a JList
. Each element of the list
corresponds to an element in the ListModel
.
The DefaultEventListModel class is not thread-safe. Unless
otherwise noted, all methods are only safe to be called from the event
dispatch thread. To do this programmatically, use SwingUtilities.invokeAndWait(Runnable)
and wrap the source list (or some part of the source list's pipeline) using
GlazedListsSwing.swingThreadProxyList(EventList)
.
SwingUtilities.invokeAndWait(Runnable)
Field Summary | |
---|---|
protected ca.odell.glazedlists.swing.MutableListDataEvent |
listDataEvent
recycle the list data event to prevent unnecessary object creation |
protected EventList<E> |
source
the source EventList |
Constructor Summary | |
---|---|
DefaultEventListModel(EventList<E> source)
Creates a new model that contains all objects located in the given source and reacts to any changes in the given
source . |
|
DefaultEventListModel(EventList<E> source,
boolean disposeSource)
Creates a new model that contains all objects located in the given source and reacts to any changes in the given
source . |
Method Summary | |
---|---|
void |
addListDataListener(ListDataListener listDataListener)
Registers the specified ListDataListener to receive updates whenever this list changes. |
void |
dispose()
Releases the resources consumed by this DefaultEventListModel so that it
may eventually be garbage collected. |
protected void |
fireListDataEvent(ListDataEvent listDataEvent)
Notifies all ListDataListeners about one block of changes in the list. |
Object |
getElementAt(int index)
Returns the value at the specified index. |
int |
getSize()
Gets the size of the list. |
void |
listChanged(ListEvent<E> listChanges)
For implementing the ListEventListener interface. |
void |
removeListDataListener(ListDataListener listDataListener)
Deregisters the specified ListDataListener from receiving updates whenever this list changes. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected EventList<E> source
protected final ca.odell.glazedlists.swing.MutableListDataEvent listDataEvent
Constructor Detail |
---|
public DefaultEventListModel(EventList<E> source)
source
and reacts to any changes in the given
source
.
source
- the EventList that provides the elementspublic DefaultEventListModel(EventList<E> source, boolean disposeSource)
source
and reacts to any changes in the given
source
.
source
- the EventList that provides the elementsdisposeSource
- true
if the source list should be disposed when disposing
this model, false
otherwiseMethod Detail |
---|
public void listChanged(ListEvent<E> listChanges)
This always sends discrete changes for the complete size of the list. It may be more efficient to implement a threshhold where a large list of changes are grouped together as a single change. This is how the ListTable accepts large change events.
listChanged
in interface ListEventListener<E>
listChanges
- a ListEvent
describing the changes to the listpublic Object getElementAt(int index)
getElementAt
in interface ListModel
index
- the requested index
index
public int getSize()
getSize
in interface ListModel
public void addListDataListener(ListDataListener listDataListener)
The specified ListDataListener must not save a reference to the ListDataEvent beyond the end of the notification method. This is because the ListDataEvent is re-used to increase the performance of this implementation.
addListDataListener
in interface ListModel
public void removeListDataListener(ListDataListener listDataListener)
removeListDataListener
in interface ListModel
protected void fireListDataEvent(ListDataEvent listDataEvent)
public void dispose()
DefaultEventListModel
so that it
may eventually be garbage collected.
An DefaultEventListModel
will be garbage collected without a call to
dispose()
, but not before its source EventList
is garbage
collected. By calling dispose()
, you allow the DefaultEventListModel
to be garbage collected before its source EventList
. This is
necessary for situations where an DefaultEventListModel
is short-lived but
its source EventList
is long-lived.
Warning: It is an error
to call any method on an DefaultEventListModel
after it has been disposed.
As such, this DefaultEventListModel
should be detached from its
corresponding Component before it is disposed.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |