[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]

LessonWindow

inherits from GadgetWindow

... <- Box <- Window <- TitledWindow <- GadgetWindow <- LessonWindow



Operations

Get list of all operations

AboutToHide
BalloonDot
ExtendBottomToFitContent
MoveOutOfTargetsWay
SetStep
ZoomFromWhere


Attributes

Get list of all attributes

DoneButton
KeepFrontmost
NextButton


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
LessonWindow: lessonTitle: Text
titleViewText: TextField
stepViewText: TextField
nextButton: Button
stopButton: Button
doneButton: Button
currentStep: LessonStep


Instance template

instance LessonWindow 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;
    lessonTitle: nilObject;
  titleViewText: nilObject;
   stepViewText: nilObject;
     nextButton: nilObject;
     stopButton: nilObject;
     doneButton: nilObject;
    currentStep: nilObject;
end instance;

Class definition

Define Class LessonWindow;
    inherits from GadgetWindow;

    field lessonTitle:      Text;               
        //  the (non-viewable) text for lesson title
    field titleViewText:    TextField;          
        //  displays lesson title + step number
    field stepViewText:     TextField;          
        //  displays lesson step text
    field nextButton:       Button, getter;     
        //  pressing this advances the lesson to the next step
    field stopButton:       Button;             
        //  pressing this asks the user if they want to end the lesson prematurely
    field doneButton:       Button, getter;     
        //  pressing this ends the lesson after it has been completed
    field currentStep:      LessonStep;         
        //  the step currently executing

    overrides AboutToHide;                      
        //  empties text from fields when hiding
    overrides ExtendBottomToFitContent;         
        //  keeps buttons near bottom
    overrides KeepFrontmost;                    
        //  returns true if no stopButton (to distinguish special-use boot lesson window)
    overrides ZoomFromWhere;                    
        //  returns false (never zooms)

    operation MoveOutOfTargetsWay(step: Object): Boolean;   
        //  adjust window position to avoid target
    operation SetStep(newStep: Object; newStepNum: Unsigned; stepCount: Unsigned), safe, common;

    attribute DoneButton: Button, readOnly;
        // for lesson steps whose target is the done button of the lesson window
    attribute NextButton: Button, readOnly;
        // for lesson steps whose target is the next button of the lesson window

    overrides BalloonDot;
end class;