Annotation of pmsdk/include/bsesub.h, revision 1.1.1.2

1.1       root        1: /***************************************************************************\
                      2: *
                      3: * Module Name: BSESUB.H
                      4: *
                      5: * OS/2 Base Include File
                      6: *
1.1.1.2 ! root        7: * Copyright (c) 1987,1989  Microsoft Corporation
1.1       root        8: *
                      9: *****************************************************************************
                     10: *
                     11: * Subcomponents marked with "+" are partially included by default
                     12: *   #define:                To include:
                     13: *
                     14: *   INCL_KBD                KBD
                     15: *   INCL_VIO                VIO
                     16: *   INCL_MOU                MOU
                     17: *
                     18: \***************************************************************************/
                     19: 
                     20: #ifdef INCL_SUB
                     21: 
                     22: #define INCL_KBD
                     23: #define INCL_VIO
                     24: #define INCL_MOU
                     25: 
                     26: #endif /* INCL_SUB */
                     27: 
                     28: #ifdef INCL_KBD
                     29: 
                     30: typedef SHANDLE         HKBD;
                     31: typedef HKBD    far *   PHKBD;
                     32: 
                     33: USHORT APIENTRY KbdRegister (PSZ, PSZ, ULONG);
                     34: 
1.1.1.2 ! root       35: #define KR_KBDCHARIN        0x00000001L
        !            36: #define KR_KBDPEEK          0x00000002L
        !            37: #define KR_KBDFLUSHBUFFER   0x00000004L
        !            38: #define KR_KBDGETSTATUS     0x00000008L
        !            39: #define KR_KBDSETSTATUS     0x00000010L
        !            40: #define KR_KBDSTRINGIN      0x00000020L
        !            41: #define KR_KBDOPEN          0x00000040L
        !            42: #define KR_KBDCLOSE         0x00000080L
        !            43: #define KR_KBDGETFOCUS      0x00000100L
        !            44: #define KR_KBDFREEFOCUS     0x00000200L
        !            45: #define KR_KBDGETCP         0x00000400L
        !            46: #define KR_KBDSETCP         0x00000800L
        !            47: #define KR_KBDXLATE         0x00001000L
        !            48: #define KR_KBDSETCUSTXT     0x00002000L
1.1       root       49: 
                     50: #define IO_WAIT     0
                     51: #define IO_NOWAIT   1
                     52: 
                     53: USHORT APIENTRY KbdDeRegister ( void );
                     54: 
                     55: /* KBDKEYINFO structure, for KbdCharIn and KbdPeek */
                     56: 
                     57: typedef struct _KBDKEYINFO {    /* kbci */
                     58:         UCHAR    chChar;
                     59:         UCHAR    chScan;
                     60:         UCHAR    fbStatus;
                     61:         UCHAR    bNlsShift;
                     62:         USHORT   fsState;
                     63:         ULONG    time;
                     64:         }KBDKEYINFO;
                     65: typedef KBDKEYINFO far *PKBDKEYINFO;
                     66: 
                     67: USHORT APIENTRY KbdCharIn ( PKBDKEYINFO, USHORT, HKBD );
                     68: USHORT APIENTRY KbdPeek ( PKBDKEYINFO, HKBD );
                     69: 
                     70: /* structure for KbdStringIn() */
                     71: 
                     72: typedef struct _STRINGINBUF {   /* kbsi */
                     73:         USHORT cb;
                     74:         USHORT cchIn;
                     75:         } STRINGINBUF;
                     76: typedef STRINGINBUF far *PSTRINGINBUF;
                     77: 
                     78: USHORT APIENTRY KbdStringIn ( PCH, PSTRINGINBUF, USHORT, HKBD );
                     79: 
                     80: USHORT APIENTRY KbdFlushBuffer ( HKBD );
                     81: 
