Package adams.gui.tools
Class DiffPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.tools.DiffPanel
-
- All Implemented Interfaces:
MenuBarProvider,ImageObserver,MenuContainer,Serializable,Accessible
public class DiffPanel extends BasePanel implements MenuBarProvider
For comparing two files side-by-side.- Version:
- $Revision$
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classDiffPanel.LoadDialogDialog for selecting the two files for comparison.-
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
-
-
Field Summary
Fields Modifier and Type Field Description protected BaseButtonm_ButtonPasteLeftthe button for pasting the left content.protected BaseButtonm_ButtonPasteRightthe button for pasting the right content.protected ArrayList<String>m_ClipboardLeftthe left content from the clipboard (null if none).protected ArrayList<String>m_ClipboardRightthe right content from the clipboard (null if none).protected Filem_FileLeftthe file with the left content.protected Filem_FileRightthe file with the right content.protected DiffPanel.LoadDialogm_LoadDialogthe dialog for opening the files.protected JMenuBarm_MenuBarthe menu bar, if used.protected JMenum_MenuFileLoadRecentLeftthe "load recent (left)" submenu.protected JMenum_MenuFileLoadRecentRightthe "load recent (right)" submenu.protected JMenuItemm_MenuItemEditPasteLeftthe "Paste (left)" submenu.protected JMenuItemm_MenuItemEditPasteRightthe "Paste (right)" submenu.protected SideBySideDiffPanelm_PanelDiffthe diff panel.protected RecentFilesHandler<JMenu>m_RecentFilesHandlerLeftthe recent files handler (left).protected RecentFilesHandler<JMenu>m_RecentFilesHandlerRightthe recent files handler (right).static StringSESSION_FILE_LEFTthe file to store the recent files in (left panel).static StringSESSION_FILE_RIGHTthe file to store the recent files in (right panel).-
Fields inherited from class adams.gui.core.BasePanel
m_FileChooser
-
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 DiffPanel()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcompare()Performs the comparison, either using files or clipboard content.voidcompareFiles(File file1, File file2)Compares the two files (if they exist).JMenuBargetMenuBar()Creates a menu bar (singleton per panel object).protected voidinitGUI()Initializes the widgets.protected voidinitialize()Initializes the members.protected voidopenFiles()Opens dialog for selecting two files and then comparing them.protected voidpasteLeft()Pastes the clipboard content into the left panel, if possible.protected voidpasteRight()Pastes the clipboard content into the right panel, if possible.protected voidreload()Compares the content again.protected voidupdateMenu()updates the enabled state of the menu items.-
Methods inherited from class adams.gui.core.BasePanel
afterHide, afterShow, beforeHide, beforeShow, closeParent, finishInit, getParentChild, getParentDialog, getParentFrame, getParentInternalFrame, getParentTitle, initFileChooser, main, printErrorMessage, printException, saveComponent, setEnabledCascade, setEnabledCascade, setParentTitle, setVisible
-
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, getName, 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, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
SESSION_FILE_LEFT
public static final String SESSION_FILE_LEFT
the file to store the recent files in (left panel).- See Also:
- Constant Field Values
-
SESSION_FILE_RIGHT
public static final String SESSION_FILE_RIGHT
the file to store the recent files in (right panel).- See Also:
- Constant Field Values
-
m_PanelDiff
protected SideBySideDiffPanel m_PanelDiff
the diff panel.
-
m_ClipboardLeft
protected ArrayList<String> m_ClipboardLeft
the left content from the clipboard (null if none).
-
m_ClipboardRight
protected ArrayList<String> m_ClipboardRight
the right content from the clipboard (null if none).
-
m_FileLeft
protected File m_FileLeft
the file with the left content.
-
m_FileRight
protected File m_FileRight
the file with the right content.
-
m_MenuBar
protected JMenuBar m_MenuBar
the menu bar, if used.
-
m_MenuFileLoadRecentLeft
protected JMenu m_MenuFileLoadRecentLeft
the "load recent (left)" submenu.
-
m_MenuFileLoadRecentRight
protected JMenu m_MenuFileLoadRecentRight
the "load recent (right)" submenu.
-
m_MenuItemEditPasteLeft
protected JMenuItem m_MenuItemEditPasteLeft
the "Paste (left)" submenu.
-
m_MenuItemEditPasteRight
protected JMenuItem m_MenuItemEditPasteRight
the "Paste (right)" submenu.
-
m_LoadDialog
protected DiffPanel.LoadDialog m_LoadDialog
the dialog for opening the files.
-
m_ButtonPasteLeft
protected BaseButton m_ButtonPasteLeft
the button for pasting the left content.
-
m_ButtonPasteRight
protected BaseButton m_ButtonPasteRight
the button for pasting the right content.
-
m_RecentFilesHandlerLeft
protected RecentFilesHandler<JMenu> m_RecentFilesHandlerLeft
the recent files handler (left).
-
m_RecentFilesHandlerRight
protected RecentFilesHandler<JMenu> m_RecentFilesHandlerRight
the recent files handler (right).
-
-
Method Detail
-
initialize
protected void initialize()
Initializes the members.- Overrides:
initializein classBasePanel
-
getMenuBar
public JMenuBar getMenuBar()
Creates a menu bar (singleton per panel object). Can be used in frames.- Specified by:
getMenuBarin interfaceMenuBarProvider- Returns:
- the menu bar
-
updateMenu
protected void updateMenu()
updates the enabled state of the menu items.
-
pasteLeft
protected void pasteLeft()
Pastes the clipboard content into the left panel, if possible.
-
pasteRight
protected void pasteRight()
Pastes the clipboard content into the right panel, if possible.
-
openFiles
protected void openFiles()
Opens dialog for selecting two files and then comparing them.
-
compareFiles
public void compareFiles(File file1, File file2)
Compares the two files (if they exist).- Parameters:
file1- the first filefile2- the second file
-
reload
protected void reload()
Compares the content again.
-
compare
protected void compare()
Performs the comparison, either using files or clipboard content.
-
-