edu.cornell.cs.sam.ui
Class SamCapture

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.cornell.cs.sam.ui.SamCapture
All Implemented Interfaces:
SamUI.Component, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class SamCapture
extends javax.swing.JFrame
implements SamUI.Component

Allows the display of past program states

See Also:
Serialized Form

Nested Class Summary
 
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.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  SamAboutDialog aboutDialog
           
protected static int CHOOSER_OPEN
           
protected static int CHOOSER_SAVE
           
static int classID
           
protected  javax.swing.JDialog colorsDialog
           
protected  java.awt.Container contentPane
           
protected  FileDialogManager fileDialogs
           
protected  java.lang.String filename
           
protected  javax.swing.JMenuItem increaseDisplayMenuItem
           
protected  javax.swing.JList instructionList
           
protected  javax.swing.JPanel instructionListPanel
           
protected  javax.swing.JScrollPane instructionListView
           
protected  javax.swing.JPanel mainPanel
           
protected  javax.swing.JMenuItem openSimMenuItem
           
protected  Program program
           
protected  javax.swing.JMenuItem removeDisplayMenuItem
           
protected  javax.swing.JMenuItem saveAsMenuItem
           
protected  java.io.File sourceFile
           
protected  StatusBar statusBar
           
protected  edu.cornell.cs.sam.ui.StepDisplay[] stepDisplays
           
protected  java.util.List<? extends ProgramState> steps
           
 
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
protected SamCapture()
          Creates a new SamCapture
 
Method Summary
 boolean close()
           
 SamAboutDialog getAboutDialog()
           
 java.awt.Dimension getMinimumSize()
           
 java.awt.Dimension getPreferredSize()
           
 void loadFile(java.io.File secFile)
          Loads the provided file
 void saveCapture()
          Saves the provided file
protected  void start()
           
protected  void start(java.util.List<? extends ProgramState> steps, Program prog, java.lang.String filename)
           
static void startUI()
          Starts SamCapture without loading any file
static void startUI(java.util.List<? extends ProgramState> steps, Program prog, java.lang.String filename)
          Starts the UI and loads a vector of steps, a program, and a filename
static void startUI(java.lang.String filename)
          Starts SamCapture and loads a file
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, 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, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, 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, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, 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, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, 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, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

CHOOSER_OPEN

protected static final int CHOOSER_OPEN
See Also:
Constant Field Values

CHOOSER_SAVE

protected static final int CHOOSER_SAVE
See Also:
Constant Field Values

contentPane

protected java.awt.Container contentPane

mainPanel

protected javax.swing.JPanel mainPanel

instructionList

protected javax.swing.JList instructionList

instructionListView

protected javax.swing.JScrollPane instructionListView

increaseDisplayMenuItem

protected javax.swing.JMenuItem increaseDisplayMenuItem

removeDisplayMenuItem

protected javax.swing.JMenuItem removeDisplayMenuItem

stepDisplays

protected edu.cornell.cs.sam.ui.StepDisplay[] stepDisplays

steps

protected java.util.List<? extends ProgramState> steps

instructionListPanel

protected javax.swing.JPanel instructionListPanel

sourceFile

protected java.io.File sourceFile

filename

protected java.lang.String filename

program

protected Program program

statusBar

protected StatusBar statusBar

saveAsMenuItem

protected javax.swing.JMenuItem saveAsMenuItem

openSimMenuItem

protected javax.swing.JMenuItem openSimMenuItem

colorsDialog

protected javax.swing.JDialog colorsDialog

aboutDialog

protected SamAboutDialog aboutDialog

fileDialogs

protected FileDialogManager fileDialogs

classID

public static int classID
Constructor Detail

SamCapture

protected SamCapture()
Creates a new SamCapture

Method Detail

start

protected void start(java.util.List<? extends ProgramState> steps,
                     Program prog,
                     java.lang.String filename)

start

protected void start()

getMinimumSize

public java.awt.Dimension getMinimumSize()
Overrides:
getMinimumSize in class java.awt.Container

getPreferredSize

public java.awt.Dimension getPreferredSize()
Overrides:
getPreferredSize in class java.awt.Container

loadFile

public void loadFile(java.io.File secFile)
Loads the provided file

Parameters:
secFile - The file to load

saveCapture

public void saveCapture()
Saves the provided file


getAboutDialog

public SamAboutDialog getAboutDialog()
Specified by:
getAboutDialog in interface SamUI.Component

startUI

public static void startUI()
Starts SamCapture without loading any file


close

public boolean close()
Specified by:
close in interface SamUI.Component

startUI

public static void startUI(java.lang.String filename)
Starts SamCapture and loads a file

Parameters:
filename - the file to load, or null to not load a file

startUI

public static void startUI(java.util.List<? extends ProgramState> steps,
                           Program prog,
                           java.lang.String filename)
Starts the UI and loads a vector of steps, a program, and a filename