public final class ConflictDialog extends ToggleDialog implements MainLayerManager.ActiveLayerChangeListener, IConflictListener, DataSelectionListener
ConflictCollection
of the active OsmDataLayer
in a toggle
dialog on the right of the main frame.Modifier and Type | Class and Description |
---|---|
(package private) class |
ConflictDialog.ConflictListModel
The
ListModel for conflicts |
static class |
ConflictDialog.ConflictPainter
Paints conflicts.
|
(package private) class |
ConflictDialog.MouseEventHandler |
(package private) class |
ConflictDialog.ResolveAction |
(package private) static class |
ConflictDialog.ResolveButtonsPopupMenuListener |
(package private) class |
ConflictDialog.ResolveToAction |
(package private) class |
ConflictDialog.ResolveToMyVersionAction |
(package private) class |
ConflictDialog.ResolveToTheirVersionAction |
(package private) class |
ConflictDialog.SelectAction |
ToggleDialog.ButtonHidingType, ToggleDialog.TitleBar, ToggleDialog.ToggleDialogAction
javax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
java.awt.Container.AccessibleAWTContainer
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
DataSelectionListener.AbstractSelectionEvent, DataSelectionListener.SelectionAddEvent, DataSelectionListener.SelectionChangeEvent, DataSelectionListener.SelectionRemoveEvent, DataSelectionListener.SelectionReplaceEvent, DataSelectionListener.SelectionToggleEvent
Modifier and Type | Field and Description |
---|---|
private ConflictDialog.ResolveAction |
actResolve |
private ConflictDialog.SelectAction |
actSelect |
private static NamedColorProperty |
BACKGROUND_COLOR |
private static NamedColorProperty |
CONFLICT_COLOR |
private ConflictCollection |
conflicts
the collection of conflicts displayed by this conflict dialog
|
private javax.swing.JList<OsmPrimitive> |
lstConflicts
the list widget for the list of conflicts
|
private ConflictDialog.ConflictListModel |
model
the model for the list of conflicts
|
private javax.swing.JPopupMenu |
popupMenu |
private PopupMenuHandler |
popupMenuHandler |
button, buttonHiding, detachedDialog, dialogsPanel, isCollapsed, isDocked, isShowing, name, preferenceClass, preferencePrefix, PROP_DYNAMIC_BUTTONS, titleBar, toggleAction, windowMenuItem
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
ConflictDialog()
Constructs a new
ConflictDialog . |
Modifier and Type | Method and Description |
---|---|
void |
activeOrEditLayerChanged(MainLayerManager.ActiveLayerChangeEvent e)
Called whenever the active or edit layer changed.
|
private void |
addDataLayerListeners(OsmDataLayer newLayer) |
void |
addListSelectionListener(javax.swing.event.ListSelectionListener listener)
Add a list selection listener to the conflicts list.
|
private void |
build()
builds the GUI
|
static java.awt.Color |
getColor()
Replies the color used to paint conflicts.
|
ConflictCollection |
getConflicts()
replies the conflict collection currently held by this dialog; may be null
|
PopupMenuHandler |
getPopupMenuHandler()
Replies the popup menu handler.
|
Conflict<? extends OsmPrimitive> |
getSelectedConflict()
returns the first selected item of the conflicts list
|
java.lang.String |
helpTopic()
Returns the help topic on JOSM wiki for this feature.
|
void |
hideNotify()
Called when toggle dialog is hidden (collapsed, removed, MapFrame is removed, ...).
|
private boolean |
isConflictSelected() |
void |
onConflictsAdded(ConflictCollection conflicts)
Called when conflicts are added.
|
void |
onConflictsRemoved(ConflictCollection conflicts)
Called when conflicts are removed.
|
void |
paintConflicts(java.awt.Graphics g,
NavigatableComponent nc)
Paints all conflicts that can be expressed on the main window.
|
void |
refreshView()
refreshes the view of this dialog
|
private void |
removeDataLayerListeners(OsmDataLayer oldLayer) |
void |
removeListSelectionListener(javax.swing.event.ListSelectionListener listener)
Remove the given list selection listener from the conflicts list.
|
private void |
resolve()
Launches a conflict resolution dialog for the first selected conflict
|
void |
selectionChanged(DataSelectionListener.SelectionChangeEvent event)
Called whenever the selection is changed.
|
void |
showNotify()
Called when toggle dialog is shown (after it was created or expanded).
|
private void |
updateTitle() |
void |
warnNumNewConflicts(int numNewConflicts)
Warns the user about the number of detected conflicts
|
buttonHidden, buttonShown, 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
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
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
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
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, getPeer, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
private static final NamedColorProperty CONFLICT_COLOR
private static final NamedColorProperty BACKGROUND_COLOR
private transient ConflictCollection conflicts
private transient ConflictDialog.ConflictListModel model
private javax.swing.JList<OsmPrimitive> lstConflicts
private final javax.swing.JPopupMenu popupMenu
private final transient PopupMenuHandler popupMenuHandler
private final ConflictDialog.ResolveAction actResolve
private final ConflictDialog.SelectAction actSelect
public ConflictDialog()
ConflictDialog
.public static java.awt.Color getColor()
paintConflicts(java.awt.Graphics, org.openstreetmap.josm.gui.NavigatableComponent)
private void build()
public void showNotify()
ToggleDialog
showNotify
in class ToggleDialog
public void hideNotify()
ToggleDialog
hideNotify
in class ToggleDialog
public void addListSelectionListener(javax.swing.event.ListSelectionListener listener)
listener
- the ListSelectionListenerpublic void removeListSelectionListener(javax.swing.event.ListSelectionListener listener)
listener
- the ListSelectionListenerpublic PopupMenuHandler getPopupMenuHandler()
private void resolve()
public void refreshView()
private void updateTitle()
public void paintConflicts(java.awt.Graphics g, NavigatableComponent nc)
g
- The Graphics
used to paintnc
- The NavigatableComponent
used to get screen coordinates of nodespublic void activeOrEditLayerChanged(MainLayerManager.ActiveLayerChangeEvent e)
MainLayerManager.ActiveLayerChangeListener
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.
activeOrEditLayerChanged
in interface MainLayerManager.ActiveLayerChangeListener
e
- The change event.private void addDataLayerListeners(OsmDataLayer newLayer)
private void removeDataLayerListeners(OsmDataLayer oldLayer)
public ConflictCollection getConflicts()
public Conflict<? extends OsmPrimitive> getSelectedConflict()
private boolean isConflictSelected()
public void onConflictsAdded(ConflictCollection conflicts)
IConflictListener
onConflictsAdded
in interface IConflictListener
conflicts
- collection to which conflicts have been addedpublic void onConflictsRemoved(ConflictCollection conflicts)
IConflictListener
onConflictsRemoved
in interface IConflictListener
conflicts
- collection from which conflicts have been removedpublic void selectionChanged(DataSelectionListener.SelectionChangeEvent event)
DataSelectionListener
selectionChanged
in interface DataSelectionListener
event
- The selection change event.DataSelectionListener.SelectionChangeEvent
public java.lang.String helpTopic()
Helpful
helpTopic
in interface Helpful
helpTopic
in class ToggleDialog
public void warnNumNewConflicts(int numNewConflicts)
numNewConflicts
- the number of detected conflicts