home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PASCAL / TJOCKREF.ZIP / WINTTT.TXT < prev   
Encoding:
Text File  |  1988-08-22  |  25.6 KB  |  841 lines

  1. !SHORT:Attrib                Change display color for part or all of screen
  2. Attrib                                                          WinTTT
  3.           
  4.  
  5.  
  6. Purpose   To change the display color (attribute) for part or all of
  7.           the screen.
  8.  
  9. Declaration    Attrib(X1,Y1,X2,Y2,F,B:integer);
  10.                     
  11.            X1 is the top left X coordinate (1..80)
  12.            Y1 is the top left Y coordinate (1..25)
  13.            X2 is the lower X coordinate (1..80)
  14.            Y2 is the lower Y coordinate (1..25)
  15.            F is the foreground color (0..15)
  16.            B is the background color (0..15)
  17.  
  18. Uses Crt, FastTTT, DOS, WinTTT.
  19.  
  20. Remarks   The characters themselves are not changed, only their
  21.           display color.
  22.  
  23.  
  24.  
  25. Example
  26.  
  27.  
  28.                USES CRT, FASTTTT, DOS, WINTTT;
  29.                BEGIN
  30.                  ATTRIB(1,13,80,35,LIGHTGRAY,BLACK);
  31.                END.
  32.           
  33.  
  34. The lower half of the screen display is changed to light gray
  35. characters on a black background.
  36.  
  37. !SEEALSO:Fastttt.ngo:ClearText
  38.                         
  39.  
  40. !SHORT:CopyScreenBlock       Copy one part of screen to another area
  41. CopyScreenBlock                                                 WinTTT
  42.      
  43.  
  44.  
  45. Purpose   To copy one part of the screen to another area of the
  46.           display.
  47.  
  48. Declaration    CopyScreenBlock(X1,Y1,X2,Y2,X,Y:integer);
  49.                
  50.           X1 is the top left X coordinate (1..80)
  51.           Y1 is the top left Y coordinate (1..25)
  52.           X2 is the lower X coordinate (1..80)
  53.           Y2 is the lower Y coordinate (1..25)
  54.           X is the top left X coord of the target location (1..80)
  55.           Y is the top left Y coord of the target location (1..25)
  56.  
  57. Uses Crt, FastTTT, DOS, WinTTT.
  58.  
  59. Remarks   The data is copied or duplicated to another location on the
  60.           screen. Use the procedure MoveScreenBlock if you want to
  61.           physically move the information whilst blanking the source
  62.           area. The copy operation actually occurs one line at a time,
  63.           so unexpected results may occur if the source and target
  64.           zones overlap.
  65.  
  66.  
  67.  
  68. Example
  69.  
  70.  
  71.                USES CRT, FASTTTT, DOS, WINTTT;
  72.                BEGIN
  73.                  COPYSCREENBLOCK(1,1,80,2,1,24);
  74.                END.
  75.      
  76.  
  77. The top two lines of the screen are copied to the bottom two lines of
  78. the screen.
  79.  
  80. !SEEALSO:MoveScreenBlock
  81.  
  82.  
  83. !SHORT:DisposeScreen         Free heap space allocated to store screen image
  84. DisposeScreen                                                   WinTTT
  85.           
  86.  
  87.  
  88. Purpose   To free heap space that was allocated to store a screen
  89.           image.
  90.  
  91. Declaration    DisposeScreen(Page: byte);
  92.                     
  93.           Page is the number of the screen that was saved with save
  94.           screen.
  95.  
  96. Uses Crt, FastTTT, DOS, WinTTT.
  97.  
  98. Remarks   If you have restored a screen using RestoreScreen and you no
  99.           longer need the saved screen image, call this procedure to
  100.           trash the saved image and free the heap space for re-use by
  101.           the program
  102.                     
  103.           The Toolkit uses the Turbo Pascal procedures Getmem and
  104.           Freemem. You should not use the conflicting Mark and Release
  105.           heap management procedures anywhere in your program.
  106.  
  107.  
  108.  
  109. Example
  110.  
  111.  
  112.                USES CRT, FASTTTT, DOS, WINTTT;
  113.                BEGIN
  114.                  SAVESCREEN(1);
  115.                  ....
  116.                  . . . {SOME OTHER PROCEDURES THAT CHANGE THE SCREEN}
  117.                  ....
  118.                  RESTORESCREEN(1);
  119.                  DISPOSESCREEN(1);
  120.                END.
  121.           
  122. !SEEALSO:SaveScreen RestoreScreen
  123.  
  124.                                  
  125.  
  126. !SHORT:FillScreen            Fill part or all of screen with specific character
  127. FillScreen                                                      WinTTT
  128.      
  129.  
  130.  
  131. Purpose   To fill part or all of the screen with a specific character.
  132.  
  133. Declaration    FillScreen(X1,Y1,X2,Y2,F,B:integer; C:char);
  134.                
  135.           X1 is the top left X coordinate (1..80)
  136.           Y1 is the top left Y coordinate (1..25)
  137.           X2 is the lower X coordinate (1..80)
  138.           Y2 is the lower Y coordinate (1..25)
  139.           F is the foreground color (0..15)
  140.           B is the background color (0..15)
  141.           C is the character (any displayable ASCII character)
  142.  
  143. Uses Crt, FastTTT, DOS, WinTTT.
  144.  
  145. Remarks   This procedure provides a very fast way of filling the
  146.           screen with a specific character. It is useful for creating
  147.           interesting backgrounds for menus and the like.
  148.                
  149.           Use the procedure ClearText to clear a portion of the
  150.           screen.
  151.  
  152.  
  153.  
  154. Example
  155.  
  156.  
  157.                USES CRT, FASTTTT, DOS, WINTTT;
  158.                BEGIN
  159.                  FILLSCREEN(1,1,80,25,CYAN,BLACK,CHR(177);
  160.                END.
  161.      
  162.  
  163. The whole screen is filled with the ASCII character 177. It gives a
  164. blocked stipple effect. See the MenuDem.pas program on the
  165. distribution disk for a visual example.
  166.  
  167. !SEEALSO:Fastttt.ngo:ClearText
  168.  
  169.  
  170. !SHORT:FindCursor            Return the location and size of cursor
  171. FindCursor                                                      WinTTT
  172.           
  173.  
  174.  
  175. Purpose   To return the location and size of the cursor.
  176.  
  177. Declaration    FindCursor(var X,Y,ScanTop,ScanBot: byte);
  178.                     
  179.           X is the X coord of the cursor (1..80)
  180.           Y is the Y coord of the cursor (1..25)
  181.           Scantop is the top scan line of the cursor
  182.           ScanBot is the bottom scan line of the cursor
  183.  
  184. Uses Crt, FastTTT, DOS, WinTTT.
  185.  
  186. Remarks.  This procedure is called by many of the screen saving
  187.           procedures.
  188.                     
  189.           The four parameters must be variables, and they are returned
  190.           with the cursor details.
  191.                     
  192.           The scan codes refer to the actual location of the top and
  193.           bottom of the cursor within a character field, where zero is
  194.           the top of the field (such as the top stroke of the letter T
  195.           -- got it?), and either 13 or 7 is the bottom of the field
  196.           on monochrome or color machines respectively.
  197.  
  198.  
  199.  
  200. Example
  201.  
  202.  
  203.                USES CRT, FASTTTT, DOS, WINTTT
  204.                VAR ROW,COL,TOP,BOT: BYTE;
  205.                BEGIN
  206.                  FINDCURSOR(COL,ROW,TOP,BOT);
  207.                END.
  208.  
  209.  
  210. !SEEALSO:SizeCursor OnCursor OffCursor HalfCursor FullCursor
  211.  
  212.                                                             
  213. !SHORT:FullCursor            Change the text cursor to a full block
  214. FullCursor                                                      WinTTT
  215.      
  216.  
  217.  
  218. Purpose   To change the text cursor to a full block.
  219.  
  220. Declaration    FullCursor;
  221.  
  222. Uses Crt, FastTTT, DOS, WinTTT.
  223.  
  224. Remarks   This procedure automatically sets the cursor on monochrome
  225.           and color systems.
  226.  
  227.  
  228.  
  229. Example
  230.  
  231.  
  232.                USES CRT, FASTTTT, DOS, WINTTT;
  233.                BEGIN
  234.                  FULLCURSOR;
  235.                END.
  236.      
  237. !SEEALSO:SizeCursor HalfCursor Oncursor Offcursor
  238.  
  239.                                                  
  240. !SHORT:GrowMkWin             Exploding text window and saves overlayed contents
  241. GrowMkWin                                                       WinTTT
  242.           
  243.  
  244.  
  245. Purpose   To create a text window on the screen and saves the screen
  246.           contents that has been overlayed. This procedure is the
  247.           functional equivalent of MkWin, except that the window box
  248.           explodes onto the screen.
  249.  
  250. Declaration    GrowMkWin(X1,Y1,X2,Y2,F,B,Boxtype: integer);
  251.                     
  252.           X1 is the top left X coordinate (1..80)
  253.           Y1 is the top left Y coordinate (1..25)
  254.           X2 is the lower X coordinate (1..80)
  255.           Y2 is the lower Y coordinate (1..25)
  256.           F is the foreground color (0..15)
  257.           B is the background color (0..15)
  258.           BoxType is the window box line type (see remarks)
  259.  
  260. Uses Crt, FastTTT, DOS, WinTTT.
  261.  
  262. Remarks   The specifications are the same as for GrowFBox.
  263.                     
  264.           The normal values for the Boxtype are:
  265.                1    Single line
  266.                2    Double line
  267.                3    Single top/bottom, double sides
  268.                4    Double top/bottom, single sides
  269.                     
  270.            If a BoxType of 0 is passed, the procedure will use a space
  271.            (' ') as the box character. If any other number (i.e.
  272.            5..256) is used, the box is drawn using the ascii character
  273.            represented by the number. Refer to page 568 of the Turbo
  274.            Pascal Owner's Handbook to see the ascii table.
  275.  
  276.            If the box grows too quickly or too slowly, alter the global
  277.            variable Speed. The default value is 200; increase the value
  278.            to slow the speed down, or decrease it to speed the box up.
  279.  
  280.  
  281.  
  282. Example
  283.  
  284.  
  285.                USES CRT, FASTTTT, DOS, WINTTT;
  286.                BEGIN
  287.                  SPEED := 400;
  288.                  GROWMKWIN(1,1,80,12,WHITE,RED,1);
  289.                END.
  290.           
  291. !SEEALSO:Mkwin RmWin
  292.  
  293.                     
  294. !SHORT:HalfCursor            Make text cursor into a half block
  295. HalfCursor                                                      WinTTT
  296.      
  297.  
  298.  
  299. Purpose   To make the text cursor into a half block.
  300.  
  301. Declaration    HalfCursor;
  302.  
  303. Uses Crt, FastTTT, DOS, WinTTT.
  304.  
  305. Remarks   This procedure automatically sets the cursor on monochrome
  306.           and color systems.
  307.  
  308.  
  309.  
  310. Example
  311.  
  312.  
  313.                USES CRT, FASTTTT, DOS, WINTTT;
  314.                BEGIN
  315.                  HALFCURSOR;
  316.                END.
  317.      
  318. !SEEALSO:SizeCursor FullCursor Oncursor Offcursor
  319.  
  320.                                                  
  321. !SHORT:MkWin                 Creat text window and save overlayed screen contents
  322. MkWin                                                           WinTTT
  323.           
  324.  
  325.  
  326. Purpose   To create a text window on the screen and save the screen
  327.           contents that has been overlayed.
  328.  
  329. Declaration    MkWin(X1,Y1,X2,Y2,F,B,Boxtype: integer);
  330.                     
  331.           X1 is the top left X coordinate (1..80)
  332.           Y1 is the top left Y coordinate (1..25)
  333.           X2 is the lower X coordinate (1..80)
  334.           Y2 is the lower Y coordinate (1..25)
  335.           F is the foreground color (0..15)
  336.           B is the background color (0..15)
  337.           BoxType is the window box line type (see remarks)
  338.  
  339. Uses Crt, FastTTT, DOS, WinTTT.
  340.  
  341. Remarks   The specifications are the same as for FBox.
  342.                     
  343.           The normal values for the Boxtype are:
  344.                1    Single line
  345.                2    Double line
  346.                3    Single top/bottom, double sides
  347.                4    Double top/bottom, single sides
  348.                     
  349.           If a BoxType of 0 is passed, the procedure will use a space
  350.           (' ') as the box character. If any other number (i.e.
  351.           5..256) is used the box is drawn using the ascii character
  352.           represented by the number. Refer to page 568 of the Turbo
  353.           Pascal Owner's Handbook to see the ascii table.
  354.                     
  355.           If the box grows too quickly or too slowly, alter the global
  356.           variable Speed. The default value is 200; increase the value
  357.           to slow the speed down, or decrease it to speed the box up.
  358.  
  359.  
  360.  
  361. Example
  362.  
  363.  
  364.                USES CRT, FASTTTT, DOS, WINTTT;
  365.                BEGIN
  366.                  SPEED := 400;
  367.                  MKWIN(1,1,80,12,WHITE,RED,1);
  368.                END.
  369.           
  370. !SEEALSO:GrowMkWin RmWin
  371.                         
  372.  
  373. !SHORT:MoveScreenBlock       Move part of screen to another area of display
  374. MoveScreenBlock                                                 WinTTT
  375.      
  376.  
  377.  
  378. Purpose   To move one part of the screen to another area of the
  379.           display.
  380.  
  381. Declaration    MoveScreenBlock(X1,Y1,X2,Y2,X,Y:integer);
  382.                
  383.           X1 is the top left X coordinate (1..80)
  384.           Y1 is the top left Y coordinate (1..25)
  385.           X2 is the lower X coordinate (1..80)
  386.           Y2 is the lower Y coordinate (1..25)
  387.           X is the top left X coord of the target location (1..80)
  388.           Y is the top left Y coord of the target location (1..25)
  389.  
  390. Uses Crt, FastTTT, DOS, WinTTT.
  391.  
  392. Remarks   The data is moved to another location on the screen and the
  393.           original source area is blanked out. Use CopyScreenBlock to
  394.           leave the source area in tact.
  395.  
  396.  
  397.  
  398. Example
  399.  
  400.  
  401.                USES CRT, FASTTTT, DOS, WINTTT;
  402.                BEGIN
  403.                  COPYSCREENBLOCK(1,1,40,25,41,1);
  404.                END.
  405.      
  406.  
  407. The left half of the screen is moved over to the right side.
  408.  
  409. !SEEALSO:CopyScreenBlock
  410.                         
  411.  
  412. !SHORT:OffCursor             Make text cursor disappear
  413. OffCursor                                                       WinTTT
  414.           
  415.  
  416.  
  417. Purpose   To make the text cursor disappear.
  418.  
  419. Declaration    OffCursor;
  420.  
  421. Uses Crt, FastTTT, DOS, WinTTT.
  422.  
  423. Remarks   This procedure automatically hides the cursor on monochrome
  424.           and color systems.
  425.  
  426.  
  427.  
  428. Example
  429.  
  430.  
  431.                USES CRT, FASTTTT, DOS, WINTTT;
  432.                BEGIN
  433.                  OFFCURSOR;
  434.                END.
  435.           
  436. !SEEALSO:SizeCursor HalfCursor Oncursor Fullcursor
  437.  
  438.                                                   
  439. !SHORT:OnCursor              Make the text cursor appear in normal DOS Shape
  440. OnCursor                                                        WinTTT
  441.      
  442.  
  443.  
  444. Purpose   To make the text cursor appear in the normal DOS shape.
  445.  
  446. Declaration    OnCursor;
  447.  
  448. Uses Crt, FastTTT, DOS, WinTTT.
  449.  
  450. Remarks   This procedure automatically displays the cursor on
  451.           monochrome and color systems.
  452.  
  453.  
  454.  
  455. Example
  456.  
  457.  
  458.                USES CRT, FASTTTT, DOS, WINTTT;
  459.                BEGIN
  460.                  ONCURSOR;
  461.                END.
  462.      
  463. !SEEALSO:SizeCursor HalfCursor Offcursor Fullcursor
  464.  
  465.  
  466. !SHORT:PartRestore           Transfer data from a variable to screen location
  467. PartRestore                                                     WinTTT
  468.           
  469.  
  470.  
  471. Purpose   To transfer data from a variable to a screen location.
  472.  
  473. Declaration    PartRestore(X1,Y1,X2,Y2: byte;var Source);
  474.  
  475. Uses Crt, FastTTT, DOS, WinTTT.
  476.  
  477. Remarks   This procedure is used internally by the Toolkit.
  478.  
  479. !SEEALSO:PartRestoreScreen RestoreScreen PartSave
  480.  
  481.  
  482. !SHORT:PartRestoreScreen     Restore a portion of saved screen
  483. PartRestoreScreen                                               WinTTT
  484.      
  485.  
  486.  
  487. Purpose   To restore a portion of a saved screen to the display.
  488.  
  489. Declaration    PartRestoreScreen(Page,X1,Y1,X2,Y2,X,Y: integer);
  490.                
  491.           Page is the number of the saved screen
  492.           X1 is the top left X coord of saved screen (1..80)
  493.           Y1 is the top left Y coord of saved screen  (1..25)
  494.           X2 is the lower X coord of saved screen (1..80)
  495.           Y2 is the lower Y coord of saved screen (1..25)
  496.           X is the top left X coord of the target location (1..80)
  497.           Y is the top left Y coord of the target location (1..25)
  498.  
  499. Uses CRT, FastTTT, DOS, WinTTT.
  500.  
  501. Remarks   The procedure is used to restore part of a screen that was
  502.           previously saved with SaveScreen. The first four coord.
  503.           parameters indicate which part of the saved screen should be
  504.           restored, and the last pair of coords indicate the position
  505.           on the screen where the top left corner of the restored data
  506.           is located.
  507.  
  508. Example
  509.  
  510.  
  511.                USES CRT, FASTTTT, DOS, WINTTT;
  512.                BEGIN
  513.                  SAVESCREEN(1);
  514.                  .....
  515.                  ..    {SCREEN MODIFYING PROCEDURES}
  516.                  .....
  517.                  PARTRESTORESCREEN(1,1,1,80,12,1,13);
  518.                  DISPOSESCREEN(1);
  519.                END.
  520.      
  521.  
  522. In this example, the screen is saved (let's assume there was something
  523. meaningful on the screen at that point), then some other procedures
  524. modify the screen display. The top half of the saved screen is then
  525. restored to the lower half of the screen display.
  526.  
  527.  
  528.  
  529.  
  530.  
  531. !SHORT:PartSave              Transfer data from screen to a variable
  532. PartSave                                                        WinTTT
  533.           
  534.  
  535.  
  536. Purpose   To transfer data from the screen to a variable.
  537.  
  538. Declaration    PartSave(X1,Y1,X2,Y2: byte;var Dest);
  539.  
  540. Uses Crt, FastTTT, DOS, WinTTT.
  541.  
  542. Remarks   This procedure is used internally by the Toolkit.
  543.  
  544. !SEEALSO:SaveScreen
  545.  
  546.  
  547.  
  548. !SHORT:RestoreScreen         Restore previously saved screen
  549. RestoreScreen                                                   WinTTT
  550.      
  551.  
  552.  
  553. Purpose   To restore a previously saved screen.
  554.  
  555. Declaration    RestoreScreen(Page: byte);
  556.                
  557.           Page is the number of the previously saved screen
  558.  
  559. Uses Crt, FastTTT, DOS, WinTTT.
  560.  
  561. Remarks   Only use a page number of a screen that was specified with a
  562.           previous SaveScreen, otherwise unpredictable results will
  563.           occur e.g. flashing happy faces.
  564.                
  565.           RestoreScreen will return the cursor to the position it was
  566.           at immediately prior to the corresponding SaveScreen.
  567.  
  568.  
  569.  
  570. Example
  571.  
  572.  
  573.                USES CRT, FASTTTT, DOS, WINTTT;
  574.                BEGIN
  575.                  SAVESCREEN(1);
  576.                  .....
  577.                  ..    {SCREEN MODIFYING PROCEDURES}
  578.                  .....
  579.                  RESTORESCREEN(1);
  580.                  DISPOSESCREEN(1);
  581.                END.
  582.      
  583. !SEEALSO:SaveScreen DisposeScreen SlideRestoreScreen
  584.  
  585.  
  586.  
  587.  
  588. !SHORT:RmWin                 Remove window and restore original screen contents
  589. RmWin                                                           WinTTT
  590.           
  591.  
  592.  
  593. Purpose   To remove a window and restore the original screen contents.
  594.  
  595. Declaration    RmWin;
  596.  
  597. Uses Crt, FastTTT, DOS, WinTTT.
  598.  
  599. Remarks   The RmWin procedure removes the last displayed window.
  600.           Successive RmWin statements will remove the earlier
  601.           displayed windows. If RmWin is called when there are no
  602.           windows, the procedure simplr returns i.e. no problem.
  603.                     
  604.           The windows are always removed in reverse order e.g. you
  605.           cannot create 3 windows in succession and then try to remove
  606.           the second window without first removing the third one.
  607.  
  608.  
  609.  
  610. Example
  611.  
  612.  
  613.                USES CRT, FASTTTT, DOS, WINTTT;
  614.                VAR CH : CHAR;
  615.                BEGIN
  616.                  MKWIN(25,20,65,25,WHITE,RED,1);
  617.                  WRITEBETWEEN(25,65,23,WHITE,RED,'DO YOU WANT TO EXIT
  618.                  (Y/N)?');
  619.                  CH := GETKEY;
  620.                  IF UPCASE(CH) = 'Y' THEN
  621.                  HALT
  622.                  ELSE
  623.                    RMWIN;
  624.                  END.
  625.           
  626.  
  627. The above program paints a red window with a white single line border
  628. on the last five lines of the screen, and displays a message in the
  629. center of the box. If the user responds Y then the program terminates,
  630. otherwise the window is removed and the program continues.
  631.  
  632. !SEEALSO:MkWin
  633.               
  634.  
  635. !SHORT:SaveScreen            Save screen for subsequent restore
  636. SaveScreen                                                      WinTTT
  637.      
  638.  
  639.  
  640. Purpose   To save a screen for subsequent restore.
  641.  
  642. Declaration    SaveScreen(Page: byte);
  643.                
  644.           Page is the number assigned to the saved screen
  645.  
  646. Uses Crt, FastTTT, DOS, WinTTT.
  647.  
  648. Remarks   This procedure will save a full copy of the screen and all
  649.           the attributes i.e. the colors. The location of the cursor
  650.           is also saved.
  651.  
  652.           Multiple screens can be saved (up to Max_Screens, see
  653.           Interface Declarations at beginning of chapter) at the same
  654.           time. The Page number assignment can be arbitrary, but it is
  655.           good practice to save them in ascending order starting from
  656.           page 1. If a page is already saved to a particular Page and
  657.           another screen is saved to that same Page, the saved screen
  658.           will be overwritten.
  659.  
  660.  
  661.  
  662. Example
  663.  
  664.  
  665.                USES CRT, FASTTTT, DOS, WINTTT;
  666.                BEGIN
  667.                  SAVESCREEN(1);
  668.                  .....
  669.                  ..    {SCREEN MODIFYING PROCEDURES}
  670.                  .....
  671.                  RESTORESCREEN(1);
  672.                  DISPOSESCREEN(1);
  673.                END.
  674.      
  675. !SEEALSO:RestoreScreen DisposeScreen SlideRestoreScreen
  676.  
  677.  
  678. !SHORT:ScrollUp              Scroll all or part of screen upward one line
  679. ScrollUp                                                        WinTTT
  680.           
  681.  
  682.  
  683. Purpose   To scroll all or part of the screen upward one line.
  684.  
  685. Declaration    ScrollUp(X1,Y1,X2,Y2:integer);
  686.                     
  687.           X1 is the top left X coordinate (1..80)
  688.           Y1 is the top left Y coordinate (1..25)
  689.           X2 is the lower X coordinate (1..80)
  690.           Y2 is the lower Y coordinate (1..25)
  691.                     
  692.  
  693. Uses Crt, FastTTT, DOS, WinTTT.
  694.  
  695. Remarks   All the text is moved up one line and the lower line is
  696.           replaced with with blanks.
  697.                     
  698.           The characters and their color attributes are scrolled.
  699.  
  700.  
  701.  
  702. Example
  703.  
  704.  
  705.                USES CRT, FASTTTT, DOS, WINTTT;
  706.                BEGIN
  707.                  SCROLLUP(10,1,70,5);
  708.                END.
  709.           
  710. !SEEALSO:CopyScreenBlock MoveScreenBlock
  711.                                         
  712.  
  713. !SHORT:SizeCursor            Change cursor shap/appearance
  714. SizeCursor                                                      WinTTT
  715.      
  716.  
  717.  
  718. Purpose   To change the cursor shape/appearance.
  719.  
  720. Declaration    SizeCursor(ScanTop,ScanBot: byte);
  721.                
  722.           Scantop is the top scan line of the cursor
  723.           ScanBot is the bottom scan line of the cursor
  724.  
  725. Uses Crt, FastTTT, DOS, WinTTT.
  726.  
  727. Remarks.  This procedure is called by OnCursor, OffCursor, HalfCursor
  728.           and FullCursor, and these other procedures should normally
  729.           be used in preference to SizeCursor because they
  730.           automatically accommodate monochrome and color systems.
  731.  
  732.           The scan codes refer to the actual location of the top and
  733.           bottom of the cursor within a character field, where zero is
  734.           the top of the field (such as the top stroke of the letter T
  735.           -- got it?), and either 13 or 7 is the bottom of the field
  736.           on monochrome or color machines respectively.
  737.  
  738.           The cursor can be hidden by setting the top scan line to 14
  739.           -- see OffCursor.
  740.  
  741.  
  742.  
  743. Example
  744.  
  745.  
  746.                USES CRT, FASTTTT, DOS, WINTTT;
  747.                BEGIN
  748.                  IF BASEOFSCREEN = $B800 THEN
  749.                    SIZECURSOR(5,7)
  750.                    ELSE
  751.                      SIZECURSOR(9,13);
  752.                END.
  753.      
  754. !SEEALSO:FindCursor OnCursor OffCursor HalfCursor FullCursor
  755.  
  756.                                                             
  757. !SHORT:SlideRestoreScreen    Restore previously saved screen
  758. SlideRestoreScreen                                              WinTTT
  759.           
  760.  
  761.  
  762. Purpose   To restore a previously saved screen. This procedure is the
  763.           functional equivalent of RestoreScreen except that the text
  764.           s..l...i...d....e.....s onto the screen
  765.  
  766. Declaration    SlideRestoreScreen(Page: byte; Way: direction);
  767.                     
  768.           Page is the number of the previously saved screen
  769.           Way is the direction to slide i.e. up, down, left or right
  770.                     
  771.  
  772. Uses Crt, FastTTT, DOS, WinTTT.
  773.  
  774. Remarks   Only use a page number of a screen that was specified with a
  775.           previous SaveScreen, otherwise unpredictable results will
  776.           occur e.g. flashing happy faces.
  777.                     
  778.           RestoreScreen will return the cursor to the position it was
  779.           at immediately prior to the corresponding SaveScreen.
  780.  
  781.  
  782.  
  783. Example
  784.  
  785.  
  786.                USES CRT, FASTTTT, DOS, WINTTT;
  787.                BEGIN
  788.                  SAVESCREEN(1);
  789.                  .....
  790.                  ..    {SCREEN MODIFYING PROCEDURES}
  791.                  .....
  792.                  SLIDERESTORESCREEN(1,DOWN);
  793.                  DISPOSESCREEN(1);
  794.                END.
  795.           
  796. !SEEALSO:SaveScreen DisposeScreen RestoreScreen
  797.  
  798.                                                
  799. !SHORT:TempMessage           Display message on screen and wait for keypress/mouse
  800. TempMessage                                                     WinTTT
  801.      
  802.  
  803.  
  804. Purpose   To display a message anywhere on the screen, wait for a
  805.           keypress (or mouse activity), and then restore the original
  806.           screen contents.
  807.  
  808. Declaration    TempMessage(X,Y,F,B: integer; St: string);
  809.                
  810.           X is the X coord of the first character (1..80)
  811.           Y is the Y coordinate or display line (1..25)
  812.           F is the foreground color (0..15)
  813.           B is the background color (0..15)
  814.           St is the string or message text
  815.  
  816. Uses Crt, FastTTT, DOS, WinTTT.
  817.  
  818. Remarks   The procedure temporarily stores the line of text together
  819.           with its color attributes. It  displays the temporary
  820.           message, and after a key is pressed (any key, or any mouse
  821.           activity), the original text and color attributes are
  822.           restored to the screen.
  823.                
  824.           Note that the procedure does not return which key was
  825.           pressed.
  826.                
  827.           This is one of the most popular procedures in the Toolkit
  828.           and is most useful when the screen is very busy and you want
  829.           to display an error or warning message without modifying the
  830.           display.
  831.                
  832.  
  833. Example
  834.  
  835.  
  836.                USES CRT, FASTTTT, DOS, WINTTT;
  837.                BEGIN
  838.                  TEMPMESSAGE(1,1,YELLOW,RED,'YOU CANNOT REFORMAT THE
  839.                  NETWORK!');
  840.                END.
  841.