Package de.kappich.pat.gnd.gnd
Class MapPane
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JLayeredPane
de.kappich.pat.gnd.gnd.MapPane
- All Implemented Interfaces:
DOTManager.DOTChangeListener
,ReferenceHierarchyManager.RhmChangeListener
,View.ViewChangeListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.awt.print.Printable
,java.io.Serializable
,javax.accessibility.Accessible
public class MapPane extends javax.swing.JLayeredPane implements View.ViewChangeListener, java.awt.print.Printable, DOTManager.DOTChangeListener, ReferenceHierarchyManager.RhmChangeListener
Die Kartenansicht der Kartendarstellung.
Ein MapPane steht für die Kartenansicht der GND. Um die einzelnen Layer darzustellen, ist MapPane von JLayeredPane abgeleitet. Jeder nicht-leere
Layer des JLayeredPane enthält genau eine Komponente der Klasse MapPane.LayerPanel
, das die Objekte eines GND-Layers darstellt.
- See Also:
- Serialized Form
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
MapPane.MapScaleListener
Ein Interface für Listener, die an Maßstabs-Änderungen der Kartenansicht interessiert sind.Nested classes/interfaces inherited from class javax.swing.JLayeredPane
javax.swing.JLayeredPane.AccessibleJLayeredPane
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
-
Field Summary
Fields inherited from class javax.swing.JLayeredPane
DEFAULT_LAYER, DRAG_LAYER, FRAME_CONTENT_LAYER, LAYER_PROPERTY, MODAL_LAYER, PALETTE_LAYER, POPUP_LAYER
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Fields inherited from interface java.awt.print.Printable
NO_SUCH_PAGE, PAGE_EXISTS
-
Constructor Summary
Constructors Constructor Description MapPane(GenericNetDisplay gnd, View view)
Konstruiert eine neue Kartenansicht für das übergebene GenericNetDisplay mit der übergebenen Ansicht. -
Method Summary
Modifier and Type Method Description void
addMapScaleListeners(java.util.Collection<MapPane.MapScaleListener> listeners)
Fügt die übergebenen Objekte der Menge der auf Änderungen des Maßstabs angemeldeten Objekte hinzu.void
addSelectionListener(SelectionListener listener)
Fügt das übergebene Objekt der Liste der auf Änderungen der Selektion angemeldeten Objekte hinzu.void
displayObjectTypeAdded(DisplayObjectType displayObjectType)
Diese Methode wird aufgerufen, wenn der übergebene Darstellungstyp hinzugefügt wurde.void
displayObjectTypeChanged(DisplayObjectType displayObjectType)
Diese Methode wird aufgerufen, wenn der übergebene Darstellungstyp geändert wurde.void
displayObjectTypeRemoved(java.lang.String displayObjectTypeName)
Diese Methode wird aufgerufen, wenn der genannte Darstellungstyp gelöscht wurde.void
focusOnObjects(java.util.Collection<DisplayObject> displayObjects)
Berechnet das die DisplayObjects umgebende Rechteck und wählt dieses (oder ein nach Höhe und Breite ähnliches) als neuen Kartenausschnitt.java.awt.geom.Point2D
getCenterPoint()
GenericNetDisplay
getGnd()
java.lang.Double
getMapScale()
Gibt den aktuellen Maßstab zurück.java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject>
getSelectedSystemObjects()
Gibt die Menge der aktuell in der Kartenansicht selektierten Objekte zurück.java.lang.String
getToolTipText(java.awt.event.MouseEvent e)
Erzeugt den Tooltipp auf der Kartenansicht.java.awt.Rectangle
getUTMBounds()
Gibt das UTM-Rechteck, das dem aktuellen Ausschnitt entspricht zurückvoid
init()
Der Konstruktor dient der Klasses GenericNetDisplay dazu, das MapPane schon anordnen zu können.boolean
isTooltipOn()
Gibttrue
zurück, falls der Tooltipp auf der Kartenansicht aktiviert ist.protected void
paintComponent(java.awt.Graphics g)
int
print(java.awt.Graphics g, java.awt.print.PageFormat pageFormat, int pageIndex)
void
redraw()
void
referenceHierarchyAdded(ReferenceHierarchy referenceHierarchy)
Diese Methode wird aufgerufen, wenn die EOR-Hierarchie hinzugefügt wurde.void
referenceHierarchyChanged(ReferenceHierarchy referenceHierarchy)
Diese Methode wird aufgerufen, wenn die EOR-Hierarchie geändert wurde.void
referenceHierarchyRemoved(java.lang.String name)
Diese Methode wird aufgerufen, wenn die EOR-Hierarchie mit dem Namen gelöscht wurde.boolean
removeSelectionListener(SelectionListener listener)
Entfernt das übergebene Objekt aus der Liste der auf Änderungen der Selektion angemeldeten Objekte.void
resolutionChanged(java.lang.Double newValue, java.lang.Double oldValue)
void
setSelectedObjects(java.util.Collection<DisplayObject> displayObjects)
Selektiert alle übergebenen Objekte.void
setTooltip(boolean tooltip)
Schaltet den Tooltipp auf der Kartenansicht ab oder an.java.lang.String
toString()
void
updateDisplayObject(OnlineDisplayObject displayObject)
Veranlaßt eine Aktualisierung der Darstellung des übergebenen DisplayObjects.void
viewEntriesSwitched(View view, int i, int j)
Die Layer an der i-ten und j-ten Stelle der Ansicht wurden miteinander vertauscht.void
viewEntryDefinitionChanged(View view, int i)
Die Definition des Layers an der i-ten Stelle der Ansicht wurde geändert.void
viewEntryInserted(View view, int newIndex)
Der Ansicht wurde ein Layer am Ende an der angegebenen Stelle hinzugefügt.void
viewEntryPropertyChanged(View view, int i)
Eine Eigenschaft des Layers an der i-ten Stelle der Ansicht wurde geändert.void
viewEntryRemoved(View view, int i)
Der Layer an der i-ten Stelle der Ansicht wurde gelöscht.Methods inherited from class javax.swing.JLayeredPane
addImpl, getAccessibleContext, getComponentCountInLayer, getComponentsInLayer, getComponentToLayer, getIndexOf, getLayer, getLayer, getLayeredPaneAbove, getObjectForLayer, getPosition, highestLayer, insertIndexForLayer, isOptimizedDrawingEnabled, lowestLayer, moveToBack, moveToFront, paint, paramString, putLayer, remove, removeAll, setLayer, setLayer, setPosition
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, 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, getTopLevelAncestor, getTransferHandler, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintImmediately, paintImmediately, 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
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, 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, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
Methods inherited from class java.awt.Component
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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Constructor Details
-
MapPane
Konstruiert eine neue Kartenansicht für das übergebene GenericNetDisplay mit der übergebenen Ansicht. Das Objekt wird zunächst aber nur konstruiert, die eigentliche Initialisierung muss mitinit()
noch ausgeführt werden.- Parameters:
gnd
- die Netzdarstellungview
- die aktuelle Ansicht
-
-
Method Details
-
init
public void init()Der Konstruktor dient der Klasses GenericNetDisplay dazu, das MapPane schon anordnen zu können. In der folgenden init-Methode und ihren Initialisierungen wird JComponent.getBounds() aufgerufen, was erst sinnvoll ist, wenn das MapPane schon im GenericNetDisplay mit pack() gepackt wurde. -
getCenterPoint
public java.awt.geom.Point2D getCenterPoint() -
getGnd
-
redraw
public void redraw() -
getUTMBounds
public java.awt.Rectangle getUTMBounds()Gibt das UTM-Rechteck, das dem aktuellen Ausschnitt entspricht zurück- Returns:
- das UTM-Rechteck
-
viewEntriesSwitched
Description copied from interface:View.ViewChangeListener
Die Layer an der i-ten und j-ten Stelle der Ansicht wurden miteinander vertauscht.- Specified by:
viewEntriesSwitched
in interfaceView.ViewChangeListener
- Parameters:
view
- die Ansichti
- ein Indexj
- ein Index
-
setSelectedObjects
Selektiert alle übergebenen Objekte. Leert zuvor die Selektion, die temporäre Selektion und löscht ein eventuell vorhandenes Selektions-Rechteck.- Parameters:
displayObjects
- DisplayObjects
-
focusOnObjects
Berechnet das die DisplayObjects umgebende Rechteck und wählt dieses (oder ein nach Höhe und Breite ähnliches) als neuen Kartenausschnitt.- Parameters:
displayObjects
- eine Collection von DisplayObjects
-
viewEntryInserted
Description copied from interface:View.ViewChangeListener
Der Ansicht wurde ein Layer am Ende an der angegebenen Stelle hinzugefügt.- Specified by:
viewEntryInserted
in interfaceView.ViewChangeListener
- Parameters:
view
- die AnsichtnewIndex
- der Index
-
viewEntryDefinitionChanged
Description copied from interface:View.ViewChangeListener
Die Definition des Layers an der i-ten Stelle der Ansicht wurde geändert. Diese Methode soll benutzt werden, wenn eine erneute Initialisierung des Layers notwendig ist.- Specified by:
viewEntryDefinitionChanged
in interfaceView.ViewChangeListener
- Parameters:
view
- die Ansichti
- ein Index
-
viewEntryPropertyChanged
Description copied from interface:View.ViewChangeListener
Eine Eigenschaft des Layers an der i-ten Stelle der Ansicht wurde geändert. Diese Methode soll benutzt werden, wenn keine erneute Initialisierung des Layers notwendig ist.- Specified by:
viewEntryPropertyChanged
in interfaceView.ViewChangeListener
- Parameters:
view
- die Ansichti
- ein Index
-
viewEntryRemoved
Description copied from interface:View.ViewChangeListener
Der Layer an der i-ten Stelle der Ansicht wurde gelöscht.- Specified by:
viewEntryRemoved
in interfaceView.ViewChangeListener
- Parameters:
view
- die Ansichti
- ein Index
-
print
public int print(java.awt.Graphics g, java.awt.print.PageFormat pageFormat, int pageIndex) throws java.awt.print.PrinterException- Specified by:
print
in interfacejava.awt.print.Printable
- Throws:
java.awt.print.PrinterException
-
paintComponent
protected void paintComponent(java.awt.Graphics g)- Overrides:
paintComponent
in classjavax.swing.JComponent
-
getMapScale
public java.lang.Double getMapScale()Gibt den aktuellen Maßstab zurück.- Returns:
- der Maßstabsfaktor
-
addMapScaleListeners
Fügt die übergebenen Objekte der Menge der auf Änderungen des Maßstabs angemeldeten Objekte hinzu.- Parameters:
listeners
- die neuen Listener
-
getToolTipText
@Nullable public java.lang.String getToolTipText(java.awt.event.MouseEvent e)Erzeugt den Tooltipp auf der Kartenansicht.- Overrides:
getToolTipText
in classjavax.swing.JComponent
- Parameters:
e
- der Mouse-Event
-
isTooltipOn
public boolean isTooltipOn()Gibttrue
zurück, falls der Tooltipp auf der Kartenansicht aktiviert ist.- Returns:
true
genau dann, wenn der Tooltipp auf der Kartenansicht aktiviert ist
-
setTooltip
public void setTooltip(boolean tooltip)Schaltet den Tooltipp auf der Kartenansicht ab oder an.- Parameters:
tooltip
- der neue Wert für die Tooltipp-Aktivität
-
updateDisplayObject
Veranlaßt eine Aktualisierung der Darstellung des übergebenen DisplayObjects.- Parameters:
displayObject
- das OnlineDisplayObject
-
resolutionChanged
public void resolutionChanged(java.lang.Double newValue, java.lang.Double oldValue) -
getSelectedSystemObjects
public java.util.Collection<de.bsvrz.dav.daf.main.config.SystemObject> getSelectedSystemObjects()Gibt die Menge der aktuell in der Kartenansicht selektierten Objekte zurück.- Returns:
- die Menge der aktuell in der Kartenansicht selektierten Objekte
-
displayObjectTypeAdded
Description copied from interface:DOTManager.DOTChangeListener
Diese Methode wird aufgerufen, wenn der übergebene Darstellungstyp hinzugefügt wurde.- Specified by:
displayObjectTypeAdded
in interfaceDOTManager.DOTChangeListener
- Parameters:
displayObjectType
- ein Darstellungstyp
-
displayObjectTypeChanged
Description copied from interface:DOTManager.DOTChangeListener
Diese Methode wird aufgerufen, wenn der übergebene Darstellungstyp geändert wurde.- Specified by:
displayObjectTypeChanged
in interfaceDOTManager.DOTChangeListener
- Parameters:
displayObjectType
- ein Darstellungstyp
-
displayObjectTypeRemoved
public void displayObjectTypeRemoved(java.lang.String displayObjectTypeName)Description copied from interface:DOTManager.DOTChangeListener
Diese Methode wird aufgerufen, wenn der genannte Darstellungstyp gelöscht wurde.- Specified by:
displayObjectTypeRemoved
in interfaceDOTManager.DOTChangeListener
- Parameters:
displayObjectTypeName
- ein Name eines Darstellungstyp
-
addSelectionListener
Fügt das übergebene Objekt der Liste der auf Änderungen der Selektion angemeldeten Objekte hinzu.- Parameters:
listener
- der neue Listener
-
removeSelectionListener
Entfernt das übergebene Objekt aus der Liste der auf Änderungen der Selektion angemeldeten Objekte.- Parameters:
listener
- der zu entfernende Listener
-
referenceHierarchyAdded
Description copied from interface:ReferenceHierarchyManager.RhmChangeListener
Diese Methode wird aufgerufen, wenn die EOR-Hierarchie hinzugefügt wurde.- Specified by:
referenceHierarchyAdded
in interfaceReferenceHierarchyManager.RhmChangeListener
- Parameters:
referenceHierarchy
- eine ReferenceHierarchy
-
referenceHierarchyChanged
Description copied from interface:ReferenceHierarchyManager.RhmChangeListener
Diese Methode wird aufgerufen, wenn die EOR-Hierarchie geändert wurde.- Specified by:
referenceHierarchyChanged
in interfaceReferenceHierarchyManager.RhmChangeListener
- Parameters:
referenceHierarchy
- eine ReferenceHierarchy
-
referenceHierarchyRemoved
public void referenceHierarchyRemoved(java.lang.String name)Description copied from interface:ReferenceHierarchyManager.RhmChangeListener
Diese Methode wird aufgerufen, wenn die EOR-Hierarchie mit dem Namen gelöscht wurde.- Specified by:
referenceHierarchyRemoved
in interfaceReferenceHierarchyManager.RhmChangeListener
- Parameters:
name
- ein Name
-
toString
public java.lang.String toString()- Overrides:
toString
in classjava.awt.Component
-