public class MapView extends NavigatableComponent implements java.beans.PropertyChangeListener, org.openstreetmap.josm.data.Preferences.PreferenceChangedListener
Modifier and Type | Class and Description |
---|---|
static interface |
MapView.EditLayerChangeListener |
static interface |
MapView.LayerChangeListener
Interface to notify listeners of the change of the active layer.
|
NavigatableComponent.SystemOfMeasurement, NavigatableComponent.ZoomChangeListener
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
java.awt.event.MouseEvent |
lastMEvent
The last event performed by mouse.
|
org.openstreetmap.josm.gui.layer.markerlayer.PlayHeadMarker |
playHeadMarker
The play head marker: there is only one of these so it isn't in any specific layer
|
boolean |
viewportFollowing |
center, CHINESE_SOM, IMPERIAL_SOM, METRIC_SOM, PROP_SNAP_DISTANCE, SYSTEMS_OF_MEASUREMENT
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
MapView(javax.swing.JPanel contentPane) |
Modifier and Type | Method and Description |
---|---|
static void |
addEditLayerChangeListener(MapView.EditLayerChangeListener listener) |
static void |
addEditLayerChangeListener(MapView.EditLayerChangeListener listener,
boolean initialFire)
Adds an edit layer change listener
|
protected void |
addGpxLayer(org.openstreetmap.josm.gui.layer.GpxLayer layer)
Adds a GPX layer.
|
void |
addLayer(org.openstreetmap.josm.gui.layer.Layer layer)
Add a layer to the current MapView.
|
static void |
addLayerChangeListener(MapView.LayerChangeListener listener)
Adds a layer change listener
|
boolean |
addTemporaryLayer(org.openstreetmap.josm.gui.layer.MapViewPaintable mvp) |
void |
destroy() |
protected org.openstreetmap.josm.gui.layer.Layer |
determineNextActiveLayer(java.util.List<org.openstreetmap.josm.gui.layer.Layer> layersList)
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
|
protected static void |
fireActiveLayerChanged(org.openstreetmap.josm.gui.layer.Layer oldLayer,
org.openstreetmap.josm.gui.layer.Layer newLayer) |
protected static void |
fireEditLayerChanged(org.openstreetmap.josm.gui.layer.OsmDataLayer oldLayer,
org.openstreetmap.josm.gui.layer.OsmDataLayer newLayer) |
protected static void |
fireLayerAdded(org.openstreetmap.josm.gui.layer.Layer newLayer) |
protected static void |
fireLayerRemoved(org.openstreetmap.josm.gui.layer.Layer layer) |
org.openstreetmap.josm.gui.layer.Layer |
getActiveLayer()
Replies the currently active layer
|
java.util.Collection<org.openstreetmap.josm.gui.layer.Layer> |
getAllLayers() |
java.util.List<org.openstreetmap.josm.gui.layer.Layer> |
getAllLayersAsList() |
protected org.openstreetmap.josm.data.osm.DataSet |
getCurrentDataSet() |
org.openstreetmap.josm.gui.layer.OsmDataLayer |
getEditLayer()
Replies the current edit layer, if any
|
int |
getLayerPos(org.openstreetmap.josm.gui.layer.Layer layer) |
<T> java.util.List<T> |
getLayersOfType(java.lang.Class<T> ofType)
Replies an unmodifiable list of layers of a certain type.
|
int |
getNumLayers()
Replies the number of layers managed by this mav view
|
protected java.util.List<org.openstreetmap.josm.gui.layer.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.
|
boolean |
hasLayer(org.openstreetmap.josm.gui.layer.Layer layer)
replies true if the list of layers managed by this map view contain layer
|
boolean |
hasLayers()
Replies true if there is at least one layer in this map view
|
boolean |
isActiveLayerDrawable()
Replies true if the active layer is drawable.
|
boolean |
isActiveLayerVisible()
Replies true if the active layer is visible.
|
boolean |
isVirtualNodesEnabled() |
void |
moveLayer(org.openstreetmap.josm.gui.layer.Layer layer,
int pos)
Moves the layer to the given new position.
|
void |
paint(java.awt.Graphics g)
Draw the component.
|
void |
preferenceChanged(org.openstreetmap.josm.data.Preferences.PreferenceChangeEvent e) |
void |
propertyChange(java.beans.PropertyChangeEvent evt) |
void |
recalculateCenterScale(org.openstreetmap.josm.data.osm.visitor.BoundingXYVisitor box)
Set the new dimension to the view.
|
protected void |
refreshTitle() |
static void |
removeEditLayerChangeListener(MapView.EditLayerChangeListener listener) |
void |
removeLayer(org.openstreetmap.josm.gui.layer.Layer layer)
Remove the layer from the mapview.
|
static void |
removeLayerChangeListener(MapView.LayerChangeListener listener)
Removes a layer change listener
|
boolean |
removeTemporaryLayer(org.openstreetmap.josm.gui.layer.MapViewPaintable mvp) |
void |
setActiveLayer(org.openstreetmap.josm.gui.layer.Layer layer)
Sets the active layer to
layer . |
void |
setVirtualNodesEnabled(boolean enabled) |
boolean |
zoomToDataSetBoundingBox(org.openstreetmap.josm.data.osm.DataSet ds)
Tries to zoom to the download boundingbox[es] of the current edit layer
(aka
OsmDataLayer ). |
addZoomChangeListener, asColl, fireZoomChanged, getAllNearest, getAllNearest, getCenter, getDist100Pixel, getDist100PixelText, getDistText, getEastNorth, getLatLon, getLatLon, getLatLonBounds, getMaxProjectionBounds, getNearest, getNearestCollection, getNearestNode, getNearestNode, getNearestNode, getNearestNodeOrWay, getNearestNodes, getNearestNodes, getNearestNodesOrWays, getNearestNodesOrWays, getNearestWay, getNearestWay, getNearestWays, getNearestWays, getNearestWaySegment, getNearestWaySegment, getNearestWaySegments, getNearestWaySegments, getPoint, getPoint, getPoint, getPoint2D, getPoint2D, getPoint2D, getProjection, getProjectionBounds, getRealBounds, getSystemOfMeasurement, getViewID, hasZoomRedoEntries, hasZoomUndoEntries, helpTopic, perDist, project, project, removeZoomChangeListener, resetCursor, setNewCursor, setNewCursor, smoothScrollTo, smoothScrollTo, zoomNext, zoomPrevious, zoomTo, zoomTo, zoomTo, zoomTo, zoomTo, zoomToFactor, zoomToFactor, zoomToFactor
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
public boolean viewportFollowing
public org.openstreetmap.josm.gui.layer.markerlayer.PlayHeadMarker playHeadMarker
public java.awt.event.MouseEvent lastMEvent
public static void removeLayerChangeListener(MapView.LayerChangeListener listener)
listener
- the listener. Ignored if null or already registered.public static void removeEditLayerChangeListener(MapView.EditLayerChangeListener listener)
public static void addLayerChangeListener(MapView.LayerChangeListener listener)
listener
- the listener. Ignored if null or already registered.public static void addEditLayerChangeListener(MapView.EditLayerChangeListener listener, boolean initialFire)
listener
- the listener. Ignored if null or already registered.initialFire
- Fire an edit-layer-changed-event right after adding
the listener in case there is an edit layer presentpublic static void addEditLayerChangeListener(MapView.EditLayerChangeListener listener)
protected static void fireActiveLayerChanged(org.openstreetmap.josm.gui.layer.Layer oldLayer, org.openstreetmap.josm.gui.layer.Layer newLayer)
protected static void fireLayerAdded(org.openstreetmap.josm.gui.layer.Layer newLayer)
protected static void fireLayerRemoved(org.openstreetmap.josm.gui.layer.Layer layer)
protected static void fireEditLayerChanged(org.openstreetmap.josm.gui.layer.OsmDataLayer oldLayer, org.openstreetmap.josm.gui.layer.OsmDataLayer newLayer)
protected void addGpxLayer(org.openstreetmap.josm.gui.layer.GpxLayer layer)
layer
- the GPX layerpublic void addLayer(org.openstreetmap.josm.gui.layer.Layer layer)
protected org.openstreetmap.josm.data.osm.DataSet getCurrentDataSet()
getCurrentDataSet
in class NavigatableComponent
public boolean isActiveLayerDrawable()
public boolean isActiveLayerVisible()
protected org.openstreetmap.josm.gui.layer.Layer determineNextActiveLayer(java.util.List<org.openstreetmap.josm.gui.layer.Layer> layersList)
OsmDataLayer
the first one
becomes activepublic void removeLayer(org.openstreetmap.josm.gui.layer.Layer layer)
public void setVirtualNodesEnabled(boolean enabled)
public boolean isVirtualNodesEnabled()
public void moveLayer(org.openstreetmap.josm.gui.layer.Layer layer, int pos)
layer
- The layer to movepos
- The new position of the layerpublic int getLayerPos(org.openstreetmap.josm.gui.layer.Layer layer)
protected java.util.List<org.openstreetmap.josm.gui.layer.Layer> getVisibleLayersInZOrder()
public void paint(java.awt.Graphics g)
paint
in class javax.swing.JComponent
public void recalculateCenterScale(org.openstreetmap.josm.data.osm.visitor.BoundingXYVisitor box)
public java.util.Collection<org.openstreetmap.josm.gui.layer.Layer> getAllLayers()
public java.util.List<org.openstreetmap.josm.gui.layer.Layer> getAllLayersAsList()
public <T> java.util.List<T> getLayersOfType(java.lang.Class<T> ofType)
ListwmsLayers = getLayersOfType(WMSLayer.class);
public int getNumLayers()
public boolean hasLayers()
public void setActiveLayer(org.openstreetmap.josm.gui.layer.Layer layer)
layer
. If layer
is an instance
of OsmDataLayer
also sets editLayer
to layer
.layer
- the layer to be activate; must be one of the layers in the list of layersjava.lang.IllegalArgumentException
- thrown if layer is not in the lis of layerspublic org.openstreetmap.josm.gui.layer.Layer getActiveLayer()
public org.openstreetmap.josm.gui.layer.OsmDataLayer getEditLayer()
public boolean hasLayer(org.openstreetmap.josm.gui.layer.Layer layer)
layer
- the layerpublic boolean zoomToDataSetBoundingBox(org.openstreetmap.josm.data.osm.DataSet ds)
OsmDataLayer
). If the edit layer has multiple download bounding
boxes it zooms to a large virtual bounding box containing all smaller ones.true
if a zoom operation has been performedpublic boolean addTemporaryLayer(org.openstreetmap.josm.gui.layer.MapViewPaintable mvp)
public boolean removeTemporaryLayer(org.openstreetmap.josm.gui.layer.MapViewPaintable mvp)
public void propertyChange(java.beans.PropertyChangeEvent evt)
propertyChange
in interface java.beans.PropertyChangeListener
protected void refreshTitle()
public void preferenceChanged(org.openstreetmap.josm.data.Preferences.PreferenceChangeEvent e)
preferenceChanged
in interface org.openstreetmap.josm.data.Preferences.PreferenceChangedListener
public void destroy()