static class SelectionListDialog.SelectionListModel extends javax.swing.AbstractListModel<OsmPrimitive> implements MainLayerManager.ActiveLayerChangeListener, DataSelectionListener, DataSetListener
SELECTION_HISTORY_SIZE
JOSM selection.DataSelectionListener.AbstractSelectionEvent, DataSelectionListener.SelectionAddEvent, DataSelectionListener.SelectionChangeEvent, DataSelectionListener.SelectionRemoveEvent, DataSelectionListener.SelectionReplaceEvent, DataSelectionListener.SelectionToggleEvent
Modifier and Type | Field and Description |
---|---|
private java.util.LinkedList<java.util.Collection<? extends OsmPrimitive>> |
history |
private java.util.List<OsmPrimitive> |
selection |
private static int |
SELECTION_HISTORY_SIZE |
private javax.swing.DefaultListSelectionModel |
selectionModel |
Constructor and Description |
---|
SelectionListModel(javax.swing.DefaultListSelectionModel selectionModel)
Constructor
|
Modifier and Type | Method and Description |
---|---|
void |
activeOrEditLayerChanged(MainLayerManager.ActiveLayerChangeEvent e)
Called whenever the active or edit layer changed.
|
void |
dataChanged(DataChangedEvent event)
Called after big changes in dataset.
|
protected void |
fireContentsChanged(java.lang.Object source,
int index0,
int index1) |
OsmPrimitive |
getElementAt(int index) |
java.lang.String |
getJOSMSelectionSummary()
Replies a summary of the current JOSM selection
|
java.util.Collection<OsmPrimitive> |
getSelected()
Replies the collection of OSM primitives currently selected in the view of this model
|
java.util.List<java.util.Collection<? extends OsmPrimitive>> |
getSelectionHistory()
Replies the history of JOSM selections
|
int |
getSize() |
boolean |
isSelectionEmpty()
Determines if no OSM primitives are currently selected.
|
void |
nodeMoved(NodeMovedEvent event)
A node's coordinates were modified.
|
void |
otherDatasetChange(AbstractDatasetChangedEvent event)
Minor dataset change, currently only changeset id changed is supported, but can
be extended in future.
|
void |
primitivesAdded(PrimitivesAddedEvent event)
A bunch of primitives were added into the DataSet, or existing
deleted/invisible primitives were resurrected.
|
void |
primitivesRemoved(PrimitivesRemovedEvent event)
A bunch of primitives were removed from the DataSet, or preexisting
primitives were marked as deleted.
|
void |
relationMembersChanged(RelationMembersChangedEvent event)
A relation's members have changed.
|
void |
remember(java.util.Collection<? extends OsmPrimitive> selection)
Remembers a JOSM selection the history of JOSM selections
|
void |
selectionChanged(DataSelectionListener.SelectionChangeEvent event)
Called whenever the selection is changed.
|
void |
setJOSMSelection(java.util.Collection<? extends OsmPrimitive> selection)
Sets the collection of currently selected OSM objects
|
void |
setSelected(java.util.Collection<OsmPrimitive> sel)
Sets the OSM primitives to be selected in the view of this model
|
void |
sort()
Sorts the current elements in the selection
|
void |
tagsChanged(TagsChangedEvent event)
There was some change in the tag set of a primitive.
|
void |
update(java.util.Collection<? extends OsmPrimitive> toUpdate)
Triggers a refresh of the view for all primitives in
toUpdate
which are currently displayed in the view |
void |
wayNodesChanged(WayNodesChangedEvent event)
A way's node list was changed.
|
private static final int SELECTION_HISTORY_SIZE
private java.util.LinkedList<java.util.Collection<? extends OsmPrimitive>> history
private final transient java.util.List<OsmPrimitive> selection
private final javax.swing.DefaultListSelectionModel selectionModel
SelectionListModel(javax.swing.DefaultListSelectionModel selectionModel)
selectionModel
- the selection model used in the listpublic java.lang.String getJOSMSelectionSummary()
public void remember(java.util.Collection<? extends OsmPrimitive> selection)
selection
- the JOSM selection. Ignored if null or empty.public java.util.List<java.util.Collection<? extends OsmPrimitive>> getSelectionHistory()
public OsmPrimitive getElementAt(int index)
getElementAt
in interface javax.swing.ListModel<OsmPrimitive>
public int getSize()
getSize
in interface javax.swing.ListModel<OsmPrimitive>
public boolean isSelectionEmpty()
true
if no OSM primitives are currently selectedpublic java.util.Collection<OsmPrimitive> getSelected()
public void setSelected(java.util.Collection<OsmPrimitive> sel)
sel
- the collection of primitives to selectprotected void fireContentsChanged(java.lang.Object source, int index0, int index1)
fireContentsChanged
in class javax.swing.AbstractListModel<OsmPrimitive>
public void setJOSMSelection(java.util.Collection<? extends OsmPrimitive> selection)
selection
- the collection of currently selected OSM objectspublic void update(java.util.Collection<? extends OsmPrimitive> toUpdate)
toUpdate
which are currently displayed in the viewtoUpdate
- the collection of primitives to updatepublic void sort()
public void activeOrEditLayerChanged(MainLayerManager.ActiveLayerChangeEvent e)
MainLayerManager.ActiveLayerChangeListener
You can be sure that this layer is still contained in this set.
Listeners are called in the EDT thread and you can manipulate the layer manager in the current thread.
activeOrEditLayerChanged
in interface MainLayerManager.ActiveLayerChangeListener
e
- The change event.public void selectionChanged(DataSelectionListener.SelectionChangeEvent event)
DataSelectionListener
selectionChanged
in interface DataSelectionListener
event
- The selection change event.DataSelectionListener.SelectionChangeEvent
public void dataChanged(DataChangedEvent event)
DataSetListener
DataSetListener.dataChanged(DataChangedEvent event)
is called.dataChanged
in interface DataSetListener
event
- data change eventpublic void nodeMoved(NodeMovedEvent event)
DataSetListener
nodeMoved
in interface DataSetListener
event
- The event for the node that was moved.public void otherDatasetChange(AbstractDatasetChangedEvent event)
DataSetListener
otherDatasetChange
in interface DataSetListener
event
- the event for data modificationpublic void relationMembersChanged(RelationMembersChangedEvent event)
DataSetListener
relationMembersChanged
in interface DataSetListener
event
- The event for the relation that was modified.public void tagsChanged(TagsChangedEvent event)
DataSetListener
tagsChanged
in interface DataSetListener
event
- the event for the primitive, whose tags were affected.public void wayNodesChanged(WayNodesChangedEvent event)
DataSetListener
wayNodesChanged
in interface DataSetListener
event
- The event for the way that was modified.public void primitivesAdded(PrimitivesAddedEvent event)
DataSetListener
primitivesAdded
in interface DataSetListener
event
- An event for an collection of newly-visible primitivespublic void primitivesRemoved(PrimitivesRemovedEvent event)
DataSetListener
primitivesRemoved
in interface DataSetListener
event
- An event for an collection of newly-invisible primitives