Class ValidatorDialog
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- org.openstreetmap.josm.gui.dialogs.ToggleDialog
-
- org.openstreetmap.josm.gui.dialogs.ValidatorDialog
-
- All Implemented Interfaces:
AWTEventListener
,ImageObserver
,MenuContainer
,Serializable
,EventListener
,Accessible
,DataSelectionListener
,DataSetListenerAdapter.Listener
,Helpful
,MainLayerManager.ActiveLayerChangeListener
,ShowHideButtonListener
,PreferenceChangedListener
,Destroyable
public class ValidatorDialog extends ToggleDialog implements DataSelectionListener, MainLayerManager.ActiveLayerChangeListener, DataSetListenerAdapter.Listener
A small tool dialog for displaying the current errors. The selection manager respects clicks into the selection list. Ctrl-click will remove entries from the list while single click will make the clicked entry the only selection.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
ValidatorDialog.AutofixCommand
(package private) class
ValidatorDialog.FixTask
Task for fixing a collection ofTestError
s.(package private) static class
ValidatorDialog.IgnorelistManagementAction
The action to manage the ignore list.(package private) class
ValidatorDialog.LookupAction
The action to lookup the selection in the error tree.(package private) class
ValidatorDialog.MouseEventHandler
Watches for double clicks and launches the popup menu.class
ValidatorDialog.SelectionWatch
Watches for tree selection.static class
ValidatorDialog.ValidatorBoundingXYVisitor
A visitor that is used to compute the bounds of an error.-
Nested classes/interfaces inherited from class org.openstreetmap.josm.gui.dialogs.ToggleDialog
ToggleDialog.ButtonHidingType, ToggleDialog.TitleBar, ToggleDialog.ToggleDialogAction
-
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Nested classes/interfaces inherited from interface org.openstreetmap.josm.data.osm.DataSelectionListener
DataSelectionListener.AbstractSelectionEvent, DataSelectionListener.SelectionAddEvent, DataSelectionListener.SelectionChangeEvent, DataSelectionListener.SelectionRemoveEvent, DataSelectionListener.SelectionReplaceEvent, DataSelectionListener.SelectionToggleEvent
-
-
Field Summary
Fields Modifier and Type Field Description private DataSetListenerAdapter
dataChangedAdapter
private Action
fixAction
The fix actionprivate Action
ignoreAction
The ignore actionprivate JosmAction
ignoreForNowAction
private Action
ignorelistManagementAction
The ignore-list management actionprivate DefaultMutableTreeNode
lastSelectedNode
Last selected elementprivate ValidatorDialog.LookupAction
lookupAction
The lookup actionprivate JPopupMenu
popupMenu
private PopupMenuHandler
popupMenuHandler
private Action
selectAction
The select actionValidatorTreePanel
tree
The display treestatic ValidateAction
validateAction
The validate action-
Fields inherited from class org.openstreetmap.josm.gui.dialogs.ToggleDialog
button, buttonHiding, detachedDialog, dialogsPanel, isCollapsed, isDocked, isShowing, name, preferenceClass, preferencePrefix, PROP_DYNAMIC_BUTTONS, titleBar, toggleAction, windowMenuItem
-
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
-
-
Constructor Summary
Constructors Constructor Description ValidatorDialog()
Constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
activeOrEditLayerChanged(MainLayerManager.ActiveLayerChangeEvent e)
Called whenever the active or edit layer changed.void
addTreeSelectionListener(TreeSelectionListener listener)
Add a tree selection listener to the validator tree.void
destroy()
Called when the object has been destroyed.private void
fixErrors()
Fix selected errorsPopupMenuHandler
getPopupMenuHandler()
Replies the popup menu handler.TestError
getSelectedError()
Replies the currently selected error, ornull
.void
hideNotify()
Called when toggle dialog is hidden (collapsed, removed, MapFrame is removed, ...).private void
ignoreErrors()
Set selected errors to ignore stateprivate static void
invalidateValidatorLayers()
void
processDatasetEvent(AbstractDatasetChangedEvent event)
Called when notified about any type of dataset change event.void
removeTreeSelectionListener(TreeSelectionListener listener)
Remove the given tree selection listener from the validator tree.void
selectionChanged(DataSelectionListener.SelectionChangeEvent event)
Called whenever the selection is changed.private void
setSelectedItems()
Sets the selection of the map to the current selected items.private boolean
setSelection(Collection<OsmPrimitive> sel, boolean addSelected)
Checks for fixes in selected element and, if needed, adds to the sel parameter all selected elementsvoid
setVisible(boolean v)
void
showNotify()
Called when toggle dialog is shown (after it was created or expanded).void
updateSelection(Collection<? extends OsmPrimitive> newSelection)
Called when the selection was changed to update the list of displayed errors-
Methods inherited from class org.openstreetmap.josm.gui.dialogs.ToggleDialog
buttonHidden, buttonShown, clearButtonActions, closeDetachedDialog, collapse, createLayout, createLayout, detach, dock, dockWhenClosingDetachedDlg, eventDispatched, expand, getButton, getDefaultDetachedSize, getLastHeight, getName, getPreferencePrefix, getPreferredHeight, getToggleAction, helpTopic, hideDialog, isDialogInCollapsedView, isDialogInDefaultView, isDialogShowing, preferenceChanged, registerInWindowMenu, rememberHeight, setButton, setContentVisible, setDialogsPanel, setIsButtonHiding, setIsCollapsed, setIsDocked, setIsShowing, setTitle, showDialog, stateChanged, toggleButtonHook, toString, unfurlDialog
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
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, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, 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, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
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
-
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, 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
-
-
-
-
Field Detail
-
tree
public final ValidatorTreePanel tree
The display tree
-
validateAction
public static final ValidateAction validateAction
The validate action
-
ignoreAction
private final transient Action ignoreAction
The ignore action
-
ignorelistManagementAction
private final transient Action ignorelistManagementAction
The ignore-list management action
-
selectAction
private final transient Action selectAction
The select action
-
lookupAction
private final transient ValidatorDialog.LookupAction lookupAction
The lookup action
-
ignoreForNowAction
private final transient JosmAction ignoreForNowAction
-
popupMenu
private final JPopupMenu popupMenu
-
popupMenuHandler
private final transient PopupMenuHandler popupMenuHandler
-
dataChangedAdapter
private final transient DataSetListenerAdapter dataChangedAdapter
-
lastSelectedNode
private DefaultMutableTreeNode lastSelectedNode
Last selected element
-
-
Constructor Detail
-
ValidatorDialog
public ValidatorDialog()
Constructor
-
-
Method Detail
-
showNotify
public void showNotify()
Description copied from class:ToggleDialog
Called when toggle dialog is shown (after it was created or expanded). Descendants may overwrite this method, it's a good place to register listeners needed to keep dialog updated- Overrides:
showNotify
in classToggleDialog
-
hideNotify
public void hideNotify()
Description copied from class:ToggleDialog
Called when toggle dialog is hidden (collapsed, removed, MapFrame is removed, ...). Good place to unregister listeners- Overrides:
hideNotify
in classToggleDialog
-
setVisible
public void setVisible(boolean v)
- Overrides:
setVisible
in classJComponent
-
fixErrors
private void fixErrors()
Fix selected errors
-
ignoreErrors
private void ignoreErrors()
Set selected errors to ignore state
-
setSelectedItems
private void setSelectedItems()
Sets the selection of the map to the current selected items.
-
setSelection
private boolean setSelection(Collection<OsmPrimitive> sel, boolean addSelected)
Checks for fixes in selected element and, if needed, adds to the sel parameter all selected elements- Parameters:
sel
- The collection where to add all selected elementsaddSelected
- if true, add all selected elements to collection- Returns:
- whether the selected elements has any fix
-
activeOrEditLayerChanged
public void activeOrEditLayerChanged(MainLayerManager.ActiveLayerChangeEvent e)
Description copied from interface:MainLayerManager.ActiveLayerChangeListener
Called whenever the active or edit layer changed.You can be sure that this layer is still contained in this set.
Listeners are called in the EDT thread and you can manipulate the layer manager in the current thread.
- Specified by:
activeOrEditLayerChanged
in interfaceMainLayerManager.ActiveLayerChangeListener
- Parameters:
e
- The change event.
-
addTreeSelectionListener
public void addTreeSelectionListener(TreeSelectionListener listener)
Add a tree selection listener to the validator tree.- Parameters:
listener
- the TreeSelectionListener- Since:
- 5958
-
removeTreeSelectionListener
public void removeTreeSelectionListener(TreeSelectionListener listener)
Remove the given tree selection listener from the validator tree.- Parameters:
listener
- the TreeSelectionListener- Since:
- 5958
-
getPopupMenuHandler
public PopupMenuHandler getPopupMenuHandler()
Replies the popup menu handler.- Returns:
- The popup menu handler
- Since:
- 5958
-
getSelectedError
public TestError getSelectedError()
Replies the currently selected error, ornull
.- Returns:
- The selected error, if any.
- Since:
- 5958
-
updateSelection
public void updateSelection(Collection<? extends OsmPrimitive> newSelection)
Called when the selection was changed to update the list of displayed errors- Parameters:
newSelection
- The new selection
-
selectionChanged
public void selectionChanged(DataSelectionListener.SelectionChangeEvent event)
Description copied from interface:DataSelectionListener
Called whenever the selection is changed. You get notified about the new selection, the elements that were added and removed and the layer that triggered the event.- Specified by:
selectionChanged
in interfaceDataSelectionListener
- Parameters:
event
- The selection change event.- See Also:
DataSelectionListener.SelectionChangeEvent
-
invalidateValidatorLayers
private static void invalidateValidatorLayers()
-
processDatasetEvent
public void processDatasetEvent(AbstractDatasetChangedEvent event)
Description copied from interface:DataSetListenerAdapter.Listener
Called when notified about any type of dataset change event.- Specified by:
processDatasetEvent
in interfaceDataSetListenerAdapter.Listener
- Parameters:
event
- dataset change event
-
destroy
public void destroy()
Description copied from interface:Destroyable
Called when the object has been destroyed.- Specified by:
destroy
in interfaceDestroyable
- Overrides:
destroy
in classToggleDialog
-
-