Package org.jmol.util
Class CommandHistory
- java.lang.Object
-
- org.jmol.util.CommandHistory
-
public final class CommandHistory extends Object
Implements a queue for a bash-like command history.
-
-
Field Summary
Fields Modifier and Type Field Description private javajs.util.Lst<String>commandListArray of commands.private intcursorPosCurrent position of the cursor;(package private) static intDEFAULT_MAX_SIZEstatic StringERROR_FLAG(package private) booleanisOnprivate javajs.util.Lst<String>lstStatesprivate intmaxSizeprivate intnextCommandPosition of the next command.static StringNOHISTORYATALL_FLAGstatic StringNOHISTORYLINE_FLAG
-
Constructor Summary
Constructors Constructor Description CommandHistory()Creates a new instance using the default size (100)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddCommand(String strCommand)Adds any number of lines to the command historyprivate voidaddCommandLine(String command)Adds a single line to the bottom of the list, resets list position.voidclear()clears the history.Stringfind(String cmd, int dir)private StringgetCommand()Calculates the command to return.StringgetCommandDown()Retrieves the following command from the top of the list, updates list position.StringgetCommandUp()Retrieves the following command from the bottom of the list, updates list position.StringgetSetHistory(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;StringpopState()voidpushState(String stateInfo)StringremoveCommand()StringremoveCommand(int n)voidreset(int maxSize)Resets instance.voidsetMaxSize(int maxSize)Resets maximum size of command queue.
-
-
-
Field Detail
-
ERROR_FLAG
public static final String ERROR_FLAG
- See Also:
- Constant Field Values
-
NOHISTORYLINE_FLAG
public static final String NOHISTORYLINE_FLAG
- See Also:
- Constant Field Values
-
NOHISTORYATALL_FLAG
public static final String NOHISTORYATALL_FLAG
- See Also:
- Constant Field Values
-
DEFAULT_MAX_SIZE
static final int DEFAULT_MAX_SIZE
- See Also:
- Constant Field Values
-
commandList
private javajs.util.Lst<String> 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
-
lstStates
private javajs.util.Lst<String> lstStates
-
-
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 String getCommandUp()
Retrieves the following command from the bottom of the list, updates list position.- Returns:
- the String value of a command.
-
getCommandDown
public String getCommandDown()
Retrieves the following command from the top of the list, updates list position.- Returns:
- the String value of a command.
-
getCommand
private String getCommand()
Calculates the command to return.- Returns:
- the String value of a command.
-
addCommand
public void addCommand(String strCommand)
Adds any number of lines to the command history- Parameters:
strCommand-
-
getSetHistory
public 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 String removeCommand()
-
removeCommand
public String removeCommand(int n)
-
addCommandLine
private void addCommandLine(String command)
Adds a single line to the bottom of the list, resets list position.- Parameters:
command- the String value of a command.
-
pushState
public void pushState(String stateInfo)
-
popState
public String popState()
-
-