1.1.1.2 ! root       82: /* KBDINFO.fsMask */
        !            83: 
        !            84: #define KEYBOARD_ECHO_ON            0x0001
        !            85: #define KEYBOARD_ECHO_OFF           0x0002
        !            86: #define KEYBOARD_BINARY_MODE        0x0004
        !            87: #define KEYBOARD_ASCII_MODE         0x0008
        !            88: #define KEYBOARD_MODIFY_STATE       0x0010
        !            89: #define KEYBOARD_MODIFY_INTERIM     0x0020
        !            90: #define KEYBOARD_MODIFY_TURNAROUND  0x0040
        !            91: #define KEYBOARD_2B_TURNAROUND      0x0080
        !            92: #define KEYBOARD_SHIFT_REPORT       0x0100
        !            93: 
        !            94: #ifndef INCL_DOSDEVIOCTL  /* following constants defined in bsedev.h */
        !            95: 
        !            96: /* KBDINFO.fsState/KBDKEYINFO.fsState/KBDTRANS.fsState */
        !            97: 
        !            98: #define RIGHTSHIFT     0x0001
        !            99: #define LEFTSHIFT      0x0002
        !           100: #define CONTROL        0x0004
        !           101: #define ALT            0x0008
        !           102: #define SCROLLLOCK_ON  0x0010
        !           103: #define NUMLOCK_ON     0x0020
        !           104: #define CAPSLOCK_ON    0x0040
        !           105: #define INSERT_ON      0x0080
        !           106: #define LEFTCONTROL    0x0100
        !           107: #define LEFTALT        0x0200
        !           108: #define RIGHTCONTROL   0x0400
        !           109: #define RIGHTALT       0x0800
        !           110: #define SCROLLLOCK     0x1000
        !           111: #define NUMLOCK        0x2000
        !           112: #define CAPSLOCK       0x4000
        !           113: #define SYSREQ         0x8000
        !           114: 
        !           115: #endif  /* INCL_DOSDEVIOCTL */
        !           116: 
1.1       root      117: /* KBDINFO structure, for KbdSet/GetStatus */
                    118: typedef struct _KBDINFO {       /* kbst */
                    119:         USHORT cb;
                    120:         USHORT fsMask;
                    121:         USHORT chTurnAround;
                    122:         USHORT fsInterim;
                    123:         USHORT fsState;
                    124:         }KBDINFO;
                    125: typedef KBDINFO far *PKBDINFO;
                    126: 
                    127: USHORT APIENTRY KbdSetStatus ( PKBDINFO, HKBD );
                    128: USHORT APIENTRY KbdGetStatus ( PKBDINFO, HKBD );
                    129: 
                    130: USHORT APIENTRY KbdSetCp ( USHORT, USHORT, HKBD);
                    131: USHORT APIENTRY KbdGetCp ( ULONG, PUSHORT, HKBD );
                    132: 
                    133: USHORT APIENTRY KbdOpen ( PHKBD );
                    134: USHORT APIENTRY KbdClose ( HKBD );
                    135: 
                    136: USHORT APIENTRY KbdGetFocus ( USHORT, HKBD );
                    137: USHORT APIENTRY KbdFreeFocus ( HKBD );
                    138: 
                    139: USHORT APIENTRY KbdSynch ( USHORT );
                    140: 
1.1.1.2 ! root      141: USHORT APIENTRY KbdSetFgnd( VOID );
        !           142: 
        !           143: /* KBDTRANS.fbStatus */
        !           144: 
        !           145: #define SHIFT_KEY_IN       0x01
        !           146: #define CONVERSION_REQUEST  0x20
        !           147: #define FINAL_CHAR_IN      0x40
        !           148: #define INTERIM_CHAR_IN     0x80
        !           149: 
1.1       root      150: /* structure for KbdXlate() */
1.1.1.2 ! root      151: typedef struct _KBDTRANS {      /* kbxl */
1.1       root      152:         UCHAR      chChar;
                    153:         UCHAR      chScan;
                    154:         UCHAR      fbStatus;
                    155:         UCHAR      bNlsShift;
                    156:         USHORT     fsState;
                    157:         ULONG      time;
                    158:         USHORT     fsDD;
                    159:         USHORT     fsXlate;
                    160:         USHORT     fsShift;
                    161:         USHORT     sZero;
1.1.1.2 ! root      162:         } KBDTRANS;
        !           163: typedef KBDTRANS far *PKBDTRANS;
1.1       root      164: 
1.1.1.2 ! root      165: USHORT APIENTRY KbdXlate ( PKBDTRANS, HKBD );
1.1       root      166: USHORT APIENTRY KbdSetCustXt ( PUSHORT, HKBD );
                    167: 
                    168: #endif /* INCL_KBD */
                    169: 
                    170: #ifdef INCL_VIO
                    171: 
                    172: typedef SHANDLE         HVIO;
                    173: typedef HVIO    far *   PHVIO;
                    174: 
                    175: USHORT APIENTRY VioRegister ( PSZ, PSZ, ULONG, ULONG );
                    176: 
