com.objectwave.appArch
Class UIManager

java.lang.Object
  |
  +--com.objectwave.appArch.UIManager

public class UIManager
extends java.lang.Object

This class actually handles the frame/dialog opening, frame/dialog closing, and system exit functions of the application. By using this class we have a common place listeners can Veto a system exit or alter a screen navigation. Additionally, we can keep track of what windows are open and which have been closed. Every java.awt.Window should be shown with this class, if this is violated, then we do not know of the open window, thus eliminating are ability to manage it.


Constructor Summary
UIManager()
           
 
Method Summary
 void addPropertyChangeListener(java.beans.PropertyChangeListener evt)
           
 void addVetoableChangeListener(java.beans.VetoableChangeListener value)
           
 java.awt.Window cacheWindow(WindowModelIF windowModel, java.lang.Class windowClass, java.awt.event.WindowListener wind)
           
 java.awt.Window cacheWindow(WindowModelIF windowModel, java.lang.Class windowClass, java.awt.event.WindowListener wind, java.lang.Object[] constructorParams)
           
 java.awt.Window cacheWindow(WindowModelIF windowModel, java.awt.event.WindowListener wind)
           
protected  java.awt.Window createWindow(WindowModelIF windowModel, java.lang.Class c, java.lang.Object[] constructorParams)
           
 void exitApplication()
           
 void firePropertyChange(java.lang.String name, java.lang.Object oldValue, java.lang.Object newValue)
           
 void fireVetoableChange(java.lang.String name, java.lang.Object oldValue, java.lang.Object value)
           
protected  java.lang.reflect.Constructor getConstructor(WindowModelIF windowModel, java.lang.Class c, java.lang.Object[] constructorParams, boolean exactMatch)
          Find the appropriate constructor for instantiation.
 java.awt.Frame getCurrentFrame()
          Used by the UIManager to attempt to get what ever component is the current frame.
 java.awt.Window getCurrentWindow()
           
static UIManager getDefaultManager()
           
protected  java.awt.Window getExistingWindow(WindowModelIF windowModel, java.lang.Class c, java.awt.event.WindowListener wl, java.lang.Object[] constructorParams)
           
protected  java.awt.Window getNewWindow(WindowModelIF windowModel, java.lang.Class c, java.awt.event.WindowListener wl, java.lang.Object[] constructorParams)
           
protected  java.lang.reflect.Constructor getQuick(java.lang.Class scrn, java.lang.Class c, java.lang.Object[] constructorParams, boolean isDialog)
           
 java.util.Hashtable getWindowList()
           
protected  java.lang.String getWindowName(WindowModelIF windowModel)
           
 void removePropertyChangeListener(java.beans.PropertyChangeListener evt)
           
 void removeVetoableChangeListener(java.beans.VetoableChangeListener value)
           
protected  void setCurrentFrame(java.awt.Frame f)
           
static void setDefaultManager(UIManager gr)
           
 void setWindowList(java.util.Hashtable windowList)
           
 java.awt.Window showWindow(java.awt.Window w)
          In the event that someone wants to create a window outside of my scope.
 java.awt.Window showWindow(WindowModelIF windowModel, java.lang.Class windowClass, java.awt.event.WindowListener wind)
           
 java.awt.Window showWindow(WindowModelIF windowModel, java.lang.Class windowClass, java.awt.event.WindowListener wind, java.lang.Object[] constructorParams)
           
 java.awt.Window showWindow(WindowModelIF windowModel, java.awt.event.WindowListener wind)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UIManager

public UIManager()
Method Detail

addPropertyChangeListener

public void addPropertyChangeListener(java.beans.PropertyChangeListener evt)

addVetoableChangeListener

public void addVetoableChangeListener(java.beans.VetoableChangeListener value)

cacheWindow

public java.awt.Window cacheWindow(WindowModelIF windowModel,
                                   java.awt.event.WindowListener wind)
                            throws java.lang.ClassNotFoundException,
                                   java.lang.InstantiationException,
                                   java.lang.IllegalAccessException,
                                   java.lang.reflect.InvocationTargetException,
                                   java.beans.PropertyVetoException
java.lang.ClassNotFoundException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
java.beans.PropertyVetoException

cacheWindow

public java.awt.Window cacheWindow(WindowModelIF windowModel,
                                   java.lang.Class windowClass,
                                   java.awt.event.WindowListener wind)
                            throws java.lang.ClassNotFoundException,
                                   java.lang.InstantiationException,
                                   java.lang.IllegalAccessException,
                                   java.lang.reflect.InvocationTargetException,
                                   java.beans.PropertyVetoException
java.lang.ClassNotFoundException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
java.beans.PropertyVetoException

cacheWindow

