source.ucregents.playground.gui
Class EventManagerFrame

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by source.ucregents.playground.gui.EventManagerFrame
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.event.ListDataListener, javax.swing.event.ListSelectionListener, javax.swing.event.TreeSelectionListener, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class EventManagerFrame
extends javax.swing.JDialog
implements java.awt.event.ActionListener, javax.swing.event.TreeSelectionListener, javax.swing.event.ListDataListener, javax.swing.event.ListSelectionListener

The Event Manager Frame is an interface for constructing a User Event object. The Left tree contains the types of events supported. The Right tree contains the types of resulting actions supported.

Copyright: Copyright (c) 2006

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
 
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog
 
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.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
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, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
EventManagerFrame()
          Default constructor
EventManagerFrame(BaseEntity b)
          Main constructor.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
           
 void addActionToList(java.lang.reflect.Method m, java.lang.Object[] params)
          Take a method and its parameters and insert them appropriately into the object and the action display list
 void addUserEventToList(java.lang.String s)
           
 void contentsChanged(javax.swing.event.ListDataEvent l)
           
 javax.swing.DefaultListModel convertEventsToList(javax.swing.DefaultListModel l, java.util.Vector<UserEvent> e)
          Take a vector of events and convert them into a DefaultListModel so that we can dynamically add and remove from the list.
 javax.swing.tree.DefaultMutableTreeNode createActionNodes()
          Construct the tree of action nodes.
 javax.swing.tree.DefaultMutableTreeNode createEventNodes()
          Create the nodes to construct the event tree
 BaseEntity getSelectedEntity()
           
 java.util.Vector<UserEvent> getSolidEventList(java.util.Vector<UserEvent> evs)
          Often a user will forget or not want to add actions to an added event type.
 void intervalAdded(javax.swing.event.ListDataEvent l)
           
 void intervalRemoved(javax.swing.event.ListDataEvent l)
           
 void listDataEvent(javax.swing.event.ListDataEvent l)
           
 void populateActionList(UserEvent e)
          Populate the action list based on the Vector of events Also serves as a refresh.
 void populateEventList(java.util.Vector<UserEvent> e)
          Populate the event list with information corresponding to the vector of User Events.
 void setSelectedEntity(BaseEntity be)
           
 void valueChanged(javax.swing.event.ListSelectionEvent e)
           
 void valueChanged(javax.swing.event.TreeSelectionEvent e)
           
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, 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.Dialog
addNotify, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setResizable, setTitle, setUndecorated, show
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, finalize, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, isActive, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, 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, removeNotify, 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, 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, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

EventManagerFrame

public EventManagerFrame()
Default constructor


EventManagerFrame

public EventManagerFrame(BaseEntity b)
Main constructor. Send the Manager a BaseEntity and it will populate the JLists with its UserEvent information, and associate a UserEvent with the entity.

Parameters:
b - The entity to read User Events from and write User Events to
Method Detail

actionPerformed

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

addActionToList

public void addActionToList(java.lang.reflect.Method m,
                            java.lang.Object[] params)
Take a method and its parameters and insert them appropriately into the object and the action display list

Parameters:
m - Method to insert
params - parameters sent to the method

addUserEventToList

public void addUserEventToList(java.lang.String s)

contentsChanged

public void contentsChanged(javax.swing.event.ListDataEvent l)
Specified by:
contentsChanged in interface javax.swing.event.ListDataListener

convertEventsToList

public javax.swing.DefaultListModel convertEventsToList(javax.swing.DefaultListModel l,
                                                        java.util.Vector<UserEvent> e)
Take a vector of events and convert them into a DefaultListModel so that we can dynamically add and remove from the list.

Parameters:
l - The ListModel to add events to
e - The vector of events to add to the listmodel
Returns:
The completed DefaultListModel populated with event information

createActionNodes

public javax.swing.tree.DefaultMutableTreeNode createActionNodes()
Construct the tree of action nodes.

Returns:
The top node of the action tree with all the associate folders and leaves

createEventNodes

public javax.swing.tree.DefaultMutableTreeNode createEventNodes()
Create the nodes to construct the event tree

Returns:
The top node of the tree, with all sub-folders and leaves

getSelectedEntity

public BaseEntity getSelectedEntity()

getSolidEventList

public java.util.Vector<UserEvent> getSolidEventList(java.util.Vector<UserEvent> evs)
Often a user will forget or not want to add actions to an added event type. Since events must have a method to invoke, these gaps in the event list need to be removed. getSolidEventList will provide the list of complete, acceptable events

Parameters:
evs - Vector of events to check from which to remove gaps
Returns:
Vector of gap-free events

intervalAdded

public void intervalAdded(javax.swing.event.ListDataEvent l)
Specified by:
intervalAdded in interface javax.swing.event.ListDataListener

intervalRemoved

public void intervalRemoved(javax.swing.event.ListDataEvent l)
Specified by:
intervalRemoved in interface javax.swing.event.ListDataListener

listDataEvent

public void listDataEvent(javax.swing.event.ListDataEvent l)

populateActionList

public void populateActionList(UserEvent e)
Populate the action list based on the Vector of events Also serves as a refresh.

Parameters:
e - Vector of events from which to extract action information

populateEventList

public void populateEventList(java.util.Vector<UserEvent> e)
Populate the event list with information corresponding to the vector of User Events. Also serves as a list refresh.

Parameters:
e - Vector of events from which to extract event information

setSelectedEntity

public void setSelectedEntity(BaseEntity be)

valueChanged

public void valueChanged(javax.swing.event.ListSelectionEvent e)
Specified by:
valueChanged in interface javax.swing.event.ListSelectionListener

valueChanged

public void valueChanged(javax.swing.event.TreeSelectionEvent e)
Specified by:
valueChanged in interface javax.swing.event.TreeSelectionListener