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:
java.awt.event.AWTEventListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.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
javax.swing.JPanel.AccessibleJPanel
-
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
-
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 javax.swing.Action
fixAction
The fix actionprivate javax.swing.Action
ignoreAction
The ignore actionprivate JosmAction
ignoreForNowAction
private javax.swing.Action
ignorelistManagementAction
The ignore-list management actionprivate javax.swing.tree.DefaultMutableTreeNode
lastSelectedNode
Last selected elementprivate ValidatorDialog.LookupAction
lookupAction
The lookup actionprivate javax.swing.JPopupMenu
popupMenu
private PopupMenuHandler
popupMenuHandler
private javax.swing.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
-
-
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(javax.swing.event.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 statestatic void
invalidateValidatorLayers()
Invalidate the error layervoid
preferenceChanged(PreferenceChangeEvent e)
Triggered when a preference entry value changes.void
processDatasetEvent(AbstractDatasetChangedEvent event)
Called when notified about any type of dataset change event.void
removeTreeSelectionListener(javax.swing.event.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(java.util.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(java.util.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, 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
-
fixAction
private final transient javax.swing.Action fixAction
The fix action
-
ignoreAction
private final transient javax.swing.Action ignoreAction
The ignore action
-
ignorelistManagementAction
private final transient javax.swing.Action ignorelistManagementAction
The ignore-list management action
-
selectAction
private final transient javax.swing.Action selectAction
The select action
-
lookupAction
private final transient ValidatorDialog.LookupAction lookupAction
The lookup action
-
ignoreForNowAction
private final transient JosmAction ignoreForNowAction
-
popupMenu
private final javax.swing.JPopupMenu popupMenu
-
popupMenuHandler
private final transient PopupMenuHandler popupMenuHandler
-
dataChangedAdapter
private final transient DataSetListenerAdapter dataChangedAdapter
-
lastSelectedNode
private javax.swing.tree.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 classjavax.swing.JComponent
-
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(java.util.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(javax.swing.event.TreeSelectionListener listener)
Add a tree selection listener to the validator tree.- Parameters:
listener
- the TreeSelectionListener- Since:
- 5958
-
removeTreeSelectionListener
public void removeTreeSelectionListener(javax.swing.event.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(java.util.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
public static void invalidateValidatorLayers()
Invalidate the error layer
-
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
-
preferenceChanged
public void preferenceChanged(PreferenceChangeEvent e)
Description copied from interface:PreferenceChangedListener
Triggered when a preference entry value changes.- Specified by:
preferenceChanged
in interfacePreferenceChangedListener
- Overrides:
preferenceChanged
in classToggleDialog
- Parameters:
e
- the preference change event
-
-