elge.gui
Class ElgeGUI

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
                          |
                          +--javax.swing.JFrame
                                |
                                +--elge.gui.ElgeGUI
All Implemented Interfaces:
Accessible, EventListener, ImageObserver, MenuContainer, PropertyChangeListener, RootPaneContainer, Serializable, WindowConstants

public class ElgeGUI
extends JFrame
implements PropertyChangeListener

This is a start up class for the ELGE GUI.

This class provides the basic menu functions for Project options, Help options etc.

This class also provides basic methods which have something to do with gui like selecting object, file etc.

Author:
Pavol Žibrita
See Also:
Serialized Form

Field Summary
 
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
ElgeGUI()
          Creates new form ElgeGUI
 
Method Summary
 void configureBean(Object bean)
          Shows a BeanConfigurer for the bean param
 Graph configureGraph(Project pt, Graph gr)
          Shows a GraphConfigurer for a graph param
protected  javax.help.HelpBroker getHelpBroker()
          Creates a HelpBroker if HelpSet is available.
protected  String getValidProjectName()
          Asks user for the project name and cheks it.
protected  void newProject()
          Creates new project.
protected  void openProject()
          Opens the project.
 void populateRecentMenu()
          Makes the recent projects available at the menu.
 void projectAlreadyOpened()
          Shows dialog that project has been already opened.
 void propertyChange(PropertyChangeEvent evt)
          This method gets called when a bound property is changed.
 void recentItemActionPerformed(ActionEvent evt, String path)
          This is called when the recent project is clicked.
protected  void saveAllProjects()
          Saves all projects and informs the user.
 File selectDirectory(String startDir)
          Shows a directory dialog to select a directory.
 Object selectMonitor()
          Shows the PoolSelector for the Monitor class.
 List selectMonitoredCustomValues(Project pt)
          Displayes the form for selected idents that the monitors can store.
 File selectProjectDirectory(String startDir)
          show a file chooser dialog for selecting a project dir.
 Class selectWorld()
          Shows the dialog for selecting the world.
 Object selectWorldAgentTemplate()
          Shows the PoolSelector for the WorldAgent class.
 void showError(String message, String exmsg)
          Shows a dialog for error message.
 void showMainHelp()
          show the main help window.
 
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, 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, checkImage, checkImage, 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
 

Constructor Detail

ElgeGUI

public ElgeGUI()
Creates new form ElgeGUI

Method Detail

populateRecentMenu

public void populateRecentMenu()
Makes the recent projects available at the menu.


recentItemActionPerformed

public void recentItemActionPerformed(ActionEvent evt,
                                      String path)
This is called when the recent project is clicked. Opens the project if possible.

Parameters:
evt - the event object
path - the selected path to project.

getValidProjectName

protected String getValidProjectName()
Asks user for the project name and cheks it. If it is not valid, null is returned..

Returns:
A valid project name or null
See Also:
Engine.checkProjectName(java.lang.String)

saveAllProjects

protected void saveAllProjects()
Saves all projects and informs the user.

See Also:
Engine.saveProjects()

openProject

protected void openProject()
Opens the project.

See Also:
Engine.loadProject(java.io.File)

newProject

protected void newProject()
Creates new project. Ask the user for project name and for the world to be used.

See Also:
Engine.createProject(java.lang.String, elge.world.World), getValidProjectName()

selectWorld

public Class selectWorld()
Shows the dialog for selecting the world.

Returns:
The world class if selected
See Also:
PoolSelector

selectWorldAgentTemplate

public Object selectWorldAgentTemplate()
Shows the PoolSelector for the WorldAgent class.

Returns:
Return the agent isntance
See Also:
PoolSelector

selectMonitor

public Object selectMonitor()
Shows the PoolSelector for the Monitor class.

Returns:
An monitor instance or null
See Also:
Monitor, PoolSelector

selectMonitoredCustomValues

public List selectMonitoredCustomValues(Project pt)
Displayes the form for selected idents that the monitors can store.

This dialog is used in GraphConfigurer

Parameters:
pt - The project to load the monitors from.
Returns:
array of String idents or null...
See Also:
GraphConfigurer

configureBean

public void configureBean(Object bean)
Shows a BeanConfigurer for the bean param

Parameters:
bean - the bean to be configured

configureGraph

public Graph configureGraph(Project pt,
                            Graph gr)
Shows a GraphConfigurer for a graph param

Parameters:
pt - the project graph is in
gr - the graph to be configured
Returns:
returns the graph if configured or null if not.

showError

public void showError(String message,
                      String exmsg)
Shows a dialog for error message.

Parameters:
message - simple error message
exmsg - error message detail

propertyChange

public void propertyChange(PropertyChangeEvent evt)
This method gets called when a bound property is changed.

For GUI it listens on RecentProjects property to update the recent menu

Specified by:
propertyChange in interface PropertyChangeListener
Parameters:
evt - A PropertyChangeEvent object describing the event source and the property that has changed.
See Also:
populateRecentMenu()

selectProjectDirectory

public File selectProjectDirectory(String startDir)
show a file chooser dialog for selecting a project dir.

Parameters:
startDir - dir to start browsing from
Returns:
returns a project dir or null.

selectDirectory

public File selectDirectory(String startDir)
Shows a directory dialog to select a directory.

Parameters:
startDir - startup dir.
Returns:
Selected directory or null.

projectAlreadyOpened

public void projectAlreadyOpened()
Shows dialog that project has been already opened.


showMainHelp

public void showMainHelp()
show the main help window.


getHelpBroker

protected javax.help.HelpBroker getHelpBroker()
Creates a HelpBroker if HelpSet is available.

Returns:
the HelpBroker instance or null.
See Also:
Engine.getHelpSet()