gui.prio
Class PlanningGameWindow

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.PlanningGameWindow
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, javax.swing.RootPaneContainer, java.io.Serializable, javax.swing.WindowConstants

public class PlanningGameWindow
extends javax.swing.JFrame

Defines the window used when using the Planning Game prioritization method.

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

Nested Class Summary
(package private)  class PlanningGameWindow.ActionHandler
          ActionListener to take care of user interaction
(package private)  class PlanningGameWindow.ConfirmWindow
          Window used to get a confirmation from the user that all requirements are listed in the correct order.
(package private)  class PlanningGameWindow.DrawCanvas
          Defines the canvas used for drawing the desk with the cards and every pile of cards
(package private)  class PlanningGameWindow.MouseHandler
          MouseListener to handle user interaction
(package private)  class PlanningGameWindow.PileWindow
          Window for sorting the cards internally in a pile
(package private)  class PlanningGameWindow.WindowHandler
          WindowHandler that takes care of Window Events for PlanningGameWindow and PileWindow.
 
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  PlanningGameWindow.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  java.lang.String currentCriteria
           
private  PlanningGameWindow.DrawCanvas desk
           
private  int deskHeight
           
private  int deskWidth
           
private  javax.swing.JButton doneButton
           
private  javax.swing.JMenuItem doneMenuItem
           
private  javax.swing.JPanel east
           
private  javax.swing.JLabel header
           
private  javax.swing.JMenuItem helpMenuItem
           
private  PlanningGameWindow.PileWindow highPile
           
private  javax.swing.JTextArea infoArea
           
private  javax.swing.JScrollPane infoScroll
           
private  PlanningGameWindow.PileWindow lowPile
           
private  PlanningGameWindow.PileWindow mediumPile
           
private  PlanningGameWindow.MouseHandler mh
           
private  javax.swing.JButton nextCritButton
           
private  javax.swing.JMenuItem nextCriteriaMenuItem
           
private  javax.swing.JPanel north
           
private  Rainbowie p
           
private  PlanningGame pg
           
private  int pileCanvasHeight
           
private  boolean prioOneDone
           
private  javax.swing.JScrollPane scrollPane
           
private  PlanningGameWindow.WindowHandler wh
           
private  int xSize
           
private  int ySize
           
 
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
PlanningGameWindow(RequirementList rList, Rainbowie p)
          Constructs a Planning Game prioritization window
 
Method Summary
 void assignValueDone()
          Used when values have been assigned with $100 technique after a Planning Game prioritization
private  PlanningGameWindow getWindow()
          Method to reach a reference to the PlanningGameWindow
private  void init()
          Initializes the graphical user interface
private  void setInfoAreaText(Requirement r)
          Sets requirement number and requirement description in the info area in an adjusted format.
 
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

currentCriteria

private java.lang.String currentCriteria

criteriaSelecter

private javax.swing.JComboBox criteriaSelecter

infoArea

private javax.swing.JTextArea infoArea

infoScroll

private javax.swing.JScrollPane infoScroll

scrollPane

private javax.swing.JScrollPane scrollPane

desk

private PlanningGameWindow.DrawCanvas desk

header

private javax.swing.JLabel header

nextCriteriaMenuItem

private javax.swing.JMenuItem nextCriteriaMenuItem

doneMenuItem

private javax.swing.JMenuItem doneMenuItem

cancelMenuItem

private javax.swing.JMenuItem cancelMenuItem

helpMenuItem

private javax.swing.JMenuItem helpMenuItem

nextCritButton

private javax.swing.JButton nextCritButton

doneButton

private javax.swing.JButton doneButton

cancelButton

private javax.swing.JButton cancelButton

north

private javax.swing.JPanel north

east

private javax.swing.JPanel east

center

private javax.swing.JPanel center

highPile

private PlanningGameWindow.PileWindow highPile

mediumPile

private PlanningGameWindow.PileWindow mediumPile

lowPile

private PlanningGameWindow.PileWindow lowPile

p

private Rainbowie p

pg

private PlanningGame pg

pileCanvasHeight

private int pileCanvasHeight

xSize

private int xSize

ySize

private int ySize

deskWidth

private int deskWidth

deskHeight

private int deskHeight

prioOneDone

private boolean prioOneDone

ah

private PlanningGameWindow.ActionHandler ah

wh

private PlanningGameWindow.WindowHandler wh

mh

private PlanningGameWindow.MouseHandler mh
Constructor Detail

PlanningGameWindow

public PlanningGameWindow(RequirementList rList,
                          Rainbowie p)
Constructs a Planning Game prioritization window

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

init

private void init()
Initializes the graphical user interface


setInfoAreaText

private void setInfoAreaText(Requirement r)
Sets requirement number and requirement description in the info area in an adjusted format.

Parameters:
r - the requirement to display

getWindow

private PlanningGameWindow getWindow()
Method to reach a reference to the PlanningGameWindow

Returns:
a reference to the PlanningGameWindow

assignValueDone

public void assignValueDone()
Used when values have been assigned with $100 technique after a Planning Game prioritization