[operations] [attributes] [fields] [template] [definition]
[implementation] [documentation]
To use the search tool you need to use a browser which supports JAVA (c)

[next] [prev] [superclass] [next peer] [prev peer] [subclass] [index] [hierarchy]

InfoWindow

inherits from GadgetWindow
inherits from InfoTopic

... <- Box <- Window <- TitledWindow <- GadgetWindow <- InfoWindow



Operations

Get list of all operations

AboutToHide
CanAccept
ClearInfoTopic
ConstrainToolTarget
GoToAndReveal
HideInfoTopic
PopulateTextFields
SetInfoTopic
ShowInfoTopic
ShowOrHideInfoTopic
Tap
Touch
TouchTarget
Validate
ZoomFromWhere


Attributes

Get list of all attributes

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 template

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;

Class definition

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;