1.1.1.2 ! root      177: /* first parameter registration constants */
        !           178: #define VR_VIOGETCURPOS     0x00000001L
        !           179: #define VR_VIOGETCURTYPE    0x00000002L
        !           180: #define VR_VIOGETMODE       0x00000004L
        !           181: #define VR_VIOGETBUF        0x00000008L
        !           182: #define VR_VIOGETPHYSBUF    0x00000010L
        !           183: #define VR_VIOSETCURPOS     0x00000020L
        !           184: #define VR_VIOSETCURTYPE    0x00000040L
        !           185: #define VR_VIOSETMODE       0x00000080L
        !           186: #define VR_VIOSHOWBUF       0x00000100L
        !           187: #define VR_VIOREADCHARSTR   0x00000200L
        !           188: #define VR_VIOREADCELLSTR   0x00000400L
        !           189: #define VR_VIOWRTNCHAR      0x00000800L
        !           190: #define VR_VIOWRTNATTR      0x00001000L
        !           191: #define VR_VIOWRTNCELL      0x00002000L
        !           192: #define VR_VIOWRTTTY        0x00004000L
        !           193: #define VR_VIOWRTCHARSTR    0x00008000L
        !           194: 
        !           195: #define VR_VIOWRTCHARSTRATT 0x00010000L
        !           196: #define VR_VIOWRTCELLSTR    0x00020000L
        !           197: #define VR_VIOSCROLLUP      0x00040000L
        !           198: #define VR_VIOSCROLLDN      0x00080000L
        !           199: #define VR_VIOSCROLLLF      0x00100000L
        !           200: #define VR_VIOSCROLLRT      0x00200000L
        !           201: #define VR_VIOSETANSI       0x00400000L
        !           202: #define VR_VIOGETANSI       0x00800000L
        !           203: #define VR_VIOPRTSC         0x01000000L
        !           204: #define VR_VIOSCRLOCK       0x02000000L
        !           205: #define VR_VIOSCRUNLOCK     0x04000000L
        !           206: #define VR_VIOSAVREDRAWWAIT 0x08000000L
        !           207: #define VR_VIOSAVREDRAWUNDO 0x10000000L
        !           208: #define VR_VIOPOPUP         0x20000000L
        !           209: #define VR_VIOENDPOPUP      0x40000000L
        !           210: #define VR_VIOPRTSCTOGGLE   0x80000000L
        !           211: 
        !           212: /* second parameter registration constants */
        !           213: #define VR_VIOMODEWAIT      0x00000001L
        !           214: #define VR_VIOMODEUNDO      0x00000002L
        !           215: #define VR_VIOGETFONT       0x00000004L
        !           216: #define VR_VIOGETCONFIG     0x00000008L
        !           217: #define VR_VIOSETCP         0x00000010L
        !           218: #define VR_VIOGETCP         0x00000020L
        !           219: #define VR_VIOSETFONT       0x00000040L
        !           220: #define VR_VIOGETSTATE      0x00000080L
        !           221: #define VR_VIOSETSTATE      0x00000100L
        !           222: 
1.1       root      223: USHORT APIENTRY VioDeRegister ( void );
                    224: 
                    225: USHORT APIENTRY VioGetBuf ( PULONG, PUSHORT, HVIO );
                    226: 
                    227: USHORT APIENTRY VioGetCurPos ( PUSHORT, PUSHORT, HVIO );
                    228: USHORT APIENTRY VioSetCurPos ( USHORT, USHORT, HVIO );
                    229: 
                    230: /* structure for VioSet/GetCurType() */
                    231: typedef struct _VIOCURSORINFO { /* vioci */
                    232:         USHORT   yStart;
                    233:         USHORT   cEnd;
                    234:         USHORT   cx;
                    235:         USHORT   attr;
                    236:         } VIOCURSORINFO;
                    237: typedef VIOCURSORINFO FAR *PVIOCURSORINFO;
                    238: 
                    239: USHORT APIENTRY VioGetCurType ( PVIOCURSORINFO, HVIO );
                    240: USHORT APIENTRY VioSetCurType ( PVIOCURSORINFO, HVIO );
                    241: 
1.1.1.2 ! root      242: /* VIOMODEINFO.color constants */
        !           243: 
        !           244: #define COLORS_2   0x0001
        !           245: #define COLORS_4   0x0002
        !           246: #define COLORS_16  0x0004
        !           247: 
