public class MainLayerManager extends LayerManager
The active layer is the layer the user is currently working on.
The edit layer is an data layer that we currently work with.
| Modifier and Type | Class and Description |
|---|---|
static class |
MainLayerManager.ActiveLayerChangeEvent
This event is fired whenever the active or the edit layer changes.
|
static interface |
MainLayerManager.ActiveLayerChangeListener
This listener listens to changes of the active or the edit layer.
|
static class |
MainLayerManager.LayerAvailabilityEvent
This event is fired for
MainLayerManager.LayerAvailabilityListener |
static interface |
MainLayerManager.LayerAvailabilityListener
A listener that gets informed before any layer is displayed and after all layers are removed.
|
LayerManager.LayerAddEvent, LayerManager.LayerChangeListener, LayerManager.LayerManagerEvent, LayerManager.LayerOrderChangeEvent, LayerManager.LayerRemoveEvent| Modifier and Type | Field and Description |
|---|---|
private Layer |
activeLayer
The layer from the layers list that is currently active.
|
private java.util.List<MainLayerManager.ActiveLayerChangeListener> |
activeLayerChangeListeners |
private OsmDataLayer |
editLayer
The edit layer is the current active data layer.
|
private java.util.List<MainLayerManager.LayerAvailabilityListener> |
layerAvailabilityListeners |
| Constructor and Description |
|---|
MainLayerManager() |
| Modifier and Type | Method and Description |
|---|---|
void |
addActiveLayerChangeListener(MainLayerManager.ActiveLayerChangeListener listener)
Adds a active/edit layer change listener
|
void |
addAndFireActiveLayerChangeListener(MainLayerManager.ActiveLayerChangeListener listener)
Adds a active/edit layer change listener.
|
void |
addLayerAvailabilityListener(MainLayerManager.LayerAvailabilityListener listener)
Add a new
MainLayerManager.LayerAvailabilityListener. |
private void |
fireActiveLayerChange(MainLayerManager.ActiveLayerChangeEvent event) |
Layer |
getActiveLayer()
Replies the currently active layer
|
DataSet |
getEditDataSet()
Gets the data set of the active edit layer.
|
OsmDataLayer |
getEditLayer()
Replies the current edit layer, if any
|
java.util.List<Layer> |
getVisibleLayersInZOrder()
Creates a list of the visible layers in Z-Order, the layer with the lowest Z-Order
first, layer with the highest Z-Order last.
|
protected void |
realAddLayer(Layer layer) |
protected java.util.Collection<Layer> |
realRemoveSingleLayer(Layer layer) |
protected void |
realResetState() |
protected void |
realSetActiveLayer(Layer layer) |
void |
removeActiveLayerChangeListener(MainLayerManager.ActiveLayerChangeListener listener)
Removes an active/edit layer change listener.
|
void |
removeLayerAvailabilityListener(MainLayerManager.LayerAvailabilityListener listener)
Remove an
MainLayerManager.LayerAvailabilityListener. |
void |
setActiveLayer(Layer layer)
Set the active layer.
|
private void |
setActiveLayer(Layer layer,
boolean forceEditLayerUpdate) |
private Layer |
suggestNextActiveLayer(Layer except)
Determines the next active data layer according to the following
rules:
if there is at least one
OsmDataLayer the first one
becomes active
otherwise, the top most layer of any type becomes active
|
addLayer, addLayerChangeListener, addLayerChangeListener, checkContainsLayer, containsLayer, getLayers, getLayersOfType, moveLayer, realMoveLayer, realRemoveLayer, removeLayer, removeLayerChangeListener, removeLayerChangeListener, resetStateprivate Layer activeLayer
private OsmDataLayer editLayer
private final java.util.List<MainLayerManager.ActiveLayerChangeListener> activeLayerChangeListeners
private final java.util.List<MainLayerManager.LayerAvailabilityListener> layerAvailabilityListeners
public MainLayerManager()
public void addActiveLayerChangeListener(MainLayerManager.ActiveLayerChangeListener listener)
listener - the listener.public void addAndFireActiveLayerChangeListener(MainLayerManager.ActiveLayerChangeListener listener)
listener - the listener.public void removeActiveLayerChangeListener(MainLayerManager.ActiveLayerChangeListener listener)
listener - the listener.public void addLayerAvailabilityListener(MainLayerManager.LayerAvailabilityListener listener)
MainLayerManager.LayerAvailabilityListener.listener - The listenerpublic void removeLayerAvailabilityListener(MainLayerManager.LayerAvailabilityListener listener)
MainLayerManager.LayerAvailabilityListener.listener - The listenerpublic void setActiveLayer(Layer layer)
layer - The active layer.protected void realSetActiveLayer(Layer layer)
private void setActiveLayer(Layer layer, boolean forceEditLayerUpdate)
private void fireActiveLayerChange(MainLayerManager.ActiveLayerChangeEvent event)
protected void realAddLayer(Layer layer)
realAddLayer in class LayerManagerprotected java.util.Collection<Layer> realRemoveSingleLayer(Layer layer)
realRemoveSingleLayer in class LayerManagerprivate Layer suggestNextActiveLayer(Layer except)
OsmDataLayer the first one
becomes activeexcept - A layer to ignore.public Layer getActiveLayer()
public OsmDataLayer getEditLayer()
public DataSet getEditDataSet()
null if there is no edit layer.public java.util.List<Layer> getVisibleLayersInZOrder()
The active data layer is pulled above all adjacent data layers.
protected void realResetState()
realResetState in class LayerManager