public java.awt.Window cacheWindow(WindowModelIF windowModel,
                                   java.lang.Class windowClass,
                                   java.awt.event.WindowListener wind,
                                   java.lang.Object[] constructorParams)
                            throws java.lang.ClassNotFoundException,
                                   java.lang.InstantiationException,
                                   java.lang.IllegalAccessException,
                                   java.lang.reflect.InvocationTargetException,
                                   java.beans.PropertyVetoException
java.lang.ClassNotFoundException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
java.beans.PropertyVetoException

createWindow

protected java.awt.Window createWindow(WindowModelIF windowModel,
                                       java.lang.Class c,
                                       java.lang.Object[] constructorParams)
                                throws java.lang.InstantiationException,
                                       java.lang.IllegalAccessException,
                                       java.lang.reflect.InvocationTargetException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException

exitApplication

public void exitApplication()
                     throws java.beans.PropertyVetoException
java.beans.PropertyVetoException

firePropertyChange

public void firePropertyChange(java.lang.String name,
                               java.lang.Object oldValue,
                               java.lang.Object newValue)

fireVetoableChange

public void fireVetoableChange(java.lang.String name,
                               java.lang.Object oldValue,
                               java.lang.Object value)
                        throws java.beans.PropertyVetoException
java.beans.PropertyVetoException

getConstructor

protected java.lang.reflect.Constructor getConstructor(WindowModelIF windowModel,
                                                       java.lang.Class c,
                                                       java.lang.Object[] constructorParams,
                                                       boolean exactMatch)
Find the appropriate constructor for instantiation. Take into account things like dialog -vs- non dialog and any additional parameters provided.


getCurrentFrame

public java.awt.Frame getCurrentFrame()
Used by the UIManager to attempt to get what ever component is the current frame.


getCurrentWindow

public java.awt.Window getCurrentWindow()

getDefaultManager

public static UIManager getDefaultManager()

getExistingWindow

protected java.awt.Window getExistingWindow(WindowModelIF windowModel,
                                            java.lang.Class c,
                                            java.awt.event.WindowListener wl,
                                            java.lang.Object[] constructorParams)
                                     throws java.lang.InstantiationException,
                                            java.lang.IllegalAccessException,
                                            java.lang.reflect.InvocationTargetException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException

getNewWindow

protected java.awt.Window getNewWindow(WindowModelIF windowModel,
                                       java.lang.Class c,
                                       java.awt.event.WindowListener wl,
                                       java.lang.Object[] constructorParams)
                                throws java.lang.InstantiationException,
                                       java.lang.IllegalAccessException,
                                       java.lang.reflect.InvocationTargetException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException

getQuick

protected java.lang.reflect.Constructor getQuick(java.lang.Class scrn,
                                                 java.lang.Class c,
                                                 java.lang.Object[] constructorParams,
                                                 boolean isDialog)

getWindowList

public java.util.Hashtable getWindowList()

getWindowName

protected java.lang.String getWindowName(WindowModelIF windowModel)

removePropertyChangeListener

public void removePropertyChangeListener(java.beans.PropertyChangeListener evt)

removeVetoableChangeListener

public void removeVetoableChangeListener(java.beans.VetoableChangeListener value)

setCurrentFrame

protected void setCurrentFrame(java.awt.Frame f)

setDefaultManager

public static void setDefaultManager(UIManager gr)

setWindowList

public void setWindowList(java.util.Hashtable windowList)

showWindow

public java.awt.Window showWindow(WindowModelIF windowModel,
                                  java.awt.event.WindowListener wind)
                           throws java.lang.ClassNotFoundException,
                                  java.lang.InstantiationException,
                                  java.lang.IllegalAccessException,
                                  java.lang.reflect.InvocationTargetException,
                                  java.beans.PropertyVetoException
java.lang.ClassNotFoundException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
java.beans.PropertyVetoException

showWindow

public java.awt.Window showWindow(WindowModelIF windowModel,
                                  java.lang.Class windowClass,
                                  java.awt.event.WindowListener wind)
                           throws java.lang.ClassNotFoundException,
                                  java.lang.InstantiationException,
                                  java.lang.IllegalAccessException,
                                  java.lang.reflect.InvocationTargetException,
                                  java.beans.PropertyVetoException
java.lang.ClassNotFoundException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
java.beans.PropertyVetoException

showWindow

public java.awt.Window showWindow(WindowModelIF windowModel,
                                  java.lang.Class windowClass,
                                  java.awt.event.WindowListener wind,
                                  java.lang.Object[] constructorParams)
                           throws java.lang.ClassNotFoundException,
                                  java.lang.InstantiationException,
                                  java.lang.IllegalAccessException,
                                  java.lang.reflect.InvocationTargetException,
                                  java.beans.PropertyVetoException
java.lang.ClassNotFoundException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException
java.beans.PropertyVetoException

showWindow

public java.awt.Window showWindow(java.awt.Window w)
                           throws java.beans.PropertyVetoException
In the event that someone wants to create a window outside of my scope.

java.beans.PropertyVetoException