[.home.]
[.hacks.]
[.java.]

Class Main

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Panel
                    |
                    +--java.applet.Applet
                          |
                          +--Main
All Implemented Interfaces:
javax.accessibility.Accessible, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, ParserListener, java.io.Serializable, java.awt.event.WindowListener

public class Main
extends java.applet.Applet
implements java.awt.event.WindowListener, ParserListener

(#)Main.java

Version:
3.2 19-Mar-2004

Common class used as base for GUI programs. Clients should implement Base. Main offers:
- run as applet or standalone program
- transparent handling of program parameter/options
- language/locale handling - resource/property files handling - variable depot - floating applet Property files are searched in a up to four level hierachy. (0) variables (see put()) (1) .properties (2) .properties (3) Main.properties For each hierachy up to three files are loaded: .properties _en.properties _.properties Possible cmdline switches/applet args
-bg specify background color @see Awt.getColor()
-fg specify foreground color @see Awt.getColor()
-bgimage specify background image
-font specify font to use e.g. sans-14
-lang specify language to use e.g. de
-debug specifi debuglevel @see Debug.setArgs()
Author:
Holger Pfaff
See Also:
Serialized Form

Field Summary
protected  Base base
          our instance of the client program
protected  java.util.Vector baseargs
          vectorized cmdline/applet args
protected  java.awt.Frame baseframe
          used for standalone progs or for floating applets
protected  java.lang.String basename
          usually the name of the client class
protected  boolean inFrame
          the current mode (applet or normal prog)
protected  boolean isApplet
          the current mode (applet or normal prog)
protected  java.lang.String lang
          global language - initialized from system default
protected  java.util.Hashtable rescache
          cache for already opened resources
protected  java.util.Hashtable[] restable
          a four level resource hierachy
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
Main()
           
 
Method Summary
 void duplicate()
          duplicate our applet by opening a new browser window (only in applet mode)
 java.lang.Object get(java.lang.String key)
          get an Object from our resource hierachy.
 java.lang.Object get(java.lang.String key, int s)
          get an Object from our resource hierachy.
 java.lang.String getAppletInfo()
          satisfy curious browser
 boolean getArg(java.lang.String name)
          fetch boolean arguments from args vector
 int getArg(java.lang.String name, int def)
          fetch int arguments from args vector
 java.lang.Object getArg(java.lang.String name, java.lang.Object def)
          fetch arguments from args vector
 java.lang.String getArg(java.lang.String name, java.lang.String def)
          fetch String arguments from args vector
 java.util.Hashtable getHash(java.lang.String name)
          get a hashtable from a resource file
 java.lang.String getHost()
          get our origin hostname (only in applet mode)
 java.lang.String getLang()
          get the current language
 java.lang.String[][] getParameterInfo()
          satisfy curious browser
 java.lang.String getString(java.lang.String key)
          get a String from our resource hierachy.
protected  void init_()
          the common part of the init routine
 void init()
          the applet part of the init routine
 boolean isApplet()
          are we an applet?
protected  boolean isAppletCheck()
          are we an applet?
static void main(java.lang.String[] args)
          main() for standalone programms
 void parseError(java.lang.String error)
          implement ParserListener
 void put(java.lang.String key, java.lang.Object val)
          Put an object in the var bucket. null keys are ignored - null valued cause the key to be deleted from bucket
 void setBackground(java.awt.Color color)
          set the default background color
 void setFont(java.awt.Font font)
          set the default font
 void setForeground(java.awt.Color color)
          set the default foreground color
 void setModule(java.lang.String mod)
          set the module name to use as second level in the resource lookup hierachy
 void showDocument(java.lang.String url, java.lang.String name)
          show an url in a browser window (only in applet mode)
 void start()
          applet has been started -> tell base
 void stop()
          applet has been stopped -> tell base
 void transform()
          make our applet floating (only in applet mode)
 void windowActivated(java.awt.event.WindowEvent e)
          implement java.awt.WindowListener - not used
 void windowClosed(java.awt.event.WindowEvent e)
          implement java.awt.WindowListener - not used
 void windowClosing(java.awt.event.WindowEvent e)
          implement java.awt.WindowListener to capture closing events and close window on request
 void windowDeactivated(java.awt.event.WindowEvent e)
          implement java.awt.WindowListener - not used
 void windowDeiconified(java.awt.event.WindowEvent e)
          implement java.awt.WindowListener - not used
 void windowIconified(java.awt.event.WindowEvent e)
          implement java.awt.WindowListener to capture iconify events to retransform window on request
 void windowOpened(java.awt.event.WindowEvent e)
          implement java.awt.WindowListener - not used
 
Methods inherited from class java.applet.Applet
destroy, getAccessibleContext, getAppletContext, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus
 
Methods inherited from class java.awt.Panel
addNotify
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, transferFocusDownCycle, update, 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, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, 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, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

lang

protected java.lang.String lang
global language - initialized from system default


base

protected Base base
our instance of the client program


basename

protected java.lang.String basename
usually the name of the client class


baseargs

protected java.util.Vector baseargs
vectorized cmdline/applet args


baseframe

protected java.awt.Frame baseframe
used for standalone progs or for floating applets


isApplet

protected boolean isApplet
the current mode (applet or normal prog)


inFrame

protected boolean inFrame
the current mode (applet or normal prog)


rescache

protected java.util.Hashtable rescache
cache for already opened resources


restable

protected java.util.Hashtable[] restable
a four level resource hierachy

Constructor Detail

Main

public Main()
Method Detail

put

public void put(java.lang.String key,
                java.lang.Object val)
Put an object in the var bucket. null keys are ignored - null valued cause the key to be deleted from bucket

Parameters:
key - object to use as key.
val - object to use as value.

setModule

public void setModule(java.lang.String mod)
set the module name to use as second level in the resource lookup hierachy

Parameters:
mod - module name to use

get

public java.lang.Object get(java.lang.String key)
get an Object from our resource hierachy. Return null for error

Parameters:
key - the key to use

get

public java.lang.Object get(java.lang.String key,
                            int s)
get an Object from our resource hierachy. Return null for error

Parameters:
key - the key to use
s - start at hierachy level s

getString

public java.lang.String getString(java.lang.String key)
get a String from our resource hierachy. Return null for error

Specified by:
getString in interface ParserListener
Parameters:
key - the key to use

parseError

public void parseError(java.lang.String error)
implement ParserListener

Specified by:
parseError in interface ParserListener
Parameters:
error - the error String

getHash

public java.util.Hashtable getHash(java.lang.String name)
get a hashtable from a resource file

Parameters:
name - the basename of the property file

setFont

public void setFont(java.awt.Font font)
set the default font

Overrides:
setFont in class java.awt.Container
Parameters:
font - the default font

setForeground

public void setForeground(java.awt.Color color)
set the default foreground color

Overrides:
setForeground in class java.awt.Component
Parameters:
color - the default foreground color

setBackground

public void setBackground(java.awt.Color color)
set the default background color

Overrides:
setBackground in class java.awt.Component
Parameters:
color - the default background color

getLang

public java.lang.String getLang()
get the current language


isApplet

public boolean isApplet()
are we an applet?


isAppletCheck

protected boolean isAppletCheck()
are we an applet? Issue msg on failure


getHost

public java.lang.String getHost()
get our origin hostname (only in applet mode)


transform

public void transform()
make our applet floating (only in applet mode)


duplicate

public void duplicate()
duplicate our applet by opening a new browser window (only in applet mode)


showDocument

public void showDocument(java.lang.String url,
                         java.lang.String name)
show an url in a browser window (only in applet mode)

Parameters:
url - the url
name - the location to use; null = "_self"

init_

protected void init_()
              throws java.lang.Exception
the common part of the init routine

java.lang.Exception

init

public void init()
the applet part of the init routine

Overrides:
init in class java.applet.Applet

stop

public void stop()
applet has been stopped -> tell base

Overrides:
stop in class java.applet.Applet

start

public void start()
applet has been started -> tell base

Overrides:
start in class java.applet.Applet

getAppletInfo

public java.lang.String getAppletInfo()
satisfy curious browser

Overrides:
getAppletInfo in class java.applet.Applet

getParameterInfo

public java.lang.String[][] getParameterInfo()
satisfy curious browser

Overrides:
getParameterInfo in class java.applet.Applet

main

public static void main(java.lang.String[] args)
main() for standalone programms

Parameters:
args - commandline args

getArg

public java.lang.Object getArg(java.lang.String name,
                               java.lang.Object def)
fetch arguments from args vector

Parameters:
name - name of argument
def - value to return on failure

getArg

public java.lang.String getArg(java.lang.String name,
                               java.lang.String def)
fetch String arguments from args vector

Parameters:
name - name of argument
def - value to return on failure

getArg

public int getArg(java.lang.String name,
                  int def)
fetch int arguments from args vector

Parameters:
name - name of argument
def - value to return on failure

getArg

public boolean getArg(java.lang.String name)
fetch boolean arguments from args vector

Parameters:
name - name of argument

windowClosing

public void windowClosing(java.awt.event.WindowEvent e)
implement java.awt.WindowListener to capture closing events and close window on request

Specified by:
windowClosing in interface java.awt.event.WindowListener
Parameters:
e - WindowEvent

windowIconified

public void windowIconified(java.awt.event.WindowEvent e)
implement java.awt.WindowListener to capture iconify events to retransform window on request

Specified by:
windowIconified in interface java.awt.event.WindowListener
Parameters:
e - WindowEvent

windowDeiconified

public void windowDeiconified(java.awt.event.WindowEvent e)
implement java.awt.WindowListener - not used

Specified by:
windowDeiconified in interface java.awt.event.WindowListener
Parameters:
e - WindowEvent

windowOpened

public void windowOpened(java.awt.event.WindowEvent e)
implement java.awt.WindowListener - not used

Specified by:
windowOpened in interface java.awt.event.WindowListener
Parameters:
e - WindowEvent

windowActivated

public void windowActivated(java.awt.event.WindowEvent e)
implement java.awt.WindowListener - not used

Specified by:
windowActivated in interface java.awt.event.WindowListener
Parameters:
e - WindowEvent

windowDeactivated

public void windowDeactivated(java.awt.event.WindowEvent e)
implement java.awt.WindowListener - not used

Specified by:
windowDeactivated in interface java.awt.event.WindowListener
Parameters:
e - WindowEvent

windowClosed

public void windowClosed(java.awt.event.WindowEvent e)
implement java.awt.WindowListener - not used

Specified by:
windowClosed in interface java.awt.event.WindowListener
Parameters:
e - WindowEvent

[.home.]
[.hacks.]
[.java.]