Package jmri.jmrit.symbolicprog
Class SplitTextVariableValue
java.lang.Object
jmri.jmrit.symbolicprog.AbstractValue
jmri.jmrit.symbolicprog.VariableValue
jmri.jmrit.symbolicprog.SplitVariableValue
jmri.jmrit.symbolicprog.SplitTextVariableValue
- All Implemented Interfaces:
ActionListener,FocusListener,PropertyChangeListener,EventListener
Like
Most attributes of
Specific attributes for this class are:
SplitVariableValue, except that the string representation is
text.
Most attributes of
SplitVariableValue are inherited.
Specific attributes for this class are:
-
A
matchattribute (which must be aregular expression) can be used to impose constraints on entered text. -
A
termByteStrattribute can be used to change the default string terminator byte value. Valid values are 0-255 or "" to specify no terminator byte. The default is "0" (a null byte). -
A
padByteStrattribute can be used to change the default string padding byte value. Valid values are 0-255 or "" to specify no pad byte. The default is "0" (a null byte). -
A
charSetattribute can be used to change the character set used to encode or decode the text string. Valid values are any Java-supportedCharsetname. If not specified, the default character set of this Java virtual machine is used.
-
Nested Class Summary
Nested classes/interfaces inherited from class jmri.jmrit.symbolicprog.SplitVariableValue
SplitVariableValue.CvItem, SplitVariableValue.VarTextFieldNested classes/interfaces inherited from class jmri.jmrit.symbolicprog.AbstractValue
AbstractValue.ValueState -
Field Summary
FieldsModifier and TypeFieldDescription(package private) int(package private) String(package private) Stringstatic final Stringstatic final String(package private) String(package private) Byte(package private) String(package private) ByteFields inherited from class jmri.jmrit.symbolicprog.SplitVariableValue
_columns, _cvNum, _defaultColor, _fieldShrink, _mask, _maskArray, _maxVal, _minVal, _name, _textField, _uppermask, currentOffset, cvCount, cvList, mFactor, mOffset, mSecondCV, oldContents, repsFields inherited from class jmri.jmrit.symbolicprog.VariableValue
_cvMap, _status, _tooltipTextFields inherited from class jmri.jmrit.symbolicprog.AbstractValue
prop -
Constructor Summary
ConstructorsConstructorDescriptionSplitTextVariableValue(String name, String comment, String cvName, boolean readOnly, boolean infoOnly, boolean writeOnly, boolean opsOnly, String cvNum, String mask, int minVal, int maxVal, HashMap<String, CvValue> v, JLabel status, String stdname, String pSecondCV, int pFactor, int pOffset, String uppermask, String extra1, String extra2, String extra3, String extra4) -
Method Summary
Modifier and TypeMethodDescriptionvoidContains byte-value specific code.(package private) voidContains byte-value specific code.(package private) byte[](package private) int[]intGet the value as a single integer.longGet the value as an unsigned long.(package private) StringgetTextFromBytes(byte[] v) (package private) booleanvoidsetIntValue(int i) Set the value from a single number.voidsetLongValue(long i) voidSet value from a String value.voidstepOneActions(String name, String comment, String cvName, boolean readOnly, boolean infoOnly, boolean writeOnly, boolean opsOnly, String cvNum, String mask, int minVal, int maxVal, HashMap<String, CvValue> v, JLabel status, String stdname, String pSecondCV, int pFactor, int pOffset, String uppermask, String extra1, String extra2, String extra3, String extra4) Subclasses can override this to pick up constructor-specific attributes and perform other actions before cvList has been built.voidSubclasses can override this to invoke further actions after cvList has been built.(package private) void(package private) voidupdateVariableValue(int[] intVals) Contains byte-value specific code.Methods inherited from class jmri.jmrit.symbolicprog.SplitVariableValue
dispose, enterField, focusGained, focusLost, getCommonRep, getCvDescription, getCvNum, getMask, getMask, getNewRep, getTextFromValue, getValueFromText, getValueObject, getValueString, isChanged, isToRead, isToWrite, priorityValue, propertyChange, rangeVal, readAll, readChanges, setAvailable, setColor, setCvState, setToolTipText, updatedTextField, usesCVs, writeAll, writeChangesMethods inherited from class jmri.jmrit.symbolicprog.VariableValue
confirmAll, considerChanged, cvName, getComment, getCvName, getInfoOnly, getMaxMask, getOpsOnly, getReadOnly, getState, getTextValue, getValueInCV, getWriteOnly, isBitMask, isBusy, item, label, maskValAsInt, offsetVal, setBusy, setState, setToRead, setToWrite, setValueInCV, simplifyMask, updateRepresentationMethods inherited from class jmri.jmrit.symbolicprog.AbstractValue
addPropertyChangeListener, getAvailable, removePropertyChangeListener
-
Field Details
-
NO_TERM_BYTE
- See Also:
-
NO_PAD_BYTE
- See Also:
-
matchRegex
-
termByteStr
-
padByteStr
-
charSet
-
termByteVal
-
padByteVal
-
atest
int atest
-
-
Constructor Details
-
SplitTextVariableValue
public SplitTextVariableValue(String name, String comment, String cvName, boolean readOnly, boolean infoOnly, boolean writeOnly, boolean opsOnly, String cvNum, String mask, int minVal, int maxVal, HashMap<String, CvValue> v, JLabel status, String stdname, String pSecondCV, int pFactor, int pOffset, String uppermask, String extra1, String extra2, String extra3, String extra4)
-
-
Method Details
-
stepOneActions
public void stepOneActions(String name, String comment, String cvName, boolean readOnly, boolean infoOnly, boolean writeOnly, boolean opsOnly, String cvNum, String mask, int minVal, int maxVal, HashMap<String, CvValue> v, JLabel status, String stdname, String pSecondCV, int pFactor, int pOffset, String uppermask, String extra1, String extra2, String extra3, String extra4) Description copied from class:SplitVariableValueSubclasses can override this to pick up constructor-specific attributes and perform other actions before cvList has been built.- Overrides:
stepOneActionsin classSplitVariableValue- Parameters:
name- name.comment- comment.cvName- cv name.readOnly- true for read only, else false.infoOnly- true for info only, else false.writeOnly- true for write only, else false.opsOnly- true for ops only, else false.cvNum- cv number.mask- cv mask.minVal- minimum value.maxVal- maximum value.v- hashmap of string and cv value.status- status.stdname- std name.pSecondCV- second cv (no longer preferred, specify in cv)pFactor- factor.pOffset- offset.uppermask- upper mask (no longer preferred, specify in mask)extra1- extra 1.extra2- extra 2.extra3- extra 3.extra4- extra 4.
-
stepTwoActions
Description copied from class:SplitVariableValueSubclasses can override this to invoke further actions after cvList has been built.- Overrides:
stepTwoActionsin classSplitVariableValue
-
isMatched
-
getBytesFromText
-
getTextFromBytes
-
unsupportedCharset
void unsupportedCharset() -
getCvValsFromTextField
int[] getCvValsFromTextField()- Overrides:
getCvValsFromTextFieldin classSplitVariableValue
-
updateVariableValue
Contains byte-value specific code.
Calculates new value for _textField and invokessetValue(newVal)to make and notify the change- Overrides:
updateVariableValuein classSplitVariableValue- Parameters:
intVals- array of new CV values
-
exitField
void exitField()Contains byte-value specific code.
firePropertyChange for "Value" with new and old contents of _textField- Overrides:
exitFieldin classSplitVariableValue
-
actionPerformed
Contains byte-value specific code.
invokesexitField()to process text and firePropertyChange for "Value" with new contents of _textField- Specified by:
actionPerformedin interfaceActionListener- Overrides:
actionPerformedin classSplitVariableValue- Parameters:
e- the action event
-
getIntValue
Description copied from class:VariableValueGet the value as a single integer.In some cases, e.g. speed tables, this will result in complex behavior, where setIntValue(getIntValue()) results in something unexpected.
- Overrides:
getIntValuein classSplitVariableValue- Returns:
- the value as an integer
-
getLongValue
Description copied from class:SplitVariableValueGet the value as an unsigned long.- Overrides:
getLongValuein classSplitVariableValue- Returns:
- the value as a long
-
setValue
Description copied from class:SplitVariableValueSet value from a String value.- Overrides:
setValuein classSplitVariableValue- Parameters:
value- a string representing the Long value to be set
-
setIntValue
Description copied from class:VariableValueSet the value from a single number.In some cases, e.g. speed tables, this will result in complex behavior, where setIntValue(getIntValue()) results in something unexpected.
- Overrides:
setIntValuein classSplitVariableValue- Parameters:
i- the integer value to set
-
setLongValue
- Overrides:
setLongValuein classSplitVariableValue
-