1.1       root      248: /* structure for VioSet/GetMode() */
                    249: typedef struct _VIOMODEINFO {   /* viomi */
                    250:         USHORT cb;
                    251:         UCHAR  fbType;
                    252:         UCHAR  color;
                    253:         USHORT col;
                    254:         USHORT row;
                    255:         USHORT hres;
                    256:         USHORT vres;
                    257:         } VIOMODEINFO;
                    258: typedef VIOMODEINFO FAR *PVIOMODEINFO;
                    259: 
                    260: #define VGMT_OTHER          0x01
                    261: #define VGMT_GRAPHICS       0x02
                    262: #define VGMT_DISABLEBURST   0x04
                    263: 
                    264: USHORT APIENTRY VioGetMode ( PVIOMODEINFO, HVIO );
                    265: USHORT APIENTRY VioSetMode ( PVIOMODEINFO, HVIO );
                    266: 
                    267: /* structure for VioGetPhysBuf() */
                    268: 
                    269: typedef struct _VIOPHYSBUF {    /* viopb */
                    270:         PBYTE    pBuf;
                    271:         ULONG    cb;
                    272:         SEL      asel[1];
                    273:         } VIOPHYSBUF;
                    274: typedef VIOPHYSBUF far *PVIOPHYSBUF;
                    275: 
                    276: USHORT APIENTRY VioGetPhysBuf ( PVIOPHYSBUF, USHORT );
                    277: 
                    278: USHORT APIENTRY VioReadCellStr ( PCH, PUSHORT, USHORT, USHORT, HVIO );
                    279: USHORT APIENTRY VioReadCharStr ( PCH, PUSHORT, USHORT, USHORT, HVIO );
                    280: USHORT APIENTRY VioWrtCellStr ( PCH, USHORT, USHORT, USHORT, HVIO );
                    281: USHORT APIENTRY VioWrtCharStr ( PCH, USHORT, USHORT, USHORT, HVIO );
                    282: 
                    283: USHORT APIENTRY VioScrollDn ( USHORT, USHORT, USHORT, USHORT,
                    284:                               USHORT, PBYTE,  HVIO );
                    285: USHORT APIENTRY VioScrollUp ( USHORT, USHORT, USHORT, USHORT,
                    286:                               USHORT, PBYTE,  HVIO );
                    287: USHORT APIENTRY VioScrollLf ( USHORT, USHORT, USHORT, USHORT,
                    288:                               USHORT, PBYTE,  HVIO );
                    289: USHORT APIENTRY VioScrollRt ( USHORT, USHORT, USHORT, USHORT,
                    290:                               USHORT, PBYTE,  HVIO );
                    291: 
                    292: USHORT APIENTRY VioWrtNAttr ( PBYTE, USHORT, USHORT, USHORT, HVIO );
                    293: USHORT APIENTRY VioWrtNCell ( PBYTE, USHORT, USHORT, USHORT, HVIO );
                    294: USHORT APIENTRY VioWrtNChar ( PCH, USHORT, USHORT, USHORT, HVIO );
                    295: USHORT APIENTRY VioWrtTTY ( PCH, USHORT, HVIO );
                    296: USHORT APIENTRY VioWrtCharStrAtt ( PCH, USHORT, USHORT, USHORT, PBYTE, HVIO );
                    297: 
                    298: USHORT APIENTRY VioShowBuf ( USHORT, USHORT, HVIO );
                    299: 
                    300: 
                    301: #define ANSI_ON     1
                    302: #define ANSI_OFF    0
                    303: 
                    304: USHORT APIENTRY VioSetAnsi ( USHORT, HVIO );
                    305: USHORT APIENTRY VioGetAnsi ( PUSHORT, HVIO );
                    306: 
                    307: USHORT APIENTRY VioPrtSc ( HVIO );
                    308: USHORT APIENTRY VioPrtScToggle ( HVIO );
                    309: 
                    310: #define VSRWI_SAVEANDREDRAW  0
                    311: #define VSRWI_REDRAW         1
                    312: 
                    313: #define VSRWN_SAVE           0
                    314: #define VSRWN_REDRAW         1
                    315: 
                    316: #define UNDOI_GETOWNER          0
                    317: #define UNDOI_RELEASEOWNER      1
                    318: 
                    319: #define UNDOK_ERRORCODE         0
                    320: #define UNDOK_TERMINATE         1
                    321: 
                    322: USHORT APIENTRY VioSavRedrawWait ( USHORT, PUSHORT, USHORT);
                    323: USHORT APIENTRY VioSavRedrawUndo ( USHORT, USHORT, USHORT );
                    324: 
                    325: #define VMWR_POPUP  0
                    326: #define VMWN_POPUP  0
                    327: 
                    328: USHORT APIENTRY VioModeWait ( USHORT, PUSHORT, USHORT );
                    329: USHORT APIENTRY VioModeUndo ( USHORT, USHORT, USHORT );
                    330: 
                    331: #define LOCKIO_NOWAIT   0
                    332: #define LOCKIO_WAIT     1
                    333: 
                    334: #define LOCK_SUCCESS    0
                    335: #define LOCK_FAIL       1
                    336: 
                    337: USHORT APIENTRY VioScrLock ( USHORT, PUCHAR, HVIO );
                    338: USHORT APIENTRY VioScrUnLock ( HVIO );
                    339: 
                    340: #define VP_NOWAIT       0x0000
                    341: #define VP_WAIT         0x0001
                    342: #define VP_OPAQUE       0x0000
                    343: #define VP_TRANSPARENT  0x0002
                    344: 
