File:  [local] / rpl / modules / motif / example.rpl
Revision 1.13: download - view: text, annotated - select for diffs - revision graph
Thu Nov 14 18:54:47 2019 UTC (4 years, 5 months ago) by bertrand
Branches: MAIN
CVS tags: rpl-4_1_35, rpl-4_1_34, rpl-4_1_33, rpl-4_1_32, HEAD
Patches pour la simplification des expressions.

    1: #!/usr/local/bin/rpl -spdc
    2: 
    3: MOTIF
    4: <<
    5:     "motif.rplso" use
    6:     -> MOTIF
    7:     <<
    8:         APPLICATION
    9: 
   10:         // POPUP is a motif$widget that has to be purged before
   11:         // library is unloaded.
   12:         'POPUP' purge
   13:         MOTIF remove
   14:     >>
   15: >>
   16: 
   17: 
   18: APPLICATION
   19: <<
   20:     "none" implicit
   21: 
   22:     "RPL/2" XtAppInitialize
   23:     -> XT_APP TOPLEVEL_WIDGET
   24:     <<
   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:             XtCreateManagedWidget '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:             XtCreateManagedWidget 'FRAME_1' sto
   46: 
   47:             "form_1" "xmFormWidgetClass" FRAME_1
   48:             { } XtCreateManagedWidget 'FORM_1' sto
   49: 
   50:             "label_1" "xmLabelWidgetClass" FORM_1
   51:             { { "XmNlabelString" "Hello, world !" }
   52:               { "XmNlabelType" XmSTRING } }
   53:             XtCreateManagedWidget '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:             XtCreateManagedWidget '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:             XtCreateManagedWidget '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:             XtCreateManagedWidget 'BOUTON_2' sto
   81: 
   82:             BOUTON_1 "XmNactivateCallback"
   83:             << motif$XtAppExitMainLoop >>
   84:             XtAddCallback drop
   85: 
   86:             BOUTON_2 "XmNactivateCallback" 'F_POPUP'
   87:             XtAddCallback drop
   88: 
   89:             "Popup" "applicationShellWidgetClass" TOPLEVEL_WIDGET
   90:             XtCreatePopupShell dup 'POPUP' save
   91: 
   92:             "popup_Form_1" "xmFormWidgetClass" rot
   93:             { { "XmNresizeWidth" XmTrue }
   94:               { "XmNresizeHeight" XmTrue } }
   95:             XtCreateManagedWidget
   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:             XtCreateManagedWidget
  109: 
  110:             "popup_Form_2" "xmFormWidgetClass" rot
  111:             { } XtCreateManagedWidget
  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:             XtCreateManagedWidget
  121: 
  122:             "XmNactivateCallback" 'POPUP_QUIT' XtAddCallback drop
  123: 
  124:             TOPLEVEL_WIDGET XtRealizeWidget
  125:             TOPLEVEL_WIDGET "rplIcon.xpm" XmSetIcon
  126: //          TOPLEVEL_WIDGET "RPL/2" XStoreName
  127: 
  128:             "Début de la boucle Xt" disp
  129:             XT_APP XtAppMainLoop
  130:             "Fin de la Boucle Xt" disp
  131:         >>
  132:     >>
  133: >>
  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>