Class ViewerGUI

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
                          |
                          +--javax.swing.JFrame
                                |
                                +--ViewerGUI
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ActionListener, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, javax.swing.RootPaneContainer, java.io.Serializable, javax.swing.WindowConstants

public class ViewerGUI
extends javax.swing.JFrame
implements java.awt.event.ActionListener, java.awt.event.MouseListener, java.awt.event.MouseMotionListener

Allows the user to view images, run the SVP system on the images, and view the output. Also creates a Parameter Editing window.

See Also:
Serialized Form

Field Summary
static int CROP
          selection type set to this when user is cropping (prep mode)
static int GRAPH_STEP
          selection_type set to this when step to graph being chosen
 FatPixelBoxGrid grid
           
 javax.swing.JRadioButton image_minus_segments_radio
           
 javax.swing.JRadioButton image_radio
           
 java.awt.Point mouse_over
           
 ParamEditor param_editor
           
 javax.swing.JRadioButton quadrics_radio
           
 javax.swing.JRadioButton segments_minus_image_radio
           
 javax.swing.JRadioButton segments_radio
           
 boolean selecting
          indicates if gui is waiting for pixel selection from user
 int selection_type
          when selecting is true, indicates type of selection being made
 int start_height
           
 int start_width
           
static int ZOOM_IN
          selection_type set to this when zoom-in focus being chosen
static int ZOOM_OUT
          selection_type set to this when zoom-out focus being chosen
 
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
ViewerGUI(boolean debug)
          Constructs a new ViewerGUI
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent event)
          Listen for user actions performed on buttons and menu items
 java.lang.String chooseFile()
          get a user-selected file from the filechooser, and return its path
 void loadImage(java.lang.String jpeg)
          Populates grid with data from a jpeg image
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseDragged(java.awt.event.MouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
          listen for mouse movements so we can update the mouse over coordinates
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
 void zoomIn(java.awt.Point focus)
          Zooms in on image, using specified row,col as focus
 void zoomOut(java.awt.Point focus)
          Zooms out on image, using specified row,col as focus
 
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, 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, setIconImage, 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, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, 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, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setFocusTraversalKeys, setFocusTraversalPolicy, 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, 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, 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, isOpaque, 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, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, 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

grid

public FatPixelBoxGrid grid

param_editor

public ParamEditor param_editor

image_radio

public javax.swing.JRadioButton image_radio

quadrics_radio

public javax.swing.JRadioButton quadrics_radio

segments_radio

public javax.swing.JRadioButton segments_radio

image_minus_segments_radio

public javax.swing.JRadioButton image_minus_segments_radio

segments_minus_image_radio

public javax.swing.JRadioButton segments_minus_image_radio

start_width

public int start_width

start_height

public int start_height

mouse_over

public java.awt.Point mouse_over

selecting

public boolean selecting
indicates if gui is waiting for pixel selection from user


selection_type

public int selection_type
when selecting is true, indicates type of selection being made


ZOOM_IN

public static final int ZOOM_IN
selection_type set to this when zoom-in focus being chosen

See Also:
Constant Field Values

ZOOM_OUT

public static final int ZOOM_OUT
selection_type set to this when zoom-out focus being chosen

See Also:
Constant Field Values

GRAPH_STEP

public static final int GRAPH_STEP
selection_type set to this when step to graph being chosen

See Also:
Constant Field Values

CROP

public static final int CROP
selection type set to this when user is cropping (prep mode)

See Also:
Constant Field Values
Constructor Detail

ViewerGUI

public ViewerGUI(boolean debug)
Constructs a new ViewerGUI

Method Detail

loadImage

public void loadImage(java.lang.String jpeg)
Populates grid with data from a jpeg image

Parameters:
jpeg - The filename of the image to load

zoomIn

public void zoomIn(java.awt.Point focus)
Zooms in on image, using specified row,col as focus

Parameters:
focus - the pixel to zoom in on

zoomOut

public void zoomOut(java.awt.Point focus)
Zooms out on image, using specified row,col as focus

Parameters:
focus - the pixel to zoom out on

chooseFile

public java.lang.String chooseFile()
get a user-selected file from the filechooser, and return its path


actionPerformed

public void actionPerformed(java.awt.event.ActionEvent event)
Listen for user actions performed on buttons and menu items

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
event - the user-generated event

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
listen for mouse movements so we can update the mouse over coordinates

Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener
Parameters:
e - mouse movement event

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener