|
|
| | | | fo.Properties and the nested properties classes | | | | |
Given the intention that individual properties have only a
virtual instantiation in the arrays of
PropertyConsts , these classes are intended to
remain as repositories of static data and methods. The name
of each property is entered in the
PropNames.propertyNames array of
String s, and each has a unique integer constant
defined, corresponding to the offset of the property name in
that array.
| | | | Fields common to all classes | | | | |
final int dataTypes -
This field defines the allowable data types which may be
assigned to the property. The value is chosen from the
data type constants defined in Properties , and
may consist of more than one of those constants,
bit-ORed together.
final int traitMapping -
This field defines the mapping of properties to traits
in the Area tree . The value is chosen from the
trait mapping constants defined in Properties ,
and may consist of more than one of those constants,
bit-ORed together.
final int initialValueType -
This field defines the data type of the initial value
assigned to the property. The value is chosen from the
initial value type constants defined in
Properties .
final int inherited -
This field defines the kind of inheritance applicable to
the property. The value is chosen from the inheritance
constants defined in Properties .
|
| | | | Datatype dependent fields | | | | |
Enumeration types -
final String[] enums
This array contains the NCName text
values of the enumeration. In the current
implementation, it always contains a null value at
enum[0] .
final String[]
enumValues When the number of
enumeration values is small,
enumValues is a reference to the
enums array.
final HashMap
enumValues When the number of
enumeration values is larger,
enumValues is a
HashMap statically initialized to
contain the integer constant values corresponding to
each text value, indexed by the text
value.
final int
enumeration-constants A
unique integer constant is defined for each of the
possible enumeration values.
Many types:
final datatype
initialValue -
When the initial datatype does not have an implicit
initial value (as, for example, does type
AUTO ) the initial value for the property is
assigned to this field. The type of this field will
vary according to the initialValueType
field.
AUTO: PropertyValueList auto(property,
list)> -
When AUTO is a legal value type, the
auto() method must be defined in the property
class.
NOT YET IMPLEMENTED.
COMPLEX: PropertyValueList complex(property,
list)> -
COMPLEX is specified as a value type when complex
conditions apply to the selection of a value type, or
when lists of values are acceptable. To process and
validate such a property value assignment, the
complex() method must be defined in the
property class.
|
|
Previous: property classes overview.
|
|
|