Class ConflictDialog
- 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.ConflictDialog
-
- All Implemented Interfaces:
java.awt.event.AWTEventListener,java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,java.util.EventListener,javax.accessibility.Accessible,IConflictListener,DataSelectionListener,Helpful,MainLayerManager.ActiveLayerChangeListener,ShowHideButtonListener,PreferenceChangedListener,Destroyable
public final class ConflictDialog extends ToggleDialog implements MainLayerManager.ActiveLayerChangeListener, IConflictListener, DataSelectionListener
This dialog displays theConflictCollectionof the activeOsmDataLayerin a toggle dialog on the right of the main frame.- Since:
- 86
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) classConflictDialog.ConflictListModelTheListModelfor conflictsstatic classConflictDialog.ConflictPainterPaints conflicts.(package private) classConflictDialog.MouseEventHandler(package private) classConflictDialog.ResolveAction(package private) static classConflictDialog.ResolveButtonsPopupMenuListener(package private) classConflictDialog.ResolveToAction(package private) classConflictDialog.ResolveToMyVersionAction(package private) classConflictDialog.ResolveToTheirVersionAction(package private) classConflictDialog.SelectAction-
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 ConflictDialog.ResolveActionactResolveprivate ConflictDialog.SelectActionactSelectprivate static NamedColorPropertyBACKGROUND_COLORprivate static NamedColorPropertyCONFLICT_COLORprivate ConflictCollectionconflictsthe collection of conflicts displayed by this conflict dialogprivate javax.swing.JList<OsmPrimitive>lstConflictsthe list widget for the list of conflictsprivate ConflictDialog.ConflictListModelmodelthe model for the list of conflictsprivate javax.swing.JPopupMenupopupMenuprivate PopupMenuHandlerpopupMenuHandler-
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 ConflictDialog()Constructs a newConflictDialog.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactiveOrEditLayerChanged(MainLayerManager.ActiveLayerChangeEvent e)Called whenever the active or edit layer changed.private voidaddDataLayerListeners(OsmDataLayer newLayer)voidaddListSelectionListener(javax.swing.event.ListSelectionListener listener)Add a list selection listener to the conflicts list.private voidbuild()builds the GUIstatic java.awt.ColorgetColor()Replies the color used to paint conflicts.ConflictCollectiongetConflicts()replies the conflict collection currently held by this dialog; may be nullPopupMenuHandlergetPopupMenuHandler()Replies the popup menu handler.Conflict<? extends OsmPrimitive>getSelectedConflict()returns the first selected item of the conflicts listjava.lang.StringhelpTopic()Returns the help topic on JOSM wiki for this feature.voidhideNotify()Called when toggle dialog is hidden (collapsed, removed, MapFrame is removed, ...).private booleanisConflictSelected()voidonConflictsAdded(ConflictCollection conflicts)Called when conflicts are added.voidonConflictsRemoved(ConflictCollection conflicts)Called when conflicts are removed.voidpaintConflicts(java.awt.Graphics g, NavigatableComponent nc)Paints all conflicts that can be expressed on the main window.voidrefreshView()refreshes the view of this dialogprivate voidremoveDataLayerListeners(OsmDataLayer oldLayer)voidremoveListSelectionListener(javax.swing.event.ListSelectionListener listener)Remove the given list selection listener from the conflicts list.private voidresolve()Launches a conflict resolution dialog for the first selected conflictvoidselectionChanged(DataSelectionListener.SelectionChangeEvent event)Called whenever the selection is changed.voidshowNotify()Called when toggle dialog is shown (after it was created or expanded).private voidupdateTitle()voidwarnNumNewConflicts(int numNewConflicts)Warns the user about the number of detected conflicts-
Methods inherited from class org.openstreetmap.josm.gui.dialogs.ToggleDialog
buttonHidden, buttonShown, clearButtonActions, closeDetachedDialog, collapse, createLayout, createLayout, destroy, detach, dock, dockWhenClosingDetachedDlg, eventDispatched, expand, getButton, getDefaultDetachedSize, getLastHeight, getName, getPreferencePrefix, getPreferredHeight, getToggleAction, 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, setVisible, 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
-
CONFLICT_COLOR
private static final NamedColorProperty CONFLICT_COLOR
-
BACKGROUND_COLOR
private static final NamedColorProperty BACKGROUND_COLOR
-
conflicts
private transient ConflictCollection conflicts
the collection of conflicts displayed by this conflict dialog
-
model
private transient ConflictDialog.ConflictListModel model
the model for the list of conflicts
-
lstConflicts
private javax.swing.JList<OsmPrimitive> lstConflicts
the list widget for the list of conflicts
-
popupMenu
private final javax.swing.JPopupMenu popupMenu
-
popupMenuHandler
private final transient PopupMenuHandler popupMenuHandler
-
actResolve
private final ConflictDialog.ResolveAction actResolve
-
actSelect
private final ConflictDialog.SelectAction actSelect
-
-
Constructor Detail
-
ConflictDialog
public ConflictDialog()
Constructs a newConflictDialog.
-
-
Method Detail
-
getColor
public static java.awt.Color getColor()
Replies the color used to paint conflicts.- Returns:
- the color used to paint conflicts
- Since:
- 1221
- See Also:
paintConflicts(java.awt.Graphics, org.openstreetmap.josm.gui.NavigatableComponent)
-
build
private void build()
builds the GUI
-
showNotify
public void showNotify()
Description copied from class:ToggleDialogCalled 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:
showNotifyin classToggleDialog
-
hideNotify
public void hideNotify()
Description copied from class:ToggleDialogCalled when toggle dialog is hidden (collapsed, removed, MapFrame is removed, ...). Good place to unregister listeners- Overrides:
hideNotifyin classToggleDialog
-
addListSelectionListener
public void addListSelectionListener(javax.swing.event.ListSelectionListener listener)
Add a list selection listener to the conflicts list.- Parameters:
listener- the ListSelectionListener- Since:
- 5958
-
removeListSelectionListener
public void removeListSelectionListener(javax.swing.event.ListSelectionListener listener)
Remove the given list selection listener from the conflicts list.- Parameters:
listener- the ListSelectionListener- Since:
- 5958
-
getPopupMenuHandler
public PopupMenuHandler getPopupMenuHandler()
Replies the popup menu handler.- Returns:
- The popup menu handler
- Since:
- 5958
-
resolve
private void resolve()
Launches a conflict resolution dialog for the first selected conflict
-
refreshView
public void refreshView()
refreshes the view of this dialog
-
updateTitle
private void updateTitle()
-
paintConflicts
public void paintConflicts(java.awt.Graphics g, NavigatableComponent nc)
Paints all conflicts that can be expressed on the main window.- Parameters:
g- TheGraphicsused to paintnc- TheNavigatableComponentused to get screen coordinates of nodes- Since:
- 86
-
activeOrEditLayerChanged
public void activeOrEditLayerChanged(MainLayerManager.ActiveLayerChangeEvent e)
Description copied from interface:MainLayerManager.ActiveLayerChangeListenerCalled 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:
activeOrEditLayerChangedin interfaceMainLayerManager.ActiveLayerChangeListener- Parameters:
e- The change event.
-
addDataLayerListeners
private void addDataLayerListeners(OsmDataLayer newLayer)
-
removeDataLayerListeners
private void removeDataLayerListeners(OsmDataLayer oldLayer)
-
getConflicts
public ConflictCollection getConflicts()
replies the conflict collection currently held by this dialog; may be null- Returns:
- the conflict collection currently held by this dialog; may be null
-
getSelectedConflict
public Conflict<? extends OsmPrimitive> getSelectedConflict()
returns the first selected item of the conflicts list- Returns:
- Conflict
-
isConflictSelected
private boolean isConflictSelected()
-
onConflictsAdded
public void onConflictsAdded(ConflictCollection conflicts)
Description copied from interface:IConflictListenerCalled when conflicts are added.- Specified by:
onConflictsAddedin interfaceIConflictListener- Parameters:
conflicts- collection to which conflicts have been added
-
onConflictsRemoved
public void onConflictsRemoved(ConflictCollection conflicts)
Description copied from interface:IConflictListenerCalled when conflicts are removed.- Specified by:
onConflictsRemovedin interfaceIConflictListener- Parameters:
conflicts- collection from which conflicts have been removed
-
selectionChanged
public void selectionChanged(DataSelectionListener.SelectionChangeEvent event)
Description copied from interface:DataSelectionListenerCalled 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:
selectionChangedin interfaceDataSelectionListener- Parameters:
event- The selection change event.- See Also:
DataSelectionListener.SelectionChangeEvent
-
helpTopic
public java.lang.String helpTopic()
Description copied from interface:HelpfulReturns the help topic on JOSM wiki for this feature.- Specified by:
helpTopicin interfaceHelpful- Overrides:
helpTopicin classToggleDialog- Returns:
- the help topic on JOSM wiki for this feature
-
warnNumNewConflicts
public void warnNumNewConflicts(int numNewConflicts)
Warns the user about the number of detected conflicts- Parameters:
numNewConflicts- the number of detected conflicts- Since:
- 5775
-
-