gui.prio
Class DollarWindow

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjava.awt.Window
              extended byjava.awt.Frame
                  extended byjavax.swing.JFrame
                      extended bygui.prio.DollarWindow
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, javax.swing.RootPaneContainer, java.io.Serializable, javax.swing.WindowConstants

public class DollarWindow
extends javax.swing.JFrame

Defines a $100 window used during the $100 technique.

Author:
Mikael Jönsson & Per Klingnäs
See Also:
Serialized Form

Nested Class Summary
(package private)  class DollarWindow.ActionHandler
          An ActionListener to take care of user interaction
(package private)  class DollarWindow.MouseHandler
          MouseListener used to detect in which cell the user has clicked.
(package private)  class DollarWindow.RequirementTableModel
          DefaultTableModel used for checking the input into the cells.
 
Nested classes inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  DollarWindow.ActionHandler ah
           
private  javax.swing.JButton cancelButton
           
private  javax.swing.JMenuItem cancelMenuItem
           
private  javax.swing.JPanel center
           
private  java.awt.Container contentPane
           
private  java.lang.String criteria1
           
private  java.lang.String criteria2
           
private  javax.swing.JComboBox criteriaSelecter
           
private  javax.swing.JComboBox dollarSelecter
           
private  javax.swing.JLabel dollarsUsedLabel
           
private  javax.swing.JButton doneButton
           
private  javax.swing.JMenuItem doneMenuItem
           
private  DollarTechnique dt
           
private  javax.swing.JPanel east
           
private  javax.swing.JLabel header
           
private  javax.swing.JMenuItem helpMenuItem
           
private  boolean keepOrder
           
private  DollarWindow.MouseHandler mh
           
private  javax.swing.JButton nextCritButton
           
private  javax.swing.JButton nextUserButton
           
private  javax.swing.JPanel north
           
private  Rainbowie p
           
private  PlanningGameWindow pgw
           
private  boolean prioOneDone
           
private  javax.swing.JTable reqTable
           
private  RequirementList rList
           
 
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.Window
 
Fields inherited from class java.awt.Container
 
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
DollarWindow(RequirementList rList, Rainbowie p)
          Constructs a $100 window used in normal $100 prioritization
DollarWindow(RequirementList rList, Rainbowie p, PlanningGameWindow pgw)
          Constructs a $100 window used if assigning values to requirements after a PlanningGame prioritization
 
Method Summary
private  void clearTable(boolean onlyLastColumn)
          Clears the table, setting all cells to "" or null.
private  java.lang.Object[][] getListData()
          Extracts the requirement numbers and requirement descriptions from the RequirementList.
private  void init()
          Initializes the graphical user interface
 
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

contentPane

private java.awt.Container contentPane

criteria1

private java.lang.String criteria1

criteria2

private java.lang.String criteria2

criteriaSelecter

private javax.swing.JComboBox criteriaSelecter

dollarSelecter

private javax.swing.JComboBox dollarSelecter

dollarsUsedLabel

private javax.swing.JLabel dollarsUsedLabel

nextUserButton

private javax.swing.JButton nextUserButton

doneButton

private javax.swing.JButton doneButton

cancelButton

private javax.swing.JButton cancelButton

nextCritButton

private javax.swing.JButton nextCritButton

north

private javax.swing.JPanel north

center

private javax.swing.JPanel center

east

private javax.swing.JPanel east

reqTable

private javax.swing.JTable reqTable

doneMenuItem

private javax.swing.JMenuItem doneMenuItem

cancelMenuItem

private javax.swing.JMenuItem cancelMenuItem

helpMenuItem

private javax.swing.JMenuItem helpMenuItem

header

private javax.swing.JLabel header

prioOneDone

private boolean prioOneDone

keepOrder

private boolean keepOrder

ah

private DollarWindow.ActionHandler ah

mh

private DollarWindow.MouseHandler mh

rList

private RequirementList rList

p

private Rainbowie p

dt

private DollarTechnique dt

pgw

private PlanningGameWindow pgw
Constructor Detail

DollarWindow

public DollarWindow(RequirementList rList,
                    Rainbowie p)
Constructs a $100 window used in normal $100 prioritization

Parameters:
rList - the RequirementList containing the requirements to be prioritized
p - reference to the programs Parseq object

DollarWindow

public DollarWindow(RequirementList rList,
                    Rainbowie p,
                    PlanningGameWindow pgw)
Constructs a $100 window used if assigning values to requirements after a PlanningGame prioritization

Parameters:
rList - the RequirementList containing the requirements to be prioritized
p - reference to the programs Parseq object
pgw - reference to the PlanningGameWindow
Method Detail

init

private void init()
Initializes the graphical user interface


getListData

private java.lang.Object[][] getListData()
Extracts the requirement numbers and requirement descriptions from the RequirementList.

Returns:
a matrix with with
  1. [i][0] = reqNbr
  2. [i][1] = reqDescription

clearTable

private void clearTable(boolean onlyLastColumn)
Clears the table, setting all cells to "" or null.

Parameters:
onlyLastColumn - true if only last column should be cleared