Annotation of coherent/g/usr/bin/vsh/winlib/winfun.h, revision 1.1

1.1     ! root        1: /*
        !             2:  *      HEADER file for windows library
        !             3:  *
        !             4:  *      Copyright (c) 1990-93 by Udo Munk
        !             5:  */
        !             6: 
        !             7: /* ------------------------------------------------------------------------ */
        !             8: 
        !             9: /*
        !            10:  *     Define additional control codes for terminals where
        !            11:  *     used function keys are missing
        !            12:  */
        !            13: #define W_KEY_REFR      0x0c    /* CNTL-L: refresh */
        !            14: #define W_KEY_NPAGE     0x0e    /* CNTL-N: next page */
        !            15: #define W_KEY_PPAGE     0x10    /* CNTL-P: previous page */
        !            16: #define W_KEY_HOME      0x01    /* CNTL-A: begin of list/field */
        !            17: #define W_KEY_LL        0x05    /* CNTL-E: end of list/field */
        !            18: #define W_KEY_DC        0x04    /* CNTL-D: remove character under cursor */
        !            19: #define W_KEY_DL        0x15    /* CNTL-U: remove the whole input */
        !            20: #define W_KEY_IC       0x09    /* CNTL-I: insert character/line */
        !            21: 
        !            22: #define W_KEY_TAB      0x09    /* CNTL-I: TAB, go to next field */
        !            23: #define W_KEY_BTAB     0x02    /* CNTL-B: back-TAB, go to previous field */
        !            24: 
        !            25: /* ------------------------------------------------------------------------ */
        !            26: 
        !            27: /*
        !            28:  *      return values of the library functions
        !            29:  */
        !            30: #define WIN_OK         0       /* function executed */
        !            31: #define WIN_ABORT       94      /* function aborted */
        !            32: #define WIN_PREVFIE     95      /* dialog: previous field */
        !            33: #define WIN_NEXTFIE     96      /* dialog: next field */
        !            34: #define WIN_PREVMEN    97      /* pulldown menu: left */
        !            35: #define WIN_NEXTMEN    98      /* pulldown menu: right */
        !            36: #define WIN_ERR                99      /* error in function */
        !            37: 
        !            38: /* ------------------------------------------------------------------------ */
        !            39: 
        !            40: /*
        !            41:  *      list of curses windows
        !            42:  */
        !            43: typedef struct w_list {
        !            44:        WINDOW *w_w;            /* pointer to curses window */
        !            45:        struct w_list *w_next;  /* pointer to next entry of the list */
        !            46: } W_LIST;
        !            47: 
        !            48: /* ------------------------------------------------------------------------ */
        !            49: 
        !            50: /*
        !            51:  *      structure of one entry in pulldown menus
        !            52:  */
        !            53: struct menu {
        !            54:        char *m_text;           /* text of this menu line */
        !            55:        int  m_opt;             /* number of character to select this entry */
        !            56: };
        !            57: 
        !            58: /* ------------------------------------------------------------------------ */
        !            59: 
        !            60: #define MAXGRP  4               /* max number of groups in button box */
        !            61: #define MAXBUT  3               /* max number of buttons in one group */
        !            62: 
        !            63: /*
        !            64:  *      structure of one button
        !            65:  */
        !            66: struct button {
        !            67:        char *b_text;           /* label of the button */
        !            68:        int  b_val;             /* value of the button */
        !            69: };
        !            70: 
        !            71: /*
        !            72:  *      structure of a group of buttons
        !            73:  */
        !            74: struct bgroup {
        !            75:        char *g_text;           /* title of the group */
        !            76:        int  g_anz;             /* number of buttons in the group */
        !            77:        struct button *g_ptr[MAXBUT];/* pointers to the button structs */
        !            78: };
        !            79: 
        !            80: /*
        !            81:  *      structure of a button box
        !            82:  */
        !            83: struct bbox {
        !            84:        char *b_text;           /* title of the box */
        !            85:        int  b_anz;             /* number of groups in the box */
        !            86:        struct bgroup *b_ptr[MAXGRP];/* pointers to the group structs */
        !            87: };
        !            88: 
        !            89: /* ------------------------------------------------------------------------ */
        !            90: 
        !            91: #define MAXELM  2               /* max number of elements per dialog */
        !            92: 
        !            93: #define FIELD   1               /* type of element: input field */
        !            94: 
        !            95: /*
        !            96:  *      structure of a element
        !            97:  */
        !            98: struct delem {
        !            99:        char e_typ;             /* typ of element */
        !           100:        char *e_text;           /* label of element */
        !           101:        int  e_len;             /* size of input field */
        !           102:        char *e_data;           /* pointer to memory for input */
        !           103: };
        !           104: 
        !           105: /*
        !           106:  *      structure of a dialog
        !           107:  */
        !           108: struct dial {
        !           109:        char *d_text;           /* title of the dialog */
        !           110:        int  d_anz;             /* number of elements */
        !           111:        struct delem *d_ptr[MAXELM];/* pointers to the elements */
        !           112: };
        !           113: 
        !           114: /* ------------------------------------------------------------------------ */
        !           115: 
        !           116: /*
        !           117:  *     structure of a scrollbar
        !           118:  */
        !           119: typedef struct scrollbar {
        !           120:        WINDOW  *sc_window;     /* curses window for scrollbar */
        !           121:        int     sc_size;        /* high of the scrollbar */
        !           122:        int     sc_position;    /* position of the slider */
        !           123: } SCROLLBAR;
        !           124: 
        !           125: /* ------------------------------------------------------------------------ */
        !           126: 
        !           127: /*
        !           128:  *      structure of a list box
        !           129:  */
        !           130: typedef struct listbox {
        !           131:        char *l_text;           /* title of the box */
        !           132:        int l_rows;             /* no. of rows of the list */
        !           133:        int l_cols;             /* no. of columns of the list */
        !           134:        int l_vbar;             /* flag: list with vertical scroll bar? */
        !           135:        WINDOW *wb;             /* window for the whole box */
        !           136:        WINDOW *wl;             /* window for the list */
        !           137:        SCROLLBAR *bar;         /* scrollbar for list */
        !           138: } LISTBOX;
        !           139: 
        !           140: /* ------------------------------------------------------------------------ */
        !           141: 
        !           142: #define PFKLABLEN  6           /* size of a function key label */
        !           143: 
        !           144: /*
        !           145:  *      structure of a function key
        !           146:  */
        !           147: struct pfkey {
        !           148:        char label[PFKLABLEN+1];/* label of the function key */
        !           149:        char *cmd;              /* configurated command */
        !           150: };
        !           151: 
        !           152: /* ------------------------------------------------------------------------ */
        !           153: 
        !           154: /*
        !           155:  *      import graphics character set
        !           156:  */
        !           157: extern chtype ul_corner, ur_corner, ll_corner, lr_corner;
        !           158: extern chtype r_tee, l_tee, b_tee, t_tee;
        !           159: extern chtype h_line, v_line;
        !           160: extern chtype u_arrow, d_arrow, checkboard, fullboard;

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.