org.statcato
Class Statcato

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 org.statcato.Statcato
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.RootPaneContainer, javax.swing.WindowConstants

public class Statcato
extends javax.swing.JFrame
implements java.awt.event.ActionListener

Statcato main class. Application frame contains menu, toolbar, and two internal frames. Handles actions performed on these components.

Since:
1.0
Version:
%I%, %G%
Author:
Margaret Yau
See Also:
Serialized Form

Nested Class Summary
 class Statcato.IconRedoAction
          Redo action for the redo toolbar icon.
 class Statcato.IconUndoAction
          Undo action for the undo toolbar icon.
 class Statcato.MenuItemRedoAction
          Redo action for the redo menu item.
 class Statcato.MenuItemUndoAction
          Undo action for the undo menu item.
 class Statcato.MyUndoableEditListener
          Undoable edit listener for both the log window and the Datasheet pane.
 
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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 DialogEdit compoundEdit
          Compound edit object for the application.
static java.lang.String DEFAULTHELPFILE
           
 Project project
           
 javax.swing.undo.UndoManager undoManager
          Undo manager for the application.
static java.lang.String VERSION
           
 
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
Statcato()
          Creates new form Statcato
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
           
 void addCompoundEdit(javax.swing.undo.UndoableEdit edit)
          Adds the given edit to the undo manager and udpates the undo/redo menus and icons.
 void addDialogHelp(javax.swing.JMenuItem menu, java.lang.String helpFile)
          Enables help for the given menu item.
 void addHelp()
          Initializes JavaHelp help documentation module.
 void addLogHeading(java.lang.String message)
          Adds the given message as a heading to the log text pane.
 void addLogIcon(javax.swing.Icon c)
           
 void addLogParagraph(java.lang.String heading, java.lang.String text)
          Adds the given heading and text to the log text pane.
 void addLogText(java.lang.String message)
          Adds the given message to the log text pane.
 void addUndoListenerToDatasheet()
          Adds an undoable edit listener to the selected Datasheet
 void addWindowFrame(StatcatoChartFrame frame)
          Add the given frame to the list of window frames.
 void checkUpdates()
          Checks for updates from the Statcato web site.
 void clearStatus()
          Clears the status bar.
 void clearStatusTimerList()
           
 void clearUndoManager()
          Clears all edits in the undo manager and updates the undo/redo menus and icons.
 javax.swing.ImageIcon createImageIcon(java.lang.String path, java.lang.String description)
          Creates an image icon given the file path and description of an image.
 java.util.ArrayList<StatcatoChartFrame> getChartFrames()
           
 java.lang.String getCurrentTabTitle()
          Returns the title of the active tab in the Datasheet pane.
 DatasheetTabbedPane getDatasheetTabbedPane()
          Returns the Datasheet tabbed pane.
 LogWindow getLogTextPane()
          Returns the log text pane.
 java.lang.String getLogTitle()
          Returns the title of the log internal frame.
 Project getProject()
          Returns the project object.
 Spreadsheet getSpreadsheet()
          Returns the active spreadsheet.
static void main(java.lang.String[] args)
           
protected  javax.swing.JButton makeToolBarButton(java.lang.String imageName, java.lang.String actionCommand, java.lang.String toolTipText, java.lang.String altText, javax.swing.Action action)
          Creates a button for the given image and sets its action command, tooltip, and alternative text.
 void removeChartFrames()
          Removes all frames from the list of window frames.
 void removeWindowFrame(StatcatoChartFrame frame)
          Removes the given frame from the list of window frames.
 void restoreStatusTimer(int seconds)
          Restores the status bar to the current status in the given amount of time in seconds.
 void setClearStatusTimer(int seconds)
          Sets a timer to clear the status bar in the given amount of time in seconds.
 void setCurrentTabTitle(java.lang.String title)
          Sets the title of the active tab in the Datasheet pane.
 void setLogTitle(java.lang.String title)
          Sets the title of the log internal frame.
 void setStatus(java.lang.String msg)
          Displays the given string in the status bar.
 void setStatusTimer(java.lang.String msg, int seconds)
          Sets the status bar to the given status in the given amount of time in seconds
 void showDialogHistory()
          Shows the dialog history frame.
 void showErrorDialog(java.lang.String message)
          Displays an error dialog with the given messages
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, 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, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, 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, getMinimumSize, getMousePosition, getPreferredSize, 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, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

VERSION

public static final java.lang.String VERSION
See Also:
Constant Field Values

DEFAULTHELPFILE

public static final java.lang.String DEFAULTHELPFILE
See Also:
Constant Field Values

project

public Project project

undoManager

public javax.swing.undo.UndoManager undoManager
Undo manager for the application.


compoundEdit

public DialogEdit compoundEdit
Compound edit object for the application.

Constructor Detail

Statcato

public Statcato()
Creates new form Statcato

Method Detail

checkUpdates

public void checkUpdates()
Checks for updates from the Statcato web site. Prints out check updates in the status bar. If a new version is available, the check updates dialog is displayed.


setClearStatusTimer

