26 |
import org.geotools.feature.Feature; |
import org.geotools.feature.Feature; |
27 |
|
|
28 |
import schmitzm.swing.event.PropertyChangeEmitter; |
import schmitzm.swing.event.PropertyChangeEmitter; |
29 |
import skrueger.geotools.StyledMapInterface; |
import skrueger.geotools.StyledLayerInterface; |
30 |
|
|
31 |
/** |
/** |
32 |
* This manager holds a set of objects which are <i>selected</i> for a {@link StyledMapInterface}. |
* This manager holds a set of objects which are <i>selected</i> for a {@link StyledLayerInterface}. |
33 |
* Several components can connect to this model to keep their selection synchronized. |
* Several components can connect to this model to keep their selection synchronized. |
34 |
* @see #addSelectionListener(java.beans.PropertyChangeListener) |
* @see #addSelectionListener(java.beans.PropertyChangeListener) |
35 |
* @see StyledLayerSelectionModelSynchronizer |
* @see StyledLayerSelectionModelSynchronizer |
50 |
protected final HashSet<E> selectionObjects; |
protected final HashSet<E> selectionObjects; |
51 |
|
|
52 |
/** Holds the styled map whose selection is managed by this class. */ |
/** Holds the styled map whose selection is managed by this class. */ |
53 |
protected final StyledMapInterface<?> styledMap; |
protected final StyledLayerInterface<?> styledLayer; |
54 |
|
|
55 |
|
|
56 |
/** Indicates whether a selection change is a part of multiple |
/** Indicates whether a selection change is a part of multiple |
61 |
|
|
62 |
/** |
/** |
63 |
* Creates a new selection model. |
* Creates a new selection model. |
64 |
* @param styledMap styled map the selection is controlled of |
* @param styledLayer styled layer the selection is controlled of |
65 |
*/ |
*/ |
66 |
public StyledLayerSelectionModel(StyledMapInterface<?> styledMap) { |
public StyledLayerSelectionModel(StyledLayerInterface<?> styledLayer) { |
67 |
this.selectionObjects = new HashSet<E>(); |
this.selectionObjects = new HashSet<E>(); |
68 |
this.styledMap = styledMap; |
this.styledLayer = styledLayer; |
69 |
} |
} |
70 |
|
|
71 |
/** |
/** |
108 |
|
|
109 |
|
|
110 |
/** |
/** |
111 |
* Returns whether the current selection changes are a part of multiple |
* Returns whether the current selection change is a part of multiple |
112 |
* changes. If {@code true} {@link #refreshSelection()} has no effect |
* changes. If {@code true} {@link #refreshSelection()} has no effect |
113 |
* and no {@link StyledLayerSelectionEvent} is fired until |
* and no {@link StyledLayerSelectionEvent} is fired until |
114 |
* {@link #setValueIsAdjusting(boolean) setValueIsAdjusting(false)} |
* {@link #setValueIsAdjusting(boolean) setValueIsAdjusting(false)} |
119 |
} |
} |
120 |
|
|
121 |
/** |
/** |
122 |
* Sets whether the following selection changes are a part of multiple |
* Sets whether the following selection changes are part of multiple |
123 |
* changes. If {@code true} {@link #refreshSelection()} has no effect |
* changes. If {@code true} {@link #refreshSelection()} has no effect |
124 |
* and no {@link StyledLayerSelectionEvent} event is fired. |
* and no {@link StyledLayerSelectionEvent} event is fired. |
125 |
* If the value is set from {@code true} to {@code false} an automatic |
* If the value is set from {@code true} to {@code false} an automatic |