home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / INFO / NCSATELN / TEL23SRC.ZIP / INCLUDE / VSDATA.H < prev    next >
Encoding:
C/C++ Source or Header  |  1991-02-16  |  3.4 KB  |  84 lines

  1. /*
  2. *        %W%    (NCSA)    %G%
  3. *
  4. *      Virtual Screen Kernel Data/Structure Definitions
  5. *                          (vsdata.h)
  6. *  
  7. *    National Center for Supercomputing Applications
  8. *      by Gaige B. Paulsen
  9. *
  10. *    This file contains the control and interface calls for the NCSA
  11. *  Virtual Screen Kernel.
  12. *
  13. *      Version Date    Notes
  14. *      ------- ------  ---------------------------------------------------
  15. *      0.01    861102  Initial coding -GBP
  16. *        2.1        871130    NCSA Telnet 2.1 -GBP
  17. *        2.2     880715    NCSA Telnet 2.2 -GBP
  18. *        2.3        900527    NCSA Telnet 2.3 -QAK
  19. *
  20. */
  21.  
  22. #ifndef VSDATA_H
  23.  
  24. #define MAXWID 132              /* The absolute maximum number of chars/line */
  25.  
  26. typedef struct VSline {
  27.     struct VSline *next,        /* Pointer to next line */
  28.         *prev;                  /* Pointer to previous line */
  29.     char *text;                  /* Text for the line */
  30. }VSline;
  31.  
  32. typedef struct VSscrn {
  33.     VSline
  34.          *scrntop,          /* top of the current screen                     */
  35.          *buftop,           /* top of the current buffer                     */
  36.          *vistop,            /* top of the visible area of screen             */
  37.         **attrst,            /* pointer the array of attribute lines         */
  38.         **linest;           /* pointer the array of  real screen lines      */
  39.     int  lines,                /* How many lines are in the arrays above....   */
  40.          maxlines,          /* maximum number of lines to save off top      */
  41.          numlines,          /* number of lines currently saved off top      */
  42.          allwidth,          /* real maximum width for this window           */
  43.          maxwidth,          /* current maximum width for this window        */
  44.          savelines,         /* save lines off top? 0=no                     */
  45.          ESscroll,            /* Scroll screen when ES received                */
  46.          attrib,            /* current attibute                             */
  47.          x,y,               /* current cursor positon                       */
  48.          Px,Py,Pattrib,     /* saved cursor position and attribute          */
  49.          VSIDC,             /* Insert/delete character mode 0=draw line     */
  50.          DECAWM,            /* Auto Wrap Mode 0=off                         */
  51.          DECCKM,            /* Cursor Key Mode                              */
  52.          DECPAM,            /* keyPad Application Mode                        */
  53.          G0,G1,                /* Character set identifiers                     */
  54.          charset,            /* Character set mode                             */
  55.          IRM,               /* Insert/Replace Mode                          */
  56.          escflg,            /* Current Escape level                            */
  57.          top, bottom,       /* Vertical bounds of the screen                 */
  58.          Rtop,Rbottom,        /* Vertical bounds of Region                     */
  59.          Rleft,Rright,        /* Horizontal bounds of Region                     */
  60.          parmptr;           /* pointer to current parm                         */
  61.     int  parms[6];          /* Ansi Parameters                                 */
  62.     char *tabs;             /* pointer to array for tab settings             */
  63. }VSscrn;
  64.  
  65. typedef struct VSscrndata {
  66.     VSscrn *loc;             /* Location of the Screen record for this scrn */
  67.     int stat;                   /* status of this screen (0=Uninitialized,     */
  68.                              /*                        1=In Use             */
  69.                              /*                        2=Inited, but not IU */
  70. }VSscrndata;
  71.  
  72. #ifdef VSMASTER
  73. VSscrn *VSIw;
  74. int VSIwn;
  75. #else
  76. extern VSscrn *VSIw;
  77. extern int VSIwn;
  78. #endif
  79.  
  80. #define VSPBOTTOM (VSIw->lines) 
  81.  
  82. #define VSDATA_H
  83. #endif
  84.