main
Class Main

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

public class Main
extends javax.swing.JFrame

The Main Class from which the program is started.

Is also used to store some global references that are needed by other classes, such as for # example references to Swing components. Most of the data is stored in the Session and the UserPreferences classes though. References to instances of both classes are kept in this class.

See Also:
Serialized Form

Nested Class Summary
 
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
private  java.util.Vector<ChartFrame> chartFrames
          A reference to all active chart frames.
private  Session currentSession
          The current session containing all relevant info in the memory.
private  DataSheetTablePanel dataSheetTablePanel
          The panel that contains the data.
static boolean loggingEnabled
          Flag to enable debug message printing with the log method for all classes.
private  MainMenuBar mainMenuBar
          The main menu bar.
static boolean printLog
          Flag to enable debug message printing for this class.
static long serialVersionUID
          The version tracking unique identifier for Serialization.
private  UserPreferences userPreferences
          The user preferences.
static java.lang.String versionString
          The release number used in the help -> about dialog.
 
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
Main()
          Instantiates a new main.
 
Method Summary
 void addChartFrame(ChartFrame chartFrame)
          Adds a chart frame to the Vector with references to all chart frames.
private static boolean checkLicense()
           
 void disposeAllChartFrames()
          Dispose all chart frames.
 ChartFrame getChartFrame(int index)
          Gets a chart frame to the Vector with references to all chart frames.
 int getChartFrameCount()
          Gets the chart frame count.
 Session getCurrentSession()
          Gets the current session.
 DataSheet getDataSheet()
          Gets the data sheet.
 MainMenuBar getMainMenuBar()
          Gets the main menu bar.
 UserPreferences getUserPreferences()
          Gets the user preferences.
static java.lang.String getVersionString()
          Gets the version string to be shown in the help->about dialog.
static boolean isLoggingEnabled()
          Checks if is debug message printing is enabled.
 void loadSession(java.lang.String pathToFile)
          Load session.
private  void log(java.lang.String message)
          Prints debug information to stdout when printLog is set to true.
static void main(java.lang.String[] args)
          The main method.
 void removeChartFrame(ChartFrame chartFrame)
          Removes a chart frame from the Vector with references to all chart frames.
 void saveSessionAs(java.lang.String pathToFile)
          Save session.
 void setCurrentSession(Session currentSession)
          Sets the current session.
 void setDataSheet(DataSheet dataSheet)
          Sets the data sheet.
 void setUserPreferences(UserPreferences userPreferences)
          Sets the user preferences.
 void updateAllChartFrames()
          Update all chart frames when the data has changed.
 void updateDataPanel()
          To be called when the data in the panel has changed to update the GUI.
 
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, paint, 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, 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

serialVersionUID

public static final long serialVersionUID
The version tracking unique identifier for Serialization.

See Also:
Constant Field Values

versionString

public static final java.lang.String versionString
The release number used in the help -> about dialog.

See Also:
Constant Field Values

loggingEnabled

public static final boolean loggingEnabled
Flag to enable debug message printing with the log method for all classes.

See Also:
Constant Field Values

printLog

public static final boolean printLog
Flag to enable debug message printing for this class.

See Also:
Constant Field Values

mainMenuBar

private MainMenuBar mainMenuBar
The main menu bar.


dataSheetTablePanel

private DataSheetTablePanel dataSheetTablePanel
The panel that contains the data.


userPreferences

private UserPreferences userPreferences
The user preferences.


currentSession

private Session currentSession
The current session containing all relevant info in the memory. This is also the information that gets serialized when saving a session.


chartFrames

private java.util.Vector<ChartFrame> chartFrames
A reference to all active chart frames.

Constructor Detail

Main

public Main()
Instantiates a new main.

Method Detail

updateDataPanel

public void updateDataPanel()
To be called when the data in the panel has changed to update the GUI.


main

public static void main(java.lang.String[] args)
The main method.

Parameters:
args - the command line arguments (not used)

getDataSheet

public DataSheet getDataSheet()
Gets the data sheet.

Returns:
the data sheet

setDataSheet

public void setDataSheet(DataSheet dataSheet)
Sets the data sheet.

Parameters:
dataSheet - the new data sheet

getUserPreferences

public UserPreferences getUserPreferences()
Gets the user preferences.

Returns:
the user preferences

setUserPreferences

public void setUserPreferences(UserPreferences userPreferences)
Sets the user preferences.

Parameters:
userPreferences - the new user preferences

getVersionString

public static java.lang.String getVersionString()
Gets the version string to be shown in the help->about dialog.

Returns:
the version string

getCurrentSession

public Session getCurrentSession()
Gets the current session.

Returns:
the current session

setCurrentSession

public void setCurrentSession(Session currentSession)
Sets the current session.

Parameters:
currentSession - the new current session

addChartFrame

public void addChartFrame(ChartFrame chartFrame)
Adds a chart frame to the Vector with references to all chart frames.

Parameters:
chartFrame - the chart frame

removeChartFrame

public void removeChartFrame(ChartFrame chartFrame)
Removes a chart frame from the Vector with references to all chart frames.

Parameters:
chartFrame - the chart frame

getChartFrame

public ChartFrame getChartFrame(int index)
Gets a chart frame to the Vector with references to all chart frames.

Parameters:
index - the index
Returns:
the chart frame

getChartFrameCount

public int getChartFrameCount()
Gets the chart frame count.

Returns:
the number of active chart frames

disposeAllChartFrames

public void disposeAllChartFrames()
Dispose all chart frames.


updateAllChartFrames

public void updateAllChartFrames()
Update all chart frames when the data has changed.


loadSession

public void loadSession(java.lang.String pathToFile)
Load session.

Parameters:
pathToFile - the path to the session file

saveSessionAs

public void saveSessionAs(java.lang.String pathToFile)
Save session.

Parameters:
pathToFile - the path where the session should be saved.

checkLicense

private static boolean checkLicense()

isLoggingEnabled

public static boolean isLoggingEnabled()
Checks if is debug message printing is enabled.

Returns:
true, if debug message printing is enabled

getMainMenuBar

public MainMenuBar getMainMenuBar()
Gets the main menu bar.

Returns:
the main menu bar

log

private void log(java.lang.String message)
Prints debug information to stdout when printLog is set to true.

Parameters:
message - the message