proper.gui.core.frame
Class ApplicationFrame

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by proper.gui.core.frame.ProperFrame
                          extended by proper.gui.core.frame.CommandLineFrame
                              extended by proper.gui.core.frame.ApplicationFrame
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.event.KeyListener, java.awt.event.MouseListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.DocumentListener, javax.swing.RootPaneContainer, javax.swing.WindowConstants, CommandLineInterface, ProperInterface
Direct Known Subclasses:
Proper

public class ApplicationFrame
extends CommandLineFrame

This class defines the application window that handles subordinated windows. It this one is closed, the VM is stopped.
This class is started with the command line parameters like this:

    ...
    public static void main(String[] args)
    {
       ApplicationFrame        frame;
       frame = new ApplicationFrame("Whatever Title");
       frame.run(args);
    }
 
Any additional code can be placed in the beforeCreate() or the afterCreatemethod, which are called before and after createFrame.

Version:
$Revision: 1.3 $
Author:
FracPete
See Also:
Serialized Form

Field Summary
 
Fields inherited from class javax.swing.JFrame
EXIT_ON_CLOSE
 
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 proper.core.ProperInterface
VERSION
 
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, PROPERTIES, SOMEBITS
 
Constructor Summary
ApplicationFrame(java.lang.String title)
          sets defaultcloseoperation to DO_NOTHING_ON_CLOSE.
 
Method Summary
 void addWindow(ChildFrame frame)
          adds the window to the list
 boolean closeWindows()
          tries to close all windows and returns if it succeeds, i.e.  that there are no open windows left afterwards
static ApplicationFrame createInstance(java.lang.String classname)
          creates a new instance from the given classname
 java.util.Iterator getWindowList()
          returns all currently open windows
static void main(java.lang.String[] args)
          for testing only
 void minimizeWindows()
          minimizes all windows
 void removeWindow(ChildFrame frame)
          removes the window from the list
 void restoreWindows()
          restores all windows
 boolean showWindow(ChildFrame frame)
          brings window to the top
 void windowClosed(java.awt.event.WindowEvent e)
          invoked when a window is closed
 void windowListChanged()
          is called when window list changed somehow (add or remove)
 
Methods inherited from class proper.gui.core.frame.CommandLineFrame
checkCommandLine, fixAdditionalArg, getConfirmExit, parameterError, printDescription, printUsage, run, setArgs, setConfirmExit, toString, windowClosing
 
Methods inherited from class proper.gui.core.frame.ProperFrame
actionPerformed, addListener, addOutput, changedUpdate, classInVerbose, debugprint, debugprint, debugprint, debugprint, debugprintln, debugprintln, debugprintln, debugprintln, debugprintln, getListeners, getRuntime, getVerbose, getVerboseLevel, getVerboseLevelForClass, getVerboseString, getVerboseStringForClass, insertUpdate, keyPressed, keyReleased, keyTyped, mouseClicked, mouseEntered, mouseExited, mousePressed, mouseReleased, notifyListener, notifyListeners, print, print, print, print, println, println, println, println, println, printMemory, refresh, removeListener, removeUpdate, setCenteredLocation, setOutput, setVerbose, setVerboseLevel, setVerboseString, showMessageBox, showMessageBox, showStatus, windowActivated, windowDeactivated, windowDeiconified, windowIconified, windowOpened
 
Methods inherited from class javax.swing.JFrame
getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, 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, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, 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, 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, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, dispatchEvent, enable, enable, enableInputMethods, 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, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, 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, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Constructor Detail

ApplicationFrame

public ApplicationFrame(java.lang.String title)
sets defaultcloseoperation to DO_NOTHING_ON_CLOSE. the actual frame is created in the run method via the createFrame method.

Parameters:
title - the title of the frame
See Also:
CommandLineFrame.run(String[])
Method Detail

createInstance

public static ApplicationFrame createInstance(java.lang.String classname)
creates a new instance from the given classname


windowClosed

public void windowClosed(java.awt.event.WindowEvent e)
invoked when a window is closed

Specified by:
windowClosed in interface java.awt.event.WindowListener
Overrides:
windowClosed in class ProperFrame

closeWindows

public boolean closeWindows()
tries to close all windows and returns if it succeeds, i.e.  that there are no open windows left afterwards


addWindow

public void addWindow(ChildFrame frame)
adds the window to the list

Parameters:
frame - the frame-object

removeWindow

public void removeWindow(ChildFrame frame)
removes the window from the list

Parameters:
frame - the window to remove

showWindow

public boolean showWindow(ChildFrame frame)
brings window to the top

Parameters:
frame - the frame to activate
Returns:
whether frame was activated

getWindowList

public java.util.Iterator getWindowList()
returns all currently open windows

Returns:
an iterator over all currently open windows

minimizeWindows

public void minimizeWindows()
minimizes all windows


restoreWindows

public void restoreWindows()
restores all windows


windowListChanged

public void windowListChanged()
is called when window list changed somehow (add or remove)


main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception
for testing only

Throws:
java.lang.Exception