org.jmol.util
Class CommandHistory

java.lang.Object
  extended by org.jmol.util.CommandHistory

public final class CommandHistory
extends java.lang.Object

Implements a queue for a bash-like command history.


Field Summary
private  java.util.Vector commandList
          Array of commands.
private  int cursorPos
          Current position of the cursor;
(package private) static int DEFAULT_MAX_SIZE
           
static java.lang.String ERROR_FLAG
           
(package private)  boolean isOn
           
private  int maxSize
           
private  int nextCommand
          Position of the next command.
static java.lang.String NOHISTORYATALL_FLAG
           
static java.lang.String NOHISTORYLINE_FLAG
           
 
Constructor Summary
CommandHistory()
          Creates a new instance using the default size (100)
CommandHistory(int maxSize)
          Creates a new instance.
 
Method Summary
 void addCommand(java.lang.String strCommand)
          Adds any number of lines to the command history
private  void addCommandLine(java.lang.String command)
          Adds a single line to the bottom of the list, resets list position.
 void clear()
          clears the history.
private  java.lang.String getCommand()
          Calculates the command to return.
 java.lang.String getCommandDown()
          Retrieves the following command from the top of the list, updates list position.
 java.lang.String getCommandUp()
          Retrieves the following command from the bottom of the list, updates list position.
 java.lang.String getSetHistory(int n)
          Options include: all Integer.MAX_VALUE n prev n >= 1 next -1 set max to -2 - n n <= -3 just clear -2 clear and turn off; return "" 0 clear and turn on; return "" Integer.MIN_VALUE;
 java.lang.String removeCommand()
           
 java.lang.String removeCommand(int n)
           
 void reset(int maxSize)
          Resets instance.
 void setMaxSize(int maxSize)
          Resets maximum size of command queue.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ERROR_FLAG

public static final java.lang.String ERROR_FLAG
See Also:
Constant Field Values

NOHISTORYLINE_FLAG

public static final java.lang.String NOHISTORYLINE_FLAG
See Also:
Constant Field Values

NOHISTORYATALL_FLAG

public static final java.lang.String NOHISTORYATALL_FLAG
See Also:
Constant Field Values

DEFAULT_MAX_SIZE

static final int DEFAULT_MAX_SIZE
See Also:
Constant Field Values

commandList

private java.util.Vector commandList
Array of commands.


maxSize

private int maxSize

nextCommand

private int nextCommand
Position of the next command.


cursorPos

private int cursorPos
Current position of the cursor;


isOn

boolean isOn
Constructor Detail

CommandHistory

public CommandHistory()
Creates a new instance using the default size (100)


CommandHistory

public CommandHistory(int maxSize)
Creates a new instance.

Parameters:
maxSize - maximum size for the command queue
Method Detail

clear

public void clear()
clears the history.


reset

public void reset(int maxSize)
Resets instance.

Parameters:
maxSize - maximum size for the command queue.

setMaxSize

public void setMaxSize(int maxSize)
Resets maximum size of command queue. Cuts off extra commands.

Parameters:
maxSize - maximum size for the command queue.

getCommandUp

public java.lang.String getCommandUp()
Retrieves the following command from the bottom of the list, updates list position.

Returns:
the String value of a command.

getCommandDown

public java.lang.String getCommandDown()
Retrieves the following command from the top of the list, updates list position.

Returns:
the String value of a command.

getCommand

private java.lang.String getCommand()
Calculates the command to return.

Returns:
the String value of a command.

addCommand

public void addCommand(java.lang.String strCommand)
Adds any number of lines to the command history

Parameters:
strCommand -

getSetHistory

public java.lang.String getSetHistory(int n)
Options include: all Integer.MAX_VALUE n prev n >= 1 next -1 set max to -2 - n n <= -3 just clear -2 clear and turn off; return "" 0 clear and turn on; return "" Integer.MIN_VALUE;

Parameters:
n -
Returns:
one or more lines of command history

removeCommand

public java.lang.String removeCommand()

removeCommand

public java.lang.String removeCommand(int n)

addCommandLine

private void addCommandLine(java.lang.String command)
Adds a single line to the bottom of the list, resets list position.

Parameters:
command - the String value of a command.