home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-386-Vol-2of3.iso / t / tw21l.exe / TSDWIN.CH < prev    next >
Text File  |  1993-02-06  |  60KB  |  1,227 lines

  1. /*
  2. ┌──────────────────────────────────────────────────────────────────────────┐
  3. │                                                                          │
  4. │                            TSDWIN.CH                                     │
  5. │                                                                          │
  6. │                    Source File for TSDWIN.LIB                            │
  7. │                   Clipper 5.0 Interface Library                          │
  8. │                                                                          │
  9. │      Copyright ( C ) 1992 by Trilateral Systems Development Ltd.         │
  10. │    All Rights Reserved * Version 2.10 * Release Date: Dec 20, 1992       │
  11. │                                                                          │
  12. │                         18  Bond St. South                               │
  13. │                         Dundas, ON, Canada                               │
  14. │                              L9H 3H1                                     │
  15. │                           416-628-5086                                   │
  16. │                                                                          │
  17. │                                                                          │
  18. │     Documented: 12-12-92      at 12:27:37pm                              │
  19. └──────────────────────────────────────────────────────────────────────────┘
  20. */
  21. #define TSD_HSEP        "═╤═"
  22. #define TSD_CSEP        " │ "
  23. #define TSD_FSEP        "═╧═"
  24.  
  25. #define RSHIFT          01 //      1       0x0001
  26. #define LSHIFT          02 //      2       0x0002
  27. #define CTRL            03 //      4       0x0004
  28. #define ALT             04 //      8       0x0008
  29. #define SCROLLSTAT      05 //     16       0x0010
  30. #define NUMLOCKSTAT     06 //     32       0x0020
  31. #define CAPLOCKSTAT     07 //     64       0x0040
  32. #define INSERTSTAT      08 //    128       0x0080
  33. #define CTRLNUMLKSTAT   09 //   2048       0x0800
  34. #define SCROLLOCK       10 //   4096       0x1000
  35. #define NUMLOCK         11 //   8192       0x2000
  36. #define CAPLOCK         12 //  16384       0x4000
  37. #define INSERT          13 //  32768       0x8000
  38.  
  39. #define TRUE            .T.
  40. #define YES             .T.
  41.  
  42. #define FALSE           .F.
  43. #define NO              .F.
  44.  
  45. #define MACOMP(cexpr)   &("{||" + cexpr + "}")
  46.  
  47. #ifdef DEBUG
  48.     #define ASSERT(expl, func) IIF(expl, "", func(procline()))
  49. #else
  50.     #define ASSERT(expl, func)
  51. #endif
  52.  
  53. #define LOG10( num )    LOG( num ) / LOG( 10 )
  54. /*
  55. ┌──────────────────────────────────────────────────────────────────────────
  56. │ Useful Translates
  57. └──────────────────────────────────────────────────────────────────────────
  58. */
  59. #translate STRINT(<x>)     => LTRIM(STR(INT(<x>)))
  60. #translate STRNUM(<x>)     => LTRIM(STR(<x>))
  61. #translate ISNIL( <v1> )   => ( <v1> == NIL )
  62. #translate ISARR( <v1> )   => ( VALTYPE(<v1>) == "A" )
  63. #translate ISBLK( <v1> )   => ( VALTYPE(<v1>) == "B" )
  64. #translate ISCHAR( <v1> )  => ( VALTYPE(<v1>) == "C" )
  65. #translate ISDATE( <v1> )  => ( VALTYPE(<v1>) == "D" )
  66. #translate ISLOGI( <v1> )  => ( VALTYPE(<v1>) == "L" )
  67. #translate ISMEMO( <v1> )  => ( VALTYPE(<v1>) == "M" )
  68. #translate ISNUM( <v1> )   => ( VALTYPE(<v1>) == "N" )
  69. #translate ISOBJ( <v1> )   => ( VALTYPE(<v1>) == "O" )
  70.  
  71. /*
  72. ┌──────────────────────────────────────────────────────────────────────────
  73. │ Useful Commands
  74. └──────────────────────────────────────────────────────────────────────────
  75. */
  76. #command ASHRINK( <array>, <size> ) ;
  77.          => ;
  78.          ASIZE( <array>, IIF( <size>  == NIL, LEN( <array> ) - 1, <size> ))
  79.  
  80. #command AEXPAND( <array>, <number> ) ;
  81.          => ;
  82.          ASIZE( <array>, IIF( <number> == NIL, 1, <number> ))
  83.  
  84. #command REPEAT => DO WHILE .T.
  85. #command UNTIL <lexp> => IF (<lexp>); EXIT; END; END
  86.  
  87. #command DEFAULT <p> TO <val> [,<pn> TO <valn>] ;
  88.          => ;
  89.          <p> := IIF(<p> == NIL, <val>, <p>) ;
  90.          [;<pn> := IIF(<pn> == NIL, <valn>, <pn>)]
  91. /*
  92. ┌──────────────────────────────────────────────────────────────────────────
  93. │ Window Constants
  94. └──────────────────────────────────────────────────────────────────────────
  95. */
  96. #define WINTOP            _twTop()
  97. #define WINLEFT           _twLeft()
  98. #define WINBOTTOM         _twBottom()
  99. #define WINRIGHT          _twRight()
  100. #define WINLENGTH         _twBottom()-_twTop()+1
  101. #define WINWIDTH          _twRight()-_twLeft()+1
  102. #define WINHANDLE         _twHandle()
  103. #define WINSHADOW         _twShadow()
  104. #define WINTHICK          _twShTh()
  105. #define WINSTRUCT         _twStructure()
  106. #define WINTITLE          _twTitle()
  107. #define WINCOLOR          _twColor()
  108. #define WINFCOLOR         _twFcolor()
  109. #define WINFRAME          _twFrame()
  110. #define WINNAME           _twName()
  111. #define WINHIDE           _twHide()
  112. #define WINNEXT           _twNext()
  113. #define WINPREV           _twPrev()
  114. #define WINCARGO          _twCargo()
  115. #define WINSTRUC          _twStructure( nHandle )
  116. #define GETSTACK          _twArray()
  117. #define EXPLODEON         twExplode( .T. )
  118. #define EXPLODEOFF        twExplode( .F. )
  119. /*
  120. ┌──────────────────────────────────────────────────────────────────────────
  121. │ window cargo defines
  122. └──────────────────────────────────────────────────────────────────────────
  123. */
  124. #define WC_SIZE     1
  125. #define WC_GETLIST  2
  126. #define WC_BROWSE   3
  127. #define WC_PROMPTS  4
  128. /*
  129. ┌──────────────────────────────────────────────────────────────────────────
  130. │ Scroll Bar Constants
  131. └──────────────────────────────────────────────────────────────────────────
  132. */
  133. #define SB_ROWTOP         1
  134. #define SB_COLTOP         2
  135. #define SB_ROWBOTTOM      3
  136. #define SB_COLBOTTOM      4
  137. #define SB_COLOR          5
  138. #define SB_POSITION       6
  139. #define SB_DIRECTION      7
  140. #define SB_MOUSEID        8
  141.  
  142. #define SB_ELEMENTS       8  // The number of elements defining a scroll bar
  143.                              // data structure
  144. #define SB_UPARROW        CHR(  24 )
  145. #define SB_DNARROW        CHR(  25 )  // The Up and Down arrows,
  146. #define SB_LEFTARROW      CHR(  27 )  // highlight and background
  147. #define SB_RIGHTARROW     CHR(  26 )  // char's for the thumb tab
  148. #define SB_HIGHLIGHT      CHR( 219 )
  149. #define SB_BACKGROUND     CHR( 176 )
  150.  
  151. #define SB_HORIZONTAL     1  // Directions for scroll bars
  152. #define SB_VERTICAL       2
  153.  
  154. #define MHIDE             IIF( lOKMouse, _twM2(), .T. )
  155. #define MSHOW             IIF( lOKMouse, _twM1(), .T. )
  156. #define MOKSHOW           IIF(( lOKMouse := twOKMouse() ), _twM1(), .T. )
  157.  
  158. /*
  159. ┌──────────────────────────────────────────────────────────────────────────
  160. │ Window Oriented Commands
  161. └──────────────────────────────────────────────────────────────────────────
  162. */
  163. #command  WINDOW ;
  164.           => ;
  165.           twOpen()
  166.  
  167. #command  CREATEWINDOW ;
  168.           => ;
  169.           twNew()
  170.  
  171. #command  WINDOW TO <nHandle>;
  172.           => ;
  173.           <nHandle> := twOpen()
  174.  
  175. #command  CREATEWINDOW TO <nHandle>;
  176.           => ;
  177.           <nHandle> := twNew()
  178.  
  179. #command  WINDOW AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  180.                     [COLOR <cColor>]                             ;
  181.                     [SHADOW <nShadow>]                           ;
  182.                     [FRAME <nFrame>]                             ;
  183.                     [FILL <cFill>]                               ;
  184.                     [FCOLOR <cFColor>]                           ;
  185.                     [TITLE <cTitle>]                             ;
  186.           => ;
  187.           twOpen( <nTop>, <nLeft>, <nBottom>, <nRight>, <cColor>, ;
  188.                   <nShadow>, <nFrame>, <cFill>, <cFColor>, <cTitle> )
  189.  
  190. #command  CREATEWINDOW AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  191.                     [COLOR <cColor>]                                   ;
  192.                     [SHADOW <nShadow>]                                 ;
  193.                     [FRAME <nFrame>]                                   ;
  194.                     [FILL <cFill>]                                     ;
  195.                     [FCOLOR <cFColor>]                                 ;
  196.                     [TITLE <cTitle>]                                   ;
  197.           => ;
  198.           twNew( <nTop>, <nLeft>, <nBottom>, <nRight>, <cColor>, ;
  199.                  <nShadow>, <nFrame>, <cFill>, <cFColor>, <cTitle> )
  200.  
  201. #command  WINDOW TO <nHandle> AT                                 ;
  202.                     [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  203.                     [COLOR <cColor>]                             ;
  204.                     [SHADOW <nShadow>]                           ;
  205.                     [FRAME <nFrame>]                             ;
  206.                     [FILL <cFill>]                               ;
  207.                     [FCOLOR <cFColor>]                           ;
  208.                     [TITLE <cTitle>]                             ;
  209.           => ;
  210.           <nHandle> := twOpen( <nTop>, <nLeft>, <nBottom>, <nRight>, ;
  211.                                <cColor>, <nShadow>, <nFrame>, <cFill>,;
  212.                                <cFColor>, <cTitle> )
  213.  
  214. #command  CREATEWINDOW TO <nHandle> AT                           ;
  215.                     [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  216.                     [COLOR <cColor>]                             ;
  217.                     [SHADOW <nShadow>]                           ;
  218.                     [FRAME <nFrame>]                             ;
  219.                     [FILL <cFill>]                               ;
  220.                     [FCOLOR <cFColor>]                           ;
  221.                     [TITLE <cTitle>]                             ;
  222.           => ;
  223.           <nHandle> := twNew( <nTop>, <nLeft>, <nBottom>, <nRight>, ;
  224.                               <cColor>, <nShadow>, <nFrame>, <cFill>, ;
  225.                               <cFColor>, <cTitle> )
  226.  
  227. #xcommand  WINSHOW <nHandle> => twShow( <nHandle> )
  228.  
  229. #xcommand  WINPOP => twPop()
  230.  
  231. #xcommand  WINCLOSE <nHandle> => twClose( <nHandle> )
  232.  
  233. #xcommand  WINHIDE <nHandle > => twHide( <nHandle> )
  234.  
  235. #xcommand  WINUNHIDE <nHandle> => twUnHide( <nHandle> )
  236.  
  237. #xcommand  WINACTIVATE <nHandle> => twActivate( <nHandle> )
  238.  
  239. #xcommand  WINDISPLAY <nHandle> =>  twDisplay( <nHandle> )
  240.  
  241. #xcommand  WINHEADER <*cTitle*> [COLOR <cColor>] [JUSTIFY <cJust>] ;
  242.                      [DELIM <cDelim>] [HANDLE <nHandle>];
  243.           =>;
  244.           twTitle( #<cTitle>, <cColor>,, <cJust>, <cDelim>, <nHandle> )
  245.  
  246. #xcommand  WINFOOTER <*cTitle*> [COLOR <cColor>] [JUSTIFY <cJust>] ;
  247.                      [DELIM <cDelim>] [HANDLE <nHandle>] ;
  248.           =>;
  249.           twTitle( #<cTitle>,<cColor>, "B", <cJust>, <cDelim>, <nHandle> )
  250.  
  251. #xcommand  WINBORDER [FRAME <nFrame>] [COLOR <cColor>] [HANDLE <nHandle>];
  252.                      [TITLES <lTitle>];
  253.           =>;
  254.           twFrame( <nFrame>, <cColor>, <nHandle>, <lTitle> )
  255.  
  256. #xcommand  WINBOX <nTop>, <nLeft>, <nBottom>, <nRight>;
  257.                   TYPE <nType> [COLOR <cColor>];
  258.                   [SHADOW <nShadow>] [FILL <cFill>] ;
  259.                   [ABSOLUTE <lAbs>]  [HANDLE <nHandle>] ;
  260.                   [TOSCREEN <lToScreen>];
  261.            => ;
  262.            twBox( <nTop>, <nLeft>, <nBottom>, <nRight>, <nType>, ;
  263.                   <cColor>, <cFill>, <lAbs>, <nShadow>, ;
  264.                   <nHandle>, <lToScreen> )
  265.  
  266. #xcommand  WINBUTTON <nTop>, <nLeft> PROMPT <cButton>;
  267.                      [PAD <lPad>] [COLOR <cColor>] [SHADOW <nShadow>];
  268.            => ;
  269.            twCreateButton( <nTop>, <nLeft>, <cButton>, <lPad>, ;
  270.                            <cColor>, <nShadow> )
  271.  
  272. #xcommand  CLEARWITH <cPattern>, [<nTop>], [<nLeft>], [<nBottom>], ;
  273.                      [<nRight>] [BORDER <lBorder>] [COLOR <cAttr>];
  274.            => ;
  275.            twClearWith( <lBorder>, <cPattern>, <nTop>, <nLeft>, ;
  276.                         <nBottom>, <nRight>, <cAttr> )
  277.  
  278. #xcommand  WINCLEAR  [<nTop>], [<nLeft>], [<nBottom>], [<nRight>];
  279.                      [BORDER <lBorder>] [FILL <cFill>];
  280.                      [HANDLE <nHandle>] [TOSCREEN <lToScreen>];
  281.            => ;
  282.            twClear( <lBorder>, <cFill>, <nTop>, <nLeft>, <nBottom>, ;
  283.                     <nRight>, <nHandle>, <lToScreen> )
  284.  
  285. #xcommand  WINCLEARLINE  <nRow> [BORDER <lBorder>] [COLOR <cAttr>];
  286.                          [HANDLE <nHandle>] [TOSCREEN <lToScreen>];
  287.            => ;
  288.            twClearLine( <nRow>, <lBorder>, <cAttr>, <nHandle>, <lToScreen> )
  289.  
  290. #xcommand  WINATTRIBUTE [<nTop>], [<nLeft>], [<nBottom>], [<nRight>];
  291.                         [BORDER <lBorder>] [COLOR <cColor>];
  292.                         [HANDLE <nHandle>] [TOSCREEN <lToScreen>];
  293.            => ;
  294.            twAttrib( <lBorder>, <cColor>, <nTop>, <nLeft>, <nBottom>, ;
  295.                      <nRight>, <nHandle>, <lToScreen> )
  296.  
  297. #xcommand  WINHLINE <nRow>, <nCol> LENGTH <Length> TYPE <nType> ;
  298.                     [COLOR <cColor>] [HANDLE <nHandle>] ;
  299.                     [TOSCREEN <lToScreen>] ;
  300.            => ;
  301.            twHLine( <nRow>, <nCol>, <Length>, <nType>, <cColor>, ;
  302.                     <nHandle>, <lToScreen> )
  303.  
  304. #xcommand  WINVLINE <nRow>, <nCol> LENGTH <Length> TYPE <nType> ;
  305.                     [COLOR <cColor>] [HANDLE <nHandle>] ;
  306.                     [TOSCREEN <lToScreen>] ;
  307.            => ;
  308.            twVLine( <nRow>, <nCol>, <Length>, <nType>, <cColor>, ;
  309.                     <nHandle>, <lToScreen> )
  310.  
  311. #xcommand  WINSAY <xOutput> AT <nRow>, <nCol> [COLOR <cAttr>];
  312.                   [PICTURE <cPicture>] [HANDLE <nHandle>] ;
  313.                   [TOSCREEN <lToScreen>] [YESNO <lYesNo>];
  314.            => ;
  315.            twSay( <nRow>, <nCol>, <xOutput>, <cAttr>, <cPicture>, ;
  316.                   <nHandle>, <lYesNo>, <lToScreen> )
  317.  
  318. #xcommand  WINSAY2 <cString> AT <nRow>, <nCol> [COLOR <cAttr>];
  319.                    [HANDLE <nHandle>] [TOSCREEN <lToScreen>] ;
  320.            => ;
  321.            twSay2( <nRow>, <nCol>, <cString>, <cAttr>, ;
  322.                    <nHandle>, <lToScreen> )
  323.  
  324. #xcommand  WINSAYARRAY <aStrings> AT <nRow>, <nCol> [COLOR <cAttr>];
  325.                        [ROWSKIP <nRowSkip>];
  326.                        [HANDLE <nHandle>] [TOSCREEN <lToScreen>] ;
  327.            => ;
  328.            twASay( <aStrings>, <nRow>, <nCol>, <cAttr>,;
  329.                    <nRowSkip>, <nHandle>, <lToScreen> )
  330.  
  331.  
  332. #xcommand  WINCENTER <xOutput> AT <nRow> [COLOR <cAttr>] ;
  333.                      [PICTURE <cPicture>] [HANDLE <nHandle>] ;
  334.                      [TOSCREEN <lToScreen>] [YESNO <lYesNo>];
  335.            => ;
  336.            twCenter( <nRow>, <xOutput>, <cAttr>, <cPicture>, ;
  337.                      <nHandle>, <lYesNo>, <lToScreen> )
  338.  
  339. #xcommand  WINCENTRE <xOutput> AT <nRow> [COLOR <cAttr>] ;
  340.                      [PICTURE <cPicture>] [HANDLE <nHandle>] ;
  341.                      [TOSCREEN <lToScreen>] [YESNO <lYesNo>];
  342.            => ;
  343.            twCenter( <nRow>, <xOutput>, <cAttr>, <cPicture>, ;
  344.                      <nHandle>, <lYesNo>, <lToScreen> )
  345.  
  346. #xcommand  WINLEFT <xOutput> AT <nRow> [COLOR <cAttr>] ;
  347.                    [PICTURE <cPicture>] [HANDLE <nHandle>] ;
  348.                    [TOSCREEN <lToScreen>] [YESNO <lYesNo>];
  349.            => ;
  350.            twLeft( <nRow>, <xOutput>, <cAttr>, <cPicture>, ;
  351.                    <nHandle>, <lYesNo>, <lToScreen> )
  352.  
  353. #xcommand  WINRIGHT <xOutput> AT <nRow> [COLOR <cAttr>] ;
  354.                     [PICTURE <cPicture>] [HANDLE <nHandle>] ;
  355.                     [TOSCREEN <lToScreen>] [YESNO <lYesNo>];
  356.            => ;
  357.            twRight( <nRow>, <xOutput>, <cAttr>, <cPicture>, ;
  358.                     <nHandle>, <lYesNo>, <lToScreen> )
  359.  
  360. #xcommand  WINTYPE <cString> AT <nRow>, <nCol> ;
  361.                    [COLOR <cAttr>] [SOUND <lSound>];
  362.            => ;
  363.            twType( <nRow>, <nCol>, <cString>, <cAttr>, <lSound> )
  364.  
  365. #xcommand  STRINGSLIDE <cString> AT <nRow>, <nCol> ;
  366.                         DIRECTION <cDirection> [COLOR <cColor>];
  367.                         [DELAY <nDelay>];
  368.            => ;
  369.            twStrSlide( <cDirection>, <nRow>, <nCol>, <cString>, ;
  370.                        <cColor>, <nDelay> )
  371.  
  372. #xcommand  WINMOVE [VERT <nVert>] [HORIZ <nHorz>] [HANDLE <nHandle>];
  373.            => ;
  374.            twMove( <nVert>, <nHorz>, <nHandle> )
  375.  
  376. #xcommand  WINSIZE DIRECTION <cDirection> [NUMBER <nNum2Size>];
  377.                    [CONTINUOUS <lContinuous>];
  378.            => ;
  379.            twSize( <cDirection>, <nNum2Size>,, <lContinuous> )
  380.  
  381. #xcommand  WINSLIDE DIRECTION <cDirection> [NUMBER <nNumber>];
  382.                     [SHADOW <lShadow>];
  383.            => ;
  384.            twSlide( <cDirection>, <nNumber>, <lShadow> )
  385. /*
  386. ┌──────────────────────────────────────────────────────────────────────────
  387. │ Menu and SAY.. GET.. Commands
  388. └──────────────────────────────────────────────────────────────────────────
  389. */
  390. #command  @ <row>, <col> WSAY <cexpr> [COLOR <cColor>] [PICTURE <picture>];
  391.           => ;
  392.           twSay( <row>, <col>, <cexpr>, <cColor>, <picture> )
  393.  
  394. #command @ <row>, <col> WPROMPT <prompt> [MESSAGE <msg>] [COLOR <cColor>] ;
  395.         [WHEN <when>] [ACTION <action>];
  396.         =>;
  397.         IIF( aMenu == NIL, aMenu := {}, NIL )            ;
  398.         ;AADD( aMenu, { twRow( <row> ), twCol( <col> ), <prompt>, ;
  399.                         <msg>, <cColor>, <{when}>, <{action}> })
  400.  
  401. #ifdef NOMOUSE
  402.  
  403.     #command WMENU TO <v> [HELPVAR <cHelpVar>] [HELPLEVEL <nHelpLevel>] ;
  404.         => <v> := ntwMenuTo( {|_1| if(PCount() == 0, <v>, <v> := _1)},  ;
  405.                              #<v>, aMenu, #<cHelpVar>, <nHelpLevel> )        ;
  406.             ;aMenu := {}
  407.  
  408. #else
  409.  
  410.     #command WMENU TO <v> [HELPVAR <cHelpVar>] [HELPLEVEL <nHelpLevel>] ;
  411.         => <v> := twMenuTo( {|_1| if(PCount() == 0, <v>, <v> := _1)},   ;
  412.                             #<v>, aMenu, #<cHelpVar>, <nHelpLevel> )         ;
  413.             ;aMenu := {}
  414.  
  415. #endif
  416. /*
  417. ┌──────────────────────────────────────────────────────────────────────────
  418. │ Message Systems Commands
  419. └──────────────────────────────────────────────────────────────────────────
  420. */
  421. #ifdef NOMOUSE
  422.     /*
  423.     ┌──────────────────────────────────────────────────────────────────────────
  424.     │ Area Messages
  425.     └──────────────────────────────────────────────────────────────────────────
  426.     */
  427.  
  428.     #command  WARNLINE <InMsg> [WAIT <nWait>] ;
  429.                        [JUSTIFY <cJust>]      ;
  430.                        [LINE    <nLine>]      ;
  431.               => ;
  432.               ntwWarnLine( <nWait>, <InMsg>, <cJust>, <nLine> )
  433.  
  434.     #command  INFOLINE <InMsg> [WAIT <nWait>] ;
  435.                        [JUSTIFY <cJust>]      ;
  436.                        [LINE    <nLine>]      ;
  437.               => ;
  438.               ntwInfoLine( <nWait>, <InMsg>, <cJust>, <nLine> )
  439.  
  440.     #command  POPLINE => ntwAMPop()
  441.     /*
  442.     ┌──────────────────────────────────────────────────────────────────────────
  443.     │ Boxed Messages
  444.     └──────────────────────────────────────────────────────────────────────────
  445.     */
  446.     #command INFORM <cMessage>               ;
  447.                     [HEADER    <cHeader>]    ;
  448.                     [WAIT      <nWait>]      ;
  449.                     [TOP       <nTop>]       ;
  450.                     [LEFT      <nLeft>]      ;
  451.                     [SHADOW    <nShadow>]    ;
  452.                     [FRAME     <nFrame>]     ;
  453.                     [HELPVAR   <cHelpVar>]   ;
  454.                     [HELPLEVEL <nHelpLevel>] ;
  455.             => ;
  456.             ntwInfo( <cMessage>, <cHeader>, <nWait>, <nTop>, <nLeft>, ;
  457.                     <nShadow>, <nFrame>, <cHelpVar>, <nHelpLevel> )
  458.  
  459.     #command INQUIRE <cMessage> TO <getvar>   ;
  460.                      [HEADER <cHeader>]       ;
  461.                      [TOP <nTop>]             ;
  462.                      [LEFT <nLeft>]           ;
  463.                      [SHADOW <nShadow>]       ;
  464.                      [FRAME <nFrame>]         ;
  465.                      [PICTURE <cPicture>]     ;
  466.                      [HELPVAR <cHelpVar>]     ;
  467.                      [HELPLEVEL <nHelpLevel>] ;
  468.             => ;
  469.             <getvar> := ntwInquire( <cMessage>, <cHeader>, <getvar>, ;
  470.                                     <nTop>,<nLeft>, <nShadow>, ;
  471.                                     <nFrame>, <cPicture>, <cHelpVar>, ;
  472.                                     <nHelpLevel> )
  473.  
  474.     #command WARNING <cMessage> [HEADER <cHeader>] ;
  475.                      [WAIT <nWait>]                ;
  476.                      [TOP <nTop>]                  ;
  477.                      [LEFT <nLeft>]                ;
  478.                      [SHADOW <nShadow>]            ;
  479.                      [FRAME <nFrame>]              ;
  480.                      [HELPVAR <cHelpVar>]          ;
  481.                      [HELPLEVEL <nHelpLevel>]      ;
  482.             => ;
  483.             ntwWarn( <cMessage>, <cHeader>, <nWait>, <nTop>, <nLeft>, ;
  484.                     <nShadow>, <nFrame>, <cHelpVar>, <nHelpLevel> )
  485.  
  486.     #command MSGTEXT <cMessage>               ;
  487.                      [HEADER <cHeader>]       ;
  488.                      [WAIT <nWait>]           ;
  489.                      [<nTop>], [<nLeft>],     ;
  490.                      [<nBottom>], [<nRight>]  ;
  491.                      [COLOR <cColor>]         ;
  492.                      [SHADOW <nShadow>]       ;
  493.                      [FRAME <nFrame>]         ;
  494.                      [FOOTER <cFooter>]       ;
  495.                      [PRERUN <bPreRun>]       ;
  496.                      [HELPVAR <cHelpVar>]     ;
  497.                      [HELPLEVEL <nHelpLevel>] ;
  498.             => ;
  499.             ntwTextMsg( <cMessage>, <cHeader>, <nWait>, <nTop>, <nLeft>, ;
  500.                         <nBottom>, <nRight>, <cColor>, <nShadow>, ;
  501.                         <nFrame>, <cFooter>, <bPreRun>, <cHelpVar>, ;
  502.                         <nHelpLevel> )
  503.  
  504.     #command POPMSG => ntwMPop()
  505.     /*
  506.     ┌──────────────────────────────────────────────────────────────────────────
  507.     │ Alert System Commands
  508.     └──────────────────────────────────────────────────────────────────────────
  509.     */
  510.     #command BUTTONBOX [<orient:H,V>] TO <xVar>                        ;
  511.                        [MESSAGE    <cMessage>]                         ;
  512.                        [TITLE      <cTitle>]                           ;
  513.                        [WITH <nButtons> BUTTONS]                       ;
  514.                        [CHOICES    <aChoices>]                         ;
  515.                        [START      <nStart>]                           ;
  516.                        AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  517.                        [SHADOW     <nShadow>]                          ;
  518.                        [FRAME      <nFrame>]                           ;
  519.                        [EXITKEY    <xExitKey>]                         ;
  520.                        [ACTIONKEYS <aActionKeys>]                      ;
  521.                        [PRERUN     <bPreRun>]                          ;
  522.                        [POSTRUN    <bPostRun>]                         ;
  523.                        [HELPVAR    <cHelpVar>]                         ;
  524.                        [HELPLEVEL  <nHelpLevel>]                       ;
  525.             => ;
  526.             <xVar> := ntwButtonBox( <"orient">, <cMessage>, <cTitle>, ;
  527.                            <nButtons>, <aChoices>, <nStart>, <nTop>, ;
  528.                            <nLeft>, <nBottom>, <nRight>, <nShadow>, ;
  529.                            <nFrame>, <xExitKey>, <aActionKeys>,;
  530.                            <bPreRun>, <bPostRun>, <cHelpVar>, <nHelpLevel> )
  531.  
  532.     #command CHECKBOX [<orient:H,V>] TO <xVar>                        ;
  533.                       [MESSAGE    <cMessage>]                         ;
  534.                       [TITLE      <cTitle>]                           ;
  535.                       [WITH <nButtons> BUTTONS]                       ;
  536.                       [CHOICES    <aChoices>]                         ;
  537.                       [START      <nStart>]                           ;
  538.                       AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  539.                       [SHADOW     <nShadow>]                          ;
  540.                       [FRAME      <nFrame>]                           ;
  541.                       [EXITKEY    <xExitKey>]                         ;
  542.                       [ACTIONKEYS <aActionKeys>]                      ;
  543.                       [PRERUN     <bPreRun>]                          ;
  544.                       [POSTRUN    <bPostRun>]                         ;
  545.                       [HELPVAR    <cHelpVar>]                         ;
  546.                       [HELPLEVEL  <nHelpLevel>]                       ;
  547.             => ;
  548.             <xVar> := ntwCheckBox( <"orient">, <cMessage>, <cTitle>, ;
  549.                         <nButtons>, <aChoices>, <nStart>, <nTop>, <nLeft>, ;
  550.                         <nBottom>, <nRight>, <nShadow>, <nFrame>, ;
  551.                         <xExitKey>, <aActionKeys>, <bPreRun>, <bPostRun>, ;
  552.                         <cHelpVar>, <nHelpLevel> )
  553.  
  554.     #command RADIOBOX [<orient:H,V>] TO <xVar>                        ;
  555.                       [MESSAGE    <cMessage>]                         ;
  556.                       [TITLE      <cTitle>]                           ;
  557.                       [WITH <nButtons> BUTTONS]                       ;
  558.                       [CHOICES    <aChoices>]                         ;
  559.                       [START      <nStart>]                           ;
  560.                       AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  561.                       [SHADOW     <nShadow>]                          ;
  562.                       [FRAME      <nFrame>]                           ;
  563.                       [EXITKEY    <xExitKey>]                         ;
  564.                       [ACTIONKEYS <aActionKeys>]                      ;
  565.                       [PRERUN     <bPreRun>]                          ;
  566.                       [POSTRUN    <bPostRun>]                         ;
  567.                       [HELPVAR    <cHelpVar>]                         ;
  568.                       [HELPLEVEL  <nHelpLevel>]                       ;
  569.             => ;
  570.             <xVar> := ntwRadioBox( <"orient">, <cMessage>, <cTitle>, ;
  571.                         <nButtons>, <aChoices>, <nStart>, <nTop>, <nLeft>, ;
  572.                         <nBottom>, <nRight>, <nShadow>, <nFrame>, <xExitKey>,;
  573.                         <aActionKeys>, <bPreRun>, <bPostRun>, <cHelpVar>, ;
  574.                         <nHelpLevel> )
  575. #else
  576.     /*
  577.     ┌──────────────────────────────────────────────────────────────────────────
  578.     │ Area Messages
  579.     └──────────────────────────────────────────────────────────────────────────
  580.     */
  581.  
  582.     #command  WARNLINE <InMsg> [WAIT <nWait>] ;
  583.                        [JUSTIFY <cJust>]      ;
  584.                        [LINE    <nLine>]      ;
  585.               => ;
  586.               twWarnLine( <nWait>, <InMsg>, <cJust>, <nLine> )
  587.  
  588.     #command  INFOLINE <InMsg> [WAIT <nWait>] ;
  589.                        [JUSTIFY <cJust>]      ;
  590.                        [LINE    <nLine>]      ;
  591.               => ;
  592.               twInfoLine( <nWait>, <InMsg>, <cJust>, <nLine> )
  593.  
  594.     #command  POPLINE => twAMPop()
  595.     /*
  596.     ┌──────────────────────────────────────────────────────────────────────────
  597.     │ Boxed Messages
  598.     └──────────────────────────────────────────────────────────────────────────
  599.     */
  600.     #command INFORM <cMessage>               ;
  601.                     [HEADER    <cHeader>]    ;
  602.                     [WAIT      <nWait>]      ;
  603.                     [TOP       <nTop>]       ;
  604.                     [LEFT      <nLeft>]      ;
  605.                     [SHADOW    <nShadow>]    ;
  606.                     [FRAME     <nFrame>]     ;
  607.                     [HELPVAR   <cHelpVar>]   ;
  608.                     [HELPLEVEL <nHelpLevel>] ;
  609.             => ;
  610.             twInfo( <cMessage>, <cHeader>, <nWait>, <nTop>, <nLeft>, ;
  611.                     <nShadow>, <nFrame>, <cHelpVar>, <nHelpLevel> )
  612.  
  613.     #command INQUIRE <cMessage> TO <getvar>   ;
  614.                      [HEADER <cHeader>]       ;
  615.                      [TOP <nTop>]             ;
  616.                      [LEFT <nLeft>]           ;
  617.                      [SHADOW <nShadow>]       ;
  618.                      [FRAME <nFrame>]         ;
  619.                      [PICTURE <cPicture>]     ;
  620.                      [HELPVAR <cHelpVar>]     ;
  621.                      [HELPLEVEL <nHelpLevel>] ;
  622.             => ;
  623.             <getvar> := twInquire( <cMessage>, <cHeader>, <getvar>, ;
  624.                                     <nTop>,<nLeft>, <nShadow>, ;
  625.                                     <nFrame>, <cPicture>, <cHelpVar>, ;
  626.                                     <nHelpLevel> )
  627.  
  628.     #command WARNING <cMessage> [HEADER <cHeader>] ;
  629.                      [WAIT <nWait>]                ;
  630.                      [TOP <nTop>]                  ;
  631.                      [LEFT <nLeft>]                ;
  632.                      [SHADOW <nShadow>]            ;
  633.                      [FRAME <nFrame>]              ;
  634.                      [HELPVAR <cHelpVar>]          ;
  635.                      [HELPLEVEL <nHelpLevel>]      ;
  636.             => ;
  637.             twWarn( <cMessage>, <cHeader>, <nWait>, <nTop>, <nLeft>, ;
  638.                     <nShadow>, <nFrame>, <cHelpVar>, <nHelpLevel> )
  639.  
  640.     #command MSGTEXT <cMessage>               ;
  641.                      [HEADER <cHeader>]       ;
  642.                      [WAIT <nWait>]           ;
  643.                      [<nTop>], [<nLeft>],     ;
  644.                      [<nBottom>], [<nRight>]  ;
  645.                      [COLOR <cColor>]         ;
  646.                      [SHADOW <nShadow>]       ;
  647.                      [FRAME <nFrame>]         ;
  648.                      [FOOTER <cFooter>]       ;
  649.                      [PRERUN <bPreRun>]       ;
  650.                      [HELPVAR <cHelpVar>]     ;
  651.                      [HELPLEVEL <nHelpLevel>] ;
  652.             => ;
  653.             twTextMsg( <cMessage>, <cHeader>, <nWait>, <nTop>, <nLeft>, ;
  654.                         <nBottom>, <nRight>, <cColor>, <nShadow>, ;
  655.                         <nFrame>, <cFooter>, <bPreRun>, <cHelpVar>, ;
  656.                         <nHelpLevel> )
  657.  
  658.     #command POPMSG => twMPop()
  659.     /*
  660.     ┌──────────────────────────────────────────────────────────────────────────
  661.     │ Alert System Commands
  662.     └──────────────────────────────────────────────────────────────────────────
  663.     */
  664.     #command BUTTONBOX [<orient:H,V>] TO <xVar>                        ;
  665.                        [MESSAGE    <cMessage>]                         ;
  666.                        [TITLE      <cTitle>]                           ;
  667.                        [WITH <nButtons> BUTTONS]                       ;
  668.                        [CHOICES    <aChoices>]                         ;
  669.                        [START      <nStart>]                           ;
  670.                        AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  671.                        [SHADOW     <nShadow>]                          ;
  672.                        [FRAME      <nFrame>]                           ;
  673.                        [EXITKEY    <xExitKey>]                         ;
  674.                        [ACTIONKEYS <aActionKeys>]                      ;
  675.                        [PRERUN     <bPreRun>]                          ;
  676.                        [POSTRUN    <bPostRun>]                         ;
  677.                        [HELPVAR    <cHelpVar>]                         ;
  678.                        [HELPLEVEL  <nHelpLevel>]                       ;
  679.             => ;
  680.             <xVar> := twButtonBox( <"orient">, <cMessage>, <cTitle>, ;
  681.                            <nButtons>, <aChoices>, <nStart>, <nTop>, ;
  682.                            <nLeft>, <nBottom>, <nRight>, <nShadow>, ;
  683.                            <nFrame>, <xExitKey>, <aActionKeys>,;
  684.                            <bPreRun>, <bPostRun>, <cHelpVar>, <nHelpLevel> )
  685.  
  686.     #command CHECKBOX [<orient:H,V>] TO <xVar>                        ;
  687.                       [MESSAGE    <cMessage>]                         ;
  688.                       [TITLE      <cTitle>]                           ;
  689.                       [WITH <nButtons> BUTTONS]                       ;
  690.                       [CHOICES    <aChoices>]                         ;
  691.                       [START      <nStart>]                           ;
  692.                       AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  693.                       [SHADOW     <nShadow>]                          ;
  694.                       [FRAME      <nFrame>]                           ;
  695.                       [EXITKEY    <xExitKey>]                         ;
  696.                       [ACTIONKEYS <aActionKeys>]                      ;
  697.                       [PRERUN     <bPreRun>]                          ;
  698.                       [POSTRUN    <bPostRun>]                         ;
  699.                       [HELPVAR    <cHelpVar>]                         ;
  700.                       [HELPLEVEL  <nHelpLevel>]                       ;
  701.             => ;
  702.             <xVar> := twCheckBox( <"orient">, <cMessage>, <cTitle>, ;
  703.                         <nButtons>, <aChoices>, <nStart>, <nTop>, <nLeft>, ;
  704.                         <nBottom>, <nRight>, <nShadow>, <nFrame>, ;
  705.                         <xExitKey>, <aActionKeys>, <bPreRun>, <bPostRun>, ;
  706.                         <cHelpVar>, <nHelpLevel> )
  707.  
  708.     #command RADIOBOX [<orient:H,V>] TO <xVar>                        ;
  709.                       [MESSAGE    <cMessage>]                         ;
  710.                       [TITLE      <cTitle>]                           ;
  711.                       [WITH <nButtons> BUTTONS]                       ;
  712.                       [CHOICES    <aChoices>]                         ;
  713.                       [START      <nStart>]                           ;
  714.                       AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  715.                       [SHADOW     <nShadow>]                          ;
  716.                       [FRAME      <nFrame>]                           ;
  717.                       [EXITKEY    <xExitKey>]                         ;
  718.                       [ACTIONKEYS <aActionKeys>]                      ;
  719.                       [PRERUN     <bPreRun>]                          ;
  720.                       [POSTRUN    <bPostRun>]                         ;
  721.                       [HELPVAR    <cHelpVar>]                         ;
  722.                       [HELPLEVEL  <nHelpLevel>]                       ;
  723.             => ;
  724.             <xVar> := twRadioBox( <"orient">, <cMessage>, <cTitle>, ;
  725.                         <nButtons>, <aChoices>, <nStart>, <nTop>, <nLeft>, ;
  726.                         <nBottom>, <nRight>, <nShadow>, <nFrame>, <xExitKey>,;
  727.                         <aActionKeys>, <bPreRun>, <bPostRun>, <cHelpVar>, ;
  728.                         <nHelpLevel> )
  729. #endif
  730. /*
  731. ┌──────────────────────────────────────────────────────────────────────────
  732. │ Browse System Commands
  733. └──────────────────────────────────────────────────────────────────────────
  734. */
  735. #command BROWSEARRAY <array>                                         ;
  736.                      AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  737.                      [TITLE      <cTitle>]                           ;
  738.                      [HEADERS    <headers>]                          ;
  739.                      [FOOTERS    <footers>]                          ;
  740.                      [EDIT       <lEdit>]                            ;
  741.                      [ACTIONKEYS <aActionKeys>]                      ;
  742.                      [COLOR      <cColor>]                           ;
  743.                      [SHADOW     <nShadow>]                          ;
  744.                      [FRAME      <nFrame>]                           ;
  745.                      [FRAMECOLOR <cFColor>]                          ;
  746.                      [AUTOLITE   <lAutoLite>]                        ;
  747.                      [FREEZE     <nFreeze>]                          ;
  748.                      [HELPVAR    <cHelpVar>]                         ;
  749.                      [HELPLEVEL  <nHelpLevel>]                       ;
  750.          => ;
  751.          twArBrowse( <nTop>, <nLeft>, <nBottom>, <nRight>, ;
  752.                      <array> , <cTitle>, <headers>, <footers>, ;
  753.                      <lEdit>, <aActionKeys>, <cColor>, <nShadow>, ;
  754.                      <nFrame>, <cFColor>, <lAutoLite>, <nFreeze>, ;
  755.                      <cHelpVar>, <nHelpLevel> )
  756.  
  757. #command BROWSEARRAY <array> TO <xVar>                               ;
  758.                      AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  759.                      [TITLE      <cTitle>]                           ;
  760.                      [HEADERS    <headers>]                          ;
  761.                      [FOOTERS    <footers>]                          ;
  762.                      [EDIT       <lEdit>]                            ;
  763.                      [ACTIONKEYS <aActionKeys>]                      ;
  764.                      [COLOR      <cColor>]                           ;
  765.                      [SHADOW     <nShadow>]                          ;
  766.                      [FRAME      <nFrame>]                           ;
  767.                      [FRAMECOLOR <cFColor>]                          ;
  768.                      [AUTOLITE   <lAutoLite>]                        ;
  769.                      [FREEZE     <nFreeze>]                          ;
  770.                      [HELPVAR    <cHelpVar>]                         ;
  771.                      [HELPLEVEL  <nHelpLevel>]                       ;
  772.          => ;
  773.          <xVar> := twArBrowse( <nTop>, <nLeft>, <nBottom>, <nRight>, ;
  774.                       <array> , <cTitle>, <headers>, <footers>, ;
  775.                       <lEdit>, <aActionKeys>, <cColor>, <nShadow>, ;
  776.                       <nFrame>, <cFColor>, ;
  777.                       <lAutoLite>, <nFreeze>, <cHelpVar>, <nHelpLevel> )
  778.  
  779. #command BROWSEDBF AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  780.                    [COLUMNS     <aColumns>]                        ;
  781.                    [TITLE       <cTitle>]                          ;
  782.                    [FOOTERS     <footers>]                         ;
  783.                    [TOPBLOCK    <bTopBlock>]                       ;
  784.                    [BOTTOMBLOCK <bBotBlock>]                       ;
  785.                    [SCOPEBLOCK  <bScopelock>]                      ;
  786.                    [EDIT        <lEdit>]                           ;
  787.                    [ACTIONKEYS  <aActionKeys>]                     ;
  788.                    [COLOR       <cColor>]                          ;
  789.                    [SHADOW       <nShadow>]                        ;
  790.                    [FRAME       <nFrame>]                          ;
  791.                    [FRAMECOLOR  <cFColor>]                         ;
  792.                    [SCROLLBAR   <scrollbar>]                       ;
  793.                    [MESSAGES    <messages>]                        ;
  794.                    [AUTOLITE    <lAutoLite>]                       ;
  795.                    [FREEZE      <nFreeze>]                         ;
  796.                    [STABILIZE   <stabilize>]                       ;
  797.                    [HELPVAR     <cHelpVar>]                        ;
  798.                    [HELPLEVEL   <nHelpLevel>]                      ;
  799.          => ;
  800.          twDBrowse( <nTop>, <nLeft>, <nBottom>, <nRight>, ;
  801.             <aColumns>, <cTitle>, <footers>, <bTopBlock>, ;
  802.             <bBotBlock>, <bScopelock>, <lEdit>, <aActionKeys>, ;
  803.             <cColor>, <nShadow>, <nFrame>, <cFColor>, <scrollbar>, ;
  804.             <messages>, <lAutoLite>, <nFreeze>, <stabilize>, ;
  805.             <cHelpVar>, <nHelpLevel> )
  806.  
  807. #command BROWSEDBF TO <xVar>                                       ;
  808.                    AT [<nTop>], [<nLeft>], [<nBottom>], [<nRight>] ;
  809.                    [COLUMNS     <aColumns>]                        ;
  810.                    [TITLE       <cTitle>]                          ;
  811.                    [FOOTERS     <footers>]                         ;
  812.                    [TOPBLOCK    <bTopBlock>]                       ;
  813.                    [BOTTOMBLOCK <bBotBlock>]                       ;
  814.                    [SCOPEBLOCK  <bScopelock>]                      ;
  815.                    [EDIT        <lEdit>]                           ;
  816.                    [ACTIONKEYS  <aActionKeys>]                     ;
  817.                    [COLOR       <cColor>]                          ;
  818.                    [SHADOW      <nShadow>]                         ;
  819.                    [FRAME       <nFrame>]                          ;
  820.                    [FRAMECOLOR  <cFColor>]                         ;
  821.                    [SCROLLBAR   <scrollbar>]                       ;
  822.                    [MESSAGES    <messages>]                        ;
  823.                    [AUTOLTE     <autolte>]                         ;
  824.                    [FREEZE      <nFreeze>]                         ;
  825.                    [STABILIZE   <stabilize>]                       ;
  826.                    [HELPVAR     <cHelpVar>]                        ;
  827.                    [HELPLEVEL   <nHelpLevel>]                      ;
  828.          => ;
  829.          <xVar> := twDBrowse( <nTop>, <nLeft>, <nBottom>, <nRight>, ;
  830.                       <aColumns>, <cTitle>, <footers>, <bTopBlock>, ;
  831.                       <bBotBlock>, <bScopelock>, <lEdit>, <aActionKeys>, ;
  832.                       <cColor>, <nShadow>, <nFrame>, <cFColor>, ;
  833.                       <scrollbar>, <messages>, <autolte>, ;
  834.                       <nFreeze>, <stabilize>, <cHelpVar>, <nHelpLevel> )
  835. /*
  836. ┌──────────────┬───────────────────────────────────────────────────────┐
  837. │ Program Name │ TsdUdc01.ch                                           │
  838. │ Version      │ 1.0 (Clipper 5.01)                                    │
  839. │ Copyright    │ Trilateral Systems Development Ltd.                   │
  840. │ Author       │ James O. Bohanan Jr. / B-Three Information Systems.   │
  841. │ Date         │ 10/26/92                                              │
  842. └──────────────┴───────────────────────────────────────────────────────┘
  843. //  Memo Edit Function ( twMemoEdit() )
  844. #command  TSD MEMO EDIT <nTop>, <nLeft>, <nBottom>, <nRight> TO <cMemo> ;
  845.                         [TITLE      <cTitle>]                 ;
  846.                         [FOOTER     <cFooter>]                ;
  847.                         [UDF        <cUdf>]                   ;
  848.                         [ACTIONKEYS <aActKeys>]               ;
  849.                         [WINCOLOR   <cColor>]                 ;
  850.                         [SHADOW     <wShadow>]                ;
  851.                         [FRAME      <wFrame>]                 ;
  852.                         [FCOLOR     <FColor>]                 ;
  853.                         [MESSAGE    <lMsg>]                   ;
  854.                         [WRAP       <lWrap>]                  ;
  855.                         [EDIT       <lEditMode>]              ;
  856.                         [WIDTH      <nLineLength>]            ;
  857.                         [TAB        <nTabSize>]               ;
  858.                         [BUFFROW    <nTBurRow>]               ;
  859.                         [BUFFCOL    <nTBurCol>]               ;
  860.                         [WINROW     <nWinRow>]                ;
  861.                         [WINCOL     <nWinCol>]                ;
  862.                         [SCROLL     <lScrBar>]                ;
  863.                         [WINDOW     <lWindow>]                ;
  864.                         [PRERUN     <bPreRun>]                ;
  865.                         [POSTRUN    <bPostRun>]               ;
  866.                         [HELPVAR    <cHelpVar>]               ;
  867.                         [HELPLEVEL  <nHelpLevel>]             ;
  868. => ;
  869.  <cMemo> := twMemoEdit(<nTop>, <nLeft>, <nBottom>, <nRight>, <cMemo>,      ;
  870.                        <cTitle>, <cFooter>, <cUdf>, <aActKeys>, <cColor>,  ;
  871.                        <wShadow>, <wFrame>, <FColor>, <lMsg>, <lWrap>,     ;
  872.                        <lEditMode>, <nLineLength>, <nTabSize>, <nTBufRow>, ;
  873.                        <nTBufCol>, <nWinRow>, <nWinCol>, <lScrBar>,        ;
  874.                        <lWindow>, <bPreRun>, <bPostRun>, <cHelpVar>, ;
  875.                        <nHelpLevel>)
  876. //──────────────────────────────────────────────────────────────────────────
  877. // Browse Full Array  ( twRABrowse() )
  878.  
  879. #command RABROWSETO  <nTop>, <nLeft>, ;
  880.                      <nBottom>, <nRight> TO <nChoice>   ;
  881.                      ARRAY   <aArray>        ;
  882.                      COLUMNS <aColumns>      ;
  883.                      [TITLE         <cTitle>]      ;
  884.                      [EDIT          <lEditFlag>]   ;
  885.                      [ACTIONKEYS    <aActKeys>]    ;
  886.                      [COLOR         <cColor>]      ;
  887.                      [SHADOW        <wShadow>]     ;
  888.                      [FRAME         <wFrame>]      ;
  889.                      [FCOLOR        <FColor>]      ;
  890.                      [SCROLLBAR     <lScrBar>]     ;
  891.                      [AUTOLITE      <lAutoLite>]   ;
  892.                      [FREEZE        <nFreeze>]     ;
  893.                      [STABILIZE     <lStabilize>]  ;
  894.                      [PRERUN        <bPreRun>]     ;
  895.                      [POSTRUN       <bPostRun>]    ;
  896.                      [EXITKEY       <nExitKey>]    ;
  897.                      [BAR           <lBarOn>]      ;
  898.                      [SEPARATORS    <aSeparators>] ;
  899.                      [APPENDBROWSE  <aAppend>]     ;
  900.                      [SOUND         <lSound>]      ;
  901.                      [WINDOW        <lWindow>]     ;
  902.                      [BARCOLOR      <bBarColor>]   ;
  903.                      [HELPVAR       <cHelpVar>]    ;
  904.                      [HELPLEVEL     <nHelpLevel>]  ;
  905. =>        ;
  906.  <nChoice> := twRABrowse(<nTop>, <nLeft>, <nBottom>, <nRight>, <aArray>,   ;
  907.                          <aColumns>, <cTitle>, <lEditFlag>, <aActKeys>,    ;
  908.                          <cColor>, <wShadow>, <wFrame>, <FColor>,          ;
  909.                          <lScrBar>, <lAutoLite>, <nFreeze>, <lStabilize>,  ;
  910.                          <bPreRun>, <bPostRun>, <nExitKey>, <lBarOn>,      ;
  911.                          <aSeparators>, <aAppend>, <lSound>, <lWindow>,    ;
  912.                          <bBarColor>, <cHelpVar>, <nHelpLevel>)
  913.  
  914. #command RABROWSE <nTop>, <nLeft>, <nBottom>, <nRight> ;
  915.                   ARRAY <aArray> COLUMNS <aColumns>     ;
  916.                   [TITLE         <cTitle>]      ;
  917.                   [EDIT          <lEditFlag>]   ;
  918.                   [ACTIONKEYS    <aActKeys>]    ;
  919.                   [COLOR         <cColor>]      ;
  920.                   [SHADOW        <wShadow>]     ;
  921.                   [FRAME         <wFrame>]      ;
  922.                   [FCOLOR        <FColor>]      ;
  923.                   [SCROLLBAR     <lScrBar>]     ;
  924.                   [AUTOLITE      <lAutoLite>]   ;
  925.                   [FREEZE        <nFreeze>]     ;
  926.                   [STABILIZE     <lStabilize>]  ;
  927.                   [PRERUN        <bPreRun>]     ;
  928.                   [POSTRUN       <bPostRun>]    ;
  929.                   [EXITKEY       <nExitKey>]    ;
  930.                   [BAR           <lBarOn>]      ;
  931.                   [SEPARATORS    <aSeparators>] ;
  932.                   [APPENDBROWSE  <aAppend>]     ;
  933.                   [SOUND         <lSound>]      ;
  934.                   [WINDOW        <lWindow>]     ;
  935.                   [BARCOLOR      <bBarColor>]   ;
  936.                   [HELPVAR       <cHelpVar>]    ;
  937.                   [HELPLEVEL     <nHelpLevel>]  ;
  938. =>        ;
  939.  twRABrowse(<nTop>, <nLeft>, <nBottom>, <nRight>, <aArray>,   ;
  940.             <aColumns>, <cTitle>, <lEditFlag>, <aActKeys>,    ;
  941.             <cColor>, <wShadow>, <wFrame>, <FColor>,          ;
  942.             <lScrBar>, <lAutoLite>, <nFreeze>, <lStabilize>,  ;
  943.             <bPreRun>, <bPostRun>, <nExitKey>, <lBarOn>,      ;
  944.             <aSeparators>, <aAppend>, <lSound>, <lWindow>,    ;
  945.             <bBarColor>, <cHelpVar>, <nHelpLevel>)
  946.  
  947. #command RACOLUMN <aColumns>                      ;
  948.                   [COLUMN      <nColNumber>] ;
  949.                   [HEADING     <cHead>]      ;
  950.                   [WIDTH       <nWID>]       ;
  951.                   [FOOTER      <cFooter>]    ;
  952.                   [EDIT        <lEdit>]      ;
  953.                   [PICTURE     <cPICTURE>]   ;
  954.                   [WHEN        <bWhen>]      ;
  955.                   [VALID       <bValid>]     ;
  956.                   [READER      <bReader>]    ;
  957.                   [COLOR       <aClr>]       ;
  958.                   [COLORBLOCK  <bClr>]       ;
  959.                   [COLSEP      <cCSep>]      ;
  960.                   [HEADSEP     <cHSep>]      ;
  961.                   [FOOTSEP     <cFSep>]      ;
  962. =>           ;
  963.    AAdd(<aColumns>, <cHead>, <nColNumber>, <nWid>, <cFooter>, <lEdit>,     ;
  964.                     <cPicture>, <bWhen>, <bValid>, <bReader>, <aClr>,      ;
  965.                     <bClr>, <cCSep>, <cHSep>, <cFSep>)
  966. //──────────────────────────────────────────────────────────────────────────
  967. #command BRBROWSETO <nTop>, <nLeft>, <nBottom>, <nRight>  ;
  968.                     TO <nChoice>                          ;
  969.                     COLUMNS       <aColumns>              ;
  970.                     [TITLE        <cTitle>]               ;
  971.                     [TOPKEY       <cTopKey>]              ;
  972.                     [SCOPEBLOCK   <bScopeBlock>]          ;
  973.                     [EDIT         <lEditFlag>]            ;
  974.                     [ACTIONKEYS   <aActionKeys>]          ;
  975.                     [COLOR        <cColor>]               ;
  976.                     [SHADOW       <nShadow>]              ;
  977.                     [FRAME        <nFrame>]               ;
  978.                     [FCOLOR       <cFColor>]              ;
  979.                     [SCROLLBAR    <lScBar>]               ;
  980.                     [MESSAGES     <lMsgs>]                ;
  981.                     [AUTOLITE     <lAlite>]               ;
  982.                     [FREEZE       <nFreeze>]              ;
  983.                     [STABILIZE    <lStabilize>]           ;
  984.                     [PRERUN       <bPreRun>]              ;
  985.                     [POSTRUN      <bPostRun>]             ;
  986.                     [EXITKEY      <nExitKey>]             ;
  987.                     [SEPARATORS   <aSeparators>]          ;
  988.                     [APPENDBROWSE <lOKAppend>]            ;
  989.                     [SOUND        <lSound>]               ;
  990.                     [WINDOW       <lWindow>]              ;
  991.                     [BARCOLOR     <bBarColor>]            ;
  992.                     [SEARCH       <aSrch>]                ;
  993.                     [NETWORK      <lNetWork>]             ;
  994.                     [HELPVAR      <cHelpVar>]             ;
  995.                     [HELPLEVEL    <nHelpLevel>]           ;
  996. =>        ;
  997. <nChoice> := twBRBrowse( <nTop>, <nLeft>, <nBottom>, <nRight>, <aColumns>, ;
  998.                    <cTitle>, <cTopKey>, <bScopeBlock>, <lEditFlag>,        ;
  999.                    <aActionKeys>, <cColor>, <nShadow>, <nFrame>, <cFColor>, ;
  1000.                    <lScBar>, <lMsgs>, <lAlite>, <nFreeze>, <lStabilize>,   ;
  1001.                    <bPreRun>, <bPostRun>, <nExitKey>, <aSeparators>,       ;
  1002.                    <lOKAppend>, <lSound>, <lWindow>, <bBarColor>, <aSrch>, ;
  1003.                    <lNetWork>, <cHelpVar>, <nHelpLevel> )
  1004.  
  1005.  
  1006. #command  BRBROWSE <nTop>, <nLeft>, <nBottom>, <nRight>  ;
  1007.                    COLUMNS       <aColumns>              ;
  1008.                    [TITLE        <cTitle>]               ;
  1009.                    [TOPKEY       <cTopKey>]              ;
  1010.                    [SCOPEBLOCK   <bScopeBlock>]          ;
  1011.                    [EDIT         <lEditFlag>]            ;
  1012.                    [ACTIONKEYS   <aActionKeys>]          ;
  1013.                    [COLOR        <cColor>]               ;
  1014.                    [SHADOW       <nShadow>]              ;
  1015.                    [FRAME        <nFrame>]               ;
  1016.                    [FCOLOR       <cFColor>]              ;
  1017.                    [SCROLLBAR    <lScBar>]               ;
  1018.                    [MESSAGES     <lMsgs>]                ;
  1019.                    [AUTOLITE     <lAlite>]               ;
  1020.                    [FREEZE       <nFreeze>]              ;
  1021.                    [STABILIZE    <lStabilize>]           ;
  1022.                    [PRERUN       <bPreRun>]              ;
  1023.                    [POSTRUN      <bPostRun>]             ;
  1024.                    [EXITKEY      <nExitKey>]             ;
  1025.                    [SEPARATORS   <aSeparators>]          ;
  1026.                    [APPENDBROWSE <lOKAppend>]            ;
  1027.                    [SOUND        <lSound>]               ;
  1028.                    [WINDOW       <lWindow>]              ;
  1029.                    [BARCOLOR     <bBarColor>]            ;
  1030.                    [SEARCH       <aSrch>]                ;
  1031.                    [NETWORK      <lNetWork>]             ;
  1032.                    [HELPVAR      <cHelpVar>]             ;
  1033.                    [HELPLEVEL    <nHelpLevel>]           ;
  1034. =>        ;
  1035. twBRBrowse( <nTop>, <nLeft>, <nBottom>, <nRight>, <aColumns>,       ;
  1036.             <cTitle>, <cTopKey>, <bScopeBlock>, <lEditFlag>,        ;
  1037.             <aActionKeys>, <cColor>, <nShadow>, <nFrame>, <cFColor>, ;
  1038.             <lScBar>, <lMsgs>, <lAlite>, <nFreeze>, <lStabilize>,   ;
  1039.             <bPreRun>, <bPostRun>, <nExitKey>, <aSeparators>,       ;
  1040.             <lOKAppend>, <lSound>, <lWindow>, <bBarColor>, <aSrch>, ;
  1041.             <lNetWork>,  <cHelpVar>, <nHelpLevel> )
  1042.  
  1043. #command BRCOLUMN <aColumns>             ;
  1044.                   [HEADING    <cHead>]   ;
  1045.                   [BLOCK      <bBlk>]    ;
  1046.                   [WIDTH      <nWid>]    ;
  1047.                   [FOOTER     <cFoot>]   ;
  1048.                   [EDIT       <lEdit>]   ;
  1049.                   [PICTURE    <cPic>]    ;
  1050.                   [WHEN       <bWhn>]    ;
  1051.                   [VALID      <bVld>]    ;
  1052.                   [READER     <bRdr>]    ;
  1053.                   [COLOR      <aClr>]    ;
  1054.                   [COLORBLOCK <bClr>]    ;
  1055.                   [COLSEP     <cCsep>]   ;
  1056.                   [HEADSEP    <cHsep>]   ;
  1057.                   [FOOTSEP    <cFsep>]   ;
  1058. =>           ;
  1059.     AADD( aColumns, { <cHead>, <bBlk>, <nWid>, <cFoot>, <lEdit>, <cPic>, <bWhn>, <bVld>, ;
  1060.                       <bRdr>, <aClr>, <bClr>, <cCsep>, <cHsep>, <cFsep> })
  1061. /*
  1062. ┌──────────────────────────────────────────────────────────────────────────
  1063. │ Calculator Commands
  1064. └──────────────────────────────────────────────────────────────────────────
  1065. */
  1066. #command CALCINIT AT <nTop>, <nLeft> [COLOR <cColor>] [SHADOW <nShadow>] ;
  1067.                      [FRAME <nFrame>] [FCOLOR <cFColor>] [PASTE <lPaste>] ;
  1068.          => ;
  1069.          twCalcInit( <nTop>, <nLeft>, <cColor>, <nShadow>, <nFrame>, <cFColor>, <.lPaste.> )
  1070.  
  1071. #command CALCINIT ;
  1072.          => ;
  1073.          twCalcInit()
  1074.  
  1075. #command CALCULATOR TO <nkey> ;
  1076.          => ;
  1077.          SET KEY <nkey> TO twCallCalc()
  1078.  
  1079. #command RESET CALCULATOR ;
  1080.          => ;
  1081.          ERASE *.CLC
  1082. /*
  1083. ┌──────────────────────────────────────────────────────────────────────────
  1084. │ Get System Commands
  1085. └──────────────────────────────────────────────────────────────────────────
  1086. */
  1087. #command Tsd Clear Gets   =>  ClearMouseGet( GetList )
  1088. #command TSD CLEAR GETS   =>  ClearMouseGet( GetList )
  1089. /*
  1090. ┌──────────────────────────────────────────────────────────────────────────
  1091. │ Wait State Commands
  1092. └──────────────────────────────────────────────────────────────────────────
  1093. */
  1094. #command TWWAIT <nWait> [HELPVAR <cHelpVar>] [HELPLEVEL <nHelpLevel>];
  1095.          => ;
  1096.          twInkeyWait( <nWait>, <cHelpVar>, <nHelpLevel> )
  1097. /*
  1098. ┌──────────────────────────────────────────────────────────────────────────
  1099. │ Miscellaneous Commands and Translates
  1100. └──────────────────────────────────────────────────────────────────────────
  1101. */
  1102. #xtranslate twMakeShadowArea( <nTop>, <nLeft>, <nBottom>, <nRight>, <nShadow> );
  1103.             => ;
  1104.             twShadow( <nTop>, <nLeft>, <nBottom>, <nRight>, <nShadow>, .T. )
  1105.  
  1106. #translate MAKEWSHAD( <r1>, <c1>, <r2>, <c2> ) ;
  1107.            => ;
  1108.            RESTSCREEN( <r1>, <c1>, <r2>, <c2>, _twAttrChg(;
  1109.            SAVESCREEN( <r1>, <c1>, <r2>, <c2> ), IIF( ISCOLOR(), 8, 7 )))
  1110.  
  1111. #command GETSTRUCT ;
  1112.          => ;
  1113.          twGetStruct(@sT,@sL,@sB,@sR,@wT,@wL,@wB,@wR,@tShadow,@tScr,;
  1114.             @uScr,@tlength,@twidth,@tThick,@sh13,@sh17,@sh79,@sh39)
  1115.  
  1116. #command SETSTRUCT ;
  1117.          => ;
  1118.          twSetStruct(wT,wL,wB,wR,sT,sL,sB,sR,uScr)
  1119. /*
  1120. ┌──────────────────────────────────────────────────────────────────────────
  1121. │ No Mouse Compiling Defines
  1122. └──────────────────────────────────────────────────────────────────────────
  1123. */
  1124. #ifdef NOMOUSE
  1125.     #define twBRBarDisp     ntwBRBarDisp
  1126.     #define twBRBrowse      ntwBRBrowse
  1127.     #define twBRGetBrowse   ntwBRGetBrowse
  1128.     #define twBRNewSearch   ntwBRNewSearch
  1129.  
  1130.     #define twRABrowse      ntwRABrowse
  1131.     #define twRAGetBrowse   ntwRAGetBrowse
  1132.     #define twRAGetCurrent  ntwRAGetCurrent
  1133.     #define twRAGetArray    ntwRAGetArray
  1134.     #define twRASetArray    ntwRASetArray
  1135.     #define twRAGetElement  ntwRAGetElement
  1136.     #define twRABarDisp     ntwRABarDisp
  1137.  
  1138.     #define twABBrowse      ntwABBrowse
  1139.     #define twABGetBrowse   ntwABGetBrowse
  1140.     #define twABBarDisp     ntwABBarDisp
  1141.  
  1142.     #define twACChoice      ntwACChoice
  1143.  
  1144.     #define twPopChoice     ntwPopChoi
  1145.  
  1146.     #define twARPick        ntwARPick
  1147.     #define twDBPick        ntwDBPick
  1148.  
  1149.     #define twMenuTo        ntwMenuTo
  1150.     #define twMenuGetElem   ntwMenuGetElem
  1151.     #define twMenuInit      ntwMenuInit
  1152.     #define twMenuSetClr    ntwMenuSetClr
  1153.  
  1154.     #define twPopMenu       ntwPopMenu
  1155.     #define twLineMenu      ntwLineMenu
  1156.  
  1157.     #define twAMsgInit      ntwAMsgInit
  1158.     #define twWarnLine      ntwWarnLine
  1159.     #define twInfoLine      ntwInfoLine
  1160.     #define twAMsgEnd       ntwAMsgEnd
  1161.     #define twAMPop         ntwAMPop
  1162.     #define twAMClose       ntwAMClose
  1163.  
  1164.     #define twMsgInit       ntwMsgInit
  1165.     #define twWarn          ntwWarn
  1166.     #define twInfo          ntwInfo
  1167.     #define twInquire       ntwInquire
  1168.     #define twTextMsg       ntwTextMsg
  1169.     #define twMsgEnd        ntwMsgEnd
  1170.     #define twMPop          ntwMPop
  1171.  
  1172.     #define twAlertInit     ntwAlertInit
  1173.     #define twRadioBox      ntwRadioBox
  1174.     #define twCheckBox      ntwCheckBox
  1175.     #define twButtonBox     ntwButtonBox
  1176.  
  1177.     #define twMemoEdit      ntwMemoEdit
  1178.     #define twMemoView      ntwMemoView
  1179.     #define twMemoUdf       ntwMemoUdf
  1180.     #define twHelpUdf       ntwHelpUdf
  1181.  
  1182.     #define twTextFile      ntwTextFile
  1183.  
  1184.     //#xtranslate twReadModal( <n>[, <m>] );
  1185.     //            =>;
  1186.     //            ntwReadmodal( <n> )
  1187.     #define twReadModal     ntwReadModal
  1188.     #define twGetReader     ntwGetReader
  1189.     #define twGetApplyKey   ntwGetApplyKey
  1190.  
  1191.     #define twDBrowse       ntwDBrowse
  1192.     #define twGetDBrowse    ntwGetDBrowse
  1193.  
  1194.     #define twIndexMaker    ntwIndexMaker
  1195.     #define twIndexDisp     ntwIndexDisp
  1196.  
  1197.     #define twArBrowse      ntwArBrowse
  1198.     #define twGetABrowse    ntwGetABrowse
  1199.     #define twGetCurElem    ntwGetCurElem
  1200.  
  1201.     #define twIsDrive       ntwIsDrive
  1202.  
  1203.     #define twPrReady       ntwPrReady
  1204.  
  1205.     #define twBackUp        ntwBackUp
  1206.     #define twRestore       ntwRestore
  1207.  
  1208.     #define twNetUse        ntwNetUse
  1209.     #define twNetUse1       ntwNetUse1
  1210.     #define twFileLock      ntwFileLock
  1211.     #define twRecLock       ntwRecLock
  1212.     #define twAddRec        ntwAddRec
  1213.     #define twSemLock       ntwSemLock
  1214.     #define twSemUnlock     ntwSemUnlock
  1215.     #define twNetInit       ntwNetInit
  1216.  
  1217.     #define twHelp          ntwHelp
  1218.     #define twHelpInit      ntwHelpInit
  1219.     #define twMakeHelp      ntwMakeHelp
  1220.     #define twHelpColor     ntwHelpColor
  1221.     #define twHelpFColor    ntwHelpFColor
  1222.     #define twHelpTColor    ntwHelpTColor
  1223.     #define twHelpShadow    ntwHelpShadow
  1224.     #define twHelpFrame     ntwHelpFrame
  1225.  
  1226. #endif
  1227.