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 class
DiffPanel.LoadDialog
Dialog 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 BaseButton
m_ButtonPasteLeft
the button for pasting the left content.protected BaseButton
m_ButtonPasteRight
the button for pasting the right content.protected ArrayList<String>
m_ClipboardLeft
the left content from the clipboard (null if none).protected ArrayList<String>
m_ClipboardRight
the right content from the clipboard (null if none).protected File
m_FileLeft
the file with the left content.protected File
m_FileRight
the file with the right content.protected DiffPanel.LoadDialog
m_LoadDialog
the dialog for opening the files.protected JMenuBar
m_MenuBar
the menu bar, if used.protected JMenu
m_MenuFileLoadRecentLeft
the "load recent (left)" submenu.protected JMenu
m_MenuFileLoadRecentRight
the "load recent (right)" submenu.protected JMenuItem
m_MenuItemEditPasteLeft
the "Paste (left)" submenu.protected JMenuItem
m_MenuItemEditPasteRight
the "Paste (right)" submenu.protected SideBySideDiffPanel
m_PanelDiff
the diff panel.protected RecentFilesHandler<JMenu>
m_RecentFilesHandlerLeft
the recent files handler (left).protected RecentFilesHandler<JMenu>
m_RecentFilesHandlerRight
the recent files handler (right).static String
SESSION_FILE_LEFT
the file to store the recent files in (left panel).static String
SESSION_FILE_RIGHT
the 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 void
compare()
Performs the comparison, either using files or clipboard content.void
compareFiles(File file1, File file2)
Compares the two files (if they exist).JMenuBar
getMenuBar()
Creates a menu bar (singleton per panel object).protected void
initGUI()
Initializes the widgets.protected void
initialize()
Initializes the members.protected void
openFiles()
Opens dialog for selecting two files and then comparing them.protected void
pasteLeft()
Pastes the clipboard content into the left panel, if possible.protected void
pasteRight()
Pastes the clipboard content into the right panel, if possible.protected void
reload()
Compares the content again.protected void
updateMenu()
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:
initialize
in classBasePanel
-
getMenuBar
public JMenuBar getMenuBar()
Creates a menu bar (singleton per panel object). Can be used in frames.- Specified by:
getMenuBar
in 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.
-
-