1.1.1.2 ! root      345: USHORT APIENTRY VioPopUp ( PUSHORT, HVIO );
1.1       root      346: USHORT APIENTRY VioEndPopUp ( HVIO );
                    347: 
1.1.1.2 ! root      348: /* VIOCONFIGINFO.adapter constants */
        !           349: 
        !           350: #define DISPLAY_MONOCHROME  0x0000
        !           351: #define DISPLAY_CGA        0x0001
        !           352: #define DISPLAY_EGA        0x0002
        !           353: #define DISPLAY_VGA         0x0003
        !           354: #define DISPLAY_8514A       0x0007
        !           355: 
        !           356: /* VIOCONFIGINFO.display constants */
        !           357: 
        !           358: #define MONITOR_MONOCHROME  0x0000
        !           359: #define MONITOR_COLOR      0x0001
        !           360: #define MONITOR_ENHANCED    0x0002
        !           361: #define MONITOR_8503       0x0003
        !           362: #define MONITOR_851X_COLOR  0x0004
        !           363: #define MONITOR_8514        0x0009
        !           364: 
1.1       root      365: /* structure for VioGetConfig() */
                    366: 
                    367: typedef struct _VIOCONFIGINFO { /* vioin */
                    368:         USHORT  cb     ;
                    369:         USHORT  adapter;
                    370:         USHORT  display;
                    371:         ULONG   cbMemory;
                    372:         } VIOCONFIGINFO;
                    373: typedef VIOCONFIGINFO far *PVIOCONFIGINFO;
                    374: 
                    375: USHORT APIENTRY VioGetConfig ( USHORT, PVIOCONFIGINFO, HVIO );
                    376: 
                    377: /* structure for VioGet/SetFont() */
                    378: typedef struct _VIOFONTINFO {   /* viofi */
                    379:         USHORT  cb;
                    380:         USHORT  type;
                    381:         USHORT  cxCell;
                    382:         USHORT  cyCell;
                    383:         PVOID   pbData;
                    384:         USHORT  cbData;
                    385:         } VIOFONTINFO;
                    386: typedef VIOFONTINFO far *PVIOFONTINFO;
                    387: 
                    388: #define VGFI_GETCURFONT     0
                    389: #define VGFI_GETROMFONT     1
                    390: 
                    391: USHORT APIENTRY VioGetFont ( PVIOFONTINFO, HVIO );
                    392: USHORT APIENTRY VioSetFont ( PVIOFONTINFO, HVIO );
                    393: 
                    394: USHORT APIENTRY VioGetCp ( USHORT, PUSHORT, HVIO );
                    395: USHORT APIENTRY VioSetCp ( USHORT, USHORT, HVIO );
                    396: 
                    397: typedef struct _VIOPALSTATE {   /* viopal */
                    398:         USHORT  cb;
                    399:         USHORT  type;
                    400:         USHORT  iFirst;
                    401:         USHORT  acolor[1];
                    402:         }VIOPALSTATE;
                    403: typedef VIOPALSTATE far *PVIOPALSTATE;
                    404: 
                    405: typedef struct _VIOOVERSCAN {   /* vioos */
                    406:         USHORT  cb;
                    407:         USHORT  type;
                    408:         USHORT  color;
                    409:         }VIOOVERSCAN;
                    410: typedef VIOOVERSCAN far *PVIOOVERSCAN;
                    411: 
                    412: typedef struct _VIOINTENSITY {  /* vioint */
                    413:         USHORT  cb;
                    414:         USHORT  type;
                    415:         USHORT  fs;
                    416:         }VIOINTENSITY;
                    417: typedef VIOINTENSITY far *PVIOINTENSITY;
                    418: 
                    419: USHORT APIENTRY VioGetState ( PVOID, HVIO );
                    420: USHORT APIENTRY VioSetState ( PVOID, HVIO );
                    421: 
                    422: #endif /* INCL_VIO */
                    423: 
                    424: #ifdef INCL_MOU
                    425: 
                    426: typedef SHANDLE         HMOU;
                    427: typedef HMOU    far *   PHMOU;
                    428: 
                    429: USHORT APIENTRY MouRegister ( PSZ, PSZ, ULONG );
                    430: 
