public abstract class RelationEditor extends ExtendedDialog
javax.swing.JDialog.AccessibleJDialogjava.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityTypejava.awt.Window.AccessibleAWTWindow, java.awt.Window.Type| Modifier and Type | Field and Description |
|---|---|
private static java.util.List<java.lang.Class<RelationEditor>> |
editors
the list of registered relation editor classes
|
private OsmDataLayer |
layer
the data layer the relation belongs to
|
private Relation |
relation
The relation that this editor is working on.
|
static java.lang.String |
RELATION_PROP
the property name for the current relation.
|
static java.lang.String |
RELATION_SNAPSHOT_PROP
the property name for the current relation snapshot
|
private Relation |
relationSnapshot
The version of the relation when editing is started.
|
private java.beans.PropertyChangeSupport |
support |
buttons, contentInsets, defaultButton, DialogClosedOtherwiseaccessibleContext, rootPane, rootPaneCheckingEnabledBOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT| Modifier | Constructor and Description |
|---|---|
protected |
RelationEditor(OsmDataLayer layer,
Relation relation,
java.util.Collection<RelationMember> selectedMembers)
Creates a new relation editor
|
| Modifier and Type | Method and Description |
|---|---|
void |
addPropertyChangeListener(java.beans.PropertyChangeListener listener) |
static RelationEditor |
getEditor(OsmDataLayer layer,
Relation r,
java.util.Collection<RelationMember> selectedMembers)
This is a factory method that creates an appropriate RelationEditor
instance suitable for editing the relation that was passed in as an
argument.
|
protected OsmDataLayer |
getLayer()
Replies the
OsmDataLayer in whose context this relation editor is
open |
protected Relation |
getRelation()
Replies the currently edited relation
|
protected Relation |
getRelationSnapshot()
Replies the state of the edited relation when the editor has been launched
|
protected boolean |
isDirtyRelation()
Replies true if the currently edited relation has been changed elsewhere.
|
void |
registerRelationEditor(java.lang.Class<RelationEditor> clazz)
Registers a relation editor class.
|
void |
removePropertyChangeListener(java.beans.PropertyChangeListener listener) |
protected void |
setRelation(Relation relation)
Sets the currently edited relation.
|
protected void |
setRelationSnapshot(Relation snapshot) |
protected void |
updateTitle()
updates the title of the relation editor
|
buttonAction, configureContextsensitiveHelp, findMaxDialogSize, getValue, initWindowGeometry, rememberWindowGeometry, setButtonIcons, setButtonIcons, setCancelButton, setContent, setContent, setContent, setDefaultButton, setFocusOnDefaultButton, setIcon, setIcon, setRememberWindowGeometry, setToolTipTexts, setupDialog, setVisible, showDialog, toggleCheckState, toggleDisable, toggleEnableaddImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, updateaddNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBackaddPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, toFrontadd, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusDownCycle, validate, validateTreeaction, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCyclepublic static final java.lang.String RELATION_PROP
setRelation(Relation),
getRelation()public static final java.lang.String RELATION_SNAPSHOT_PROP
getRelationSnapshot()private static java.util.List<java.lang.Class<RelationEditor>> editors
private Relation relationSnapshot
private OsmDataLayer layer
private final java.beans.PropertyChangeSupport support
protected RelationEditor(OsmDataLayer layer, Relation relation, java.util.Collection<RelationMember> selectedMembers) throws java.lang.IllegalArgumentException
layer - the OsmDataLayer in whose context a relation is edited. Must not be null.relation - the relation. Can be null if a new relation is to be edited.selectedMembers - a collection of members in relation which the editor
should display selected when the editor is first displayed on screenjava.lang.IllegalArgumentException - thrown if layer is nullpublic void registerRelationEditor(java.lang.Class<RelationEditor> clazz)
getEditor(OsmDataLayer, Relation, Collection) will create an instance of
this class.clazz - the classpublic static RelationEditor getEditor(OsmDataLayer layer, Relation r, java.util.Collection<RelationMember> selectedMembers)
layer - the data layer the relation is a member ofr - the relation to be editedselectedMembers - a collection of relation members which shall be selected when the
editor is first launchedprotected void updateTitle()
protected Relation getRelation()
protected void setRelation(Relation relation)
getRelationSnapshot()relation - the relationprotected OsmDataLayer getLayer()
OsmDataLayer in whose context this relation editor is
openOsmDataLayer in whose context this relation editor is
openprotected Relation getRelationSnapshot()
protected void setRelationSnapshot(Relation snapshot)
protected boolean isDirtyRelation()
public void addPropertyChangeListener(java.beans.PropertyChangeListener listener)
addPropertyChangeListener in class java.awt.Windowpublic void removePropertyChangeListener(java.beans.PropertyChangeListener listener)
removePropertyChangeListener in class java.awt.Component