public static class GenericLinkedView.BinaryTreeStructureType extends GenericLinkedView.StructureType
Modifier and Type | Field and Description |
---|---|
String |
colorExpression
Expression that can be evaluated to determine the color for a node.
|
String |
dummyNodeExpression
Expression that can be evaluated to determine the dummy node, if any.
|
String |
leftLinkExpression
Expression that can be evaluated to determine the target of the left
link for a node.
|
String |
rightLinkExpression
Expression that can be evaluated to determine the target of the right
link for a node.
|
String[] |
textExpression
Expression that can be evaluated to determine the node value text.
|
String |
textExpressions
Expressions that can be evaluated to determine the node value text.
|
String[] |
valueExpression
Expression that can be evaluated to determine the "values" for a
node.
|
String |
valueExpressions
Expressions that can be evaluated to determine the "values" for a
node.
|
arrayElementExpression, arrayFieldName, arraySizeExpression, displayFields, fieldsMod, nodeTypeName, userCreated, wrapperExpression
Constructor and Description |
---|
BinaryTreeStructureType() |
BinaryTreeStructureType(String wrapperExpressionIn,
String leftLinkExpressionIn,
String rightLinkExpressionIn,
String valueExpressionsIn,
String textExpressionsIn,
String dummyNodeExpressionIn,
String colorExpressionIn,
String nodeTypeNameIn,
String arraySizeExpressionIn,
String arrayElementExpressionIn,
String arrayFieldNameIn,
List<String> displayFieldsIn)
Creates a new BinaryTreeStructureType.
|
Modifier and Type | Method and Description |
---|---|
JPanel |
buildSettingsPanel() |
GenericLinkedView.StructureType |
copy()
Makes a copy.
|
void |
copyFields(GenericLinkedView.BinaryTreeStructureType bt)
Copies the structure properties of another BinaryTreeStructureType.
|
GenericLinkedView.StructureType |
createFromSettings()
Creates a new StructureType initialized using the entries in the
settings panel.
|
PresentationView<?> |
createViewer(ViewerCreateData vcd,
Type type,
DebugContext context)
Creates a viewer for this structure type.
|
boolean |
equals(Object o)
Indicates whether some other object is "equal to" this one.
|
protected String |
getCurrentArrayField()
Gets the current value of the array entry field.
|
String |
getCurrentWrapperField()
Gets the "live" wrapper field in the configuration dialog.
|
String |
getFullDescription()
Gets a long description for this structure type.
|
JPanel |
getSettingsPanel()
Gets a panel that allows the settings in the current subclass of
StructureType to be set.
|
String |
getWrapperField()
Gets the wrapper field.
|
int |
hashCode()
Returns a hash code value for the object.
|
void |
init(Element e)
Initializes the structure.
|
boolean |
isPossibleSub(GenericLinkedView.StructureType st)
Determines if this structure might be a component structure of
another.
|
void |
toXML(Document doc,
Element e)
Populates an XML dom element for this structure type.
|
copyRootFields, displayFieldsChanged, fieldsXML, getNodeTypeName, initFields, setWrapperExpression
public String leftLinkExpression
public String rightLinkExpression
public String valueExpressions
public String[] valueExpression
public String textExpressions
public String[] textExpression
public String dummyNodeExpression
public String colorExpression
public BinaryTreeStructureType()
public BinaryTreeStructureType(String wrapperExpressionIn, String leftLinkExpressionIn, String rightLinkExpressionIn, String valueExpressionsIn, String textExpressionsIn, String dummyNodeExpressionIn, String colorExpressionIn, String nodeTypeNameIn, String arraySizeExpressionIn, String arrayElementExpressionIn, String arrayFieldNameIn, List<String> displayFieldsIn)
wrapperExpressionIn
- if non-null, the target class is a wrapper,
and this expression provides the root node of the tree.leftLinkExpressionIn
- expression for finding a node's left
child.rightLinkExpressionIn
- expression for finding a node's right
child.valueExpressionsIn
- expressions for getting the values to
display for a node, separated by pound signs (#).textExpressionsIn
- expression for getting the display text of
each value. Use an empty string to accept the default, which is the
result of calling toString() on each value.dummyNodeExpressionIn
- expression for getting the dummy node.
Use an empty string if there is no dummy node.colorExpressionIn
- expression for getting the node color. Use an
empty string to accept the default.nodeTypeNameIn
- type name for nodes. This will be used to
identify local variable nodes. This may be null.arraySizeExpressionIn
- expression for size of array-like
structure to display. This may be null.arrayElementExpressionIn
- expression for getting elements of
displayed array-like structure.arrayFieldNameIn
- field name for the array-like structure if it
is present and is held by a field of the binary tree.displayFieldsIn
- names of fields to display. This may be
null.public JPanel buildSettingsPanel()
public GenericLinkedView.StructureType copy()
copy
in class GenericLinkedView.StructureType
public void copyFields(GenericLinkedView.BinaryTreeStructureType bt)
bt
- the source of the copy data.public GenericLinkedView.StructureType createFromSettings()
GenericLinkedView.StructureType
createFromSettings
in class GenericLinkedView.StructureType
public PresentationView<?> createViewer(ViewerCreateData vcd, Type type, DebugContext context)
createViewer
in class GenericLinkedView.StructureType
vcd
- creation data.type
- the target type.context
- current debugger context.public boolean equals(Object o)
The equals
method implements an equivalence relation
on non-null object references:
x
, x.equals(x)
should return
true
.
x
and y
, x.equals(y)
should return true
if and only if
y.equals(x)
returns true
.
x
, y
, and z
, if
x.equals(y)
returns true
and
y.equals(z)
returns true
, then
x.equals(z)
should return true
.
x
and y
, multiple invocations of
x.equals(y)
consistently return true
or consistently return false
, provided no
information used in equals
comparisons on the
objects is modified.
x
,
x.equals(null)
should return false
.
The equals
method for class Object
implements
the most discriminating possible equivalence relation on objects;
that is, for any non-null reference values x
and
y
, this method returns true
if and only
if x
and y
refer to the same object
(x == y
has the value true
).
Note that it is generally necessary to override the hashCode
method whenever this method is overridden, so as to maintain the
general contract for the hashCode
method, which states
that equal objects must have equal hash codes.
equals
in class GenericLinkedView.StructureType
o
- the reference object with which to compare.true
if this object is the same as the obj
argument; false
otherwise.Object.hashCode()
,
HashMap
public String getCurrentWrapperField()
getCurrentWrapperField
in class GenericLinkedView.StructureType
public String getFullDescription()
GenericLinkedView.StructureType
getFullDescription
in class GenericLinkedView.StructureType
public JPanel getSettingsPanel()
GenericLinkedView.StructureType
getSettingsPanel
in class GenericLinkedView.StructureType
public String getWrapperField()
getWrapperField
in class GenericLinkedView.StructureType
public int hashCode()
java.lang.Object
HashMap
.
The general contract of hashCode
is:
hashCode
method
must consistently return the same integer, provided no information
used in equals
comparisons on the object is modified.
This integer need not remain consistent from one execution of an
application to another execution of the same application.
equals(Object)
method, then calling the hashCode
method on each of
the two objects must produce the same integer result.
Object.equals(java.lang.Object)
method, then calling the hashCode
method on each of the
two objects must produce distinct integer results. However, the
programmer should be aware that producing distinct integer results
for unequal objects may improve the performance of hash tables.
As much as is reasonably practical, the hashCode method defined by
class Object
does return distinct integers for distinct
objects. (This is typically implemented by converting the internal
address of the object into an integer, but this implementation
technique is not required by the
Java™ programming language.)
hashCode
in class GenericLinkedView.StructureType
Object.equals(java.lang.Object)
,
System.identityHashCode(java.lang.Object)
public void init(Element e) throws grasp.util.XMLUtil.Err
init
in class GenericLinkedView.StructureType
e
- the initialization data.XMLUtil.Err
- if there is an error in parsing the data.public boolean isPossibleSub(GenericLinkedView.StructureType st)
isPossibleSub
in class GenericLinkedView.StructureType
st
- possible parent structure.st
, false otherwise. The default implementation always
returns false.public void toXML(Document doc, Element e)
toXML
in class GenericLinkedView.StructureType
doc
- the document to which the element applies.e
- the element to be populated.protected String getCurrentArrayField()
getCurrentArrayField
in class GenericLinkedView.StructureType