1.1.1.2 ! root      431: #define MR_MOUGETNUMBUTTONS 0x00000001L
        !           432: #define MR_MOUGETNUMMICKEYS 0x00000002L
        !           433: #define MR_MOUGETDEVSTATUS  0x00000004L
        !           434: #define MR_MOUGETNUMQUEEL   0x00000008L
        !           435: #define MR_MOUREADEVENTQUE  0x00000010L
        !           436: #define MR_MOUGETSCALEFACT  0x00000020L
        !           437: #define MR_MOUGETEVENTMASK  0x00000040L
        !           438: #define MR_MOUSETSCALEFACT  0x00000080L
        !           439: #define MR_MOUSETEVENTMASK  0x00000100L
        !           440: #define MR_MOUOPEN          0x00000800L
        !           441: #define MR_MOUCLOSE         0x00001000L
        !           442: #define MR_MOUGETPTRSHAPE   0x00002000L
        !           443: #define MR_MOUSETPTRSHAPE   0x00004000L
        !           444: #define MR_MOUDRAWPTR       0x00008000L
        !           445: #define MR_MOUREMOVEPTR     0x00010000L
        !           446: #define MR_MOUGETPTRPOS     0x00020000L
        !           447: #define MR_MOUSETPTRPOS     0x00040000L
        !           448: #define MR_MOUINITREAL      0x00080000L
        !           449: #define MR_MOUSETDEVSTATUS  0x00100000L
        !           450: 
1.1       root      451: USHORT APIENTRY MouDeRegister ( void );
                    452: 
                    453: USHORT APIENTRY MouFlushQue ( HMOU );
                    454: 
                    455: #define MHK_BUTTON1         0x0001
                    456: #define MHK_BUTTON2         0x0002
                    457: #define MHK_BUTTON3         0x0004
                    458: 
                    459: /* structure for MouGet/SetPtrPos() */
                    460: typedef struct _PTRLOC {    /* moupl */
                    461:         USHORT row;
                    462:         USHORT col;
                    463:         } PTRLOC;
                    464: typedef PTRLOC far *PPTRLOC;
                    465: 
                    466: USHORT APIENTRY MouGetPtrPos ( PPTRLOC, HMOU );
                    467: USHORT APIENTRY MouSetPtrPos ( PPTRLOC, HMOU );
                    468: 
                    469: /* structure for MouGet/SetPtrShape() */
                    470: typedef struct _PTRSHAPE {  /* moups */
                    471:         USHORT cb;
                    472:         USHORT col;
                    473:         USHORT row;
                    474:         USHORT colHot;
                    475:         USHORT rowHot;
                    476:         } PTRSHAPE;
                    477: typedef PTRSHAPE far *PPTRSHAPE;
                    478: 
                    479: USHORT APIENTRY MouSetPtrShape ( PBYTE, PPTRSHAPE, HMOU );
                    480: USHORT APIENTRY MouGetPtrShape ( PBYTE, PPTRSHAPE, HMOU );
                    481: 
1.1.1.2 ! root      482: /* MouGetDevStatus/MouSetDevStatus device status constants */
        !           483: 
        !           484: #define MOUSE_QUEUEBUSY         0x0001
        !           485: #define MOUSE_BLOCKREAD         0x0002
        !           486: #define MOUSE_FLUSH             0x0004
        !           487: #define MOUSE_UNSUPPORTED_MODE  0x0008
        !           488: #define MOUSE_DISABLED          0x0100
        !           489: #define MOUSE_MICKEYS           0x0200
        !           490: 
