edu.ucsb.nceas.morpho.framework
Class MorphoFrame

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjava.awt.Window
              extended byjava.awt.Frame
                  extended byjavax.swing.JFrame
                      extended byedu.ucsb.nceas.morpho.framework.MorphoFrame
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, javax.swing.RootPaneContainer, java.io.Serializable, javax.swing.WindowConstants

public class MorphoFrame
extends javax.swing.JFrame

The MorphoFrame is a Window in the Morpho application containing the standard menus and toolbars. Overall state of the application is synchronized across MorphoFrames so that when the UI changes do a user action it is propogated to all frames as appropriate. Each plugin can create a MorphoFrame by asking the UIController for a new instance.

Author:
jones
See Also:
Serialized Form

Nested Class Summary
 
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
static java.lang.String DATAPACKAGEFRAME
           
static java.lang.String SEARCHRESULTFRAME
           
 
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
 
Method Summary
 void addGuiAction(GUIAction action)
          Add a GUIAction to the menu and toolbar for this frame.
 void close()
          close the window when requested
 AbstractDataPackage getAbstractDataPackage()
          Get AbstractDataPackage represented by this frame, if it exists.
 java.awt.Component getContentComponent()
          Get the contentComponent of MorphoFrame
 DataViewContainerPanel getDataViewContainerPanel()
          Get DataViewContainerPanel from this frame, if it exists.
 java.awt.Dimension getDefaultContentAreaSize()
          Returns the default size that the content area should be on this screen.
static MorphoFrame getHiddenInstance()
          Create a new instance and set its visible to false
static MorphoFrame getInstance()
          Create a new instance and set its default size
 javax.swing.JToolBar getJToolBar()
          get the tool bar.
 java.awt.Dimension getJToolBarDims()
          Returns the size of the toolbar
protected  StatusBar getStatusBar()
          Get the StatusBar to update its status
 boolean isDirty()
           
 void removeGuiAction(GUIAction action)
          Remove a GUIAction from the menu and toolbar for this frame.
 void setBusy(boolean isBusy)
          Set the ProgressIndicator to either the busy or notBusy state.
 void setMainContentPane(java.awt.Component comp)
          Set the content pane of the main Morpho window to display the component indicated.
 void setMenuBar(javax.swing.JMenuBar newMenuBar)
          Set the menu bar when it needs to be changed.
 void setMessage(java.lang.String message)
          Set the StatusBar to display a message
 
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

SEARCHRESULTFRAME

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

DATAPACKAGEFRAME

public static final java.lang.String DATAPACKAGEFRAME
See Also:
Constant Field Values
Method Detail

getHiddenInstance

public static MorphoFrame getHiddenInstance()
Create a new instance and set its visible to false

Returns:
MorphoFrame

getInstance

public static MorphoFrame getInstance()
Create a new instance and set its default size

Returns:
MorphoFrame

setMainContentPane

public void setMainContentPane(java.awt.Component comp)
Set the content pane of the main Morpho window to display the component indicated. Note that this will replace the current content pane, and so only one plugin should call this routine.

Parameters:
comp - the component to display

getContentComponent

public java.awt.Component getContentComponent()
Get the contentComponent of MorphoFrame

Returns:
Component

getDataViewContainerPanel

public DataViewContainerPanel getDataViewContainerPanel()
Get DataViewContainerPanel from this frame, if it exists. If morphFrame doesn't contain a DataViewContainerPanel, null will be returned

Returns:
DataViewContainerPanel

getAbstractDataPackage

public AbstractDataPackage getAbstractDataPackage()
Get AbstractDataPackage represented by this frame, if it exists. If this morphFrame doesn't contain an AbstractDataPackage, null will be returned

Returns:
AbstractDataPackage represented by this frame, if it exists. If this morphFrame doesn't contain an AbstractDataPackage, null will be returned

setMenuBar

public void setMenuBar(javax.swing.JMenuBar newMenuBar)
Set the menu bar when it needs to be changed. This is mainly called by the UIController when it is managing the menus.

Parameters:
newMenuBar - JMenuBar

getJToolBar

public javax.swing.JToolBar getJToolBar()
get the tool bar.

Returns:
JToolBar

addGuiAction

public void addGuiAction(GUIAction action)
Add a GUIAction to the menu and toolbar for this frame. If the menu already exists, the actions are added to it. Each time an action is added, it is stored in the appropriate menu and toolbar lists (menuList, menuActions, toolbarActions) in the proper order and then the menus and toolbars are rebuilt from these data structures.

Parameters:
action - the action to be added to the menus and toolbar

removeGuiAction

public void removeGuiAction(GUIAction action)
Remove a GUIAction from the menu and toolbar for this frame.

Parameters:
action - the action to be removed from the menus and toolbar

setBusy

public void setBusy(boolean isBusy)
Set the ProgressIndicator to either the busy or notBusy state.

Parameters:
isBusy - boolean value indidcating whether the indicator should be marked as busy

setMessage

public void setMessage(java.lang.String message)
Set the StatusBar to display a message

Parameters:
message - the message to display in the StatusBar

getDefaultContentAreaSize

public java.awt.Dimension getDefaultContentAreaSize()
Returns the default size that the content area should be on this screen. This is determined by considering the screen size, the sizes of the window insets, and sizes of internal components of the MorphoFrame such as the ProgressIndicator and StatusBar.

Returns:
Dimension

getJToolBarDims

public java.awt.Dimension getJToolBarDims()
Returns the size of the toolbar

Returns:
Dimension

getStatusBar

protected StatusBar getStatusBar()
Get the StatusBar to update its status


close

public void close()
close the window when requested


isDirty

public boolean isDirty()


Copyright © 2000 National Center for Ecological Analysis and Synthesis. All Rights Reserved.