LiveGraph
data visualisation and analysis framework

org.LiveGraph.gui
Class MainMenuBar

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JMenuBar
                  extended by org.LiveGraph.gui.MainMenuBar
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.MenuElement, EventListener

 class MainMenuBar
extends javax.swing.JMenuBar
implements EventListener

Provides a LiveGraph application menu bar.

LiveGraph (http://www.live-graph.org).

Copyright (c) 2007-2008 by G. Paperin.

File: MainMenuBar.java

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following terms and conditions are met:

1. Redistributions of source code must retain the above acknowledgement of the LiveGraph project and its web-site, the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above acknowledgement of the LiveGraph project and its web-site, the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software or any derived software must display the following acknowledgement:
This product includes software developed by the LiveGraph project and its contributors.
(http://www.live-graph.org)

4. All advertising materials distributed in form of HTML pages or any other technology permitting active hyper-links that mention features or use of this software or any derived software must display the acknowledgment specified in condition 3 of this agreement, and in addition, include a visible and working hyper-link to the LiveGraph homepage (http://www.live-graph.org).

THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS, CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Version:
"2.0.beta01"
Author:
Greg Paperin (http://www.paperin.org)

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JMenuBar
javax.swing.JMenuBar.AccessibleJMenuBar
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
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  javax.swing.JCheckBoxMenuItem dataFileSettingsDisplayMenuItem
           
private  javax.swing.JFileChooser dataFileSettingsFileDlg
           
private  javax.swing.JCheckBoxMenuItem graphSettingsDisplayMenuItem
           
private  javax.swing.JFileChooser graphSettingsFileDlg
           
private  javax.swing.JCheckBoxMenuItem messsagesDisplayMenuItem
           
private  javax.swing.JCheckBoxMenuItem seriesSettingsDisplayMenuItem
           
private  javax.swing.JFileChooser seriesSettingsFileDlg
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
MainMenuBar()
           
 
Method Summary
 boolean checkEventInterest(Event<? extends EventType> event)
          Does nothing.
 boolean checkEventValid(Event<? extends EventType> event, boolean soFar)
          Does nothing.
 void completedRegisterWithEventManager(EventManager manager)
          Does nothing.
 void completedUnregisterWithEventManager(EventManager manager)
          Does nothing.
private  void displayUpdateDialog()
           
 void eventRaised(Event<? extends EventType> event)
          Processes events.
private  void exportPlot()
           
private  void init()
           
private  void loadDataFileSettings()
           
private  void loadDataSeriesSettings()
           
private  void loadGraphSettings()
           
 boolean permissionRegisterWithEventManager(EventManager manager)
          Permits to register as listener with the main LiveGraph event manager and only with the main LiveGraph event manager.
 boolean permissionUnregisterWithEventManager(EventManager manager)
          Does not permit any unregistering.
private  void processGUIEvent(Event<GUIEvent> event)
          Updates local view on GUI events.
private  void saveDataFileSettings()
           
private  void saveDataSeriesSettings()
           
private  void saveGraphSettings()
           
private  void showProgramInfo()
           
private  void showSupportInfo()
           
private  void visibilityDataFileSettings()
           
private  void visibilityDataSeriesSettings()
           
private  void visibilityGraphSettings()
           
private  void visibilityMessageWindow()
           
 
Methods inherited from class javax.swing.JMenuBar
add, addNotify, getAccessibleContext, getComponent, getComponentAtIndex, getComponentIndex, getHelpMenu, getMargin, getMenu, getMenuCount, getSelectionModel, getSubElements, getUI, getUIClassID, isBorderPainted, isSelected, menuSelectionChanged, paintBorder, paramString, processKeyBinding, processKeyEvent, processMouseEvent, removeNotify, setBorderPainted, setHelpMenu, setMargin, setSelected, setSelectionModel, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

dataFileSettingsFileDlg

private javax.swing.JFileChooser dataFileSettingsFileDlg

graphSettingsFileDlg

private javax.swing.JFileChooser graphSettingsFileDlg

seriesSettingsFileDlg

private javax.swing.JFileChooser seriesSettingsFileDlg

dataFileSettingsDisplayMenuItem

private javax.swing.JCheckBoxMenuItem dataFileSettingsDisplayMenuItem

graphSettingsDisplayMenuItem

private javax.swing.JCheckBoxMenuItem graphSettingsDisplayMenuItem

seriesSettingsDisplayMenuItem

private javax.swing.JCheckBoxMenuItem seriesSettingsDisplayMenuItem

messsagesDisplayMenuItem

private javax.swing.JCheckBoxMenuItem messsagesDisplayMenuItem
Constructor Detail

MainMenuBar

public MainMenuBar()
Method Detail

init

private void init()

loadDataFileSettings

private void loadDataFileSettings()

saveDataFileSettings

private void saveDataFileSettings()

visibilityDataFileSettings

private void visibilityDataFileSettings()

loadGraphSettings

private void loadGraphSettings()

saveGraphSettings

private void saveGraphSettings()

visibilityGraphSettings

private void visibilityGraphSettings()

loadDataSeriesSettings

private void loadDataSeriesSettings()

saveDataSeriesSettings

private void saveDataSeriesSettings()

visibilityDataSeriesSettings

private void visibilityDataSeriesSettings()

visibilityMessageWindow

private void visibilityMessageWindow()

exportPlot

private void exportPlot()

showSupportInfo

private void showSupportInfo()

displayUpdateDialog

private void displayUpdateDialog()

showProgramInfo

private void showProgramInfo()

permissionRegisterWithEventManager

public boolean permissionRegisterWithEventManager(EventManager manager)
Permits to register as listener with the main LiveGraph event manager and only with the main LiveGraph event manager.

Specified by:
permissionRegisterWithEventManager in interface EventListener
Parameters:
manager - The EventManager for the registering attempt.
Returns:
(LiveGraph.application().eventManager() == manager).
See Also:
EventListener.permissionRegisterWithEventManager(EventManager)

permissionUnregisterWithEventManager

public boolean permissionUnregisterWithEventManager(EventManager manager)
Does not permit any unregistering.

Specified by:
permissionUnregisterWithEventManager in interface EventListener
Parameters:
manager - The EventManager for the registering attempt.
Returns:
false.
See Also:
EventListener.permissionUnregisterWithEventManager(EventManager)

completedRegisterWithEventManager

public void completedRegisterWithEventManager(EventManager manager)
Does nothing.

Specified by:
completedRegisterWithEventManager in interface EventListener
Parameters:
manager - The EventManager with which this EventListener is now registered.
See Also:
EventListener.completedRegisterWithEventManager(EventManager)

completedUnregisterWithEventManager

public void completedUnregisterWithEventManager(EventManager manager)
Does nothing.

Specified by:
completedUnregisterWithEventManager in interface EventListener
Parameters:
manager - The EventManager with which this EventListener is now unregistered.
See Also:
EventListener.completedUnregisterWithEventManager(EventManager)

checkEventInterest

public boolean checkEventInterest(Event<? extends EventType> event)
Does nothing.

Specified by:
checkEventInterest in interface EventListener
Parameters:
event - An event in which this EventListener may be interested.
Returns:
false.
See Also:
EventListener.checkEventInterest(Event)

checkEventValid

public boolean checkEventValid(Event<? extends EventType> event,
                               boolean soFar)
Does nothing.

Specified by:
checkEventValid in interface EventListener
Parameters:
event - The event to be validated.
soFar - Whether event has been successfuly validated by whichever EventListeners (if any) were invoked to validate event before this EventListener.
Returns:
true.
See Also:
EventListener.checkEventValid(Event, boolean)

eventRaised

public void eventRaised(Event<? extends EventType> event)
                 throws java.io.FileNotFoundException
Processes events.

Specified by:
eventRaised in interface EventListener
Parameters:
event - Event to process.
Throws:
java.io.FileNotFoundException - If could not read new data file.

processGUIEvent

private void processGUIEvent(Event<GUIEvent> event)
Updates local view on GUI events.

Parameters:
event - The GUI event.

LiveGraph
data visualisation and analysis framework