Annotation of rpl/modules/motif/example.rpl, revision 1.12

1.3       bertrand    1: #!/home/bertrand/cvs/build/src/rpl -spdc
1.2       bertrand    2: 
                      3: MOTIF
                      4: <<
                      5:    "motif.rplso" use
                      6:    -> MOTIF
                      7:    <<
                      8:        APPLICATION
1.5       bertrand    9: 
                     10:        // POPUP is a motif$widget that has to be purged before
                     11:        // library is unloaded.
                     12:        'POPUP' purge
1.2       bertrand   13:        MOTIF remove
                     14:    >>
                     15: >>
                     16: 
                     17: 
                     18: APPLICATION
                     19: <<
1.3       bertrand   20:    "none" implicit
                     21: 
1.11      bertrand   22:    "RPL/2" XtAppInitialize
1.2       bertrand   23:    -> XT_APP TOPLEVEL_WIDGET
                     24:    <<
1.3       bertrand   25:        0 0 0 0 0 0 0
                     26:        -> MAIN_WIDGET FRAME_1 FORM_1 LABEL_1 SEP_1 BOUTON_1 BOUTON_2
                     27:        <<
                     28: 
                     29:            "toplevel" "xmFormWidgetClass" TOPLEVEL_WIDGET
                     30:            { { "XmNresizeWidth" XmTrue }
                     31:              { "XmNresizeHeight" XmTrue } }
1.9       bertrand   32:            XtCreateManagedWidget 'MAIN_WIDGET' sto
1.3       bertrand   33: 
                     34:            "frame_1" "xmFrameWidgetClass" MAIN_WIDGET
                     35:            { { "XmNtopAttachment" XmATTACH_FORM }
                     36:              { "XmNbottomAttachment" XmATTACH_FORM  }
                     37:              { "XmNleftAttachment" XmATTACH_FORM }
                     38:              { "XmNrightAttachment" XmATTACH_FORM }
                     39:              { "XmNtopOffset" 5 }
                     40:              { "XmNleftOffset" 5 }
                     41:              { "XmNrightOffset" 5 }
                     42:              { "XmNbottomOffset" 5 }
                     43:              { "XmNmarginWidth" 5 }
                     44:              { "XmNmarginHeight" 5 } }
1.9       bertrand   45:            XtCreateManagedWidget 'FRAME_1' sto
1.3       bertrand   46: 
                     47:            "form_1" "xmFormWidgetClass" FRAME_1
1.9       bertrand   48:            { } XtCreateManagedWidget 'FORM_1' sto
1.3       bertrand   49: 
                     50:            "label_1" "xmLabelWidgetClass" FORM_1
                     51:            { { "XmNlabelString" "Hello, world !" }
                     52:              { "XmNlabelType" XmSTRING } }
1.9       bertrand   53:            XtCreateManagedWidget 'LABEL_1' sto
1.3       bertrand   54: 
                     55:            "separateur_1" "xmSeparatorWidgetClass" FORM_1
                     56:            { { "XmNorientation" XmHORIZONTAL }
                     57:              { "XmNtopAttachment" XmATTACH_WIDGET }
                     58:              { "XmNtopWidget" LABEL_1 }
                     59:              { "XmNleftAttachment" XmATTACH_FORM }
                     60:              { "XmNrightAttachment" XmATTACH_FORM }
                     61:              { "XmNtopOffset" 2 } }
1.9       bertrand   62:            XtCreateManagedWidget 'SEP_1' sto
1.3       bertrand   63: 
                     64:            "bouton_1" "xmPushButtonWidgetClass" FORM_1
                     65:            { { "XmNtopWidget" SEP_1 }
                     66:              { "XmNtopAttachment" XmATTACH_WIDGET }
                     67:              { "XmNtopOffset" 2 }
                     68:              { "XmNlabelString" "Quitter" }
                     69:              { "XmNlabelType" XmSTRING } }
