|
Lines 33-38
from The Open Group.
Link Here
|
| 33 |
#include <X11/Xos.h> |
33 |
#include <X11/Xos.h> |
| 34 |
#include <stdio.h> |
34 |
#include <stdio.h> |
| 35 |
|
35 |
|
|
|
36 |
/* The X11 protocol spec reserves events 64 through 127 for extensions */ |
| 37 |
#ifndef FirstExtensionEvent |
| 38 |
#define FirstExtensionEvent 64 |
| 39 |
#define LastExtensionEvent 127 |
| 40 |
#endif |
| 41 |
|
| 42 |
/* The X11 protocol spec reserves requests 128 through 255 for extensions */ |
| 43 |
#ifndef FirstExtensionRequest |
| 44 |
#define FirstExtensionRequest 128 |
| 45 |
#define LastExtensionRequest 255 |
| 46 |
#endif |
| 47 |
|
| 48 |
|
| 36 |
/* |
49 |
/* |
| 37 |
* This routine is used to link a extension in so it will be called |
50 |
* This routine is used to link a extension in so it will be called |
| 38 |
* at appropriate times. |
51 |
* at appropriate times. |
|
Lines 242-247
WireToEventType XESetWireToEvent(
Link Here
|
| 242 |
WireToEventType proc) /* routine to call when converting event */ |
255 |
WireToEventType proc) /* routine to call when converting event */ |
| 243 |
{ |
256 |
{ |
| 244 |
register WireToEventType oldproc; |
257 |
register WireToEventType oldproc; |
|
|
258 |
if (event_number < FirstExtensionEvent || |
| 259 |
event_number > LastExtensionEvent) { |
| 260 |
fprintf(stderr, "Xlib: ignoring invalid extension event %d\n", |
| 261 |
event_number); |
| 262 |
return (WireToEventType)_XUnknownWireEvent; |
| 263 |
} |
| 245 |
if (proc == NULL) proc = (WireToEventType)_XUnknownWireEvent; |
264 |
if (proc == NULL) proc = (WireToEventType)_XUnknownWireEvent; |
| 246 |
LockDisplay (dpy); |
265 |
LockDisplay (dpy); |
| 247 |
oldproc = dpy->event_vec[event_number]; |
266 |
oldproc = dpy->event_vec[event_number]; |
|
Lines 263-268
WireToEventCookieType XESetWireToEventCookie(
Link Here
|
| 263 |
) |
282 |
) |
| 264 |
{ |
283 |
{ |
| 265 |
WireToEventCookieType oldproc; |
284 |
WireToEventCookieType oldproc; |
|
|
285 |
if (extension < FirstExtensionRequest || |
| 286 |
extension > LastExtensionRequest) { |
| 287 |
fprintf(stderr, "Xlib: ignoring invalid extension opcode %d\n", |
| 288 |
extension); |
| 289 |
return (WireToEventCookieType)_XUnknownWireEventCookie; |
| 290 |
} |
| 266 |
if (proc == NULL) proc = (WireToEventCookieType)_XUnknownWireEventCookie; |
291 |
if (proc == NULL) proc = (WireToEventCookieType)_XUnknownWireEventCookie; |
| 267 |
LockDisplay (dpy); |
292 |
LockDisplay (dpy); |
| 268 |
oldproc = dpy->generic_event_vec[extension & 0x7F]; |
293 |
oldproc = dpy->generic_event_vec[extension & 0x7F]; |
|
Lines 284-289
CopyEventCookieType XESetCopyEventCookie(
Link Here
|
| 284 |
) |
309 |
) |
| 285 |
{ |
310 |
{ |
| 286 |
CopyEventCookieType oldproc; |
311 |
CopyEventCookieType oldproc; |
|
|
312 |
if (extension < FirstExtensionRequest || |
| 313 |
extension > LastExtensionRequest) { |
| 314 |
fprintf(stderr, "Xlib: ignoring invalid extension opcode %d\n", |
| 315 |
extension); |
| 316 |
return (CopyEventCookieType)_XUnknownCopyEventCookie; |
| 317 |
} |
| 287 |
if (proc == NULL) proc = (CopyEventCookieType)_XUnknownCopyEventCookie; |
318 |
if (proc == NULL) proc = (CopyEventCookieType)_XUnknownCopyEventCookie; |
| 288 |
LockDisplay (dpy); |
319 |
LockDisplay (dpy); |
| 289 |
oldproc = dpy->generic_event_copy_vec[extension & 0x7F]; |
320 |
oldproc = dpy->generic_event_copy_vec[extension & 0x7F]; |
|
Lines 305-310
EventToWireType XESetEventToWire(
Link Here
|
| 305 |
EventToWireType proc) /* routine to call when converting event */ |
336 |
EventToWireType proc) /* routine to call when converting event */ |
| 306 |
{ |
337 |
{ |
| 307 |
register EventToWireType oldproc; |
338 |
register EventToWireType oldproc; |
|
|
339 |
if (event_number < FirstExtensionEvent || |
| 340 |
event_number > LastExtensionEvent) { |
| 341 |
fprintf(stderr, "Xlib: ignoring invalid extension event %d\n", |
| 342 |
event_number); |
| 343 |
return (EventToWireType)_XUnknownNativeEvent; |
| 344 |
} |
| 308 |
if (proc == NULL) proc = (EventToWireType) _XUnknownNativeEvent; |
345 |
if (proc == NULL) proc = (EventToWireType) _XUnknownNativeEvent; |
| 309 |
LockDisplay (dpy); |
346 |
LockDisplay (dpy); |
| 310 |
oldproc = dpy->wire_vec[event_number]; |
347 |
oldproc = dpy->wire_vec[event_number]; |
|
Lines 325-330
WireToErrorType XESetWireToError(
Link Here
|
| 325 |
WireToErrorType proc) /* routine to call when converting error */ |
362 |
WireToErrorType proc) /* routine to call when converting error */ |
| 326 |
{ |
363 |
{ |
| 327 |
register WireToErrorType oldproc = NULL; |
364 |
register WireToErrorType oldproc = NULL; |
|
|
365 |
if (error_number < FirstExtensionError || |
| 366 |
error_number > LastExtensionError) { |
| 367 |
fprintf(stderr, "Xlib: ignoring invalid extension error %d\n", |
| 368 |
error_number); |
| 369 |
return (WireToErrorType)_XDefaultWireError; |
| 370 |
} |
| 328 |
if (proc == NULL) proc = (WireToErrorType)_XDefaultWireError; |
371 |
if (proc == NULL) proc = (WireToErrorType)_XDefaultWireError; |
| 329 |
LockDisplay (dpy); |
372 |
LockDisplay (dpy); |
| 330 |
if (!dpy->error_vec) { |
373 |
if (!dpy->error_vec) { |
| 331 |
- |
|
|