home *** CD-ROM | disk | FTP | other *** search
/ swCHIP 1991 January / swCHIP_95-1.bin / chip / tvgenpas / demo3pas.exe / TEMPLATE / MENUBAR.MTF < prev    next >
Text File  |  1994-10-27  |  3KB  |  102 lines

  1. \ ********************************************************
  2. \       Standard menubar template file for TVGen 3.0
  3. \               (c) 1994 BOCIAN Software
  4. \ ********************************************************
  5. \
  6. \ Recursively called procedure building up the menu source
  7. \
  8. @DEFPROC MenuProc
  9. @IFEQUAL %_PARAMETER(2)% %_LEVELID%
  10.   \ Follows menu item
  11.   @IFEQUAL %_PARAMETER(1)% ITEM
  12.       NewItem('%_TEXT%','%_PARAM%',%_HOTKEY%,%_COMMAND%,%_HELPCTX%,
  13.     @IFAPP
  14.       @IF!EQUAL %_HINT% ''
  15.         @PUSHFILE 5
  16.   S.Put(%_HELPCTX%,'%_HINT%');
  17.         @INC __HINTCOUNTER
  18.         @POPFILE
  19.       @ENDIF (if!equal %hint%)
  20.       @IFOPTION HELP NOAPP FALSE
  21.         @IFSNIPPET HLP%_ITEMID%
  22.           @PUSHFILE 4
  23. .topic %_SUBSTR(_HELPCTX,3,$FF)%=%_HELPVALUE%
  24.           @SNIPPET HLP%_ITEMID%
  25.           @POPFILE
  26.         @ENDIF (ifsnippet)
  27.       @ENDIF (ifoption)
  28.     @ENDIF (ifapp)
  29.     @ASSIGN __LEVEL %_LEVELID%
  30.     @NEXTITEM
  31.     @CALL MenuProc %_ITEMTYPE% %__LEVEL%
  32.     @NOCR )
  33.   @ENDIF (ifequal %_parameter(1)%)
  34.   \ Follows submenu
  35.   @IFEQUAL %_PARAMETER(1)% SUBMENU
  36.     NewSubMenu('%_TEXT%',%_HELPCTX%,NewMenu(
  37.     @IFAPP
  38.       @IF!EQUAL %_HINT% ''
  39.         @PUSHFILE 5
  40.   S.Put(%_HELPCTX%,'%_HINT%');
  41.         @INC __HINTCOUNTER
  42.         @POPFILE
  43.       @ENDIF (if!equal %hint%)
  44.       @IFOPTION HELP NOAPP FALSE
  45.         @IFSNIPPET HLP%_ITEMID%
  46.           @PUSHFILE 4
  47. .topic %_SUBSTR(_HELPCTX,3,$FF)%=%_HELPVALUE%
  48.           @SNIPPET HLP%_ITEMID%
  49.           @POPFILE
  50.         @ENDIF (ifsnippet)
  51.       @ENDIF (ifoption)
  52.     @ENDIF (ifapp)
  53.     @ASSIGN __LEVEL %_ITEMID%
  54.     @NEXTITEM
  55.     @CALL MenuProc %_ITEMTYPE% %__LEVEL%
  56. ),
  57.     @ASSIGN __LEVEL %_PARAMETER(2)%
  58.     @CALL MenuProc %_ITEMTYPE% %__LEVEL%
  59.     @NOCR )
  60.   @ENDIF (ifequal %_parameter(1)%)
  61.   \ Follows divider line
  62.   @IFEQUAL %_PARAMETER(1)% LINE
  63.       NewLine(
  64.     @ASSIGN __LEVEL %_LEVELID%
  65.     @NEXTITEM
  66.     @CALL MenuProc %_ITEMTYPE% %__LEVEL%
  67.     @NOCR )
  68.   @ENDIF (ifequal %_parameter(1)%)
  69. @ELSE
  70.   @NOCR nil
  71. @ENDIF (ifequal %_parameter(2)%)
  72. @ENDPROC
  73. \
  74. \
  75. \ Main template sequence
  76. @ASSIGN __MENUFILE %_OUTFILE%.%_EXT%
  77. @DEFINEFILE 1 %_OUTFILE%.%_EXT%
  78. @FILE 1
  79. @IF!APP
  80.   @ASKFOR _APPTYPE 'TMyApp'
  81. @ENDIF (if!app)
  82. @IFOPTION MENU_IN_RSC NOAPP FALSE
  83. procedure DefineMenuBar;
  84. var R : TRect;
  85. begin
  86.   MenuBar:=New(PMenuBar,Init(R,NewMenu(
  87. @ELSE
  88. procedure %_APPTYPE%.InitMenuBar;
  89. var R : TRect;
  90. begin
  91.   GetExtent(R);
  92.   R.B.Y:=R.A.Y+1;
  93.   MenuBar:=New(PMenuBar,Init(R,NewMenu(
  94. @ENDIF (ifoption)
  95. @FIRSTITEM
  96. @CALL MenuProc %_ITEMTYPE% %_LEVELID%
  97. )));
  98. end;
  99.  
  100. { ************ Generated by TVGen 3.0 ************** }
  101. @CLOSEFILE 1
  102.