1.9       bertrand   70:            XtCreateManagedWidget 'BOUTON_1' sto
1.3       bertrand   71: 
                     72:            "bouton_2" "xmPushButtonWidgetClass" FORM_1
                     73:            { { "XmNleftWidget" BOUTON_1 }
                     74:              { "XmNtopWidget" SEP_1 }
                     75:              { "XmNleftAttachment" XmATTACH_WIDGET }
                     76:              { "XmNtopAttachment" XmATTACH_WIDGET }
                     77:              { "XmNtopOffset" 2 }
                     78:              { "XmNlabelString" " Popup " }
                     79:              { "XmNlabelType" XmSTRING } }
1.9       bertrand   80:            XtCreateManagedWidget 'BOUTON_2' sto
1.3       bertrand   81: 
1.5       bertrand   82:            BOUTON_1 "XmNactivateCallback"
                     83:            << motif$XtAppExitMainLoop >>
                     84:            XtAddCallback drop
1.3       bertrand   85: 
                     86:            BOUTON_2 "XmNactivateCallback" 'F_POPUP'
1.5       bertrand   87:            XtAddCallback drop
1.3       bertrand   88: 
1.7       bertrand   89:            "Popup" "applicationShellWidgetClass" TOPLEVEL_WIDGET
1.3       bertrand   90:            XtCreatePopupShell dup 'POPUP' save
                     91: 
                     92:            "popup_Form_1" "xmFormWidgetClass" rot
                     93:            { { "XmNresizeWidth" XmTrue }
                     94:              { "XmNresizeHeight" XmTrue } }
1.9       bertrand   95:            XtCreateManagedWidget
1.3       bertrand   96: 
                     97:            "popup_Frame_1" "xmFrameWidgetClass" rot
                     98:            { { "XmNtopAttachment" XmATTACH_FORM }
                     99:              { "XmNbottomAttachment" XmATTACH_FORM }
                    100:              { "XmNleftAttachment" XmATTACH_FORM }
                    101:              { "XmNrightAttachment" XmATTACH_FORM }
                    102:              { "XmNtopOffset" 5 }
                    103:              { "XmNleftOffset" 5 }
                    104:              { "XmNrightOffset" 5 }
                    105:              { "XmNbottomOffset" 5 }
                    106:              { "XmNmarginWidth" 5 }
                    107:              { "XmNmarginHeight" 5 } }
1.9       bertrand  108:            XtCreateManagedWidget
1.3       bertrand  109: 
                    110:            "popup_Form_2" "xmFormWidgetClass" rot
1.9       bertrand  111:            { } XtCreateManagedWidget
1.3       bertrand  112: 
                    113:            "popup_bouton" "xmPushButtonWidgetClass" rot
                    114:            { { "XmNlabelString" "Quitter" }
                    115:              { "XmNtopAttachment" XmATTACH_FORM }
                    116:              { "XmNbottomAttachment" XmATTACH_FORM }
                    117:              { "XmNleftAttachment" XmATTACH_FORM }
                    118:              { "XmNrightAttachment" XmATTACH_FORM }
                    119:              { "XmNlabelType" XmSTRING } }
1.9       bertrand  120:            XtCreateManagedWidget
1.3       bertrand  121: 
1.5       bertrand  122:            "XmNactivateCallback" 'POPUP_QUIT' XtAddCallback drop
1.3       bertrand  123: 
                    124:            TOPLEVEL_WIDGET XtRealizeWidget
1.12    ! bertrand  125:            TOPLEVEL_WIDGET "rplIcon.xpm" XmSetIcon
1.11      bertrand  126: //         TOPLEVEL_WIDGET "RPL/2" XStoreName
1.3       bertrand  127: 
1.5       bertrand  128:            "Début de la boucle Xt" disp
1.3       bertrand  129:            XT_APP XtAppMainLoop
1.5       bertrand  130:            "Fin de la Boucle Xt" disp
1.3       bertrand  131:        >>
1.2       bertrand  132:    >>
                    133: >>
1.5       bertrand  134: 
                    135: F_POPUP
                    136: <<
                    137:    "XtPopup callback" disp
                    138:    POPUP XtGrabExclusive XtPopup
                    139:    "XtPopup callback returns" disp
                    140: >>
                    141: 
                    142: POPUP_QUIT
                    143: <<
                    144:    "XtPopdown callback" disp
                    145:    POPUP XtPopdown
                    146:    "XtPopdown callback returns" disp
                    147: >>

CVSweb interface <joel.bertrand@systella.fr>