org.openstreetmap.josm.gui.conflict.pair.tags
Class TagMerger

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by org.openstreetmap.josm.gui.conflict.pair.tags.TagMerger
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, IConflictResolver

public class TagMerger
extends javax.swing.JPanel
implements IConflictResolver

UI component for resolving conflicts in the tag sets of two OsmPrimitives.

See Also:
Serialized Form

Nested Class Summary
(package private) static class TagMerger.AdjustmentSynchronizer
          Synchronizes scrollbar adjustments between a set of Adjustables.
(package private)  class TagMerger.DoubleClickAdapter
          Handler for double clicks on entries in the three tag tables.
(package private)  class TagMerger.KeepMineAction
          Keeps the currently selected tags in my table in the list of merged tags.
(package private)  class TagMerger.KeepTheirAction
          Keeps the currently selected tags in their table in the list of merged tags.
(package private)  class TagMerger.UndecideAction
          Sets the currently selected tags in the table of merged tags to state MergeDecisionType.UNDECIDED
 
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
 
Field Summary
(package private)  TagMerger.AdjustmentSynchronizer adjustmentSynchronizer
           
private  javax.swing.JButton btnKeepMine
           
private  javax.swing.JButton btnKeepTheir
           
private  javax.swing.JTable mergedTable
           
private  javax.swing.JTable mineTable
           
private  TagMergeModel model
           
private  javax.swing.JTable theirTable
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, 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
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
TagMerger()
           
 
Method Summary
protected  void build()
          build the user interface
protected  javax.swing.JScrollPane buildMergedTable()
          builds the table for the merged tag set (table already embedded in a scroll pane)
protected  javax.swing.JScrollPane buildMineTagTable()
          builds the table for my tag set (table already embedded in a scroll pane)
protected  javax.swing.JScrollPane buildTheirTable()
          builds the table for their tag set (table already embedded in a scroll pane)
 void deletePrimitive(boolean deleted)
           
protected  javax.swing.JScrollPane embeddInScrollPane(javax.swing.JTable table)
          embeds table in a new JScrollPane and returns th scroll pane
 TagMergeModel getModel()
          replies the model used by this tag merger
 void populate(Conflict<? extends OsmPrimitive> conflict)
           
private  void selectNextConflict(int[] rows)
           
 
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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

mineTable

private javax.swing.JTable mineTable

mergedTable

private javax.swing.JTable mergedTable

theirTable

private javax.swing.JTable theirTable

model

private final TagMergeModel model

btnKeepMine

private javax.swing.JButton btnKeepMine

btnKeepTheir

private javax.swing.JButton btnKeepTheir

adjustmentSynchronizer

TagMerger.AdjustmentSynchronizer adjustmentSynchronizer
Constructor Detail

TagMerger

public TagMerger()
Method Detail

embeddInScrollPane

protected javax.swing.JScrollPane embeddInScrollPane(javax.swing.JTable table)
embeds table in a new JScrollPane and returns th scroll pane

Parameters:
table - the table
Returns:
the scroll pane embedding the table

buildMineTagTable

protected javax.swing.JScrollPane buildMineTagTable()
builds the table for my tag set (table already embedded in a scroll pane)

Returns:
the table (embedded in a scroll pane)

buildTheirTable

protected javax.swing.JScrollPane buildTheirTable()
builds the table for their tag set (table already embedded in a scroll pane)

Returns:
the table (embedded in a scroll pane)

buildMergedTable

protected javax.swing.JScrollPane buildMergedTable()
builds the table for the merged tag set (table already embedded in a scroll pane)

Returns:
the table (embedded in a scroll pane)

build

protected void build()
build the user interface


getModel

public TagMergeModel getModel()
replies the model used by this tag merger

Returns:
the model

selectNextConflict

private void selectNextConflict(int[] rows)

deletePrimitive

public void deletePrimitive(boolean deleted)
Specified by:
deletePrimitive in interface IConflictResolver

populate

public void populate(Conflict<? extends OsmPrimitive> conflict)
Specified by:
populate in interface IConflictResolver


JOSM