... <- Box <- Window <- TitledWindow <- GadgetWindow <- InfoWindow |
|
|
AboutToHide CanAccept ClearInfoTopic ConstrainToolTarget GoToAndReveal HideInfoTopic PopulateTextFields SetInfoTopic |
ShowInfoTopic ShowOrHideInfoTopic Tap Touch TouchTarget Validate ZoomFromWhere |
Class InfoWindow defines no new attributes.
Fields
| Field | Type | |
|---|---|---|
| Viewable: | superview: | Viewable |
| relativeOrigin: | Dot | |
| contentSize: | Dot | |
| viewFlags: | Flags | |
| labelStyle: | TextStyle | |
| color: | Unsigned | |
| altColor: | Unsigned | |
| shadow: | Shadow | |
| sound: | Playable | |
| HasBorder: | border: | Border |
| Window: | canCoexist: | Boolean |
| persistentWindow: | Boolean | |
| dontAutoExtend: | Boolean | |
| ignoreGrid: | Boolean | |
| closeAfterTouch: | Boolean | |
| closeBeforeTouch: | Boolean | |
| autoPosition: | Boolean | |
| noCloseBox: | Boolean | |
| downArrowVisible: | Boolean | |
| upArrowVisible: | Boolean | |
| rightArrowVisible: | Boolean | |
| leftArrowVisible: | Boolean | |
| autoMoveContents: | Boolean | |
| searchable: | Boolean | |
| customTitleColor: | Boolean | |
| scaleWindowTitle: | Boolean | |
| noBuiltInArrows: | Boolean | |
| noZoom: | Boolean | |
| autoCopyWindow: | Boolean | |
| TitledWindow: | titleColor: | Unsigned |
| titleHeight: | Micron | |
| dependents: | ObjectList | |
| BalloonSpout: | balloonDot: | Dot |
| GadgetWindow: | target: | Object |
| InfoTopic: | info: | Object |
| InfoWindow: | currentTopic: | Object |
| infoFields: | ObjectList |
instance InfoWindow tag; relativeOrigin: <0.0,0.0>; contentSize: <0.0,0.0>; viewFlags: 0x00000000; labelStyle: nilObject; color: 0; altColor: 0; shadow: nilObject; sound: nilObject; border: nilObject; canCoexist: false; persistentWindow: false; dontAutoExtend: false; ignoreGrid: false; closeAfterTouch: false; closeBeforeTouch: false; autoPosition: false; noCloseBox: false; downArrowVisible: false; upArrowVisible: false; rightArrowVisible: false; leftArrowVisible: false; autoMoveContents: false; searchable: false; customTitleColor: false; scaleWindowTitle: false; noBuiltInArrows: false; noZoom: false; autoCopyWindow: false; titleColor: 0; titleHeight: <0.0>; dependents: nilObject; balloonDot: <0.0,0.0>; target: nilObject; info: nilObject; currentTopic: nilObject; infoFields: nilObject; end instance;
Define Class InfoWindow; inherits from GadgetWindow; inherits from InfoTopic; has dispatcher hintdata; field currentTopic: Object; // current topic with information being displayed field infoFields: ObjectList; // a list of fields contained in the infoWindow // setting the topic operation PopulateTextFields(viewList: Object; infoText: HasText); operation ClearInfoTopic(), safe; operation HideInfoTopic(newTopic: Object), safe; operation ShowInfoTopic(newTopic: Object), safe; operation ShowOrHideInfoTopic(newTopic: Object), safe, common; // set the topic for display in this window operation SetInfoTopic(newTopic: Object); // lower level routine, unusual to call directly // window behavior overrides AboutToHide; // reset info topic to myself to avoid permanent shadowing overrides CanAccept; // return false, except for Debug builds (in Debug builds requires Move tool) overrides ConstrainToolTarget, TouchTarget; overrides GoToAndReveal; // shows info on the current scene. overrides Tap; // hide this window when you tap it (with a non-touch tool) overrides Touch; // hide this window whenever you touch it (without a tool) overrides ZoomFromWhere; // zoom scene info from scene name #ifdef VALIDATE overrides Validate; #endif end class;