appBase
Class AppBase

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Panel
              extended by java.applet.Applet
                  extended by javax.swing.JApplet
                      extended by appBase.AppBase
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer

public abstract class AppBase
extends javax.swing.JApplet

Class AppBase is used for creating combined applets and standalone applications. This class implements two Template Methods: the applet init() method and the standalone application installApplication() method. Concrete subclasses complete the implementation by implementing the primitive operations getTitle() and createContentPane(), and overriding the hook operations createMenuBar() and the applet start() method.

The AppBase class provides implemented helper methods that can be used for constructing applets and aplications: getResourceRoot(), getFontSize(), setFontSize(), and createFontSizeAction(). The getResourceRoot() method provides access to resources such as HTML files and icons. The getFontSize() and setFontSize() methods can be used to manage font size uniformly throughout an applet or application. They should not be called in any of the abstract methods but may be called in the start() method. The createFontSizeAction() method returns an action that changes the font size. It can be installed in menus and buttons for user control of the font size.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JApplet
javax.swing.JApplet.AccessibleJApplet
 
Nested classes/interfaces inherited from class java.applet.Applet
java.applet.Applet.AccessibleApplet
 
Nested classes/interfaces inherited from class java.awt.Panel
java.awt.Panel.AccessibleAWTPanel
 
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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
Fields inherited from class javax.swing.JApplet
accessibleContext, rootPane, rootPaneCheckingEnabled
 
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
AppBase()
           
 
Method Summary
protected abstract  java.awt.Container createContentPane()
          createContentPane() is a primitive operation used to create the content pane.
 javax.swing.Action createFontSizeAction(float sz)
          app.getFontSize() returns the font size of app.
protected  javax.swing.JMenuBar createMenuBar()
          createMenuBar() is a hook operation used to create the menu bar.
 float getFontSize()
          app.getFontSize() returns the font size of app.
 VFSDirectory getPackageDirectory()
           
 VFSRoot getPackageRoot()
           
 VFSRoot getResourceRoot(java.lang.String nm)
          app.getResourceRoot(nm) returns the virtual file system root for the directory named nm, relative to the class of app.
protected abstract  java.lang.String getTitle()
          getTitle() is a primitive operation used to set the title for a standalone application.
 void init()
          Applet Entry point invoked by a browser.
 void installApplication()
          Standalone application Entry point.
 boolean isApplet()
          app.isApplet() returns true if app is an applet, false if it is a standalone application.
 void setFontSize(float sz)
          app.setFontSize(sz) sets the font size for app to sz.
 
Methods inherited from class javax.swing.JApplet
addImpl, createRootPane, getAccessibleContext, getContentPane, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isRootPaneCheckingEnabled, paramString, remove, repaint, setContentPane, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.applet.Applet
destroy, getAppletContext, getAppletInfo, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus, start, stop
 
Methods inherited from class java.awt.Panel
addNotify
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, 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, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, 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, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, 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
 

Constructor Detail

AppBase

public AppBase()
Method Detail

createContentPane

protected abstract java.awt.Container createContentPane()
createContentPane() is a primitive operation used to create the content pane.

Returns:
the content pane

getTitle

protected abstract java.lang.String getTitle()
getTitle() is a primitive operation used to set the title for a standalone application.

Returns:
the menu bar

createMenuBar

protected javax.swing.JMenuBar createMenuBar()
createMenuBar() is a hook operation used to create the menu bar. The default returns null, resulting in no menu bar.

Returns:
the menu bar

isApplet

public boolean isApplet()
app.isApplet() returns true if app is an applet, false if it is a standalone application.

Returns:

getResourceRoot

public VFSRoot getResourceRoot(java.lang.String nm)
app.getResourceRoot(nm) returns the virtual file system root for the directory named nm, relative to the class of app.

Returns:

getPackageRoot

public VFSRoot getPackageRoot()

getPackageDirectory

public VFSDirectory getPackageDirectory()

init

public final void init()
Applet Entry point invoked by a browser.

Overrides:
init in class java.applet.Applet

installApplication

public final void installApplication()
Standalone application Entry point.


setFontSize

public final void setFontSize(float sz)
app.setFontSize(sz) sets the font size for app to sz.

Parameters:
sz - the new font size

getFontSize

public final float getFontSize()
app.getFontSize() returns the font size of app.

Returns:
the current font size

createFontSizeAction

public final javax.swing.Action createFontSizeAction(float sz)
app.getFontSize() returns the font size of app.

Returns:
the current font size