public void setClearStatusTimer(int seconds)
Sets a timer to clear the status bar in the given amount of time in seconds.

Parameters:
seconds - timer start time

restoreStatusTimer

public void restoreStatusTimer(int seconds)
Restores the status bar to the current status in the given amount of time in seconds.

Parameters:
seconds - timer start time

setStatus

public void setStatus(java.lang.String msg)
Displays the given string in the status bar.

Parameters:
msg - string to be displayed

setStatusTimer

public void setStatusTimer(java.lang.String msg,
                           int seconds)
Sets the status bar to the given status in the given amount of time in seconds

Parameters:
msg - string to be displayed as status
seconds - timer start time

clearStatusTimerList

public void clearStatusTimerList()

clearStatus

public void clearStatus()
Clears the status bar.


addHelp

public void addHelp()
Initializes JavaHelp help documentation module.


addDialogHelp

public void addDialogHelp(javax.swing.JMenuItem menu,
                          java.lang.String helpFile)
Enables help for the given menu item.

Parameters:
menu - menu item
helpFile - help file name

showDialogHistory

public void showDialogHistory()
Shows the dialog history frame.


setLogTitle

public void setLogTitle(java.lang.String title)
Sets the title of the log internal frame.

Parameters:
title - a string to be displayed at the top of the log frame

getLogTitle

public java.lang.String getLogTitle()
Returns the title of the log internal frame.

Returns:
the string displayed at the top of the log frame

setCurrentTabTitle

public void setCurrentTabTitle(java.lang.String title)
Sets the title of the active tab in the Datasheet pane.

Parameters:
title - a string to be displayed at the top of the active tab

getCurrentTabTitle

public java.lang.String getCurrentTabTitle()
Returns the title of the active tab in the Datasheet pane.

Returns:
the string displayed at the top of the active tab

createImageIcon

public javax.swing.ImageIcon createImageIcon(java.lang.String path,
                                             java.lang.String description)
Creates an image icon given the file path and description of an image.

Parameters:
path - a string denoting the image file path
description - a string descripting the image
Returns:
an image icon

addWindowFrame

public void addWindowFrame(StatcatoChartFrame frame)
Add the given frame to the list of window frames. Adds a corresponding menu item in the window menu.

Parameters:
frame - StatcatoChartFrame instance to be added

getChartFrames

public java.util.ArrayList<StatcatoChartFrame> getChartFrames()

removeWindowFrame

public void removeWindowFrame(StatcatoChartFrame frame)
Removes the given frame from the list of window frames. Removes the corresponding menu item from the window menu.

Parameters:
frame - StatcatoChartFrame instance to be removed

removeChartFrames

public void removeChartFrames()
Removes all frames from the list of window frames. Disposes all frames.


makeToolBarButton

protected javax.swing.JButton makeToolBarButton(java.lang.String imageName,
                                                java.lang.String actionCommand,
                                                java.lang.String toolTipText,
                                                java.lang.String altText,
                                                javax.swing.Action action)
Creates a button for the given image and sets its action command, tooltip, and alternative text.

Parameters:
imageName - a string representing the image file name
actionCommand - a string representing the action command
toolTipText - a string to be displayed as tooltip
altText - a string to be displayed when the image is not available
Returns:
the button created from the image

getSpreadsheet

public Spreadsheet getSpreadsheet()
Returns the active spreadsheet.

Returns:
the active spreadsheet

getDatasheetTabbedPane

public DatasheetTabbedPane getDatasheetTabbedPane()
Returns the Datasheet tabbed pane.

Returns:
the Datasheet tabbed pane

getLogTextPane

public LogWindow getLogTextPane()
Returns the log text pane.

Returns:
the log text pane.

getProject

public Project getProject()
Returns the project object.

Returns:
the project object.

showErrorDialog

public void showErrorDialog(java.lang.String message)
Displays an error dialog with the given messages

Parameters:
message - a string to be displayed in the dialog

addLogText

public void addLogText(java.lang.String message)
Adds the given message to the log text pane.

Parameters:
message - a string to be added to the log text pane

addLogHeading

public void addLogHeading(java.lang.String message)
Adds the given message as a heading to the log text pane.

Parameters:
message - a string to be added as a heading to the log text pane.

addLogParagraph

public void addLogParagraph(java.lang.String heading,
                            java.lang.String text)
Adds the given heading and text to the log text pane.

Parameters:
heading -
text -

addLogIcon

public void addLogIcon(javax.swing.Icon c)

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Specified by:
actionPerformed in interface java.awt.event.ActionListener

main

public static void main(java.lang.String[] args)
Parameters:
args - the command line arguments

addCompoundEdit

public void addCompoundEdit(javax.swing.undo.UndoableEdit edit)
Adds the given edit to the undo manager and udpates the undo/redo menus and icons.

Parameters:
edit - undoable edit

clearUndoManager

public void clearUndoManager()
Clears all edits in the undo manager and updates the undo/redo menus and icons.


addUndoListenerToDatasheet

public void addUndoListenerToDatasheet()
Adds an undoable edit listener to the selected Datasheet