1.1       root      491: USHORT APIENTRY MouGetDevStatus ( PUSHORT, HMOU );
                    492: 
                    493: USHORT APIENTRY MouGetNumButtons ( PUSHORT, HMOU );
                    494: USHORT APIENTRY MouGetNumMickeys ( PUSHORT, HMOU );
                    495: 
1.1.1.2 ! root      496: /* MouReadEventQue */
        !           497: 
        !           498: #define MOU_NOWAIT  0x0000
        !           499: #define MOU_WAIT    0x0001
        !           500: 
1.1       root      501: /* structure for MouReadEventQue() */
                    502: typedef struct _MOUEVENTINFO {  /* mouev */
                    503:         USHORT fs;
                    504:         ULONG  time;
                    505:         USHORT row;
                    506:         USHORT col;
                    507:         }MOUEVENTINFO;
                    508: typedef MOUEVENTINFO far *PMOUEVENTINFO;
                    509: 
                    510: USHORT APIENTRY MouReadEventQue ( PMOUEVENTINFO, PUSHORT, HMOU );
                    511: 
                    512: /* structure for MouGetNumQueEl() */
                    513: typedef struct _MOUQUEINFO {    /* mouqi */
                    514:         USHORT cEvents;
                    515:         USHORT cmaxEvents;
                    516:         } MOUQUEINFO;
                    517: typedef MOUQUEINFO far *PMOUQUEINFO;
                    518: 
                    519: USHORT APIENTRY MouGetNumQueEl ( PMOUQUEINFO, HMOU );
                    520: 
1.1.1.2 ! root      521: /* MouGetEventMask/MouSetEventMask events */
        !           522: 
        !           523: #define MOUSE_MOTION                0x0001
        !           524: #define MOUSE_MOTION_WITH_BN1_DOWN  0x0002
        !           525: #define MOUSE_BN1_DOWN              0x0004
        !           526: #define MOUSE_MOTION_WITH_BN2_DOWN  0x0008
        !           527: #define MOUSE_BN2_DOWN              0x0010
        !           528: #define MOUSE_MOTION_WITH_BN3_DOWN  0x0020
        !           529: #define MOUSE_BN3_DOWN              0x0040
        !           530: 
        !           531: 
1.1       root      532: USHORT APIENTRY MouGetEventMask ( PUSHORT, HMOU );
                    533: USHORT APIENTRY MouSetEventMask ( PUSHORT, HMOU );
                    534: 
                    535: /* structure for MouGet/SetScaleFact() */
                    536: typedef struct _SCALEFACT { /* mousc */
                    537:         USHORT rowScale;
                    538:         USHORT colScale;
                    539:         } SCALEFACT;
                    540: typedef SCALEFACT far *PSCALEFACT;
                    541: 
                    542: USHORT APIENTRY MouGetScaleFact ( PSCALEFACT, HMOU );
                    543: USHORT APIENTRY MouSetScaleFact ( PSCALEFACT, HMOU );
                    544: 
                    545: USHORT APIENTRY MouOpen ( PSZ, PHMOU );
                    546: USHORT APIENTRY MouClose ( HMOU );
                    547: 
                    548: /* structure for MouRemovePtr() */
                    549: typedef struct _NOPTRRECT { /* mourt */
                    550:         USHORT row;
                    551:         USHORT col;
                    552:         USHORT cRow;    /* spec says this is a coordinate, not a cx */
                    553:         USHORT cCol;
                    554:         } NOPTRRECT;
                    555: typedef NOPTRRECT far *PNOPTRRECT;
                    556: 
                    557: USHORT APIENTRY MouRemovePtr ( PNOPTRRECT, HMOU );
                    558: 
                    559: USHORT APIENTRY MouDrawPtr ( HMOU );
                    560: 
                    561: #define MOU_NODRAW      0x0001
                    562: #define MOU_DRAW        0x0000
                    563: #define MOU_MICKEYS     0x0002
                    564: #define MOU_PELS        0x0000
                    565: 
                    566: USHORT APIENTRY MouSetDevStatus ( PUSHORT, HMOU );
                    567: USHORT APIENTRY MouInitReal ( PSZ );
                    568: 
1.1.1.2 ! root      569: USHORT APIENTRY MouSynch( USHORT );
        !           570: 
1.1       root      571: #endif /* INCL_MOU */

unix.superglobalmegacorp.com

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