add directory Linux-0.98
This commit is contained in:
@@ -0,0 +1,63 @@
|
||||
/************************************************************
|
||||
Copyright 1989 by The Massachusetts Institute of Technology
|
||||
|
||||
Permission to use, copy, modify, and distribute this
|
||||
software and its documentation for any purpose and without
|
||||
fee is hereby granted, provided that the above copyright
|
||||
no- tice appear in all copies and that both that copyright
|
||||
no- tice and this permission notice appear in supporting
|
||||
docu- mentation, and that the name of MIT not be used in
|
||||
advertising or publicity pertaining to distribution of the
|
||||
software without specific prior written permission.
|
||||
M.I.T. makes no representation about the suitability of
|
||||
this software for any purpose. It is provided "as is"
|
||||
without any express or implied warranty.
|
||||
|
||||
********************************************************/
|
||||
|
||||
/* RANDOM CRUFT! THIS HAS NO OFFICIAL X CONSORTIUM BLESSING */
|
||||
|
||||
/* $XConsortium: MITMisc.h,v 1.4 91/07/12 10:06:43 rws Exp $ */
|
||||
|
||||
#ifndef _XMITMISC_H_
|
||||
#define _XMITMISC_H_
|
||||
|
||||
#include <X11/Xfuncproto.h>
|
||||
|
||||
#define X_MITSetBugMode 0
|
||||
#define X_MITGetBugMode 1
|
||||
|
||||
#define MITMiscNumberEvents 0
|
||||
|
||||
#define MITMiscNumberErrors 0
|
||||
|
||||
#ifndef _MITMISC_SERVER_
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
Bool XMITMiscQueryExtension(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
int* /* event_basep */,
|
||||
int* /* error_basep */
|
||||
#endif
|
||||
);
|
||||
|
||||
Status XMITMiscSetBugMode(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Bool /* onOff */
|
||||
#endif
|
||||
);
|
||||
|
||||
Bool XMITMiscGetBugMode(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */
|
||||
#endif
|
||||
);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
238
Linux-0.98/Yggdrasil-0.98.3/usr/include/X11/extensions/XI.h
Normal file
238
Linux-0.98/Yggdrasil-0.98.3/usr/include/X11/extensions/XI.h
Normal file
@@ -0,0 +1,238 @@
|
||||
/* $Header: XI.h,v 1.13 91/07/24 15:32:36 rws Exp $ */
|
||||
|
||||
/************************************************************
|
||||
Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, California, and the
|
||||
Massachusetts Institute of Technology, Cambridge, Massachusetts.
|
||||
|
||||
All Rights Reserved
|
||||
|
||||
Permission to use, copy, modify, and distribute this software and its
|
||||
documentation for any purpose and without fee is hereby granted,
|
||||
provided that the above copyright notice appear in all copies and that
|
||||
both that copyright notice and this permission notice appear in
|
||||
supporting documentation, and that the names of Hewlett-Packard or MIT not be
|
||||
used in advertising or publicity pertaining to distribution of the
|
||||
software without specific, written prior permission.
|
||||
|
||||
HEWLETT-PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
||||
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
||||
HEWLETT-PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
|
||||
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
||||
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
|
||||
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
||||
SOFTWARE.
|
||||
|
||||
********************************************************/
|
||||
|
||||
/* Definitions used by the server, library and client */
|
||||
|
||||
#ifndef _XI_H_
|
||||
|
||||
#define _XI_H_
|
||||
|
||||
#define sz_xGetExtensionVersionReq 8
|
||||
#define sz_xGetExtensionVersionReply 32
|
||||
#define sz_xListInputDevicesReq 4
|
||||
#define sz_xListInputDevicesReply 32
|
||||
#define sz_xOpenDeviceReq 8
|
||||
#define sz_xOpenDeviceReply 32
|
||||
#define sz_xCloseDeviceReq 8
|
||||
#define sz_xSetDeviceModeReq 8
|
||||
#define sz_xSetDeviceModeReply 32
|
||||
#define sz_xSelectExtensionEventReq 12
|
||||
#define sz_xGetSelectedExtensionEventsReq 8
|
||||
#define sz_xGetSelectedExtensionEventsReply 32
|
||||
#define sz_xChangeDeviceDontPropagateListReq 12
|
||||
#define sz_xGetDeviceDontPropagateListReq 8
|
||||
#define sz_xGetDeviceDontPropagateListReply 32
|
||||
#define sz_xGetDeviceMotionEventsReq 16
|
||||
#define sz_xGetDeviceMotionEventsReply 32
|
||||
#define sz_xChangeKeyboardDeviceReq 8
|
||||
#define sz_xChangeKeyboardDeviceReply 32
|
||||
#define sz_xChangePointerDeviceReq 8
|
||||
#define sz_xChangePointerDeviceReply 32
|
||||
#define sz_xGrabDeviceReq 20
|
||||
#define sz_xGrabDeviceReply 32
|
||||
#define sz_xUngrabDeviceReq 12
|
||||
#define sz_xGrabDeviceKeyReq 20
|
||||
#define sz_xGrabDeviceKeyReply 32
|
||||
#define sz_xUngrabDeviceKeyReq 16
|
||||
#define sz_xGrabDeviceButtonReq 20
|
||||
#define sz_xGrabDeviceButtonReply 32
|
||||
#define sz_xUngrabDeviceButtonReq 16
|
||||
#define sz_xAllowDeviceEventsReq 12
|
||||
#define sz_xGetDeviceFocusReq 8
|
||||
#define sz_xGetDeviceFocusReply 32
|
||||
#define sz_xSetDeviceFocusReq 16
|
||||
#define sz_xGetFeedbackControlReq 8
|
||||
#define sz_xGetFeedbackControlReply 32
|
||||
#define sz_xChangeFeedbackControlReq 12
|
||||
#define sz_xGetDeviceKeyMappingReq 8
|
||||
#define sz_xGetDeviceKeyMappingReply 32
|
||||
#define sz_xChangeDeviceKeyMappingReq 8
|
||||
#define sz_xGetDeviceModifierMappingReq 8
|
||||
#define sz_xSetDeviceModifierMappingReq 8
|
||||
#define sz_xSetDeviceModifierMappingReply 32
|
||||
#define sz_xGetDeviceButtonMappingReq 8
|
||||
#define sz_xGetDeviceButtonMappingReply 32
|
||||
#define sz_xSetDeviceButtonMappingReq 8
|
||||
#define sz_xSetDeviceButtonMappingReply 32
|
||||
#define sz_xQueryDeviceStateReq 8
|
||||
#define sz_xQueryDeviceStateReply 32
|
||||
#define sz_xSendExtensionEventReq 16
|
||||
#define sz_xDeviceBellReq 8
|
||||
#define sz_xSetDeviceValuatorsReq 8
|
||||
#define sz_xSetDeviceValuatorsReply 32
|
||||
#define sz_xGetDeviceControlReq 8
|
||||
#define sz_xGetDeviceControlReply 32
|
||||
#define sz_xChangeDeviceControlReq 8
|
||||
#define sz_xChangeDeviceControlReply 32
|
||||
|
||||
#define INAME "XInputExtension"
|
||||
|
||||
#define XI_KEYBOARD "KEYBOARD"
|
||||
#define XI_MOUSE "MOUSE"
|
||||
#define XI_TABLET "TABLET"
|
||||
#define XI_TOUCHSCREEN "TOUCHSCREEN"
|
||||
#define XI_TOUCHPAD "TOUCHPAD"
|
||||
#define XI_BARCODE "BARCODE"
|
||||
#define XI_BUTTONBOX "BUTTONBOX"
|
||||
#define XI_KNOB_BOX "KNOB_BOX"
|
||||
#define XI_ONE_KNOB "ONE_KNOB"
|
||||
#define XI_NINE_KNOB "NINE_KNOB"
|
||||
#define XI_TRACKBALL "TRACKBALL"
|
||||
#define XI_QUADRATURE "QUADRATURE"
|
||||
#define XI_ID_MODULE "ID_MODULE"
|
||||
#define XI_SPACEBALL "SPACEBALL"
|
||||
#define XI_DATAGLOVE "DATAGLOVE"
|
||||
#define XI_EYETRACKER "EYETRACKER"
|
||||
#define XI_CURSORKEYS "CURSORKEYS"
|
||||
#define XI_FOOTMOUSE "FOOTMOUSE"
|
||||
|
||||
#define Dont_Check 0
|
||||
#define XInput_Initial_Release 1
|
||||
#define XInput_Add_XDeviceBell 2
|
||||
#define XInput_Add_XSetDeviceValuators 3
|
||||
#define XInput_Add_XChangeDeviceControl 4
|
||||
|
||||
#define XI_Absent 0
|
||||
#define XI_Present 1
|
||||
|
||||
#define XI_Initial_Release_Major 1
|
||||
#define XI_Initial_Release_Minor 0
|
||||
|
||||
#define XI_Add_XDeviceBell_Major 1
|
||||
#define XI_Add_XDeviceBell_Minor 1
|
||||
|
||||
#define XI_Add_XSetDeviceValuators_Major 1
|
||||
#define XI_Add_XSetDeviceValuators_Minor 2
|
||||
|
||||
#define XI_Add_XChangeDeviceControl_Major 1
|
||||
#define XI_Add_XChangeDeviceControl_Minor 3
|
||||
|
||||
#define DEVICE_RESOLUTION 1
|
||||
|
||||
#define NoSuchExtension 1
|
||||
|
||||
#define COUNT 0
|
||||
#define CREATE 1
|
||||
|
||||
#define NewPointer 0
|
||||
#define NewKeyboard 1
|
||||
|
||||
#define XPOINTER 0
|
||||
#define XKEYBOARD 1
|
||||
|
||||
#define UseXKeyboard 0xFF
|
||||
|
||||
#define IsXPointer 0
|
||||
#define IsXKeyboard 1
|
||||
#define IsXExtensionDevice 2
|
||||
|
||||
#define AsyncThisDevice 0
|
||||
#define SyncThisDevice 1
|
||||
#define ReplayThisDevice 2
|
||||
#define AsyncOtherDevices 3
|
||||
#define AsyncAll 4
|
||||
#define SyncAll 5
|
||||
|
||||
#define FollowKeyboard 3
|
||||
#ifndef RevertToFollowKeyboard
|
||||
#define RevertToFollowKeyboard 3
|
||||
#endif
|
||||
|
||||
#define DvAccelNum (1L << 0)
|
||||
#define DvAccelDenom (1L << 1)
|
||||
#define DvThreshold (1L << 2)
|
||||
|
||||
#define DvKeyClickPercent (1L<<0)
|
||||
#define DvPercent (1L<<1)
|
||||
#define DvPitch (1L<<2)
|
||||
#define DvDuration (1L<<3)
|
||||
#define DvLed (1L<<4)
|
||||
#define DvLedMode (1L<<5)
|
||||
#define DvKey (1L<<6)
|
||||
#define DvAutoRepeatMode (1L<<7)
|
||||
|
||||
#define DvString (1L << 0)
|
||||
|
||||
#define DvInteger (1L << 0)
|
||||
|
||||
#define DeviceMode (1L << 0)
|
||||
#define Relative 0
|
||||
#define Absolute 1
|
||||
|
||||
#define ProximityState (1L << 1)
|
||||
#define InProximity (0L << 1)
|
||||
#define OutOfProximity (1L << 1)
|
||||
|
||||
#define AddToList 0
|
||||
#define DeleteFromList 1
|
||||
|
||||
#define KeyClass 0
|
||||
#define ButtonClass 1
|
||||
#define ValuatorClass 2
|
||||
#define FeedbackClass 3
|
||||
#define ProximityClass 4
|
||||
#define FocusClass 5
|
||||
#define OtherClass 6
|
||||
|
||||
#define KbdFeedbackClass 0
|
||||
#define PtrFeedbackClass 1
|
||||
#define StringFeedbackClass 2
|
||||
#define IntegerFeedbackClass 3
|
||||
#define LedFeedbackClass 4
|
||||
#define BellFeedbackClass 5
|
||||
|
||||
#define _devicePointerMotionHint 0
|
||||
#define _deviceButton1Motion 1
|
||||
#define _deviceButton2Motion 2
|
||||
#define _deviceButton3Motion 3
|
||||
#define _deviceButton4Motion 4
|
||||
#define _deviceButton5Motion 5
|
||||
#define _deviceButtonMotion 6
|
||||
#define _deviceButtonGrab 7
|
||||
#define _deviceOwnerGrabButton 8
|
||||
#define _noExtensionEvent 9
|
||||
|
||||
#define XI_BadDevice 0
|
||||
#define XI_BadEvent 1
|
||||
#define XI_BadMode 2
|
||||
#define XI_DeviceBusy 3
|
||||
#define XI_BadClass 4
|
||||
|
||||
typedef unsigned long XEventClass;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* Extension version structure.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
int present;
|
||||
short major_version;
|
||||
short minor_version;
|
||||
} XExtensionVersion;
|
||||
|
||||
#endif /* _XI_H_ */
|
||||
824
Linux-0.98/Yggdrasil-0.98.3/usr/include/X11/extensions/XInput.h
Normal file
824
Linux-0.98/Yggdrasil-0.98.3/usr/include/X11/extensions/XInput.h
Normal file
@@ -0,0 +1,824 @@
|
||||
/* $Header: XInput.h,v 1.14 91/07/24 15:33:51 rws Exp $ */
|
||||
|
||||
/************************************************************
|
||||
Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, California, and the
|
||||
Massachusetts Institute of Technology, Cambridge, Massachusetts.
|
||||
|
||||
All Rights Reserved
|
||||
|
||||
Permission to use, copy, modify, and distribute this software and its
|
||||
documentation for any purpose and without fee is hereby granted,
|
||||
provided that the above copyright notice appear in all copies and that
|
||||
both that copyright notice and this permission notice appear in
|
||||
supporting documentation, and that the names of Hewlett-Packard or MIT not be
|
||||
used in advertising or publicity pertaining to distribution of the
|
||||
software without specific, written prior permission.
|
||||
|
||||
HEWLETT-PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
||||
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
||||
HEWLETT-PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
|
||||
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
||||
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
|
||||
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
||||
SOFTWARE.
|
||||
|
||||
********************************************************/
|
||||
|
||||
/* Definitions used by the library and client */
|
||||
|
||||
#ifndef _XINPUT_H_
|
||||
#define _XINPUT_H_
|
||||
|
||||
#ifndef _XLIB_H_
|
||||
#include <X11/Xlib.h>
|
||||
#endif
|
||||
|
||||
#ifndef _XI_H_
|
||||
#include "XI.h"
|
||||
#endif
|
||||
|
||||
#define _deviceKeyPress 0
|
||||
#define _deviceKeyRelease 1
|
||||
|
||||
#define _deviceButtonPress 0
|
||||
#define _deviceButtonRelease 1
|
||||
|
||||
#define _deviceMotionNotify 0
|
||||
|
||||
#define _deviceFocusIn 0
|
||||
#define _deviceFocusOut 1
|
||||
|
||||
#define _proximityIn 0
|
||||
#define _proximityOut 1
|
||||
|
||||
#define _deviceStateNotify 0
|
||||
#define _deviceMappingNotify 1
|
||||
#define _changeDeviceNotify 2
|
||||
|
||||
#define FindTypeAndClass(d,type,_class,classid,offset) \
|
||||
{ int i; XInputClassInfo *ip; \
|
||||
type = 0; _class = 0; \
|
||||
for (i=0, ip= ((XDevice *) d)->classes; \
|
||||
i< ((XDevice *) d)->num_classes; \
|
||||
i++, ip++) \
|
||||
if (ip->input_class == classid) \
|
||||
{type = ip->event_type_base + offset; \
|
||||
_class = ((XDevice *) d)->device_id << 8 | type;}}
|
||||
|
||||
#define DeviceKeyPress(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, KeyClass, _deviceKeyPress)
|
||||
|
||||
#define DeviceKeyRelease(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, KeyClass, _deviceKeyRelease)
|
||||
|
||||
#define DeviceButtonPress(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, ButtonClass, _deviceButtonPress)
|
||||
|
||||
#define DeviceButtonRelease(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, ButtonClass, _deviceButtonRelease)
|
||||
|
||||
#define DeviceMotionNotify(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, ValuatorClass, _deviceMotionNotify)
|
||||
|
||||
#define DeviceFocusIn(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, FocusClass, _deviceFocusIn)
|
||||
|
||||
#define DeviceFocusOut(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, FocusClass, _deviceFocusOut)
|
||||
|
||||
#define ProximityIn(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, ProximityClass, _proximityIn)
|
||||
|
||||
#define ProximityOut(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, ProximityClass, _proximityOut)
|
||||
|
||||
#define DeviceStateNotify(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, OtherClass, _deviceStateNotify)
|
||||
|
||||
#define DeviceMappingNotify(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, OtherClass, _deviceMappingNotify)
|
||||
|
||||
#define ChangeDeviceNotify(d,type,_class) \
|
||||
FindTypeAndClass(d, type, _class, OtherClass, _changeDeviceNotify)
|
||||
|
||||
#define DevicePointerMotionHint(d,type,_class) \
|
||||
{ _class = ((XDevice *) d)->device_id << 8 | _devicePointerMotionHint;}
|
||||
|
||||
#define DeviceButton1Motion(d,type,_class) \
|
||||
{ _class = ((XDevice *) d)->device_id << 8 | _deviceButton1Motion;}
|
||||
|
||||
#define DeviceButton2Motion(d,type,_class) \
|
||||
{ _class = ((XDevice *) d)->device_id << 8 | _deviceButton2Motion;}
|
||||
|
||||
#define DeviceButton3Motion(d,type,_class) \
|
||||
{ _class = ((XDevice *) d)->device_id << 8 | _deviceButton3Motion;}
|
||||
|
||||
#define DeviceButton4Motion(d,type,class) \
|
||||
{ _class = ((XDevice *) d)->device_id << 8 | _deviceButton4Motion;}
|
||||
|
||||
#define DeviceButton5Motion(d,type,_class) \
|
||||
{ _class = ((XDevice *) d)->device_id << 8 | _deviceButton5Motion;}
|
||||
|
||||
#define DeviceButtonMotion(d,type,class) \
|
||||
{ _class = ((XDevice *) d)->device_id << 8 | _deviceButtonMotion;}
|
||||
|
||||
#define DeviceOwnerGrabButton(d,type,_class) \
|
||||
{ _class = ((XDevice *) d)->device_id << 8 | _deviceOwnerGrabButton;}
|
||||
|
||||
#define DeviceButtonPressGrab(d,type,_class) \
|
||||
{ _class = ((XDevice *) d)->device_id << 8 | _deviceButtonGrab;}
|
||||
|
||||
#define NoExtensionEvent(d,type,_class) \
|
||||
{ _class = ((XDevice *) d)->device_id << 8 | _noExtensionEvent;}
|
||||
|
||||
#define BadDevice(dpy,error) _xibaddevice(dpy, &error)
|
||||
|
||||
#define BadClass(dpy,error) _xibadclass(dpy, &error)
|
||||
|
||||
#define BadEvent(dpy,error) _xibadevent(dpy, &error)
|
||||
|
||||
#define BadMode(dpy,error) _xibadmode(dpy, &error)
|
||||
|
||||
#define DeviceBusy(dpy,error) _xidevicebusy(dpy, &error)
|
||||
|
||||
/***************************************************************
|
||||
*
|
||||
* DeviceKey events. These events are sent by input devices that
|
||||
* support input class Keys.
|
||||
* The location of the X pointer is reported in the coordinate
|
||||
* fields of the x,y and x_root,y_root fields.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct
|
||||
{
|
||||
int type; /* of event */
|
||||
unsigned long serial; /* # of last request processed */
|
||||
Bool send_event; /* true if from SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Window window; /* "event" window reported relative to */
|
||||
XID deviceid;
|
||||
Window root; /* root window event occured on */
|
||||
Window subwindow; /* child window */
|
||||
Time time; /* milliseconds */
|
||||
int x, y; /* x, y coordinates in event window */
|
||||
int x_root; /* coordinates relative to root */
|
||||
int y_root; /* coordinates relative to root */
|
||||
unsigned int state; /* key or button mask */
|
||||
unsigned int keycode; /* detail */
|
||||
Bool same_screen; /* same screen flag */
|
||||
unsigned int device_state; /* device key or button mask */
|
||||
unsigned char axes_count;
|
||||
unsigned char first_axis;
|
||||
int axis_data[6];
|
||||
} XDeviceKeyEvent;
|
||||
|
||||
typedef XDeviceKeyEvent XDeviceKeyPressedEvent;
|
||||
typedef XDeviceKeyEvent XDeviceKeyReleasedEvent;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* DeviceButton events. These events are sent by extension devices
|
||||
* that support input class Buttons.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
int type; /* of event */
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
Bool send_event; /* true if from a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Window window; /* "event" window reported relative to */
|
||||
XID deviceid;
|
||||
Window root; /* root window that the event occured on */
|
||||
Window subwindow; /* child window */
|
||||
Time time; /* milliseconds */
|
||||
int x, y; /* x, y coordinates in event window */
|
||||
int x_root; /* coordinates relative to root */
|
||||
int y_root; /* coordinates relative to root */
|
||||
unsigned int state; /* key or button mask */
|
||||
unsigned int button; /* detail */
|
||||
Bool same_screen; /* same screen flag */
|
||||
unsigned int device_state; /* device key or button mask */
|
||||
unsigned char axes_count;
|
||||
unsigned char first_axis;
|
||||
int axis_data[6];
|
||||
} XDeviceButtonEvent;
|
||||
|
||||
typedef XDeviceButtonEvent XDeviceButtonPressedEvent;
|
||||
typedef XDeviceButtonEvent XDeviceButtonReleasedEvent;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* DeviceMotionNotify event. These events are sent by extension devices
|
||||
* that support input class Valuators.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct
|
||||
{
|
||||
int type; /* of event */
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
Bool send_event; /* true if from a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Window window; /* "event" window reported relative to */
|
||||
XID deviceid;
|
||||
Window root; /* root window that the event occured on */
|
||||
Window subwindow; /* child window */
|
||||
Time time; /* milliseconds */
|
||||
int x, y; /* x, y coordinates in event window */
|
||||
int x_root; /* coordinates relative to root */
|
||||
int y_root; /* coordinates relative to root */
|
||||
unsigned int state; /* key or button mask */
|
||||
char is_hint; /* detail */
|
||||
Bool same_screen; /* same screen flag */
|
||||
unsigned int device_state; /* device key or button mask */
|
||||
unsigned char axes_count;
|
||||
unsigned char first_axis;
|
||||
int axis_data[6];
|
||||
} XDeviceMotionEvent;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* DeviceFocusChange events. These events are sent when the focus
|
||||
* of an extension device that can be focused is changed.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct
|
||||
{
|
||||
int type; /* of event */
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
Bool send_event; /* true if from a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Window window; /* "event" window reported relative to */
|
||||
XID deviceid;
|
||||
int mode; /* NotifyNormal, NotifyGrab, NotifyUngrab */
|
||||
int detail;
|
||||
/*
|
||||
* NotifyAncestor, NotifyVirtual, NotifyInferior,
|
||||
* NotifyNonLinear,NotifyNonLinearVirtual, NotifyPointer,
|
||||
* NotifyPointerRoot, NotifyDetailNone
|
||||
*/
|
||||
Time time;
|
||||
} XDeviceFocusChangeEvent;
|
||||
|
||||
typedef XDeviceFocusChangeEvent XDeviceFocusInEvent;
|
||||
typedef XDeviceFocusChangeEvent XDeviceFocusOutEvent;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* ProximityNotify events. These events are sent by those absolute
|
||||
* positioning devices that are capable of generating proximity information.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct
|
||||
{
|
||||
int type; /* ProximityIn or ProximityOut */
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
Bool send_event; /* true if this came from a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Window window;
|
||||
XID deviceid;
|
||||
Window root;
|
||||
Window subwindow;
|
||||
Time time;
|
||||
int x, y;
|
||||
int x_root, y_root;
|
||||
unsigned int state;
|
||||
Bool same_screen;
|
||||
unsigned int device_state; /* device key or button mask */
|
||||
unsigned char axes_count;
|
||||
unsigned char first_axis;
|
||||
int axis_data[6];
|
||||
} XProximityNotifyEvent;
|
||||
typedef XProximityNotifyEvent XProximityInEvent;
|
||||
typedef XProximityNotifyEvent XProximityOutEvent;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* DeviceStateNotify events are generated on EnterWindow and FocusIn
|
||||
* for those clients who have selected DeviceState.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct
|
||||
{
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
unsigned char c_class;
|
||||
#else
|
||||
unsigned char class;
|
||||
#endif
|
||||
unsigned char length;
|
||||
} XInputClass;
|
||||
|
||||
typedef struct {
|
||||
int type;
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
Bool send_event; /* true if this came from a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Window window;
|
||||
XID deviceid;
|
||||
Time time;
|
||||
int num_classes;
|
||||
char data[64];
|
||||
} XDeviceStateNotifyEvent;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
unsigned char c_class;
|
||||
#else
|
||||
unsigned char class;
|
||||
#endif
|
||||
unsigned char length;
|
||||
unsigned char num_valuators;
|
||||
unsigned char mode;
|
||||
int valuators[6];
|
||||
} XValuatorStatus;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
unsigned char c_class;
|
||||
#else
|
||||
unsigned char class;
|
||||
#endif
|
||||
unsigned char length;
|
||||
short num_keys;
|
||||
char keys[32];
|
||||
} XKeyStatus;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
unsigned char c_class;
|
||||
#else
|
||||
unsigned char class;
|
||||
#endif
|
||||
unsigned char length;
|
||||
short num_buttons;
|
||||
char buttons[32];
|
||||
} XButtonStatus;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* DeviceMappingNotify event. This event is sent when the key mapping,
|
||||
* modifier mapping, or button mapping of an extension device is changed.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
int type;
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
Bool send_event; /* true if this came from a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Window window; /* unused */
|
||||
XID deviceid;
|
||||
Time time;
|
||||
int request; /* one of MappingModifier, MappingKeyboard,
|
||||
MappingPointer */
|
||||
int first_keycode;/* first keycode */
|
||||
int count; /* defines range of change w. first_keycode*/
|
||||
} XDeviceMappingEvent;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* ChangeDeviceNotify event. This event is sent when an
|
||||
* XChangeKeyboard or XChangePointer request is made.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
int type;
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
Bool send_event; /* true if this came from a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Window window; /* unused */
|
||||
XID deviceid;
|
||||
Time time;
|
||||
int request; /* NewPointer or NewKeyboard */
|
||||
} XChangeDeviceNotifyEvent;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* Control structures for input devices that support input class
|
||||
* Feedback. These are used by the XGetFeedbackControl and
|
||||
* XChangeFeedbackControl functions.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
} XFeedbackState;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int click;
|
||||
int percent;
|
||||
int pitch;
|
||||
int duration;
|
||||
int led_mask;
|
||||
int global_auto_repeat;
|
||||
char auto_repeats[32];
|
||||
} XKbdFeedbackState;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int accelNum;
|
||||
int accelDenom;
|
||||
int threshold;
|
||||
} XPtrFeedbackState;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int resolution;
|
||||
int minVal;
|
||||
int maxVal;
|
||||
} XIntegerFeedbackState;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int max_symbols;
|
||||
int num_syms_supported;
|
||||
KeySym *syms_supported;
|
||||
} XStringFeedbackState;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int percent;
|
||||
int pitch;
|
||||
int duration;
|
||||
} XBellFeedbackState;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int led_values;
|
||||
int led_mask;
|
||||
} XLedFeedbackState;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
} XFeedbackControl;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int accelNum;
|
||||
int accelDenom;
|
||||
int threshold;
|
||||
} XPtrFeedbackControl;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int click;
|
||||
int percent;
|
||||
int pitch;
|
||||
int duration;
|
||||
int led_mask;
|
||||
int led_value;
|
||||
int key;
|
||||
int auto_repeat_mode;
|
||||
} XKbdFeedbackControl;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int num_keysyms;
|
||||
KeySym *syms_to_display;
|
||||
} XStringFeedbackControl;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int int_to_display;
|
||||
} XIntegerFeedbackControl;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int percent;
|
||||
int pitch;
|
||||
int duration;
|
||||
} XBellFeedbackControl;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
XID id;
|
||||
int led_mask;
|
||||
int led_values;
|
||||
} XLedFeedbackControl;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* Device control structures.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
XID control;
|
||||
int length;
|
||||
} XDeviceControl;
|
||||
|
||||
typedef struct {
|
||||
XID control;
|
||||
int length;
|
||||
int first_valuator;
|
||||
int num_valuators;
|
||||
int *resolutions;
|
||||
} XDeviceResolutionControl;
|
||||
|
||||
typedef struct {
|
||||
XID control;
|
||||
int length;
|
||||
int num_valuators;
|
||||
int *resolutions;
|
||||
int *min_resolutions;
|
||||
int *max_resolutions;
|
||||
} XDeviceResolutionState;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* An array of XDeviceList structures is returned by the
|
||||
* XListInputDevices function. Each entry contains information
|
||||
* about one input device. Among that information is an array of
|
||||
* pointers to structures that describe the characteristics of
|
||||
* the input device.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct _XAnyClassinfo *XAnyClassPtr;
|
||||
|
||||
typedef struct _XAnyClassinfo {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
} XAnyClassInfo;
|
||||
|
||||
typedef struct _XDeviceInfo *XDeviceInfoPtr;
|
||||
|
||||
typedef struct _XDeviceInfo
|
||||
{
|
||||
XID id;
|
||||
Atom type;
|
||||
char *name;
|
||||
int num_classes;
|
||||
int use;
|
||||
XAnyClassPtr inputclassinfo;
|
||||
} XDeviceInfo;
|
||||
|
||||
typedef struct _XKeyInfo *XKeyInfoPtr;
|
||||
|
||||
typedef struct _XKeyInfo
|
||||
{
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
unsigned short min_keycode;
|
||||
unsigned short max_keycode;
|
||||
unsigned short num_keys;
|
||||
} XKeyInfo;
|
||||
|
||||
typedef struct _XButtonInfo *XButtonInfoPtr;
|
||||
|
||||
typedef struct _XButtonInfo {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
short num_buttons;
|
||||
} XButtonInfo;
|
||||
|
||||
typedef struct _XAxisInfo *XAxisInfoPtr;
|
||||
|
||||
typedef struct _XAxisInfo {
|
||||
int resolution;
|
||||
int min_value;
|
||||
int max_value;
|
||||
} XAxisInfo;
|
||||
|
||||
typedef struct _XValuatorInfo *XValuatorInfoPtr;
|
||||
|
||||
typedef struct _XValuatorInfo
|
||||
{
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
XID c_class;
|
||||
#else
|
||||
XID class;
|
||||
#endif
|
||||
int length;
|
||||
unsigned char num_axes;
|
||||
unsigned char mode;
|
||||
unsigned long motion_buffer;
|
||||
XAxisInfoPtr axes;
|
||||
} XValuatorInfo;
|
||||
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* An XDevice structure is returned by the XOpenDevice function.
|
||||
* It contains an array of pointers to XInputClassInfo structures.
|
||||
* Each contains information about a class of input supported by the
|
||||
* device, including a pointer to an array of data for each type of event
|
||||
* the device reports.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
typedef struct {
|
||||
unsigned char input_class;
|
||||
unsigned char event_type_base;
|
||||
} XInputClassInfo;
|
||||
|
||||
typedef struct {
|
||||
XID device_id;
|
||||
int num_classes;
|
||||
XInputClassInfo *classes;
|
||||
} XDevice;
|
||||
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* The following structure is used to return information for the
|
||||
* XGetSelectedExtensionEvents function.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
XEventClass event_type;
|
||||
XID device;
|
||||
} XEventList;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* The following structure is used to return motion history data from
|
||||
* an input device that supports the input class Valuators.
|
||||
* This information is returned by the XGetDeviceMotionEvents function.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
Time time;
|
||||
int *data;
|
||||
} XDeviceTimeCoord;
|
||||
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* Device state structure.
|
||||
* This is returned by the XQueryDeviceState request.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
XID device_id;
|
||||
int num_classes;
|
||||
XInputClass *data;
|
||||
} XDeviceState;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* Note that the mode field is a bitfield that reports the Proximity
|
||||
* status of the device as well as the mode. The mode field should
|
||||
* be OR'd with the mask DeviceMode and compared with the values
|
||||
* Absolute and Relative to determine the mode, and should be OR'd
|
||||
* with the mask ProximityState and compared with the values InProximity
|
||||
* and OutOfProximity to determine the proximity state.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
unsigned char c_class;
|
||||
#else
|
||||
unsigned char class;
|
||||
#endif
|
||||
unsigned char length;
|
||||
unsigned char num_valuators;
|
||||
unsigned char mode;
|
||||
int *valuators;
|
||||
} XValuatorState;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
unsigned char c_class;
|
||||
#else
|
||||
unsigned char class;
|
||||
#endif
|
||||
unsigned char length;
|
||||
short num_keys;
|
||||
char keys[32];
|
||||
} XKeyState;
|
||||
|
||||
typedef struct {
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
unsigned char c_class;
|
||||
#else
|
||||
unsigned char class;
|
||||
#endif
|
||||
unsigned char length;
|
||||
short num_buttons;
|
||||
char buttons[32];
|
||||
} XButtonState;
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* Function definitions.
|
||||
*
|
||||
*/
|
||||
|
||||
XDevice *XOpenDevice();
|
||||
XDeviceInfo *XListInputDevices();
|
||||
XDeviceTimeCoord *XGetDeviceMotionEvents();
|
||||
KeySym *XGetDeviceKeyMapping();
|
||||
XModifierKeymap *XGetDeviceModifierMapping();
|
||||
XFeedbackState *XGetFeedbackControl();
|
||||
XExtensionVersion *XGetExtensionVersion();
|
||||
XDeviceState *XQueryDeviceState();
|
||||
XEventClass *XGetDeviceDontPropagateList();
|
||||
#endif /* _XINPUT_H_ */
|
||||
1400
Linux-0.98/Yggdrasil-0.98.3/usr/include/X11/extensions/XIproto.h
Normal file
1400
Linux-0.98/Yggdrasil-0.98.3/usr/include/X11/extensions/XIproto.h
Normal file
File diff suppressed because it is too large
Load Diff
149
Linux-0.98/Yggdrasil-0.98.3/usr/include/X11/extensions/XShm.h
Normal file
149
Linux-0.98/Yggdrasil-0.98.3/usr/include/X11/extensions/XShm.h
Normal file
@@ -0,0 +1,149 @@
|
||||
/************************************************************
|
||||
Copyright 1989 by The Massachusetts Institute of Technology
|
||||
|
||||
Permission to use, copy, modify, and distribute this
|
||||
software and its documentation for any purpose and without
|
||||
fee is hereby granted, provided that the above copyright
|
||||
no- tice appear in all copies and that both that copyright
|
||||
no- tice and this permission notice appear in supporting
|
||||
docu- mentation, and that the name of MIT not be used in
|
||||
advertising or publicity pertaining to distribution of the
|
||||
software without specific prior written permission.
|
||||
M.I.T. makes no representation about the suitability of
|
||||
this software for any purpose. It is provided "as is"
|
||||
without any express or implied warranty.
|
||||
|
||||
********************************************************/
|
||||
|
||||
/* THIS IS NOT AN X CONSORTIUM STANDARD */
|
||||
|
||||
/* $XConsortium: XShm.h,v 1.5 91/07/12 09:54:34 rws Exp $ */
|
||||
|
||||
#ifndef _XSHM_H_
|
||||
#define _XSHM_H_
|
||||
|
||||
#include <X11/Xfuncproto.h>
|
||||
|
||||
#define X_ShmQueryVersion 0
|
||||
#define X_ShmAttach 1
|
||||
#define X_ShmDetach 2
|
||||
#define X_ShmPutImage 3
|
||||
#define X_ShmGetImage 4
|
||||
#define X_ShmCreatePixmap 5
|
||||
|
||||
#define ShmCompletion 0
|
||||
#define ShmNumberEvents (ShmCompletion + 1)
|
||||
|
||||
#define BadShmSeg 0
|
||||
#define ShmNumberErrors (BadShmSeg + 1)
|
||||
|
||||
typedef unsigned long ShmSeg;
|
||||
|
||||
#ifndef _XSHM_SERVER_
|
||||
typedef struct {
|
||||
int type; /* of event */
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
Bool send_event; /* true if this came frome a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Drawable drawable; /* drawable of request */
|
||||
int major_code; /* ShmReqCode */
|
||||
int minor_code; /* X_ShmPutImage */
|
||||
ShmSeg shmseg; /* the ShmSeg used in the request */
|
||||
unsigned long offset; /* the offset into ShmSeg used in the request */
|
||||
} XShmCompletionEvent;
|
||||
|
||||
typedef struct {
|
||||
ShmSeg shmseg; /* resource id */
|
||||
int shmid; /* kernel id */
|
||||
char *shmaddr; /* address in client */
|
||||
Bool readOnly; /* how the server should attach it */
|
||||
} XShmSegmentInfo;
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
Bool XShmQueryVersion(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
int* /* majorVersion */,
|
||||
int* /* minorVersion */,
|
||||
Bool* /* sharedPixmaps */
|
||||
#endif
|
||||
);
|
||||
|
||||
int XShmPixmapFormat(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */
|
||||
#endif
|
||||
);
|
||||
|
||||
Status XShmAttach(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
XShmSegmentInfo* /* shminfo */
|
||||
#endif
|
||||
);
|
||||
|
||||
Status XShmDetach(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
XShmSegmentInfo* /* shminfo */
|
||||
#endif
|
||||
);
|
||||
|
||||
Status XShmPutImage(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Drawable /* d */,
|
||||
GC /* gc */,
|
||||
XImage* /* image */,
|
||||
int /* src_x */,
|
||||
int /* src_y */,
|
||||
int /* dst_x */,
|
||||
int /* dst_y */,
|
||||
unsigned int /* src_width */,
|
||||
unsigned int /* src_height */,
|
||||
Bool /* send_event */
|
||||
#endif
|
||||
);
|
||||
|
||||
Status XShmGetImage(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Drawable /* d */,
|
||||
XImage* /* image */,
|
||||
int /* x */,
|
||||
int /* y */,
|
||||
unsigned long /* plane_mask */
|
||||
#endif
|
||||
);
|
||||
|
||||
XImage *XShmCreateImage(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Visual* /* visual */,
|
||||
unsigned int /* depth */,
|
||||
int /* format */,
|
||||
char* /* data */,
|
||||
XShmSegmentInfo* /* shminfo */,
|
||||
unsigned int /* width */,
|
||||
unsigned int /* height */
|
||||
#endif
|
||||
);
|
||||
|
||||
Pixmap XShmCreatePixmap(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Drawable /* d */,
|
||||
char* /* data */,
|
||||
XShmSegmentInfo* /* shminfo */,
|
||||
unsigned int /* width */,
|
||||
unsigned int /* height */,
|
||||
unsigned int /* depth */
|
||||
#endif
|
||||
);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,49 @@
|
||||
/*
|
||||
* $XConsortium: Xext.h,v 1.2 91/07/12 10:28:17 rws Exp $
|
||||
*
|
||||
* Copyright 1989 Massachusetts Institute of Technology
|
||||
*
|
||||
* Permission to use, copy, modify, distribute, and sell this software and its
|
||||
* documentation for any purpose is hereby granted without fee, provided that
|
||||
* the above copyright notice appear in all copies and that both that
|
||||
* copyright notice and this permission notice appear in supporting
|
||||
* documentation, and that the name of M.I.T. not be used in advertising or
|
||||
* publicity pertaining to distribution of the software without specific,
|
||||
* written prior permission. M.I.T. makes no representations about the
|
||||
* suitability of this software for any purpose. It is provided "as is"
|
||||
* without express or implied warranty.
|
||||
*
|
||||
* M.I.T. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL M.I.T.
|
||||
* BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
|
||||
* OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
||||
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _XEXT_H_
|
||||
#define _XEXT_H_
|
||||
|
||||
#include <X11/Xfuncproto.h>
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
extern int (*XSetExtensionErrorHandler())(
|
||||
#if NeedFunctionPrototypes
|
||||
int (*handler)()
|
||||
#endif
|
||||
);
|
||||
|
||||
extern int XMissingExtension(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
_Xconst char* /* ext_name */
|
||||
#endif
|
||||
);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#define X_EXTENSION_UNKNOWN "unknown"
|
||||
#define X_EXTENSION_MISSING "missing"
|
||||
|
||||
#endif /* _XEXT_H_ */
|
||||
@@ -0,0 +1,280 @@
|
||||
/*
|
||||
* $XConsortium: multibuf.h,v 1.15 91/07/12 10:20:42 rws Exp $
|
||||
*
|
||||
* Copyright 1989 Massachusetts Institute of Technology
|
||||
*
|
||||
* Permission to use, copy, modify, distribute, and sell this software and its
|
||||
* documentation for any purpose is hereby granted without fee, provided that
|
||||
* the above copyright notice appear in all copies and that both that
|
||||
* copyright notice and this permission notice appear in supporting
|
||||
* documentation, and that the name of M.I.T. not be used in advertising or
|
||||
* publicity pertaining to distribution of the software without specific,
|
||||
* written prior permission. M.I.T. makes no representations about the
|
||||
* suitability of this software for any purpose. It is provided "as is"
|
||||
* without express or implied warranty.
|
||||
*
|
||||
* M.I.T. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL M.I.T.
|
||||
* BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
|
||||
* OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
||||
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef _MULTIBUF_H_
|
||||
#define _MULTIBUF_H_
|
||||
|
||||
#include <X11/Xfuncproto.h>
|
||||
|
||||
#define MULTIBUFFER_PROTOCOL_NAME "Multi-Buffering"
|
||||
|
||||
#define MULTIBUFFER_MAJOR_VERSION 1 /* current version numbers */
|
||||
#define MULTIBUFFER_MINOR_VERSION 0
|
||||
|
||||
#define X_MbufGetBufferVersion 0
|
||||
#define X_MbufCreateImageBuffers 1
|
||||
#define X_MbufDestroyImageBuffers 2
|
||||
#define X_MbufDisplayImageBuffers 3
|
||||
#define X_MbufSetMBufferAttributes 4
|
||||
#define X_MbufGetMBufferAttributes 5
|
||||
#define X_MbufSetBufferAttributes 6
|
||||
#define X_MbufGetBufferAttributes 7
|
||||
#define X_MbufGetBufferInfo 8
|
||||
#define X_MbufCreateStereoWindow 9
|
||||
|
||||
/*
|
||||
* update_action field
|
||||
*/
|
||||
#define MultibufferUpdateActionUndefined 0
|
||||
#define MultibufferUpdateActionBackground 1
|
||||
#define MultibufferUpdateActionUntouched 2
|
||||
#define MultibufferUpdateActionCopied 3
|
||||
|
||||
/*
|
||||
* update_hint field
|
||||
*/
|
||||
#define MultibufferUpdateHintFrequent 0
|
||||
#define MultibufferUpdateHintIntermittent 1
|
||||
#define MultibufferUpdateHintStatic 2
|
||||
|
||||
/*
|
||||
* valuemask fields
|
||||
*/
|
||||
#define MultibufferWindowUpdateHint (1L << 0)
|
||||
#define MultibufferBufferEventMask (1L << 0)
|
||||
|
||||
/*
|
||||
* mono vs. stereo and left vs. right
|
||||
*/
|
||||
#define MultibufferModeMono 0
|
||||
#define MultibufferModeStereo 1
|
||||
#define MultibufferSideMono 0
|
||||
#define MultibufferSideLeft 1
|
||||
#define MultibufferSideRight 2
|
||||
|
||||
/*
|
||||
* clobber state
|
||||
*/
|
||||
#define MultibufferUnclobbered 0
|
||||
#define MultibufferPartiallyClobbered 1
|
||||
#define MultibufferFullyClobbered 2
|
||||
|
||||
/*
|
||||
* event stuff
|
||||
*/
|
||||
#define MultibufferClobberNotifyMask 0x02000000
|
||||
#define MultibufferUpdateNotifyMask 0x04000000
|
||||
|
||||
#define MultibufferClobberNotify 0
|
||||
#define MultibufferUpdateNotify 1
|
||||
#define MultibufferNumberEvents (MultibufferUpdateNotify + 1)
|
||||
|
||||
#define MultibufferBadBuffer 0
|
||||
#define MultibufferNumberErrors (MultibufferBadBuffer + 1)
|
||||
|
||||
|
||||
#ifndef _MULTIBUF_SERVER_
|
||||
/*
|
||||
* Extra definitions that will only be needed in the client
|
||||
*/
|
||||
typedef XID Multibuffer;
|
||||
|
||||
typedef struct {
|
||||
int type; /* of event */
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
int send_event; /* true if this came frome a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Multibuffer buffer; /* buffer of event */
|
||||
int state; /* see Clobbered constants above */
|
||||
} XmbufClobberNotifyEvent;
|
||||
|
||||
typedef struct {
|
||||
int type; /* of event */
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
int send_event; /* true if this came frome a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Multibuffer buffer; /* buffer of event */
|
||||
} XmbufUpdateNotifyEvent;
|
||||
|
||||
|
||||
/*
|
||||
* per-window attributes that can be got
|
||||
*/
|
||||
typedef struct {
|
||||
int displayed_index; /* which buffer is being displayed */
|
||||
int update_action; /* Undefined, Background, Untouched, Copied */
|
||||
int update_hint; /* Frequent, Intermittent, Static */
|
||||
int window_mode; /* Mono, Stereo */
|
||||
int nbuffers; /* Number of buffers */
|
||||
Multibuffer *buffers; /* Buffers */
|
||||
} XmbufWindowAttributes;
|
||||
|
||||
/*
|
||||
* per-window attributes that can be set
|
||||
*/
|
||||
typedef struct {
|
||||
int update_hint; /* Frequent, Intermittent, Static */
|
||||
} XmbufSetWindowAttributes;
|
||||
|
||||
|
||||
/*
|
||||
* per-buffer attributes that can be got
|
||||
*/
|
||||
typedef struct {
|
||||
Window window; /* which window this belongs to */
|
||||
unsigned long event_mask; /* events that have been selected */
|
||||
int buffer_index; /* which buffer is this */
|
||||
int side; /* Mono, Left, Right */
|
||||
} XmbufBufferAttributes;
|
||||
|
||||
/*
|
||||
* per-buffer attributes that can be set
|
||||
*/
|
||||
typedef struct {
|
||||
unsigned long event_mask; /* events that have been selected */
|
||||
} XmbufSetBufferAttributes;
|
||||
|
||||
|
||||
/*
|
||||
* per-screen buffer info (there will be lists of them)
|
||||
*/
|
||||
typedef struct {
|
||||
VisualID visualid; /* visual usuable at this depth */
|
||||
int max_buffers; /* most buffers for this visual */
|
||||
int depth; /* depth of buffers to be created */
|
||||
} XmbufBufferInfo;
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
extern Bool XmbufQueryExtension(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
int* /* event_base_return */,
|
||||
int* /* error_base_return */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern Status XmbufGetVersion(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
int* /* major_version_return */,
|
||||
int* /* minor_version_return */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern int XmbufCreateBuffers(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Window /* w */,
|
||||
int /* count */,
|
||||
int /* update_action */,
|
||||
int /* update_hint */,
|
||||
Multibuffer* /* buffers */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern void XmbufDestroyBuffers(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Window /* window */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern void XmbufDisplayBuffers(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
int /* count */,
|
||||
Multibuffer* /* buffers */,
|
||||
int /* min_delay */,
|
||||
int /* max_delay */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern Status XmbufGetWindowAttributes(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Window /* w */,
|
||||
XmbufWindowAttributes* /* attr */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern void XmbufChangeWindowAttributes(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Window /* w */,
|
||||
unsigned long /* valuemask */,
|
||||
XmbufSetWindowAttributes* /* attr */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern Status XmbufGetBufferAttributes(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Multibuffer /* b */,
|
||||
XmbufBufferAttributes* /* attr */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern void XmbufChangeBufferAttributes(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Multibuffer /* b */,
|
||||
unsigned long /* valuemask */,
|
||||
XmbufSetBufferAttributes* /* attr */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern Status XmbufGetScreenInfo(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Drawable /* d */,
|
||||
int* /* nmono_return */,
|
||||
XmbufBufferInfo** /* mono_info_return */,
|
||||
int* /* nstereo_return */,
|
||||
XmbufBufferInfo** /* stereo_info_return */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern Window XmbufCreateStereoWindow(
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* dpy */,
|
||||
Window /* parent */,
|
||||
int /* x */,
|
||||
int /* y */,
|
||||
unsigned int /* width */,
|
||||
unsigned int /* height */,
|
||||
unsigned int /* border_width */,
|
||||
int /* depth */,
|
||||
unsigned int /* class */,
|
||||
Visual* /* visual */,
|
||||
unsigned long /* valuemask */,
|
||||
XSetWindowAttributes* /* attr */,
|
||||
Multibuffer* /* leftp */,
|
||||
Multibuffer* /* rightp */
|
||||
#endif
|
||||
);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif /* _MULTIBUF_SERVER_ */
|
||||
#endif /* _MULTIBUF_H_ */
|
||||
197
Linux-0.98/Yggdrasil-0.98.3/usr/include/X11/extensions/shape.h
Normal file
197
Linux-0.98/Yggdrasil-0.98.3/usr/include/X11/extensions/shape.h
Normal file
@@ -0,0 +1,197 @@
|
||||
/************************************************************
|
||||
Copyright 1989 by The Massachusetts Institute of Technology
|
||||
|
||||
Permission to use, copy, modify, and distribute this
|
||||
software and its documentation for any purpose and without
|
||||
fee is hereby granted, provided that the above copyright
|
||||
no- tice appear in all copies and that both that copyright
|
||||
no- tice and this permission notice appear in supporting
|
||||
docu- mentation, and that the name of MIT not be used in
|
||||
advertising or publicity pertaining to distribution of the
|
||||
software without specific prior written permission.
|
||||
M.I.T. makes no representation about the suitability of
|
||||
this software for any purpose. It is provided "as is"
|
||||
without any express or implied warranty.
|
||||
|
||||
MIT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FIT-
|
||||
NESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SUN BE LI-
|
||||
ABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
|
||||
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
|
||||
PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
||||
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH
|
||||
THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
********************************************************/
|
||||
|
||||
/* $XConsortium: shape.h,v 1.15 91/02/17 13:09:32 rws Exp $ */
|
||||
|
||||
#ifndef _SHAPE_H_
|
||||
#define _SHAPE_H_
|
||||
|
||||
#include <X11/Xfuncproto.h>
|
||||
|
||||
#define X_ShapeQueryVersion 0
|
||||
#define X_ShapeRectangles 1
|
||||
#define X_ShapeMask 2
|
||||
#define X_ShapeCombine 3
|
||||
#define X_ShapeOffset 4
|
||||
#define X_ShapeQueryExtents 5
|
||||
#define X_ShapeSelectInput 6
|
||||
#define X_ShapeInputSelected 7
|
||||
#define X_ShapeGetRectangles 8
|
||||
|
||||
#define ShapeSet 0
|
||||
#define ShapeUnion 1
|
||||
#define ShapeIntersect 2
|
||||
#define ShapeSubtract 3
|
||||
#define ShapeInvert 4
|
||||
|
||||
#define ShapeBounding 0
|
||||
#define ShapeClip 1
|
||||
|
||||
#define ShapeNotifyMask (1L << 0)
|
||||
#define ShapeNotify 0
|
||||
|
||||
#define ShapeNumberEvents (ShapeNotify + 1)
|
||||
|
||||
#ifndef _SHAPE_SERVER_
|
||||
typedef struct {
|
||||
int type; /* of event */
|
||||
unsigned long serial; /* # of last request processed by server */
|
||||
Bool send_event; /* true if this came frome a SendEvent request */
|
||||
Display *display; /* Display the event was read from */
|
||||
Window window; /* window of event */
|
||||
int kind; /* ShapeBounding or ShapeClip */
|
||||
int x, y; /* extents of new region */
|
||||
unsigned width, height;
|
||||
Time time; /* server timestamp when region changed */
|
||||
Bool shaped; /* true if the region exists */
|
||||
} XShapeEvent;
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
extern Bool XShapeQueryExtension (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
int* /* event_base */,
|
||||
int* /* error_base */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern Status XShapeQueryVersion (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
int* /* major_version */,
|
||||
int* /* minor_version */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern void XShapeCombineRegion (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
Window /* dest */,
|
||||
int /* dest_kind */,
|
||||
int /* x_off */,
|
||||
int /* y_off */,
|
||||
Region /* region */,
|
||||
int /* op */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern void XShapeCombineRectangles (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
Window /* dest */,
|
||||
int /* dest_kind */,
|
||||
int /* x_off */,
|
||||
int /* y_off */,
|
||||
XRectangle* /* rectangles */,
|
||||
int /* n_rects */,
|
||||
int /* op */,
|
||||
int /* ordering */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern void XShapeCombineMask (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
Window /* dest */,
|
||||
int /* dest_kind */,
|
||||
int /* x_off */,
|
||||
int /* y_off */,
|
||||
Pixmap /* src */,
|
||||
int /* op */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern void XShapeCombineShape (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
Window /* dest */,
|
||||
int /* dest_kind */,
|
||||
int /* x_off */,
|
||||
int /* y_off */,
|
||||
Window /* src */,
|
||||
int /* src_kind */,
|
||||
int /* op */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern void XShapeOffsetShape (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
Window /* dest */,
|
||||
int /* dest_kind */,
|
||||
int /* x_off */,
|
||||
int /* y_off */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern Status XShapeQueryExtents (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
Window /* window */,
|
||||
Bool* /* bounding_shaped */,
|
||||
int* /* x_bounding */,
|
||||
int* /* y_bounding */,
|
||||
unsigned int* /* w_bounding */,
|
||||
unsigned int* /* h_bounding */,
|
||||
Bool* /* clip_shaped */,
|
||||
int* /* x_clip */,
|
||||
int* /* y_clip */,
|
||||
unsigned int* /* w_clip */,
|
||||
unsigned int* /* h_clip */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern void XShapeSelectInput (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
Window /* window */,
|
||||
unsigned long /* mask */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern unsigned long XShapeInputSelected (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
Window /* window */
|
||||
#endif
|
||||
);
|
||||
|
||||
extern XRectangle *XShapeGetRectangles (
|
||||
#if NeedFunctionPrototypes
|
||||
Display* /* display */,
|
||||
Window /* window */,
|
||||
int /* kind */,
|
||||
int* /* count */,
|
||||
int* /* ordering */
|
||||
#endif
|
||||
);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif /* _SHAPE_SERVER_ */
|
||||
|
||||
#endif /* _SHAPE_H_ */
|
||||
@@ -0,0 +1,302 @@
|
||||
/*
|
||||
* xtestext1.h
|
||||
*
|
||||
* X11 Input Synthesis Extension include file
|
||||
*/
|
||||
|
||||
/*
|
||||
|
||||
Copyright 1986, 1987, 1988 by Hewlett-Packard Corporation
|
||||
Copyright 1986, 1987, 1988 by the Massachusetts Institute of Technology
|
||||
|
||||
Permission to use, copy, modify, and distribute this
|
||||
software and its documentation for any purpose and without
|
||||
fee is hereby granted, provided that the above copyright
|
||||
notice appear in all copies and that both that copyright
|
||||
notice and this permission notice appear in supporting
|
||||
documentation, and that the name of M.I.T. not be used in
|
||||
advertising or publicity pertaining to distribution of the
|
||||
software without specific, written prior permission.
|
||||
|
||||
Hewlett-Packard and M.I.T. make no representations about the
|
||||
suitability of this software for any purpose. It is provided
|
||||
"as is" without express or implied warranty.
|
||||
|
||||
This software is not subject to any license of the American
|
||||
Telephone and Telegraph Company or of the Regents of the
|
||||
University of California.
|
||||
|
||||
*/
|
||||
|
||||
/*
|
||||
* the typedefs for CARD8, CARD16, and CARD32 are defined in Xmd.h
|
||||
*/
|
||||
|
||||
/*
|
||||
* used in the XTestPressButton and XTestPressKey functions
|
||||
*/
|
||||
#define XTestPRESS 1 << 0
|
||||
#define XTestRELEASE 1 << 1
|
||||
#define XTestSTROKE 1 << 2
|
||||
|
||||
/*
|
||||
* When doing a key or button stroke, the number of milliseconds
|
||||
* to delay between the press and the release of a key or button
|
||||
* in the XTestPressButton and XTestPressKey functions.
|
||||
*/
|
||||
|
||||
#define XTestSTROKE_DELAY_TIME 10
|
||||
|
||||
/*
|
||||
* used in the XTestGetInput function
|
||||
*/
|
||||
#define XTestEXCLUSIVE 1 << 0
|
||||
#define XTestPACKED_ACTIONS 1 << 1
|
||||
#define XTestPACKED_MOTION 1 << 2
|
||||
|
||||
/*
|
||||
* used in the XTestFakeInput function
|
||||
*/
|
||||
#define XTestFAKE_ACK_NOT_NEEDED 0
|
||||
#define XTestFAKE_ACK_REQUEST 1
|
||||
|
||||
/*
|
||||
* used in the XTest extension initialization routine
|
||||
*/
|
||||
#define XTestEXTENSION_NAME "XTestExtension1"
|
||||
#define XTestEVENT_COUNT 2
|
||||
|
||||
/*
|
||||
* XTest request type values
|
||||
*
|
||||
* used in the XTest extension protocol requests
|
||||
*/
|
||||
#define X_TestFakeInput 1
|
||||
#define X_TestGetInput 2
|
||||
#define X_TestStopInput 3
|
||||
#define X_TestReset 4
|
||||
#define X_TestQueryInputSize 5
|
||||
|
||||
/*
|
||||
* This defines the maximum size of a list of input actions
|
||||
* to be sent to the server. It should always be a multiple of
|
||||
* 4 so that the entire xTestFakeInputReq structure size is a
|
||||
* multiple of 4.
|
||||
*/
|
||||
#define XTestMAX_ACTION_LIST_SIZE 64
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XTestReqCode */
|
||||
CARD8 XTestReqType; /* always X_TestFakeInput */
|
||||
CARD16 length B16; /* 2 + XTestMAX_ACTION_LIST_SIZE/4 */
|
||||
CARD32 ack B32;
|
||||
CARD8 action_list[XTestMAX_ACTION_LIST_SIZE];
|
||||
} xTestFakeInputReq;
|
||||
#define sz_xTestFakeInputReq (XTestMAX_ACTION_LIST_SIZE + 8)
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XTestReqCode */
|
||||
CARD8 XTestReqType; /* always X_TestGetInput */
|
||||
CARD16 length B16; /* 2 */
|
||||
CARD32 mode B32;
|
||||
} xTestGetInputReq;
|
||||
#define sz_xTestGetInputReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XTestReqCode */
|
||||
CARD8 XTestReqType; /* always X_TestStopInput */
|
||||
CARD16 length B32; /* 1 */
|
||||
} xTestStopInputReq;
|
||||
#define sz_xTestStopInputReq 4
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XTestReqCode */
|
||||
CARD8 XTestReqType; /* always X_TestReset */
|
||||
CARD16 length B16; /* 1 */
|
||||
} xTestResetReq;
|
||||
#define sz_xTestResetReq 4
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XTestReqCode */
|
||||
CARD8 XTestReqType; /* always X_TestQueryInputSize */
|
||||
CARD16 length B16; /* 1 */
|
||||
} xTestQueryInputSizeReq;
|
||||
#define sz_xTestQueryInputSizeReq 4
|
||||
|
||||
/*
|
||||
* This is the definition of the reply for the xTestQueryInputSize
|
||||
* request. It should remain the same minimum size as other replies
|
||||
* (32 bytes).
|
||||
*/
|
||||
typedef struct {
|
||||
CARD8 type; /* always X_Reply */
|
||||
CARD8 pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32; /* always 0 */
|
||||
CARD32 size_return B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
} xTestQueryInputSizeReply;
|
||||
|
||||
/*
|
||||
* This is the definition for the input action wire event structure.
|
||||
* This event is sent to the client when the server has one or
|
||||
* more user input actions to report to the client. It must
|
||||
* remain the same size as all other wire events (32 bytes).
|
||||
*/
|
||||
#define XTestACTIONS_SIZE 28
|
||||
|
||||
typedef struct {
|
||||
CARD8 type; /* always XTestInputActionType */
|
||||
CARD8 pad00;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD8 actions[XTestACTIONS_SIZE];
|
||||
} xTestInputActionEvent;
|
||||
|
||||
/*
|
||||
* This is the definition for the xTestFakeAck wire event structure.
|
||||
* This event is sent to the client when the server has completely
|
||||
* processed its input action buffer, and is ready for more.
|
||||
* It must remain the same size as all other wire events (32 bytes).
|
||||
*/
|
||||
typedef struct {
|
||||
CARD8 type; /* always XTestFakeAckType */
|
||||
CARD8 pad00;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 pad02 B32;
|
||||
CARD32 pad03 B32;
|
||||
CARD32 pad04 B32;
|
||||
CARD32 pad05 B32;
|
||||
CARD32 pad06 B32;
|
||||
CARD32 pad07 B32;
|
||||
CARD32 pad08 B32;
|
||||
} xTestFakeAckEvent;
|
||||
|
||||
/*
|
||||
* The server side of this extension does not (and should not) have
|
||||
* definitions for Display and Window. The ifndef allows the server
|
||||
* side of the extension to ignore the following typedefs.
|
||||
*/
|
||||
#ifndef XTestSERVER_SIDE
|
||||
/*
|
||||
* This is the definition for the input action host format event structure.
|
||||
* This is the form that a client using this extension will see when
|
||||
* it receives an input action event.
|
||||
*/
|
||||
typedef struct {
|
||||
int type; /* always XTestInputActionType */
|
||||
Display *display;
|
||||
Window window;
|
||||
CARD8 actions[XTestACTIONS_SIZE];
|
||||
} XTestInputActionEvent;
|
||||
|
||||
/*
|
||||
* This is the definition for the xTestFakeAck host format event structure.
|
||||
* This is the form that a client using this extension will see when
|
||||
* it receives an XTestFakeAck event.
|
||||
*/
|
||||
typedef struct {
|
||||
int type; /* always XTestFakeAckType */
|
||||
Display *display;
|
||||
Window window;
|
||||
} XTestFakeAckEvent;
|
||||
#endif
|
||||
|
||||
/*
|
||||
* This is the definition for the format of the header byte
|
||||
* in the input action structures.
|
||||
*/
|
||||
#define XTestACTION_TYPE_MASK 0x03 /* bits 0 and 1 */
|
||||
#define XTestKEY_STATE_MASK 0x04 /* bit 2 (key action) */
|
||||
#define XTestX_SIGN_BIT_MASK 0x04 /* bit 2 (motion action) */
|
||||
#define XTestY_SIGN_BIT_MASK 0x08 /* bit 3 (motion action) */
|
||||
#define XTestDEVICE_ID_MASK 0xf0 /* bits 4 through 7 */
|
||||
|
||||
#define XTestMAX_DEVICE_ID 0x0f
|
||||
#define XTestPackDeviceID(x) (((x) & XTestMAX_DEVICE_ID) << 4)
|
||||
#define XTestUnpackDeviceID(x) (((x) & XTestDEVICE_ID_MASK) >> 4)
|
||||
|
||||
/*
|
||||
* These are the possible action types.
|
||||
*/
|
||||
#define XTestDELAY_ACTION 0
|
||||
#define XTestKEY_ACTION 1
|
||||
#define XTestMOTION_ACTION 2
|
||||
#define XTestJUMP_ACTION 3
|
||||
|
||||
/*
|
||||
* These are the definitions for key/button motion input actions.
|
||||
*/
|
||||
#define XTestKEY_UP 0x04
|
||||
#define XTestKEY_DOWN 0x00
|
||||
|
||||
typedef struct {
|
||||
CARD8 header; /* which device, key up/down */
|
||||
CARD8 keycode; /* which key/button to move */
|
||||
CARD16 delay_time B16; /* how long to delay (in ms) */
|
||||
} XTestKeyInfo;
|
||||
|
||||
/*
|
||||
* This is the definition for pointer jump input actions.
|
||||
*/
|
||||
typedef struct {
|
||||
CARD8 header; /* which pointer */
|
||||
CARD8 pad1; /* unused padding byte */
|
||||
CARD16 jumpx B16; /* x coord to jump to */
|
||||
CARD16 jumpy B16; /* y coord to jump to */
|
||||
CARD16 delay_time B16; /* how long to delay (in ms) */
|
||||
} XTestJumpInfo;
|
||||
|
||||
/*
|
||||
* These are the definitions for pointer relative motion input
|
||||
* actions.
|
||||
*
|
||||
* The sign bits for the x and y relative motions are contained
|
||||
* in the header byte. The x and y relative motions are packed
|
||||
* into one byte to make things fit in 32 bits. If the relative
|
||||
* motion range is larger than +/-15, use the pointer jump action.
|
||||
*/
|
||||
#define XTestMOTION_MAX 15
|
||||
#define XTestMOTION_MIN -15
|
||||
|
||||
#define XTestX_NEGATIVE 0x04
|
||||
#define XTestY_NEGATIVE 0x08
|
||||
|
||||
#define XTestX_MOTION_MASK 0x0f
|
||||
#define XTestY_MOTION_MASK 0xf0
|
||||
|
||||
#define XTestPackXMotionValue(x) ((x) & XTestX_MOTION_MASK)
|
||||
#define XTestPackYMotionValue(x) (((x) << 4) & XTestY_MOTION_MASK)
|
||||
|
||||
#define XTestUnpackXMotionValue(x) ((x) & XTestX_MOTION_MASK)
|
||||
#define XTestUnpackYMotionValue(x) (((x) & XTestY_MOTION_MASK) >> 4)
|
||||
|
||||
typedef struct {
|
||||
CARD8 header; /* which pointer */
|
||||
CARD8 motion_data; /* x,y relative motion */
|
||||
CARD16 delay_time B16; /* how long to delay (in ms) */
|
||||
} XTestMotionInfo;
|
||||
|
||||
/*
|
||||
* These are the definitions for a long delay input action. It is
|
||||
* used when more than XTestSHORT_DELAY_TIME milliseconds of delay
|
||||
* (approximately one minute) is needed.
|
||||
*
|
||||
* The device ID for a delay is always set to XTestDELAY_DEVICE_ID.
|
||||
* This guarantees that a header byte with a value of 0 is not
|
||||
* a valid header, so it can be used as a flag to indicate that
|
||||
* there are no more input actions in an XTestInputAction event.
|
||||
*/
|
||||
|
||||
#define XTestSHORT_DELAY_TIME 0xffff
|
||||
#define XTestDELAY_DEVICE_ID 0x0f
|
||||
|
||||
typedef struct {
|
||||
CARD8 header; /* always XTestDELAY_DEVICE_ID */
|
||||
CARD8 pad1; /* unused padding byte */
|
||||
CARD16 pad2 B16; /* unused padding word */
|
||||
CARD32 delay_time B32; /* how long to delay (in ms) */
|
||||
} XTestDelayInfo;
|
||||
Reference in New Issue
Block a user