Object <- AttributeText <- AttributeMappedText |
|
|
CopyTextFromTarget CopyTextIntoTarget Validate |
Class AttributeMappedText defines no new attributes.
Fields
| Field | Type | |
|---|---|---|
| AttributeText: | textOwner: | Object |
| text: | Text | |
| dontObserveOffscreen: | Boolean | |
| dontObserveOnscreen: | Boolean | |
| dontSetTarget: | Boolean | |
| zeroValueBlank: | Boolean | |
| setAttribute: | Boolean | |
| cacheMayBeWrong: | Boolean | |
| useName: | Boolean | |
| observing: | Boolean | |
| dirty: | Boolean | |
| refCount: | UnsignedShort | |
| target: | Object | |
| targetAttribute: | OperationNumber | |
| AttributeMappedText: | templateText: | Text |
| mapping: | TextMapping |
instance AttributeMappedText tag; textOwner: nilObject; text: nilObject; dontObserveOffscreen: false; dontObserveOnscreen: false; dontSetTarget: false; zeroValueBlank: false; setAttribute: false; cacheMayBeWrong: false; useName: false; observing: false; dirty: false; refCount: 0; target: nilObject; targetAttribute: nilOperation; templateText: nilObject; mapping: nilObject; end instance;
Define Class AttributeMappedText; inherits from AttributeText; field templateText: Text; field mapping: TextMapping; overrides CopyTextFromTarget; // returns an ephemeral copy of templateText after using mapping on it overrides CopyTextIntoTarget; // does nothing, so it doesn't matter how attribute text flags are set #ifdef VALIDATE overrides Validate; // necessary because we allow an empty targetAttribute field, but our // parent class doens't #endif end class;