rand.asset_forfeiture
Class WageWizard

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by rand.asset_forfeiture.WageWizard
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.TableModelListener, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class WageWizard
extends javax.swing.JDialog
implements java.awt.event.ActionListener, javax.swing.event.TableModelListener

This is the main class you need to instantiate to run the Wage Calculation Wizard. It will launch a dialog box with a spreadsheet. Enter the appropriate expense and hours worked information and the wizard will calculate the FTE and yearly expense per FTE required. Click OK and it will dump those numbers in to the main DisplayPanel, overriding any previous values.

See Also:
Serialized Form

Nested Class Summary
static class WageWizard.columnHeadings
          This enum describes the column headings for the WageWizard spreadsheet.
 class WageWizard.MyComboBoxEditor
          A class to handle choosing items from a combo box inside of a JTable.
 class WageWizard.MyComboBoxRenderer
          Here is just a little class to properly display the combo boxes within cells of the WageWizard.
 
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
 
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog
 
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
static int DAYS_PER_WEEK
           
static int DAYS_PER_YEAR
          Calculated number of workdays per year for FTE \param DAYS_PER_WEEK number of work days per week \param WEEKS_PER_YEAR number of work weeks per year
static int HOURS_PER_DAY
          \name Timekeeping Constants A group of known constants for calculating the number of hours in a given period of time.
static int HOURS_PER_MONTH
          Calculated number of work hours per month for FTE \param HOURS_PER_YEAR number of work hours per year \param MONTHS_PER_YEAR number of work months per year
static int HOURS_PER_WEEK
          Calculated number of work hours per week for FTE \param HOURS_PER_DAY number of work hours in a day \param DAYS_PER_WEEK number of workdays per week
static int HOURS_PER_YEAR
          Calculated number of work hours per year for FTE \param HOURS_PER_WEEK number of work hours in a week \param WEEKS_PER_YEAR number of work weeks in a year
static int MONTHS_PER_YEAR
           
static double SS_MEDICARE
          The portion of the total benefits overhead due to payroll taxes.
static double TOTAL_BENEFITS
          The default total benefits overhead, as a fraction of base salary.
static int WEEKS_PER_YEAR
           
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
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, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
WageWizard(java.awt.Frame owner, java.lang.String title, boolean modal)
          This class only gets one constructor, and this is it.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent evt)
          This is the event handler for clicking on the Interface Buttons.
 void addRow()
          This method adds one more editable row to wtm.
 java.util.HashMap<variables,java.lang.Double> getValues()
          This method returns a HashMap of the final results.
 void removeRow()
          This method removes the currently selected row from the WageWizard.
 void tableChanged(javax.swing.event.TableModelEvent evt)
          This is an event handler to process TableModelEvents whenever the wtm is changed.
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, 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.Dialog
addNotify, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setResizable, setTitle, setUndecorated, show
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, finalize, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, isActive, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, 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, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, removeNotify, 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, remove, 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
 

Field Detail

HOURS_PER_DAY

public static final int HOURS_PER_DAY
\name Timekeeping Constants A group of known constants for calculating the number of hours in a given period of time.

See Also:
Constant Field Values

DAYS_PER_WEEK

public static final int DAYS_PER_WEEK
See Also:
Constant Field Values

HOURS_PER_WEEK

public static final int HOURS_PER_WEEK
Calculated number of work hours per week for FTE \param HOURS_PER_DAY number of work hours in a day \param DAYS_PER_WEEK number of workdays per week

See Also:
Constant Field Values

WEEKS_PER_YEAR

public static final int WEEKS_PER_YEAR
See Also:
Constant Field Values

HOURS_PER_YEAR

public static final int HOURS_PER_YEAR
Calculated number of work hours per year for FTE \param HOURS_PER_WEEK number of work hours in a week \param WEEKS_PER_YEAR number of work weeks in a year

See Also:
Constant Field Values

MONTHS_PER_YEAR

public static final int MONTHS_PER_YEAR
See Also:
Constant Field Values

HOURS_PER_MONTH

public static final int HOURS_PER_MONTH
Calculated number of work hours per month for FTE \param HOURS_PER_YEAR number of work hours per year \param MONTHS_PER_YEAR number of work months per year

See Also:
Constant Field Values

DAYS_PER_YEAR

public static final int DAYS_PER_YEAR
Calculated number of workdays per year for FTE \param DAYS_PER_WEEK number of work days per week \param WEEKS_PER_YEAR number of work weeks per year

See Also:
Constant Field Values

TOTAL_BENEFITS

public static final double TOTAL_BENEFITS
The default total benefits overhead, as a fraction of base salary.

See Also:
Constant Field Values

SS_MEDICARE

public static final double SS_MEDICARE
The portion of the total benefits overhead due to payroll taxes.

See Also:
Constant Field Values
Constructor Detail

WageWizard

public WageWizard(java.awt.Frame owner,
                  java.lang.String title,
                  boolean modal)
This class only gets one constructor, and this is it. \param owner The Frame that owns this JDialog; can be null \param title The title that shows in the window bar \param modal If modal, no other windows in this application can be accessed until you are done with this one

Method Detail

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent evt)
This is the event handler for clicking on the Interface Buttons. \param evt The ActionEvent that needs to be processed

Specified by:
actionPerformed in interface java.awt.event.ActionListener

tableChanged

public void tableChanged(javax.swing.event.TableModelEvent evt)
This is an event handler to process TableModelEvents whenever the wtm is changed. This method uses the busy attribute to determine whether the event was triggered by the user or by the program itself. \param evt The TableModelEvent to be processed

Specified by:
tableChanged in interface javax.swing.event.TableModelListener

getValues

public java.util.HashMap<variables,java.lang.Double> getValues()
This method returns a HashMap of the final results. When the WageWizard is valid (the user clicked OK instead of Cancel), the HashMap has entries for all the non-zero variables. When invalid, the HashMap is empty. \returns a HashMap containing the results of the WageWizard calculations


addRow

public void addRow()
This method adds one more editable row to wtm.


removeRow

public void removeRow()
This method removes the currently selected row from the WageWizard.