|
|
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 */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.