home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / basic / pbvl010.zip / PBVLITE.DOC < prev    next >
Text File  |  1994-02-10  |  109KB  |  2,672 lines

  1.  
  2.             >> THERE IS NO NEED TO PRINT THIS ENTIRE DOCUMENT  <<
  3.  
  4.           The entire PB/VISION(tm) LITE reference manual can be
  5.           accessed directly through PowerBASIC's built-in help
  6.           system.  Copy PBVLITE.PBH in the same directory as
  7.           PB.EXE and then press <SHIFT-F1> until the PB/VISION(tm)
  8.           index appears.
  9.  
  10.           ┌───────────────────────────────────────────────────────┐
  11.           │                                                       │
  12.           │            P B / V I S I O N (tm)   L I T E           │
  13.           │      Visual Windowing Library for PowerBASIC 3.0      │
  14.           │   >>>>>>>>>> SHAREWARE EVALUATION VERSION <<<<<<<<<   │
  15.           │                                                       │
  16.           │                     Documentation                     │
  17.           │                                                       │
  18.           │    (c) Copyright 1993-94 DSE Software Publishing      │
  19.           │                  All Rights Reserved.                 │
  20.           │                                                       │
  21.           │        ┌────────────────────────────────────┐         │
  22.           │        │ ▀▀▀▀▀▀▀▀\      ▀▀▀▀▀▀\ ▀▀▀▀▀▀▀▀▀▀\ │         │
  23.           │        │  ▀▀▀\   ▀\    ▀▀\   ▀▀\ ▀▀▀\   ▀▀\ │         │
  24.           │        │  ▀▀▀\    ▀\  ▀▀\     ▀\ ▀▀▀\    ▀\ │         │
  25.           │        │  ▀▀▀\    ▀▀\ ▀▀\        ▀▀▀\       │         │
  26.           │        │  ▀▀▀\    ▀▀\ ▀▀▀\       ▀▀▀\ ▀\    │         │
  27.           │        │  ▀▀▀\    ▀▀\  ▀▀▀\      ▀▀▀\ ▀\    │         │
  28.           │        │  ▀▀▀\    ▀▀\    ▀▀▀\    ▀▀▀▀▀▀\    │         │
  29.           │        │  ▀▀▀\    ▀▀\      ▀▀▀\  ▀▀▀\ ▀\    │         │
  30.           │        │  ▀▀▀\    ▀▀\       ▀▀▀\ ▀▀▀\ ▀\    │         │
  31.           │        │  ▀▀▀\    ▀▀\        ▀▀\ ▀▀▀\       │         │
  32.           │        │  ▀▀▀\    ▀\  ▀\     ▀▀\ ▀▀▀\    ▀\ │         │
  33.           │        │  ▀▀▀\   ▀\   ▀▀\   ▀▀\  ▀▀▀\   ▀▀\ │         │
  34.           │        │ ▀▀▀▀▀▀▀▀\     ▀▀▀▀▀▀\  ▀▀▀▀▀▀▀▀▀▀\ │         │
  35.           │        └────────────────────────────────────┘         │
  36.           │                                                       │
  37.           │                DSE Software Publishing                │
  38.           │                  Post Office Box 96                   │
  39.           │                Willits, CA 95490-0096                 │
  40.           │                    (707) 459-4358                     │
  41.           │                 FAX: (707) 459-4484                   │
  42.           │                                                       │
  43.           │        InterNet: dse.software@genie.geis.com          │
  44.           │           DSE Online! BBS - (707) 459-4484            │
  45.           │                 GEnie: DSE.SOFTWARE                   │
  46.           │                                                       │
  47.           └───────────────────────────────────────────────────────┘
  48.  
  49.           PowerBASIC is a registered trademark of PowerBASIC, Inc.
  50.           PB/VISION(tm) and PB/WORKSHOP(tm) are trademarks of DSE
  51.           Software Publishing.  Other product names are trademarks
  52.           or registered trademarks of their respective holders.
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                     Contents
  64.  
  65.  
  66.                   Information for Users  . . . . . . . . . . . . . . 2
  67.                   Warranty   . . . . . . . . . . . . . . . . . . . . 2
  68.                   License for Use and Distribution   . . . . . . . . 3
  69.                   Installation . . . . . . . . . . . . . . . . . . . 3
  70.                   Technical Support  . . . . . . . . . . . . . . . . 4
  71.  
  72.                Chapter 1  WINDOW MANAGEMENT ROUTINES                 5
  73.                   App - VARIABLE . . . . . . . . . . . . . . . . . . 5
  74.                   AppTitle - PROCEDURE . . . . . . . . . . . . . . . 6
  75.                   AppClose - PROCEDURE . . . . . . . . . . . . . . . 6
  76.                   AppInit - PROCEDURE  . . . . . . . . . . . . . . . 6
  77.                   AppPause - PROCEDURE . . . . . . . . . . . . . . . 7
  78.                   AppRefresh - PROCEDURE . . . . . . . . . . . . . . 7
  79.                   AppResume - PROCEDURE  . . . . . . . . . . . . . . 7
  80.                   Attr% - FUNCTION . . . . . . . . . . . . . . . . . 8
  81.                   WinTitle - PROCEDURE . . . . . . . . . . . . . . . 8
  82.                   WinClose - PROCEDURE . . . . . . . . . . . . . . . 8
  83.                   WinCls - PROCEDURE . . . . . . . . . . . . . . . . 9
  84.                   WinColor - PROCEDURE . . . . . . . . . . . . . . . 9
  85.                   WinCopy% - FUNCTION  . . . . . . . . . . . . . .  10
  86.                   WinDeleteLine - PROCEDURE  . . . . . . . . . . .  10
  87.                   WinDrawBox - PROCEDURE . . . . . . . . . . . . .  11
  88.                   WinFill - PROCEDURE  . . . . . . . . . . . . . .  11
  89.                   WinGet - FUNCTION  . . . . . . . . . . . . . . .  12
  90.                   WinGetInfo - PROCEDURE . . . . . . . . . . . . .  12
  91.                   WinHide - PROCEDURE  . . . . . . . . . . . . . .  13
  92.                   WinHotPrint - PROCEDURE  . . . . . . . . . . . .  13
  93.                   WinInsertLine - PROCEDURE  . . . . . . . . . . .  14
  94.                   WinInstallCode - PROCEDURE . . . . . . . . . . .  14
  95.                   WinLocate - PROCEDURE  . . . . . . . . . . . . .  15
  96.                   WinLock - PROCEDURE  . . . . . . . . . . . . . .  15
  97.                   WinLockAll - PROCEDURE . . . . . . . . . . . . .  16
  98.                   WinLockState% - FUNCTION . . . . . . . . . . . .  16
  99.                   WinLockRestore - PROCEDURE . . . . . . . . . . .  16
  100.                   WinMain - PROCEDURE  . . . . . . . . . . . . . .  17
  101.                   WinMaximize - PROCEDURE  . . . . . . . . . . . .  17
  102.                   WinMinimize - PROCEDURE  . . . . . . . . . . . .  18
  103.                   WinNormalize - PROCEDURE . . . . . . . . . . . .  18
  104.                   WinModify - PROCEDURE  . . . . . . . . . . . . .  19
  105.  
  106.                                           i
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.                   WinMove - PROCEDURE  . . . . . . . . . . . . . .  19
  114.                   WinNext - PROCEDURE  . . . . . . . . . . . . . .  20
  115.                   WinOpen% - FUNCTION  . . . . . . . . . . . . . .  20
  116.                   WinPopup% - FUNCTION . . . . . . . . . . . . . .  22
  117.                   WinPrev - PROCEDURE  . . . . . . . . . . . . . .  22
  118.                   WinPrint - PROCEDURE . . . . . . . . . . . . . .  23
  119.                   WinReColor - PROCEDURE . . . . . . . . . . . . .  23
  120.                   WinRefresh - PROCEDURE . . . . . . . . . . . . .  24
  121.                   WinRefreshMode - PROCEDURE . . . . . . . . . . .  24
  122.                   WInResize - PROCEDURE  . . . . . . . . . . . . .  24
  123.                   WinScrollBarGet - PROCEDURE  . . . . . . . . . .  25
  124.                   WinScrollBarSet - PROCEDURE  . . . . . . . . . .  25
  125.                   WinShow - PROCEDURE  . . . . . . . . . . . . . .  26
  126.                   WinSwapColor - PROCEDURE . . . . . . . . . . . .  27
  127.                   WinViewPort - PROCEDURE  . . . . . . . . . . . .  27
  128.                   WinWrite - PROCEDURE . . . . . . . . . . . . . .  28
  129.                   WinWriteChar - PROCEDURE . . . . . . . . . . . .  28
  130.                   WinWriteLn - PROCEDURE . . . . . . . . . . . . .  28
  131.  
  132.                Chapter 2  EVENT MANAGEMENT ROUTINES                 30
  133.                   GetEvent% - FUNCTION . . . . . . . . . . . . . .  30
  134.                   HotKeyAdd - PROCEDURE  . . . . . . . . . . . . .  32
  135.                   HotKeyToggle - PROCEDURE . . . . . . . . . . . .  32
  136.                   TimerInstallCode - PROCEDURE . . . . . . . . . .  32
  137.                   WinCtrlBox - PROCEDURE . . . . . . . . . . . . .  33
  138.  
  139.                Chapter 3  MOUSE ROUTINES                            35
  140.                   Mouse% - FUNCTION  . . . . . . . . . . . . . . .  35
  141.                   MouseCursorOff - PROCEDURE . . . . . . . . . . .  36
  142.                   MouseCursorOn - PROCEDURE  . . . . . . . . . . .  36
  143.                   MouseGet% - FUNCTION . . . . . . . . . . . . . .  36
  144.                   MouseGetInfo - PROCEDURE . . . . . . . . . . . .  37
  145.                   MouseGetPress% - FUNCTION  . . . . . . . . . . .  38
  146.                   MouseGetRelease% - FUNCTION  . . . . . . . . . .  38
  147.                   MouseInit% - FUNCTION  . . . . . . . . . . . . .  39
  148.                   MouseSet - PROCEDURE . . . . . . . . . . . . . .  40
  149.                   MouseSetWindow - PROCEDURE . . . . . . . . . . .  40
  150.                   MouseTerm - PROCEDURE  . . . . . . . . . . . . .  41
  151.  
  152.                Chapter 4  DATA TYPES USED                           42
  153.                   MENUCOLORTYPE - TYPE . . . . . . . . . . . . . .  42
  154.                   WINTYPE - TYPE . . . . . . . . . . . . . . . . .  42
  155.  
  156.                Index                                                44
  157.  
  158.  
  159.  
  160.  
  161.  
  162.                                          ii
  163.  
  164.  
  165.  
  166.           PB/VISION(tm) LITE - Version 1.00
  167.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  168.  
  169.           Information for Users
  170.           ─────────────────────────────────────────────────────────────────
  171.  
  172.                PB/VISION(tm) LITE is a shareware program.  This evaluation
  173.                version includes all features of the program, and is not
  174.                crippled in any way. You may use it for up to 30 days,
  175.                without charge (see ORDER_ME.TXT for more details).  If you
  176.                like the program, and wish to continue its use after this
  177.                evaluation period, you are required to pay for the program
  178.                (see ORDER_ME.TXT for more details).  Any fee you may have
  179.                paid to others (disk vendors, dealers, etc.) to obtain this
  180.                evaluation version was a fee for their copying and
  181.                distribution services, rather than a payment for continued
  182.                use of the program.
  183.  
  184.           Warranty
  185.           ─────────────────────────────────────────────────────────────────
  186.  
  187.                LIMITED WARRANTY
  188.  
  189.                THIS SOFTWARE AND MANUAL ARE PROVIDED FOR EVALUATION ONLY,
  190.                ON  AN "AS IS" BASIS.  DSE SOFTWARE PUBLISHING DISCLAIMS ALL
  191.                WARRANTIES RELATING TO THIS SOFTWARE, WHETHER EXPRESSED  OR
  192.                IMPLIED, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES
  193.                OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
  194.                NEITHER DSE SOFTWARE PUBLISHING NOR ANYONE ELSE WHO HAS BEEN
  195.                INVOLVED IN THE CREATION, PRODUCTION, OR DELIVERY OF THIS
  196.                SOFTWARE SHALL BE LIABLE FOR ANY INDIRECT, CONSEQUENTIAL, OR
  197.                INCIDENTAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO
  198.                USE SUCH SOFTWARE, EVEN IF DSE SOFTWARE PUBLISHING HAS BEEN
  199.                ADVISED OF THE POSSIBILITY OF SUCH DAMAGES OR CLAIMS.  THE
  200.                PERSON USING THE SOFTWARE BEARS ALL RISK AS TO THE QUALITY
  201.                AND PERFORMANCE OF THE SOFTWARE.
  202.  
  203.                This agreement shall be governed by the laws of the State of
  204.                California and shall inure to the benefit of DSE Software
  205.                Publishing and any successors, administrators, heirs and
  206.                assigns. Any action or proceeding brought by either party
  207.                against the other arising out of or related to this
  208.                agreement shall be brought only in a STATE or FEDERAL COURT
  209.                of competent jurisdiction located in Mendocino County, CA.
  210.                The parties hereby consent to in personam jurisdiction of
  211.                said courts.
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  219.           (c) Copyright 1993-94 DSE Software Publishing                  2
  220.  
  221.  
  222.  
  223.           PB/VISION(tm) LITE - Version 1.00
  224.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  225.  
  226.           License for Use and Distribution
  227.           ─────────────────────────────────────────────────────────────────
  228.  
  229.                TRIAL USE LICENSE
  230.  
  231.                PB/VISION(tm) LITE is NOT a public domain program.  It is
  232.                copyrighted by DSE Software Publishing.  This software and
  233.                accompanying documentation are protected by United States
  234.                copyright law and also by international treaty provisions.
  235.  
  236.                DSE Software Publishing grants you a limited license to use
  237.                this software for evaluation purposes for a period not to
  238.                exceed thirty days.  If you continue using this software
  239.                after the thirty-day evaluation period, you MUST make a
  240.                registration payment to DSE Software Publishing.
  241.  
  242.                You may not use, copy, rent, lease, sell, modify, decompile,
  243.                disassemble, otherwise reverse engineer, or transfer the
  244.                licensed program except as provided in this agreement.  Any
  245.                such unauthorized use shall result in immediate and
  246.                automatic termination of this license. All rights not
  247.                expressly granted here are reserved to DSE Software
  248.                Publishing.
  249.  
  250.           Installation
  251.           ─────────────────────────────────────────────────────────────────
  252.  
  253.                The installation procedure for PB/VISION(tm) LITE is quite
  254.                simple.  Simply copy all of the included files into either
  255.                your PowerBASIC directory.  You may also place it in an
  256.                entirely different directory if that is your choice.  In
  257.                either case, you will need about 650k of available disk
  258.                space on the hard drive on which you plan to install
  259.                PB/VISION(tm) LITE.
  260.  
  261.                It is _very_ important that you place PBVLITE.PBH in the
  262.                same directory as the PowerBASIC IDE (PB.EXE).  This will
  263.                allow you to access the entire PB/VISION(tm) LITE
  264.                documentation directly through PowerBASIC's built-in help
  265.                system.
  266.  
  267.                While in PB.EXE, to bring up our help screens, place the
  268.                cursor on a keyword and press <SHIFT-F1>.  To then bring up
  269.                the index to all of the PB/VISION(tm) routines.
  270.  
  271.                YOU'RE READY TO GO
  272.  
  273.  
  274.  
  275.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  276.           (c) Copyright 1993-94 DSE Software Publishing                  3
  277.  
  278.  
  279.  
  280.           PB/VISION(tm) LITE - Version 1.00
  281.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  282.  
  283.                Once you've completed the installation, you should consult
  284.                TUTORIAL.DOC.  That file will tell you how to use all of the
  285.                PB/VISION(tm) features, and will give you other information
  286.                you need to properly evaluate PB/VISION(tm) LITE.  We hope
  287.                you enjoy the program.
  288.  
  289.           Technical Support
  290.           ─────────────────────────────────────────────────────────────────
  291.  
  292.                If you have any problems, please read this file,
  293.                HELP_ME.DOC,  and TUTORIAL.DOC first.  If you still have a
  294.                question and need assistance, help is available from the
  295.                following sources:
  296.  
  297.                     1.   DSE Online! BBS at 707-459-4484. 24 hours @
  298.                          1200-14.4K.
  299.  
  300.                     2.   GEnie: address messages to "DSE.SOFTWARE".  Do not
  301.                          send us x-modem mail on GEnie.  We will not accept
  302.                          the file and your account will be billed for it.
  303.  
  304.                     3.   InterNet: "dse.software@genie.geis.com"
  305.  
  306.                     4.   CompuServe: "INTERNET:dse.software@genie.geis.com"
  307.  
  308.                     5.   If you have an urgent problem that cannot wait,
  309.                          you may call the DSE Technical Support Department
  310.                          at (707) 459-4358 from 10:00 AM to 5:00 PM.  Calls
  311.                          outside these hours will not be answered.  Please
  312.                          have the following information ready before
  313.                          calling:
  314.  
  315.                     a.   Computer brand, model, and the brands and mode
  316.                          numbers of any additional hardware.
  317.  
  318.                     b.   Operating system and version number. (The version
  319.                          number can be determined by typing VER at the DOS
  320.                          prompt.)
  321.  
  322.                     c.   Contents of your AUTOEXEC.BAT file.
  323.  
  324.                     d.   Contents of your CONFIG.SYS file.
  325.  
  326.                     e.   You will have to have read TUTORIAL.DOC.  Our help
  327.                          staff may quiz you ;)
  328.  
  329.  
  330.  
  331.  
  332.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  333.           (c) Copyright 1993-94 DSE Software Publishing                  4
  334.  
  335.  
  336.  
  337.           PB/VISION(tm) LITE - Version 1.00
  338.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  339.  
  340.                                       Chapter 1
  341.  
  342.                              WINDOW MANAGEMENT ROUTINES
  343.  
  344.           █████████████████████████████████████████████████████████████████
  345.  
  346.           App - VARIABLE
  347.           ─────────────────────────────────────────────────────────────────
  348.  
  349.            PURPOSE: Defines PB/VISION start-up display parameters.
  350.  
  351.            REMARKS: This variable has the following element(s):
  352.  
  353.                     Element           Description
  354.                     ────────────────  ────────────────────────────────────
  355.                     App.attr          Color of background fill-pattern.
  356.                     App.flags         Application initialization flags.
  357.                     App.graphicsMode  0=text, 1=graphics.
  358.                     App.graphicsMouse 0=text mouse, 1=graphical mouse.
  359.                     App.menuAttr      Color of menu bar (if enabled).
  360.                     App.Pattern       Background fill-pattern.
  361.                     App.rows          Number of lines to use on screen.
  362.  
  363.                                       Value  Description
  364.                                       ─────  ──────────────────────────────
  365.                                         0    Use default size.
  366.                                        25    25 lines (all systems).
  367.                                        28    28 lines (VGA Only).
  368.                                        43    43 lines (EGA, VGA).
  369.                                        50    50 lines (EGA, VGA).
  370.  
  371.                     App.snow          Snow removal flag (0=fast, 1=slow).
  372.                     App.statusAttr    Color of status bar (if enabled).
  373.                     App.title         Text of program title (if enabled).
  374.                     App.titleAttr     Color of program title (if enabled).
  375.  
  376.                     Use the APP type variable to define how the display
  377.                     will look when APPINIT() is called.  The APP.flags
  378.                     element allows for one or more of the following flags:
  379.  
  380.                     APP.flag       Description
  381.                     ─────────────  ────────────────────────────────────
  382.                     %MENUBAR       Make room for a menu bar.
  383.                     %STATUSBAR     Make room for a status bar.
  384.  
  385.           SEE ALSO: APPINIT, APPTITLE
  386.  
  387.  
  388.  
  389.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  390.           (c) Copyright 1993-94 DSE Software Publishing                  5
  391.  
  392.  
  393.  
  394.           PB/VISION(tm) LITE - Version 1.00
  395.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  396.  
  397.           AppTitle - PROCEDURE
  398.           ─────────────────────────────────────────────────────────────────
  399.  
  400.            PURPOSE: Adds or changes a desktop title.
  401.  
  402.             SYNTAX: APPTITLE kolor%, title$
  403.  
  404.            REMARKS: This procedure accepts the following argument(s):
  405.  
  406.                     Argument       Description
  407.                     ─────────────  ────────────────────────────────────────
  408.                     kolor%         Color of desktop title.
  409.                     title$         Text of the title.
  410.  
  411.                     Use APPTITLE() to add or change the title displayed on
  412.                     the top line of the application desktop.  The title is
  413.                     automatically centered.
  414.  
  415.           SEE ALSO: APP, APPINIT
  416.  
  417.  
  418.           AppClose - PROCEDURE
  419.           ─────────────────────────────────────────────────────────────────
  420.  
  421.            PURPOSE: Shuts down all aspects of PB/VISION.
  422.  
  423.             SYNTAX: APPCLOSE
  424.  
  425.            REMARKS: Use APPCLOSE() prior to ending a program.  When called,
  426.                     APPCLOSE() hides and closes all open windows and
  427.                     restores the contents of default window 1 to the
  428.                     screen.
  429.  
  430.           SEE ALSO: APPINIT
  431.  
  432.           AppInit - PROCEDURE
  433.           ─────────────────────────────────────────────────────────────────
  434.  
  435.            PURPOSE: Initialize all aspects of PB/VISION(tm).
  436.  
  437.             SYNTAX: APPINIT
  438.  
  439.            REMARKS: Use APPINIT() to initialize PB/VISION(tm) with the
  440.                     definitions defined in the APP type variable.
  441.  
  442.                     APPINIT() automatically stores the entire display
  443.                     contents and copies it into a predefined virtual with a
  444.                     window handle of 1.
  445.  
  446.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  447.           (c) Copyright 1993-94 DSE Software Publishing                  6
  448.  
  449.  
  450.  
  451.           PB/VISION(tm) LITE - Version 1.00
  452.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  453.  
  454.           SEE ALSO: APPCLOSE, APPREFRESH, APPTITLE
  455.  
  456.           AppPause - PROCEDURE
  457.           ─────────────────────────────────────────────────────────────────
  458.  
  459.            PURPOSE: Temporarily shuts down PB/VISION.
  460.  
  461.             SYNTAX: APPPAUSE
  462.  
  463.            REMARKS: Use APPPAUSE() to temporarily shut down the windowing
  464.                     system and restore the contents of default window 1 to
  465.                     the screen.  This command should be called prior using
  466.                     BASIC's "SHELL" command or switching to a graphics
  467.                     mode.
  468.  
  469.           SEE ALSO: APPINIT, APPRESUME
  470.  
  471.           AppRefresh - PROCEDURE
  472.           ─────────────────────────────────────────────────────────────────
  473.  
  474.            PURPOSE: Rebuilds the entire display.
  475.  
  476.             SYNTAX: APPREFRESH
  477.  
  478.            REMARKS: Use APPREFRESH() to rebuild the screen if it becomes
  479.                     corrupted by errant PRINT statements and such.
  480.  
  481.           SEE ALSO: APPINIT
  482.  
  483.           AppResume - PROCEDURE
  484.           ─────────────────────────────────────────────────────────────────
  485.  
  486.            PURPOSE: Restarts PB/VISION after a call to APPPAUSE().
  487.  
  488.             SYNTAX: APPRESUME
  489.  
  490.            REMARKS: Use APPRESUME() to restart the windowing system after a
  491.                     previous call to APPPAUSE().  The desktop and all open
  492.                     windows are restored to their original state.
  493.  
  494.                     APPRESUME() does not restore the status bar or pulldown
  495.                     menu.  If either of these options are used, you must
  496.                     immediately follow the call with calls to STATUSSHOW()
  497.                     and/or PULLMENUSHOW().
  498.  
  499.           SEE ALSO: APPINIT, APPPAUSE
  500.  
  501.  
  502.  
  503.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  504.           (c) Copyright 1993-94 DSE Software Publishing                  7
  505.  
  506.  
  507.  
  508.           PB/VISION(tm) LITE - Version 1.00
  509.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  510.  
  511.           Attr% - FUNCTION
  512.           ─────────────────────────────────────────────────────────────────
  513.  
  514.            PURPOSE: Returns a calculated color combination code
  515.  
  516.             SYNTAX: varname% = ATTR%(fore%, back%)
  517.  
  518.            REMARKS: This function accepts the following argument(s):
  519.  
  520.                     Argument       Description
  521.                     ─────────────  ────────────────────────────────────────
  522.                     fore%          Foreground attribute ranging 0-15.
  523.                     back%          Background attribute ranging 0-15.
  524.  
  525.                     Use ATTR% to create an integer attribute to pass to
  526.                     procedures such as WINPRINT().  The supplied foreground
  527.                     and background attributes are identical to the
  528.                     attributes in BASIC's COLOR statement.
  529.  
  530.           SEE ALSO: WINCOLOR, WINOPEN, WINPRINT
  531.  
  532.               NOTE: READ THE TUTORIAL.  THERE IS A MUCH BETTER METHOD.
  533.  
  534.  
  535.           WinTitle - PROCEDURE
  536.           ─────────────────────────────────────────────────────────────────
  537.  
  538.            PURPOSE: Adds or changes the title in a window.
  539.  
  540.             SYNTAX: WINTITLE winHandle%, kolor%, title$
  541.  
  542.            REMARKS: This procedure accepts the following argument(s):
  543.  
  544.                     Argument       Description
  545.                     ─────────────  ────────────────────────────────────────
  546.                     winHandle%     Handle of window.
  547.                     kolor%         Color of window title.
  548.                     title$         Text of the title.
  549.  
  550.                     Use WINTITLE() to add or change the title of an open
  551.                     window.
  552.  
  553.           SEE ALSO: WINOPEN, WINPOPUP
  554.  
  555.           WinClose - PROCEDURE
  556.           ─────────────────────────────────────────────────────────────────
  557.  
  558.            PURPOSE: Closes a previously opened window.
  559.  
  560.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  561.           (c) Copyright 1993-94 DSE Software Publishing                  8
  562.  
  563.  
  564.  
  565.           PB/VISION(tm) LITE - Version 1.00
  566.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  567.  
  568.             SYNTAX: WINCLOSE winHandle%
  569.  
  570.            REMARKS: This procedure accepts the following argument(s):
  571.  
  572.                     Argument       Description
  573.                     ─────────────  ────────────────────────────────────────
  574.                     winHandle%     Handle of a valid window.
  575.  
  576.                     Use WINCLOSE() to close a previously opened window.
  577.                     All memory used by the window is returned to the
  578.                     PowerBASIC heap and all assigned code is removed from
  579.                     the event manager.
  580.  
  581.           SEE ALSO: WINHIDE, WINOPEN, WINSHOW
  582.  
  583.           WinCls - PROCEDURE
  584.           ─────────────────────────────────────────────────────────────────
  585.  
  586.            PURPOSE: Perform a "clear screen" on an open window.
  587.  
  588.             SYNTAX: WINCLS winHandle%
  589.  
  590.            REMARKS: This procedure accepts the following argument(s):
  591.  
  592.                     Argument       Description
  593.                     ─────────────  ────────────────────────────────────────
  594.                     winHandle%     Handle of a valid window.
  595.  
  596.                     Use WINCLS() to clear out the contents of an open
  597.                     window.  Subsequent calls to WINWRITE(),
  598.                     WINWRITECHAR(), or WINWRITELN() will start at the top
  599.                     left corner of the window.
  600.  
  601.                     If WINCOLOR() has been called, the window will be
  602.                     cleared to the specified color.
  603.  
  604.           SEE ALSO: WINCOLOR, WINWRITE, WINWRITECHAR, WINWRITELN
  605.  
  606.           WinColor - PROCEDURE
  607.           ─────────────────────────────────────────────────────────────────
  608.  
  609.            PURPOSE: Sets the color for subsequent window print commands.
  610.  
  611.             SYNTAX: WINCOLOR winHandle%, kolor%
  612.  
  613.            REMARKS: This procedure accepts the following argument(s):
  614.  
  615.  
  616.  
  617.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  618.           (c) Copyright 1993-94 DSE Software Publishing                  9
  619.  
  620.  
  621.  
  622.           PB/VISION(tm) LITE - Version 1.00
  623.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  624.  
  625.                     Argument       Description
  626.                     ─────────────  ────────────────────────────────────────
  627.                     winHandle%     Handle of a valid window.
  628.                     kolor%         New color for window printing..
  629.  
  630.                     Use WINCOLOR to set the color to use with subsequent
  631.                     calls to WINWRITE(), WINWRITECHAR(), and WINWRITELN().
  632.  
  633.           SEE ALSO: ATTR, WINWRITE, WINWRITECHAR, WINWRITELN
  634.  
  635.           WinCopy% - FUNCTION
  636.           ─────────────────────────────────────────────────────────────────
  637.  
  638.            PURPOSE: Clones (duplicates) an open window.
  639.  
  640.             SYNTAX: varname% = WINCOPY (winHandle%)
  641.  
  642.            REMARKS: This function accepts the following argument(s):
  643.  
  644.                     Argument       Description
  645.                     ─────────────  ────────────────────────────────────────
  646.                     winHandle%     Handle of window to duplicate.
  647.  
  648.                     Use WINCOPY() to make an exact copy of an existing
  649.                     window.  Every aspect is copied, including the contents
  650.                     of the window itself.
  651.  
  652.            RETURNS: This function returns the following value(s):
  653.  
  654.                     Value  Description
  655.                     ─────  ───────────────────────────────────────────
  656.                     0      Could not duplicate.
  657.                     any    The handle of the new window.
  658.  
  659.           SEE ALSO: WINOPEN, WINPOPUP
  660.  
  661.           WinDeleteLine - PROCEDURE
  662.           ─────────────────────────────────────────────────────────────────
  663.  
  664.            PURPOSE: Deletes and scrolls up one line in a window
  665.  
  666.             SYNTAX: WINDELETELINE winHandle%, LineNo%
  667.  
  668.            REMARKS: This procedure accepts the following argument(s):
  669.  
  670.                     Argument       Description
  671.                     ─────────────  ────────────────────────────────────────
  672.                     winHandle%     Handle of a valid window.
  673.  
  674.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  675.           (c) Copyright 1993-94 DSE Software Publishing                  10
  676.  
  677.  
  678.  
  679.           PB/VISION(tm) LITE - Version 1.00
  680.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  681.  
  682.                     LineNo%        Line number to delete.
  683.  
  684.                     Use WINDELETELINE() to delete a single line in a
  685.                     window.  All text below that line is scrolled up.
  686.  
  687.           SEE ALSO: WININSERTLINE
  688.  
  689.           WinDrawBox - PROCEDURE
  690.           ─────────────────────────────────────────────────────────────────
  691.  
  692.            PURPOSE: Tool to draw a box inside of a window.
  693.  
  694.             SYNTAX: WINDRAWBOX winHandle%, row%, col%, rows%, cols%,
  695.                                kolor%, border%
  696.  
  697.            REMARKS: This procedure accepts the following argument(s):
  698.  
  699.                     Argument       Description
  700.                     ─────────────  ────────────────────────────────────────
  701.                     winHandle%     Handle of an existing window.
  702.                     row%           Row inside window to draw the box.
  703.                     col%           Col inside window to draw the box.
  704.                     rows%          Vertical dimension of box to draw.
  705.                     cols%          Horizontal dimension of box to draw.
  706.                     kolor%         Color to draw the box.
  707.                     border%        Border style.
  708.  
  709.                     Use WINDRAWBOX() to draw a box frame inside a window.
  710.                     The row% and col% arguments are relative to the inside
  711.                     of the window.
  712.  
  713.           SEE ALSO: WINFILL, WINPRINT
  714.  
  715.           WinFill - PROCEDURE
  716.           ─────────────────────────────────────────────────────────────────
  717.  
  718.            PURPOSE: Fills a portion of a window with a color/character.
  719.  
  720.             SYNTAX: WINFILL winHandle%, row%, col%, rows%, cols%,
  721.                             kolor%, char%
  722.  
  723.            REMARKS: This procedure accepts the following argument(s):
  724.  
  725.                     Argument       Description
  726.                     ─────────────  ────────────────────────────────────────
  727.                     winHandle%     Handle of a valid window.
  728.                     row%           Row inside window to fill.
  729.                     col%           Col inside window to fill.
  730.  
  731.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  732.           (c) Copyright 1993-94 DSE Software Publishing                  11
  733.  
  734.  
  735.  
  736.           PB/VISION(tm) LITE - Version 1.00
  737.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  738.  
  739.                     rows%          Vertical dimension of area to fill.
  740.                     cols%          Horizontal dimension of area to fill.
  741.                     kolor%         Color to use for fill.
  742.                     char%          Character to use for fill.
  743.  
  744.                     Use WINFILL() to fill an area within a window with the
  745.                     specified color and character.  The row% and col%
  746.                     arguments are relative to the inside of the window.  If
  747.                     a value of -1 is used for KOLOR%, the default window
  748.                     color is used.
  749.  
  750.           SEE ALSO: WINDRAWBOX
  751.  
  752.           WinGet - FUNCTION
  753.           ─────────────────────────────────────────────────────────────────
  754.  
  755.            PURPOSE: Gets the handle of the top most window.
  756.  
  757.             SYNTAX: varname% = WINGET%
  758.  
  759.            REMARKS: Use WINGET% to get the handle of the top most window,
  760.                     or the handle of the window that was last affected
  761.                     during a call to GETEVENT().
  762.  
  763.           SEE ALSO: GETEVENT
  764.  
  765.           WinGetInfo - PROCEDURE
  766.           ─────────────────────────────────────────────────────────────────
  767.  
  768.            PURPOSE: Return complete information about an open window.
  769.  
  770.             SYNTAX: WINGETINFO winHandle%, win
  771.  
  772.            REMARKS: This procedure accepts the following argument(s):
  773.  
  774.                     Argument       Description
  775.                     ─────────────  ────────────────────────────────────────
  776.                     winHandle%     Handle of an existing window.
  777.                     win            A variable of type WINTYPE that holds
  778.                                    complete information about the window.
  779.  
  780.                     Use WINGETINFO() to return information about an open
  781.                     window.  On return, the WIN argument, a variable of
  782.                     type WINTYPE, will hold the window information.
  783.  
  784.  
  785.  
  786.  
  787.  
  788.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  789.           (c) Copyright 1993-94 DSE Software Publishing                  12
  790.  
  791.  
  792.  
  793.           PB/VISION(tm) LITE - Version 1.00
  794.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  795.  
  796.           WinHide - PROCEDURE
  797.           ─────────────────────────────────────────────────────────────────
  798.  
  799.            PURPOSE: Hides a displayed window.
  800.  
  801.             SYNTAX: WINHIDE winhandle%
  802.  
  803.            REMARKS: This procedure accepts the following argument(s):
  804.  
  805.                     Argument       Description
  806.                     ─────────────  ────────────────────────────────────────
  807.                     winhandle%     Handle of a valid window.
  808.  
  809.                     Use WINHIDE() to hide a displayed window.  The window
  810.                     can be re-displayed via the WINSHOW() procedure.
  811.  
  812.               NOTE: If the %AUTOCLOSE flags was used when the window was
  813.                     opened, WINHIDE() will automatically call WINCLOSE()
  814.                     and the window will be nonrecoverable.
  815.  
  816.           SEE ALSO: WINCLOSE, WINOPEN, WINPOPUP, WINSHOW
  817.  
  818.           WinHotPrint - PROCEDURE
  819.           ─────────────────────────────────────────────────────────────────
  820.  
  821.            PURPOSE: Prints text to a window in two colors.
  822.  
  823.             SYNTAX: WINHOTPRINT winHandle%, row%, col%, kolor%, text$
  824.  
  825.            REMARKS: This procedure accepts the following argument(s):
  826.  
  827.                     Argument       Description
  828.                     ─────────────  ────────────────────────────────────────
  829.                     winHandle%     Handle of a valid window.
  830.                     row%           Window relative row to print text.
  831.                     col%           Window relative column to print text.
  832.                     kolor%         Extended color attribute of text.
  833.                     text$          Text to print.
  834.  
  835.                     Use WINHOTPRINT() to print text to a window in two
  836.                     colors.  Using an extended color code (see
  837.                     TUTORIAL.DOC) the default text is printed with the
  838.                     primary color code, and any text enclosed between two
  839.                     tilde characters (~) is printed with the secondary
  840.                     color code.
  841.  
  842.                     Using a value of 0 for the COL% argument, the text will
  843.                     be centered on the line.
  844.  
  845.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  846.           (c) Copyright 1993-94 DSE Software Publishing                  13
  847.  
  848.  
  849.  
  850.           PB/VISION(tm) LITE - Version 1.00
  851.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  852.  
  853.           SEE ALSO: WINPRINT
  854.  
  855.            EXAMPLE: WINHOTPRINT winHandle%, 2, 4, &H1F17, "Hello, ~World!~"
  856.  
  857.  
  858.           WinInsertLine - PROCEDURE
  859.           ─────────────────────────────────────────────────────────────────
  860.  
  861.            PURPOSE: Inserts and scrolls down one line in a window
  862.  
  863.             SYNTAX: WININSERTLINE winHandle%, LineNo%
  864.  
  865.            REMARKS: This procedure accepts the following argument(s):
  866.  
  867.                     Argument       Description
  868.                     ─────────────  ────────────────────────────────────────
  869.                     winHandle%     Handle of a valid window.
  870.                     LineNo%        Line number to insert.
  871.  
  872.                     Use WININSERTLINE() to insert a single line in a
  873.                     window.  All text below that line is scrolled down.
  874.  
  875.           SEE ALSO: WINDELETELINE
  876.  
  877.           WinInstallCode - PROCEDURE
  878.           ─────────────────────────────────────────────────────────────────
  879.  
  880.            PURPOSE: Assign code to a window for multitasking.
  881.  
  882.             SYNTAX: WININSTALLCODE winHandle%, segptr%, offptr%
  883.  
  884.            REMARKS: This procedure accepts the following argument(s):
  885.  
  886.                     Argument       Description
  887.                     ─────────────  ────────────────────────────────────────
  888.                     winHandle%     Handle of a valid window.
  889.                     segptr%        Segment address of procedure to task.
  890.                     offptr%        Offset address of procedure to task.
  891.  
  892.                     Use WININSTALLCODE() to assign a predefined function to
  893.                     the specified window.  Whenever an event occurs that
  894.                     will effect that window, the given function is called
  895.                     with the handle and event number.
  896.  
  897.           SEE ALSO: WINOPEN, WINPOPUP, WINSHOW, TIMERINSTALLCODE
  898.  
  899.  
  900.  
  901.  
  902.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  903.           (c) Copyright 1993-94 DSE Software Publishing                  14
  904.  
  905.  
  906.  
  907.           PB/VISION(tm) LITE - Version 1.00
  908.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  909.  
  910.           WinLocate - PROCEDURE
  911.           ─────────────────────────────────────────────────────────────────
  912.  
  913.            PURPOSE: Relocate the cursor within window.
  914.  
  915.             SYNTAX: WINLOCATE winHandle%, row%, col%
  916.  
  917.            REMARKS: This procedure accepts the following argument(s):
  918.  
  919.                     Argument       Description
  920.                     ─────────────  ────────────────────────────────────────
  921.                     winHandle%     Handle of a valid window.
  922.                     row%           Window relative row to locate the
  923.                                    cursor.
  924.                     col%           Window relative column to locate the
  925.                                    cursor.
  926.  
  927.                     Use WINLOCATE() to reposition the internal cursor in a
  928.                     window.  Subsequent calls to WINWRITE(),
  929.                     WINWRITECHAR(), or WINWRITELN() will print at this
  930.                     location.
  931.  
  932.               NOTE: PB/VISION does _not_ maintain a visible cursor for each
  933.                     window.
  934.  
  935.           SEE ALSO: WINWRITE, WINWRITECHAR, WINWRITELN
  936.  
  937.           WinLock - PROCEDURE
  938.           ─────────────────────────────────────────────────────────────────
  939.  
  940.            PURPOSE: Locks out access to all other windows.
  941.  
  942.             SYNTAX: WINLOCK winHandle%
  943.  
  944.            REMARKS: This procedure accepts the following argument(s):
  945.  
  946.                     Argument       Description
  947.                     ─────────────  ────────────────────────────────────────
  948.                     winHandle%     Handle of window to lock in place.
  949.  
  950.                     Use WINLOCK() to lock out access to all other windows
  951.                     except the specified window.  The lock remains active
  952.                     until WINLOCK 0 is called or the window is removed or
  953.                     hidden.  The pulldown menu system and the status bar
  954.                     remain active.
  955.  
  956.           SEE ALSO: WINLOCKALL, WINSHOW
  957.  
  958.  
  959.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  960.           (c) Copyright 1993-94 DSE Software Publishing                  15
  961.  
  962.  
  963.  
  964.           PB/VISION(tm) LITE - Version 1.00
  965.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  966.  
  967.           WinLockAll - PROCEDURE
  968.           ─────────────────────────────────────────────────────────────────
  969.  
  970.            PURPOSE: Locks out access to all but the specified window.
  971.  
  972.             SYNTAX: WINLOCKALL winHandle%
  973.  
  974.            REMARKS: This procedure accepts the following argument(s):
  975.  
  976.                     Argument       Description
  977.                     ─────────────  ────────────────────────────────────────
  978.                     winHandle%     Handle of window to lock in place.
  979.  
  980.                     Use WINLOCKALL() to lock out access everything but the
  981.                     specified window.  The pulldown menu system and the
  982.                     status bar are also disabled.  The lock remains active
  983.                     until WINLOCKALL 0 is called.
  984.  
  985.               NOTE: Closing of hiding the locked window does _not_ disable
  986.                     the lock.  WINLOCKALL 0 must be called.
  987.  
  988.           SEE ALSO: WINLOCK, WINSHOW
  989.  
  990.           WinLockState% - FUNCTION
  991.           ─────────────────────────────────────────────────────────────────
  992.  
  993.            PURPOSE: Returns encoded info needed by WINLOCKRESTORE()
  994.  
  995.             SYNTAX: varname% = WINLOCKSTATE
  996.  
  997.            REMARKS: WINLOCKSTATE() returns an encoded value that is passed
  998.                     to WINLOCKRESTORE() upon termination of a modal window,
  999.                     menu, or data entry form.  The information contained in
  1000.                     the variable is the current state of WINLOCK() and
  1001.                     WINLOCKALL().
  1002.  
  1003.                     This function should be called on entry to a modal
  1004.                     window, menu, or data entry form routine.  When exiting
  1005.                     the routine, WINLOCKRESTORE() will re-instate any locks
  1006.                     that were previously enabled.
  1007.  
  1008.           SEE ALSO: WINLOCK, WINLOCKALL, WINLOCKRESTORE
  1009.  
  1010.           WinLockRestore - PROCEDURE
  1011.           ─────────────────────────────────────────────────────────────────
  1012.  
  1013.            PURPOSE: Restore the state of a locked window.
  1014.  
  1015.  
  1016.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1017.           (c) Copyright 1993-94 DSE Software Publishing                  16
  1018.  
  1019.  
  1020.  
  1021.           PB/VISION(tm) LITE - Version 1.00
  1022.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1023.  
  1024.             SYNTAX: WINLOCKRESTORE varname%
  1025.  
  1026.            REMARKS: This procedure accepts the following argument(s):
  1027.  
  1028.                     Argument       Description
  1029.                     ─────────────  ────────────────────────────────────────
  1030.                     varname%       Value returned by WINLOCKSTATE%()
  1031.  
  1032.                     Use WINLOCKRESTORE() to return the window locking
  1033.                     states that were present before the modal window, menu,
  1034.                     or data entry form was displayed.
  1035.  
  1036.           SEE ALSO: WINLOCK, WINLOCKALL, WINLOCKSTATE
  1037.  
  1038.           WinMain - PROCEDURE
  1039.           ─────────────────────────────────────────────────────────────────
  1040.  
  1041.            PURPOSE: Bring a window to the top of the screen.
  1042.  
  1043.             SYNTAX: WINMAIN winhandle%
  1044.  
  1045.            REMARKS: This procedure accepts the following argument(s):
  1046.  
  1047.                     Argument       Description
  1048.                     ─────────────  ────────────────────────────────────────
  1049.                     winhandle%     Handle of a valid window.
  1050.  
  1051.                     Use WINMAIN() to quickly display an open window.  If
  1052.                     the window is already being displayed, it will be moved
  1053.                     to the top of the window stack.
  1054.  
  1055.           SEE ALSO: WINOPEN, WINPOPUP, WINSHOW
  1056.  
  1057.           WinMaximize - PROCEDURE
  1058.           ─────────────────────────────────────────────────────────────────
  1059.  
  1060.            PURPOSE: Maximizes a window to full size or full screen.
  1061.  
  1062.             SYNTAX: WINMAXIMIZE winhandle%
  1063.  
  1064.            REMARKS: This procedure accepts the following argument(s):
  1065.  
  1066.                     Argument       Description
  1067.                     ─────────────  ────────────────────────────────────────
  1068.                     winhandle%     Handle of a valid window.
  1069.  
  1070.                     Use WINMAXIMIZE() to re-size a window to its full
  1071.                     virtual size.  If the size is larger than the screen,
  1072.  
  1073.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1074.           (c) Copyright 1993-94 DSE Software Publishing                  17
  1075.  
  1076.  
  1077.  
  1078.           PB/VISION(tm) LITE - Version 1.00
  1079.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1080.  
  1081.                     the window is adjusted to fit within the confines of
  1082.                     the screen.  To return the window to its original size,
  1083.                     use WINNORMALIZE().
  1084.  
  1085.                     If the window is re-sized with WINRESIZE() or with the
  1086.                     mouse, the window is no longer considered maximized.
  1087.  
  1088.           SEE ALSO: WINMINIMIZE, WINNORMALIZE
  1089.  
  1090.           WinMinimize - PROCEDURE
  1091.           ─────────────────────────────────────────────────────────────────
  1092.  
  1093.            PURPOSE: Minimizes a window to an icon.
  1094.  
  1095.             SYNTAX: WINMINIMIZE winhandle%
  1096.  
  1097.            REMARKS: This procedure accepts the following argument(s):
  1098.  
  1099.                     Argument       Description
  1100.                     ─────────────  ────────────────────────────────────────
  1101.                     winhandle%     Handle of a valid window.
  1102.  
  1103.                     Use WINMINIMIZE() to reduce a window to the smallest
  1104.                     possible icon.  All window controls are disabled and
  1105.                     only a title is displayed.
  1106.  
  1107.                     So that the window can be returned to normal via mouse
  1108.                     control, it is recommended that you add one of the
  1109.                     following two code fragments to your GETEVENT() loop:
  1110.  
  1111.                          CASE 217
  1112.                               WINNORMALIZE WINGET
  1113.  
  1114.                     or
  1115.  
  1116.                          CASE 217
  1117.                               WINCTRLBOX WINGET
  1118.  
  1119.                     To return the window to normal via software control,
  1120.                     use WINNORMALIZE().
  1121.  
  1122.           SEE ALSO: WINMAXIMIZE, WINNORMALIZE
  1123.  
  1124.           WinNormalize - PROCEDURE
  1125.           ─────────────────────────────────────────────────────────────────
  1126.  
  1127.            PURPOSE: Returns a window to its previous dimensions.
  1128.  
  1129.  
  1130.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1131.           (c) Copyright 1993-94 DSE Software Publishing                  18
  1132.  
  1133.  
  1134.  
  1135.           PB/VISION(tm) LITE - Version 1.00
  1136.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1137.  
  1138.             SYNTAX: WINNORMALIZE winhandle%
  1139.  
  1140.            REMARKS: This procedure accepts the following argument(s):
  1141.  
  1142.                     Argument       Description
  1143.                     ─────────────  ────────────────────────────────────────
  1144.                     winhandle%     Handle of a valid window.
  1145.  
  1146.                     Use WINNORMALIZE() to return a window to the state it
  1147.                     was in before WINMINIMIZE() or WINMAXIMIZE() was
  1148.                     called.  The window will be returned to its previous
  1149.                     position and size.
  1150.  
  1151.           SEE ALSO: WINMAXIMIZE, WINMINIMIZE
  1152.  
  1153.           WinModify - PROCEDURE
  1154.           ─────────────────────────────────────────────────────────────────
  1155.  
  1156.            PURPOSE: Change physical attributes of an open window
  1157.  
  1158.             SYNTAX: WINMODIFY winHandle%, kolor%, border%, borderKolor%,
  1159.                               TitleKolor%, flags%
  1160.  
  1161.            REMARKS: This procedure accepts the following argument(s):
  1162.  
  1163.                     Argument       Description
  1164.                     ─────────────  ────────────────────────────────────────
  1165.                     winhandle%     Handle of a valid window.
  1166.                     kolor%         New color of window text.
  1167.                     border%        New border style (ranging 0 to 17).
  1168.                     borderKolor%   New color of window border.
  1169.                     TitleKolor%    New color of window title.
  1170.                     flags%         New window flags (see WINOPEN()).
  1171.  
  1172.                     Use WINMODIFY() to change the visible attributes of a
  1173.                     window, after it has already been opened.
  1174.  
  1175.           SEE ALSO: WINOPEN, WINPOPUP, WINSHOW
  1176.  
  1177.           WinMove - PROCEDURE
  1178.           ─────────────────────────────────────────────────────────────────
  1179.  
  1180.            PURPOSE: Moves a window on the screen.
  1181.  
  1182.             SYNTAX: WINMOVE winHandle%, row%, col%
  1183.  
  1184.            REMARKS: This procedure accepts the following argument(s):
  1185.  
  1186.  
  1187.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1188.           (c) Copyright 1993-94 DSE Software Publishing                  19
  1189.  
  1190.  
  1191.  
  1192.           PB/VISION(tm) LITE - Version 1.00
  1193.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1194.  
  1195.                     Argument       Description
  1196.                     ─────────────  ────────────────────────────────────────
  1197.                     winhandle%     Handle of a valid window.
  1198.                     row%           Vert. position to move the window to.
  1199.                     col%           Horiz. position to move the window to.
  1200.  
  1201.                     Use WINMOVE() to move a window from one screen location
  1202.                     to another.  The window will maintain its relative
  1203.                     position within the window stack.
  1204.  
  1205.           SEE ALSO: WINSHOW
  1206.  
  1207.           WinNext - PROCEDURE
  1208.           ─────────────────────────────────────────────────────────────────
  1209.  
  1210.            PURPOSE: Brings forward the next logical window.
  1211.  
  1212.             SYNTAX: WINNEXT
  1213.  
  1214.            REMARKS: Use WINNEXT() to bring forward the next logical
  1215.                     displayed window.
  1216.  
  1217.           SEE ALSO: WINPREV
  1218.  
  1219.           WinOpen% - FUNCTION
  1220.           ─────────────────────────────────────────────────────────────────
  1221.  
  1222.            PURPOSE: Opens (creates) a new window.
  1223.  
  1224.             SYNTAX: winhandle% = WINOPEN% (rows%, cols%, kolor%, border%,
  1225.                                            borderKolor%, title$,
  1226.                                            titleColor%, flags%)
  1227.  
  1228.            REMARKS: This function accepts the following argument(s):
  1229.  
  1230.                     Argument       Description
  1231.                     ─────────────  ────────────────────────────────────────
  1232.                     rows%          Number of virtual rows in window.
  1233.                     cols%          Number of virtual columns in window.
  1234.                     kolor%         Color for window text.
  1235.                     border%        Border style for window.
  1236.                     borderKolor%   Color for window border.
  1237.                     title$         Text to use as window title.
  1238.                     TitleKolor%    Color for window title.
  1239.                     flags%         Window display flags
  1240.  
  1241.                     Use WINOPEN() to create a brand new virtual window.
  1242.                     The ROWS% and COLS% arguments refer to the "virtual"
  1243.  
  1244.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1245.           (c) Copyright 1993-94 DSE Software Publishing                  20
  1246.  
  1247.  
  1248.  
  1249.           PB/VISION(tm) LITE - Version 1.00
  1250.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1251.  
  1252.                     size, not the displayed size.  In PB/VISION(tm), window
  1253.                     can be larger than what is displayed.
  1254.  
  1255.                     The FLAGS% argument controls various display features
  1256.                     for the window and is built by logically OR'ing
  1257.                     constants defined in WINDOW.BI.
  1258.  
  1259.                     The %NOCOLOR flag is of specific interest because it
  1260.                     will reduce the memory requirements for that particular
  1261.                     window by 50%.  All text in that window will be
  1262.                     displayed in the default window color.
  1263.  
  1264.                     Constant       Description
  1265.                     ─────────────  ────────────────────────────────────────
  1266.                     %AUTOCLOSE     Forces window to close if it becomes
  1267.                                    hidden.
  1268.                     %AUTOSCROLL    Coordinates window scroll relative to
  1269.                                    window viewport and allows mouse and
  1270.                                    keyboard scrolling of window.
  1271.                     %BOTTOMBAR     Adds an attractive bottom bar to
  1272.                                    graphical windows that do not already
  1273.                                    have one.
  1274.                     %CONTROL       Add a control box icon to the window
  1275.                                    (See WINCTRLBOX().
  1276.                     %DRAGBAR       Add a drag bar to the window.
  1277.                     %HSCROLLBAR    Add a horizontal scroll bar to the
  1278.                                    window.
  1279.                     %MINMAX        Add minimize and maximize icons to the
  1280.                                    window.
  1281.                     %NOHORZBORDER  Remove horizontal border from window.
  1282.                     %NOCOLOR       Defines that all text in the window is
  1283.                                    of one color (saves 50% memory).
  1284.                     %NOHIDE        Does not allow window to be hidden.
  1285.                     %NOSELECT      Disables all mouse manipulation of a
  1286.                                    window.
  1287.                     %NOVERTBORDER  Remove vertical border from window.
  1288.                     %RESIZE        Add a resize icon to the window.
  1289.                     %SHADOW        Add a shadow to the window (lower/right)
  1290.                     %VSCROLLBAR    Add a vertical scroll bar to the window.
  1291.  
  1292.            RETURNS: WINOPEN%() returns a valid window handle, or 0 on
  1293.                     error. You will need to keep track of this handle for
  1294.                     later manipulation of the window.
  1295.  
  1296.           SEE ALSO: WINCLOSE, WINPOPUP, WINSHOW, WININSTALLCODE
  1297.  
  1298.  
  1299.  
  1300.  
  1301.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1302.           (c) Copyright 1993-94 DSE Software Publishing                  21
  1303.  
  1304.  
  1305.  
  1306.           PB/VISION(tm) LITE - Version 1.00
  1307.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1308.  
  1309.           WinPopup% - FUNCTION
  1310.           ─────────────────────────────────────────────────────────────────
  1311.  
  1312.            PURPOSE: Opens (creates) a new window and displays it.
  1313.  
  1314.             SYNTAX: winhandle% = WINPOPUP% (row%, col%, rows%, cols%,
  1315.                                              kolor%, border%, borderKolor%,
  1316.                                              title$, titleKolor%, flags%)
  1317.  
  1318.            REMARKS: This function accepts the following argument(s):
  1319.  
  1320.                     Argument       Description
  1321.                     ─────────────  ────────────────────────────────────────
  1322.                     row%           Vert. position to display the window.
  1323.                     col%           Horiz. position to display the window.
  1324.                     rows%          Number of virtual rows in window.
  1325.                     cols%          Number of virtual columns in window.
  1326.                     kolor%         Color for window text.
  1327.                     border%        Border style for window.
  1328.                     borderKolor%   Color for window border.
  1329.                     title$         Text to use as window title.
  1330.                     TitleKolor%    Color for window title.
  1331.                     flags%         Window display flags
  1332.  
  1333.                     Use WINPOPUP() to create and display a brand new
  1334.                     virtual window.  The ROWS% and COLS% arguments refer to
  1335.                     the both the "virtual" size _and_ the displayed size.
  1336.                     If a value of 0 is used for the ROW% and/or COL%
  1337.                     arguments, the window will auto-center in that plane.
  1338.  
  1339.                     This function is simply a faster way to create and
  1340.                     display a window.
  1341.  
  1342.            RETURNS: WINPOPUP%() returns a valid window handle, or 0 on
  1343.                     error.  You will need to keep track of this handle for
  1344.                     later manipulation of the window.
  1345.  
  1346.           SEE ALSO: WINCLOSE, WINOPEN, WININSTALLCODE
  1347.  
  1348.           WinPrev - PROCEDURE
  1349.           ─────────────────────────────────────────────────────────────────
  1350.  
  1351.            PURPOSE: Brings forward the last logical window.
  1352.  
  1353.             SYNTAX: WINPREV
  1354.  
  1355.            REMARKS: Use WINPREV() to bring forward the last logical
  1356.                     displayed window.
  1357.  
  1358.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1359.           (c) Copyright 1993-94 DSE Software Publishing                  22
  1360.  
  1361.  
  1362.  
  1363.           PB/VISION(tm) LITE - Version 1.00
  1364.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1365.  
  1366.           SEE ALSO: WINNEXT
  1367.  
  1368.           WinPrint - PROCEDURE
  1369.           ─────────────────────────────────────────────────────────────────
  1370.  
  1371.            PURPOSE: Print text in an open window.
  1372.  
  1373.             SYNTAX: WINPRINT winHandle%, row%, col%, kolor%, text$
  1374.  
  1375.            REMARKS: This procedure accepts the following argument(s):
  1376.  
  1377.                     Argument       Description
  1378.                     ─────────────  ────────────────────────────────────────
  1379.                     winHandle%     Handle of a valid window.
  1380.                     row%           Window relative row to print text.
  1381.                     col%           Window relative column to print text.
  1382.                     Kolor%         Color of text to print.
  1383.                     text$          Text to print.
  1384.  
  1385.                     Use WINPRINT() to print text to a window in the color
  1386.                     specified in the KOLOR% argument.  If a value of -1 is
  1387.                     used, the text is printed in the default window color.
  1388.                     Using a value of 0 for the COL% argument, the text will
  1389.                     be centered on the line.
  1390.  
  1391.           SEE ALSO: WINHOTPRINT, WINWRITE, WINWRITECHAR, WINWRITELN
  1392.  
  1393.           WinReColor - PROCEDURE
  1394.           ─────────────────────────────────────────────────────────────────
  1395.  
  1396.            PURPOSE: Changes color of window and all text within.
  1397.  
  1398.             SYNTAX: WINRECOLOR winHandle%, kolor%
  1399.  
  1400.            REMARKS: This procedure accepts the following argument(s):
  1401.  
  1402.                     Argument       Description
  1403.                     ─────────────  ────────────────────────────────────────
  1404.                     winHandle%     Handle of a valid window.
  1405.                     kolor%         New color for window and text.
  1406.  
  1407.                     Use WINCOLOR to change the color of an open window and
  1408.                     re-color all of the text in that window.
  1409.  
  1410.           SEE ALSO: ATTR
  1411.  
  1412.  
  1413.  
  1414.  
  1415.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1416.           (c) Copyright 1993-94 DSE Software Publishing                  23
  1417.  
  1418.  
  1419.  
  1420.           PB/VISION(tm) LITE - Version 1.00
  1421.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1422.  
  1423.           WinRefresh - PROCEDURE
  1424.           ─────────────────────────────────────────────────────────────────
  1425.  
  1426.            PURPOSE: Forces a re-display on an open window.
  1427.  
  1428.             SYNTAX: WINREFRESH winHandle%
  1429.  
  1430.            REMARKS: This procedure accepts the following argument(s):
  1431.  
  1432.                     Argument       Description
  1433.                     ─────────────  ────────────────────────────────────────
  1434.                     winHandle%     Handle of the window to refresh.
  1435.  
  1436.                     Use WINREFRESH() to update a window when automatic
  1437.                     window refreshing has been disabled with
  1438.                     WINREFRESHMODE().
  1439.  
  1440.                     A side-effect of this call is that all windows on top
  1441.                     of the window to be refreshed will also be refreshed.
  1442.  
  1443.           SEE ALSO: WINREFRESHMODE
  1444.  
  1445.           WinRefreshMode - PROCEDURE
  1446.           ─────────────────────────────────────────────────────────────────
  1447.  
  1448.            PURPOSE: Enables or disables screen refreshing.
  1449.  
  1450.             SYNTAX: WINREFRESHMODE mode%
  1451.  
  1452.            REMARKS: This procedure accepts the following argument(s):
  1453.  
  1454.                     Argument       Description
  1455.                     ─────────────  ────────────────────────────────────────
  1456.                     mode%          0 disables refreshing, 1 re-enables.
  1457.  
  1458.                     Use WINREFRESHMODE() to enable or disable automatic
  1459.                     screen refreshing of all displayed windows.  When
  1460.                     disabled, all printing to a window does not cause an
  1461.                     immediate update.  Use WINREFRESH() for this purpose.
  1462.  
  1463.           SEE ALSO: WINREFRESH, WINPRINT
  1464.  
  1465.           WInResize - PROCEDURE
  1466.           ─────────────────────────────────────────────────────────────────
  1467.  
  1468.            PURPOSE: Changes the displayed size of a window.
  1469.  
  1470.             SYNTAX: WINRESIZE winHandle%, rows%, cols%
  1471.  
  1472.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1473.           (c) Copyright 1993-94 DSE Software Publishing                  24
  1474.  
  1475.  
  1476.  
  1477.           PB/VISION(tm) LITE - Version 1.00
  1478.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1479.  
  1480.            REMARKS: This procedure accepts the following argument(s):
  1481.  
  1482.                     Argument       Description
  1483.                     ─────────────  ────────────────────────────────────────
  1484.                     winHandle%     Handle of the window to re-size.
  1485.                     rows%          New vertical dimension of window.
  1486.                     cols%          New horizontal dimension of window.
  1487.  
  1488.                     Use WINRESIZE() to change the displayed size of an open
  1489.                     window.  The "virtual" size is not affected.
  1490.  
  1491.           SEE ALSO: WINOPEN, WINPOPUP
  1492.  
  1493.           WinScrollBarGet - PROCEDURE
  1494.           ─────────────────────────────────────────────────────────────────
  1495.  
  1496.            PURPOSE: Returns the position of scroll pointers in a window.
  1497.  
  1498.             SYNTAX: WINSCROLLBARGET winHandle%, vpos%, hpos%
  1499.  
  1500.            REMARKS: This procedure accepts the following argument(s):
  1501.  
  1502.                     Argument       Description
  1503.                     ─────────────  ────────────────────────────────────────
  1504.                     winHandle%     Handle of the window to adjust.
  1505.                     vpos%          Vertical scroll bar position (1-100).
  1506.                     hpos%          Horizontal scroll bar position (1-100).
  1507.  
  1508.                     Use WINSCROLLBARGET() to return the position of the
  1509.                     horizontal and vertical scroll bars in a displayed
  1510.                     window.  Window scroll bars positions are measured in
  1511.                     percentages of 100.  If a window is re-sized, the
  1512.                     position indicator will be updated to reflect the
  1513.                     percentage.
  1514.  
  1515.           SEE ALSO: WINSCROLLBARSET
  1516.  
  1517.           WinScrollBarSet - PROCEDURE
  1518.           ─────────────────────────────────────────────────────────────────
  1519.  
  1520.            PURPOSE: Changes position of scroll bar pointers in a window.
  1521.  
  1522.             SYNTAX: WINSCROLLBARSET winHandle%, vpos%, hpos%
  1523.  
  1524.            REMARKS: This procedure accepts the following argument(s):
  1525.  
  1526.  
  1527.  
  1528.  
  1529.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1530.           (c) Copyright 1993-94 DSE Software Publishing                  25
  1531.  
  1532.  
  1533.  
  1534.           PB/VISION(tm) LITE - Version 1.00
  1535.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1536.  
  1537.                     Argument       Description
  1538.                     ─────────────  ────────────────────────────────────────
  1539.                     winHandle%     Handle of the window to adjust.
  1540.                     vpos%          Vertical scroll bar position (1-100).
  1541.                     hpos%          Horizontal scroll bar position (1-100).
  1542.  
  1543.                     Use WINSCROLLBARSET() to change the position of the
  1544.                     horizontal and vertical scroll bars on a displayed
  1545.                     window.  Window scroll bars positions are measured in
  1546.                     percentages of 100.  If a window is re-sized, the
  1547.                     position indicator will be updated to reflect the
  1548.                     percentage.
  1549.  
  1550.                     Using a value of -1 for either scroll bar will leave
  1551.                     the position as it is.
  1552.  
  1553.           SEE ALSO: WINSCROLLBARGET
  1554.  
  1555.           WinShow - PROCEDURE
  1556.           ─────────────────────────────────────────────────────────────────
  1557.  
  1558.            PURPOSE: Displays a window.
  1559.  
  1560.             SYNTAX: WINSHOW winHandle%, row%, col%, rows%, cols%
  1561.  
  1562.            REMARKS: This procedure accepts the following argument(s):
  1563.  
  1564.                     Argument       Description
  1565.                     ─────────────  ────────────────────────────────────────
  1566.                     winHandle%     Handle of window to display
  1567.                     row%           Vert. position to display the window.
  1568.                     col%           Horiz. position to display the window.
  1569.                     rows%          Number of window rows to display
  1570.                     cols%          Number of window columns to display.
  1571.  
  1572.                     Use WINSHOW() to place an open window on the screen. If
  1573.                     the window is already being displayed, it will be
  1574.                     brought to the top of the window stack.
  1575.  
  1576.                     If a value of 0 is used for the ROW% and/or COL%
  1577.                     arguments, the window will auto-center in that plane.
  1578.                     Using 25 and 80 for the ROWS% and COLS%, respectively,
  1579.                     will relive you of having to keep track of their actual
  1580.                     size as windows can never be displayed in a size larger
  1581.                     that their virtual size.
  1582.  
  1583.           SEE ALSO: WINOPEN
  1584.  
  1585.  
  1586.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1587.           (c) Copyright 1993-94 DSE Software Publishing                  26
  1588.  
  1589.  
  1590.  
  1591.           PB/VISION(tm) LITE - Version 1.00
  1592.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1593.  
  1594.           WinSwapColor - PROCEDURE
  1595.           ─────────────────────────────────────────────────────────────────
  1596.  
  1597.            PURPOSE: Swaps all occurrences one color with another in a
  1598.                     window.
  1599.  
  1600.             SYNTAX: WINSWAPCOLOR winHandle%, oldColor%, newColor%
  1601.  
  1602.            REMARKS: This procedure accepts the following argument(s):
  1603.  
  1604.                     Argument       Description
  1605.                     ─────────────  ────────────────────────────────────────
  1606.                     winHandle%     Handle of window to change.
  1607.                     oldColor%      Color to change.
  1608.                     newColor%      Color to change to.
  1609.  
  1610.                     Use WINSWAPCOLOR() to change all occurrences of one
  1611.                     color in a window to another color.
  1612.  
  1613.           SEE ALSO: WINRECOLOR
  1614.  
  1615.  
  1616.           WinViewPort - PROCEDURE
  1617.           ─────────────────────────────────────────────────────────────────
  1618.  
  1619.            PURPOSE: Changes the view within a window.
  1620.  
  1621.             SYNTAX: WINVIEWPORT winHandle%, row%, col%
  1622.  
  1623.            REMARKS: This procedure accepts the following argument(s):
  1624.  
  1625.                     Argument       Description
  1626.                     ─────────────  ────────────────────────────────────────
  1627.                     winHandle%     Handle of window to change view
  1628.                     row%           Virtual row to begin view at.
  1629.                     col%           Virtual column to begin view at.
  1630.  
  1631.                     Use WINVIEWPORT() to change the displayed contents of a
  1632.                     window.  Remember, in PB/VISION, windows can be larger
  1633.                     than the displayed portion.  This function provides the
  1634.                     means to indicate what part of the window you want to
  1635.                     start looking at.
  1636.  
  1637.           SEE ALSO: WINSHOW
  1638.  
  1639.  
  1640.  
  1641.  
  1642.  
  1643.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1644.           (c) Copyright 1993-94 DSE Software Publishing                  27
  1645.  
  1646.  
  1647.  
  1648.           PB/VISION(tm) LITE - Version 1.00
  1649.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1650.  
  1651.           WinWrite - PROCEDURE
  1652.           ─────────────────────────────────────────────────────────────────
  1653.  
  1654.            PURPOSE: Writes text to an open window.
  1655.  
  1656.             SYNTAX: WINWRITE winHandle%, text$
  1657.  
  1658.            REMARKS: This procedure accepts the following argument(s):
  1659.  
  1660.                     Argument       Description
  1661.                     ─────────────  ────────────────────────────────────────
  1662.                     winHandle%     Handle of window to write you.
  1663.                     text$          Text to write.
  1664.  
  1665.                     Use WINWRITE() to write text to a window at the current
  1666.                     internal window cursor position.  Text is always
  1667.                     printed using the last color specified by the last call
  1668.                     to WINCOLOR().
  1669.  
  1670.           SEE ALSO: WINPRINT, WINWRITECHAR, WINWRITELN
  1671.  
  1672.           WinWriteChar - PROCEDURE
  1673.           ─────────────────────────────────────────────────────────────────
  1674.  
  1675.            PURPOSE: Writes a character to an open window.
  1676.  
  1677.             SYNTAX: WINWRITECHAR winHandle%, char%
  1678.  
  1679.            REMARKS: This procedure accepts the following argument(s):
  1680.  
  1681.                     Argument       Description
  1682.                     ─────────────  ────────────────────────────────────────
  1683.                     winHandle%     Handle of window to write you.
  1684.                     char%          ASCII character to write.
  1685.  
  1686.                     Use WINWRITECHAR() to write an ASCII character  to a
  1687.                     window at the current internal window cursor position.
  1688.                     The character is always printed using the last color
  1689.                     specified by the last call to WINCOLOR().
  1690.  
  1691.           SEE ALSO: WINPRINT, WINWRITE, WINWRITELN
  1692.  
  1693.           WinWriteLn - PROCEDURE
  1694.           ─────────────────────────────────────────────────────────────────
  1695.  
  1696.            PURPOSE: Writes text and linefeed to an open window.
  1697.  
  1698.             SYNTAX: WINWRITELN winHandle%, text$
  1699.  
  1700.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1701.           (c) Copyright 1993-94 DSE Software Publishing                  28
  1702.  
  1703.  
  1704.  
  1705.           PB/VISION(tm) LITE - Version 1.00
  1706.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1707.  
  1708.            REMARKS: This procedure accepts the following argument(s):
  1709.  
  1710.                     Argument       Description
  1711.                     ─────────────  ────────────────────────────────────────
  1712.                     winHandle%     Handle of window to write to.
  1713.                     text$          Text to write.
  1714.  
  1715.                     Use WINWRITELN() to write text to a window at the
  1716.                     current internal window cursor position and then
  1717.                     advance the cursor to the beginning of the next line.
  1718.                     When the cursor reaches the last line, the window is
  1719.                     scrolled up.  Text is always printed using the last
  1720.                     color specified by the last call to WINCOLOR().
  1721.  
  1722.           SEE ALSO: WINPRINT, WINWRITE, WINWRITECHAR
  1723.  
  1724.  
  1725.  
  1726.  
  1727.  
  1728.  
  1729.  
  1730.  
  1731.  
  1732.  
  1733.  
  1734.  
  1735.  
  1736.  
  1737.  
  1738.  
  1739.  
  1740.  
  1741.  
  1742.  
  1743.  
  1744.  
  1745.  
  1746.  
  1747.  
  1748.  
  1749.  
  1750.  
  1751.  
  1752.  
  1753.  
  1754.  
  1755.  
  1756.  
  1757.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1758.           (c) Copyright 1993-94 DSE Software Publishing                  29
  1759.  
  1760.  
  1761.  
  1762.           PB/VISION(tm) LITE - Version 1.00
  1763.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1764.  
  1765.                                       Chapter 2
  1766.  
  1767.                               EVENT MANAGEMENT ROUTINES
  1768.  
  1769.           █████████████████████████████████████████████████████████████████
  1770.  
  1771.           GetEvent% - FUNCTION
  1772.           ─────────────────────────────────────────────────────────────────
  1773.  
  1774.            PURPOSE: Command dispatcher/monitor for keyboard/mouse events.
  1775.  
  1776.             SYNTAX: varname% = GETEVENT%(cmd%)
  1777.  
  1778.            REMARKS: Use GETEVENT%() to add event-driven processing to a
  1779.                     PB/VISION(tm) application.  GETEVENT%() takes control
  1780.                     of the application for 1 clock tick (.055 seconds) and
  1781.                     processes any pending keystrokes or mouse clicks.  When
  1782.                     an event occurs, the appropriate processing routines
  1783.                     are automatically invoked.  Upon completion,
  1784.                     GETEVENT%() returns a unique code (see below)
  1785.                     indicating the type of event that occurred.
  1786.  
  1787.           This function accepts the following argument(s):
  1788.  
  1789.                     Argument       Description
  1790.                     ─────────────  ────────────────────────────────────────
  1791.                     cmd%           Use '0' for this version.
  1792.  
  1793.            RETURNS: This function returns the following value(s):
  1794.  
  1795.                     The following event codes are returned when a key has
  1796.                     been pressed and it cannot be processed by any
  1797.                     displayed objects.  Use KEYGET%() to retrieve the
  1798.                     keystroke.
  1799.  
  1800.                     Value  Description
  1801.                     ─────  ────────────────────────────────────────────────
  1802.                     100    A key was pressed.  (Use KEYGET%() to retrieve.)
  1803.                     101    <CR> was pressed.
  1804.                     102    <ESC> was pressed.
  1805.                     103    <F1> was pressed.
  1806.                     104    <TAB> was pressed.
  1807.                     105    <SHIFT-TAB> was pressed.
  1808.                     106    <ALT-TAB> was pressed.
  1809.                     107    <CTRL-TAB> was pressed.
  1810.                     108    <ALT-SPACE> was pressed.
  1811.                     111    <UP> cursor key was pressed.
  1812.                     112    <DN> cursor key was pressed.
  1813.  
  1814.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1815.           (c) Copyright 1993-94 DSE Software Publishing                  30
  1816.  
  1817.  
  1818.  
  1819.           PB/VISION(tm) LITE - Version 1.00
  1820.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1821.  
  1822.                     113    <LEFT> cursor key was pressed.
  1823.                     114    <RIGHT> cursor key was pressed.
  1824.                     115    <PGUP> cursor key was pressed.
  1825.                     116    <PGDN> cursor key was pressed.
  1826.                     117    <HOME> cursor key was pressed.
  1827.                     118    <END> cursor key was pressed.
  1828.                     119    <INS> cursor key was pressed.
  1829.                     120    <DEL> cursor key was pressed.
  1830.                     121    <CTRL-PGUP> was pressed.
  1831.                     122    <CTRL-PGDN> was pressed.
  1832.                     123    <CTRL-HOME> was pressed.
  1833.                     124    <CTRL-END> was pressed.
  1834.                     125    <CTRL-INS> was pressed.
  1835.                     126    <CTRL-DEL> was pressed.
  1836.                     127    <CTRL-LEFT> was pressed.
  1837.                     128    <CTRL-RIGHT> was pressed.
  1838.                     129    <SHIFT-INS> was pressed.
  1839.  
  1840.                     The following event codes are returned when a displayed
  1841.                     window is manipulated with the mouse. Use WINGET%() to
  1842.                     retrieve the handle of the window manipulated.
  1843.  
  1844.                     Value  Description
  1845.                     ─────  ────────────────────────────────────────────────
  1846.                     200    Window GOTFOCUS event.
  1847.                     201    Window LOSTFOCUS event.
  1848.                     202    Window CLICK event.
  1849.                     203    Window CONTROLBOX event.
  1850.                     204    Window MINIMIZE event.
  1851.                     205    Window MAXIMIZE event.
  1852.                     206    Window MOVE event.
  1853.                     207    Window RESIZE event.
  1854.                     208    Window VERTICAL SCROLL PAD event.
  1855.                     209    Window VERTICAL SCROLL UP event.
  1856.                     210    Window VERTICAL SCROLL DN event.
  1857.                     211    Window HORIZONTAL SCROLL PAD event.
  1858.                     212    Window HORIZONTAL SCROLL LEFT event.
  1859.                     213    Window HORIZONTAL SCROLL RIGHT event.
  1860.                     214    Window CLOSE event.
  1861.                     215    Window HIDE event.
  1862.                     216    Window NOCLICK event.
  1863.                     217    Window clicked while minimized.
  1864.                     218    Window NORMALIZE event.
  1865.                     219    Window viewport was changed.
  1866.  
  1867.                     250    Right mouse button clicked.
  1868.  
  1869.           SEE ALSO: WINGET
  1870.  
  1871.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1872.           (c) Copyright 1993-94 DSE Software Publishing                  31
  1873.  
  1874.  
  1875.  
  1876.           PB/VISION(tm) LITE - Version 1.00
  1877.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1878.  
  1879.           HotKeyAdd - PROCEDURE
  1880.           ─────────────────────────────────────────────────────────────────
  1881.  
  1882.            PURPOSE: Defines a custom user "hot key"
  1883.  
  1884.             SYNTAX: HOTKEYADD scancode%, eventNo%
  1885.  
  1886.            REMARKS: This procedure accepts the following argument(s):
  1887.  
  1888.                     Argument      Description
  1889.                     ────────────  ────────────────────────────────────────
  1890.                     scancode%     Keyboard scan code to use as accelerator.
  1891.                     eventNo%      Custom event code to return to
  1892.                     GetEvent().
  1893.  
  1894.                     Use HOTKEYADD() to define a custom "hot key" event.
  1895.                     When the keyboard scan code is received, the custom
  1896.                     event number will be returned to GetEvent() or will be
  1897.                     passed to your installed window process.
  1898.  
  1899.           SEE ALSO: HOTKEYTOGGLE
  1900.  
  1901.           HotKeyToggle - PROCEDURE
  1902.           ─────────────────────────────────────────────────────────────────
  1903.  
  1904.            PURPOSE: Toggle the state of an individual hot key.
  1905.  
  1906.             SYNTAX: HOTKEYTOGGLE scancode%, mode%
  1907.  
  1908.            REMARKS: This procedure accepts the following argument(s):
  1909.  
  1910.                     Argument      Description
  1911.                     ────────────  ─────────────────────────────────────────
  1912.                     scancode%     Keyboard scan code to use as accelerator.
  1913.                     mode%         Initial mode (0=disabled, 1=enabled)
  1914.  
  1915.                     Use HOTKEYTOGGLE() to change the state of a hot key
  1916.                     entry.
  1917.  
  1918.           SEE ALSO: HOTKEYADD
  1919.  
  1920.           TimerInstallCode - PROCEDURE
  1921.           ─────────────────────────────────────────────────────────────────
  1922.  
  1923.            PURPOSE: Install a background task.
  1924.  
  1925.             SYNTAX: TIMERINSTALLCODE segptr%, offptr%
  1926.  
  1927.  
  1928.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1929.           (c) Copyright 1993-94 DSE Software Publishing                  32
  1930.  
  1931.  
  1932.  
  1933.           PB/VISION(tm) LITE - Version 1.00
  1934.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1935.  
  1936.            REMARKS: This procedure accepts the following argument(s):
  1937.  
  1938.                     Argument       Description
  1939.                     ─────────────  ────────────────────────────────────────
  1940.                     segptr%        Segment address of function to task.
  1941.                     offptr%        Offset address of function to task.
  1942.  
  1943.                     Use TIMERINSTALLCODE() to assign a background timer
  1944.                     task.  The assigned routine will be called up to 18
  1945.                     times per second so it should not tie up system
  1946.                     resources for excessive periods.  The routine should
  1947.                     resemble:
  1948.  
  1949.                          FUNCTION YourRoutine% (BYVAL UpdateSafe%)
  1950.                               YourRoutine% = SomeEventCode
  1951.                          END FUNCTION
  1952.  
  1953.                     When the assigned routine is called it is passed an
  1954.                     integer value of 0 or 1 (in the UPDATESAFE% parameter)
  1955.                     Only when 1 is passed is it safe to update the screen.
  1956.                     Since the routine you assign is a function, it can
  1957.                     return an event code back to the GETEVENT() routine if
  1958.                     desired.  Again, the event code can only be returned
  1959.                     when the UPDATESAFE% parameter is 1.
  1960.  
  1961.                     To remove the routine, pass 0 for both the SEGPTR% and
  1962.                     OFFPTR% parameter
  1963.  
  1964.               NOTE: Possible uses for this routine include creating a
  1965.                     background file printing routine, a "watch dog" for the
  1966.                     serial port, scrolling banner handler, etc.
  1967.  
  1968.           SEE ALSO: WININSTALLCODE
  1969.  
  1970.           WinCtrlBox - PROCEDURE
  1971.           ─────────────────────────────────────────────────────────────────
  1972.  
  1973.            PURPOSE: Displays a "control box" over an window.
  1974.  
  1975.             SYNTAX: WINCTRLBOX winHandle%
  1976.  
  1977.            REMARKS: This procedure accepts the following argument(s):
  1978.  
  1979.                     Argument      Description
  1980.                     ────────────  ─────────────────────────────────────────
  1981.                     winHandle%    Handle of displayed window.
  1982.                     menucolor     Variable of type MENUCOLORTYPE that
  1983.  
  1984.  
  1985.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  1986.           (c) Copyright 1993-94 DSE Software Publishing                  33
  1987.  
  1988.  
  1989.  
  1990.           PB/VISION(tm) LITE - Version 1.00
  1991.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  1992.  
  1993.                                   defines the displayed attributes of the
  1994.                                   control box window.
  1995.  
  1996.                     Use WINCTRLBOX() to display a window "control box".
  1997.                     The control box allows the user to close, move, re-
  1998.                     size, minimize, or maximize the window it is assigned
  1999.                     to.
  2000.  
  2001.           SEE ALSO: HOTKEYADD
  2002.  
  2003.  
  2004.  
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  
  2011.  
  2012.  
  2013.  
  2014.  
  2015.  
  2016.  
  2017.  
  2018.  
  2019.  
  2020.  
  2021.  
  2022.  
  2023.  
  2024.  
  2025.  
  2026.  
  2027.  
  2028.  
  2029.  
  2030.  
  2031.  
  2032.  
  2033.  
  2034.  
  2035.  
  2036.  
  2037.  
  2038.  
  2039.  
  2040.  
  2041.  
  2042.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2043.           (c) Copyright 1993-94 DSE Software Publishing                  34
  2044.  
  2045.  
  2046.  
  2047.           PB/VISION(tm) LITE - Version 1.00
  2048.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2049.  
  2050.                                       Chapter 3
  2051.  
  2052.                                    MOUSE ROUTINES
  2053.  
  2054.           █████████████████████████████████████████████████████████████████
  2055.  
  2056.           Mouse% - FUNCTION
  2057.           ─────────────────────────────────────────────────────────────────
  2058.  
  2059.            PURPOSE: Returns mouse button/position information.
  2060.  
  2061.             SYNTAX: varname% = MOUSE%(button%, cmd%)
  2062.  
  2063.            REMARKS: This function accepts the following argument(s):
  2064.  
  2065.                     Argument      Description
  2066.                     ────────────  ─────────────────────────────────────────
  2067.                     button%       Button to read.
  2068.  
  2069.                                   Value  Description
  2070.                                   ─────  ──────────────────────────────
  2071.                                     1    Left mouse button.
  2072.                                     2    Right mouse button.
  2073.                                     4    Middle mouse button.
  2074.  
  2075.                     cmd%          Mouse button property to read.
  2076.  
  2077.                                   Value  Description
  2078.                                   ─────  ──────────────────────────────
  2079.                                     1   Is button currently pressed.
  2080.                                     2   Button clicks since last call.
  2081.                                     3   Current mouse cursor row.
  2082.                                     4   Current mouse cursor column.
  2083.                                     5   Last mouse press row.
  2084.                                     6   Last mouse press column.
  2085.                                     7   Last mouse release row.
  2086.                                     8   Last mouse release column.
  2087.                                     9   Has the mouse status changed.
  2088.  
  2089.                     Use MOUSE%() to return specific properties of a given
  2090.                     mouse button.  Command number 1 returns a positive
  2091.                     value if the mouse is currently pressed.  Command 2 can
  2092.                     then returns the number of times the button was
  2093.                     pressed.  Command 9 returns a positive value if the
  2094.                     mouse is pressed and if it has been moved since the
  2095.                     last call to command 9.
  2096.  
  2097.           SEE ALSO: MOUSEINIT
  2098.  
  2099.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2100.           (c) Copyright 1993-94 DSE Software Publishing                  35
  2101.  
  2102.  
  2103.  
  2104.           PB/VISION(tm) LITE - Version 1.00
  2105.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2106.  
  2107.           MouseCursorOff - PROCEDURE
  2108.           ─────────────────────────────────────────────────────────────────
  2109.  
  2110.            PURPOSE: Turns the mouse cursor off.
  2111.  
  2112.             SYNTAX: MOUSECURSOROFF
  2113.  
  2114.            REMARKS: Use MOUSECURSOROFF() to turn off the mouse cursor.  For
  2115.                     each call to MOUSECURSOROFF(), an equal number of calls
  2116.                     to MOUSECURSORON() must be made.
  2117.  
  2118.           SEE ALSO: MOUSECURSORON, MOUSETERM
  2119.  
  2120.  
  2121.           MouseCursorOn - PROCEDURE
  2122.           ─────────────────────────────────────────────────────────────────
  2123.  
  2124.            PURPOSE: Turns the mouse cursor on.
  2125.  
  2126.             SYNTAX: MOUSECURSORON
  2127.  
  2128.            REMARKS: Use MOUSECURSORON() to turn the mouse on after a call
  2129.                     to MOUSEINIT() or a call to MOUSECURSOROFF().
  2130.  
  2131.           SEE ALSO: MOUSECURSOROFF, MOUSEINIT
  2132.  
  2133.  
  2134.           MouseGet% - FUNCTION
  2135.           ─────────────────────────────────────────────────────────────────
  2136.  
  2137.            PURPOSE: Retrieves the current position of the mouse.
  2138.  
  2139.             SYNTAX: varname = MOUSEGET%(row%, col%)
  2140.  
  2141.            REMARKS: This function accepts the following argument(s):
  2142.  
  2143.                     Argument     Description
  2144.                     ───────────  ─────────────────────────────────────────
  2145.                     row%         Current screen row is returned in here.
  2146.                     col%         Current screen column is returned in here.
  2147.  
  2148.                     Use MOUSEGET() to retrieve the current position of the
  2149.                     mouse cursor.  If any mouse buttons are pressed,
  2150.                     MOUSEGET() will also return the button value.
  2151.  
  2152.            RETURNS: This function returns the following value(s):
  2153.  
  2154.  
  2155.  
  2156.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2157.           (c) Copyright 1993-94 DSE Software Publishing                  36
  2158.  
  2159.  
  2160.  
  2161.           PB/VISION(tm) LITE - Version 1.00
  2162.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2163.  
  2164.                     Value  Description
  2165.                     ─────  ────────────────────────────────────────────────
  2166.                       0    No buttons are currently pressed.
  2167.                       1    The left mouse button is currently pressed.
  2168.                       2    The right mouse button is currently pressed.
  2169.                       4    The middle mouse button is currently pressed.
  2170.  
  2171.           SEE ALSO: MOUSESET
  2172.  
  2173.  
  2174.           MouseGetInfo - PROCEDURE
  2175.           ─────────────────────────────────────────────────────────────────
  2176.  
  2177.            PURPOSE: Retrieve information about the mouse.
  2178.  
  2179.             SYNTAX: MOUSEGETINFO major%, minor%, irq%, mtype%
  2180.  
  2181.            REMARKS: This procedure accepts the following argument(s):
  2182.  
  2183.                     Argument      Description
  2184.                     ────────────  ─────────────────────────────────────────
  2185.                     major%        Mouse driver major version number.
  2186.                     minor%        Mouse driver minor version number.
  2187.                     irq%          IRQ number mouse is installed on.
  2188.  
  2189.                                   Value  Description
  2190.                                   ─────  ──────────────────────────────
  2191.                                     0    PS/2 pointing device.
  2192.                                     1    not defined.
  2193.                                     2    IRQ2.
  2194.                                     3    IRQ3.
  2195.                                    ...   ...
  2196.                                     7    IRQ7.
  2197.  
  2198.                     mtype%        Type of mouse installed.
  2199.  
  2200.                                   Value  Description
  2201.                                   ─────  ──────────────────────────────
  2202.                                     1    bus mouse.
  2203.                                     2    serial mouse.
  2204.                                     3    Microsoft InPort.
  2205.                                     4    IBM PS/2 Pointing Device port.
  2206.                                     5    Hewlett-Packard mouse.
  2207.  
  2208.                     Use MOUSEGETINFO() to retrieve complete information on
  2209.                     an installed mouse and mouse driver.
  2210.  
  2211.           SEE ALSO: MOUSEINIT
  2212.  
  2213.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2214.           (c) Copyright 1993-94 DSE Software Publishing                  37
  2215.  
  2216.  
  2217.  
  2218.           PB/VISION(tm) LITE - Version 1.00
  2219.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2220.  
  2221.           MouseGetPress% - FUNCTION
  2222.           ─────────────────────────────────────────────────────────────────
  2223.  
  2224.            PURPOSE: Retrieves position of last mouse press.
  2225.  
  2226.             SYNTAX: varname = MOUSEGETPRESS%(button%, presses%, row%, col%)
  2227.  
  2228.            REMARKS: This function accepts the following argument(s):
  2229.  
  2230.                     Argument      Description
  2231.                     ────────────  ─────────────────────────────────────────
  2232.                     button%       Button to select.
  2233.  
  2234.                                   Value  Description
  2235.                                   ─────  ──────────────────────────────
  2236.                                     1    Left mouse button.
  2237.                                     2    Right mouse button.
  2238.                                     4    Middle mouse button.
  2239.  
  2240.                     presses%     Number of presses since last call.
  2241.                     row%         Screen row of last button press.
  2242.                     col%         Screen column of last button press.
  2243.  
  2244.                     Use MOUSEGETPRESS%() to retrieve the number of mouse
  2245.                     presses since the last call to this same function.  The
  2246.                     ROW% and COL% will hold the position of the very last
  2247.                     mouse press.
  2248.  
  2249.            RETURNS: This function returns the following value(s):
  2250.  
  2251.                     Value  Description
  2252.                     ─────  ────────────────────────────────────────────────
  2253.                       0    No buttons are currently pressed.
  2254.                       1    The left mouse button is currently pressed.
  2255.                       2    The right mouse button is currently pressed.
  2256.                       4    The middle mouse button is currently pressed.
  2257.  
  2258.           SEE ALSO: MOUSEGET, MOUSEGETRELEASE
  2259.  
  2260.  
  2261.           MouseGetRelease% - FUNCTION
  2262.           ─────────────────────────────────────────────────────────────────
  2263.  
  2264.            PURPOSE: Retrieves position of last mouse release.
  2265.  
  2266.             SYNTAX: varname = MOUSEGETRELEASE%(button%, releases%, row%,
  2267.                                                col%)
  2268.  
  2269.  
  2270.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2271.           (c) Copyright 1993-94 DSE Software Publishing                  38
  2272.  
  2273.  
  2274.  
  2275.           PB/VISION(tm) LITE - Version 1.00
  2276.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2277.  
  2278.            REMARKS: This function accepts the following argument(s):
  2279.  
  2280.                     Argument      Description
  2281.                     ────────────  ─────────────────────────────────────────
  2282.                     button%       Button to select.
  2283.                                   Value  Description
  2284.                                   ─────  ──────────────────────────────
  2285.                                     1    Left mouse button.
  2286.                                     2    Right mouse button.
  2287.                                     4    Middle mouse button.
  2288.  
  2289.                     releases%    Number of releases since last call.
  2290.                     row%         Screen row of last button releases.
  2291.                     col%         Screen column of last button releases.
  2292.  
  2293.                     Use MOUSEGETRELEASE%() to retrieve the number of mouse
  2294.                     releases since the last call to this same function.
  2295.                     The ROW% and COL% will hold the position of the very
  2296.                     last mouse release.
  2297.  
  2298.            RETURNS: This function returns the following value(s):
  2299.  
  2300.                     Value  Description
  2301.                     ─────  ────────────────────────────────────────────────
  2302.                       0    No buttons are currently pressed.
  2303.                       1    The left mouse button is currently pressed.
  2304.                       2    The right mouse button is currently pressed.
  2305.                       4    The middle mouse button is currently pressed.
  2306.  
  2307.           SEE ALSO: MOUSEGET, MOUSEGETPRESS
  2308.  
  2309.  
  2310.           MouseInit% - FUNCTION
  2311.           ─────────────────────────────────────────────────────────────────
  2312.  
  2313.            PURPOSE: Initializes the mouse and returns button count.
  2314.  
  2315.             SYNTAX: varname = MOUSEINIT%(buttons%)
  2316.  
  2317.            REMARKS: This function accepts the following argument(s):
  2318.  
  2319.                     Argument      Description
  2320.                     ────────────  ─────────────────────────────────────────
  2321.                     buttons%      Number of mouse buttons is returned here.
  2322.  
  2323.                     Use MOUSEINIT%() to initialize the mouse under
  2324.                     PB/VISION.  If a mouse is detected, the BUTTONS%
  2325.  
  2326.  
  2327.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2328.           (c) Copyright 1993-94 DSE Software Publishing                  39
  2329.  
  2330.  
  2331.  
  2332.           PB/VISION(tm) LITE - Version 1.00
  2333.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2334.  
  2335.                     parameter will hold the number of mouse buttons
  2336.                     available.
  2337.  
  2338.                     To display the mouse, MOUSECURSORON() must also be
  2339.                     called.  To set the mouse cursor style (text or
  2340.                     graphics), see APP.GRAPHICSMOUSE.
  2341.  
  2342.            RETURNS: Returns 0 if a mouse is not available.  Any other value
  2343.                     indicates a mouse is present.
  2344.  
  2345.           SEE ALSO: APP, MOUSECURSORON, MOUSETERM
  2346.  
  2347.  
  2348.           MouseSet - PROCEDURE
  2349.           ─────────────────────────────────────────────────────────────────
  2350.  
  2351.            PURPOSE: Moves the mouse to a specific screen location.
  2352.  
  2353.             SYNTAX: MOUSESET row%, col%
  2354.  
  2355.            REMARKS: This procedure accepts the following argument(s):
  2356.  
  2357.                     Argument      Description
  2358.                     ────────────  ─────────────────────────────────────────
  2359.                     row%          Screen row to move cursor to.
  2360.                     col%          Screen column to move cursor to.
  2361.  
  2362.                     Use MOUSESET() to relocate the mouse cursor to a new
  2363.                     screen location.
  2364.  
  2365.           SEE ALSO: MOUSEGET
  2366.  
  2367.           MouseSetWindow - PROCEDURE
  2368.           ─────────────────────────────────────────────────────────────────
  2369.  
  2370.            PURPOSE: Locks mouse within given screen boundaries.
  2371.  
  2372.             SYNTAX: MOUSESETWINDOW row%, col%, rows%, cols%
  2373.  
  2374.            REMARKS: This procedure accepts the following argument(s):
  2375.  
  2376.                     Argument      Description
  2377.                     ────────────  ─────────────────────────────────────────
  2378.                     row%          First row of mouse window
  2379.                     col%          First column of mouse window.
  2380.                     rows%         Vertical dimension of mouse window.
  2381.                     cols%         Horizontal dimension of mouse window.
  2382.  
  2383.  
  2384.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2385.           (c) Copyright 1993-94 DSE Software Publishing                  40
  2386.  
  2387.  
  2388.  
  2389.           PB/VISION(tm) LITE - Version 1.00
  2390.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2391.  
  2392.                     Use MOUSESETWINDOW() to lock the mouse within a given
  2393.                     location on the screen.  The cursor will not be
  2394.                     permitted to move out of this area.  To remove the
  2395.                     window, use the following code:
  2396.  
  2397.                          MOUSESETWINDOW 1, 1, pbvScrnRows, pbvScrnCols
  2398.  
  2399.           SEE ALSO: MOUSESET
  2400.  
  2401.  
  2402.           MouseTerm - PROCEDURE
  2403.           ─────────────────────────────────────────────────────────────────
  2404.  
  2405.            PURPOSE: Terminates mouse operation.
  2406.  
  2407.             SYNTAX: MOUSETERM
  2408.  
  2409.            REMARKS: Use MOUSETERM() to terminate mouse operation.  This
  2410.                     procedure should be called prior to the use of any of
  2411.                     the following PowerBASIC statements:
  2412.  
  2413.                          END
  2414.                          CHAIN
  2415.                          SLEEP
  2416.  
  2417.           SEE ALSO: MOUSECURSOROFF, MOUSEINIT
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423.  
  2424.  
  2425.  
  2426.  
  2427.  
  2428.  
  2429.  
  2430.  
  2431.  
  2432.  
  2433.  
  2434.  
  2435.  
  2436.  
  2437.  
  2438.  
  2439.  
  2440.  
  2441.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2442.           (c) Copyright 1993-94 DSE Software Publishing                  41
  2443.  
  2444.  
  2445.  
  2446.           PB/VISION(tm) LITE - Version 1.00
  2447.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2448.  
  2449.                                       Chapter 4
  2450.  
  2451.                                    DATA TYPES USED
  2452.  
  2453.           █████████████████████████████████████████████████████████████████
  2454.  
  2455.           MENUCOLORTYPE - TYPE
  2456.           ─────────────────────────────────────────────────────────────────
  2457.  
  2458.            PURPOSE: Menu and List definition TYPE.
  2459.  
  2460.            REMARKS: This TYPE has the following element(s):
  2461.  
  2462.                     Element        Description
  2463.                     ─────────────  ────────────────────────────────────────
  2464.                     kolor%         Color of menu/list text.
  2465.                     borderKolor%   Color of menu/list border.
  2466.                     titleKolor%    Color of menu/list title.
  2467.                     highlight%     Color of menu/list highlight bar.
  2468.                     sepbar%        Color of menu/list separator line.
  2469.                     cursor%        UNUSED
  2470.                     border%        Border style for window.
  2471.                     flags%         Help window display flags
  2472.  
  2473.                     Use the MENUCOLORTYPE type to define how menus and
  2474.                     lists will look when displayed.
  2475.  
  2476.           SEE ALSO: WINCTRLBOX
  2477.  
  2478.           WINTYPE - TYPE
  2479.           ─────────────────────────────────────────────────────────────────
  2480.  
  2481.            PURPOSE: Window definition TYPE.
  2482.  
  2483.            REMARKS: This TYPE has the following element(s):
  2484.  
  2485.                     Element        Description
  2486.                     ─────────────  ────────────────────────────────────────
  2487.                     row            Screen position where window is
  2488.                                    displayed.
  2489.                     col
  2490.                     rows           Dimensions of the displayed text portion
  2491.                                    of window.
  2492.                     cols
  2493.                     orows          Window text dimensions before re-sizing.
  2494.                     ocols
  2495.                     vrow           Starting positions of viewport into
  2496.                                    window.
  2497.  
  2498.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2499.           (c) Copyright 1993-94 DSE Software Publishing                  42
  2500.  
  2501.  
  2502.  
  2503.           PB/VISION(tm) LITE - Version 1.00
  2504.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2505.  
  2506.                     vcol
  2507.                     vrows          Actual virtual dimensions of window.
  2508.                     vcols
  2509.                     winattr        Default color attribute of window
  2510.                                    contents.
  2511.                     borderattr     Attribute of window border.
  2512.                     titleattr      Attribute of window title.
  2513.                     border         Border style.
  2514.                     titleLen       Length of title string.
  2515.                     Title$         Text of window title.
  2516.                     vbarPos        Window scroll bar gauge (1% to 100%).
  2517.                     hbarPos
  2518.                     flags          Flags used when window opened.
  2519.                     winmode        INTERNAL - DO NOT CHANGE.
  2520.                     UserObject     User Object Pointer.
  2521.                     unused2        FUTURE USE.
  2522.                     WI             Relative window index.
  2523.                     ObjPtr         Handle of attached window object code.
  2524.                     internal1      INTERNAL - DO NOT CHANGE.
  2525.                     signature      Signature of window.
  2526.                     cpos           Encoded window cursor position (see
  2527.                                    WINLOCATE).
  2528.                     cattr          Current window print attribute (see
  2529.                                    WINCOLOR).
  2530.                     bufferHandle   Handle of window buffer.
  2531.                     changed        Flag indicating window needs to be
  2532.                                    refreshed.
  2533.                     unused3        FUTURE USE.
  2534.                     listPtr        Top of list (if list style routine).
  2535.                     winCodePrt     Pointer to window driver.
  2536.                     winUserPtr     Pointer to WININSTALLCODE() routine.
  2537.                     srows          Screen dimensions of the displayed
  2538.                                    window.
  2539.                     scols
  2540.  
  2541.                     Use the WINTYPE type to define how windows will look
  2542.                     when displayed.
  2543.  
  2544.           SEE ALSO: WINOPEN, WINPOPUP, WINGETINFO
  2545.  
  2546.  
  2547.  
  2548.  
  2549.  
  2550.  
  2551.  
  2552.  
  2553.  
  2554.  
  2555.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2556.           (c) Copyright 1993-94 DSE Software Publishing                  43
  2557.  
  2558.  
  2559.  
  2560.           PB/VISION(tm) LITE - Version 1.00
  2561.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2562.  
  2563.  
  2564.  
  2565.  
  2566.  
  2567.  
  2568.  
  2569.                                         Index
  2570.  
  2571.  
  2572.                  %AUTOCLOSE 21               G
  2573.                  %AUTOSCROLL 21              GetEvent 30
  2574.                  %BOTTOMBAR 21
  2575.                  %CONTROL 21                 H
  2576.                  %DRAGBAR 21                 HotKeyAdd 31
  2577.                  %HSCROLLBAR 21              HotKeyToggle 32
  2578.                  %MENUBAR 5
  2579.                  %MINMAX 21                  M
  2580.                  %NOCOLOR 21                 MENUCOLORTYPE 42
  2581.                  %NOHIDE 21                  Mouse 35
  2582.                  %NOHORZBORDER 21            MouseCursorOff 35
  2583.                  %NOSELECT 21                MouseCursorOn 36
  2584.                  %NOVERTBORDER 21            MouseGet 36
  2585.                  %RESIZE 21                  MouseGetInfo 37
  2586.                  %SHADOW 21                  MouseGetPress 37
  2587.                  %STATUSBAR 5                MouseGetRelease 38
  2588.                  %VSCROLLBAR 21              MouseInit 39
  2589.                                              MouseSet 40
  2590.                  A                           MouseSetWindow 40
  2591.                  App 5                       MouseTerm 41
  2592.                  App.attr 5
  2593.                  App.flags 5                 T
  2594.                  App.graphicsMode 5          TimerInstallCode 32
  2595.                  App.graphicsMouse 5
  2596.                  App.menuAttr 5              W
  2597.                  App.Pattern 5               WinClose 8
  2598.                  App.rows 5                  WinCls 9
  2599.                  App.snow 5                  WinColor 9
  2600.                  App.statusAttr 5            WinCopy% 10
  2601.                  App.title 5                 WinCtrlBox 33
  2602.                  App.titleAttr 5             WinDeleteLine 10
  2603.                  AppClose 6                  WinDrawBox 11
  2604.                  AppInit 6                   WinFill 11
  2605.                  AppPause 7                  WinGet 12
  2606.                  AppRefresh 7                WinGetInfo 12
  2607.                  AppResume 7                 WinHide 12
  2608.                  AppTitle 5                  WinHotPrint 13
  2609.                  Attr% 7                     WinInsertLine 14
  2610.                                              WinInstallCode 14
  2611.  
  2612.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2613.           (c) Copyright 1993-94 DSE Software Publishing                  44
  2614.  
  2615.  
  2616.  
  2617.           PB/VISION(tm) LITE - Version 1.00
  2618.           ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  2619.  
  2620.                  WinLocate 14                WinPrint 23
  2621.                  WinLock 15                  WinReColor 23
  2622.                  WinLockAll 15               WinRefresh 23
  2623.                  WinLockRestore 16           WinRefreshMode 24
  2624.                  WinLockState% 16            WInResize 24
  2625.                  WinMain 17                  WinScrollBarGet 25
  2626.                  WinMaximize  17             WinScrollBarSet  25
  2627.                  WinMinimize  18             WinShow 26
  2628.                  WinModify 19                WinSwapColor 26
  2629.                  WinMove 19                  WinTitle 8
  2630.                  WinNext 20                  WINTYPE 42
  2631.                  WinNormalize  18            WinViewPort 27
  2632.                  WinOpen% 20                 WinWrite 27
  2633.                  WinPopup% 21                WinWriteChar 28
  2634.                  WinPrev 22                  WinWriteLn 28
  2635.  
  2636.  
  2637.  
  2638.  
  2639.  
  2640.  
  2641.  
  2642.  
  2643.  
  2644.  
  2645.  
  2646.  
  2647.  
  2648.  
  2649.  
  2650.  
  2651.  
  2652.  
  2653.  
  2654.  
  2655.  
  2656.  
  2657.  
  2658.  
  2659.  
  2660.  
  2661.  
  2662.  
  2663.  
  2664.  
  2665.  
  2666.  
  2667.  
  2668.  
  2669.           ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  2670.           (c) Copyright 1993-94 DSE Software Publishing                  45
  2671.  
  2672.