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

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.2       bertrand   22:    "Test application" XtAppInitialize
                     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 } }
                     32:            XtCreateWidget 'MAIN_WIDGET' sto
                     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 } }
                     45:            XtCreateWidget 'FRAME_1' sto
                     46: 
                     47:            "form_1" "xmFormWidgetClass" FRAME_1
                     48:            { } XtCreateWidget 'FORM_1' sto
                     49: 
                     50:            "label_1" "xmLabelWidgetClass" FORM_1
                     51:            { { "XmNlabelString" "Hello, world !" }
                     52:              { "XmNlabelType" XmSTRING } }
                     53:            XtCreateWidget 'LABEL_1' sto
                     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 } }
                     62:            XtCreateWidget 'SEP_1' sto
                     63: 
                     64:            "bouton_1" "xmPushButtonWidgetClass" FORM_1
                     65:            { { "XmNtopWidget" SEP_1 }
                     66:              { "XmNtopAttachment" XmATTACH_WIDGET }
                     67:              { "XmNtopOffset" 2 }
                     68:              { "XmNlabelString" "Quitter" }
                     69:              { "XmNlabelType" XmSTRING } }
                     70:            XtCreateWidget 'BOUTON_1' sto
                     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 } }
                     80:            XtCreateWidget 'BOUTON_2' sto
                     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 } }
                     95:            XtCreateWidget
                     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 } }
                    108:            XtCreateWidget
                    109: 
                    110:            "popup_Form_2" "xmFormWidgetClass" rot
                    111:            { } XtCreateWidget
                    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 } }
                    120:            XtCreateWidget
                    121: 
1.5       bertrand  122:            "XmNactivateCallback" 'POPUP_QUIT' XtAddCallback drop
1.3       bertrand  123: 
                    124:            TOPLEVEL_WIDGET XtRealizeWidget
                    125: 
1.5       bertrand  126:            "Début de la boucle Xt" disp
1.3       bertrand  127:            XT_APP XtAppMainLoop
1.5       bertrand  128:            "Fin de la Boucle Xt" disp
1.3       bertrand  129:        >>
1.2       bertrand  130:    >>
                    131: >>
1.5       bertrand  132: 
                    133: F_POPUP
                    134: <<
                    135:    "XtPopup callback" disp
                    136:    POPUP XtGrabExclusive XtPopup
                    137:    "XtPopup callback returns" disp
                    138: >>
                    139: 
                    140: POPUP_QUIT
                    141: <<
                    142:    "XtPopdown callback" disp
                    143:    POPUP XtPopdown
                    144:    "XtPopdown callback returns" disp
                    145: >>

CVSweb interface <joel.bertrand@systella.fr>