Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.lsmp.djepExamples
Class Console

    java.lang.Object
      java.awt.Component
          java.awt.Container
              java.awt.Panel
                  java.applet.Applet
                      org.lsmp.djepExamples.Console

All Implemented Interfaces:
  java.awt.event.KeyListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

Direct Known Subclasses:
  BlockStatments, GroupConsole, VectorConsole, XJepConsole

    public class Console

extends java.applet.Applet
implements java.awt.event.KeyListener

This class implements a simple command line utility for evaluating mathematical expressions.

       Usage: java org.lsmp.djepExamples.Console [expression]

If an argument is passed, it is interpreted as an expression and evaluated. Otherwise, a prompt is printed, and the user can enter expressions to be evaluated.

This class has been designed to be sub classed to allow different consol applications. The methods

     public void initialise()
     public void processEquation(Node node) throws Exception
     public boolean testSpecialCommands(String command)
     public void printPrompt()
     public void printIntroText()
     public void printHelp()

can all be overwritten.

Furthermore main should be overwritten. For example

            public static void main(String args[]) {
                    Console c = new DJepConsole();
                    c.run(args);
            }

See Also:
  Serialized Form

Nested Class Summary

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.BltBufferStrategy, java.awt.Component.FlipBufferStrategy`

Field Summary
`protected JEP` | `j` Main JEP object
`protected java.awt.TextArea` | `ta` Text area for user input in applets.

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
`Console()` Constructor

Method Summary
`java.lang.String` | `getAppletInfo()`
`protected java.lang.String` | `getCommand()` Get a command from the input.
`java.lang.String` | `getPrompt()` Prints the prompt string.
`boolean` | `handleError(java.lang.Exception e)` Handle an error in the parse and evaluate routines.
`void` | `init()` Applet initialization
`void` | `initialise()` sets up all the needed objects.
`void` | `inputLoop()` The main input loop for interactive operation.
`void` | `keyPressed(java.awt.event.KeyEvent arg0)`
`void` | `keyReleased(java.awt.event.KeyEvent event)` Handles keyRelease events
`void` | `keyTyped(java.awt.event.KeyEvent arg0)`
`static void` | `main(java.lang.String[] args)` Creates a new Console object and calls run()
`void` | `print(java.lang.Object o)` Prints a line of text no newline.
`void` | `printFuns()` Prints a list of defined functions.
`void` | `printHelp()` Print help message.
`void` | `printIntroText()` Prints introductory text.
`void` | `println(java.lang.Object o)` Prints a line of text no newline.
`void` | `printOps()` Prints a list of defined operators.
`void` | `printStdHelp()` Prints a standard help message.
`void` | `printVars()` Prints a list of constants.
`boolean` | `processCommand(java.lang.String command)` Process a single command.
`void` | `processEquation(Node node)` Performs the required operation on a node.
`void` | `run(java.lang.String[] args)` The main entry point with command line arguments
`java.lang.String[]` | `split(java.lang.String s)` Splits a string on spaces.
`boolean` | `testSpecialCommands(java.lang.String command)` Checks for special commands used by subclasses.

Methods inherited from class java.applet.Applet
`destroy, getAccessibleContext, getAppletContext, 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, addImpl, 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, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, firePropertyChange, firePropertyChange, firePropertyChange, 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, 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, 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`

Field Detail

### j

    protected JEP j

  Main JEP object

### ta

    protected java.awt.TextArea ta

  Text area for user input in applets.

Constructor Detail

### Console

    public Console()

  Constructor

Method Detail

### init

    public void init()

  Applet initialization

  Overrides:
    `init` in class `java.applet.Applet`

### main

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

  Creates a new Console object and calls run()

### run

    public void run(java.lang.String[] args)

  The main entry point with command line arguments

### inputLoop

    public void inputLoop()

  The main input loop for interactive operation. Repeatedly calls getCommand() and processCommand().

### processCommand

    public boolean processCommand(java.lang.String command)

  Process a single command.
  1. Tests for exit, quit, and help.
  2. Tests for any special commands used by sub classes. `testSpecialCommands(String)`
  3. Parses the command.
  4. Processes the node. `processEquation(Node)`
  6. Checks for errors. `handleError(Exception)`

  Parameters:
    `command` - The line to be processed
  Returns:
    false if un-recoverable error or 'quit' or 'exit'

### initialise

    public void initialise()

  sets up all the needed objects.

### processEquation

    public void processEquation(Node node)
                         throws ParseException

  Performs the required operation on a node. Typically evaluates the node and prints the value.

  Parameters:
    `node` - Node representing expression
  Throws:
    `ParseException` - if a Parse or evaluation error

### getCommand

    protected java.lang.String getCommand()

  Get a command from the input.

  Returns:
    null if an IO error or EOF occurs.

### getPrompt

    public java.lang.String getPrompt()

  Prints the prompt string.

### printStdHelp

    public final void printStdHelp()

  Prints a standard help message. Type 'quit' or 'exit' to quit, 'help' for help.

### printHelp

    public void printHelp()

  Print help message.

### printIntroText

    public void printIntroText()

  Prints introductory text.

### printFuns

    public void printFuns()

  Prints a list of defined functions.

### printOps

    public void printOps()

  Prints a list of defined operators.

### printVars

    public void printVars()

  Prints a list of constants.

### testSpecialCommands

    public boolean testSpecialCommands(java.lang.String command)

  Checks for special commands used by subclasses. For example a subclass may have a verbose mode switched on of off using the command

      verbose on

  This method can be used detected this input, perform required actions and skip normal processing by returning true.

  Parameters:
    `command` -
  Returns:
    true indicates normal processing should continue (default) false if the command is special and no further processing should be performed (parsing and evaluating)
  See Also:
    `split(String)`

### handleError

    public boolean handleError(java.lang.Exception e)

  Handle an error in the parse and evaluate routines.

  Parameters:
    `e` -
  Returns:
    false if the error cannot be recovered and the program should exit

### split

    public java.lang.String[] split(java.lang.String s)

  Splits a string on spaces.

  Parameters:
    `s` - the input string
  Returns:
    an array of the tokens in the string

### print

    public void print(java.lang.Object o)

  Prints a line of text no newline. Subclasses should call this method rather than System.out.print to allow for output to different places.

### println

    public void println(java.lang.Object o)

  Prints a line of text no newline. Subclasses should call this method rather than System.out.print to allow for output to different places.

### keyReleased

    public void keyReleased(java.awt.event.KeyEvent event)

  Handles keyRelease events

  Specified by:
    `keyReleased` in interface `java.awt.event.KeyListener`

### keyPressed

    public void keyPressed(java.awt.event.KeyEvent arg0)

  Specified by:
    `keyPressed` in interface `java.awt.event.KeyListener`

### keyTyped

    public void keyTyped(java.awt.event.KeyEvent arg0)

  Specified by:
    `keyTyped` in interface `java.awt.event.KeyListener`

### getAppletInfo

    public java.lang.String getAppletInfo()

  Overrides:
    `getAppletInfo` in class `java.applet.Applet`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

http://www.singularsys.com/jep Copyright © 2007 Singular Systems