edu.rice.cs.drjava.ui
Class ClipboardHistoryFrame

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by edu.rice.cs.util.swing.SwingFrame
                          extended by edu.rice.cs.drjava.ui.ClipboardHistoryFrame
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class ClipboardHistoryFrame
extends SwingFrame

Frame with history of clipboard.

See Also:
Serialized Form

Nested Class Summary
static interface ClipboardHistoryFrame.CloseAction
          Interface for an action to be performed when the user closes the frame, either by using "OK" or "Cancel".
static class ClipboardHistoryFrame.FrameState
          Class to save the frame state, i.e.
private static class ClipboardHistoryFrame.ListItem
          Keeps a full string, but toString is only the first line.
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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
private  int _buttonPressed
          Code for the last button that was pressed.
private  ClipboardHistoryFrame.CloseAction _cancelAction
          Close actions for ok and cancel button.
private  javax.swing.JButton _cancelButton
          Cancel button.
private  ClipboardHistoryModel _chm
          Clipboard history model
private  javax.swing.JList _historyList
          List with history.
private  ClipboardHistoryFrame.FrameState _lastState
          Last frame state.
private  MainFrame _mainFrame
          Owner frame.
private  ClipboardHistoryFrame.CloseAction _okAction
          Close actions for ok and cancel button.
private  javax.swing.JButton _okButton
          Ok button.
private  javax.swing.JTextArea _previewArea
          Text area for that previews the history content.
protected  java.awt.event.WindowAdapter _windowListener
           
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ClipboardHistoryFrame(MainFrame owner, java.lang.String title, ClipboardHistoryModel chm, ClipboardHistoryFrame.CloseAction okAction, ClipboardHistoryFrame.CloseAction cancelAction)
          Create a new clipboard history frame.
 
Method Summary
private  void cancelButtonPressed()
          Handle cancel button.
 int getButtonPressed()
          Return the code for the last button that was pressed.
 ClipboardHistoryFrame.FrameState getFrameState()
          Returns the last state of the frame, i.e.
private  void init()
          Initialize the frame.
private  void okButtonPressed()
          Handle OK button.
 void setFrameState(ClipboardHistoryFrame.FrameState ds)
          Sets state of the frame, i.e.
 void setFrameState(java.lang.String s)
          Sets state of the frame, i.e.
 void setVisible(boolean vis)
          Validates before changing visibility.
private  void updatePreview()
          Update the preview area based on the model.
private  void updateView()
          Update the displays based on the model.
 
Methods inherited from class edu.rice.cs.util.swing.SwingFrame
duringInit, initDone
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

_chm

private ClipboardHistoryModel _chm
Clipboard history model


_buttonPressed

private int _buttonPressed
Code for the last button that was pressed.


_okButton

private javax.swing.JButton _okButton
Ok button.


_cancelButton

private javax.swing.JButton _cancelButton
Cancel button.


_historyList

private javax.swing.JList _historyList
List with history.


_previewArea

private javax.swing.JTextArea _previewArea
Text area for that previews the history content.


_lastState

private ClipboardHistoryFrame.FrameState _lastState
Last frame state. It can be stored and restored.


_mainFrame

private MainFrame _mainFrame
Owner frame.


_okAction

private ClipboardHistoryFrame.CloseAction _okAction
Close actions for ok and cancel button.


_cancelAction

private ClipboardHistoryFrame.CloseAction _cancelAction
Close actions for ok and cancel button.


_windowListener

protected java.awt.event.WindowAdapter _windowListener
Constructor Detail

ClipboardHistoryFrame

public ClipboardHistoryFrame(MainFrame owner,
                             java.lang.String title,
                             ClipboardHistoryModel chm,
                             ClipboardHistoryFrame.CloseAction okAction,
                             ClipboardHistoryFrame.CloseAction cancelAction)
Create a new clipboard history frame.

Parameters:
owner - owner frame
title - dialog title
chm - the clipboard history model
okAction - the action to perform when OK is clicked
cancelAction - the action to perform when Cancel is clicked
Method Detail

getFrameState

public ClipboardHistoryFrame.FrameState getFrameState()
Returns the last state of the frame, i.e. the location and dimension.

Returns:
frame state

setFrameState

public void setFrameState(ClipboardHistoryFrame.FrameState ds)
Sets state of the frame, i.e. the location and dimension of the frame for the next use.

Parameters:
ds - State to update to, or null to reset

setFrameState

public void setFrameState(java.lang.String s)
Sets state of the frame, i.e. the location and dimension of the frame for the next use.

Parameters:
s - State to update to, or null to reset

getButtonPressed

public int getButtonPressed()
Return the code for the last button that was pressed. This will be either JOptionPane.OK_OPTION or JOptionPane.CANCEL_OPTION.

Returns:
button code

init

private void init()
Initialize the frame.


setVisible

public void setVisible(boolean vis)
Validates before changing visibility. Only runs in the event thread.

Overrides:
setVisible in class java.awt.Window
Parameters:
vis - true if frame should be shown, false if it should be hidden.

updateView

private void updateView()
Update the displays based on the model.


updatePreview

private void updatePreview()
Update the preview area based on the model.


okButtonPressed

private void okButtonPressed()
Handle OK button.


cancelButtonPressed

private void cancelButtonPressed()
Handle cancel button.