New upstream version 3.5.99.27
This commit is contained in:
84
nx-X11/include/extensions/Imakefile
Normal file
84
nx-X11/include/extensions/Imakefile
Normal file
@@ -0,0 +1,84 @@
|
||||
NULL =
|
||||
|
||||
#if BuildScreenSaverExt
|
||||
SCREENSAVERHEADERS = saver.h saverproto.h
|
||||
#endif
|
||||
|
||||
#if BuildXF86BigfontExt
|
||||
XF86BIGFONTHEADERS = xf86bigfont.h xf86bigfproto.h
|
||||
#endif
|
||||
#if BuildXvExt
|
||||
XVHEADERS = Xv.h Xvproto.h
|
||||
XVMCHEADERS = XvMC.h XvMCproto.h
|
||||
#endif
|
||||
#if BuildXinerama
|
||||
XINERAMAHEADERS = panoramiXext.h panoramiXproto.h
|
||||
#endif
|
||||
#if BuildRandR
|
||||
RANDRHEADERS = randr.h randrproto.h
|
||||
#endif
|
||||
#if BuildRender
|
||||
RENDERHEADERS = render.h renderproto.h
|
||||
#endif
|
||||
#if BuildXfixes
|
||||
XFIXESHEADERS = xfixeswire.h xfixesproto.h
|
||||
#endif
|
||||
#if BuildComposite
|
||||
COMPOSITEHEADERS = composite.h compositeproto.h
|
||||
#endif
|
||||
#if BuildDamage
|
||||
DAMAGEHEADERS = damagewire.h damageproto.h
|
||||
#endif
|
||||
#if BuildXResExt
|
||||
XRESHEADERS = XResproto.h
|
||||
#endif
|
||||
|
||||
XKBFILEHEADERS = XKMformat.h XKM.h XKBconfig.h
|
||||
|
||||
EXTRAHEADERS = \
|
||||
$(SCREENSAVERHEADERS) \
|
||||
$(XINERAMAHEADERS) \
|
||||
$(XF86BIGFONTHEADERS) \
|
||||
$(XVHEADERS) \
|
||||
$(XVMCHEADERS) \
|
||||
$(RANDRHEADERS) \
|
||||
$(RENDERHEADERS) \
|
||||
$(XFIXESHEADERS) \
|
||||
$(COMPOSITEHEADERS) \
|
||||
$(DAMAGEHEADERS) \
|
||||
$(XRESHEADERS) \
|
||||
$(XKBFILEHEADERS) \
|
||||
$(NULL)
|
||||
|
||||
HEADERS = \
|
||||
xcmiscstr.h \
|
||||
bigreqstr.h \
|
||||
XI.h XIproto.h \
|
||||
xtestconst.h xteststr.h \
|
||||
XKB.h XKBgeom.h XKBproto.h XKBstr.h XKBsrv.h \
|
||||
Xdbeproto.h \
|
||||
$(EXTRAHEADERS) \
|
||||
record.h recordstr.h \
|
||||
security.h securstr.h \
|
||||
sync.h syncstr.h \
|
||||
dpms.h dpmsstr.h \
|
||||
shapeconst.h \
|
||||
$(NULL)
|
||||
|
||||
all::
|
||||
|
||||
BuildIncludes($(HEADERS),nx-X11/extensions,../..)
|
||||
|
||||
#if BuildLibraries
|
||||
InstallMultipleFlags($(HEADERS),$(INCDIR)/nx-X11/extensions,$(INSTINCFLAGS))
|
||||
#endif
|
||||
|
||||
InstallDriverSDKNonExecFile(XI.h,$(DRIVERSDKINCLUDEDIR)/extensions)
|
||||
InstallDriverSDKNonExecFile(XIproto.h,$(DRIVERSDKINCLUDEDIR)/extensions)
|
||||
InstallDriverSDKNonExecFile(Xv.h,$(DRIVERSDKINCLUDEDIR))
|
||||
InstallDriverSDKNonExecFile(Xvproto.h,$(DRIVERSDKINCLUDEDIR))
|
||||
InstallDriverSDKNonExecFile(dpms.h,$(DRIVERSDKINCLUDEDIR)/extensions)
|
||||
InstallDriverSDKNonExecFile(renderproto.h,$(DRIVERSDKINCLUDEDIR))
|
||||
InstallDriverSDKNonExecFile(Xv.h,$(DRIVERSDKINCLUDEDIR)/extensions)
|
||||
InstallDriverSDKNonExecFile(XvMC.h,$(DRIVERSDKINCLUDEDIR))
|
||||
InstallDriverSDKNonExecFile(Xv.h,$(DRIVERSDKINCLUDEDIR)/X11/extensions)
|
||||
273
nx-X11/include/extensions/XI.h
Normal file
273
nx-X11/include/extensions/XI.h
Normal file
@@ -0,0 +1,273 @@
|
||||
|
||||
/************************************************************
|
||||
|
||||
Copyright 1989, 1998 The Open Group
|
||||
|
||||
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.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of The Open Group shall not be
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from The Open Group.
|
||||
|
||||
Copyright 1989 by Hewlett-Packard Company, Palo Alto, California.
|
||||
|
||||
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 name of Hewlett-Packard 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
|
||||
/* Merged from Metrolink tree for XINPUT stuff */
|
||||
#define TS_Raw 57
|
||||
#define TS_Scaled 58
|
||||
#define SendCoreEvents 59
|
||||
#define DontSendCoreEvents 60
|
||||
/* End of merged section */
|
||||
|
||||
#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
|
||||
|
||||
/* Make XEventClass be a CARD32 for 64 bit servers. Don't affect client
|
||||
* definition of XEventClass since that would be a library interface change.
|
||||
* See the top of X.h for more _XSERVER64 magic.
|
||||
*/
|
||||
#ifdef _XSERVER64
|
||||
typedef CARD32 XEventClass;
|
||||
#else
|
||||
typedef unsigned long XEventClass;
|
||||
#endif
|
||||
|
||||
/*******************************************************************
|
||||
*
|
||||
* Extension version structure.
|
||||
*
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
int present;
|
||||
short major_version;
|
||||
short minor_version;
|
||||
} XExtensionVersion;
|
||||
|
||||
#endif /* _XI_H_ */
|
||||
1528
nx-X11/include/extensions/XIproto.h
Normal file
1528
nx-X11/include/extensions/XIproto.h
Normal file
File diff suppressed because it is too large
Load Diff
788
nx-X11/include/extensions/XKB.h
Normal file
788
nx-X11/include/extensions/XKB.h
Normal file
@@ -0,0 +1,788 @@
|
||||
/************************************************************
|
||||
Copyright (c) 1993 by Silicon Graphics Computer Systems, Inc.
|
||||
|
||||
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 Silicon Graphics not be
|
||||
used in advertising or publicity pertaining to distribution
|
||||
of the software without specific prior written permission.
|
||||
Silicon Graphics makes no representation about the suitability
|
||||
of this software for any purpose. It is provided "as is"
|
||||
without any express or implied warranty.
|
||||
|
||||
SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
|
||||
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
|
||||
GRAPHICS 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 _XKB_H_
|
||||
#define _XKB_H_
|
||||
|
||||
/*
|
||||
* XKB request codes, used in:
|
||||
* - xkbReqType field of all requests
|
||||
* - requestMinor field of some events
|
||||
*/
|
||||
#define X_kbUseExtension 0
|
||||
#define X_kbSelectEvents 1
|
||||
#define X_kbBell 3
|
||||
#define X_kbGetState 4
|
||||
#define X_kbLatchLockState 5
|
||||
#define X_kbGetControls 6
|
||||
#define X_kbSetControls 7
|
||||
#define X_kbGetMap 8
|
||||
#define X_kbSetMap 9
|
||||
#define X_kbGetCompatMap 10
|
||||
#define X_kbSetCompatMap 11
|
||||
#define X_kbGetIndicatorState 12
|
||||
#define X_kbGetIndicatorMap 13
|
||||
#define X_kbSetIndicatorMap 14
|
||||
#define X_kbGetNamedIndicator 15
|
||||
#define X_kbSetNamedIndicator 16
|
||||
#define X_kbGetNames 17
|
||||
#define X_kbSetNames 18
|
||||
#define X_kbGetGeometry 19
|
||||
#define X_kbSetGeometry 20
|
||||
#define X_kbPerClientFlags 21
|
||||
#define X_kbListComponents 22
|
||||
#define X_kbGetKbdByName 23
|
||||
#define X_kbGetDeviceInfo 24
|
||||
#define X_kbSetDeviceInfo 25
|
||||
#define X_kbSetDebuggingFlags 101
|
||||
|
||||
/*
|
||||
* In the X sense, XKB reports only one event.
|
||||
* The type field of all XKB events is XkbEventCode
|
||||
*/
|
||||
#define XkbEventCode 0
|
||||
#define XkbNumberEvents (XkbEventCode+1)
|
||||
|
||||
/*
|
||||
* XKB has a minor event code so it can use one X event code for
|
||||
* multiple purposes.
|
||||
* - reported in the xkbType field of all XKB events.
|
||||
* - XkbSelectEventDetails: Indicates the event for which event details
|
||||
* are being changed
|
||||
*/
|
||||
#define XkbNewKeyboardNotify 0
|
||||
#define XkbMapNotify 1
|
||||
#define XkbStateNotify 2
|
||||
#define XkbControlsNotify 3
|
||||
#define XkbIndicatorStateNotify 4
|
||||
#define XkbIndicatorMapNotify 5
|
||||
#define XkbNamesNotify 6
|
||||
#define XkbCompatMapNotify 7
|
||||
#define XkbBellNotify 8
|
||||
#define XkbActionMessage 9
|
||||
#define XkbAccessXNotify 10
|
||||
#define XkbExtensionDeviceNotify 11
|
||||
|
||||
/*
|
||||
* Event Mask:
|
||||
* - XkbSelectEvents: Specifies event interest.
|
||||
*/
|
||||
#define XkbNewKeyboardNotifyMask (1L << 0)
|
||||
#define XkbMapNotifyMask (1L << 1)
|
||||
#define XkbStateNotifyMask (1L << 2)
|
||||
#define XkbControlsNotifyMask (1L << 3)
|
||||
#define XkbIndicatorStateNotifyMask (1L << 4)
|
||||
#define XkbIndicatorMapNotifyMask (1L << 5)
|
||||
#define XkbNamesNotifyMask (1L << 6)
|
||||
#define XkbCompatMapNotifyMask (1L << 7)
|
||||
#define XkbBellNotifyMask (1L << 8)
|
||||
#define XkbActionMessageMask (1L << 9)
|
||||
#define XkbAccessXNotifyMask (1L << 10)
|
||||
#define XkbExtensionDeviceNotifyMask (1L << 11)
|
||||
#define XkbAllEventsMask (0xFFF)
|
||||
|
||||
/*
|
||||
* NewKeyboardNotify event details:
|
||||
*/
|
||||
#define XkbNKN_KeycodesMask (1L << 0)
|
||||
#define XkbNKN_GeometryMask (1L << 1)
|
||||
#define XkbNKN_DeviceIDMask (1L << 2)
|
||||
#define XkbAllNewKeyboardEventsMask (0x7)
|
||||
|
||||
/*
|
||||
* AccessXNotify event types:
|
||||
* - The 'what' field of AccessXNotify events reports the
|
||||
* reason that the event was generated.
|
||||
*/
|
||||
#define XkbAXN_SKPress 0
|
||||
#define XkbAXN_SKAccept 1
|
||||
#define XkbAXN_SKReject 2
|
||||
#define XkbAXN_SKRelease 3
|
||||
#define XkbAXN_BKAccept 4
|
||||
#define XkbAXN_BKReject 5
|
||||
#define XkbAXN_AXKWarning 6
|
||||
|
||||
/*
|
||||
* AccessXNotify details:
|
||||
* - Used as an event detail mask to limit the conditions under which
|
||||
* AccessXNotify events are reported
|
||||
*/
|
||||
#define XkbAXN_SKPressMask (1L << 0)
|
||||
#define XkbAXN_SKAcceptMask (1L << 1)
|
||||
#define XkbAXN_SKRejectMask (1L << 2)
|
||||
#define XkbAXN_SKReleaseMask (1L << 3)
|
||||
#define XkbAXN_BKAcceptMask (1L << 4)
|
||||
#define XkbAXN_BKRejectMask (1L << 5)
|
||||
#define XkbAXN_AXKWarningMask (1L << 6)
|
||||
#define XkbAllAccessXEventsMask (0x7f)
|
||||
|
||||
/*
|
||||
* Miscellaneous event details:
|
||||
* - event detail masks for assorted events that don't reall
|
||||
* have any details.
|
||||
*/
|
||||
#define XkbAllStateEventsMask XkbAllStateComponentsMask
|
||||
#define XkbAllMapEventsMask XkbAllMapComponentsMask
|
||||
#define XkbAllControlEventsMask XkbAllControlsMask
|
||||
#define XkbAllIndicatorEventsMask XkbAllIndicatorsMask
|
||||
#define XkbAllNameEventsMask XkbAllNamesMask
|
||||
#define XkbAllCompatMapEventsMask XkbAllCompatMask
|
||||
#define XkbAllBellEventsMask (1L << 0)
|
||||
#define XkbAllActionMessagesMask (1L << 0)
|
||||
|
||||
/*
|
||||
* XKB reports one error: BadKeyboard
|
||||
* A further reason for the error is encoded into to most significant
|
||||
* byte of the resourceID for the error:
|
||||
* XkbErr_BadDevice - the device in question was not found
|
||||
* XkbErr_BadClass - the device was found but it doesn't belong to
|
||||
* the appropriate class.
|
||||
* XkbErr_BadId - the device was found and belongs to the right
|
||||
* class, but not feedback with a matching id was
|
||||
* found.
|
||||
* The low byte of the resourceID for this error contains the device
|
||||
* id, class specifier or feedback id that failed.
|
||||
*/
|
||||
#define XkbKeyboard 0
|
||||
#define XkbNumberErrors 1
|
||||
|
||||
#define XkbErr_BadDevice 0xff
|
||||
#define XkbErr_BadClass 0xfe
|
||||
#define XkbErr_BadId 0xfd
|
||||
|
||||
/*
|
||||
* Keyboard Components Mask:
|
||||
* - Specifies the components that follow a GetKeyboardByNameReply
|
||||
*/
|
||||
#define XkbClientMapMask (1L << 0)
|
||||
#define XkbServerMapMask (1L << 1)
|
||||
#define XkbCompatMapMask (1L << 2)
|
||||
#define XkbIndicatorMapMask (1L << 3)
|
||||
#define XkbNamesMask (1L << 4)
|
||||
#define XkbGeometryMask (1L << 5)
|
||||
#define XkbControlsMask (1L << 6)
|
||||
#define XkbAllComponentsMask (0x7f)
|
||||
|
||||
/*
|
||||
* State detail mask:
|
||||
* - The 'changed' field of StateNotify events reports which of
|
||||
* the keyboard state components have changed.
|
||||
* - Used as an event detail mask to limit the conditions under
|
||||
* which StateNotify events are reported.
|
||||
*/
|
||||
#define XkbModifierStateMask (1L << 0)
|
||||
#define XkbModifierBaseMask (1L << 1)
|
||||
#define XkbModifierLatchMask (1L << 2)
|
||||
#define XkbModifierLockMask (1L << 3)
|
||||
#define XkbGroupStateMask (1L << 4)
|
||||
#define XkbGroupBaseMask (1L << 5)
|
||||
#define XkbGroupLatchMask (1L << 6)
|
||||
#define XkbGroupLockMask (1L << 7)
|
||||
#define XkbCompatStateMask (1L << 8)
|
||||
#define XkbGrabModsMask (1L << 9)
|
||||
#define XkbCompatGrabModsMask (1L << 10)
|
||||
#define XkbLookupModsMask (1L << 11)
|
||||
#define XkbCompatLookupModsMask (1L << 12)
|
||||
#define XkbPointerButtonMask (1L << 13)
|
||||
#define XkbAllStateComponentsMask (0x3fff)
|
||||
|
||||
/*
|
||||
* Controls detail masks:
|
||||
* The controls specified in XkbAllControlsMask:
|
||||
* - The 'changed' field of ControlsNotify events reports which of
|
||||
* the keyboard controls have changed.
|
||||
* - The 'changeControls' field of the SetControls request specifies
|
||||
* the controls for which values are to be changed.
|
||||
* - Used as an event detail mask to limit the conditions under
|
||||
* which ControlsNotify events are reported.
|
||||
*
|
||||
* The controls specified in the XkbAllBooleanCtrlsMask:
|
||||
* - The 'enabledControls' field of ControlsNotify events reports the
|
||||
* current status of the boolean controls.
|
||||
* - The 'enabledControlsChanges' field of ControlsNotify events reports
|
||||
* any boolean controls that have been turned on or off.
|
||||
* - The 'affectEnabledControls' and 'enabledControls' fields of the
|
||||
* kbSetControls request change the set of enabled controls.
|
||||
* - The 'accessXTimeoutMask' and 'accessXTimeoutValues' fields of
|
||||
* an XkbControlsRec specify the controls to be changed if the keyboard
|
||||
* times out and the values to which they should be changed.
|
||||
* - The 'autoCtrls' and 'autoCtrlsValues' fields of the PerClientFlags
|
||||
* request specifies the specify the controls to be reset when the
|
||||
* client exits and the values to which they should be reset.
|
||||
* - The 'ctrls' field of an indicator map specifies the controls
|
||||
* that drive the indicator.
|
||||
* - Specifies the boolean controls affected by the SetControls and
|
||||
* LockControls key actions.
|
||||
*/
|
||||
#define XkbRepeatKeysMask (1L << 0)
|
||||
#define XkbSlowKeysMask (1L << 1)
|
||||
#define XkbBounceKeysMask (1L << 2)
|
||||
#define XkbStickyKeysMask (1L << 3)
|
||||
#define XkbMouseKeysMask (1L << 4)
|
||||
#define XkbMouseKeysAccelMask (1L << 5)
|
||||
#define XkbAccessXKeysMask (1L << 6)
|
||||
#define XkbAccessXTimeoutMask (1L << 7)
|
||||
#define XkbAccessXFeedbackMask (1L << 8)
|
||||
#define XkbAudibleBellMask (1L << 9)
|
||||
#define XkbOverlay1Mask (1L << 10)
|
||||
#define XkbOverlay2Mask (1L << 11)
|
||||
#define XkbIgnoreGroupLockMask (1L << 12)
|
||||
#define XkbGroupsWrapMask (1L << 27)
|
||||
#define XkbInternalModsMask (1L << 28)
|
||||
#define XkbIgnoreLockModsMask (1L << 29)
|
||||
#define XkbPerKeyRepeatMask (1L << 30)
|
||||
#define XkbControlsEnabledMask (1L << 31)
|
||||
|
||||
#define XkbAccessXOptionsMask (XkbStickyKeysMask|XkbAccessXFeedbackMask)
|
||||
|
||||
#define XkbAllBooleanCtrlsMask (0x00001FFF)
|
||||
#define XkbAllControlsMask (0xF8001FFF)
|
||||
#define XkbAllControlEventsMask XkbAllControlsMask
|
||||
|
||||
/*
|
||||
* AccessX Options Mask
|
||||
* - The 'accessXOptions' field of an XkbControlsRec specifies the
|
||||
* AccessX options that are currently in effect.
|
||||
* - The 'accessXTimeoutOptionsMask' and 'accessXTimeoutOptionsValues'
|
||||
* fields of an XkbControlsRec specify the Access X options to be
|
||||
* changed if the keyboard times out and the values to which they
|
||||
* should be changed.
|
||||
*/
|
||||
#define XkbAX_SKPressFBMask (1L << 0)
|
||||
#define XkbAX_SKAcceptFBMask (1L << 1)
|
||||
#define XkbAX_FeatureFBMask (1L << 2)
|
||||
#define XkbAX_SlowWarnFBMask (1L << 3)
|
||||
#define XkbAX_IndicatorFBMask (1L << 4)
|
||||
#define XkbAX_StickyKeysFBMask (1L << 5)
|
||||
#define XkbAX_TwoKeysMask (1L << 6)
|
||||
#define XkbAX_LatchToLockMask (1L << 7)
|
||||
#define XkbAX_SKReleaseFBMask (1L << 8)
|
||||
#define XkbAX_SKRejectFBMask (1L << 9)
|
||||
#define XkbAX_BKRejectFBMask (1L << 10)
|
||||
#define XkbAX_DumbBellFBMask (1L << 11)
|
||||
#define XkbAX_FBOptionsMask (0xF3F)
|
||||
#define XkbAX_SKOptionsMask (0x0C0)
|
||||
#define XkbAX_AllOptionsMask (0xFFF)
|
||||
|
||||
/*
|
||||
* XkbUseCoreKbd is used to specify the core keyboard without having
|
||||
* to look up its X input extension identifier.
|
||||
* XkbUseCorePtr is used to specify the core pointer without having
|
||||
* to look up its X input extension identifier.
|
||||
* XkbDfltXIClass is used to specify "don't care" any place that the
|
||||
* XKB protocol is looking for an X Input Extension
|
||||
* device class.
|
||||
* XkbDfltXIId is used to specify "don't care" any place that the
|
||||
* XKB protocol is looking for an X Input Extension
|
||||
* feedback identifier.
|
||||
* XkbAllXIClasses is used to get information about all device indicators,
|
||||
* whether they're part of the indicator feedback class
|
||||
* or the keyboard feedback class.
|
||||
* XkbAllXIIds is used to get information about all device indicator
|
||||
* feedbacks without having to list them.
|
||||
* XkbXINone is used to indicate that no class or id has been specified.
|
||||
* XkbLegalXILedClass(c) True if 'c' specifies a legal class with LEDs
|
||||
* XkbLegalXIBellClass(c) True if 'c' specifies a legal class with bells
|
||||
* XkbExplicitXIDevice(d) True if 'd' explicitly specifies a device
|
||||
* XkbExplicitXIClass(c) True if 'c' explicitly specifies a device class
|
||||
* XkbExplicitXIId(c) True if 'i' explicitly specifies a device id
|
||||
* XkbSingleXIClass(c) True if 'c' specifies exactly one device class,
|
||||
* including the default.
|
||||
* XkbSingleXIId(i) True if 'i' specifies exactly one device
|
||||
* identifier, including the default.
|
||||
*/
|
||||
#define XkbUseCoreKbd 0x0100
|
||||
#define XkbUseCorePtr 0x0200
|
||||
#define XkbDfltXIClass 0x0300
|
||||
#define XkbDfltXIId 0x0400
|
||||
#define XkbAllXIClasses 0x0500
|
||||
#define XkbAllXIIds 0x0600
|
||||
#define XkbXINone 0xff00
|
||||
|
||||
#define XkbLegalXILedClass(c) (((c)==KbdFeedbackClass)||\
|
||||
((c)==LedFeedbackClass)||\
|
||||
((c)==XkbDfltXIClass)||\
|
||||
((c)==XkbAllXIClasses))
|
||||
#define XkbLegalXIBellClass(c) (((c)==KbdFeedbackClass)||\
|
||||
((c)==BellFeedbackClass)||\
|
||||
((c)==XkbDfltXIClass)||\
|
||||
((c)==XkbAllXIClasses))
|
||||
#define XkbExplicitXIDevice(c) (((c)&(~0xff))==0)
|
||||
#define XkbExplicitXIClass(c) (((c)&(~0xff))==0)
|
||||
#define XkbExplicitXIId(c) (((c)&(~0xff))==0)
|
||||
#define XkbSingleXIClass(c) ((((c)&(~0xff))==0)||((c)==XkbDfltXIClass))
|
||||
#define XkbSingleXIId(c) ((((c)&(~0xff))==0)||((c)==XkbDfltXIId))
|
||||
|
||||
#define XkbNoModifier 0xff
|
||||
#define XkbNoShiftLevel 0xff
|
||||
#define XkbNoShape 0xff
|
||||
#define XkbNoIndicator 0xff
|
||||
|
||||
#define XkbNoModifierMask 0
|
||||
#define XkbAllModifiersMask 0xff
|
||||
#define XkbAllVirtualModsMask 0xffff
|
||||
|
||||
#define XkbNumKbdGroups 4
|
||||
#define XkbMaxKbdGroup (XkbNumKbdGroups-1)
|
||||
|
||||
#define XkbMaxMouseKeysBtn 4
|
||||
|
||||
/*
|
||||
* Group Index and Mask:
|
||||
* - Indices into the kt_index array of a key type.
|
||||
* - Mask specifies types to be changed for XkbChangeTypesOfKey
|
||||
*/
|
||||
#define XkbGroup1Index 0
|
||||
#define XkbGroup2Index 1
|
||||
#define XkbGroup3Index 2
|
||||
#define XkbGroup4Index 3
|
||||
#define XkbAnyGroup 254
|
||||
#define XkbAllGroups 255
|
||||
|
||||
#define XkbGroup1Mask (1<<0)
|
||||
#define XkbGroup2Mask (1<<1)
|
||||
#define XkbGroup3Mask (1<<2)
|
||||
#define XkbGroup4Mask (1<<3)
|
||||
#define XkbAnyGroupMask (1<<7)
|
||||
#define XkbAllGroupsMask (0xf)
|
||||
|
||||
/*
|
||||
* BuildCoreState: Given a keyboard group and a modifier state,
|
||||
* construct the value to be reported an event.
|
||||
* GroupForCoreState: Given the state reported in an event,
|
||||
* determine the keyboard group.
|
||||
* IsLegalGroup: Returns TRUE if 'g' is a valid group index.
|
||||
*/
|
||||
#define XkbBuildCoreState(m,g) ((((g)&0x3)<<13)|((m)&0xff))
|
||||
#define XkbGroupForCoreState(s) (((s)>>13)&0x3)
|
||||
#define XkbIsLegalGroup(g) (((g)>=0)&&((g)<XkbNumKbdGroups))
|
||||
|
||||
/*
|
||||
* GroupsWrap values:
|
||||
* - The 'groupsWrap' field of an XkbControlsRec specifies the
|
||||
* treatment of out of range groups.
|
||||
* - Bits 6 and 7 of the group info field of a key symbol map
|
||||
* specify the interpretation of out of range groups for the
|
||||
* corresponding key.
|
||||
*/
|
||||
#define XkbWrapIntoRange (0x00)
|
||||
#define XkbClampIntoRange (0x40)
|
||||
#define XkbRedirectIntoRange (0x80)
|
||||
|
||||
/*
|
||||
* Action flags: Reported in the 'flags' field of most key actions.
|
||||
* Interpretation depends on the type of the action; not all actions
|
||||
* accept all flags.
|
||||
*
|
||||
* Option Used for Actions
|
||||
* ------ ----------------
|
||||
* ClearLocks SetMods, LatchMods, SetGroup, LatchGroup
|
||||
* LatchToLock SetMods, LatchMods, SetGroup, LatchGroup
|
||||
* LockNoLock LockMods, ISOLock, LockPtrBtn, LockDeviceBtn
|
||||
* LockNoUnlock LockMods, ISOLock, LockPtrBtn, LockDeviceBtn
|
||||
* UseModMapMods SetMods, LatchMods, LockMods, ISOLock
|
||||
* GroupAbsolute SetGroup, LatchGroup, LockGroup, ISOLock
|
||||
* UseDfltButton PtrBtn, LockPtrBtn
|
||||
* NoAcceleration MovePtr
|
||||
* MoveAbsoluteX MovePtr
|
||||
* MoveAbsoluteY MovePtr
|
||||
* ISODfltIsGroup ISOLock
|
||||
* ISONoAffectMods ISOLock
|
||||
* ISONoAffectGroup ISOLock
|
||||
* ISONoAffectPtr ISOLock
|
||||
* ISONoAffectCtrls ISOLock
|
||||
* MessageOnPress ActionMessage
|
||||
* MessageOnRelease ActionMessage
|
||||
* MessageGenKeyEvent ActionMessage
|
||||
* AffectDfltBtn SetPtrDflt
|
||||
* DfltBtnAbsolute SetPtrDflt
|
||||
* SwitchApplication SwitchScreen
|
||||
* SwitchAbsolute SwitchScreen
|
||||
*/
|
||||
|
||||
#define XkbSA_ClearLocks (1L << 0)
|
||||
#define XkbSA_LatchToLock (1L << 1)
|
||||
|
||||
#define XkbSA_LockNoLock (1L << 0)
|
||||
#define XkbSA_LockNoUnlock (1L << 1)
|
||||
|
||||
#define XkbSA_UseModMapMods (1L << 2)
|
||||
|
||||
#define XkbSA_GroupAbsolute (1L << 2)
|
||||
#define XkbSA_UseDfltButton 0
|
||||
|
||||
#define XkbSA_NoAcceleration (1L << 0)
|
||||
#define XkbSA_MoveAbsoluteX (1L << 1)
|
||||
#define XkbSA_MoveAbsoluteY (1L << 2)
|
||||
|
||||
#define XkbSA_ISODfltIsGroup (1L << 7)
|
||||
#define XkbSA_ISONoAffectMods (1L << 6)
|
||||
#define XkbSA_ISONoAffectGroup (1L << 5)
|
||||
#define XkbSA_ISONoAffectPtr (1L << 4)
|
||||
#define XkbSA_ISONoAffectCtrls (1L << 3)
|
||||
#define XkbSA_ISOAffectMask (0x78)
|
||||
|
||||
#define XkbSA_MessageOnPress (1L << 0)
|
||||
#define XkbSA_MessageOnRelease (1L << 1)
|
||||
#define XkbSA_MessageGenKeyEvent (1L << 2)
|
||||
|
||||
#define XkbSA_AffectDfltBtn 1
|
||||
#define XkbSA_DfltBtnAbsolute (1L << 2)
|
||||
|
||||
#define XkbSA_SwitchApplication (1L << 0)
|
||||
#define XkbSA_SwitchAbsolute (1L << 2)
|
||||
|
||||
/*
|
||||
* The following values apply to the SA_DeviceValuator
|
||||
* action only. Valuator operations specify the action
|
||||
* to be taken. Values specified in the action are
|
||||
* multiplied by 2^scale before they are applied.
|
||||
*/
|
||||
#define XkbSA_IgnoreVal (0x00)
|
||||
#define XkbSA_SetValMin (0x10)
|
||||
#define XkbSA_SetValCenter (0x20)
|
||||
#define XkbSA_SetValMax (0x30)
|
||||
#define XkbSA_SetValRelative (0x40)
|
||||
#define XkbSA_SetValAbsolute (0x50)
|
||||
#define XkbSA_ValOpMask (0x70)
|
||||
#define XkbSA_ValScaleMask (0x07)
|
||||
#define XkbSA_ValOp(a) ((a)&XkbSA_ValOpMask)
|
||||
#define XkbSA_ValScale(a) ((a)&XkbSA_ValScaleMask)
|
||||
|
||||
/*
|
||||
* Action types: specifies the type of a key action. Reported in the
|
||||
* type field of all key actions.
|
||||
*/
|
||||
#define XkbSA_NoAction 0x00
|
||||
#define XkbSA_SetMods 0x01
|
||||
#define XkbSA_LatchMods 0x02
|
||||
#define XkbSA_LockMods 0x03
|
||||
#define XkbSA_SetGroup 0x04
|
||||
#define XkbSA_LatchGroup 0x05
|
||||
#define XkbSA_LockGroup 0x06
|
||||
#define XkbSA_MovePtr 0x07
|
||||
#define XkbSA_PtrBtn 0x08
|
||||
#define XkbSA_LockPtrBtn 0x09
|
||||
#define XkbSA_SetPtrDflt 0x0a
|
||||
#define XkbSA_ISOLock 0x0b
|
||||
#define XkbSA_Terminate 0x0c
|
||||
#define XkbSA_SwitchScreen 0x0d
|
||||
#define XkbSA_SetControls 0x0e
|
||||
#define XkbSA_LockControls 0x0f
|
||||
#define XkbSA_ActionMessage 0x10
|
||||
#define XkbSA_RedirectKey 0x11
|
||||
#define XkbSA_DeviceBtn 0x12
|
||||
#define XkbSA_LockDeviceBtn 0x13
|
||||
#define XkbSA_DeviceValuator 0x14
|
||||
#define XkbSA_LastAction XkbSA_DeviceValuator
|
||||
#define XkbSA_NumActions (XkbSA_LastAction+1)
|
||||
|
||||
#if defined(XF86DDXACTIONS) || defined(XFree86Server)
|
||||
#define XkbSA_XFree86Private 0x86
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Specifies the key actions that clear latched groups or modifiers.
|
||||
*/
|
||||
#define XkbSA_BreakLatch \
|
||||
((1<<XkbSA_NoAction)|(1<<XkbSA_PtrBtn)|(1<<XkbSA_LockPtrBtn)|\
|
||||
(1<<XkbSA_Terminate)|(1<<XkbSA_SwitchScreen)|(1<<XkbSA_SetControls)|\
|
||||
(1<<XkbSA_LockControls)|(1<<XkbSA_ActionMessage)|\
|
||||
(1<<XkbSA_RedirectKey)|(1<<XkbSA_DeviceBtn)|(1<<XkbSA_LockDeviceBtn))
|
||||
|
||||
/*
|
||||
* Macros to classify key actions
|
||||
*/
|
||||
#define XkbIsModAction(a) (((a)->type>=Xkb_SASetMods)&&((a)->type<=XkbSA_LockMods))
|
||||
#define XkbIsGroupAction(a) (((a)->type>=XkbSA_SetGroup)&&((a)->type<=XkbSA_LockGroup))
|
||||
#define XkbIsPtrAction(a) (((a)->type>=XkbSA_MovePtr)&&((a)->type<=XkbSA_SetPtrDflt))
|
||||
|
||||
|
||||
/*
|
||||
* Key Behavior Qualifier:
|
||||
* KB_Permanent indicates that the behavior describes an unalterable
|
||||
* characteristic of the keyboard, not an XKB software-simulation of
|
||||
* the listed behavior.
|
||||
* Key Behavior Types:
|
||||
* Specifies the behavior of the underlying key.
|
||||
*/
|
||||
#define XkbKB_Permanent 0x80
|
||||
#define XkbKB_OpMask 0x7f
|
||||
|
||||
#define XkbKB_Default 0x00
|
||||
#define XkbKB_Lock 0x01
|
||||
#define XkbKB_RadioGroup 0x02
|
||||
#define XkbKB_Overlay1 0x03
|
||||
#define XkbKB_Overlay2 0x04
|
||||
|
||||
#define XkbKB_RGAllowNone 0x80
|
||||
|
||||
/*
|
||||
* Various macros which describe the range of legal keycodes.
|
||||
*/
|
||||
#define XkbMinLegalKeyCode 8
|
||||
#define XkbMaxLegalKeyCode 255
|
||||
#define XkbMaxKeyCount (XkbMaxLegalKeyCode-XkbMinLegalKeyCode+1)
|
||||
#define XkbPerKeyBitArraySize ((XkbMaxLegalKeyCode+1)/8)
|
||||
/* Seems kinda silly to check that an unsigned char is <= 255... */
|
||||
#define XkbIsLegalKeycode(k) ((k)>=XkbMinLegalKeyCode)
|
||||
|
||||
/*
|
||||
* Assorted constants and limits.
|
||||
*/
|
||||
#define XkbNumModifiers 8
|
||||
#define XkbNumVirtualMods 16
|
||||
#define XkbNumIndicators 32
|
||||
#define XkbAllIndicatorsMask (0xffffffff)
|
||||
#define XkbMaxRadioGroups 32
|
||||
#define XkbAllRadioGroupsMask (0xffffffff)
|
||||
#define XkbMaxShiftLevel 63
|
||||
#define XkbMaxSymsPerKey (XkbMaxShiftLevel*XkbNumKbdGroups)
|
||||
#define XkbRGMaxMembers 12
|
||||
#define XkbActionMessageLength 6
|
||||
#define XkbKeyNameLength 4
|
||||
#define XkbMaxRedirectCount 8
|
||||
|
||||
#define XkbGeomPtsPerMM 10
|
||||
#define XkbGeomMaxColors 32
|
||||
#define XkbGeomMaxLabelColors 3
|
||||
#define XkbGeomMaxPriority 255
|
||||
|
||||
/*
|
||||
* Key Type index and mask for the four standard key types.
|
||||
*/
|
||||
#define XkbOneLevelIndex 0
|
||||
#define XkbTwoLevelIndex 1
|
||||
#define XkbAlphabeticIndex 2
|
||||
#define XkbKeypadIndex 3
|
||||
#define XkbLastRequiredType XkbKeypadIndex
|
||||
#define XkbNumRequiredTypes (XkbLastRequiredType+1)
|
||||
#define XkbMaxKeyTypes 255
|
||||
|
||||
#define XkbOneLevelMask (1<<0)
|
||||
#define XkbTwoLevelMask (1<<1)
|
||||
#define XkbAlphabeticMask (1<<2)
|
||||
#define XkbKeypadMask (1<<3)
|
||||
#define XkbAllRequiredTypes (0xf)
|
||||
|
||||
#define XkbShiftLevel(n) ((n)-1)
|
||||
#define XkbShiftLevelMask(n) (1<<((n)-1))
|
||||
|
||||
/*
|
||||
* Extension name and version information
|
||||
*/
|
||||
#define XkbName "XKEYBOARD"
|
||||
#define XkbMajorVersion 1
|
||||
#define XkbMinorVersion 0
|
||||
|
||||
/*
|
||||
* Explicit map components:
|
||||
* - Used in the 'explicit' field of an XkbServerMap. Specifies
|
||||
* the keyboard components that should _not_ be updated automatically
|
||||
* in response to core protocol keyboard mapping requests.
|
||||
*/
|
||||
#define XkbExplicitKeyTypesMask (0x0f)
|
||||
#define XkbExplicitKeyType1Mask (1<<0)
|
||||
#define XkbExplicitKeyType2Mask (1<<1)
|
||||
#define XkbExplicitKeyType3Mask (1<<2)
|
||||
#define XkbExplicitKeyType4Mask (1<<3)
|
||||
#define XkbExplicitInterpretMask (1<<4)
|
||||
#define XkbExplicitAutoRepeatMask (1<<5)
|
||||
#define XkbExplicitBehaviorMask (1<<6)
|
||||
#define XkbExplicitVModMapMask (1<<7)
|
||||
#define XkbAllExplicitMask (0xff)
|
||||
|
||||
/*
|
||||
* Map components masks:
|
||||
* Those in AllMapComponentsMask:
|
||||
* - Specifies the individual fields to be loaded or changed for the
|
||||
* GetMap and SetMap requests.
|
||||
* Those in ClientInfoMask:
|
||||
* - Specifies the components to be allocated by XkbAllocClientMap.
|
||||
* Those in ServerInfoMask:
|
||||
* - Specifies the components to be allocated by XkbAllocServerMap.
|
||||
*/
|
||||
#define XkbKeyTypesMask (1<<0)
|
||||
#define XkbKeySymsMask (1<<1)
|
||||
#define XkbModifierMapMask (1<<2)
|
||||
#define XkbExplicitComponentsMask (1<<3)
|
||||
#define XkbKeyActionsMask (1<<4)
|
||||
#define XkbKeyBehaviorsMask (1<<5)
|
||||
#define XkbVirtualModsMask (1<<6)
|
||||
#define XkbVirtualModMapMask (1<<7)
|
||||
|
||||
#define XkbAllClientInfoMask (XkbKeyTypesMask|XkbKeySymsMask|XkbModifierMapMask)
|
||||
#define XkbAllServerInfoMask (XkbExplicitComponentsMask|XkbKeyActionsMask|XkbKeyBehaviorsMask|XkbVirtualModsMask|XkbVirtualModMapMask)
|
||||
#define XkbAllMapComponentsMask (XkbAllClientInfoMask|XkbAllServerInfoMask)
|
||||
|
||||
/*
|
||||
* Symbol interpretations flags:
|
||||
* - Used in the flags field of a symbol interpretation
|
||||
*/
|
||||
#define XkbSI_AutoRepeat (1<<0)
|
||||
#define XkbSI_LockingKey (1<<1)
|
||||
|
||||
/*
|
||||
* Symbol interpretations match specification:
|
||||
* - Used in the match field of a symbol interpretation to specify
|
||||
* the conditions under which an interpretation is used.
|
||||
*/
|
||||
#define XkbSI_LevelOneOnly (0x80)
|
||||
#define XkbSI_OpMask (0x7f)
|
||||
#define XkbSI_NoneOf (0)
|
||||
#define XkbSI_AnyOfOrNone (1)
|
||||
#define XkbSI_AnyOf (2)
|
||||
#define XkbSI_AllOf (3)
|
||||
#define XkbSI_Exactly (4)
|
||||
|
||||
/*
|
||||
* Indicator map flags:
|
||||
* - Used in the flags field of an indicator map to indicate the
|
||||
* conditions under which and indicator can be changed and the
|
||||
* effects of changing the indicator.
|
||||
*/
|
||||
#define XkbIM_NoExplicit (1L << 7)
|
||||
#define XkbIM_NoAutomatic (1L << 6)
|
||||
#define XkbIM_LEDDrivesKB (1L << 5)
|
||||
|
||||
/*
|
||||
* Indicator map component specifications:
|
||||
* - Used by the 'which_groups' and 'which_mods' fields of an indicator
|
||||
* map to specify which keyboard components should be used to drive
|
||||
* the indicator.
|
||||
*/
|
||||
#define XkbIM_UseBase (1L << 0)
|
||||
#define XkbIM_UseLatched (1L << 1)
|
||||
#define XkbIM_UseLocked (1L << 2)
|
||||
#define XkbIM_UseEffective (1L << 3)
|
||||
#define XkbIM_UseCompat (1L << 4)
|
||||
|
||||
#define XkbIM_UseNone 0
|
||||
#define XkbIM_UseAnyGroup (XkbIM_UseBase|XkbIM_UseLatched|XkbIM_UseLocked\
|
||||
|XkbIM_UseEffective)
|
||||
#define XkbIM_UseAnyMods (XkbIM_UseAnyGroup|XkbIM_UseCompat)
|
||||
|
||||
/*
|
||||
* Compatibility Map Compontents:
|
||||
* - Specifies the components to be allocated in XkbAllocCompatMap.
|
||||
*/
|
||||
#define XkbSymInterpMask (1<<0)
|
||||
#define XkbGroupCompatMask (1<<1)
|
||||
#define XkbAllCompatMask (0x3)
|
||||
|
||||
/*
|
||||
* Names component mask:
|
||||
* - Specifies the names to be loaded or changed for the GetNames and
|
||||
* SetNames requests.
|
||||
* - Specifies the names that have changed in a NamesNotify event.
|
||||
* - Specifies the names components to be allocated by XkbAllocNames.
|
||||
*/
|
||||
#define XkbKeycodesNameMask (1<<0)
|
||||
#define XkbGeometryNameMask (1<<1)
|
||||
#define XkbSymbolsNameMask (1<<2)
|
||||
#define XkbPhysSymbolsNameMask (1<<3)
|
||||
#define XkbTypesNameMask (1<<4)
|
||||
#define XkbCompatNameMask (1<<5)
|
||||
#define XkbKeyTypeNamesMask (1<<6)
|
||||
#define XkbKTLevelNamesMask (1<<7)
|
||||
#define XkbIndicatorNamesMask (1<<8)
|
||||
#define XkbKeyNamesMask (1<<9)
|
||||
#define XkbKeyAliasesMask (1<<10)
|
||||
#define XkbVirtualModNamesMask (1<<11)
|
||||
#define XkbGroupNamesMask (1<<12)
|
||||
#define XkbRGNamesMask (1<<13)
|
||||
#define XkbComponentNamesMask (0x3f)
|
||||
#define XkbAllNamesMask (0x3fff)
|
||||
|
||||
/*
|
||||
* GetByName components:
|
||||
* - Specifies desired or necessary components to GetKbdByName request.
|
||||
* - Reports the components that were found in a GetKbdByNameReply
|
||||
*/
|
||||
#define XkbGBN_TypesMask (1L << 0)
|
||||
#define XkbGBN_CompatMapMask (1L << 1)
|
||||
#define XkbGBN_ClientSymbolsMask (1L << 2)
|
||||
#define XkbGBN_ServerSymbolsMask (1L << 3)
|
||||
#define XkbGBN_SymbolsMask (XkbGBN_ClientSymbolsMask|XkbGBN_ServerSymbolsMask)
|
||||
#define XkbGBN_IndicatorMapMask (1L << 4)
|
||||
#define XkbGBN_KeyNamesMask (1L << 5)
|
||||
#define XkbGBN_GeometryMask (1L << 6)
|
||||
#define XkbGBN_OtherNamesMask (1L << 7)
|
||||
#define XkbGBN_AllComponentsMask (0xff)
|
||||
|
||||
/*
|
||||
* ListComponents flags
|
||||
*/
|
||||
#define XkbLC_Hidden (1L << 0)
|
||||
#define XkbLC_Default (1L << 1)
|
||||
#define XkbLC_Partial (1L << 2)
|
||||
|
||||
#define XkbLC_AlphanumericKeys (1L << 8)
|
||||
#define XkbLC_ModifierKeys (1L << 9)
|
||||
#define XkbLC_KeypadKeys (1L << 10)
|
||||
#define XkbLC_FunctionKeys (1L << 11)
|
||||
#define XkbLC_AlternateGroup (1L << 12)
|
||||
|
||||
/*
|
||||
* X Input Extension Interactions
|
||||
* - Specifies the possible interactions between XKB and the X input
|
||||
* extension
|
||||
* - Used to request (XkbGetDeviceInfo) or change (XKbSetDeviceInfo)
|
||||
* XKB information about an extension device.
|
||||
* - Reports the list of supported optional features in the reply to
|
||||
* XkbGetDeviceInfo or in an XkbExtensionDeviceNotify event.
|
||||
* XkbXI_UnsupportedFeature is reported in XkbExtensionDeviceNotify
|
||||
* events to indicate an attempt to use an unsupported feature.
|
||||
*/
|
||||
#define XkbXI_KeyboardsMask (1L << 0)
|
||||
#define XkbXI_ButtonActionsMask (1L << 1)
|
||||
#define XkbXI_IndicatorNamesMask (1L << 2)
|
||||
#define XkbXI_IndicatorMapsMask (1L << 3)
|
||||
#define XkbXI_IndicatorStateMask (1L << 4)
|
||||
#define XkbXI_UnsupportedFeatureMask (1L << 15)
|
||||
#define XkbXI_AllFeaturesMask (0x001f)
|
||||
#define XkbXI_AllDeviceFeaturesMask (0x001e)
|
||||
|
||||
#define XkbXI_IndicatorsMask (0x001c)
|
||||
#define XkbAllExtensionDeviceEventsMask (0x801f)
|
||||
|
||||
/*
|
||||
* Per-Client Flags:
|
||||
* - Specifies flags to be changed by the PerClientFlags request.
|
||||
*/
|
||||
#define XkbPCF_DetectableAutoRepeatMask (1L << 0)
|
||||
#define XkbPCF_GrabsUseXKBStateMask (1L << 1)
|
||||
#define XkbPCF_AutoResetControlsMask (1L << 2)
|
||||
#define XkbPCF_LookupStateWhenGrabbed (1L << 3)
|
||||
#define XkbPCF_SendEventUsesXKBState (1L << 4)
|
||||
#define XkbPCF_AllFlagsMask (0x1F)
|
||||
|
||||
/*
|
||||
* Debugging flags and controls
|
||||
*/
|
||||
#define XkbDF_DisableLocks (1<<0)
|
||||
|
||||
#endif /* _XKB_H_ */
|
||||
278
nx-X11/include/extensions/XKBconfig.h
Normal file
278
nx-X11/include/extensions/XKBconfig.h
Normal file
@@ -0,0 +1,278 @@
|
||||
#ifndef _XKBCONFIG_H_
|
||||
#define _XKBCONFIG_H_ 1
|
||||
|
||||
/************************************************************
|
||||
Copyright (c) 1995 by Silicon Graphics Computer Systems, Inc.
|
||||
|
||||
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 Silicon Graphics not be
|
||||
used in advertising or publicity pertaining to distribution
|
||||
of the software without specific prior written permission.
|
||||
Silicon Graphics makes no representation about the suitability
|
||||
of this software for any purpose. It is provided "as is"
|
||||
without any express or implied warranty.
|
||||
|
||||
SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
|
||||
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
|
||||
GRAPHICS 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.
|
||||
|
||||
********************************************************/
|
||||
|
||||
|
||||
typedef struct _XkbConfigRtrn *XkbConfigRtrnPtr;
|
||||
typedef struct _XkbConfigField *XkbConfigFieldPtr;
|
||||
typedef struct _XkbConfigFields *XkbConfigFieldsPtr;
|
||||
|
||||
typedef Bool (*XkbConfigParseFunc)(
|
||||
FILE * /* file */,
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XkbConfigFieldPtr /* field */,
|
||||
XkbDescPtr /* xkb */,
|
||||
XkbConfigRtrnPtr /* rtrn */
|
||||
);
|
||||
|
||||
#define XkbCF_Check 0
|
||||
#define XkbCF_Apply 1
|
||||
#define XkbCF_CleanUp 2
|
||||
#define XkbCF_Destroy 3
|
||||
|
||||
typedef Bool (*XkbConfigFinishFunc)(
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XkbDescPtr /* xkb */,
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
int /* what */
|
||||
);
|
||||
|
||||
typedef struct _XkbConfigRtrnPriv {
|
||||
int cfg_id;
|
||||
XPointer priv;
|
||||
struct _XkbConfigRtrnPriv * next;
|
||||
} XkbConfigRtrnPrivRec,*XkbConfigRtrnPrivPtr;
|
||||
|
||||
typedef struct _XkbConfigModInfo {
|
||||
Bool replace;
|
||||
unsigned char mods;
|
||||
unsigned char mods_clear;
|
||||
unsigned short vmods;
|
||||
unsigned short vmods_clear;
|
||||
} XkbConfigModInfoRec,*XkbConfigModInfoPtr;
|
||||
|
||||
typedef struct _XkbConfigUnboundMod {
|
||||
unsigned char what;
|
||||
unsigned char mods;
|
||||
unsigned short vmods;
|
||||
short merge;
|
||||
char * name;
|
||||
} XkbConfigUnboundModRec,*XkbConfigUnboundModPtr;
|
||||
|
||||
#define XkbCF_MergeSet 0
|
||||
#define XkbCF_MergeAdd 1
|
||||
#define XkbCF_MergeRemove 2
|
||||
|
||||
#define XkbCF_InitialMods (1L<<0)
|
||||
#define XkbCF_InternalMods (1L<<1)
|
||||
#define XkbCF_IgnoreLockMods (1L<<2)
|
||||
#define XkbCF_InitialCtrls (1L<<3)
|
||||
#define XkbCF_AccessXTimeout (1L<<4)
|
||||
#define XkbCF_AccessXTimeoutCtrlsOn (1L<<5)
|
||||
#define XkbCF_AccessXTimeoutCtrlsOff (1L<<6)
|
||||
#define XkbCF_AccessXTimeoutOptsOn (1L<<7)
|
||||
#define XkbCF_AccessXTimeoutOptsOff (1L<<8)
|
||||
#define XkbCF_GroupsWrap (1L<<9)
|
||||
#define XkbCF_InitialOpts (1L<<10)
|
||||
|
||||
typedef struct _XkbConfigRtrn {
|
||||
unsigned defined;
|
||||
int error;
|
||||
int line;
|
||||
|
||||
int click_volume;
|
||||
int bell_volume;
|
||||
int bell_pitch;
|
||||
int bell_duration;
|
||||
int repeat_delay;
|
||||
int repeat_interval;
|
||||
|
||||
char * rules_file;
|
||||
char * model;
|
||||
char * layout;
|
||||
char * variant;
|
||||
char * options;
|
||||
|
||||
char * keymap;
|
||||
char * keycodes;
|
||||
char * geometry;
|
||||
char * phys_symbols;
|
||||
char * symbols;
|
||||
char * types;
|
||||
char * compat;
|
||||
|
||||
Bool replace_initial_ctrls;
|
||||
unsigned long initial_ctrls;
|
||||
unsigned long initial_ctrls_clear;
|
||||
|
||||
Bool replace_initial_opts;
|
||||
unsigned short initial_opts;
|
||||
unsigned short initial_opts_clear;
|
||||
|
||||
XkbConfigModInfoRec initial_mods;
|
||||
XkbConfigModInfoRec internal_mods;
|
||||
XkbConfigModInfoRec ignore_lock_mods;
|
||||
|
||||
short num_unbound_mods;
|
||||
short sz_unbound_mods;
|
||||
XkbConfigUnboundModPtr unbound_mods;
|
||||
|
||||
int groups_wrap;
|
||||
int slow_keys_delay;
|
||||
int debounce_delay;
|
||||
int mk_delay;
|
||||
int mk_interval;
|
||||
int mk_time_to_max;
|
||||
int mk_max_speed;
|
||||
int mk_curve;
|
||||
int ax_timeout;
|
||||
|
||||
Bool replace_axt_ctrls_on;
|
||||
Bool replace_axt_ctrls_off;
|
||||
unsigned long axt_ctrls_on;
|
||||
unsigned long axt_ctrls_off;
|
||||
unsigned long axt_ctrls_ignore;
|
||||
|
||||
Bool replace_axt_opts_off;
|
||||
Bool replace_axt_opts_on;
|
||||
unsigned short axt_opts_off;
|
||||
unsigned short axt_opts_on;
|
||||
unsigned short axt_opts_ignore;
|
||||
XkbConfigRtrnPrivPtr priv;
|
||||
} XkbConfigRtrnRec;
|
||||
|
||||
typedef struct _XkbConfigField {
|
||||
char * field;
|
||||
unsigned char field_id;
|
||||
} XkbConfigFieldRec;
|
||||
|
||||
typedef struct _XkbConfigFields {
|
||||
unsigned short cfg_id;
|
||||
unsigned short num_fields;
|
||||
XkbConfigFieldPtr fields;
|
||||
XkbConfigParseFunc parser;
|
||||
XkbConfigFinishFunc finish;
|
||||
XPointer priv;
|
||||
struct _XkbConfigFields *next;
|
||||
} XkbConfigFieldsRec;
|
||||
|
||||
#define XkbCF_EOF -1
|
||||
#define XkbCF_Unknown 0
|
||||
#define XkbCF_EOL 1
|
||||
#define XkbCF_Semi 2
|
||||
#define XkbCF_Equals 3
|
||||
#define XkbCF_PlusEquals 4
|
||||
#define XkbCF_MinusEquals 5
|
||||
#define XkbCF_Plus 6
|
||||
#define XkbCF_Minus 7
|
||||
#define XkbCF_String 10
|
||||
#define XkbCF_Ident 11
|
||||
#define XkbCF_Integer 12
|
||||
|
||||
#define XkbCF_UnterminatedString 100
|
||||
#define XkbCF_BadAlloc 101
|
||||
#define XkbCF_MissingIdent 102
|
||||
#define XkbCF_MissingEquals 103
|
||||
#define XkbCF_ExpectedEOS 104
|
||||
#define XkbCF_ExpectedBoolean 105
|
||||
#define XkbCF_ExpectedInteger 106
|
||||
#define XkbCF_ExpectedString 107
|
||||
#define XkbCF_ExpectedModifier 108
|
||||
#define XkbCF_ExpectedControl 109
|
||||
#define XkbCF_ExpectedAXOption 110
|
||||
#define XkbCF_ExpectedOperator 111
|
||||
#define XkbCF_ExpectedOORGroupBehavior 112
|
||||
|
||||
typedef union {
|
||||
int ival;
|
||||
char * str;
|
||||
} XkbCFScanResultRec,*XkbCFScanResultPtr;
|
||||
|
||||
extern XkbConfigFieldsPtr XkbCFDflts;
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
extern int XkbCFScan(
|
||||
FILE * /* file */,
|
||||
XkbCFScanResultPtr /* val_rtrn */,
|
||||
XkbConfigRtrnPtr /* rtrn */
|
||||
);
|
||||
|
||||
extern XkbConfigFieldsPtr XkbCFDup(
|
||||
XkbConfigFieldsPtr /* fields */
|
||||
);
|
||||
|
||||
extern XkbConfigFieldsPtr XkbCFFree(
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
Bool /* all */
|
||||
);
|
||||
|
||||
extern XkbConfigUnboundModPtr XkbCFAddModByName(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
int /* what */,
|
||||
char * /* name */,
|
||||
Bool /* merge */,
|
||||
XkbConfigUnboundModPtr /* last */
|
||||
);
|
||||
|
||||
extern Bool XkbCFBindMods(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
XkbDescPtr /* xkb */
|
||||
);
|
||||
|
||||
extern Bool XkbCFApplyMods(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
int /* what */,
|
||||
XkbConfigModInfoPtr /* info */
|
||||
);
|
||||
|
||||
extern Bool XkbCFApplyRtrnValues(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XkbDescPtr /* xkb */
|
||||
);
|
||||
|
||||
extern XkbConfigRtrnPrivPtr XkbCFAddPrivate(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XPointer /* ptr */
|
||||
);
|
||||
|
||||
extern void XkbCFFreeRtrn(
|
||||
XkbConfigRtrnPtr /* rtrn */,
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XkbDescPtr /* xkb */
|
||||
);
|
||||
|
||||
extern Bool XkbCFParse(
|
||||
FILE * /* file */,
|
||||
XkbConfigFieldsPtr /* fields */,
|
||||
XkbDescPtr /* xkb */,
|
||||
XkbConfigRtrnPtr /* rtrn */
|
||||
);
|
||||
|
||||
extern void XkbCFReportError(
|
||||
FILE * /* file */,
|
||||
char * /* name */,
|
||||
int /* error */,
|
||||
int /* line */
|
||||
);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif /* _XKBCONFIG_H_ */
|
||||
657
nx-X11/include/extensions/XKBgeom.h
Normal file
657
nx-X11/include/extensions/XKBgeom.h
Normal file
@@ -0,0 +1,657 @@
|
||||
/************************************************************
|
||||
Copyright (c) 1993 by Silicon Graphics Computer Systems, Inc.
|
||||
|
||||
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 Silicon Graphics not be
|
||||
used in advertising or publicity pertaining to distribution
|
||||
of the software without specific prior written permission.
|
||||
Silicon Graphics makes no representation about the suitability
|
||||
of this software for any purpose. It is provided "as is"
|
||||
without any express or implied warranty.
|
||||
|
||||
SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
|
||||
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
|
||||
GRAPHICS 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 _XKBGEOM_H_
|
||||
#define _XKBGEOM_H_
|
||||
|
||||
#include <nx-X11/extensions/XKBstr.h>
|
||||
|
||||
#ifdef XKB_IN_SERVER
|
||||
#define XkbAddGeomKeyAlias SrvXkbAddGeomKeyAlias
|
||||
#define XkbAddGeomColor SrvXkbAddGeomColor
|
||||
#define XkbAddGeomDoodad SrvXkbAddGeomDoodad
|
||||
#define XkbAddGeomKey SrvXkbAddGeomKey
|
||||
#define XkbAddGeomOutline SrvXkbAddGeomOutline
|
||||
#define XkbAddGeomOverlay SrvXkbAddGeomOverlay
|
||||
#define XkbAddGeomOverlayRow SrvXkbAddGeomOverlayRow
|
||||
#define XkbAddGeomOverlayKey SrvXkbAddGeomOverlayKey
|
||||
#define XkbAddGeomProperty SrvXkbAddGeomProperty
|
||||
#define XkbAddGeomRow SrvXkbAddGeomRow
|
||||
#define XkbAddGeomSection SrvXkbAddGeomSection
|
||||
#define XkbAddGeomShape SrvXkbAddGeomShape
|
||||
#define XkbAllocGeomKeyAliases SrvXkbAllocGeomKeyAliases
|
||||
#define XkbAllocGeomColors SrvXkbAllocGeomColors
|
||||
#define XkbAllocGeomDoodads SrvXkbAllocGeomDoodads
|
||||
#define XkbAllocGeomKeys SrvXkbAllocGeomKeys
|
||||
#define XkbAllocGeomOutlines SrvXkbAllocGeomOutlines
|
||||
#define XkbAllocGeomPoints SrvXkbAllocGeomPoints
|
||||
#define XkbAllocGeomProps SrvXkbAllocGeomProps
|
||||
#define XkbAllocGeomRows SrvXkbAllocGeomRows
|
||||
#define XkbAllocGeomSectionDoodads SrvXkbAllocGeomSectionDoodads
|
||||
#define XkbAllocGeomSections SrvXkbAllocGeomSections
|
||||
#define XkbAllocGeomOverlays SrvXkbAllocGeomOverlays
|
||||
#define XkbAllocGeomOverlayRows SrvXkbAllocGeomOverlayRows
|
||||
#define XkbAllocGeomOverlayKeys SrvXkbAllocGeomOverlayKeys
|
||||
#define XkbAllocGeomShapes SrvXkbAllocGeomShapes
|
||||
#define XkbAllocGeometry SrvXkbAllocGeometry
|
||||
#define XkbFreeGeomKeyAliases SrvXkbFreeGeomKeyAliases
|
||||
#define XkbFreeGeomColors SrvXkbFreeGeomColors
|
||||
#define XkbFreeGeomDoodads SrvXkbFreeGeomDoodads
|
||||
#define XkbFreeGeomProperties SrvXkbFreeGeomProperties
|
||||
#define XkbFreeGeomOverlayKeys SrvXkbFreeGeomOverlayKeys
|
||||
#define XkbFreeGeomOverlayRows SrvXkbFreeGeomOverlayRows
|
||||
#define XkbFreeGeomOverlays SrvXkbFreeGeomOverlays
|
||||
#define XkbFreeGeomKeys SrvXkbFreeGeomKeys
|
||||
#define XkbFreeGeomRows SrvXkbFreeGeomRows
|
||||
#define XkbFreeGeomSections SrvXkbFreeGeomSections
|
||||
#define XkbFreeGeomPoints SrvXkbFreeGeomPoints
|
||||
#define XkbFreeGeomOutlines SrvXkbFreeGeomOutlines
|
||||
#define XkbFreeGeomShapes SrvXkbFreeGeomShapes
|
||||
#define XkbFreeGeometry SrvXkbFreeGeometry
|
||||
#endif
|
||||
|
||||
typedef struct _XkbProperty {
|
||||
char *name;
|
||||
char *value;
|
||||
} XkbPropertyRec,*XkbPropertyPtr;
|
||||
|
||||
typedef struct _XkbColor {
|
||||
unsigned int pixel;
|
||||
char * spec;
|
||||
} XkbColorRec,*XkbColorPtr;
|
||||
|
||||
typedef struct _XkbPoint {
|
||||
short x;
|
||||
short y;
|
||||
} XkbPointRec, *XkbPointPtr;
|
||||
|
||||
typedef struct _XkbBounds {
|
||||
short x1,y1;
|
||||
short x2,y2;
|
||||
} XkbBoundsRec, *XkbBoundsPtr;
|
||||
#define XkbBoundsWidth(b) (((b)->x2)-((b)->x1))
|
||||
#define XkbBoundsHeight(b) (((b)->y2)-((b)->y1))
|
||||
|
||||
typedef struct _XkbOutline {
|
||||
unsigned short num_points;
|
||||
unsigned short sz_points;
|
||||
unsigned short corner_radius;
|
||||
XkbPointPtr points;
|
||||
} XkbOutlineRec, *XkbOutlinePtr;
|
||||
|
||||
typedef struct _XkbShape {
|
||||
Atom name;
|
||||
unsigned short num_outlines;
|
||||
unsigned short sz_outlines;
|
||||
XkbOutlinePtr outlines;
|
||||
XkbOutlinePtr approx;
|
||||
XkbOutlinePtr primary;
|
||||
XkbBoundsRec bounds;
|
||||
} XkbShapeRec, *XkbShapePtr;
|
||||
#define XkbOutlineIndex(s,o) ((int)((o)-&(s)->outlines[0]))
|
||||
|
||||
typedef struct _XkbShapeDoodad {
|
||||
Atom name;
|
||||
unsigned char type;
|
||||
unsigned char priority;
|
||||
short top;
|
||||
short left;
|
||||
short angle;
|
||||
unsigned short color_ndx;
|
||||
unsigned short shape_ndx;
|
||||
} XkbShapeDoodadRec, *XkbShapeDoodadPtr;
|
||||
#define XkbShapeDoodadColor(g,d) (&(g)->colors[(d)->color_ndx])
|
||||
#define XkbShapeDoodadShape(g,d) (&(g)->shapes[(d)->shape_ndx])
|
||||
#define XkbSetShapeDoodadColor(g,d,c) ((d)->color_ndx= (c)-&(g)->colors[0])
|
||||
#define XkbSetShapeDoodadShape(g,d,s) ((d)->shape_ndx= (s)-&(g)->shapes[0])
|
||||
|
||||
typedef struct _XkbTextDoodad {
|
||||
Atom name;
|
||||
unsigned char type;
|
||||
unsigned char priority;
|
||||
short top;
|
||||
short left;
|
||||
short angle;
|
||||
short width;
|
||||
short height;
|
||||
unsigned short color_ndx;
|
||||
char * text;
|
||||
char * font;
|
||||
} XkbTextDoodadRec, *XkbTextDoodadPtr;
|
||||
#define XkbTextDoodadColor(g,d) (&(g)->colors[(d)->color_ndx])
|
||||
#define XkbSetTextDoodadColor(g,d,c) ((d)->color_ndx= (c)-&(g)->colors[0])
|
||||
|
||||
typedef struct _XkbIndicatorDoodad {
|
||||
Atom name;
|
||||
unsigned char type;
|
||||
unsigned char priority;
|
||||
short top;
|
||||
short left;
|
||||
short angle;
|
||||
unsigned short shape_ndx;
|
||||
unsigned short on_color_ndx;
|
||||
unsigned short off_color_ndx;
|
||||
} XkbIndicatorDoodadRec, *XkbIndicatorDoodadPtr;
|
||||
#define XkbIndicatorDoodadShape(g,d) (&(g)->shapes[(d)->shape_ndx])
|
||||
#define XkbIndicatorDoodadOnColor(g,d) (&(g)->colors[(d)->on_color_ndx])
|
||||
#define XkbIndicatorDoodadOffColor(g,d) (&(g)->colors[(d)->off_color_ndx])
|
||||
#define XkbSetIndicatorDoodadOnColor(g,d,c) \
|
||||
((d)->on_color_ndx= (c)-&(g)->colors[0])
|
||||
#define XkbSetIndicatorDoodadOffColor(g,d,c) \
|
||||
((d)->off_color_ndx= (c)-&(g)->colors[0])
|
||||
#define XkbSetIndicatorDoodadShape(g,d,s) \
|
||||
((d)->shape_ndx= (s)-&(g)->shapes[0])
|
||||
|
||||
typedef struct _XkbLogoDoodad {
|
||||
Atom name;
|
||||
unsigned char type;
|
||||
unsigned char priority;
|
||||
short top;
|
||||
short left;
|
||||
short angle;
|
||||
unsigned short color_ndx;
|
||||
unsigned short shape_ndx;
|
||||
char * logo_name;
|
||||
} XkbLogoDoodadRec, *XkbLogoDoodadPtr;
|
||||
#define XkbLogoDoodadColor(g,d) (&(g)->colors[(d)->color_ndx])
|
||||
#define XkbLogoDoodadShape(g,d) (&(g)->shapes[(d)->shape_ndx])
|
||||
#define XkbSetLogoDoodadColor(g,d,c) ((d)->color_ndx= (c)-&(g)->colors[0])
|
||||
#define XkbSetLogoDoodadShape(g,d,s) ((d)->shape_ndx= (s)-&(g)->shapes[0])
|
||||
|
||||
typedef struct _XkbAnyDoodad {
|
||||
Atom name;
|
||||
unsigned char type;
|
||||
unsigned char priority;
|
||||
short top;
|
||||
short left;
|
||||
short angle;
|
||||
} XkbAnyDoodadRec, *XkbAnyDoodadPtr;
|
||||
|
||||
typedef union _XkbDoodad {
|
||||
XkbAnyDoodadRec any;
|
||||
XkbShapeDoodadRec shape;
|
||||
XkbTextDoodadRec text;
|
||||
XkbIndicatorDoodadRec indicator;
|
||||
XkbLogoDoodadRec logo;
|
||||
} XkbDoodadRec, *XkbDoodadPtr;
|
||||
|
||||
#define XkbUnknownDoodad 0
|
||||
#define XkbOutlineDoodad 1
|
||||
#define XkbSolidDoodad 2
|
||||
#define XkbTextDoodad 3
|
||||
#define XkbIndicatorDoodad 4
|
||||
#define XkbLogoDoodad 5
|
||||
|
||||
typedef struct _XkbKey {
|
||||
XkbKeyNameRec name;
|
||||
short gap;
|
||||
unsigned char shape_ndx;
|
||||
unsigned char color_ndx;
|
||||
} XkbKeyRec, *XkbKeyPtr;
|
||||
#define XkbKeyShape(g,k) (&(g)->shapes[(k)->shape_ndx])
|
||||
#define XkbKeyColor(g,k) (&(g)->colors[(k)->color_ndx])
|
||||
#define XkbSetKeyShape(g,k,s) ((k)->shape_ndx= (s)-&(g)->shapes[0])
|
||||
#define XkbSetKeyColor(g,k,c) ((k)->color_ndx= (c)-&(g)->colors[0])
|
||||
|
||||
typedef struct _XkbRow {
|
||||
short top;
|
||||
short left;
|
||||
unsigned short num_keys;
|
||||
unsigned short sz_keys;
|
||||
int vertical;
|
||||
XkbKeyPtr keys;
|
||||
XkbBoundsRec bounds;
|
||||
} XkbRowRec, *XkbRowPtr;
|
||||
|
||||
typedef struct _XkbSection {
|
||||
Atom name;
|
||||
unsigned char priority;
|
||||
short top;
|
||||
short left;
|
||||
unsigned short width;
|
||||
unsigned short height;
|
||||
short angle;
|
||||
unsigned short num_rows;
|
||||
unsigned short num_doodads;
|
||||
unsigned short num_overlays;
|
||||
unsigned short sz_rows;
|
||||
unsigned short sz_doodads;
|
||||
unsigned short sz_overlays;
|
||||
XkbRowPtr rows;
|
||||
XkbDoodadPtr doodads;
|
||||
XkbBoundsRec bounds;
|
||||
struct _XkbOverlay *overlays;
|
||||
} XkbSectionRec, *XkbSectionPtr;
|
||||
|
||||
typedef struct _XkbOverlayKey {
|
||||
XkbKeyNameRec over;
|
||||
XkbKeyNameRec under;
|
||||
} XkbOverlayKeyRec,*XkbOverlayKeyPtr;
|
||||
|
||||
typedef struct _XkbOverlayRow {
|
||||
unsigned short row_under;
|
||||
unsigned short num_keys;
|
||||
unsigned short sz_keys;
|
||||
XkbOverlayKeyPtr keys;
|
||||
} XkbOverlayRowRec,*XkbOverlayRowPtr;
|
||||
|
||||
typedef struct _XkbOverlay {
|
||||
Atom name;
|
||||
XkbSectionPtr section_under;
|
||||
unsigned short num_rows;
|
||||
unsigned short sz_rows;
|
||||
XkbOverlayRowPtr rows;
|
||||
XkbBoundsPtr bounds;
|
||||
} XkbOverlayRec,*XkbOverlayPtr;
|
||||
|
||||
typedef struct _XkbGeometry {
|
||||
Atom name;
|
||||
unsigned short width_mm;
|
||||
unsigned short height_mm;
|
||||
char * label_font;
|
||||
XkbColorPtr label_color;
|
||||
XkbColorPtr base_color;
|
||||
unsigned short sz_properties;
|
||||
unsigned short sz_colors;
|
||||
unsigned short sz_shapes;
|
||||
unsigned short sz_sections;
|
||||
unsigned short sz_doodads;
|
||||
unsigned short sz_key_aliases;
|
||||
unsigned short num_properties;
|
||||
unsigned short num_colors;
|
||||
unsigned short num_shapes;
|
||||
unsigned short num_sections;
|
||||
unsigned short num_doodads;
|
||||
unsigned short num_key_aliases;
|
||||
XkbPropertyPtr properties;
|
||||
XkbColorPtr colors;
|
||||
XkbShapePtr shapes;
|
||||
XkbSectionPtr sections;
|
||||
XkbDoodadPtr doodads;
|
||||
XkbKeyAliasPtr key_aliases;
|
||||
} XkbGeometryRec;
|
||||
#define XkbGeomColorIndex(g,c) ((int)((c)-&(g)->colors[0]))
|
||||
|
||||
#define XkbGeomPropertiesMask (1<<0)
|
||||
#define XkbGeomColorsMask (1<<1)
|
||||
#define XkbGeomShapesMask (1<<2)
|
||||
#define XkbGeomSectionsMask (1<<3)
|
||||
#define XkbGeomDoodadsMask (1<<4)
|
||||
#define XkbGeomKeyAliasesMask (1<<5)
|
||||
#define XkbGeomAllMask (0x3f)
|
||||
|
||||
typedef struct _XkbGeometrySizes {
|
||||
unsigned int which;
|
||||
unsigned short num_properties;
|
||||
unsigned short num_colors;
|
||||
unsigned short num_shapes;
|
||||
unsigned short num_sections;
|
||||
unsigned short num_doodads;
|
||||
unsigned short num_key_aliases;
|
||||
} XkbGeometrySizesRec,*XkbGeometrySizesPtr;
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
extern XkbPropertyPtr
|
||||
XkbAddGeomProperty(
|
||||
XkbGeometryPtr /* geom */,
|
||||
char * /* name */,
|
||||
char * /* value */
|
||||
);
|
||||
|
||||
extern XkbKeyAliasPtr
|
||||
XkbAddGeomKeyAlias(
|
||||
XkbGeometryPtr /* geom */,
|
||||
char * /* alias */,
|
||||
char * /* real */
|
||||
);
|
||||
|
||||
extern XkbColorPtr
|
||||
XkbAddGeomColor(
|
||||
XkbGeometryPtr /* geom */,
|
||||
char * /* spec */,
|
||||
unsigned int /* pixel */
|
||||
);
|
||||
|
||||
extern XkbOutlinePtr
|
||||
XkbAddGeomOutline(
|
||||
XkbShapePtr /* shape */,
|
||||
int /* sz_points */
|
||||
);
|
||||
|
||||
extern XkbShapePtr
|
||||
XkbAddGeomShape(
|
||||
XkbGeometryPtr /* geom */,
|
||||
Atom /* name */,
|
||||
int /* sz_outlines */
|
||||
);
|
||||
|
||||
extern XkbKeyPtr
|
||||
XkbAddGeomKey(
|
||||
XkbRowPtr /* row */
|
||||
);
|
||||
|
||||
extern XkbRowPtr
|
||||
XkbAddGeomRow(
|
||||
XkbSectionPtr /* section */,
|
||||
int /* sz_keys */
|
||||
);
|
||||
|
||||
extern XkbSectionPtr
|
||||
XkbAddGeomSection(
|
||||
XkbGeometryPtr /* geom */,
|
||||
Atom /* name */,
|
||||
int /* sz_rows */,
|
||||
int /* sz_doodads */,
|
||||
int /* sz_overlays */
|
||||
);
|
||||
|
||||
extern XkbOverlayPtr
|
||||
XkbAddGeomOverlay(
|
||||
XkbSectionPtr /* section */,
|
||||
Atom /* name */,
|
||||
int /* sz_rows */
|
||||
);
|
||||
|
||||
extern XkbOverlayRowPtr
|
||||
XkbAddGeomOverlayRow(
|
||||
XkbOverlayPtr /* overlay */,
|
||||
int /* row_under */,
|
||||
int /* sz_keys */
|
||||
);
|
||||
|
||||
extern XkbOverlayKeyPtr
|
||||
XkbAddGeomOverlayKey(
|
||||
XkbOverlayPtr /* overlay */,
|
||||
XkbOverlayRowPtr /* row */,
|
||||
char * /* over */,
|
||||
char * /* under */
|
||||
);
|
||||
|
||||
extern XkbDoodadPtr
|
||||
XkbAddGeomDoodad(
|
||||
XkbGeometryPtr /* geom */,
|
||||
XkbSectionPtr /* section */,
|
||||
Atom /* name */
|
||||
);
|
||||
|
||||
|
||||
extern void
|
||||
XkbFreeGeomKeyAliases(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeomColors(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeomDoodads(
|
||||
XkbDoodadPtr /* doodads */,
|
||||
int /* nDoodads */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
|
||||
extern void
|
||||
XkbFreeGeomProperties(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeomOverlayKeys(
|
||||
XkbOverlayRowPtr /* row */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeomOverlayRows(
|
||||
XkbOverlayPtr /* overlay */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeomOverlays(
|
||||
XkbSectionPtr /* section */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeomKeys(
|
||||
XkbRowPtr /* row */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeomRows(
|
||||
XkbSectionPtr /* section */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeomSections(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
|
||||
extern void
|
||||
XkbFreeGeomPoints(
|
||||
XkbOutlinePtr /* outline */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeomOutlines(
|
||||
XkbShapePtr /* shape */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeomShapes(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* first */,
|
||||
int /* count */,
|
||||
Bool /* freeAll */
|
||||
);
|
||||
|
||||
extern void
|
||||
XkbFreeGeometry(
|
||||
XkbGeometryPtr /* geom */,
|
||||
unsigned int /* which */,
|
||||
Bool /* freeMap */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomProps(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* nProps */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomKeyAliases(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* nAliases */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomColors(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* nColors */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomShapes(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* nShapes */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomSections(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* nSections */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomOverlays(
|
||||
XkbSectionPtr /* section */,
|
||||
int /* num_needed */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomOverlayRows(
|
||||
XkbOverlayPtr /* overlay */,
|
||||
int /* num_needed */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomOverlayKeys(
|
||||
XkbOverlayRowPtr /* row */,
|
||||
int /* num_needed */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomDoodads(
|
||||
XkbGeometryPtr /* geom */,
|
||||
int /* nDoodads */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomSectionDoodads(
|
||||
XkbSectionPtr /* section */,
|
||||
int /* nDoodads */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomOutlines(
|
||||
XkbShapePtr /* shape */,
|
||||
int /* nOL */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomRows(
|
||||
XkbSectionPtr /* section */,
|
||||
int /* nRows */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomPoints(
|
||||
XkbOutlinePtr /* ol */,
|
||||
int /* nPts */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeomKeys(
|
||||
XkbRowPtr /* row */,
|
||||
int /* nKeys */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbAllocGeometry(
|
||||
XkbDescPtr /* xkb */,
|
||||
XkbGeometrySizesPtr /* sizes */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbSetGeometry(
|
||||
Display * /* dpy */,
|
||||
unsigned /* deviceSpec */,
|
||||
XkbGeometryPtr /* geom */
|
||||
);
|
||||
|
||||
extern Bool
|
||||
XkbComputeShapeTop(
|
||||
XkbShapePtr /* shape */,
|
||||
XkbBoundsPtr /* bounds */
|
||||
);
|
||||
|
||||
extern Bool
|
||||
XkbComputeShapeBounds(
|
||||
XkbShapePtr /* shape */
|
||||
);
|
||||
|
||||
extern Bool
|
||||
XkbComputeRowBounds(
|
||||
XkbGeometryPtr /* geom */,
|
||||
XkbSectionPtr /* section */,
|
||||
XkbRowPtr /* row */
|
||||
);
|
||||
|
||||
extern Bool
|
||||
XkbComputeSectionBounds(
|
||||
XkbGeometryPtr /* geom */,
|
||||
XkbSectionPtr /* section */
|
||||
);
|
||||
|
||||
extern char *
|
||||
XkbFindOverlayForKey(
|
||||
XkbGeometryPtr /* geom */,
|
||||
XkbSectionPtr /* wanted */,
|
||||
char * /* under */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbGetGeometry(
|
||||
Display * /* dpy */,
|
||||
XkbDescPtr /* xkb */
|
||||
);
|
||||
|
||||
extern Status
|
||||
XkbGetNamedGeometry(
|
||||
Display * /* dpy */,
|
||||
XkbDescPtr /* xkb */,
|
||||
Atom /* name */
|
||||
);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif /* _XKBSTR_H_ */
|
||||
1281
nx-X11/include/extensions/XKBproto.h
Normal file
1281
nx-X11/include/extensions/XKBproto.h
Normal file
File diff suppressed because it is too large
Load Diff
1115
nx-X11/include/extensions/XKBsrv.h
Normal file
1115
nx-X11/include/extensions/XKBsrv.h
Normal file
File diff suppressed because it is too large
Load Diff
608
nx-X11/include/extensions/XKBstr.h
Normal file
608
nx-X11/include/extensions/XKBstr.h
Normal file
@@ -0,0 +1,608 @@
|
||||
/************************************************************
|
||||
Copyright (c) 1993 by Silicon Graphics Computer Systems, Inc.
|
||||
|
||||
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 Silicon Graphics not be
|
||||
used in advertising or publicity pertaining to distribution
|
||||
of the software without specific prior written permission.
|
||||
Silicon Graphics makes no representation about the suitability
|
||||
of this software for any purpose. It is provided "as is"
|
||||
without any express or implied warranty.
|
||||
|
||||
SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
|
||||
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
|
||||
GRAPHICS 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 _XKBSTR_H_
|
||||
#define _XKBSTR_H_
|
||||
|
||||
#include <nx-X11/extensions/XKB.h>
|
||||
|
||||
#define XkbCharToInt(v) ((v)&0x80?(int)((v)|(~0xff)):(int)((v)&0x7f))
|
||||
#define XkbIntTo2Chars(i,h,l) (((h)=((i>>8)&0xff)),((l)=((i)&0xff)))
|
||||
|
||||
#define Xkb2CharsToInt(h,l) ((short)(((h)<<8)|(l)))
|
||||
|
||||
/*
|
||||
* Common data structures and access macros
|
||||
*/
|
||||
|
||||
typedef struct _XkbStateRec {
|
||||
unsigned char group;
|
||||
unsigned char locked_group;
|
||||
unsigned short base_group;
|
||||
unsigned short latched_group;
|
||||
unsigned char mods;
|
||||
unsigned char base_mods;
|
||||
unsigned char latched_mods;
|
||||
unsigned char locked_mods;
|
||||
unsigned char compat_state;
|
||||
unsigned char grab_mods;
|
||||
unsigned char compat_grab_mods;
|
||||
unsigned char lookup_mods;
|
||||
unsigned char compat_lookup_mods;
|
||||
unsigned short ptr_buttons;
|
||||
} XkbStateRec,*XkbStatePtr;
|
||||
#define XkbModLocks(s) ((s)->locked_mods)
|
||||
#define XkbStateMods(s) ((s)->base_mods|(s)->latched_mods|XkbModLocks(s))
|
||||
#define XkbGroupLock(s) ((s)->locked_group)
|
||||
#define XkbStateGroup(s) ((s)->base_group+(s)->latched_group+XkbGroupLock(s))
|
||||
#define XkbStateFieldFromRec(s) XkbBuildCoreState((s)->lookup_mods,(s)->group)
|
||||
#define XkbGrabStateFromRec(s) XkbBuildCoreState((s)->grab_mods,(s)->group)
|
||||
|
||||
typedef struct _XkbMods {
|
||||
unsigned char mask; /* effective mods */
|
||||
unsigned char real_mods;
|
||||
unsigned short vmods;
|
||||
} XkbModsRec,*XkbModsPtr;
|
||||
|
||||
typedef struct _XkbKTMapEntry {
|
||||
Bool active;
|
||||
unsigned char level;
|
||||
XkbModsRec mods;
|
||||
} XkbKTMapEntryRec,*XkbKTMapEntryPtr;
|
||||
|
||||
typedef struct _XkbKeyType {
|
||||
XkbModsRec mods;
|
||||
unsigned char num_levels;
|
||||
unsigned char map_count;
|
||||
XkbKTMapEntryPtr map;
|
||||
XkbModsPtr preserve;
|
||||
Atom name;
|
||||
Atom * level_names;
|
||||
} XkbKeyTypeRec, *XkbKeyTypePtr;
|
||||
|
||||
#define XkbNumGroups(g) ((g)&0x0f)
|
||||
#define XkbOutOfRangeGroupInfo(g) ((g)&0xf0)
|
||||
#define XkbOutOfRangeGroupAction(g) ((g)&0xc0)
|
||||
#define XkbOutOfRangeGroupNumber(g) (((g)&0x30)>>4)
|
||||
#define XkbSetGroupInfo(g,w,n) (((w)&0xc0)|(((n)&3)<<4)|((g)&0x0f))
|
||||
#define XkbSetNumGroups(g,n) (((g)&0xf0)|((n)&0x0f))
|
||||
|
||||
/*
|
||||
* Structures and access macros used primarily by the server
|
||||
*/
|
||||
|
||||
typedef struct _XkbBehavior {
|
||||
unsigned char type;
|
||||
unsigned char data;
|
||||
} XkbBehavior;
|
||||
|
||||
#define XkbAnyActionDataSize 7
|
||||
typedef struct _XkbAnyAction {
|
||||
unsigned char type;
|
||||
unsigned char data[XkbAnyActionDataSize];
|
||||
} XkbAnyAction;
|
||||
|
||||
typedef struct _XkbModAction {
|
||||
unsigned char type;
|
||||
unsigned char flags;
|
||||
unsigned char mask;
|
||||
unsigned char real_mods;
|
||||
unsigned char vmods1;
|
||||
unsigned char vmods2;
|
||||
} XkbModAction;
|
||||
#define XkbModActionVMods(a) \
|
||||
((short)(((a)->vmods1<<8)|((a)->vmods2)))
|
||||
#define XkbSetModActionVMods(a,v) \
|
||||
(((a)->vmods1=(((v)>>8)&0xff)),(a)->vmods2=((v)&0xff))
|
||||
|
||||
typedef struct _XkbGroupAction {
|
||||
unsigned char type;
|
||||
unsigned char flags;
|
||||
char group_XXX;
|
||||
} XkbGroupAction;
|
||||
#define XkbSAGroup(a) (XkbCharToInt((a)->group_XXX))
|
||||
#define XkbSASetGroup(a,g) ((a)->group_XXX=(g))
|
||||
|
||||
typedef struct _XkbISOAction {
|
||||
unsigned char type;
|
||||
unsigned char flags;
|
||||
unsigned char mask;
|
||||
unsigned char real_mods;
|
||||
char group_XXX;
|
||||
unsigned char affect;
|
||||
unsigned char vmods1;
|
||||
unsigned char vmods2;
|
||||
} XkbISOAction;
|
||||
|
||||
typedef struct _XkbPtrAction {
|
||||
unsigned char type;
|
||||
unsigned char flags;
|
||||
unsigned char high_XXX;
|
||||
unsigned char low_XXX;
|
||||
unsigned char high_YYY;
|
||||
unsigned char low_YYY;
|
||||
} XkbPtrAction;
|
||||
#define XkbPtrActionX(a) (Xkb2CharsToInt((a)->high_XXX,(a)->low_XXX))
|
||||
#define XkbPtrActionY(a) (Xkb2CharsToInt((a)->high_YYY,(a)->low_YYY))
|
||||
#define XkbSetPtrActionX(a,x) (XkbIntTo2Chars(x,(a)->high_XXX,(a)->low_XXX))
|
||||
#define XkbSetPtrActionY(a,y) (XkbIntTo2Chars(y,(a)->high_YYY,(a)->low_YYY))
|
||||
|
||||
typedef struct _XkbPtrBtnAction {
|
||||
unsigned char type;
|
||||
unsigned char flags;
|
||||
unsigned char count;
|
||||
unsigned char button;
|
||||
} XkbPtrBtnAction;
|
||||
|
||||
typedef struct _XkbPtrDfltAction {
|
||||
unsigned char type;
|
||||
unsigned char flags;
|
||||
unsigned char affect;
|
||||
char valueXXX;
|
||||
} XkbPtrDfltAction;
|
||||
#define XkbSAPtrDfltValue(a) (XkbCharToInt((a)->valueXXX))
|
||||
#define XkbSASetPtrDfltValue(a,c) ((a)->valueXXX= ((c)&0xff))
|
||||
|
||||
typedef struct _XkbSwitchScreenAction {
|
||||
unsigned char type;
|
||||
unsigned char flags;
|
||||
char screenXXX;
|
||||
} XkbSwitchScreenAction;
|
||||
#define XkbSAScreen(a) (XkbCharToInt((a)->screenXXX))
|
||||
#define XkbSASetScreen(a,s) ((a)->screenXXX= ((s)&0xff))
|
||||
|
||||
typedef struct _XkbCtrlsAction {
|
||||
unsigned char type;
|
||||
unsigned char flags;
|
||||
unsigned char ctrls3;
|
||||
unsigned char ctrls2;
|
||||
unsigned char ctrls1;
|
||||
unsigned char ctrls0;
|
||||
} XkbCtrlsAction;
|
||||
#define XkbActionSetCtrls(a,c) (((a)->ctrls3=(((c)>>24)&0xff)),\
|
||||
((a)->ctrls2=(((c)>>16)&0xff)),\
|
||||
((a)->ctrls1=(((c)>>8)&0xff)),\
|
||||
((a)->ctrls0=((c)&0xff)))
|
||||
#define XkbActionCtrls(a) ((((unsigned int)(a)->ctrls3)<<24)|\
|
||||
(((unsigned int)(a)->ctrls2)<<16)|\
|
||||
(((unsigned int)(a)->ctrls1)<<8)|\
|
||||
((unsigned int)((a)->ctrls0)))
|
||||
|
||||
typedef struct _XkbMessageAction {
|
||||
unsigned char type;
|
||||
unsigned char flags;
|
||||
unsigned char message[6];
|
||||
} XkbMessageAction;
|
||||
|
||||
typedef struct _XkbRedirectKeyAction {
|
||||
unsigned char type;
|
||||
unsigned char new_key;
|
||||
unsigned char mods_mask;
|
||||
unsigned char mods;
|
||||
unsigned char vmods_mask0;
|
||||
unsigned char vmods_mask1;
|
||||
unsigned char vmods0;
|
||||
unsigned char vmods1;
|
||||
} XkbRedirectKeyAction;
|
||||
|
||||
#define XkbSARedirectVMods(a) ((((unsigned int)(a)->vmods1)<<8)|\
|
||||
((unsigned int)(a)->vmods0))
|
||||
#define XkbSARedirectSetVMods(a,m) (((a)->vmods_mask1=(((m)>>8)&0xff)),\
|
||||
((a)->vmods_mask0=((m)&0xff)))
|
||||
#define XkbSARedirectVModsMask(a) ((((unsigned int)(a)->vmods_mask1)<<8)|\
|
||||
((unsigned int)(a)->vmods_mask0))
|
||||
#define XkbSARedirectSetVModsMask(a,m) (((a)->vmods_mask1=(((m)>>8)&0xff)),\
|
||||
((a)->vmods_mask0=((m)&0xff)))
|
||||
|
||||
typedef struct _XkbDeviceBtnAction {
|
||||
unsigned char type;
|
||||
unsigned char flags;
|
||||
unsigned char count;
|
||||
unsigned char button;
|
||||
unsigned char device;
|
||||
} XkbDeviceBtnAction;
|
||||
|
||||
typedef struct _XkbDeviceValuatorAction {
|
||||
unsigned char type;
|
||||
unsigned char device;
|
||||
unsigned char v1_what;
|
||||
unsigned char v1_ndx;
|
||||
unsigned char v1_value;
|
||||
unsigned char v2_what;
|
||||
unsigned char v2_ndx;
|
||||
unsigned char v2_value;
|
||||
} XkbDeviceValuatorAction;
|
||||
|
||||
typedef union _XkbAction {
|
||||
XkbAnyAction any;
|
||||
XkbModAction mods;
|
||||
XkbGroupAction group;
|
||||
XkbISOAction iso;
|
||||
XkbPtrAction ptr;
|
||||
XkbPtrBtnAction btn;
|
||||
XkbPtrDfltAction dflt;
|
||||
XkbSwitchScreenAction screen;
|
||||
XkbCtrlsAction ctrls;
|
||||
XkbMessageAction msg;
|
||||
XkbRedirectKeyAction redirect;
|
||||
XkbDeviceBtnAction devbtn;
|
||||
XkbDeviceValuatorAction devval;
|
||||
unsigned char type;
|
||||
} XkbAction;
|
||||
|
||||
typedef struct _XkbControls {
|
||||
unsigned char mk_dflt_btn;
|
||||
unsigned char num_groups;
|
||||
unsigned char groups_wrap;
|
||||
XkbModsRec internal;
|
||||
XkbModsRec ignore_lock;
|
||||
unsigned int enabled_ctrls;
|
||||
unsigned short repeat_delay;
|
||||
unsigned short repeat_interval;
|
||||
unsigned short slow_keys_delay;
|
||||
unsigned short debounce_delay;
|
||||
unsigned short mk_delay;
|
||||
unsigned short mk_interval;
|
||||
unsigned short mk_time_to_max;
|
||||
unsigned short mk_max_speed;
|
||||
short mk_curve;
|
||||
unsigned short ax_options;
|
||||
unsigned short ax_timeout;
|
||||
unsigned short axt_opts_mask;
|
||||
unsigned short axt_opts_values;
|
||||
unsigned int axt_ctrls_mask;
|
||||
unsigned int axt_ctrls_values;
|
||||
unsigned char per_key_repeat[XkbPerKeyBitArraySize];
|
||||
} XkbControlsRec, *XkbControlsPtr;
|
||||
|
||||
#define XkbAX_AnyFeedback(c) ((c)->enabled_ctrls&XkbAccessXFeedbackMask)
|
||||
#define XkbAX_NeedOption(c,w) ((c)->ax_options&(w))
|
||||
#define XkbAX_NeedFeedback(c,w) (XkbAX_AnyFeedback(c)&&XkbAX_NeedOption(c,w))
|
||||
|
||||
typedef struct _XkbServerMapRec {
|
||||
unsigned short num_acts;
|
||||
unsigned short size_acts;
|
||||
XkbAction *acts;
|
||||
|
||||
XkbBehavior *behaviors;
|
||||
unsigned short *key_acts;
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
/* explicit is a C++ reserved word */
|
||||
unsigned char *c_explicit;
|
||||
#else
|
||||
unsigned char *explicit;
|
||||
#endif
|
||||
unsigned char vmods[XkbNumVirtualMods];
|
||||
unsigned short *vmodmap;
|
||||
} XkbServerMapRec, *XkbServerMapPtr;
|
||||
|
||||
#define XkbSMKeyActionsPtr(m,k) (&(m)->acts[(m)->key_acts[k]])
|
||||
|
||||
/*
|
||||
* Structures and access macros used primarily by clients
|
||||
*/
|
||||
|
||||
typedef struct _XkbSymMapRec {
|
||||
unsigned char kt_index[XkbNumKbdGroups];
|
||||
unsigned char group_info;
|
||||
unsigned char width;
|
||||
unsigned short offset;
|
||||
} XkbSymMapRec, *XkbSymMapPtr;
|
||||
|
||||
typedef struct _XkbClientMapRec {
|
||||
unsigned char size_types;
|
||||
unsigned char num_types;
|
||||
XkbKeyTypePtr types;
|
||||
|
||||
unsigned short size_syms;
|
||||
unsigned short num_syms;
|
||||
KeySym *syms;
|
||||
XkbSymMapPtr key_sym_map;
|
||||
|
||||
unsigned char *modmap;
|
||||
} XkbClientMapRec, *XkbClientMapPtr;
|
||||
|
||||
#define XkbCMKeyGroupInfo(m,k) ((m)->key_sym_map[k].group_info)
|
||||
#define XkbCMKeyNumGroups(m,k) (XkbNumGroups((m)->key_sym_map[k].group_info))
|
||||
#define XkbCMKeyGroupWidth(m,k,g) (XkbCMKeyType(m,k,g)->num_levels)
|
||||
#define XkbCMKeyGroupsWidth(m,k) ((m)->key_sym_map[k].width)
|
||||
#define XkbCMKeyTypeIndex(m,k,g) ((m)->key_sym_map[k].kt_index[g&0x3])
|
||||
#define XkbCMKeyType(m,k,g) (&(m)->types[XkbCMKeyTypeIndex(m,k,g)])
|
||||
#define XkbCMKeyNumSyms(m,k) (XkbCMKeyGroupsWidth(m,k)*XkbCMKeyNumGroups(m,k))
|
||||
#define XkbCMKeySymsOffset(m,k) ((m)->key_sym_map[k].offset)
|
||||
#define XkbCMKeySymsPtr(m,k) (&(m)->syms[XkbCMKeySymsOffset(m,k)])
|
||||
|
||||
/*
|
||||
* Compatibility structures and access macros
|
||||
*/
|
||||
|
||||
typedef struct _XkbSymInterpretRec {
|
||||
KeySym sym;
|
||||
unsigned char flags;
|
||||
unsigned char match;
|
||||
unsigned char mods;
|
||||
unsigned char virtual_mod;
|
||||
XkbAnyAction act;
|
||||
} XkbSymInterpretRec,*XkbSymInterpretPtr;
|
||||
|
||||
typedef struct _XkbCompatMapRec {
|
||||
XkbSymInterpretPtr sym_interpret;
|
||||
XkbModsRec groups[XkbNumKbdGroups];
|
||||
unsigned short num_si;
|
||||
unsigned short size_si;
|
||||
} XkbCompatMapRec, *XkbCompatMapPtr;
|
||||
|
||||
typedef struct _XkbIndicatorMapRec {
|
||||
unsigned char flags;
|
||||
unsigned char which_groups;
|
||||
unsigned char groups;
|
||||
unsigned char which_mods;
|
||||
XkbModsRec mods;
|
||||
unsigned int ctrls;
|
||||
} XkbIndicatorMapRec, *XkbIndicatorMapPtr;
|
||||
|
||||
#define XkbIM_IsAuto(i) ((((i)->flags&XkbIM_NoAutomatic)==0)&&\
|
||||
(((i)->which_groups&&(i)->groups)||\
|
||||
((i)->which_mods&&(i)->mods.mask)||\
|
||||
((i)->ctrls)))
|
||||
#define XkbIM_InUse(i) (((i)->flags)||((i)->which_groups)||\
|
||||
((i)->which_mods)||((i)->ctrls))
|
||||
|
||||
|
||||
typedef struct _XkbIndicatorRec {
|
||||
unsigned long phys_indicators;
|
||||
XkbIndicatorMapRec maps[XkbNumIndicators];
|
||||
} XkbIndicatorRec,*XkbIndicatorPtr;
|
||||
|
||||
typedef struct _XkbKeyNameRec {
|
||||
char name[XkbKeyNameLength];
|
||||
} XkbKeyNameRec,*XkbKeyNamePtr;
|
||||
|
||||
typedef struct _XkbKeyAliasRec {
|
||||
char real[XkbKeyNameLength];
|
||||
char alias[XkbKeyNameLength];
|
||||
} XkbKeyAliasRec,*XkbKeyAliasPtr;
|
||||
|
||||
/*
|
||||
* Names for everything
|
||||
*/
|
||||
typedef struct _XkbNamesRec {
|
||||
Atom keycodes;
|
||||
Atom geometry;
|
||||
Atom symbols;
|
||||
Atom types;
|
||||
Atom compat;
|
||||
Atom vmods[XkbNumVirtualMods];
|
||||
Atom indicators[XkbNumIndicators];
|
||||
Atom groups[XkbNumKbdGroups];
|
||||
XkbKeyNamePtr keys;
|
||||
XkbKeyAliasPtr key_aliases;
|
||||
Atom *radio_groups;
|
||||
Atom phys_symbols;
|
||||
|
||||
unsigned char num_keys;
|
||||
unsigned char num_key_aliases;
|
||||
unsigned short num_rg;
|
||||
} XkbNamesRec,*XkbNamesPtr;
|
||||
|
||||
typedef struct _XkbGeometry *XkbGeometryPtr;
|
||||
/*
|
||||
* Tie it all together into one big keyboard description
|
||||
*/
|
||||
typedef struct _XkbDesc {
|
||||
struct _XDisplay * dpy;
|
||||
unsigned short flags;
|
||||
unsigned short device_spec;
|
||||
KeyCode min_key_code;
|
||||
KeyCode max_key_code;
|
||||
|
||||
XkbControlsPtr ctrls;
|
||||
XkbServerMapPtr server;
|
||||
XkbClientMapPtr map;
|
||||
XkbIndicatorPtr indicators;
|
||||
XkbNamesPtr names;
|
||||
XkbCompatMapPtr compat;
|
||||
XkbGeometryPtr geom;
|
||||
} XkbDescRec, *XkbDescPtr;
|
||||
#define XkbKeyKeyTypeIndex(d,k,g) (XkbCMKeyTypeIndex((d)->map,k,g))
|
||||
#define XkbKeyKeyType(d,k,g) (XkbCMKeyType((d)->map,k,g))
|
||||
#define XkbKeyGroupWidth(d,k,g) (XkbCMKeyGroupWidth((d)->map,k,g))
|
||||
#define XkbKeyGroupsWidth(d,k) (XkbCMKeyGroupsWidth((d)->map,k))
|
||||
#define XkbKeyGroupInfo(d,k) (XkbCMKeyGroupInfo((d)->map,(k)))
|
||||
#define XkbKeyNumGroups(d,k) (XkbCMKeyNumGroups((d)->map,(k)))
|
||||
#define XkbKeyNumSyms(d,k) (XkbCMKeyNumSyms((d)->map,(k)))
|
||||
#define XkbKeySymsPtr(d,k) (XkbCMKeySymsPtr((d)->map,(k)))
|
||||
#define XkbKeySym(d,k,n) (XkbKeySymsPtr(d,k)[n])
|
||||
#define XkbKeySymEntry(d,k,sl,g) \
|
||||
(XkbKeySym(d,k,((XkbKeyGroupsWidth(d,k)*(g))+(sl))))
|
||||
#define XkbKeyAction(d,k,n) \
|
||||
(XkbKeyHasActions(d,k)?&XkbKeyActionsPtr(d,k)[n]:NULL)
|
||||
#define XkbKeyActionEntry(d,k,sl,g) \
|
||||
(XkbKeyHasActions(d,k)?\
|
||||
XkbKeyAction(d,k,((XkbKeyGroupsWidth(d,k)*(g))+(sl))):NULL)
|
||||
|
||||
#define XkbKeyHasActions(d,k) ((d)->server->key_acts[k]!=0)
|
||||
#define XkbKeyNumActions(d,k) (XkbKeyHasActions(d,k)?XkbKeyNumSyms(d,k):1)
|
||||
#define XkbKeyActionsPtr(d,k) (XkbSMKeyActionsPtr((d)->server,k))
|
||||
#define XkbKeycodeInRange(d,k) (((k)>=(d)->min_key_code)&&\
|
||||
((k)<=(d)->max_key_code))
|
||||
#define XkbNumKeys(d) ((d)->max_key_code-(d)->min_key_code+1)
|
||||
|
||||
|
||||
/*
|
||||
* The following structures can be used to track changes
|
||||
* to a keyboard device
|
||||
*/
|
||||
typedef struct _XkbMapChanges {
|
||||
unsigned short changed;
|
||||
KeyCode min_key_code;
|
||||
KeyCode max_key_code;
|
||||
unsigned char first_type;
|
||||
unsigned char num_types;
|
||||
KeyCode first_key_sym;
|
||||
unsigned char num_key_syms;
|
||||
KeyCode first_key_act;
|
||||
unsigned char num_key_acts;
|
||||
KeyCode first_key_behavior;
|
||||
unsigned char num_key_behaviors;
|
||||
KeyCode first_key_explicit;
|
||||
unsigned char num_key_explicit;
|
||||
KeyCode first_modmap_key;
|
||||
unsigned char num_modmap_keys;
|
||||
KeyCode first_vmodmap_key;
|
||||
unsigned char num_vmodmap_keys;
|
||||
unsigned char pad;
|
||||
unsigned short vmods;
|
||||
} XkbMapChangesRec,*XkbMapChangesPtr;
|
||||
|
||||
typedef struct _XkbControlsChanges {
|
||||
unsigned int changed_ctrls;
|
||||
unsigned int enabled_ctrls_changes;
|
||||
Bool num_groups_changed;
|
||||
} XkbControlsChangesRec,*XkbControlsChangesPtr;
|
||||
|
||||
typedef struct _XkbIndicatorChanges {
|
||||
unsigned int state_changes;
|
||||
unsigned int map_changes;
|
||||
} XkbIndicatorChangesRec,*XkbIndicatorChangesPtr;
|
||||
|
||||
typedef struct _XkbNameChanges {
|
||||
unsigned int changed;
|
||||
unsigned char first_type;
|
||||
unsigned char num_types;
|
||||
unsigned char first_lvl;
|
||||
unsigned char num_lvls;
|
||||
unsigned char num_aliases;
|
||||
unsigned char num_rg;
|
||||
unsigned char first_key;
|
||||
unsigned char num_keys;
|
||||
unsigned short changed_vmods;
|
||||
unsigned long changed_indicators;
|
||||
unsigned char changed_groups;
|
||||
} XkbNameChangesRec,*XkbNameChangesPtr;
|
||||
|
||||
typedef struct _XkbCompatChanges {
|
||||
unsigned char changed_groups;
|
||||
unsigned short first_si;
|
||||
unsigned short num_si;
|
||||
} XkbCompatChangesRec,*XkbCompatChangesPtr;
|
||||
|
||||
typedef struct _XkbChanges {
|
||||
unsigned short device_spec;
|
||||
unsigned short state_changes;
|
||||
XkbMapChangesRec map;
|
||||
XkbControlsChangesRec ctrls;
|
||||
XkbIndicatorChangesRec indicators;
|
||||
XkbNameChangesRec names;
|
||||
XkbCompatChangesRec compat;
|
||||
} XkbChangesRec, *XkbChangesPtr;
|
||||
|
||||
/*
|
||||
* These data structures are used to construct a keymap from
|
||||
* a set of components or to list components in the server
|
||||
* database.
|
||||
*/
|
||||
typedef struct _XkbComponentNames {
|
||||
char * keymap;
|
||||
char * keycodes;
|
||||
char * types;
|
||||
char * compat;
|
||||
char * symbols;
|
||||
char * geometry;
|
||||
} XkbComponentNamesRec, *XkbComponentNamesPtr;
|
||||
|
||||
typedef struct _XkbComponentName {
|
||||
unsigned short flags;
|
||||
char * name;
|
||||
} XkbComponentNameRec,*XkbComponentNamePtr;
|
||||
|
||||
typedef struct _XkbComponentList {
|
||||
int num_keymaps;
|
||||
int num_keycodes;
|
||||
int num_types;
|
||||
int num_compat;
|
||||
int num_symbols;
|
||||
int num_geometry;
|
||||
XkbComponentNamePtr keymaps;
|
||||
XkbComponentNamePtr keycodes;
|
||||
XkbComponentNamePtr types;
|
||||
XkbComponentNamePtr compat;
|
||||
XkbComponentNamePtr symbols;
|
||||
XkbComponentNamePtr geometry;
|
||||
} XkbComponentListRec, *XkbComponentListPtr;
|
||||
|
||||
/*
|
||||
* The following data structures describe and track changes to a
|
||||
* non-keyboard extension device
|
||||
*/
|
||||
typedef struct _XkbDeviceLedInfo {
|
||||
unsigned short led_class;
|
||||
unsigned short led_id;
|
||||
unsigned int phys_indicators;
|
||||
unsigned int maps_present;
|
||||
unsigned int names_present;
|
||||
unsigned int state;
|
||||
Atom names[XkbNumIndicators];
|
||||
XkbIndicatorMapRec maps[XkbNumIndicators];
|
||||
} XkbDeviceLedInfoRec,*XkbDeviceLedInfoPtr;
|
||||
|
||||
typedef struct _XkbDeviceInfo {
|
||||
char * name;
|
||||
Atom type;
|
||||
unsigned short device_spec;
|
||||
Bool has_own_state;
|
||||
unsigned short supported;
|
||||
unsigned short unsupported;
|
||||
|
||||
unsigned short num_btns;
|
||||
XkbAction * btn_acts;
|
||||
|
||||
unsigned short sz_leds;
|
||||
unsigned short num_leds;
|
||||
unsigned short dflt_kbd_fb;
|
||||
unsigned short dflt_led_fb;
|
||||
XkbDeviceLedInfoPtr leds;
|
||||
} XkbDeviceInfoRec,*XkbDeviceInfoPtr;
|
||||
|
||||
#define XkbXI_DevHasBtnActs(d) (((d)->num_btns>0)&&((d)->btn_acts!=NULL))
|
||||
#define XkbXI_LegalDevBtn(d,b) (XkbXI_DevHasBtnActs(d)&&((b)<(d)->num_btns))
|
||||
#define XkbXI_DevHasLeds(d) (((d)->num_leds>0)&&((d)->leds!=NULL))
|
||||
|
||||
typedef struct _XkbDeviceLedChanges {
|
||||
unsigned short led_class;
|
||||
unsigned short led_id;
|
||||
unsigned int defined; /* names or maps changed */
|
||||
struct _XkbDeviceLedChanges *next;
|
||||
} XkbDeviceLedChangesRec,*XkbDeviceLedChangesPtr;
|
||||
|
||||
typedef struct _XkbDeviceChanges {
|
||||
unsigned int changed;
|
||||
unsigned short first_btn;
|
||||
unsigned short num_btns;
|
||||
XkbDeviceLedChangesRec leds;
|
||||
} XkbDeviceChangesRec,*XkbDeviceChangesPtr;
|
||||
|
||||
#endif /* _XKBSTR_H_ */
|
||||
69
nx-X11/include/extensions/XKM.h
Normal file
69
nx-X11/include/extensions/XKM.h
Normal file
@@ -0,0 +1,69 @@
|
||||
/************************************************************
|
||||
Copyright (c) 1994 by Silicon Graphics Computer Systems, Inc.
|
||||
|
||||
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 Silicon Graphics not be
|
||||
used in advertising or publicity pertaining to distribution
|
||||
of the software without specific prior written permission.
|
||||
Silicon Graphics makes no representation about the suitability
|
||||
of this software for any purpose. It is provided "as is"
|
||||
without any express or implied warranty.
|
||||
|
||||
SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
|
||||
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
|
||||
GRAPHICS 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 XKM_H
|
||||
#define XKM_H 1
|
||||
|
||||
#define XkmFileVersion 15
|
||||
|
||||
#define XkmIllegalFile -1
|
||||
#define XkmSemanticsFile 20
|
||||
#define XkmLayoutFile 21
|
||||
#define XkmKeymapFile 22
|
||||
#define XkmGeometryFile 23
|
||||
|
||||
#define XkmTypesIndex 0
|
||||
#define XkmCompatMapIndex 1
|
||||
#define XkmSymbolsIndex 2
|
||||
#define XkmIndicatorsIndex 3
|
||||
#define XkmKeyNamesIndex 4
|
||||
#define XkmGeometryIndex 5
|
||||
#define XkmVirtualModsIndex 6
|
||||
#define XkmLastIndex XkmVirtualModsIndex
|
||||
|
||||
#define XkmTypesMask (1<<0)
|
||||
#define XkmCompatMapMask (1<<1)
|
||||
#define XkmSymbolsMask (1<<2)
|
||||
#define XkmIndicatorsMask (1<<3)
|
||||
#define XkmKeyNamesMask (1<<4)
|
||||
#define XkmGeometryMask (1<<5)
|
||||
#define XkmVirtualModsMask (1<<6)
|
||||
#define XkmLegalIndexMask (0x7f)
|
||||
#define XkmAllIndicesMask (0x7f)
|
||||
|
||||
#define XkmSemanticsRequired (XkmCompatMapMask)
|
||||
#define XkmSemanticsOptional (XkmTypesMask|XkmVirtualModsMask|XkmIndicatorsMask)
|
||||
#define XkmSemanticsLegal (XkmSemanticsRequired|XkmSemanticsOptional)
|
||||
#define XkmLayoutRequired (XkmKeyNamesMask|XkmSymbolsMask|XkmTypesMask)
|
||||
#define XkmLayoutOptional (XkmVirtualModsMask|XkmGeometryMask)
|
||||
#define XkmLayoutLegal (XkmLayoutRequired|XkmLayoutOptional)
|
||||
#define XkmKeymapRequired (XkmSemanticsRequired|XkmLayoutRequired)
|
||||
#define XkmKeymapOptional ((XkmSemanticsOptional|XkmLayoutOptional)&(~XkmKeymapRequired))
|
||||
#define XkmKeymapLegal (XkmKeymapRequired|XkmKeymapOptional)
|
||||
|
||||
#define XkmLegalSection(m) (((m)&(~XkmKeymapLegal))==0)
|
||||
#define XkmSingleSection(m) (XkmLegalSection(m)&&(((m)&(~(m)+1))==(m)))
|
||||
|
||||
#endif /* XKM_H */
|
||||
300
nx-X11/include/extensions/XKMformat.h
Normal file
300
nx-X11/include/extensions/XKMformat.h
Normal file
@@ -0,0 +1,300 @@
|
||||
/************************************************************
|
||||
Copyright (c) 1994 by Silicon Graphics Computer Systems, Inc.
|
||||
|
||||
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 Silicon Graphics not be
|
||||
used in advertising or publicity pertaining to distribution
|
||||
of the software without specific prior written permission.
|
||||
Silicon Graphics makes no representation about the suitability
|
||||
of this software for any purpose. It is provided "as is"
|
||||
without any express or implied warranty.
|
||||
|
||||
SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
|
||||
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
|
||||
GRAPHICS 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.
|
||||
|
||||
********************************************************/
|
||||
/* $XFree86$ */
|
||||
|
||||
#ifndef _XKMFORMAT_H_
|
||||
#define _XKMFORMAT_H_ 1
|
||||
|
||||
#include <nx-X11/extensions/XKB.h>
|
||||
#include <nx-X11/extensions/XKBproto.h>
|
||||
#include <nx-X11/extensions/XKM.h>
|
||||
|
||||
typedef struct _xkmFileInfo {
|
||||
CARD8 type;
|
||||
CARD8 min_kc;
|
||||
CARD8 max_kc;
|
||||
CARD8 num_toc;
|
||||
CARD16 present B16;
|
||||
CARD16 pad B16;
|
||||
} xkmFileInfo;
|
||||
#define sz_xkmFileInfo 8
|
||||
|
||||
typedef struct _xkmSectionInfo {
|
||||
CARD16 type B16;
|
||||
CARD16 format B16;
|
||||
CARD16 size B16;
|
||||
CARD16 offset B16;
|
||||
} xkmSectionInfo;
|
||||
#define sz_xkmSectionInfo 8
|
||||
|
||||
typedef struct _xkmKeyTypeDesc {
|
||||
CARD8 realMods;
|
||||
CARD8 numLevels;
|
||||
CARD16 virtualMods B16;
|
||||
CARD8 nMapEntries;
|
||||
CARD8 nLevelNames;
|
||||
CARD8 preserve;
|
||||
CARD8 pad;
|
||||
} xkmKeyTypeDesc;
|
||||
#define sz_xkmKeyTypeDesc 8
|
||||
|
||||
typedef struct _xkmKTMapEntryDesc {
|
||||
CARD8 level;
|
||||
CARD8 realMods;
|
||||
CARD16 virtualMods B16;
|
||||
} xkmKTMapEntryDesc;
|
||||
#define sz_xkmKTMapEntryDesc 4
|
||||
|
||||
typedef struct _xkmModsDesc {
|
||||
CARD8 realMods;
|
||||
CARD8 pad;
|
||||
CARD16 virtualMods B16;
|
||||
} xkmModsDesc;
|
||||
#define sz_xkmModsDesc 4
|
||||
|
||||
typedef struct _xkmVModMapDesc {
|
||||
CARD8 key;
|
||||
CARD8 pad;
|
||||
CARD16 vmods B16;
|
||||
} xkmVModMapDesc;
|
||||
#define sz_xkmVModMapDesc 4
|
||||
|
||||
typedef struct _xkmSymInterpretDesc {
|
||||
CARD32 sym B32;
|
||||
CARD8 mods;
|
||||
CARD8 match;
|
||||
CARD8 virtualMod;
|
||||
CARD8 flags;
|
||||
CARD8 actionType;
|
||||
CARD8 actionData[7];
|
||||
} xkmSymInterpretDesc;
|
||||
#define sz_xkmSymInterpretDesc 16
|
||||
|
||||
typedef struct _xkmBehaviorDesc {
|
||||
CARD8 type;
|
||||
CARD8 data;
|
||||
CARD16 pad B16;
|
||||
} xkmBehaviorDesc;
|
||||
#define sz_xkmBehaviorDesc 4
|
||||
|
||||
typedef struct _xkmActionDesc {
|
||||
CARD8 type;
|
||||
CARD8 data[7];
|
||||
} xkmActionDesc;
|
||||
#define sz_xkmActionDesc 8
|
||||
|
||||
#define XkmKeyHasTypes (0x0f)
|
||||
#define XkmKeyHasGroup1Type (1<<0)
|
||||
#define XkmKeyHasGroup2Type (1<<1)
|
||||
#define XkmKeyHasGroup3Type (1<<2)
|
||||
#define XkmKeyHasGroup4Type (1<<3)
|
||||
#define XkmKeyHasActions (1<<4)
|
||||
#define XkmKeyHasBehavior (1<<5)
|
||||
#define XkmRepeatingKey (1<<6)
|
||||
#define XkmNonRepeatingKey (1<<7)
|
||||
|
||||
typedef struct _xkmKeySymMapDesc {
|
||||
CARD8 width;
|
||||
CARD8 num_groups;
|
||||
CARD8 modifier_map;
|
||||
CARD8 flags;
|
||||
} xkmKeySymMapDesc;
|
||||
#define sz_xkmKeySymMapDesc 4
|
||||
|
||||
typedef struct _xkmIndicatorMapDesc {
|
||||
CARD8 indicator;
|
||||
CARD8 flags;
|
||||
CARD8 which_mods;
|
||||
CARD8 real_mods;
|
||||
CARD16 vmods B16;
|
||||
CARD8 which_groups;
|
||||
CARD8 groups;
|
||||
CARD32 ctrls B32;
|
||||
} xkmIndicatorMapDesc;
|
||||
#define sz_xkmIndicatorMapDesc 12
|
||||
|
||||
typedef struct _xkmGeometryDesc {
|
||||
CARD16 width_mm B16;
|
||||
CARD16 height_mm B16;
|
||||
CARD8 base_color_ndx;
|
||||
CARD8 label_color_ndx;
|
||||
CARD16 num_properties B16;
|
||||
CARD16 num_colors B16;
|
||||
CARD16 num_shapes B16;
|
||||
CARD16 num_sections B16;
|
||||
CARD16 num_doodads B16;
|
||||
CARD16 num_key_aliases B16;
|
||||
CARD16 pad1 B16;
|
||||
} xkmGeometryDesc;
|
||||
#define sz_xkmGeometryDesc 20
|
||||
|
||||
typedef struct _xkmPointDesc {
|
||||
INT16 x B16;
|
||||
INT16 y B16;
|
||||
} xkmPointDesc;
|
||||
#define sz_xkmPointDesc 4
|
||||
|
||||
typedef struct _xkmOutlineDesc {
|
||||
CARD8 num_points;
|
||||
CARD8 corner_radius;
|
||||
CARD16 pad B16;
|
||||
} xkmOutlineDesc;
|
||||
#define sz_xkmOutlineDesc 4
|
||||
|
||||
typedef struct _xkmShapeDesc {
|
||||
CARD8 num_outlines;
|
||||
CARD8 primary_ndx;
|
||||
CARD8 approx_ndx;
|
||||
CARD8 pad;
|
||||
} xkmShapeDesc;
|
||||
#define sz_xkmShapeDesc 4
|
||||
|
||||
typedef struct _xkmSectionDesc {
|
||||
INT16 top B16;
|
||||
INT16 left B16;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
INT16 angle B16;
|
||||
CARD8 priority;
|
||||
CARD8 num_rows;
|
||||
CARD8 num_doodads;
|
||||
CARD8 num_overlays;
|
||||
CARD16 pad2 B16;
|
||||
} xkmSectionDesc;
|
||||
#define sz_xkmSectionDesc 16
|
||||
|
||||
typedef struct _xkmRowDesc {
|
||||
INT16 top B16;
|
||||
INT16 left B16;
|
||||
CARD8 num_keys;
|
||||
BOOL vertical;
|
||||
CARD16 pad B16;
|
||||
} xkmRowDesc;
|
||||
#define sz_xkmRowDesc 8
|
||||
|
||||
typedef struct _xkmKeyDesc {
|
||||
CARD8 name[XkbKeyNameLength];
|
||||
INT16 gap B16;
|
||||
CARD8 shape_ndx;
|
||||
CARD8 color_ndx;
|
||||
} xkmKeyDesc;
|
||||
#define sz_xkmKeyDesc 8
|
||||
|
||||
typedef struct _xkmOverlayDesc {
|
||||
CARD8 num_rows;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xkmOverlayDesc;
|
||||
#define sz_xkmOverlayDesc 4
|
||||
|
||||
typedef struct _xkmOverlayRowDesc {
|
||||
CARD8 row_under;
|
||||
CARD8 num_keys;
|
||||
CARD16 pad B16;
|
||||
} xkmOverlayRowDesc;
|
||||
#define sz_xkmOverlayRowDesc 4
|
||||
|
||||
typedef struct _xkmOverlayKeyDesc {
|
||||
char over[XkbKeyNameLength];
|
||||
char under[XkbKeyNameLength];
|
||||
} xkmOverlayKeyDesc;
|
||||
#define sz_xkmOverlayKeyDesc 8
|
||||
|
||||
typedef struct _xkmShapeDoodadDesc {
|
||||
CARD8 type;
|
||||
CARD8 priority;
|
||||
INT16 top B16;
|
||||
INT16 left B16;
|
||||
INT16 angle B16;
|
||||
CARD8 color_ndx;
|
||||
CARD8 shape_ndx;
|
||||
CARD16 pad B16;
|
||||
CARD32 pad1 B32;
|
||||
} xkmShapeDoodadDesc;
|
||||
#define sz_xkmShapeDoodadDesc 16
|
||||
|
||||
typedef struct _xkmTextDoodadDesc {
|
||||
CARD8 type;
|
||||
CARD8 priority;
|
||||
INT16 top B16;
|
||||
INT16 left B16;
|
||||
INT16 angle B16;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
CARD8 color_ndx;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xkmTextDoodadDesc;
|
||||
#define sz_xkmTextDoodadDesc 16
|
||||
|
||||
typedef struct _xkmIndicatorDoodadDesc {
|
||||
CARD8 type;
|
||||
CARD8 priority;
|
||||
INT16 top B16;
|
||||
INT16 left B16;
|
||||
CARD8 shape_ndx;
|
||||
CARD8 on_color_ndx;
|
||||
CARD8 off_color_ndx;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
CARD32 pad3 B32;
|
||||
} xkmIndicatorDoodadDesc;
|
||||
#define sz_xkmIndicatorDoodadDesc 16
|
||||
|
||||
typedef struct _xkmLogoDoodadDesc {
|
||||
CARD8 type;
|
||||
CARD8 priority;
|
||||
INT16 top B16;
|
||||
INT16 left B16;
|
||||
INT16 angle B16;
|
||||
CARD8 color_ndx;
|
||||
CARD8 shape_ndx;
|
||||
CARD16 pad B16;
|
||||
CARD32 pad1 B32;
|
||||
} xkmLogoDoodadDesc;
|
||||
#define sz_xkmLogoDoodadDesc 16
|
||||
|
||||
typedef struct _xkmAnyDoodadDesc {
|
||||
CARD8 type;
|
||||
CARD8 priority;
|
||||
INT16 top B16;
|
||||
INT16 left B16;
|
||||
CARD16 pad1 B16;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
} xkmAnyDoodadDesc;
|
||||
#define sz_xkmAnyDoodadDesc 16
|
||||
|
||||
typedef union _xkmDoodadDesc {
|
||||
xkmAnyDoodadDesc any;
|
||||
xkmShapeDoodadDesc shape;
|
||||
xkmTextDoodadDesc text;
|
||||
xkmIndicatorDoodadDesc indicator;
|
||||
xkmLogoDoodadDesc logo;
|
||||
} xkmDoodadDesc;
|
||||
#define sz_xkmDoodadDesc 16
|
||||
|
||||
#endif /* _XKMFORMAT_H_ */
|
||||
129
nx-X11/include/extensions/XResproto.h
Normal file
129
nx-X11/include/extensions/XResproto.h
Normal file
@@ -0,0 +1,129 @@
|
||||
/*
|
||||
Copyright (c) 2002 XFree86 Inc
|
||||
*/
|
||||
|
||||
#ifndef _XRESPROTO_H
|
||||
#define _XRESPROTO_H
|
||||
|
||||
#define XRES_MAJOR_VERSION 1
|
||||
#define XRES_MINOR_VERSION 0
|
||||
|
||||
#define XRES_NAME "X-Resource"
|
||||
|
||||
#define X_XResQueryVersion 0
|
||||
#define X_XResQueryClients 1
|
||||
#define X_XResQueryClientResources 2
|
||||
#define X_XResQueryClientPixmapBytes 3
|
||||
|
||||
typedef struct {
|
||||
CARD32 resource_base;
|
||||
CARD32 resource_mask;
|
||||
} xXResClient;
|
||||
#define sz_xXResClient 8
|
||||
|
||||
typedef struct {
|
||||
CARD32 resource_type;
|
||||
CARD32 count;
|
||||
} xXResType;
|
||||
#define sz_xXResType 8
|
||||
|
||||
/* XResQueryVersion */
|
||||
|
||||
typedef struct _XResQueryVersion {
|
||||
CARD8 reqType;
|
||||
CARD8 XResReqType;
|
||||
CARD16 length B16;
|
||||
CARD8 client_major;
|
||||
CARD8 client_minor;
|
||||
CARD16 unused B16;
|
||||
} xXResQueryVersionReq;
|
||||
#define sz_xXResQueryVersionReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 type;
|
||||
CARD8 pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 server_major B16;
|
||||
CARD16 server_minor B16;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
} xXResQueryVersionReply;
|
||||
#define sz_xXResQueryVersionReply 32
|
||||
|
||||
/* XResQueryClients */
|
||||
|
||||
typedef struct _XResQueryClients {
|
||||
CARD8 reqType;
|
||||
CARD8 XResReqType;
|
||||
CARD16 length B16;
|
||||
} xXResQueryClientsReq;
|
||||
#define sz_xXResQueryClientsReq 4
|
||||
|
||||
typedef struct {
|
||||
CARD8 type;
|
||||
CARD8 pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 num_clients B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
} xXResQueryClientsReply;
|
||||
#define sz_xXResQueryClientsReply 32
|
||||
|
||||
/* XResQueryClientResources */
|
||||
|
||||
typedef struct _XResQueryClientResources {
|
||||
CARD8 reqType;
|
||||
CARD8 XResReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 xid B32;
|
||||
} xXResQueryClientResourcesReq;
|
||||
#define sz_xXResQueryClientResourcesReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 type;
|
||||
CARD8 pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 num_types B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
} xXResQueryClientResourcesReply;
|
||||
#define sz_xXResQueryClientResourcesReply 32
|
||||
|
||||
/* XResQueryClientPixmapBytes */
|
||||
|
||||
typedef struct _XResQueryClientPixmapBytes {
|
||||
CARD8 reqType;
|
||||
CARD8 XResReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 xid B32;
|
||||
} xXResQueryClientPixmapBytesReq;
|
||||
#define sz_xXResQueryClientPixmapBytesReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 type;
|
||||
CARD8 pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 bytes B32;
|
||||
CARD32 bytes_overflow B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xXResQueryClientPixmapBytesReply;
|
||||
#define sz_xXResQueryClientPixmapBytesReply 32
|
||||
|
||||
|
||||
#endif /* _XRESPROTO_H */
|
||||
276
nx-X11/include/extensions/Xdbeproto.h
Normal file
276
nx-X11/include/extensions/Xdbeproto.h
Normal file
@@ -0,0 +1,276 @@
|
||||
/******************************************************************************
|
||||
*
|
||||
* Copyright (c) 1994, 1995 Hewlett-Packard Company
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining
|
||||
* a copy of this software and associated documentation files (the
|
||||
* "Software"), to deal in the Software without restriction, including
|
||||
* without limitation the rights to use, copy, modify, merge, publish,
|
||||
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||
* permit persons to whom the Software is furnished to do so, subject to
|
||||
* the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included
|
||||
* in all copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
* IN NO EVENT SHALL HEWLETT-PACKARD COMPANY BE LIABLE FOR ANY CLAIM,
|
||||
* DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
|
||||
* THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*
|
||||
* Except as contained in this notice, the name of the Hewlett-Packard
|
||||
* Company shall not be used in advertising or otherwise to promote the
|
||||
* sale, use or other dealings in this Software without prior written
|
||||
* authorization from the Hewlett-Packard Company.
|
||||
*
|
||||
* Header file for Xlib-related DBE
|
||||
*
|
||||
*****************************************************************************/
|
||||
|
||||
|
||||
#ifndef XDBE_PROTO_H
|
||||
#define XDBE_PROTO_H
|
||||
|
||||
/* INCLUDES */
|
||||
|
||||
|
||||
/* DEFINES */
|
||||
|
||||
/* Values for swap_action field of XdbeSwapInfo structure */
|
||||
#define XdbeUndefined 0
|
||||
#define XdbeBackground 1
|
||||
#define XdbeUntouched 2
|
||||
#define XdbeCopied 3
|
||||
|
||||
#ifdef NEED_DBE_PROTOCOL
|
||||
|
||||
#define DBE_PROTOCOL_NAME "DOUBLE-BUFFER"
|
||||
|
||||
/* Current version numbers */
|
||||
#define DBE_MAJOR_VERSION 1
|
||||
#define DBE_MINOR_VERSION 0
|
||||
|
||||
/* Used when adding extension; also used in Xdbe macros */
|
||||
#define DbeNumberEvents 0
|
||||
#define DbeBadBuffer 0
|
||||
#define DbeNumberErrors (DbeBadBuffer + 1)
|
||||
|
||||
/* Request values used in (S)ProcDbeDispatch() */
|
||||
#define X_DbeGetVersion 0
|
||||
#define X_DbeAllocateBackBufferName 1
|
||||
#define X_DbeDeallocateBackBufferName 2
|
||||
#define X_DbeSwapBuffers 3
|
||||
#define X_DbeBeginIdiom 4
|
||||
#define X_DbeEndIdiom 5
|
||||
#define X_DbeGetVisualInfo 6
|
||||
#define X_DbeGetBackBufferAttributes 7
|
||||
|
||||
typedef CARD8 xDbeSwapAction;
|
||||
typedef CARD32 xDbeBackBuffer;
|
||||
|
||||
#endif /* NEED_DBE_PROTOCOL */
|
||||
|
||||
|
||||
/* TYPEDEFS */
|
||||
|
||||
/* Client data types */
|
||||
|
||||
/* XdbeVisualInfo and XdbeScreenVisualInfo are defined in this file,
|
||||
* "Xdbeproto.h", rather than "Xdbe.h" because the server uses these data
|
||||
* types.
|
||||
*/
|
||||
|
||||
typedef struct
|
||||
{
|
||||
VisualID visual; /* one visual ID that supports double-buffering */
|
||||
int depth; /* depth of visual in bits */
|
||||
int perflevel; /* performance level of visual */
|
||||
}
|
||||
XdbeVisualInfo;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
int count; /* number of items in visual_depth */
|
||||
XdbeVisualInfo *visinfo; /* list of visuals & depths for scrn */
|
||||
}
|
||||
XdbeScreenVisualInfo;
|
||||
|
||||
/* Protocol data types */
|
||||
|
||||
#ifdef NEED_DBE_PROTOCOL
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD32 window B32; /* window */
|
||||
xDbeSwapAction swapAction; /* swap action */
|
||||
CARD8 pad1; /* unused */
|
||||
CARD16 pad2 B16;
|
||||
|
||||
} xDbeSwapInfo;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD32 visualID B32; /* associated visual */
|
||||
CARD8 depth; /* depth of visual */
|
||||
CARD8 perfLevel; /* performance level hint */
|
||||
CARD16 pad1 B16;
|
||||
|
||||
} xDbeVisInfo;
|
||||
#define sz_xDbeVisInfo 8
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD32 n B32; /* number of visual info items in list */
|
||||
|
||||
} xDbeScreenVisInfo; /* followed by n xDbeVisInfo items */
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD32 window B32; /* window */
|
||||
|
||||
} xDbeBufferAttributes;
|
||||
|
||||
|
||||
/* Requests and replies */
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType; /* major-opcode: always codes->major_opcode */
|
||||
CARD8 dbeReqType; /* minor-opcode: always X_DbeGetVersion (0) */
|
||||
CARD16 length B16; /* request length: (2) */
|
||||
CARD8 majorVersion; /* client-major-version */
|
||||
CARD8 minorVersion; /* client-minor-version */
|
||||
CARD16 unused B16; /* unused */
|
||||
|
||||
} xDbeGetVersionReq;
|
||||
#define sz_xDbeGetVersionReq 8
|
||||
|
||||
typedef struct
|
||||
{
|
||||
BYTE type; /* Reply: X_Reply (1) */
|
||||
CARD8 unused; /* unused */
|
||||
CARD16 sequenceNumber B16; /* sequence number */
|
||||
CARD32 length B32; /* reply length: (0) */
|
||||
CARD8 majorVersion; /* server-major-version */
|
||||
CARD8 minorVersion; /* server-minor-version */
|
||||
CARD16 pad1 B16; /* unused */
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
|
||||
} xDbeGetVersionReply;
|
||||
#define sz_xDbeGetVersionReply 32
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType; /* major-opcode: codes->major_opcode */
|
||||
CARD8 dbeReqType; /* X_DbeAllocateBackBufferName (1) */
|
||||
CARD16 length B16; /* request length: (4) */
|
||||
CARD32 window B32; /* window */
|
||||
xDbeBackBuffer buffer B32; /* back buffer name */
|
||||
xDbeSwapAction swapAction; /* swap action hint */
|
||||
CARD8 pad1; /* unused */
|
||||
CARD16 pad2 B16;
|
||||
|
||||
} xDbeAllocateBackBufferNameReq;
|
||||
#define sz_xDbeAllocateBackBufferNameReq 16
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType; /* major-opcode: codes->major_opcode */
|
||||
CARD8 dbeReqType; /* X_DbeDeallocateBackBufferName (2) */
|
||||
CARD16 length B16; /* request length: (2) */
|
||||
xDbeBackBuffer buffer B32; /* back buffer name */
|
||||
|
||||
} xDbeDeallocateBackBufferNameReq;
|
||||
#define sz_xDbeDeallocateBackBufferNameReq 8
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType; /* major-opcode: always codes->major_opcode */
|
||||
CARD8 dbeReqType; /* minor-opcode: always X_DbeSwapBuffers (3) */
|
||||
CARD16 length B16; /* request length: (2+2n) */
|
||||
CARD32 n B32; /* n, number of window/swap action pairs */
|
||||
|
||||
} xDbeSwapBuffersReq; /* followed by n window/swap action pairs */
|
||||
#define sz_xDbeSwapBuffersReq 8
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType; /* major-opcode: always codes->major_opcode */
|
||||
CARD8 dbeReqType; /* minor-opcode: always X_DbeBeginIdom (4) */
|
||||
CARD16 length B16; /* request length: (1) */
|
||||
|
||||
} xDbeBeginIdiomReq;
|
||||
#define sz_xDbeBeginIdiomReq 4
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType; /* major-opcode: always codes->major_opcode */
|
||||
CARD8 dbeReqType; /* minor-opcode: always X_DbeEndIdom (5) */
|
||||
CARD16 length B16; /* request length: (1) */
|
||||
|
||||
} xDbeEndIdiomReq;
|
||||
#define sz_xDbeEndIdiomReq 4
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType; /* always codes->major_opcode */
|
||||
CARD8 dbeReqType; /* always X_DbeGetVisualInfo (6) */
|
||||
CARD16 length B16; /* request length: (2+n) */
|
||||
CARD32 n B32; /* n, number of drawables in list */
|
||||
|
||||
} xDbeGetVisualInfoReq; /* followed by n drawables */
|
||||
#define sz_xDbeGetVisualInfoReq 8
|
||||
|
||||
typedef struct
|
||||
{
|
||||
BYTE type; /* Reply: X_Reply (1) */
|
||||
CARD8 unused; /* unused */
|
||||
CARD16 sequenceNumber B16; /* sequence number */
|
||||
CARD32 length B32; /* reply length */
|
||||
CARD32 m; /* m, number of visual infos in list */
|
||||
CARD32 pad1 B32; /* unused */
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
|
||||
} xDbeGetVisualInfoReply; /* followed by m visual infos */
|
||||
#define sz_xDbeGetVisualInfoReply 32
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType; /* always codes->major_opcode */
|
||||
CARD8 dbeReqType; /* X_DbeGetBackBufferAttributes (7) */
|
||||
CARD16 length B16; /* request length: (2) */
|
||||
xDbeBackBuffer buffer B32; /* back buffer name */
|
||||
|
||||
} xDbeGetBackBufferAttributesReq;
|
||||
#define sz_xDbeGetBackBufferAttributesReq 8
|
||||
|
||||
typedef struct
|
||||
{
|
||||
BYTE type; /* Reply: X_Reply (1) */
|
||||
CARD8 unused; /* unused */
|
||||
CARD16 sequenceNumber B16; /* sequence number */
|
||||
CARD32 length B32; /* reply length: (0) */
|
||||
CARD32 attributes; /* attributes */
|
||||
CARD32 pad1 B32; /* unused */
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
|
||||
} xDbeGetBackBufferAttributesReply;
|
||||
#define sz_xDbeGetBackBufferAttributesReply 32
|
||||
|
||||
#endif /* NEED_DBE_PROTOCOL */
|
||||
|
||||
#endif /* XDBE_PROTO_H */
|
||||
|
||||
128
nx-X11/include/extensions/Xv.h
Normal file
128
nx-X11/include/extensions/Xv.h
Normal file
@@ -0,0 +1,128 @@
|
||||
/***********************************************************
|
||||
Copyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts,
|
||||
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 Digital or MIT not be
|
||||
used in advertising or publicity pertaining to distribution of the
|
||||
software without specific, written prior permission.
|
||||
|
||||
DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
||||
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
||||
DIGITAL 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 XV_H
|
||||
#define XV_H
|
||||
/*
|
||||
** File:
|
||||
**
|
||||
** Xv.h --- Xv shared library and server header file
|
||||
**
|
||||
** Author:
|
||||
**
|
||||
** David Carver (Digital Workstation Engineering/Project Athena)
|
||||
**
|
||||
** Revisions:
|
||||
**
|
||||
** 05.15.91 Carver
|
||||
** - version 2.0 upgrade
|
||||
**
|
||||
** 01.24.91 Carver
|
||||
** - version 1.4 upgrade
|
||||
**
|
||||
*/
|
||||
|
||||
#include <nx-X11/X.h>
|
||||
|
||||
#define XvName "XVideo"
|
||||
#define XvVersion 2
|
||||
#define XvRevision 2
|
||||
|
||||
/* Symbols */
|
||||
|
||||
typedef XID XvPortID;
|
||||
typedef XID XvEncodingID;
|
||||
|
||||
#define XvNone 0
|
||||
|
||||
#define XvInput 0
|
||||
#define XvOutput 1
|
||||
|
||||
#define XvInputMask (1L<<XvInput)
|
||||
#define XvOutputMask (1L<<XvOutput)
|
||||
#define XvVideoMask 0x00000004
|
||||
#define XvStillMask 0x00000008
|
||||
#define XvImageMask 0x00000010
|
||||
|
||||
/* These two are not client viewable */
|
||||
#define XvPixmapMask 0x00010000
|
||||
#define XvWindowMask 0x00020000
|
||||
|
||||
|
||||
#define XvGettable 0x01
|
||||
#define XvSettable 0x02
|
||||
|
||||
#define XvRGB 0
|
||||
#define XvYUV 1
|
||||
|
||||
#define XvPacked 0
|
||||
#define XvPlanar 1
|
||||
|
||||
#define XvTopToBottom 0
|
||||
#define XvBottomToTop 1
|
||||
|
||||
|
||||
/* Events */
|
||||
|
||||
#define XvVideoNotify 0
|
||||
#define XvPortNotify 1
|
||||
#define XvNumEvents 2
|
||||
|
||||
/* Video Notify Reasons */
|
||||
|
||||
#define XvStarted 0
|
||||
#define XvStopped 1
|
||||
#define XvBusy 2
|
||||
#define XvPreempted 3
|
||||
#define XvHardError 4
|
||||
#define XvLastReason 4
|
||||
|
||||
#define XvNumReasons (XvLastReason + 1)
|
||||
|
||||
#define XvStartedMask (1L<<XvStarted)
|
||||
#define XvStoppedMask (1L<<XvStopped)
|
||||
#define XvBusyMask (1L<<XvBusy)
|
||||
#define XvPreemptedMask (1L<<XvPreempted)
|
||||
#define XvHardErrorMask (1L<<XvHardError)
|
||||
|
||||
#define XvAnyReasonMask ((1L<<XvNumReasons) - 1)
|
||||
#define XvNoReasonMask 0
|
||||
|
||||
/* Errors */
|
||||
|
||||
#define XvBadPort 0
|
||||
#define XvBadEncoding 1
|
||||
#define XvBadControl 2
|
||||
#define XvNumErrors 3
|
||||
|
||||
/* Status */
|
||||
|
||||
#define XvBadExtension 1
|
||||
#define XvAlreadyGrabbed 2
|
||||
#define XvInvalidTime 3
|
||||
#define XvBadReply 4
|
||||
#define XvBadAlloc 5
|
||||
|
||||
#endif /* XV_H */
|
||||
|
||||
139
nx-X11/include/extensions/XvMC.h
Normal file
139
nx-X11/include/extensions/XvMC.h
Normal file
@@ -0,0 +1,139 @@
|
||||
|
||||
#ifndef _XVMC_H_
|
||||
#define _XVMC_H_
|
||||
|
||||
#include <nx-X11/X.h>
|
||||
#include <nx-X11/extensions/Xv.h>
|
||||
|
||||
#define XvMCName "XVideo-MotionCompensation"
|
||||
#define XvMCNumEvents 0
|
||||
#define XvMCNumErrors 3
|
||||
#define XvMCVersion 1
|
||||
#define XvMCRevision 1
|
||||
|
||||
#define XvMCBadContext 0
|
||||
#define XvMCBadSurface 1
|
||||
#define XvMCBadSubpicture 2
|
||||
|
||||
/* Chroma formats */
|
||||
#define XVMC_CHROMA_FORMAT_420 0x00000001
|
||||
#define XVMC_CHROMA_FORMAT_422 0x00000002
|
||||
#define XVMC_CHROMA_FORMAT_444 0x00000003
|
||||
|
||||
/* XvMCSurfaceInfo Flags */
|
||||
#define XVMC_OVERLAID_SURFACE 0x00000001
|
||||
#define XVMC_BACKEND_SUBPICTURE 0x00000002
|
||||
#define XVMC_SUBPICTURE_INDEPENDENT_SCALING 0x00000004
|
||||
#define XVMC_INTRA_UNSIGNED 0x00000008
|
||||
|
||||
/* Motion Compensation types */
|
||||
#define XVMC_MOCOMP 0x00000000
|
||||
#define XVMC_IDCT 0x00010000
|
||||
|
||||
#define XVMC_MPEG_1 0x00000001
|
||||
#define XVMC_MPEG_2 0x00000002
|
||||
#define XVMC_H263 0x00000003
|
||||
#define XVMC_MPEG_4 0x00000004
|
||||
|
||||
#define XVMC_MB_TYPE_MOTION_FORWARD 0x02
|
||||
#define XVMC_MB_TYPE_MOTION_BACKWARD 0x04
|
||||
#define XVMC_MB_TYPE_PATTERN 0x08
|
||||
#define XVMC_MB_TYPE_INTRA 0x10
|
||||
|
||||
#define XVMC_PREDICTION_FIELD 0x01
|
||||
#define XVMC_PREDICTION_FRAME 0x02
|
||||
#define XVMC_PREDICTION_DUAL_PRIME 0x03
|
||||
#define XVMC_PREDICTION_16x8 0x02
|
||||
#define XVMC_PREDICTION_4MV 0x04
|
||||
|
||||
#define XVMC_SELECT_FIRST_FORWARD 0x01
|
||||
#define XVMC_SELECT_FIRST_BACKWARD 0x02
|
||||
#define XVMC_SELECT_SECOND_FORWARD 0x04
|
||||
#define XVMC_SELECT_SECOND_BACKWARD 0x08
|
||||
|
||||
#define XVMC_DCT_TYPE_FRAME 0x00
|
||||
#define XVMC_DCT_TYPE_FIELD 0x01
|
||||
|
||||
#define XVMC_TOP_FIELD 0x00000001
|
||||
#define XVMC_BOTTOM_FIELD 0x00000002
|
||||
#define XVMC_FRAME_PICTURE (XVMC_TOP_FIELD | XVMC_BOTTOM_FIELD)
|
||||
|
||||
#define XVMC_SECOND_FIELD 0x00000004
|
||||
|
||||
#define XVMC_DIRECT 0x00000001
|
||||
|
||||
#define XVMC_RENDERING 0x00000001
|
||||
#define XVMC_DISPLAYING 0x00000002
|
||||
|
||||
|
||||
typedef struct {
|
||||
int surface_type_id;
|
||||
int chroma_format;
|
||||
unsigned short max_width;
|
||||
unsigned short max_height;
|
||||
unsigned short subpicture_max_width;
|
||||
unsigned short subpicture_max_height;
|
||||
int mc_type;
|
||||
int flags;
|
||||
} XvMCSurfaceInfo;
|
||||
|
||||
typedef struct {
|
||||
XID context_id;
|
||||
int surface_type_id;
|
||||
unsigned short width;
|
||||
unsigned short height;
|
||||
XvPortID port;
|
||||
int flags;
|
||||
void * privData; /* private to the library */
|
||||
} XvMCContext;
|
||||
|
||||
typedef struct {
|
||||
XID surface_id;
|
||||
XID context_id;
|
||||
int surface_type_id;
|
||||
unsigned short width;
|
||||
unsigned short height;
|
||||
void *privData; /* private to the library */
|
||||
} XvMCSurface;
|
||||
|
||||
typedef struct {
|
||||
XID subpicture_id;
|
||||
XID context_id;
|
||||
int xvimage_id;
|
||||
unsigned short width;
|
||||
unsigned short height;
|
||||
int num_palette_entries;
|
||||
int entry_bytes;
|
||||
char component_order[4];
|
||||
void *privData; /* private to the library */
|
||||
} XvMCSubpicture;
|
||||
|
||||
typedef struct {
|
||||
unsigned int num_blocks;
|
||||
XID context_id;
|
||||
void *privData;
|
||||
short *blocks;
|
||||
} XvMCBlockArray;
|
||||
|
||||
typedef struct {
|
||||
unsigned short x;
|
||||
unsigned short y;
|
||||
unsigned char macroblock_type;
|
||||
unsigned char motion_type;
|
||||
unsigned char motion_vertical_field_select;
|
||||
unsigned char dct_type;
|
||||
short PMV[2][2][2];
|
||||
unsigned int index;
|
||||
unsigned short coded_block_pattern;
|
||||
unsigned short pad0;
|
||||
} XvMCMacroBlock;
|
||||
|
||||
|
||||
typedef struct {
|
||||
unsigned int num_blocks;
|
||||
XID context_id;
|
||||
void *privData;
|
||||
XvMCMacroBlock *macro_blocks;
|
||||
} XvMCMacroBlockArray;
|
||||
|
||||
#endif
|
||||
227
nx-X11/include/extensions/XvMCproto.h
Normal file
227
nx-X11/include/extensions/XvMCproto.h
Normal file
@@ -0,0 +1,227 @@
|
||||
|
||||
#ifndef _XVMCPROTO_H_
|
||||
#define _XVMCPROTO_H_
|
||||
|
||||
#define xvmc_QueryVersion 0
|
||||
#define xvmc_ListSurfaceTypes 1
|
||||
#define xvmc_CreateContext 2
|
||||
#define xvmc_DestroyContext 3
|
||||
#define xvmc_CreateSurface 4
|
||||
#define xvmc_DestroySurface 5
|
||||
#define xvmc_CreateSubpicture 6
|
||||
#define xvmc_DestroySubpicture 7
|
||||
#define xvmc_ListSubpictureTypes 8
|
||||
#define xvmc_GetDRInfo 9
|
||||
#define xvmc_LastRequest xvmc_GetDRInfo
|
||||
|
||||
#define xvmcNumRequest (xvmc_LastRequest + 1)
|
||||
|
||||
|
||||
typedef struct {
|
||||
CARD32 surface_type_id B32;
|
||||
CARD16 chroma_format B16;
|
||||
CARD16 pad0 B16;
|
||||
CARD16 max_width B16;
|
||||
CARD16 max_height B16;
|
||||
CARD16 subpicture_max_width B16;
|
||||
CARD16 subpicture_max_height B16;
|
||||
CARD32 mc_type B32;
|
||||
CARD32 flags B32;
|
||||
} xvmcSurfaceInfo;
|
||||
#define sz_xvmcSurfaceInfo 24;
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvmcReqType;
|
||||
CARD16 length B16;
|
||||
} xvmcQueryVersionReq;
|
||||
#define sz_xvmcQueryVersionReq 4;
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 major B32;
|
||||
CARD32 minor B32;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
} xvmcQueryVersionReply;
|
||||
#define sz_xvmcQueryVersionReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvmcReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 port B32;
|
||||
} xvmcListSurfaceTypesReq;
|
||||
#define sz_xvmcListSurfaceTypesReq 8;
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 num B32;
|
||||
CARD32 padl3 B32;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
} xvmcListSurfaceTypesReply;
|
||||
#define sz_xvmcListSurfaceTypesReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvmcReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 context_id B32;
|
||||
CARD32 port B32;
|
||||
CARD32 surface_type_id B32;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
CARD32 flags B32;
|
||||
} xvmcCreateContextReq;
|
||||
#define sz_xvmcCreateContextReq 24;
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 width_actual B16;
|
||||
CARD16 height_actual B16;
|
||||
CARD32 flags_return B32;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
} xvmcCreateContextReply;
|
||||
#define sz_xvmcCreateContextReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvmcReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 context_id B32;
|
||||
} xvmcDestroyContextReq;
|
||||
#define sz_xvmcDestroyContextReq 8;
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvmcReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 surface_id B32;
|
||||
CARD32 context_id B32;
|
||||
} xvmcCreateSurfaceReq;
|
||||
#define sz_xvmcCreateSurfaceReq 12;
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 padl2 B32;
|
||||
CARD32 padl3 B32;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
} xvmcCreateSurfaceReply;
|
||||
#define sz_xvmcCreateSurfaceReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvmcReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 surface_id B32;
|
||||
} xvmcDestroySurfaceReq;
|
||||
#define sz_xvmcDestroySurfaceReq 8;
|
||||
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvmcReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 subpicture_id B32;
|
||||
CARD32 context_id B32;
|
||||
CARD32 xvimage_id B32;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
} xvmcCreateSubpictureReq;
|
||||
#define sz_xvmcCreateSubpictureReq 20;
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 width_actual B16;
|
||||
CARD16 height_actual B16;
|
||||
CARD16 num_palette_entries B16;
|
||||
CARD16 entry_bytes B16;
|
||||
CARD8 component_order[4];
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
} xvmcCreateSubpictureReply;
|
||||
#define sz_xvmcCreateSubpictureReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvmcReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 subpicture_id B32;
|
||||
} xvmcDestroySubpictureReq;
|
||||
#define sz_xvmcDestroySubpictureReq 8;
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvmcReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 port B32;
|
||||
CARD32 surface_type_id B32;
|
||||
} xvmcListSubpictureTypesReq;
|
||||
#define sz_xvmcListSubpictureTypesReq 12;
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 num B32;
|
||||
CARD32 padl2 B32;
|
||||
CARD32 padl3 B32;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
} xvmcListSubpictureTypesReply;
|
||||
#define sz_xvmcListSubpictureTypesReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvmcReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 port B32;
|
||||
CARD32 shmKey B32;
|
||||
CARD32 magic B32;
|
||||
} xvmcGetDRInfoReq;
|
||||
#define sz_xvmcGetDRInfoReq 16;
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 major B32;
|
||||
CARD32 minor B32;
|
||||
CARD32 patchLevel B32;
|
||||
CARD32 nameLen B32;
|
||||
CARD32 busIDLen B32;
|
||||
CARD32 isLocal B32;
|
||||
} xvmcGetDRInfoReply;
|
||||
#define sz_xvmcGetDRInfoReply 32
|
||||
|
||||
#endif
|
||||
603
nx-X11/include/extensions/Xvproto.h
Normal file
603
nx-X11/include/extensions/Xvproto.h
Normal file
@@ -0,0 +1,603 @@
|
||||
/***********************************************************
|
||||
Copyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts,
|
||||
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 Digital or MIT not be
|
||||
used in advertising or publicity pertaining to distribution of the
|
||||
software without specific, written prior permission.
|
||||
|
||||
DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
||||
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
||||
DIGITAL 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 XVPROTO_H
|
||||
#define XVPROTO_H
|
||||
/*
|
||||
** File:
|
||||
**
|
||||
** Xvproto.h --- Xv protocol header file
|
||||
**
|
||||
** Author:
|
||||
**
|
||||
** David Carver (Digital Workstation Engineering/Project Athena)
|
||||
**
|
||||
** Revisions:
|
||||
**
|
||||
** 11.06.91 Carver
|
||||
** - changed SetPortControl to SetPortAttribute
|
||||
** - changed GetPortControl to GetPortAttribute
|
||||
** - changed QueryBestSize
|
||||
**
|
||||
** 15.05.91 Carver
|
||||
** - version 2.0 upgrade
|
||||
**
|
||||
** 24.01.91 Carver
|
||||
** - version 1.4 upgrade
|
||||
**
|
||||
*/
|
||||
|
||||
#include <nx-X11/Xmd.h>
|
||||
|
||||
/* Symbols: These are undefined at the end of this file to restore the
|
||||
values they have in Xv.h */
|
||||
|
||||
#define XvPortID CARD32
|
||||
#define XvEncodingID CARD32
|
||||
#define ShmSeg CARD32
|
||||
#define VisualID CARD32
|
||||
#define Drawable CARD32
|
||||
#define GContext CARD32
|
||||
#define Time CARD32
|
||||
#define Atom CARD32
|
||||
|
||||
/* Structures */
|
||||
|
||||
typedef struct {
|
||||
INT32 numerator B32;
|
||||
INT32 denominator B32;
|
||||
} xvRational;
|
||||
#define sz_xvRational 8
|
||||
|
||||
typedef struct {
|
||||
XvPortID base_id B32;
|
||||
CARD16 name_size B16;
|
||||
CARD16 num_ports B16;
|
||||
CARD16 num_formats B16;
|
||||
CARD8 type;
|
||||
CARD8 pad;
|
||||
} xvAdaptorInfo;
|
||||
#define sz_xvAdaptorInfo 12
|
||||
|
||||
typedef struct {
|
||||
XvEncodingID encoding B32;
|
||||
CARD16 name_size B16;
|
||||
CARD16 width B16, height B16;
|
||||
xvRational rate;
|
||||
CARD16 pad B16;
|
||||
} xvEncodingInfo;
|
||||
#define sz_xvEncodingInfo (12 + sz_xvRational)
|
||||
|
||||
typedef struct {
|
||||
VisualID visual B32;
|
||||
CARD8 depth;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xvFormat;
|
||||
#define sz_xvFormat 8
|
||||
|
||||
typedef struct {
|
||||
CARD32 flags B32;
|
||||
INT32 min B32;
|
||||
INT32 max B32;
|
||||
CARD32 size B32;
|
||||
} xvAttributeInfo;
|
||||
#define sz_xvAttributeInfo 16
|
||||
|
||||
typedef struct {
|
||||
CARD32 id B32;
|
||||
CARD8 type;
|
||||
CARD8 byte_order;
|
||||
CARD16 pad1 B16;
|
||||
CARD8 guid[16];
|
||||
CARD8 bpp;
|
||||
CARD8 num_planes;
|
||||
CARD16 pad2 B16;
|
||||
CARD8 depth;
|
||||
CARD8 pad3;
|
||||
CARD16 pad4 B16;
|
||||
CARD32 red_mask B32;
|
||||
CARD32 green_mask B32;
|
||||
CARD32 blue_mask B32;
|
||||
CARD8 format;
|
||||
CARD8 pad5;
|
||||
CARD16 pad6 B16;
|
||||
CARD32 y_sample_bits B32;
|
||||
CARD32 u_sample_bits B32;
|
||||
CARD32 v_sample_bits B32;
|
||||
CARD32 horz_y_period B32;
|
||||
CARD32 horz_u_period B32;
|
||||
CARD32 horz_v_period B32;
|
||||
CARD32 vert_y_period B32;
|
||||
CARD32 vert_u_period B32;
|
||||
CARD32 vert_v_period B32;
|
||||
CARD8 comp_order[32];
|
||||
CARD8 scanline_order;
|
||||
CARD8 pad7;
|
||||
CARD16 pad8 B16;
|
||||
CARD32 pad9 B32;
|
||||
CARD32 pad10 B32;
|
||||
} xvImageFormatInfo;
|
||||
#define sz_xvImageFormatInfo 128
|
||||
|
||||
|
||||
/* Requests */
|
||||
|
||||
#define xv_QueryExtension 0
|
||||
#define xv_QueryAdaptors 1
|
||||
#define xv_QueryEncodings 2
|
||||
#define xv_GrabPort 3
|
||||
#define xv_UngrabPort 4
|
||||
#define xv_PutVideo 5
|
||||
#define xv_PutStill 6
|
||||
#define xv_GetVideo 7
|
||||
#define xv_GetStill 8
|
||||
#define xv_StopVideo 9
|
||||
#define xv_SelectVideoNotify 10
|
||||
#define xv_SelectPortNotify 11
|
||||
#define xv_QueryBestSize 12
|
||||
#define xv_SetPortAttribute 13
|
||||
#define xv_GetPortAttribute 14
|
||||
#define xv_QueryPortAttributes 15
|
||||
#define xv_ListImageFormats 16
|
||||
#define xv_QueryImageAttributes 17
|
||||
#define xv_PutImage 18
|
||||
#define xv_ShmPutImage 19
|
||||
#define xv_LastRequest xv_ShmPutImage
|
||||
|
||||
#define xvNumRequests (xv_LastRequest + 1)
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
} xvQueryExtensionReq;
|
||||
#define sz_xvQueryExtensionReq 4
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 window B32;
|
||||
} xvQueryAdaptorsReq;
|
||||
#define sz_xvQueryAdaptorsReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 port B32;
|
||||
} xvQueryEncodingsReq;
|
||||
#define sz_xvQueryEncodingsReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Drawable drawable B32;
|
||||
GContext gc B32;
|
||||
INT16 vid_x B16;
|
||||
INT16 vid_y B16;
|
||||
CARD16 vid_w B16;
|
||||
CARD16 vid_h B16;
|
||||
INT16 drw_x B16;
|
||||
INT16 drw_y B16;
|
||||
CARD16 drw_w B16;
|
||||
CARD16 drw_h B16;
|
||||
} xvPutVideoReq;
|
||||
#define sz_xvPutVideoReq 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Drawable drawable B32;
|
||||
GContext gc B32;
|
||||
INT16 vid_x B16;
|
||||
INT16 vid_y B16;
|
||||
CARD16 vid_w B16;
|
||||
CARD16 vid_h B16;
|
||||
INT16 drw_x B16;
|
||||
INT16 drw_y B16;
|
||||
CARD16 drw_w B16;
|
||||
CARD16 drw_h B16;
|
||||
} xvPutStillReq;
|
||||
#define sz_xvPutStillReq 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Drawable drawable B32;
|
||||
GContext gc B32;
|
||||
INT16 vid_x B16;
|
||||
INT16 vid_y B16;
|
||||
CARD16 vid_w B16;
|
||||
CARD16 vid_h B16;
|
||||
INT16 drw_x B16;
|
||||
INT16 drw_y B16;
|
||||
CARD16 drw_w B16;
|
||||
CARD16 drw_h B16;
|
||||
} xvGetVideoReq;
|
||||
#define sz_xvGetVideoReq 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Drawable drawable B32;
|
||||
GContext gc B32;
|
||||
INT16 vid_x B16;
|
||||
INT16 vid_y B16;
|
||||
CARD16 vid_w B16;
|
||||
CARD16 vid_h B16;
|
||||
INT16 drw_x B16;
|
||||
INT16 drw_y B16;
|
||||
CARD16 drw_w B16;
|
||||
CARD16 drw_h B16;
|
||||
} xvGetStillReq;
|
||||
#define sz_xvGetStillReq 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Time time B32;
|
||||
} xvGrabPortReq;
|
||||
#define sz_xvGrabPortReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Time time B32;
|
||||
} xvUngrabPortReq;
|
||||
#define sz_xvUngrabPortReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
Drawable drawable B32;
|
||||
BOOL onoff;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2;
|
||||
} xvSelectVideoNotifyReq;
|
||||
#define sz_xvSelectVideoNotifyReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
BOOL onoff;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2;
|
||||
} xvSelectPortNotifyReq;
|
||||
#define sz_xvSelectPortNotifyReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Drawable drawable B32;
|
||||
} xvStopVideoReq;
|
||||
#define sz_xvStopVideoReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Atom attribute B32;
|
||||
INT32 value B32;
|
||||
} xvSetPortAttributeReq;
|
||||
#define sz_xvSetPortAttributeReq 16
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Atom attribute B32;
|
||||
} xvGetPortAttributeReq;
|
||||
#define sz_xvGetPortAttributeReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
CARD16 vid_w B16;
|
||||
CARD16 vid_h B16;
|
||||
CARD16 drw_w B16;
|
||||
CARD16 drw_h B16;
|
||||
CARD8 motion;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xvQueryBestSizeReq;
|
||||
#define sz_xvQueryBestSizeReq 20
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
} xvQueryPortAttributesReq;
|
||||
#define sz_xvQueryPortAttributesReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Drawable drawable B32;
|
||||
GContext gc B32;
|
||||
CARD32 id B32;
|
||||
INT16 src_x B16;
|
||||
INT16 src_y B16;
|
||||
CARD16 src_w B16;
|
||||
CARD16 src_h B16;
|
||||
INT16 drw_x B16;
|
||||
INT16 drw_y B16;
|
||||
CARD16 drw_w B16;
|
||||
CARD16 drw_h B16;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
} xvPutImageReq;
|
||||
#define sz_xvPutImageReq 40
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
Drawable drawable B32;
|
||||
GContext gc B32;
|
||||
ShmSeg shmseg B32;
|
||||
CARD32 id B32;
|
||||
CARD32 offset B32;
|
||||
INT16 src_x B16;
|
||||
INT16 src_y B16;
|
||||
CARD16 src_w B16;
|
||||
CARD16 src_h B16;
|
||||
INT16 drw_x B16;
|
||||
INT16 drw_y B16;
|
||||
CARD16 drw_w B16;
|
||||
CARD16 drw_h B16;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
CARD8 send_event;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xvShmPutImageReq;
|
||||
#define sz_xvShmPutImageReq 52
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
XvPortID port B32;
|
||||
} xvListImageFormatsReq;
|
||||
#define sz_xvListImageFormatsReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xvReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 port B32;
|
||||
CARD32 id B32;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
} xvQueryImageAttributesReq;
|
||||
#define sz_xvQueryImageAttributesReq 16
|
||||
|
||||
|
||||
/* Replies */
|
||||
|
||||
typedef struct _QueryExtensionReply {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 version B16;
|
||||
CARD16 revision B16;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} xvQueryExtensionReply;
|
||||
#define sz_xvQueryExtensionReply 32
|
||||
|
||||
typedef struct _QueryAdaptorsReply {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 num_adaptors B16;
|
||||
CARD16 pads3 B16;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} xvQueryAdaptorsReply;
|
||||
#define sz_xvQueryAdaptorsReply 32
|
||||
|
||||
typedef struct _QueryEncodingsReply {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 num_encodings B16;
|
||||
CARD32 padl3 B32;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} xvQueryEncodingsReply;
|
||||
#define sz_xvQueryEncodingsReply 32
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE result;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32; /* 0 */
|
||||
CARD32 padl3 B32;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} xvGrabPortReply;
|
||||
#define sz_xvGrabPortReply 32
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32; /* 0 */
|
||||
INT32 value B32;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} xvGetPortAttributeReply;
|
||||
#define sz_xvGetPortAttributeReply 32
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32; /* 0 */
|
||||
CARD16 actual_width B16;
|
||||
CARD16 actual_height B16;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} xvQueryBestSizeReply;
|
||||
#define sz_xvQueryBestSizeReply 32
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32; /* 0 */
|
||||
CARD32 num_attributes B32;
|
||||
CARD32 text_size B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} xvQueryPortAttributesReply;
|
||||
#define sz_xvQueryPortAttributesReply 32
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 num_formats B32;
|
||||
CARD32 padl4 B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} xvListImageFormatsReply;
|
||||
#define sz_xvListImageFormatsReply 32
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 num_planes B32;
|
||||
CARD32 data_size B32;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} xvQueryImageAttributesReply;
|
||||
#define sz_xvQueryImageAttributesReply 32
|
||||
|
||||
/* DEFINE EVENT STRUCTURE */
|
||||
|
||||
typedef struct {
|
||||
union {
|
||||
struct {
|
||||
BYTE type;
|
||||
BYTE detail;
|
||||
CARD16 sequenceNumber B16;
|
||||
} u;
|
||||
struct {
|
||||
BYTE type;
|
||||
BYTE reason;
|
||||
CARD16 sequenceNumber B16;
|
||||
Time time B32;
|
||||
Drawable drawable B32;
|
||||
XvPortID port B32;
|
||||
CARD32 padl5 B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} videoNotify;
|
||||
struct {
|
||||
BYTE type;
|
||||
BYTE padb1;
|
||||
CARD16 sequenceNumber B16;
|
||||
Time time B32;
|
||||
XvPortID port B32;
|
||||
Atom attribute B32;
|
||||
INT32 value B32;
|
||||
CARD32 padl6 B32;
|
||||
CARD32 padl7 B32;
|
||||
CARD32 padl8 B32;
|
||||
} portNotify;
|
||||
} u;
|
||||
} xvEvent;
|
||||
|
||||
#undef XvPortID
|
||||
#undef XvEncodingID
|
||||
#undef ShmSeg
|
||||
#undef VisualID
|
||||
#undef Drawable
|
||||
#undef GContext
|
||||
#undef Time
|
||||
#undef Atom
|
||||
|
||||
#endif /* XVPROTO_H */
|
||||
|
||||
68
nx-X11/include/extensions/bigreqstr.h
Normal file
68
nx-X11/include/extensions/bigreqstr.h
Normal file
@@ -0,0 +1,68 @@
|
||||
/*
|
||||
|
||||
Copyright 1992, 1998 The Open Group
|
||||
|
||||
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.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of The Open Group shall not be
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from The Open Group.
|
||||
|
||||
*/
|
||||
/* $XFree86$ */
|
||||
|
||||
#ifndef _BIGREQSTR_H_
|
||||
#define _BIGREQSTR_H_
|
||||
|
||||
#define X_BigReqEnable 0
|
||||
|
||||
#define XBigReqNumberEvents 0
|
||||
|
||||
#define XBigReqNumberErrors 0
|
||||
|
||||
#define XBigReqExtensionName "BIG-REQUESTS"
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XBigReqCode */
|
||||
CARD8 brReqType; /* always X_BigReqEnable */
|
||||
CARD16 length B16;
|
||||
} xBigReqEnableReq;
|
||||
#define sz_xBigReqEnableReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 max_request_size B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xBigReqEnableReply;
|
||||
#define sz_xBigReqEnableReply 32
|
||||
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 data;
|
||||
CARD16 zero B16;
|
||||
CARD32 length B32;
|
||||
} xBigReq;
|
||||
|
||||
#endif /* _BIGREQSTR_H_ */
|
||||
51
nx-X11/include/extensions/composite.h
Normal file
51
nx-X11/include/extensions/composite.h
Normal file
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* $Id: composite.h,v 1.2 2004/07/31 06:16:50 anholt Exp $
|
||||
*
|
||||
* Copyright © 2003 Keith Packard
|
||||
*
|
||||
* 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 Keith Packard not be used in
|
||||
* advertising or publicity pertaining to distribution of the software without
|
||||
* specific, written prior permission. Keith Packard makes no
|
||||
* representations about the suitability of this software for any purpose. It
|
||||
* is provided "as is" without express or implied warranty.
|
||||
*
|
||||
* KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||
* EVENT SHALL KEITH 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.
|
||||
*/
|
||||
|
||||
#ifndef _COMPOSITE_H_
|
||||
#define _COMPOSITE_H_
|
||||
|
||||
#include <nx-X11/extensions/xfixeswire.h>
|
||||
|
||||
#define COMPOSITE_NAME "Composite"
|
||||
#define COMPOSITE_MAJOR 0
|
||||
#define COMPOSITE_MINOR 4
|
||||
|
||||
#define CompositeRedirectAutomatic 0
|
||||
#define CompositeRedirectManual 1
|
||||
|
||||
#define X_CompositeQueryVersion 0
|
||||
#define X_CompositeRedirectWindow 1
|
||||
#define X_CompositeRedirectSubwindows 2
|
||||
#define X_CompositeUnredirectWindow 3
|
||||
#define X_CompositeUnredirectSubwindows 4
|
||||
#define X_CompositeCreateRegionFromBorderClip 5
|
||||
#define X_CompositeNameWindowPixmap 6
|
||||
#define X_CompositeGetOverlayWindow 7
|
||||
#define X_CompositeReleaseOverlayWindow 8
|
||||
|
||||
#define CompositeNumberRequests (X_CompositeReleaseOverlayWindow + 1)
|
||||
|
||||
#define CompositeNumberEvents 0
|
||||
|
||||
#endif /* _COMPOSITE_H_ */
|
||||
172
nx-X11/include/extensions/compositeproto.h
Normal file
172
nx-X11/include/extensions/compositeproto.h
Normal file
@@ -0,0 +1,172 @@
|
||||
/*
|
||||
* $Id: compositeproto.h,v 1.2 2004/07/31 06:16:50 anholt Exp $
|
||||
*
|
||||
* Copyright © 2003 Keith Packard
|
||||
*
|
||||
* 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 Keith Packard not be used in
|
||||
* advertising or publicity pertaining to distribution of the software without
|
||||
* specific, written prior permission. Keith Packard makes no
|
||||
* representations about the suitability of this software for any purpose. It
|
||||
* is provided "as is" without express or implied warranty.
|
||||
*
|
||||
* KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||
* EVENT SHALL KEITH 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.
|
||||
*/
|
||||
|
||||
#ifndef _COMPOSITEPROTO_H_
|
||||
#define _COMPOSITEPROTO_H_
|
||||
|
||||
#include <nx-X11/Xmd.h>
|
||||
#include <nx-X11/extensions/composite.h>
|
||||
|
||||
#define Window CARD32
|
||||
#define Region CARD32
|
||||
#define Pixmap CARD32
|
||||
|
||||
/*
|
||||
* requests and replies
|
||||
*/
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 compositeReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 majorVersion B32;
|
||||
CARD32 minorVersion B32;
|
||||
} xCompositeQueryVersionReq;
|
||||
|
||||
#define sz_xCompositeQueryVersionReq 12
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 majorVersion B32;
|
||||
CARD32 minorVersion B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xCompositeQueryVersionReply;
|
||||
|
||||
#define sz_xCompositeQueryVersionReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 compositeReqType;
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
CARD8 update;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xCompositeRedirectWindowReq;
|
||||
|
||||
#define sz_xCompositeRedirectWindowReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 compositeReqType;
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
CARD8 update;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xCompositeRedirectSubwindowsReq;
|
||||
|
||||
#define sz_xCompositeRedirectSubwindowsReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 compositeReqType;
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
CARD8 update;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xCompositeUnredirectWindowReq;
|
||||
|
||||
#define sz_xCompositeUnredirectWindowReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 compositeReqType;
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
CARD8 update;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xCompositeUnredirectSubwindowsReq;
|
||||
|
||||
#define sz_xCompositeUnredirectSubwindowsReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 compositeReqType;
|
||||
CARD16 length B16;
|
||||
Region region B32;
|
||||
Window window B32;
|
||||
} xCompositeCreateRegionFromBorderClipReq;
|
||||
|
||||
#define sz_xCompositeCreateRegionFromBorderClipReq 12
|
||||
|
||||
/* Version 0.2 additions */
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 compositeReqType;
|
||||
CARD16 length;
|
||||
Window window B32;
|
||||
Pixmap pixmap B32;
|
||||
} xCompositeNameWindowPixmapReq;
|
||||
|
||||
#define sz_xCompositeNameWindowPixmapReq 12
|
||||
|
||||
/* Version 0.3 additions */
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 compositeReqType;
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
} xCompositeGetOverlayWindowReq;
|
||||
|
||||
#define sz_xCompositeGetOverlayWindowReq sizeof(xCompositeGetOverlayWindowReq)
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
Window overlayWin B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
} xCompositeGetOverlayWindowReply;
|
||||
|
||||
#define sz_xCompositeGetOverlayWindowReply sizeof(xCompositeGetOverlayWindowReply)
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 compositeReqType;
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
} xCompositeReleaseOverlayWindowReq;
|
||||
|
||||
#define sz_xCompositeReleaseOverlayWindowReq sizeof(xCompositeReleaseOverlayWindowReq)
|
||||
|
||||
#undef Window
|
||||
#undef Region
|
||||
#undef Pixmap
|
||||
|
||||
#endif /* _COMPOSITEPROTO_H_ */
|
||||
149
nx-X11/include/extensions/damageproto.h
Normal file
149
nx-X11/include/extensions/damageproto.h
Normal file
@@ -0,0 +1,149 @@
|
||||
/*
|
||||
* $Id: damageproto.h,v 1.2 2004/07/29 19:29:55 stukreit Exp $
|
||||
*
|
||||
* Copyright © 2003 Keith Packard
|
||||
*
|
||||
* 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 Keith Packard not be used in
|
||||
* advertising or publicity pertaining to distribution of the software without
|
||||
* specific, written prior permission. Keith Packard makes no
|
||||
* representations about the suitability of this software for any purpose. It
|
||||
* is provided "as is" without express or implied warranty.
|
||||
*
|
||||
* KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||
* EVENT SHALL KEITH 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.
|
||||
*/
|
||||
|
||||
#ifndef _DAMAGEPROTO_H_
|
||||
#define _DAMAGEPROTO_H_
|
||||
|
||||
#include <X11/Xmd.h>
|
||||
#include <nx-X11/extensions/xfixesproto.h>
|
||||
#include <nx-X11/extensions/damagewire.h>
|
||||
|
||||
#define Window CARD32
|
||||
#define Drawable CARD32
|
||||
#define Font CARD32
|
||||
#define Pixmap CARD32
|
||||
#define Cursor CARD32
|
||||
#define Colormap CARD32
|
||||
#define GContext CARD32
|
||||
#define Atom CARD32
|
||||
#define VisualID CARD32
|
||||
#define Time CARD32
|
||||
#define KeyCode CARD8
|
||||
#define KeySym CARD32
|
||||
#define Picture CARD32
|
||||
#define Region CARD32
|
||||
#define Damage CARD32
|
||||
|
||||
/************** Version 0 ******************/
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 damageReqType;
|
||||
CARD16 length B16;
|
||||
} xDamageReq;
|
||||
|
||||
/*
|
||||
* requests and replies
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 damageReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 majorVersion B32;
|
||||
CARD32 minorVersion B32;
|
||||
} xDamageQueryVersionReq;
|
||||
|
||||
#define sz_xDamageQueryVersionReq 12
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 majorVersion B32;
|
||||
CARD32 minorVersion B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xDamageQueryVersionReply;
|
||||
|
||||
#define sz_xDamageQueryVersionReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 damageReqType;
|
||||
CARD16 length B16;
|
||||
Damage damage B32;
|
||||
Drawable drawable B32;
|
||||
CARD8 level;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xDamageCreateReq;
|
||||
|
||||
#define sz_xDamageCreateReq 16
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 damageReqType;
|
||||
CARD16 length B16;
|
||||
Damage damage B32;
|
||||
} xDamageDestroyReq;
|
||||
|
||||
#define sz_xDamageDestroyReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 damageReqType;
|
||||
CARD16 length B16;
|
||||
Damage damage B32;
|
||||
Region repair B32;
|
||||
Region parts B32;
|
||||
} xDamageSubtractReq;
|
||||
|
||||
#define sz_xDamageSubtractReq 16
|
||||
|
||||
/* Events */
|
||||
|
||||
#define DamageNotifyMore 0x80
|
||||
|
||||
typedef struct {
|
||||
CARD8 type;
|
||||
CARD8 level;
|
||||
CARD16 sequenceNumber B16;
|
||||
Drawable drawable B32;
|
||||
Damage damage B32;
|
||||
Time timestamp B32;
|
||||
xRectangle area;
|
||||
xRectangle geometry;
|
||||
} xDamageNotifyEvent;
|
||||
|
||||
#undef Damage
|
||||
#undef Region
|
||||
#undef Picture
|
||||
#undef Window
|
||||
#undef Drawable
|
||||
#undef Font
|
||||
#undef Pixmap
|
||||
#undef Cursor
|
||||
#undef Colormap
|
||||
#undef GContext
|
||||
#undef Atom
|
||||
#undef VisualID
|
||||
#undef Time
|
||||
#undef KeyCode
|
||||
#undef KeySym
|
||||
|
||||
#endif /* _DAMAGEPROTO_H_ */
|
||||
57
nx-X11/include/extensions/damagewire.h
Normal file
57
nx-X11/include/extensions/damagewire.h
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
* $Id: damagewire.h,v 1.2 2004/07/29 19:29:55 stukreit Exp $
|
||||
*
|
||||
* Copyright © 2003 Keith Packard
|
||||
*
|
||||
* 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 Keith Packard not be used in
|
||||
* advertising or publicity pertaining to distribution of the software without
|
||||
* specific, written prior permission. Keith Packard makes no
|
||||
* representations about the suitability of this software for any purpose. It
|
||||
* is provided "as is" without express or implied warranty.
|
||||
*
|
||||
* KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||
* EVENT SHALL KEITH 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.
|
||||
*/
|
||||
|
||||
#ifndef _DAMAGEWIRE_H_
|
||||
#define _DAMAGEWIRE_H_
|
||||
|
||||
#define DAMAGE_NAME "DAMAGE"
|
||||
#define DAMAGE_MAJOR 1
|
||||
#define DAMAGE_MINOR 0
|
||||
|
||||
/************* Version 1 ****************/
|
||||
|
||||
/* Constants */
|
||||
#define XDamageReportRawRectangles 0
|
||||
#define XDamageReportDeltaRectangles 1
|
||||
#define XDamageReportBoundingBox 2
|
||||
#define XDamageReportNonEmpty 3
|
||||
|
||||
/* Requests */
|
||||
#define X_DamageQueryVersion 0
|
||||
#define X_DamageCreate 1
|
||||
#define X_DamageDestroy 2
|
||||
#define X_DamageSubtract 3
|
||||
|
||||
#define XDamageNumberRequests (X_DamageSubtract + 1)
|
||||
|
||||
/* Events */
|
||||
#define XDamageNotify 0
|
||||
|
||||
#define XDamageNumberEvents (XDamageNotify + 1)
|
||||
|
||||
/* Errors */
|
||||
#define BadDamage 0
|
||||
#define XDamageNumberErrors (BadDamage + 1)
|
||||
|
||||
#endif /* _DAMAGEWIRE_H_ */
|
||||
65
nx-X11/include/extensions/dpms.h
Normal file
65
nx-X11/include/extensions/dpms.h
Normal file
@@ -0,0 +1,65 @@
|
||||
/*****************************************************************
|
||||
|
||||
Copyright (c) 1996 Digital Equipment Corporation, Maynard, Massachusetts.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
DIGITAL EQUIPMENT CORPORATION BE LIABLE FOR ANY CLAIM, DAMAGES, INCLUDING,
|
||||
BUT NOT LIMITED TO CONSEQUENTIAL OR INCIDENTAL DAMAGES, OR OTHER LIABILITY,
|
||||
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
|
||||
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of Digital Equipment Corporation
|
||||
shall not be used in advertising or otherwise to promote the sale, use or other
|
||||
dealings in this Software without prior written authorization from Digital
|
||||
Equipment Corporation.
|
||||
|
||||
******************************************************************/
|
||||
|
||||
#ifndef _X11_EXTENSIONS_DPMS_H
|
||||
#define _X11_EXTENSIONS_DPMS_H 1
|
||||
|
||||
/*
|
||||
* HISTORY
|
||||
*/
|
||||
/*
|
||||
* @(#)RCSfile: dpms.h,v Revision: 1.1.4.2 (DEC) Date: 1995/11/21 19:34:17
|
||||
*/
|
||||
|
||||
|
||||
#define DPMSModeOn 0
|
||||
#define DPMSModeStandby 1
|
||||
#define DPMSModeSuspend 2
|
||||
#define DPMSModeOff 3
|
||||
|
||||
#ifndef DPMS_SERVER
|
||||
|
||||
#include <nx-X11/X.h>
|
||||
#include <nx-X11/Xmd.h>
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
extern Bool DPMSQueryExtension(Display *, int *, int *);
|
||||
extern Status DPMSGetVersion(Display *, int *, int *);
|
||||
extern Bool DPMSCapable(Display *);
|
||||
extern Status DPMSSetTimeouts(Display *, CARD16, CARD16, CARD16);
|
||||
extern Bool DPMSGetTimeouts(Display *, CARD16 *, CARD16 *, CARD16 *);
|
||||
extern Status DPMSEnable(Display *);
|
||||
extern Status DPMSDisable(Display *);
|
||||
extern Status DPMSForceLevel(Display *, CARD16);
|
||||
extern Status DPMSInfo(Display *, CARD16 *, BOOL *);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
#endif /* !DPMS_SERVER */
|
||||
#endif /* !_X11_EXTENSIONS_DPMS_H */
|
||||
|
||||
185
nx-X11/include/extensions/dpmsstr.h
Normal file
185
nx-X11/include/extensions/dpmsstr.h
Normal file
@@ -0,0 +1,185 @@
|
||||
/*****************************************************************
|
||||
|
||||
Copyright (c) 1996 Digital Equipment Corporation, Maynard, Massachusetts.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
DIGITAL EQUIPMENT CORPORATION BE LIABLE FOR ANY CLAIM, DAMAGES, INCLUDING,
|
||||
BUT NOT LIMITED TO CONSEQUENTIAL OR INCIDENTAL DAMAGES, OR OTHER LIABILITY,
|
||||
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
|
||||
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of Digital Equipment Corporation
|
||||
shall not be used in advertising or otherwise to promote the sale, use or other
|
||||
dealings in this Software without prior written authorization from Digital
|
||||
Equipment Corporation.
|
||||
|
||||
******************************************************************/
|
||||
/* $XFree86$ */
|
||||
|
||||
/*
|
||||
* HISTORY
|
||||
*/
|
||||
/*
|
||||
* @(#)RCSfile: dpmsstr.h,v Revision: 1.1.4.2 (DEC) Date: 1995/11/21 19:34:19
|
||||
*/
|
||||
|
||||
#ifndef _DPMSSTR_H_
|
||||
#define _DPMSSTR_H_
|
||||
|
||||
#define X_DPMSGetVersion 0
|
||||
#define X_DPMSCapable 1
|
||||
#define X_DPMSGetTimeouts 2
|
||||
#define X_DPMSSetTimeouts 3
|
||||
#define X_DPMSEnable 4
|
||||
#define X_DPMSDisable 5
|
||||
#define X_DPMSForceLevel 6
|
||||
#define X_DPMSInfo 7
|
||||
|
||||
#define DPMSNumberEvents 0
|
||||
|
||||
#define DPMSNumberErrors 0
|
||||
|
||||
#define DPMSMajorVersion 1
|
||||
#define DPMSMinorVersion 1
|
||||
|
||||
#define DPMSExtensionName "DPMS"
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always DPMSCode */
|
||||
CARD8 dpmsReqType; /* always X_DPMSGetVersion */
|
||||
CARD16 length B16;
|
||||
CARD16 majorVersion B16;
|
||||
CARD16 minorVersion B16;
|
||||
} xDPMSGetVersionReq;
|
||||
#define sz_xDPMSGetVersionReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 majorVersion B16;
|
||||
CARD16 minorVersion B16;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xDPMSGetVersionReply;
|
||||
#define sz_xDPMSGetVersionReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always DPMSCode */
|
||||
CARD8 dpmsReqType; /* always X_DPMSCapable */
|
||||
CARD16 length B16;
|
||||
} xDPMSCapableReq;
|
||||
#define sz_xDPMSCapableReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
BOOL capable;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
CARD32 pad7 B32;
|
||||
} xDPMSCapableReply;
|
||||
#define sz_xDPMSCapableReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always DPMSCode */
|
||||
CARD8 dpmsReqType; /* always X_DPMSGetTimeouts */
|
||||
CARD16 length B16;
|
||||
} xDPMSGetTimeoutsReq;
|
||||
#define sz_xDPMSGetTimeoutsReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 standby B16;
|
||||
CARD16 suspend B16;
|
||||
CARD16 off B16;
|
||||
CARD16 pad1 B16;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xDPMSGetTimeoutsReply;
|
||||
#define sz_xDPMSGetTimeoutsReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always DPMSCode */
|
||||
CARD8 dpmsReqType; /* always X_DPMSSetTimeouts */
|
||||
CARD16 length B16;
|
||||
CARD16 standby B16;
|
||||
CARD16 suspend B16;
|
||||
CARD16 off B16;
|
||||
CARD16 pad0 B16;
|
||||
} xDPMSSetTimeoutsReq;
|
||||
#define sz_xDPMSSetTimeoutsReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always DPMSCode */
|
||||
CARD8 dpmsReqType; /* always X_DPMSEnable */
|
||||
CARD16 length B16;
|
||||
} xDPMSEnableReq;
|
||||
#define sz_xDPMSEnableReq 4
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always DPMSCode */
|
||||
CARD8 dpmsReqType; /* always X_DPMSDisable */
|
||||
CARD16 length B16;
|
||||
} xDPMSDisableReq;
|
||||
#define sz_xDPMSDisableReq 4
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always DPMSCode */
|
||||
CARD8 dpmsReqType; /* always X_DPMSForceLevel */
|
||||
CARD16 length B16;
|
||||
CARD16 level B16; /* power level requested */
|
||||
CARD16 pad0 B16;
|
||||
} xDPMSForceLevelReq;
|
||||
#define sz_xDPMSForceLevelReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always DPMSCode */
|
||||
CARD8 dpmsReqType; /* always X_DPMSInfo */
|
||||
CARD16 length B16;
|
||||
} xDPMSInfoReq;
|
||||
#define sz_xDPMSInfoReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 power_level B16;
|
||||
BOOL state;
|
||||
CARD8 pad1;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
} xDPMSInfoReply;
|
||||
#define sz_xDPMSInfoReply 32
|
||||
|
||||
#endif /* _DPMSSTR_H_ */
|
||||
46
nx-X11/include/extensions/panoramiXext.h
Normal file
46
nx-X11/include/extensions/panoramiXext.h
Normal file
@@ -0,0 +1,46 @@
|
||||
/*****************************************************************
|
||||
Copyright (c) 1991, 1997 Digital Equipment Corporation, Maynard, Massachusetts.
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
DIGITAL EQUIPMENT CORPORATION BE LIABLE FOR ANY CLAIM, DAMAGES, INCLUDING,
|
||||
BUT NOT LIMITED TO CONSEQUENTIAL OR INCIDENTAL DAMAGES, OR OTHER LIABILITY,
|
||||
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
|
||||
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of Digital Equipment Corporation
|
||||
shall not be used in advertising or otherwise to promote the sale, use or other
|
||||
dealings in this Software without prior written authorization from Digital
|
||||
Equipment Corporation.
|
||||
******************************************************************/
|
||||
/*
|
||||
* PanoramiX definitions
|
||||
*/
|
||||
|
||||
/* THIS IS NOT AN X PROJECT TEAM SPECIFICATION */
|
||||
|
||||
#define PANORAMIX_MAJOR_VERSION 1 /* current version number */
|
||||
#define PANORAMIX_MINOR_VERSION 1
|
||||
|
||||
typedef struct {
|
||||
Window window; /* PanoramiX window - may not exist */
|
||||
int screen;
|
||||
int State; /* PanroamiXOff, PanoramiXOn */
|
||||
int width; /* width of this screen */
|
||||
int height; /* height of this screen */
|
||||
int ScreenCount; /* real physical number of screens */
|
||||
XID eventMask; /* selected events for this client */
|
||||
} XPanoramiXInfo;
|
||||
|
||||
extern XPanoramiXInfo *XPanoramiXAllocInfo (
|
||||
void
|
||||
);
|
||||
190
nx-X11/include/extensions/panoramiXproto.h
Normal file
190
nx-X11/include/extensions/panoramiXproto.h
Normal file
@@ -0,0 +1,190 @@
|
||||
/*****************************************************************
|
||||
Copyright (c) 1991, 1997 Digital Equipment Corporation, Maynard, Massachusetts.
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
DIGITAL EQUIPMENT CORPORATION BE LIABLE FOR ANY CLAIM, DAMAGES, INCLUDING,
|
||||
BUT NOT LIMITED TO CONSEQUENTIAL OR INCIDENTAL DAMAGES, OR OTHER LIABILITY,
|
||||
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR
|
||||
IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of Digital Equipment Corporation
|
||||
shall not be used in advertising or otherwise to promote the sale, use or other
|
||||
dealings in this Software without prior written authorization from Digital
|
||||
Equipment Corporation.
|
||||
******************************************************************/
|
||||
|
||||
/* THIS IS NOT AN X PROJECT TEAM SPECIFICATION */
|
||||
|
||||
#ifndef _PANORAMIXPROTO_H_
|
||||
#define _PANORAMIXPROTO_H_
|
||||
|
||||
#define PANORAMIX_PROTOCOL_NAME "XINERAMA"
|
||||
|
||||
#define X_PanoramiXQueryVersion 0
|
||||
#define X_PanoramiXGetState 1
|
||||
#define X_PanoramiXGetScreenCount 2
|
||||
#define X_PanoramiXGetScreenSize 3
|
||||
|
||||
#define X_XineramaIsActive 4
|
||||
#define X_XineramaQueryScreens 5
|
||||
|
||||
typedef struct _PanoramiXQueryVersion {
|
||||
CARD8 reqType; /* always PanoramiXReqCode */
|
||||
CARD8 panoramiXReqType; /* always X_PanoramiXQueryVersion */
|
||||
CARD16 length B16;
|
||||
CARD8 clientMajor;
|
||||
CARD8 clientMinor;
|
||||
CARD16 unused B16;
|
||||
} xPanoramiXQueryVersionReq;
|
||||
|
||||
#define sz_xPanoramiXQueryVersionReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 type; /* must be X_Reply */
|
||||
CARD8 pad1; /* unused */
|
||||
CARD16 sequenceNumber B16; /* last sequence number */
|
||||
CARD32 length B32; /* 0 */
|
||||
CARD16 majorVersion B16;
|
||||
CARD16 minorVersion B16;
|
||||
CARD32 pad2 B32; /* unused */
|
||||
CARD32 pad3 B32; /* unused */
|
||||
CARD32 pad4 B32; /* unused */
|
||||
CARD32 pad5 B32; /* unused */
|
||||
CARD32 pad6 B32; /* unused */
|
||||
} xPanoramiXQueryVersionReply;
|
||||
|
||||
#define sz_xPanoramiXQueryVersionReply 32
|
||||
|
||||
|
||||
typedef struct _PanoramiXGetState {
|
||||
CARD8 reqType; /* always PanoramiXReqCode */
|
||||
CARD8 panoramiXReqType; /* always X_PanoramiXGetState */
|
||||
CARD16 length B16;
|
||||
CARD32 window B32;
|
||||
} xPanoramiXGetStateReq;
|
||||
#define sz_xPanoramiXGetStateReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type;
|
||||
BYTE state;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 window B32;
|
||||
CARD32 pad1 B32; /* unused */
|
||||
CARD32 pad2 B32; /* unused */
|
||||
CARD32 pad3 B32; /* unused */
|
||||
CARD32 pad4 B32; /* unused */
|
||||
CARD32 pad5 B32; /* unused */
|
||||
} xPanoramiXGetStateReply;
|
||||
|
||||
#define sz_panoramiXGetStateReply 32
|
||||
|
||||
typedef struct _PanoramiXGetScreenCount {
|
||||
CARD8 reqType; /* always PanoramiXReqCode */
|
||||
CARD8 panoramiXReqType; /* always X_PanoramiXGetScreenCount */
|
||||
CARD16 length B16;
|
||||
CARD32 window B32;
|
||||
} xPanoramiXGetScreenCountReq;
|
||||
#define sz_xPanoramiXGetScreenCountReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type;
|
||||
BYTE ScreenCount;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 window B32;
|
||||
CARD32 pad1 B32; /* unused */
|
||||
CARD32 pad2 B32; /* unused */
|
||||
CARD32 pad3 B32; /* unused */
|
||||
CARD32 pad4 B32; /* unused */
|
||||
CARD32 pad5 B32; /* unused */
|
||||
} xPanoramiXGetScreenCountReply;
|
||||
#define sz_panoramiXGetScreenCountReply 32
|
||||
|
||||
typedef struct _PanoramiXGetScreenSize {
|
||||
CARD8 reqType; /* always PanoramiXReqCode */
|
||||
CARD8 panoramiXReqType; /* always X_PanoramiXGetState */
|
||||
CARD16 length B16;
|
||||
CARD32 window B32;
|
||||
CARD32 screen B32;
|
||||
} xPanoramiXGetScreenSizeReq;
|
||||
#define sz_xPanoramiXGetScreenSizeReq 12
|
||||
|
||||
typedef struct {
|
||||
BYTE type;
|
||||
CARD8 pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 width B32;
|
||||
CARD32 height B32;
|
||||
CARD32 window B32;
|
||||
CARD32 screen B32;
|
||||
CARD32 pad2 B32; /* unused */
|
||||
CARD32 pad3 B32; /* unused */
|
||||
} xPanoramiXGetScreenSizeReply;
|
||||
#define sz_panoramiXGetScreenSizeReply 32
|
||||
|
||||
/************ Alternate protocol ******************/
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 panoramiXReqType;
|
||||
CARD16 length B16;
|
||||
} xXineramaIsActiveReq;
|
||||
#define sz_xXineramaIsActiveReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type;
|
||||
CARD8 pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 state B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
} xXineramaIsActiveReply;
|
||||
#define sz_XineramaIsActiveReply 32
|
||||
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 panoramiXReqType;
|
||||
CARD16 length B16;
|
||||
} xXineramaQueryScreensReq;
|
||||
#define sz_xXineramaQueryScreensReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type;
|
||||
CARD8 pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 number B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
} xXineramaQueryScreensReply;
|
||||
#define sz_XineramaQueryScreensReply 32
|
||||
|
||||
typedef struct {
|
||||
INT16 x_org B16;
|
||||
INT16 y_org B16;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
} xXineramaScreenInfo;
|
||||
#define sz_XineramaScreenInfo 8
|
||||
|
||||
#endif
|
||||
198
nx-X11/include/extensions/randr.h
Normal file
198
nx-X11/include/extensions/randr.h
Normal file
@@ -0,0 +1,198 @@
|
||||
/*
|
||||
* Copyright © 2000 Compaq Computer Corporation
|
||||
* Copyright © 2002 Hewlett Packard Company
|
||||
* Copyright © 2006 Intel Corporation
|
||||
* Copyright © 2008 Red Hat, Inc.
|
||||
*
|
||||
* 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 the copyright holders not be used in advertising or
|
||||
* publicity pertaining to distribution of the software without specific,
|
||||
* written prior permission. The copyright holders make no representations
|
||||
* about the suitability of this software for any purpose. It is provided "as
|
||||
* is" without express or implied warranty.
|
||||
*
|
||||
* THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||
* EVENT SHALL THE COPYRIGHT HOLDERS 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.
|
||||
*
|
||||
* Author: Jim Gettys, HP Labs, Hewlett-Packard, Inc.
|
||||
* Keith Packard, Intel Corporation
|
||||
*/
|
||||
|
||||
#ifndef _RANDR_H_
|
||||
#define _RANDR_H_
|
||||
|
||||
typedef unsigned short Rotation;
|
||||
typedef unsigned short SizeID;
|
||||
typedef unsigned short SubpixelOrder;
|
||||
typedef unsigned short Connection;
|
||||
typedef unsigned short XRandrRotation;
|
||||
typedef unsigned short XRandrSizeID;
|
||||
typedef unsigned short XRandrSubpixelOrder;
|
||||
typedef unsigned long XRandrModeFlags;
|
||||
|
||||
#define RANDR_NAME "RANDR"
|
||||
#define RANDR_MAJOR 1
|
||||
#define RANDR_MINOR 5
|
||||
|
||||
#define RRNumberErrors 4
|
||||
#define RRNumberEvents 2
|
||||
#define RRNumberRequests 45
|
||||
|
||||
#define X_RRQueryVersion 0
|
||||
/* we skip 1 to make old clients fail pretty immediately */
|
||||
#define X_RROldGetScreenInfo 1
|
||||
#define X_RR1_0SetScreenConfig 2
|
||||
/* V1.0 apps share the same set screen config request id */
|
||||
#define X_RRSetScreenConfig 2
|
||||
#define X_RROldScreenChangeSelectInput 3
|
||||
/* 3 used to be ScreenChangeSelectInput; deprecated */
|
||||
#define X_RRSelectInput 4
|
||||
#define X_RRGetScreenInfo 5
|
||||
|
||||
/* V1.2 additions */
|
||||
#define X_RRGetScreenSizeRange 6
|
||||
#define X_RRSetScreenSize 7
|
||||
#define X_RRGetScreenResources 8
|
||||
#define X_RRGetOutputInfo 9
|
||||
#define X_RRListOutputProperties 10
|
||||
#define X_RRQueryOutputProperty 11
|
||||
#define X_RRConfigureOutputProperty 12
|
||||
#define X_RRChangeOutputProperty 13
|
||||
#define X_RRDeleteOutputProperty 14
|
||||
#define X_RRGetOutputProperty 15
|
||||
#define X_RRCreateMode 16
|
||||
#define X_RRDestroyMode 17
|
||||
#define X_RRAddOutputMode 18
|
||||
#define X_RRDeleteOutputMode 19
|
||||
#define X_RRGetCrtcInfo 20
|
||||
#define X_RRSetCrtcConfig 21
|
||||
#define X_RRGetCrtcGammaSize 22
|
||||
#define X_RRGetCrtcGamma 23
|
||||
#define X_RRSetCrtcGamma 24
|
||||
|
||||
/* V1.3 additions */
|
||||
#define X_RRGetScreenResourcesCurrent 25
|
||||
#define X_RRSetCrtcTransform 26
|
||||
#define X_RRGetCrtcTransform 27
|
||||
#define X_RRGetPanning 28
|
||||
#define X_RRSetPanning 29
|
||||
#define X_RRSetOutputPrimary 30
|
||||
#define X_RRGetOutputPrimary 31
|
||||
|
||||
#define RRTransformUnit (1L << 0)
|
||||
#define RRTransformScaleUp (1L << 1)
|
||||
#define RRTransformScaleDown (1L << 2)
|
||||
#define RRTransformProjective (1L << 3)
|
||||
|
||||
/* v1.4 */
|
||||
#define X_RRGetProviders 32
|
||||
#define X_RRGetProviderInfo 33
|
||||
#define X_RRSetProviderOffloadSink 34
|
||||
#define X_RRSetProviderOutputSource 35
|
||||
#define X_RRListProviderProperties 36
|
||||
#define X_RRQueryProviderProperty 37
|
||||
#define X_RRConfigureProviderProperty 38
|
||||
#define X_RRChangeProviderProperty 39
|
||||
#define X_RRDeleteProviderProperty 40
|
||||
#define X_RRGetProviderProperty 41
|
||||
|
||||
/* v1.5 */
|
||||
#define X_RRGetMonitors 42
|
||||
#define X_RRSetMonitor 43
|
||||
#define X_RRDeleteMonitor 44
|
||||
|
||||
/* Event selection bits */
|
||||
#define RRScreenChangeNotifyMask (1L << 0)
|
||||
/* V1.2 additions */
|
||||
#define RRCrtcChangeNotifyMask (1L << 1)
|
||||
#define RROutputChangeNotifyMask (1L << 2)
|
||||
#define RROutputPropertyNotifyMask (1L << 3)
|
||||
/* V1.4 additions */
|
||||
#define RRProviderChangeNotifyMask (1L << 4)
|
||||
#define RRProviderPropertyNotifyMask (1L << 5)
|
||||
#define RRResourceChangeNotifyMask (1L << 6)
|
||||
|
||||
/* Event codes */
|
||||
#define RRScreenChangeNotify 0
|
||||
/* V1.2 additions */
|
||||
#define RRNotify 1
|
||||
/* RRNotify Subcodes */
|
||||
#define RRNotify_CrtcChange 0
|
||||
#define RRNotify_OutputChange 1
|
||||
#define RRNotify_OutputProperty 2
|
||||
#define RRNotify_ProviderChange 3
|
||||
#define RRNotify_ProviderProperty 4
|
||||
#define RRNotify_ResourceChange 5
|
||||
/* used in the rotation field; rotation and reflection in 0.1 proto. */
|
||||
#define RR_Rotate_0 1
|
||||
#define RR_Rotate_90 2
|
||||
#define RR_Rotate_180 4
|
||||
#define RR_Rotate_270 8
|
||||
|
||||
/* new in 1.0 protocol, to allow reflection of screen */
|
||||
|
||||
#define RR_Reflect_X 16
|
||||
#define RR_Reflect_Y 32
|
||||
|
||||
#define RRSetConfigSuccess 0
|
||||
#define RRSetConfigInvalidConfigTime 1
|
||||
#define RRSetConfigInvalidTime 2
|
||||
#define RRSetConfigFailed 3
|
||||
|
||||
/* new in 1.2 protocol */
|
||||
|
||||
#define RR_HSyncPositive 0x00000001
|
||||
#define RR_HSyncNegative 0x00000002
|
||||
#define RR_VSyncPositive 0x00000004
|
||||
#define RR_VSyncNegative 0x00000008
|
||||
#define RR_Interlace 0x00000010
|
||||
#define RR_DoubleScan 0x00000020
|
||||
#define RR_CSync 0x00000040
|
||||
#define RR_CSyncPositive 0x00000080
|
||||
#define RR_CSyncNegative 0x00000100
|
||||
#define RR_HSkewPresent 0x00000200
|
||||
#define RR_BCast 0x00000400
|
||||
#define RR_PixelMultiplex 0x00000800
|
||||
#define RR_DoubleClock 0x00001000
|
||||
#define RR_ClockDivideBy2 0x00002000
|
||||
|
||||
#define RR_Connected 0
|
||||
#define RR_Disconnected 1
|
||||
#define RR_UnknownConnection 2
|
||||
|
||||
#define BadRROutput 0
|
||||
#define BadRRCrtc 1
|
||||
#define BadRRMode 2
|
||||
#define BadRRProvider 3
|
||||
|
||||
/* Conventional RandR output properties */
|
||||
|
||||
#define RR_PROPERTY_BACKLIGHT "Backlight"
|
||||
#define RR_PROPERTY_RANDR_EDID "EDID"
|
||||
#define RR_PROPERTY_SIGNAL_FORMAT "SignalFormat"
|
||||
#define RR_PROPERTY_SIGNAL_PROPERTIES "SignalProperties"
|
||||
#define RR_PROPERTY_CONNECTOR_TYPE "ConnectorType"
|
||||
#define RR_PROPERTY_CONNECTOR_NUMBER "ConnectorNumber"
|
||||
#define RR_PROPERTY_COMPATIBILITY_LIST "CompatibilityList"
|
||||
#define RR_PROPERTY_CLONE_LIST "CloneList"
|
||||
#define RR_PROPERTY_BORDER "Border"
|
||||
#define RR_PROPERTY_BORDER_DIMENSIONS "BorderDimensions"
|
||||
#define RR_PROPERTY_GUID "GUID"
|
||||
#define RR_PROPERTY_RANDR_TILE "TILE"
|
||||
|
||||
/* roles this device can carry out */
|
||||
#define RR_Capability_None 0
|
||||
#define RR_Capability_SourceOutput 1
|
||||
#define RR_Capability_SinkOutput 2
|
||||
#define RR_Capability_SourceOffload 4
|
||||
#define RR_Capability_SinkOffload 8
|
||||
|
||||
#endif /* _RANDR_H_ */
|
||||
1170
nx-X11/include/extensions/randrproto.h
Normal file
1170
nx-X11/include/extensions/randrproto.h
Normal file
File diff suppressed because it is too large
Load Diff
211
nx-X11/include/extensions/record.h
Normal file
211
nx-X11/include/extensions/record.h
Normal file
@@ -0,0 +1,211 @@
|
||||
/*
|
||||
$Xorg: record.h,v 1.3 2000/08/18 04:05:46 coskrey Exp $
|
||||
*/
|
||||
|
||||
/***************************************************************************
|
||||
* Copyright 1995 Network Computing Devices
|
||||
*
|
||||
* 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 Network Computing Devices
|
||||
* not be used in advertising or publicity pertaining to distribution
|
||||
* of the software without specific, written prior permission.
|
||||
*
|
||||
* NETWORK COMPUTING DEVICES DISCLAIMs ALL WARRANTIES WITH REGARD TO
|
||||
* THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
* AND FITNESS, IN NO EVENT SHALL NETWORK COMPUTING DEVICES 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.
|
||||
**************************************************************************/
|
||||
/* $XFree86$ */
|
||||
|
||||
#ifndef _RECORD_H_
|
||||
#define _RECORD_H_
|
||||
|
||||
#define XRecordBadContext 0 /* Not a valid RC */
|
||||
|
||||
/*
|
||||
* Constants for arguments of various requests
|
||||
*/
|
||||
#define XRecordFromServerTime 0x01
|
||||
#define XRecordFromClientTime 0x02
|
||||
#define XRecordFromClientSequence 0x04
|
||||
|
||||
#define XRecordCurrentClients 1
|
||||
#define XRecordFutureClients 2
|
||||
#define XRecordAllClients 3
|
||||
|
||||
#define XRecordFromServer 0
|
||||
#define XRecordFromClient 1
|
||||
#define XRecordClientStarted 2
|
||||
#define XRecordClientDied 3
|
||||
#define XRecordStartOfData 4
|
||||
#define XRecordEndOfData 5
|
||||
|
||||
typedef unsigned long XRecordClientSpec;
|
||||
|
||||
#ifndef _XRECORD_SERVER_
|
||||
|
||||
typedef unsigned long XRecordContext;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
unsigned char first;
|
||||
unsigned char last;
|
||||
} XRecordRange8;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
unsigned short first;
|
||||
unsigned short last;
|
||||
} XRecordRange16;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
XRecordRange8 ext_major;
|
||||
XRecordRange16 ext_minor;
|
||||
} XRecordExtRange;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
XRecordRange8 core_requests; /* core X requests */
|
||||
XRecordRange8 core_replies; /* core X replies */
|
||||
XRecordExtRange ext_requests; /* extension requests */
|
||||
XRecordExtRange ext_replies; /* extension replies */
|
||||
XRecordRange8 delivered_events; /* delivered core and ext events */
|
||||
XRecordRange8 device_events; /* all core and ext device events */
|
||||
XRecordRange8 errors; /* core X and ext errors */
|
||||
Bool client_started; /* connection setup reply */
|
||||
Bool client_died; /* notice of client disconnect */
|
||||
} XRecordRange;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
XRecordClientSpec client;
|
||||
unsigned long nranges;
|
||||
XRecordRange **ranges;
|
||||
} XRecordClientInfo;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
Bool enabled;
|
||||
int datum_flags;
|
||||
unsigned long nclients;
|
||||
XRecordClientInfo **client_info;
|
||||
} XRecordState;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
XID id_base;
|
||||
Time server_time;
|
||||
unsigned long client_seq;
|
||||
int category;
|
||||
Bool client_swapped;
|
||||
unsigned char *data;
|
||||
unsigned long data_len; /* in 4-byte units */
|
||||
} XRecordInterceptData;
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
/*********************************************************
|
||||
*
|
||||
* Prototypes
|
||||
*
|
||||
*/
|
||||
|
||||
XID XRecordIdBaseMask(
|
||||
Display *dpy
|
||||
);
|
||||
|
||||
extern Status XRecordQueryVersion(
|
||||
Display* /* dpy */,
|
||||
int* /* cmajor_return */,
|
||||
int* /* cminor_return */
|
||||
);
|
||||
|
||||
extern XRecordContext XRecordCreateContext(
|
||||
Display* /* dpy */,
|
||||
int /* datum_flags */,
|
||||
XRecordClientSpec* /* clients */,
|
||||
int /* nclients */,
|
||||
XRecordRange** /* ranges */,
|
||||
int /* nranges */
|
||||
);
|
||||
|
||||
extern XRecordRange *XRecordAllocRange(
|
||||
void
|
||||
);
|
||||
|
||||
extern Status XRecordRegisterClients(
|
||||
Display* /* dpy */,
|
||||
XRecordContext /* context */,
|
||||
int /* datum_flags */,
|
||||
XRecordClientSpec* /* clients */,
|
||||
int /* nclients */,
|
||||
XRecordRange** /* ranges */,
|
||||
int /* nranges */
|
||||
);
|
||||
|
||||
extern Status XRecordUnregisterClients(
|
||||
Display* /* dpy */,
|
||||
XRecordContext /* context */,
|
||||
XRecordClientSpec* /* clients */,
|
||||
int /* nclients */
|
||||
);
|
||||
|
||||
extern Status XRecordGetContext(
|
||||
Display* /* dpy */,
|
||||
XRecordContext /* context */,
|
||||
XRecordState** /* state_return */
|
||||
);
|
||||
|
||||
extern void XRecordFreeState(
|
||||
XRecordState* /* state */
|
||||
);
|
||||
|
||||
typedef void (*XRecordInterceptProc) (
|
||||
XPointer /* closure */,
|
||||
XRecordInterceptData* /* recorded_data */
|
||||
);
|
||||
|
||||
extern Status XRecordEnableContext(
|
||||
Display* /* dpy */,
|
||||
XRecordContext /* context */,
|
||||
XRecordInterceptProc /* callback */,
|
||||
XPointer /* closure */
|
||||
);
|
||||
|
||||
extern Status XRecordEnableContextAsync(
|
||||
Display* /* dpy */,
|
||||
XRecordContext /* context */,
|
||||
XRecordInterceptProc /* callback */,
|
||||
XPointer /* closure */
|
||||
);
|
||||
|
||||
extern void XRecordProcessReplies(
|
||||
Display* /* dpy */
|
||||
);
|
||||
|
||||
extern void XRecordFreeData(
|
||||
XRecordInterceptData* /* data */
|
||||
);
|
||||
|
||||
extern Status XRecordDisableContext(
|
||||
Display* /* dpy */,
|
||||
XRecordContext /* context */
|
||||
);
|
||||
|
||||
extern Status XRecordFreeContext(
|
||||
Display* /* dpy */,
|
||||
XRecordContext /* context */
|
||||
);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif /* _XRECORD_SERVER_ */
|
||||
|
||||
#endif /* _RECORD_H_ */
|
||||
322
nx-X11/include/extensions/recordstr.h
Normal file
322
nx-X11/include/extensions/recordstr.h
Normal file
@@ -0,0 +1,322 @@
|
||||
/*
|
||||
#ifndef lint
|
||||
$Xorg: recordstr.h,v 1.3 2000/08/18 04:05:46 coskrey Exp $
|
||||
static char sccsid[ ] = "@(#) recordstr.h 1.5 6/5/95 12:37:44";
|
||||
#endif
|
||||
*/
|
||||
|
||||
/***************************************************************************
|
||||
* Copyright 1995 Network Computing Devices
|
||||
*
|
||||
* 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 Network Computing Devices
|
||||
* not be used in advertising or publicity pertaining to distribution
|
||||
* of the software without specific, written prior permission.
|
||||
*
|
||||
* NETWORK COMPUTING DEVICES DISCLAIMs ALL WARRANTIES WITH REGARD TO
|
||||
* THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
* AND FITNESS, IN NO EVENT SHALL NETWORK COMPUTING DEVICES 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.
|
||||
**************************************************************************/
|
||||
/* $XFree86$ */
|
||||
|
||||
#ifndef _RECORDSTR_H_
|
||||
#define _RECORDSTR_H_
|
||||
|
||||
#include <nx-X11/extensions/record.h>
|
||||
|
||||
#define RECORD_NAME "RECORD"
|
||||
#define RECORD_MAJOR_VERSION 1
|
||||
#define RECORD_MINOR_VERSION 13
|
||||
#define RECORD_LOWEST_MAJOR_VERSION 1
|
||||
#define RECORD_LOWEST_MINOR_VERSION 12
|
||||
/* only difference between 1.12 and 1.13 is byte order of device events,
|
||||
which the library doesn't deal with. */
|
||||
|
||||
/*********************************************************
|
||||
*
|
||||
* Protocol request constants
|
||||
*
|
||||
*/
|
||||
#define X_RecordQueryVersion 0 /* First request from client */
|
||||
#define X_RecordCreateContext 1 /* Create client RC */
|
||||
#define X_RecordRegisterClients 2 /* Add to client RC */
|
||||
#define X_RecordUnregisterClients 3 /* Delete from client RC */
|
||||
#define X_RecordGetContext 4 /* Query client RC */
|
||||
#define X_RecordEnableContext 5 /* Enable interception and reporting */
|
||||
#define X_RecordDisableContext 6 /* Disable interception and reporting */
|
||||
#define X_RecordFreeContext 7 /* Free client RC */
|
||||
|
||||
#define RecordNumErrors (XRecordBadContext + 1)
|
||||
#define RecordNumEvents 0L
|
||||
|
||||
#define sz_XRecordRange 32
|
||||
#define sz_XRecordClientInfo 12
|
||||
#define sz_XRecordState 16
|
||||
#define sz_XRecordDatum 32
|
||||
|
||||
|
||||
#define XRecordGlobaldef
|
||||
#define XRecordGlobalref extern
|
||||
|
||||
#define RecordMaxEvent (128L-1L)
|
||||
#define RecordMinDeviceEvent (2L)
|
||||
#define RecordMaxDeviceEvent (6L)
|
||||
#define RecordMaxError (256L-1L)
|
||||
#define RecordMaxCoreRequest (128L-1L)
|
||||
#define RecordMaxExtRequest (256L-1L)
|
||||
#define RecordMinExtRequest (129L-1L)
|
||||
|
||||
#define RECORD_RC CARD32
|
||||
#define RECORD_XIDBASE CARD32
|
||||
#define RECORD_CLIENTSPEC CARD32
|
||||
#define RECORD_ELEMENT_HEADER CARD8
|
||||
|
||||
typedef RECORD_CLIENTSPEC RecordClientSpec, *RecordClientSpecPtr;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 first;
|
||||
CARD8 last;
|
||||
} RECORD_RANGE8;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD16 first B16;
|
||||
CARD16 last B16;
|
||||
} RECORD_RANGE16;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
RECORD_RANGE8 majorCode;
|
||||
RECORD_RANGE16 minorCode;
|
||||
} RECORD_EXTRANGE;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
RECORD_RANGE8 coreRequests;
|
||||
RECORD_RANGE8 coreReplies;
|
||||
RECORD_EXTRANGE extRequests;
|
||||
RECORD_EXTRANGE extReplies;
|
||||
RECORD_RANGE8 deliveredEvents;
|
||||
RECORD_RANGE8 deviceEvents;
|
||||
RECORD_RANGE8 errors;
|
||||
BOOL clientStarted;
|
||||
BOOL clientDied;
|
||||
} RECORDRANGE;
|
||||
#define sz_RECORDRANGE 24
|
||||
|
||||
/* typedef RECORDRANGE xRecordRange, *xRecordRangePtr;
|
||||
#define sz_xRecordRange 24 */
|
||||
|
||||
/* Cannot have structures within structures going over the wire */
|
||||
typedef struct
|
||||
{
|
||||
CARD8 coreRequestsFirst;
|
||||
CARD8 coreRequestsLast;
|
||||
CARD8 coreRepliesFirst;
|
||||
CARD8 coreRepliesLast;
|
||||
CARD8 extRequestsMajorFirst;
|
||||
CARD8 extRequestsMajorLast;
|
||||
CARD16 extRequestsMinorFirst B16;
|
||||
CARD16 extRequestsMinorLast B16;
|
||||
CARD8 extRepliesMajorFirst;
|
||||
CARD8 extRepliesMajorLast;
|
||||
CARD16 extRepliesMinorFirst B16;
|
||||
CARD16 extRepliesMinorLast B16;
|
||||
CARD8 deliveredEventsFirst;
|
||||
CARD8 deliveredEventsLast;
|
||||
CARD8 deviceEventsFirst;
|
||||
CARD8 deviceEventsLast;
|
||||
CARD8 errorsFirst;
|
||||
CARD8 errorsLast;
|
||||
BOOL clientStarted;
|
||||
BOOL clientDied;
|
||||
} xRecordRange;
|
||||
#define sz_xRecordRange 24
|
||||
|
||||
typedef struct
|
||||
{
|
||||
RECORD_CLIENTSPEC clientResource B32;
|
||||
CARD32 nRanges B32;
|
||||
/* LISTofRECORDRANGE */
|
||||
} RECORD_CLIENT_INFO;
|
||||
|
||||
typedef RECORD_CLIENT_INFO xRecordClientInfo;
|
||||
|
||||
/*
|
||||
* Initialize
|
||||
*/
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 recordReqType;
|
||||
CARD16 length B16;
|
||||
CARD16 majorVersion B16;
|
||||
CARD16 minorVersion B16;
|
||||
} xRecordQueryVersionReq;
|
||||
#define sz_xRecordQueryVersionReq 8
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 type;
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 majorVersion B16;
|
||||
CARD16 minorVersion B16;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xRecordQueryVersionReply;
|
||||
#define sz_xRecordQueryVersionReply 32
|
||||
|
||||
/*
|
||||
* Create RC
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType;
|
||||
CARD8 recordReqType;
|
||||
CARD16 length B16;
|
||||
RECORD_RC context B32;
|
||||
RECORD_ELEMENT_HEADER elementHeader;
|
||||
CARD8 pad;
|
||||
CARD16 pad0 B16;
|
||||
CARD32 nClients B32;
|
||||
CARD32 nRanges B32;
|
||||
/* LISTofRECORD_CLIENTSPEC */
|
||||
/* LISTofRECORDRANGE */
|
||||
} xRecordCreateContextReq;
|
||||
#define sz_xRecordCreateContextReq 20
|
||||
|
||||
/*
|
||||
* Add to RC
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType;
|
||||
CARD8 recordReqType;
|
||||
CARD16 length B16;
|
||||
RECORD_RC context B32;
|
||||
RECORD_ELEMENT_HEADER elementHeader;
|
||||
CARD8 pad;
|
||||
CARD16 pad0 B16;
|
||||
CARD32 nClients B32;
|
||||
CARD32 nRanges B32;
|
||||
/* LISTofRECORD_CLIENTSPEC */
|
||||
/* LISTofRECORDRANGE */
|
||||
} xRecordRegisterClientsReq;
|
||||
#define sz_xRecordRegisterClientsReq 20
|
||||
|
||||
/*
|
||||
* Delete from RC
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType;
|
||||
CARD8 recordReqType;
|
||||
CARD16 length B16;
|
||||
RECORD_RC context B32;
|
||||
CARD32 nClients B32;
|
||||
/* LISTofRECORD_CLIENTSPEC */
|
||||
} xRecordUnregisterClientsReq;
|
||||
#define sz_xRecordUnregisterClientsReq 12
|
||||
|
||||
/*
|
||||
* Query RC
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType;
|
||||
CARD8 recordReqType;
|
||||
CARD16 length B16;
|
||||
RECORD_RC context B32;
|
||||
} xRecordGetContextReq;
|
||||
#define sz_xRecordGetContextReq 8
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 type;
|
||||
BOOL enabled;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
RECORD_ELEMENT_HEADER elementHeader;
|
||||
CARD8 pad;
|
||||
CARD16 pad0 B16;
|
||||
CARD32 nClients B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
/* LISTofCLIENT_INFO */ /* intercepted-clients */
|
||||
} xRecordGetContextReply;
|
||||
#define sz_xRecordGetContextReply 32
|
||||
|
||||
/*
|
||||
* Enable data interception
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType;
|
||||
CARD8 recordReqType;
|
||||
CARD16 length B16;
|
||||
RECORD_RC context B32;
|
||||
} xRecordEnableContextReq;
|
||||
#define sz_xRecordEnableContextReq 8
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CARD8 type;
|
||||
CARD8 category;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
RECORD_ELEMENT_HEADER elementHeader;
|
||||
BOOL clientSwapped;
|
||||
CARD16 pad1 B16;
|
||||
RECORD_XIDBASE idBase B32;
|
||||
CARD32 serverTime B32;
|
||||
CARD32 recordedSequenceNumber B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
/* BYTE data; */
|
||||
} xRecordEnableContextReply;
|
||||
#define sz_xRecordEnableContextReply 32
|
||||
|
||||
/*
|
||||
* Disable data interception
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType;
|
||||
CARD8 recordReqType;
|
||||
CARD16 length B16;
|
||||
RECORD_RC context B32;
|
||||
} xRecordDisableContextReq;
|
||||
#define sz_xRecordDisableContextReq 8
|
||||
|
||||
/*
|
||||
* Free RC
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
CARD8 reqType;
|
||||
CARD8 recordReqType;
|
||||
CARD16 length B16;
|
||||
RECORD_RC context B32;
|
||||
} xRecordFreeContextReq;
|
||||
#define sz_xRecordFreeContextReq 8
|
||||
|
||||
#undef RECORD_RC
|
||||
#undef RECORD_XIDBASE
|
||||
#undef RECORD_ELEMENT_HEADER
|
||||
#undef RECORD_CLIENTSPEC
|
||||
|
||||
#endif
|
||||
189
nx-X11/include/extensions/render.h
Normal file
189
nx-X11/include/extensions/render.h
Normal file
@@ -0,0 +1,189 @@
|
||||
/*
|
||||
* $XFree86: xc/include/extensions/render.h,v 1.10 2002/11/06 22:47:49 keithp Exp $
|
||||
*
|
||||
* Copyright © 2000 SuSE, Inc.
|
||||
*
|
||||
* 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 SuSE not be used in advertising or
|
||||
* publicity pertaining to distribution of the software without specific,
|
||||
* written prior permission. SuSE makes no representations about the
|
||||
* suitability of this software for any purpose. It is provided "as is"
|
||||
* without express or implied warranty.
|
||||
*
|
||||
* SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
|
||||
* 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.
|
||||
*
|
||||
* Author: Keith Packard, SuSE, Inc.
|
||||
*/
|
||||
|
||||
#ifndef _RENDER_H_
|
||||
#define _RENDER_H_
|
||||
|
||||
typedef unsigned long Glyph;
|
||||
typedef unsigned long GlyphSet;
|
||||
typedef unsigned long Picture;
|
||||
typedef unsigned long PictFormat;
|
||||
|
||||
#define RENDER_NAME "RENDER"
|
||||
#define RENDER_MAJOR 0
|
||||
#define RENDER_MINOR 10
|
||||
|
||||
#define X_RenderQueryVersion 0
|
||||
#define X_RenderQueryPictFormats 1
|
||||
#define X_RenderQueryPictIndexValues 2 /* 0.7 */
|
||||
#define X_RenderQueryDithers 3
|
||||
#define X_RenderCreatePicture 4
|
||||
#define X_RenderChangePicture 5
|
||||
#define X_RenderSetPictureClipRectangles 6
|
||||
#define X_RenderFreePicture 7
|
||||
#define X_RenderComposite 8
|
||||
#define X_RenderScale 9
|
||||
#define X_RenderTrapezoids 10
|
||||
#define X_RenderTriangles 11
|
||||
#define X_RenderTriStrip 12
|
||||
#define X_RenderTriFan 13
|
||||
#define X_RenderColorTrapezoids 14
|
||||
#define X_RenderColorTriangles 15
|
||||
/* #define X_RenderTransform 16 */
|
||||
#define X_RenderCreateGlyphSet 17
|
||||
#define X_RenderReferenceGlyphSet 18
|
||||
#define X_RenderFreeGlyphSet 19
|
||||
#define X_RenderAddGlyphs 20
|
||||
#define X_RenderAddGlyphsFromPicture 21
|
||||
#define X_RenderFreeGlyphs 22
|
||||
#define X_RenderCompositeGlyphs8 23
|
||||
#define X_RenderCompositeGlyphs16 24
|
||||
#define X_RenderCompositeGlyphs32 25
|
||||
#define X_RenderFillRectangles 26
|
||||
/* 0.5 */
|
||||
#define X_RenderCreateCursor 27
|
||||
/* 0.6 */
|
||||
#define X_RenderSetPictureTransform 28
|
||||
#define X_RenderQueryFilters 29
|
||||
#define X_RenderSetPictureFilter 30
|
||||
/* 0.8 */
|
||||
#define X_RenderCreateAnimCursor 31
|
||||
/* 0.9 */
|
||||
#define X_RenderAddTraps 32
|
||||
/* 0.10 */
|
||||
#define X_RenderCreateSolidFill 33
|
||||
#define X_RenderCreateLinearGradient 34
|
||||
#define X_RenderCreateRadialGradient 35
|
||||
#define X_RenderCreateConicalGradient 36
|
||||
#define RenderNumberRequests (X_RenderCreateConicalGradient+1)
|
||||
|
||||
#define BadPictFormat 0
|
||||
#define BadPicture 1
|
||||
#define BadPictOp 2
|
||||
#define BadGlyphSet 3
|
||||
#define BadGlyph 4
|
||||
#define RenderNumberErrors (BadGlyph+1)
|
||||
|
||||
#define PictTypeIndexed 0
|
||||
#define PictTypeDirect 1
|
||||
|
||||
#define PictOpMinimum 0
|
||||
#define PictOpClear 0
|
||||
#define PictOpSrc 1
|
||||
#define PictOpDst 2
|
||||
#define PictOpOver 3
|
||||
#define PictOpOverReverse 4
|
||||
#define PictOpIn 5
|
||||
#define PictOpInReverse 6
|
||||
#define PictOpOut 7
|
||||
#define PictOpOutReverse 8
|
||||
#define PictOpAtop 9
|
||||
#define PictOpAtopReverse 10
|
||||
#define PictOpXor 11
|
||||
#define PictOpAdd 12
|
||||
#define PictOpSaturate 13
|
||||
#define PictOpMaximum 13
|
||||
|
||||
/*
|
||||
* Operators only available in version 0.2
|
||||
*/
|
||||
#define PictOpDisjointMinimum 0x10
|
||||
#define PictOpDisjointClear 0x10
|
||||
#define PictOpDisjointSrc 0x11
|
||||
#define PictOpDisjointDst 0x12
|
||||
#define PictOpDisjointOver 0x13
|
||||
#define PictOpDisjointOverReverse 0x14
|
||||
#define PictOpDisjointIn 0x15
|
||||
#define PictOpDisjointInReverse 0x16
|
||||
#define PictOpDisjointOut 0x17
|
||||
#define PictOpDisjointOutReverse 0x18
|
||||
#define PictOpDisjointAtop 0x19
|
||||
#define PictOpDisjointAtopReverse 0x1a
|
||||
#define PictOpDisjointXor 0x1b
|
||||
#define PictOpDisjointMaximum 0x1b
|
||||
|
||||
#define PictOpConjointMinimum 0x20
|
||||
#define PictOpConjointClear 0x20
|
||||
#define PictOpConjointSrc 0x21
|
||||
#define PictOpConjointDst 0x22
|
||||
#define PictOpConjointOver 0x23
|
||||
#define PictOpConjointOverReverse 0x24
|
||||
#define PictOpConjointIn 0x25
|
||||
#define PictOpConjointInReverse 0x26
|
||||
#define PictOpConjointOut 0x27
|
||||
#define PictOpConjointOutReverse 0x28
|
||||
#define PictOpConjointAtop 0x29
|
||||
#define PictOpConjointAtopReverse 0x2a
|
||||
#define PictOpConjointXor 0x2b
|
||||
#define PictOpConjointMaximum 0x2b
|
||||
|
||||
#define PolyEdgeSharp 0
|
||||
#define PolyEdgeSmooth 1
|
||||
|
||||
#define PolyModePrecise 0
|
||||
#define PolyModeImprecise 1
|
||||
|
||||
#define CPRepeat (1 << 0)
|
||||
#define CPAlphaMap (1 << 1)
|
||||
#define CPAlphaXOrigin (1 << 2)
|
||||
#define CPAlphaYOrigin (1 << 3)
|
||||
#define CPClipXOrigin (1 << 4)
|
||||
#define CPClipYOrigin (1 << 5)
|
||||
#define CPClipMask (1 << 6)
|
||||
#define CPGraphicsExposure (1 << 7)
|
||||
#define CPSubwindowMode (1 << 8)
|
||||
#define CPPolyEdge (1 << 9)
|
||||
#define CPPolyMode (1 << 10)
|
||||
#define CPDither (1 << 11)
|
||||
#define CPComponentAlpha (1 << 12)
|
||||
#define CPLastBit 12
|
||||
|
||||
/* Filters included in 0.6 */
|
||||
#define FilterNearest "nearest"
|
||||
#define FilterBilinear "bilinear"
|
||||
/* Filters included in 0.10 */
|
||||
#define FilterConvolution "convolution"
|
||||
|
||||
#define FilterFast "fast"
|
||||
#define FilterGood "good"
|
||||
#define FilterBest "best"
|
||||
|
||||
#define FilterAliasNone -1
|
||||
|
||||
/* Subpixel orders included in 0.6 */
|
||||
#define SubPixelUnknown 0
|
||||
#define SubPixelHorizontalRGB 1
|
||||
#define SubPixelHorizontalBGR 2
|
||||
#define SubPixelVerticalRGB 3
|
||||
#define SubPixelVerticalBGR 4
|
||||
#define SubPixelNone 5
|
||||
|
||||
/* Extended repeat attributes included in 0.10 */
|
||||
#define RepeatNone 0
|
||||
#define RepeatNormal 1
|
||||
#define RepeatPad 2
|
||||
#define RepeatReflect 3
|
||||
|
||||
#endif /* _RENDER_H_ */
|
||||
665
nx-X11/include/extensions/renderproto.h
Normal file
665
nx-X11/include/extensions/renderproto.h
Normal file
@@ -0,0 +1,665 @@
|
||||
/*
|
||||
* $XFree86: xc/include/extensions/renderproto.h,v 1.12 2002/09/26 02:56:48 keithp Exp $
|
||||
*
|
||||
* Copyright © 2000 SuSE, Inc.
|
||||
*
|
||||
* 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 SuSE not be used in advertising or
|
||||
* publicity pertaining to distribution of the software without specific,
|
||||
* written prior permission. SuSE makes no representations about the
|
||||
* suitability of this software for any purpose. It is provided "as is"
|
||||
* without express or implied warranty.
|
||||
*
|
||||
* SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
|
||||
* 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.
|
||||
*
|
||||
* Author: Keith Packard, SuSE, Inc.
|
||||
*/
|
||||
|
||||
#ifndef _XRENDERP_H_
|
||||
#define _XRENDERP_H_
|
||||
|
||||
#include <nx-X11/Xmd.h>
|
||||
#include <nx-X11/extensions/render.h>
|
||||
|
||||
#define Window CARD32
|
||||
#define Drawable CARD32
|
||||
#define Font CARD32
|
||||
#define Pixmap CARD32
|
||||
#define Cursor CARD32
|
||||
#define Colormap CARD32
|
||||
#define GContext CARD32
|
||||
#define Atom CARD32
|
||||
#define VisualID CARD32
|
||||
#define Time CARD32
|
||||
#define KeyCode CARD8
|
||||
#define KeySym CARD32
|
||||
|
||||
#define Picture CARD32
|
||||
#define PictFormat CARD32
|
||||
#define Fixed INT32
|
||||
#define Glyphset CARD32
|
||||
#define Glyph CARD32
|
||||
|
||||
/*
|
||||
* data structures
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
CARD16 red B16;
|
||||
CARD16 redMask B16;
|
||||
CARD16 green B16;
|
||||
CARD16 greenMask B16;
|
||||
CARD16 blue B16;
|
||||
CARD16 blueMask B16;
|
||||
CARD16 alpha B16;
|
||||
CARD16 alphaMask B16;
|
||||
} xDirectFormat;
|
||||
|
||||
#define sz_xDirectFormat 16
|
||||
|
||||
typedef struct {
|
||||
PictFormat id B32;
|
||||
CARD8 type;
|
||||
CARD8 depth;
|
||||
CARD16 pad1 B16;
|
||||
xDirectFormat direct;
|
||||
Colormap colormap;
|
||||
} xPictFormInfo;
|
||||
|
||||
#define sz_xPictFormInfo 28
|
||||
|
||||
typedef struct {
|
||||
VisualID visual;
|
||||
PictFormat format;
|
||||
} xPictVisual;
|
||||
|
||||
#define sz_xPictVisual 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 depth;
|
||||
CARD8 pad1;
|
||||
CARD16 nPictVisuals B16;
|
||||
CARD32 pad2 B32;
|
||||
} xPictDepth;
|
||||
|
||||
#define sz_xPictDepth 8
|
||||
|
||||
typedef struct {
|
||||
CARD32 nDepth B32;
|
||||
PictFormat fallback B32;
|
||||
} xPictScreen;
|
||||
|
||||
#define sz_xPictScreen 8
|
||||
|
||||
typedef struct {
|
||||
CARD32 pixel B32;
|
||||
CARD16 red B16;
|
||||
CARD16 green B16;
|
||||
CARD16 blue B16;
|
||||
CARD16 alpha B16;
|
||||
} xIndexValue;
|
||||
|
||||
#define sz_xIndexValue 12
|
||||
|
||||
typedef struct {
|
||||
CARD16 red B16;
|
||||
CARD16 green B16;
|
||||
CARD16 blue B16;
|
||||
CARD16 alpha B16;
|
||||
} xRenderColor;
|
||||
|
||||
#define sz_xRenderColor 8
|
||||
|
||||
typedef struct {
|
||||
Fixed x B32;
|
||||
Fixed y B32;
|
||||
} xPointFixed;
|
||||
|
||||
#define sz_xPointFixed 8
|
||||
|
||||
typedef struct {
|
||||
xPointFixed p1;
|
||||
xPointFixed p2;
|
||||
} xLineFixed;
|
||||
|
||||
#define sz_xLineFixed 16
|
||||
|
||||
typedef struct {
|
||||
xPointFixed p1, p2, p3;
|
||||
} xTriangle;
|
||||
|
||||
#define sz_xTriangle 24
|
||||
|
||||
typedef struct {
|
||||
Fixed top B32;
|
||||
Fixed bottom B32;
|
||||
xLineFixed left;
|
||||
xLineFixed right;
|
||||
} xTrapezoid;
|
||||
|
||||
#define sz_xTrapezoid 40
|
||||
|
||||
typedef struct {
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
INT16 x B16;
|
||||
INT16 y B16;
|
||||
INT16 xOff B16;
|
||||
INT16 yOff B16;
|
||||
} xGlyphInfo;
|
||||
|
||||
#define sz_xGlyphInfo 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 len;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2;
|
||||
INT16 deltax;
|
||||
INT16 deltay;
|
||||
} xGlyphElt;
|
||||
|
||||
#define sz_xGlyphElt 8
|
||||
|
||||
typedef struct {
|
||||
Fixed l, r, y;
|
||||
} xSpanFix;
|
||||
|
||||
#define sz_xSpanFix 12
|
||||
|
||||
typedef struct {
|
||||
xSpanFix top, bot;
|
||||
} xTrap;
|
||||
|
||||
#define sz_xTrap 24
|
||||
|
||||
/*
|
||||
* requests and replies
|
||||
*/
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 majorVersion B32;
|
||||
CARD32 minorVersion B32;
|
||||
} xRenderQueryVersionReq;
|
||||
|
||||
#define sz_xRenderQueryVersionReq 12
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 majorVersion B32;
|
||||
CARD32 minorVersion B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xRenderQueryVersionReply;
|
||||
|
||||
#define sz_xRenderQueryVersionReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
} xRenderQueryPictFormatsReq;
|
||||
|
||||
#define sz_xRenderQueryPictFormatsReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 numFormats B32;
|
||||
CARD32 numScreens B32;
|
||||
CARD32 numDepths B32;
|
||||
CARD32 numVisuals B32;
|
||||
CARD32 numSubpixel B32; /* Version 0.6 */
|
||||
CARD32 pad5 B32;
|
||||
} xRenderQueryPictFormatsReply;
|
||||
|
||||
#define sz_xRenderQueryPictFormatsReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
PictFormat format B32;
|
||||
} xRenderQueryPictIndexValuesReq;
|
||||
|
||||
#define sz_xRenderQueryPictIndexValuesReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 numIndexValues;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
} xRenderQueryPictIndexValuesReply;
|
||||
|
||||
#define sz_xRenderQueryPictIndexValuesReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture pid B32;
|
||||
Drawable drawable B32;
|
||||
PictFormat format B32;
|
||||
CARD32 mask B32;
|
||||
} xRenderCreatePictureReq;
|
||||
|
||||
#define sz_xRenderCreatePictureReq 20
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture picture B32;
|
||||
CARD32 mask B32;
|
||||
} xRenderChangePictureReq;
|
||||
|
||||
#define sz_xRenderChangePictureReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture picture B32;
|
||||
INT16 xOrigin B16;
|
||||
INT16 yOrigin B16;
|
||||
} xRenderSetPictureClipRectanglesReq;
|
||||
|
||||
#define sz_xRenderSetPictureClipRectanglesReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture picture B32;
|
||||
} xRenderFreePictureReq;
|
||||
|
||||
#define sz_xRenderFreePictureReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
CARD8 op;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
Picture src B32;
|
||||
Picture mask B32;
|
||||
Picture dst B32;
|
||||
INT16 xSrc B16;
|
||||
INT16 ySrc B16;
|
||||
INT16 xMask B16;
|
||||
INT16 yMask B16;
|
||||
INT16 xDst B16;
|
||||
INT16 yDst B16;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
} xRenderCompositeReq;
|
||||
|
||||
#define sz_xRenderCompositeReq 36
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture src B32;
|
||||
Picture dst B32;
|
||||
CARD32 colorScale B32;
|
||||
CARD32 alphaScale B32;
|
||||
INT16 xSrc B16;
|
||||
INT16 ySrc B16;
|
||||
INT16 xDst B16;
|
||||
INT16 yDst B16;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
} xRenderScaleReq;
|
||||
|
||||
#define sz_xRenderScaleReq 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
CARD8 op;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
Picture src B32;
|
||||
Picture dst B32;
|
||||
PictFormat maskFormat B32;
|
||||
INT16 xSrc B16;
|
||||
INT16 ySrc B16;
|
||||
} xRenderTrapezoidsReq;
|
||||
|
||||
#define sz_xRenderTrapezoidsReq 24
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
CARD8 op;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
Picture src B32;
|
||||
Picture dst B32;
|
||||
PictFormat maskFormat B32;
|
||||
INT16 xSrc B16;
|
||||
INT16 ySrc B16;
|
||||
} xRenderTrianglesReq;
|
||||
|
||||
#define sz_xRenderTrianglesReq 24
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
CARD8 op;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
Picture src B32;
|
||||
Picture dst B32;
|
||||
PictFormat maskFormat B32;
|
||||
INT16 xSrc B16;
|
||||
INT16 ySrc B16;
|
||||
} xRenderTriStripReq;
|
||||
|
||||
#define sz_xRenderTriStripReq 24
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
CARD8 op;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
Picture src B32;
|
||||
Picture dst B32;
|
||||
PictFormat maskFormat B32;
|
||||
INT16 xSrc B16;
|
||||
INT16 ySrc B16;
|
||||
} xRenderTriFanReq;
|
||||
|
||||
#define sz_xRenderTriFanReq 24
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Glyphset gsid B32;
|
||||
PictFormat format B32;
|
||||
} xRenderCreateGlyphSetReq;
|
||||
|
||||
#define sz_xRenderCreateGlyphSetReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Glyphset gsid B32;
|
||||
Glyphset existing B32;
|
||||
} xRenderReferenceGlyphSetReq;
|
||||
|
||||
#define sz_xRenderReferenceGlyphSetReq 24
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Glyphset glyphset B32;
|
||||
} xRenderFreeGlyphSetReq;
|
||||
|
||||
#define sz_xRenderFreeGlyphSetReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Glyphset glyphset B32;
|
||||
CARD32 nglyphs;
|
||||
} xRenderAddGlyphsReq;
|
||||
|
||||
#define sz_xRenderAddGlyphsReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Glyphset glyphset B32;
|
||||
} xRenderFreeGlyphsReq;
|
||||
|
||||
#define sz_xRenderFreeGlyphsReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
CARD8 op;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
Picture src B32;
|
||||
Picture dst B32;
|
||||
PictFormat maskFormat B32;
|
||||
Glyphset glyphset B32;
|
||||
INT16 xSrc B16;
|
||||
INT16 ySrc B16;
|
||||
} xRenderCompositeGlyphsReq, xRenderCompositeGlyphs8Req,
|
||||
xRenderCompositeGlyphs16Req, xRenderCompositeGlyphs32Req;
|
||||
|
||||
#define sz_xRenderCompositeGlyphs8Req 28
|
||||
#define sz_xRenderCompositeGlyphs16Req 28
|
||||
#define sz_xRenderCompositeGlyphs32Req 28
|
||||
|
||||
/* 0.1 and higher */
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
CARD8 op;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
Picture dst B32;
|
||||
xRenderColor color;
|
||||
} xRenderFillRectanglesReq;
|
||||
|
||||
#define sz_xRenderFillRectanglesReq 20
|
||||
|
||||
/* 0.5 and higher */
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Cursor cid B32;
|
||||
Picture src B32;
|
||||
CARD16 x B16;
|
||||
CARD16 y B16;
|
||||
} xRenderCreateCursorReq;
|
||||
|
||||
#define sz_xRenderCreateCursorReq 16
|
||||
|
||||
/* 0.6 and higher */
|
||||
|
||||
/*
|
||||
* This can't use an array because 32-bit values may be in bitfields
|
||||
*/
|
||||
typedef struct {
|
||||
Fixed matrix11 B32;
|
||||
Fixed matrix12 B32;
|
||||
Fixed matrix13 B32;
|
||||
Fixed matrix21 B32;
|
||||
Fixed matrix22 B32;
|
||||
Fixed matrix23 B32;
|
||||
Fixed matrix31 B32;
|
||||
Fixed matrix32 B32;
|
||||
Fixed matrix33 B32;
|
||||
} xRenderTransform;
|
||||
|
||||
#define sz_xRenderTransform 36
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture picture B32;
|
||||
xRenderTransform transform;
|
||||
} xRenderSetPictureTransformReq;
|
||||
|
||||
#define sz_xRenderSetPictureTransformReq 44
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Drawable drawable B32;
|
||||
} xRenderQueryFiltersReq;
|
||||
|
||||
#define sz_xRenderQueryFiltersReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 numAliases B32; /* LISTofCARD16 */
|
||||
CARD32 numFilters B32; /* LISTofSTRING8 */
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xRenderQueryFiltersReply;
|
||||
|
||||
#define sz_xRenderQueryFiltersReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture picture B32;
|
||||
CARD16 nbytes B16; /* number of bytes in name */
|
||||
CARD16 pad B16;
|
||||
} xRenderSetPictureFilterReq;
|
||||
|
||||
#define sz_xRenderSetPictureFilterReq 12
|
||||
|
||||
/* 0.8 and higher */
|
||||
|
||||
typedef struct {
|
||||
Cursor cursor B32;
|
||||
CARD32 delay B32;
|
||||
} xAnimCursorElt;
|
||||
|
||||
#define sz_xAnimCursorElt 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Cursor cid B32;
|
||||
} xRenderCreateAnimCursorReq;
|
||||
|
||||
#define sz_xRenderCreateAnimCursorReq 8
|
||||
|
||||
/* 0.9 and higher */
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture picture;
|
||||
INT16 xOff B16;
|
||||
INT16 yOff B16;
|
||||
} xRenderAddTrapsReq;
|
||||
|
||||
#define sz_xRenderAddTrapsReq 12
|
||||
|
||||
/* 0.10 and higher */
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture pid B32;
|
||||
xRenderColor color;
|
||||
} xRenderCreateSolidFillReq;
|
||||
|
||||
#define sz_xRenderCreateSolidFillReq 16
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture pid B32;
|
||||
xPointFixed p1;
|
||||
xPointFixed p2;
|
||||
CARD32 nStops;
|
||||
} xRenderCreateLinearGradientReq;
|
||||
|
||||
#define sz_xRenderCreateLinearGradientReq 28
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture pid B32;
|
||||
xPointFixed inner;
|
||||
xPointFixed outer;
|
||||
Fixed inner_radius;
|
||||
Fixed outer_radius;
|
||||
CARD32 nStops;
|
||||
} xRenderCreateRadialGradientReq;
|
||||
|
||||
#define sz_xRenderCreateRadialGradientReq 36
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 renderReqType;
|
||||
CARD16 length B16;
|
||||
Picture pid B32;
|
||||
xPointFixed center;
|
||||
Fixed angle; /* in degrees */
|
||||
CARD32 nStops;
|
||||
} xRenderCreateConicalGradientReq;
|
||||
|
||||
#define sz_xRenderCreateConicalGradientReq 24
|
||||
|
||||
#undef Window
|
||||
#undef Drawable
|
||||
#undef Font
|
||||
#undef Pixmap
|
||||
#undef Cursor
|
||||
#undef Colormap
|
||||
#undef GContext
|
||||
#undef Atom
|
||||
#undef VisualID
|
||||
#undef Time
|
||||
#undef KeyCode
|
||||
#undef KeySym
|
||||
|
||||
#undef Picture
|
||||
#undef PictFormat
|
||||
#undef Fixed
|
||||
#undef Glyphset
|
||||
#undef Glyph
|
||||
|
||||
#endif /* _XRENDERP_H_ */
|
||||
52
nx-X11/include/extensions/saver.h
Normal file
52
nx-X11/include/extensions/saver.h
Normal file
@@ -0,0 +1,52 @@
|
||||
/*
|
||||
Copyright (c) 1992 X Consortium
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of the X Consortium shall not be
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from the X Consortium.
|
||||
*
|
||||
* Author: Keith Packard, MIT X Consortium
|
||||
*/
|
||||
|
||||
#ifndef _SAVER_H_
|
||||
#define _SAVER_H_
|
||||
|
||||
#define ScreenSaverName "MIT-SCREEN-SAVER"
|
||||
#define ScreenSaverPropertyName "_MIT_SCREEN_SAVER_ID"
|
||||
|
||||
#define ScreenSaverNotifyMask 0x00000001
|
||||
#define ScreenSaverCycleMask 0x00000002
|
||||
|
||||
#define ScreenSaverMajorVersion 1
|
||||
#define ScreenSaverMinorVersion 1
|
||||
|
||||
#define ScreenSaverOff 0
|
||||
#define ScreenSaverOn 1
|
||||
#define ScreenSaverCycle 2
|
||||
#define ScreenSaverDisabled 3
|
||||
|
||||
#define ScreenSaverBlanked 0
|
||||
#define ScreenSaverInternal 1
|
||||
#define ScreenSaverExternal 2
|
||||
|
||||
#define ScreenSaverNotify 0
|
||||
#define ScreenSaverNumberEvents 1
|
||||
|
||||
#endif /* _SAVER_H_ */
|
||||
175
nx-X11/include/extensions/saverproto.h
Normal file
175
nx-X11/include/extensions/saverproto.h
Normal file
@@ -0,0 +1,175 @@
|
||||
/*
|
||||
Copyright (c) 1992 X Consortium
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of the X Consortium shall not be
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from the X Consortium.
|
||||
*
|
||||
* Author: Keith Packard, MIT X Consortium
|
||||
*/
|
||||
|
||||
#ifndef _SAVERPROTO_H_
|
||||
#define _SAVERPROTO_H_
|
||||
|
||||
#include <nx-X11/extensions/saver.h>
|
||||
|
||||
#define Window CARD32
|
||||
#define Drawable CARD32
|
||||
#define Font CARD32
|
||||
#define Pixmap CARD32
|
||||
#define Cursor CARD32
|
||||
#define Colormap CARD32
|
||||
#define GContext CARD32
|
||||
#define Atom CARD32
|
||||
#define VisualID CARD32
|
||||
#define Time CARD32
|
||||
#define KeyCode CARD8
|
||||
#define KeySym CARD32
|
||||
|
||||
#define X_ScreenSaverQueryVersion 0
|
||||
|
||||
typedef struct _ScreenSaverQueryVersion {
|
||||
CARD8 reqType; /* always ScreenSaverReqCode */
|
||||
CARD8 saverReqType; /* always X_ScreenSaverQueryVersion */
|
||||
CARD16 length B16;
|
||||
CARD8 clientMajor;
|
||||
CARD8 clientMinor;
|
||||
CARD16 unused B16;
|
||||
} xScreenSaverQueryVersionReq;
|
||||
#define sz_xScreenSaverQueryVersionReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 type; /* X_Reply */
|
||||
CARD8 unused; /* not used */
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 majorVersion B16; /* major version of protocol */
|
||||
CARD16 minorVersion B16; /* minor version of protocol */
|
||||
CARD32 pad0 B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
} xScreenSaverQueryVersionReply;
|
||||
#define sz_xScreenSaverQueryVersionReply 32
|
||||
|
||||
#define X_ScreenSaverQueryInfo 1
|
||||
|
||||
typedef struct _ScreenSaverQueryInfo {
|
||||
CARD8 reqType; /* always ScreenSaverReqCode */
|
||||
CARD8 saverReqType; /* always X_ScreenSaverQueryInfo */
|
||||
CARD16 length B16;
|
||||
Drawable drawable B32;
|
||||
} xScreenSaverQueryInfoReq;
|
||||
#define sz_xScreenSaverQueryInfoReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 type; /* X_Reply */
|
||||
BYTE state; /* Off, On */
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
Window window B32;
|
||||
CARD32 tilOrSince B32;
|
||||
CARD32 idle B32;
|
||||
CARD32 eventMask B32;
|
||||
BYTE kind; /* Blanked, Internal, External */
|
||||
CARD8 pad0;
|
||||
CARD16 pad1 B16;
|
||||
CARD32 pad2 B32;
|
||||
} xScreenSaverQueryInfoReply;
|
||||
#define sz_xScreenSaverQueryInfoReply 32
|
||||
|
||||
#define X_ScreenSaverSelectInput 2
|
||||
|
||||
typedef struct _ScreenSaverSelectInput {
|
||||
CARD8 reqType; /* always ScreenSaverReqCode */
|
||||
CARD8 saverReqType; /* always X_ScreenSaverSelectInput */
|
||||
CARD16 length B16;
|
||||
Drawable drawable B32;
|
||||
CARD32 eventMask B32;
|
||||
} xScreenSaverSelectInputReq;
|
||||
#define sz_xScreenSaverSelectInputReq 12
|
||||
|
||||
#define X_ScreenSaverSetAttributes 3
|
||||
|
||||
typedef struct _ScreenSaverSetAttributes {
|
||||
CARD8 reqType; /* always ScreenSaverReqCode */
|
||||
CARD8 saverReqType; /* always X_ScreenSaverSetAttributes */
|
||||
CARD16 length B16;
|
||||
Drawable drawable B32;
|
||||
INT16 x B16, y B16;
|
||||
CARD16 width B16, height B16, borderWidth B16;
|
||||
BYTE c_class;
|
||||
CARD8 depth;
|
||||
VisualID visualID B32;
|
||||
CARD32 mask B32;
|
||||
} xScreenSaverSetAttributesReq;
|
||||
#define sz_xScreenSaverSetAttributesReq 28
|
||||
|
||||
#define X_ScreenSaverUnsetAttributes 4
|
||||
|
||||
typedef struct _ScreenSaverUnsetAttributes {
|
||||
CARD8 reqType; /* always ScreenSaverReqCode */
|
||||
CARD8 saverReqType; /* always X_ScreenSaverUnsetAttributes */
|
||||
CARD16 length B16;
|
||||
Drawable drawable B32;
|
||||
} xScreenSaverUnsetAttributesReq;
|
||||
#define sz_xScreenSaverUnsetAttributesReq 8
|
||||
|
||||
#define X_ScreenSaverSuspend 5
|
||||
|
||||
typedef struct _ScreenSaverSuspend {
|
||||
CARD8 reqType;
|
||||
CARD8 saverReqType;
|
||||
CARD16 length B16;
|
||||
Bool suspend B32;
|
||||
} xScreenSaverSuspendReq;
|
||||
#define sz_xScreenSaverSuspendReq 8
|
||||
|
||||
typedef struct _ScreenSaverNotify {
|
||||
CARD8 type; /* always eventBase + ScreenSaverNotify */
|
||||
BYTE state; /* off, on, cycle */
|
||||
CARD16 sequenceNumber B16;
|
||||
Time timestamp B32;
|
||||
Window root B32;
|
||||
Window window B32; /* screen saver window */
|
||||
BYTE kind; /* blanked, internal, external */
|
||||
BYTE forced;
|
||||
CARD16 pad0 B16;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
} xScreenSaverNotifyEvent;
|
||||
#define sz_xScreenSaverNotifyEvent 32
|
||||
|
||||
#undef Window
|
||||
#undef Drawable
|
||||
#undef Font
|
||||
#undef Pixmap
|
||||
#undef Cursor
|
||||
#undef Colormap
|
||||
#undef GContext
|
||||
#undef Atom
|
||||
#undef VisualID
|
||||
#undef Time
|
||||
#undef KeyCode
|
||||
#undef KeySym
|
||||
|
||||
#endif /* _SAVERPROTO_H_ */
|
||||
189
nx-X11/include/extensions/security.h
Normal file
189
nx-X11/include/extensions/security.h
Normal file
@@ -0,0 +1,189 @@
|
||||
/*
|
||||
Copyright 1996, 1998 The Open Group
|
||||
|
||||
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.
|
||||
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||||
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of The Open Group shall
|
||||
not be used in advertising or otherwise to promote the sale, use or
|
||||
other dealings in this Software without prior written authorization
|
||||
from The Open Group.
|
||||
*/
|
||||
|
||||
#ifndef _SECURITY_H
|
||||
#define _SECURITY_H
|
||||
|
||||
#define _XAUTH_STRUCT_ONLY
|
||||
#include <nx-X11/Xauth.h>
|
||||
|
||||
/* constants that server, library, and application all need */
|
||||
|
||||
#define XSecurityNumberEvents 1
|
||||
#define XSecurityNumberErrors 2
|
||||
#define XSecurityBadAuthorization 0
|
||||
#define XSecurityBadAuthorizationProtocol 1
|
||||
|
||||
/* trust levels */
|
||||
#define XSecurityClientTrusted 0
|
||||
#define XSecurityClientUntrusted 1
|
||||
|
||||
/* authorization attribute masks */
|
||||
#define XSecurityTimeout (1<<0)
|
||||
#define XSecurityTrustLevel (1<<1)
|
||||
#define XSecurityGroup (1<<2)
|
||||
#define XSecurityEventMask (1<<3)
|
||||
#define XSecurityAllAuthorizationAttributes \
|
||||
(XSecurityTimeout | XSecurityTrustLevel | XSecurityGroup | XSecurityEventMask)
|
||||
|
||||
/* event masks */
|
||||
#define XSecurityAuthorizationRevokedMask (1<<0)
|
||||
#define XSecurityAllEventMasks XSecurityAuthorizationRevokedMask
|
||||
|
||||
/* event offsets */
|
||||
#define XSecurityAuthorizationRevoked 0
|
||||
|
||||
#define XSecurityAuthorizationName "XC-QUERY-SECURITY-1"
|
||||
#define XSecurityAuthorizationNameLen 19
|
||||
|
||||
|
||||
#ifndef _SECURITY_SERVER
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
Status XSecurityQueryExtension (
|
||||
Display *dpy,
|
||||
int *major_version_return,
|
||||
int *minor_version_return);
|
||||
|
||||
Xauth *XSecurityAllocXauth(void);
|
||||
|
||||
void XSecurityFreeXauth(Xauth *auth);
|
||||
|
||||
/* type for returned auth ids */
|
||||
typedef unsigned long XSecurityAuthorization;
|
||||
|
||||
typedef struct {
|
||||
unsigned int timeout;
|
||||
unsigned int trust_level;
|
||||
XID group;
|
||||
long event_mask;
|
||||
} XSecurityAuthorizationAttributes;
|
||||
|
||||
Xauth *XSecurityGenerateAuthorization(
|
||||
Display *dpy,
|
||||
Xauth *auth_in,
|
||||
unsigned long valuemask,
|
||||
XSecurityAuthorizationAttributes *attributes,
|
||||
XSecurityAuthorization *auth_id_return);
|
||||
|
||||
Status XSecurityRevokeAuthorization(
|
||||
Display *dpy,
|
||||
XSecurityAuthorization auth_id);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
typedef struct {
|
||||
int type; /* event base + XSecurityAuthorizationRevoked */
|
||||
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 */
|
||||
XSecurityAuthorization auth_id; /* revoked authorization id */
|
||||
} XSecurityAuthorizationRevokedEvent;
|
||||
|
||||
#else /* _SECURITY_SERVER */
|
||||
|
||||
#include "input.h" /* for DeviceIntPtr */
|
||||
#include "property.h" /* for PropertyPtr */
|
||||
#include "pixmap.h" /* for DrawablePtr */
|
||||
#include "resource.h" /* for RESTYPE */
|
||||
|
||||
/* resource type to pass in LookupIDByType for authorizations */
|
||||
extern RESTYPE SecurityAuthorizationResType;
|
||||
|
||||
/* this is what we store for an authorization */
|
||||
typedef struct {
|
||||
XID id; /* resource ID */
|
||||
CARD32 timeout; /* how long to live in seconds after refcnt == 0 */
|
||||
unsigned int trustLevel; /* trusted/untrusted */
|
||||
XID group; /* see embedding extension */
|
||||
unsigned int refcnt; /* how many clients connected with this auth */
|
||||
unsigned int secondsRemaining; /* overflow time amount for >49 days */
|
||||
OsTimerPtr timer; /* timer for this auth */
|
||||
struct _OtherClients *eventClients; /* clients wanting events */
|
||||
} SecurityAuthorizationRec, *SecurityAuthorizationPtr;
|
||||
|
||||
/* The following callback is called when a GenerateAuthorization request
|
||||
* is processed to sanity check the group argument. The call data will
|
||||
* be a pointer to a SecurityValidateGroupInfoRec (below).
|
||||
* Functions registered on this callback are expected to examine the
|
||||
* group and set the valid field to TRUE if they recognize the group as a
|
||||
* legitimate group. If they don't recognize it, they should not change the
|
||||
* valid field.
|
||||
*/
|
||||
extern CallbackListPtr SecurityValidateGroupCallback;
|
||||
typedef struct {
|
||||
XID group; /* the group that was sent in GenerateAuthorization */
|
||||
Bool valid; /* did anyone recognize it? if so, set to TRUE */
|
||||
} SecurityValidateGroupInfoRec;
|
||||
|
||||
/* Proc vectors for untrusted clients, swapped and unswapped versions.
|
||||
* These are the same as the normal proc vectors except that extensions
|
||||
* that haven't declared themselves secure will have ProcBadRequest plugged
|
||||
* in for their major opcode dispatcher. This prevents untrusted clients
|
||||
* from guessing extension major opcodes and using the extension even though
|
||||
* the extension can't be listed or queried.
|
||||
*/
|
||||
extern int (*UntrustedProcVector[256])(ClientPtr client);
|
||||
extern int (*SwappedUntrustedProcVector[256])(ClientPtr client);
|
||||
|
||||
extern Bool SecurityCheckDeviceAccess(ClientPtr client, DeviceIntPtr dev,
|
||||
Bool fromRequest);
|
||||
|
||||
extern void SecurityAudit(char *format, ...);
|
||||
|
||||
extern int XSecurityOptions(int argc, char **argv, int i);
|
||||
|
||||
/* Give this value or higher to the -audit option to get security messages */
|
||||
#define SECURITY_AUDIT_LEVEL 4
|
||||
|
||||
extern void SecurityCensorImage(
|
||||
ClientPtr client,
|
||||
RegionPtr pVisibleRegion,
|
||||
long widthBytesLine,
|
||||
DrawablePtr pDraw,
|
||||
int x, int y, int w, int h,
|
||||
unsigned int format,
|
||||
char * pBuf);
|
||||
|
||||
#define SecurityAllowOperation 0
|
||||
#define SecurityIgnoreOperation 1
|
||||
#define SecurityErrorOperation 2
|
||||
|
||||
char
|
||||
SecurityCheckPropertyAccess(
|
||||
ClientPtr client,
|
||||
WindowPtr pWin,
|
||||
ATOM propertyName,
|
||||
Mask access_mode);
|
||||
|
||||
#define SECURITY_POLICY_FILE_VERSION "version-1"
|
||||
|
||||
char **SecurityGetSitePolicyStrings(int *n);
|
||||
|
||||
#endif /* _SECURITY_SERVER */
|
||||
|
||||
#endif /* _SECURITY_H */
|
||||
114
nx-X11/include/extensions/securstr.h
Normal file
114
nx-X11/include/extensions/securstr.h
Normal file
@@ -0,0 +1,114 @@
|
||||
/*
|
||||
Copyright 1996, 1998 The Open Group
|
||||
|
||||
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.
|
||||
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||||
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of The Open Group shall
|
||||
not be used in advertising or otherwise to promote the sale, use or
|
||||
other dealings in this Software without prior written authorization
|
||||
from The Open Group.
|
||||
*/
|
||||
|
||||
#ifndef _SECURSTR_H
|
||||
#define _SECURSTR_H
|
||||
|
||||
#include <nx-X11/extensions/security.h>
|
||||
|
||||
#define SECURITY_EXTENSION_NAME "SECURITY"
|
||||
#define SECURITY_MAJOR_VERSION 1
|
||||
#define SECURITY_MINOR_VERSION 0
|
||||
|
||||
#define X_SecurityQueryVersion 0
|
||||
#define X_SecurityGenerateAuthorization 1
|
||||
#define X_SecurityRevokeAuthorization 2
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 securityReqType;
|
||||
CARD16 length B16;
|
||||
CARD16 majorVersion B16;
|
||||
CARD16 minorVersion B16;
|
||||
} xSecurityQueryVersionReq;
|
||||
#define sz_xSecurityQueryVersionReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 type;
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 majorVersion B16;
|
||||
CARD16 minorVersion B16;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xSecurityQueryVersionReply;
|
||||
#define sz_xSecurityQueryVersionReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 securityReqType;
|
||||
CARD16 length B16;
|
||||
CARD16 nbytesAuthProto B16;
|
||||
CARD16 nbytesAuthData B16;
|
||||
CARD32 valueMask B32;
|
||||
/* auth protocol name padded to 4 bytes */
|
||||
/* auth protocol data padded to 4 bytes */
|
||||
/* list of CARD32 values, if any */
|
||||
} xSecurityGenerateAuthorizationReq;
|
||||
#define sz_xSecurityGenerateAuthorizationReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 type;
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 authId B32;
|
||||
CARD16 dataLength B16;
|
||||
CARD16 pad1 B16;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xSecurityGenerateAuthorizationReply;
|
||||
#define sz_xSecurityGenerateAuthorizationReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 securityReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 authId B32;
|
||||
} xSecurityRevokeAuthorizationReq;
|
||||
#define sz_xSecurityRevokeAuthorizationReq 8
|
||||
|
||||
typedef struct _xSecurityAuthorizationRevokedEvent {
|
||||
BYTE type;
|
||||
BYTE detail;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 authId B32;
|
||||
CARD32 pad0 B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xSecurityAuthorizationRevokedEvent;
|
||||
#define sz_xSecurityAuthorizationRevokedEvent 32
|
||||
|
||||
#endif /* _SECURSTR_H */
|
||||
55
nx-X11/include/extensions/shapeconst.h
Normal file
55
nx-X11/include/extensions/shapeconst.h
Normal file
@@ -0,0 +1,55 @@
|
||||
/************************************************************
|
||||
|
||||
Copyright 1989, 1998 The Open Group
|
||||
|
||||
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.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of The Open Group shall not be
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from The Open Group.
|
||||
|
||||
********************************************************/
|
||||
|
||||
#ifndef _SHAPECONST_H_
|
||||
#define _SHAPECONST_H_
|
||||
|
||||
/*
|
||||
* Protocol requests constants and alignment values
|
||||
* These would really be in SHAPE's X.h and Xproto.h equivalents
|
||||
*/
|
||||
|
||||
#define SHAPENAME "SHAPE"
|
||||
|
||||
#define SHAPE_MAJOR_VERSION 1 /* current version numbers */
|
||||
#define SHAPE_MINOR_VERSION 1
|
||||
|
||||
#define ShapeSet 0
|
||||
#define ShapeUnion 1
|
||||
#define ShapeIntersect 2
|
||||
#define ShapeSubtract 3
|
||||
#define ShapeInvert 4
|
||||
|
||||
#define ShapeBounding 0
|
||||
#define ShapeClip 1
|
||||
#define ShapeInput 2
|
||||
|
||||
#define ShapeNotifyMask (1L << 0)
|
||||
#define ShapeNotify 0
|
||||
|
||||
#define ShapeNumberEvents (ShapeNotify + 1)
|
||||
|
||||
#endif /* _SHAPECONST_H_ */
|
||||
467
nx-X11/include/extensions/sync.h
Normal file
467
nx-X11/include/extensions/sync.h
Normal file
@@ -0,0 +1,467 @@
|
||||
/*
|
||||
|
||||
Copyright 1991, 1993, 1994, 1998 The Open Group
|
||||
|
||||
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.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of The Open Group shall not be
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from The Open Group.
|
||||
|
||||
*/
|
||||
|
||||
/***********************************************************
|
||||
Copyright 1991,1993 by Digital Equipment Corporation, Maynard, Massachusetts,
|
||||
and Olivetti Research Limited, Cambridge, England.
|
||||
|
||||
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 Digital or Olivetti
|
||||
not be used in advertising or publicity pertaining to distribution of the
|
||||
software without specific, written prior permission.
|
||||
|
||||
DIGITAL AND OLIVETTI DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
|
||||
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||
FITNESS, IN NO EVENT SHALL THEY 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 _SYNC_H_
|
||||
#define _SYNC_H_
|
||||
|
||||
#include <nx-X11/Xfuncproto.h>
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
#define SYNC_NAME "SYNC"
|
||||
|
||||
#define SYNC_MAJOR_VERSION 3
|
||||
#define SYNC_MINOR_VERSION 0
|
||||
|
||||
#define X_SyncInitialize 0
|
||||
#define X_SyncListSystemCounters 1
|
||||
#define X_SyncCreateCounter 2
|
||||
#define X_SyncSetCounter 3
|
||||
#define X_SyncChangeCounter 4
|
||||
#define X_SyncQueryCounter 5
|
||||
#define X_SyncDestroyCounter 6
|
||||
#define X_SyncAwait 7
|
||||
#define X_SyncCreateAlarm 8
|
||||
#define X_SyncChangeAlarm 9
|
||||
#define X_SyncQueryAlarm 10
|
||||
#define X_SyncDestroyAlarm 11
|
||||
#define X_SyncSetPriority 12
|
||||
#define X_SyncGetPriority 13
|
||||
|
||||
#define XSyncCounterNotify 0
|
||||
#define XSyncAlarmNotify 1
|
||||
#define XSyncAlarmNotifyMask (1L << XSyncAlarmNotify)
|
||||
|
||||
#define XSyncNumberEvents 2L
|
||||
|
||||
#define XSyncBadCounter 0L
|
||||
#define XSyncBadAlarm 1L
|
||||
#define XSyncNumberErrors (XSyncBadAlarm + 1)
|
||||
|
||||
/*
|
||||
* Flags for Alarm Attributes
|
||||
*/
|
||||
#define XSyncCACounter (1L<<0)
|
||||
#define XSyncCAValueType (1L<<1)
|
||||
#define XSyncCAValue (1L<<2)
|
||||
#define XSyncCATestType (1L<<3)
|
||||
#define XSyncCADelta (1L<<4)
|
||||
#define XSyncCAEvents (1L<<5)
|
||||
|
||||
/*
|
||||
* Constants for the value_type argument of various requests
|
||||
*/
|
||||
typedef enum {
|
||||
XSyncAbsolute,
|
||||
XSyncRelative
|
||||
} XSyncValueType;
|
||||
|
||||
/*
|
||||
* Alarm Test types
|
||||
*/
|
||||
typedef enum {
|
||||
XSyncPositiveTransition,
|
||||
XSyncNegativeTransition,
|
||||
XSyncPositiveComparison,
|
||||
XSyncNegativeComparison
|
||||
} XSyncTestType;
|
||||
|
||||
/*
|
||||
* Alarm state constants
|
||||
*/
|
||||
typedef enum {
|
||||
XSyncAlarmActive,
|
||||
XSyncAlarmInactive,
|
||||
XSyncAlarmDestroyed
|
||||
} XSyncAlarmState;
|
||||
|
||||
|
||||
typedef XID XSyncCounter;
|
||||
typedef XID XSyncAlarm;
|
||||
typedef struct _XSyncValue {
|
||||
int hi;
|
||||
unsigned int lo;
|
||||
} XSyncValue;
|
||||
|
||||
/*
|
||||
* Macros/functions for manipulating 64 bit values
|
||||
*/
|
||||
|
||||
/* have to put these prototypes before the corresponding macro definitions */
|
||||
|
||||
extern void XSyncIntToValue(
|
||||
XSyncValue* /*pv*/,
|
||||
int /*i*/
|
||||
);
|
||||
|
||||
extern void XSyncIntsToValue(
|
||||
XSyncValue* /*pv*/,
|
||||
unsigned int /*l*/,
|
||||
int /*h*/
|
||||
);
|
||||
|
||||
extern Bool XSyncValueGreaterThan(
|
||||
XSyncValue /*a*/,
|
||||
XSyncValue /*b*/
|
||||
);
|
||||
|
||||
extern Bool XSyncValueLessThan(
|
||||
XSyncValue /*a*/,
|
||||
XSyncValue /*b*/
|
||||
);
|
||||
|
||||
extern Bool XSyncValueGreaterOrEqual(
|
||||
XSyncValue /*a*/,
|
||||
XSyncValue /*b*/
|
||||
);
|
||||
|
||||
extern Bool XSyncValueLessOrEqual(
|
||||
XSyncValue /*a*/,
|
||||
XSyncValue /*b*/
|
||||
);
|
||||
|
||||
extern Bool XSyncValueEqual(
|
||||
XSyncValue /*a*/,
|
||||
XSyncValue /*b*/
|
||||
);
|
||||
|
||||
extern Bool XSyncValueIsNegative(
|
||||
XSyncValue /*v*/
|
||||
);
|
||||
|
||||
extern Bool XSyncValueIsZero(
|
||||
XSyncValue /*a*/
|
||||
);
|
||||
|
||||
extern Bool XSyncValueIsPositive(
|
||||
XSyncValue /*v*/
|
||||
);
|
||||
|
||||
extern unsigned int XSyncValueLow32(
|
||||
XSyncValue /*v*/
|
||||
);
|
||||
|
||||
extern int XSyncValueHigh32(
|
||||
XSyncValue /*v*/
|
||||
);
|
||||
|
||||
extern void XSyncValueAdd(
|
||||
XSyncValue* /*presult*/,
|
||||
XSyncValue /*a*/,
|
||||
XSyncValue /*b*/,
|
||||
int* /*poverflow*/
|
||||
);
|
||||
|
||||
extern void XSyncValueSubtract(
|
||||
XSyncValue* /*presult*/,
|
||||
XSyncValue /*a*/,
|
||||
XSyncValue /*b*/,
|
||||
int* /*poverflow*/
|
||||
);
|
||||
|
||||
extern void XSyncMaxValue(
|
||||
XSyncValue* /*pv*/
|
||||
);
|
||||
|
||||
extern void XSyncMinValue(
|
||||
XSyncValue* /*pv*/
|
||||
);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
/* The _XSync macros below are for library internal use only. They exist
|
||||
* so that if we have to make a fix, we can change it in this one place
|
||||
* and have both the macro and function variants inherit the fix.
|
||||
*/
|
||||
|
||||
#define _XSyncIntToValue(pv, i) ((pv)->hi=((i<0)?~0:0),(pv)->lo=(i))
|
||||
#define _XSyncIntsToValue(pv, l, h) ((pv)->lo = (l), (pv)->hi = (h))
|
||||
#define _XSyncValueGreaterThan(a, b)\
|
||||
((a).hi>(b).hi || ((a).hi==(b).hi && (a).lo>(b).lo))
|
||||
#define _XSyncValueLessThan(a, b)\
|
||||
((a).hi<(b).hi || ((a).hi==(b).hi && (a).lo<(b).lo))
|
||||
#define _XSyncValueGreaterOrEqual(a, b)\
|
||||
((a).hi>(b).hi || ((a).hi==(b).hi && (a).lo>=(b).lo))
|
||||
#define _XSyncValueLessOrEqual(a, b)\
|
||||
((a).hi<(b).hi || ((a).hi==(b).hi && (a).lo<=(b).lo))
|
||||
#define _XSyncValueEqual(a, b) ((a).lo==(b).lo && (a).hi==(b).hi)
|
||||
#define _XSyncValueIsNegative(v) (((v).hi & 0x80000000) ? 1 : 0)
|
||||
#define _XSyncValueIsZero(a) ((a).lo==0 && (a).hi==0)
|
||||
#define _XSyncValueIsPositive(v) (((v).hi & 0x80000000) ? 0 : 1)
|
||||
#define _XSyncValueLow32(v) ((v).lo)
|
||||
#define _XSyncValueHigh32(v) ((v).hi)
|
||||
#define _XSyncValueAdd(presult,a,b,poverflow) {\
|
||||
int t = (a).lo;\
|
||||
Bool signa = XSyncValueIsNegative(a);\
|
||||
Bool signb = XSyncValueIsNegative(b);\
|
||||
((presult)->lo = (a).lo + (b).lo);\
|
||||
((presult)->hi = (a).hi + (b).hi);\
|
||||
if (t>(presult)->lo) (presult)->hi++;\
|
||||
*poverflow = ((signa == signb) && !(signa == XSyncValueIsNegative(*presult)));\
|
||||
}
|
||||
#define _XSyncValueSubtract(presult,a,b,poverflow) {\
|
||||
int t = (a).lo;\
|
||||
Bool signa = XSyncValueIsNegative(a);\
|
||||
Bool signb = XSyncValueIsNegative(b);\
|
||||
((presult)->lo = (a).lo - (b).lo);\
|
||||
((presult)->hi = (a).hi - (b).hi);\
|
||||
if (t>(presult)->lo) (presult)->hi--;\
|
||||
*poverflow = ((signa == signb) && !(signa == XSyncValueIsNegative(*presult)));\
|
||||
}
|
||||
#define _XSyncMaxValue(pv) ((pv)->hi = 0x7fffffff, (pv)->lo = 0xffffffff)
|
||||
#define _XSyncMinValue(pv) ((pv)->hi = 0x80000000, (pv)->lo = 0)
|
||||
|
||||
/*
|
||||
* These are the publically usable macros. If you want the function version
|
||||
* of one of these, just #undef the macro to uncover the function.
|
||||
* (This is the same convention that the ANSI C library uses.)
|
||||
*/
|
||||
|
||||
#define XSyncIntToValue(pv, i) _XSyncIntToValue(pv, i)
|
||||
#define XSyncIntsToValue(pv, l, h) _XSyncIntsToValue(pv, l, h)
|
||||
#define XSyncValueGreaterThan(a, b) _XSyncValueGreaterThan(a, b)
|
||||
#define XSyncValueLessThan(a, b) _XSyncValueLessThan(a, b)
|
||||
#define XSyncValueGreaterOrEqual(a, b) _XSyncValueGreaterOrEqual(a, b)
|
||||
#define XSyncValueLessOrEqual(a, b) _XSyncValueLessOrEqual(a, b)
|
||||
#define XSyncValueEqual(a, b) _XSyncValueEqual(a, b)
|
||||
#define XSyncValueIsNegative(v) _XSyncValueIsNegative(v)
|
||||
#define XSyncValueIsZero(a) _XSyncValueIsZero(a)
|
||||
#define XSyncValueIsPositive(v) _XSyncValueIsPositive(v)
|
||||
#define XSyncValueLow32(v) _XSyncValueLow32(v)
|
||||
#define XSyncValueHigh32(v) _XSyncValueHigh32(v)
|
||||
#define XSyncValueAdd(presult,a,b,poverflow) _XSyncValueAdd(presult,a,b,poverflow)
|
||||
#define XSyncValueSubtract(presult,a,b,poverflow) _XSyncValueSubtract(presult,a,b,poverflow)
|
||||
#define XSyncMaxValue(pv) _XSyncMaxValue(pv)
|
||||
#define XSyncMinValue(pv) _XSyncMinValue(pv)
|
||||
|
||||
#ifndef _SYNC_SERVER
|
||||
|
||||
typedef struct _XSyncSystemCounter {
|
||||
char *name; /* null-terminated name of system counter */
|
||||
XSyncCounter counter; /* counter id of this system counter */
|
||||
XSyncValue resolution; /* resolution of this system counter */
|
||||
} XSyncSystemCounter;
|
||||
|
||||
|
||||
typedef struct {
|
||||
XSyncCounter counter; /* counter to trigger on */
|
||||
XSyncValueType value_type; /* absolute/relative */
|
||||
XSyncValue wait_value; /* value to compare counter to */
|
||||
XSyncTestType test_type; /* pos/neg comparison/transtion */
|
||||
} XSyncTrigger;
|
||||
|
||||
typedef struct {
|
||||
XSyncTrigger trigger; /* trigger for await */
|
||||
XSyncValue event_threshold; /* send event if past threshold */
|
||||
} XSyncWaitCondition;
|
||||
|
||||
|
||||
typedef struct {
|
||||
XSyncTrigger trigger;
|
||||
XSyncValue delta;
|
||||
Bool events;
|
||||
XSyncAlarmState state;
|
||||
} XSyncAlarmAttributes;
|
||||
|
||||
/*
|
||||
* Events
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
int type; /* event base + XSyncCounterNotify */
|
||||
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 */
|
||||
XSyncCounter counter; /* counter involved in await */
|
||||
XSyncValue wait_value; /* value being waited for */
|
||||
XSyncValue counter_value; /* counter value when this event was sent */
|
||||
Time time; /* milliseconds */
|
||||
int count; /* how many more events to come */
|
||||
Bool destroyed; /* True if counter was destroyed */
|
||||
} XSyncCounterNotifyEvent;
|
||||
|
||||
typedef struct {
|
||||
int type; /* event base + XSyncCounterNotify */
|
||||
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 */
|
||||
XSyncAlarm alarm; /* alarm that triggered */
|
||||
XSyncValue counter_value; /* value that triggered the alarm */
|
||||
XSyncValue alarm_value; /* test value of trigger in alarm */
|
||||
Time time; /* milliseconds */
|
||||
XSyncAlarmState state; /* new state of alarm */
|
||||
} XSyncAlarmNotifyEvent;
|
||||
|
||||
/*
|
||||
* Errors
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
int type;
|
||||
Display *display; /* Display the event was read from */
|
||||
XSyncAlarm alarm; /* resource id */
|
||||
unsigned long serial; /* serial number of failed request */
|
||||
unsigned char error_code; /* error base + XSyncBadAlarm */
|
||||
unsigned char request_code; /* Major op-code of failed request */
|
||||
unsigned char minor_code; /* Minor op-code of failed request */
|
||||
} XSyncAlarmError;
|
||||
|
||||
typedef struct {
|
||||
int type;
|
||||
Display *display; /* Display the event was read from */
|
||||
XSyncCounter counter; /* resource id */
|
||||
unsigned long serial; /* serial number of failed request */
|
||||
unsigned char error_code; /* error base + XSyncBadCounter */
|
||||
unsigned char request_code; /* Major op-code of failed request */
|
||||
unsigned char minor_code; /* Minor op-code of failed request */
|
||||
} XSyncCounterError;
|
||||
|
||||
/*
|
||||
* Prototypes
|
||||
*/
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
extern Status XSyncQueryExtension(
|
||||
Display* /*dpy*/,
|
||||
int* /*event_base_return*/,
|
||||
int* /*error_base_return*/
|
||||
);
|
||||
|
||||
extern Status XSyncInitialize(
|
||||
Display* /*dpy*/,
|
||||
int* /*major_version_return*/,
|
||||
int* /*minor_version_return*/
|
||||
);
|
||||
|
||||
extern XSyncSystemCounter *XSyncListSystemCounters(
|
||||
Display* /*dpy*/,
|
||||
int* /*n_counters_return*/
|
||||
);
|
||||
|
||||
extern void XSyncFreeSystemCounterList(
|
||||
XSyncSystemCounter* /*list*/
|
||||
);
|
||||
|
||||
extern XSyncCounter XSyncCreateCounter(
|
||||
Display* /*dpy*/,
|
||||
XSyncValue /*initial_value*/
|
||||
);
|
||||
|
||||
extern Status XSyncSetCounter(
|
||||
Display* /*dpy*/,
|
||||
XSyncCounter /*counter*/,
|
||||
XSyncValue /*value*/
|
||||
);
|
||||
|
||||
extern Status XSyncChangeCounter(
|
||||
Display* /*dpy*/,
|
||||
XSyncCounter /*counter*/,
|
||||
XSyncValue /*value*/
|
||||
);
|
||||
|
||||
extern Status XSyncDestroyCounter(
|
||||
Display* /*dpy*/,
|
||||
XSyncCounter /*counter*/
|
||||
);
|
||||
|
||||
extern Status XSyncQueryCounter(
|
||||
Display* /*dpy*/,
|
||||
XSyncCounter /*counter*/,
|
||||
XSyncValue* /*value_return*/
|
||||
);
|
||||
|
||||
extern Status XSyncAwait(
|
||||
Display* /*dpy*/,
|
||||
XSyncWaitCondition* /*wait_list*/,
|
||||
int /*n_conditions*/
|
||||
);
|
||||
|
||||
extern XSyncAlarm XSyncCreateAlarm(
|
||||
Display* /*dpy*/,
|
||||
unsigned long /*values_mask*/,
|
||||
XSyncAlarmAttributes* /*values*/
|
||||
);
|
||||
|
||||
extern Status XSyncDestroyAlarm(
|
||||
Display* /*dpy*/,
|
||||
XSyncAlarm /*alarm*/
|
||||
);
|
||||
|
||||
extern Status XSyncQueryAlarm(
|
||||
Display* /*dpy*/,
|
||||
XSyncAlarm /*alarm*/,
|
||||
XSyncAlarmAttributes* /*values_return*/
|
||||
);
|
||||
|
||||
extern Status XSyncChangeAlarm(
|
||||
Display* /*dpy*/,
|
||||
XSyncAlarm /*alarm*/,
|
||||
unsigned long /*values_mask*/,
|
||||
XSyncAlarmAttributes* /*values*/
|
||||
);
|
||||
|
||||
extern Status XSyncSetPriority(
|
||||
Display* /*dpy*/,
|
||||
XID /*client_resource_id*/,
|
||||
int /*priority*/
|
||||
);
|
||||
|
||||
extern Status XSyncGetPriority(
|
||||
Display* /*dpy*/,
|
||||
XID /*client_resource_id*/,
|
||||
int* /*return_priority*/
|
||||
);
|
||||
|
||||
#endif /* _SYNC_SERVER */
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif /* _SYNC_H_ */
|
||||
492
nx-X11/include/extensions/syncstr.h
Normal file
492
nx-X11/include/extensions/syncstr.h
Normal file
@@ -0,0 +1,492 @@
|
||||
/*
|
||||
|
||||
Copyright 1991, 1993, 1994, 1998 The Open Group
|
||||
|
||||
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.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of The Open Group shall not be
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from The Open Group.
|
||||
|
||||
*/
|
||||
|
||||
/***********************************************************
|
||||
Copyright 1991,1993 by Digital Equipment Corporation, Maynard, Massachusetts,
|
||||
and Olivetti Research Limited, Cambridge, England.
|
||||
|
||||
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 Digital or Olivetti
|
||||
not be used in advertising or publicity pertaining to distribution of the
|
||||
software without specific, written prior permission.
|
||||
|
||||
DIGITAL AND OLIVETTI DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
|
||||
SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
||||
FITNESS, IN NO EVENT SHALL THEY 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 _SYNCSTR_H_
|
||||
#define _SYNCSTR_H_
|
||||
|
||||
#include "sync.h"
|
||||
|
||||
#ifndef _SYNC_OS
|
||||
|
||||
/* cover up types from sync.h to make sure they're the right size for
|
||||
* protocol packaging. These will be undef'ed after all the protocol
|
||||
* structures are defined.
|
||||
*/
|
||||
#define XSyncCounter CARD32
|
||||
#define XSyncAlarm CARD32
|
||||
|
||||
/*
|
||||
* Initialize
|
||||
*/
|
||||
typedef struct _xSyncInitialize {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
CARD8 majorVersion;
|
||||
CARD8 minorVersion;
|
||||
CARD16 pad B16;
|
||||
} xSyncInitializeReq;
|
||||
#define sz_xSyncInitializeReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type;
|
||||
CARD8 unused;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD8 majorVersion;
|
||||
CARD8 minorVersion;
|
||||
CARD16 pad B16;
|
||||
CARD32 pad0 B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
} xSyncInitializeReply;
|
||||
#define sz_xSyncInitializeReply 32
|
||||
|
||||
/*
|
||||
* ListSystemCounters
|
||||
*/
|
||||
typedef struct _xSyncListSystemCounters
|
||||
{
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
} xSyncListSystemCountersReq;
|
||||
#define sz_xSyncListSystemCountersReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type;
|
||||
CARD8 unused;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
INT32 nCounters B32;
|
||||
CARD32 pad0 B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
} xSyncListSystemCountersReply;
|
||||
#define sz_xSyncListSystemCountersReply 32
|
||||
|
||||
typedef struct {
|
||||
XSyncCounter counter B32;
|
||||
INT32 resolution_hi B32;
|
||||
CARD32 resolution_lo B32;
|
||||
CARD16 name_length B16;
|
||||
} xSyncSystemCounter;
|
||||
#define sz_xSyncSystemCounter 14
|
||||
|
||||
/*
|
||||
* Create Counter
|
||||
*/
|
||||
typedef struct _xSyncCreateCounterReq {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
XSyncCounter cid B32;
|
||||
INT32 initial_value_hi B32;
|
||||
CARD32 initial_value_lo B32;
|
||||
} xSyncCreateCounterReq;
|
||||
#define sz_xSyncCreateCounterReq 16
|
||||
|
||||
/*
|
||||
* Change Counter
|
||||
*/
|
||||
typedef struct _xSyncChangeCounterReq {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
XSyncCounter cid B32;
|
||||
INT32 value_hi B32;
|
||||
CARD32 value_lo B32;
|
||||
} xSyncChangeCounterReq;
|
||||
#define sz_xSyncChangeCounterReq 16
|
||||
|
||||
/*
|
||||
* Set Counter
|
||||
*/
|
||||
typedef struct _xSyncSetCounterReq {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
XSyncCounter cid B32;
|
||||
INT32 value_hi B32;
|
||||
CARD32 value_lo B32;
|
||||
} xSyncSetCounterReq;
|
||||
#define sz_xSyncSetCounterReq 16
|
||||
|
||||
/*
|
||||
* Destroy Counter
|
||||
*/
|
||||
typedef struct _xSyncDestroyCounterReq {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
XSyncCounter counter B32;
|
||||
} xSyncDestroyCounterReq;
|
||||
#define sz_xSyncDestroyCounterReq 8
|
||||
|
||||
/*
|
||||
* Query Counter
|
||||
*/
|
||||
typedef struct _xSyncQueryCounterReq {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
XSyncCounter counter B32;
|
||||
} xSyncQueryCounterReq;
|
||||
#define sz_xSyncQueryCounterReq 8
|
||||
|
||||
|
||||
typedef struct {
|
||||
BYTE type;
|
||||
CARD8 unused;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
INT32 value_hi B32;
|
||||
CARD32 value_lo B32;
|
||||
CARD32 pad0 B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
} xSyncQueryCounterReply;
|
||||
#define sz_xSyncQueryCounterReply 32
|
||||
|
||||
/*
|
||||
* Await
|
||||
*/
|
||||
typedef struct _xSyncAwaitReq {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
} xSyncAwaitReq;
|
||||
#define sz_xSyncAwaitReq 4
|
||||
|
||||
typedef struct _xSyncWaitCondition {
|
||||
XSyncCounter counter B32;
|
||||
CARD32 value_type B32;
|
||||
INT32 wait_value_hi B32;
|
||||
CARD32 wait_value_lo B32;
|
||||
CARD32 test_type B32;
|
||||
INT32 event_threshold_hi B32;
|
||||
CARD32 event_threshold_lo B32;
|
||||
} xSyncWaitCondition;
|
||||
#define sz_xSyncWaitCondition 28
|
||||
|
||||
/*
|
||||
* Create Alarm
|
||||
*/
|
||||
typedef struct _xSyncCreateAlarmReq {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
XSyncAlarm id B32;
|
||||
CARD32 valueMask B32;
|
||||
} xSyncCreateAlarmReq;
|
||||
#define sz_xSyncCreateAlarmReq 12
|
||||
|
||||
/*
|
||||
* Destroy Alarm
|
||||
*/
|
||||
typedef struct _xSyncDestroyAlarmReq {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
XSyncAlarm alarm B32;
|
||||
} xSyncDestroyAlarmReq;
|
||||
#define sz_xSyncDestroyAlarmReq 8
|
||||
|
||||
/*
|
||||
* Query Alarm
|
||||
*/
|
||||
typedef struct _xSyncQueryAlarmReq {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
XSyncAlarm alarm B32;
|
||||
} xSyncQueryAlarmReq;
|
||||
#define sz_xSyncQueryAlarmReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type;
|
||||
CARD8 unused;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
XSyncCounter counter B32;
|
||||
CARD32 value_type B32;
|
||||
INT32 wait_value_hi B32;
|
||||
CARD32 wait_value_lo B32;
|
||||
CARD32 test_type B32;
|
||||
INT32 delta_hi B32;
|
||||
CARD32 delta_lo B32;
|
||||
BOOL events;
|
||||
BYTE state;
|
||||
BYTE pad0;
|
||||
BYTE pad1;
|
||||
} xSyncQueryAlarmReply;
|
||||
#define sz_xSyncQueryAlarmReply 40
|
||||
|
||||
/*
|
||||
* Change Alarm
|
||||
*/
|
||||
typedef struct _xSyncChangeAlarmReq {
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
XSyncAlarm alarm B32;
|
||||
CARD32 valueMask B32;
|
||||
} xSyncChangeAlarmReq;
|
||||
#define sz_xSyncChangeAlarmReq 12
|
||||
|
||||
/*
|
||||
* SetPriority
|
||||
*/
|
||||
typedef struct _xSyncSetPriority{
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 id B32;
|
||||
INT32 priority B32;
|
||||
} xSyncSetPriorityReq;
|
||||
#define sz_xSyncSetPriorityReq 12
|
||||
|
||||
/*
|
||||
* Get Priority
|
||||
*/
|
||||
typedef struct _xSyncGetPriority{
|
||||
CARD8 reqType;
|
||||
CARD8 syncReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 id B32; /*XXX XID? */
|
||||
} xSyncGetPriorityReq;
|
||||
#define sz_xSyncGetPriorityReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type;
|
||||
CARD8 unused;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
INT32 priority B32;
|
||||
CARD32 pad0 B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
} xSyncGetPriorityReply;
|
||||
#define sz_xSyncGetPriorityReply 32
|
||||
|
||||
/*
|
||||
* Events
|
||||
*/
|
||||
|
||||
typedef struct _xSyncCounterNotifyEvent {
|
||||
BYTE type;
|
||||
BYTE kind;
|
||||
CARD16 sequenceNumber B16;
|
||||
XSyncCounter counter B32;
|
||||
INT32 wait_value_hi B32;
|
||||
CARD32 wait_value_lo B32;
|
||||
INT32 counter_value_hi B32;
|
||||
CARD32 counter_value_lo B32;
|
||||
CARD32 time B32;
|
||||
CARD16 count B16;
|
||||
BOOL destroyed;
|
||||
BYTE pad0;
|
||||
} xSyncCounterNotifyEvent;
|
||||
|
||||
typedef struct _xSyncAlarmNotifyEvent {
|
||||
BYTE type;
|
||||
BYTE kind;
|
||||
CARD16 sequenceNumber B16;
|
||||
XSyncAlarm alarm B32;
|
||||
INT32 counter_value_hi B32;
|
||||
CARD32 counter_value_lo B32;
|
||||
INT32 alarm_value_hi B32;
|
||||
CARD32 alarm_value_lo B32;
|
||||
CARD32 time B32;
|
||||
CARD8 state;
|
||||
BYTE pad0;
|
||||
BYTE pad1;
|
||||
BYTE pad2;
|
||||
} xSyncAlarmNotifyEvent;
|
||||
|
||||
#undef XSyncCounter
|
||||
#undef XSyncAlarm
|
||||
|
||||
#endif /* _SYNC_OS */
|
||||
|
||||
#ifdef _SYNC_SERVER
|
||||
|
||||
#define CARD64 XSyncValue /* XXX temporary! need real 64 bit values for Alpha */
|
||||
|
||||
typedef struct _SyncCounter {
|
||||
ClientPtr client; /* Owning client. 0 for system counters */
|
||||
XSyncCounter id; /* resource ID */
|
||||
CARD64 value; /* counter value */
|
||||
struct _SyncTriggerList *pTriglist; /* list of triggers */
|
||||
Bool beingDestroyed; /* in process of going away */
|
||||
struct _SysCounterInfo *pSysCounterInfo; /* NULL if not a system counter */
|
||||
} SyncCounter;
|
||||
|
||||
/*
|
||||
* The System Counter interface
|
||||
*/
|
||||
|
||||
typedef enum {
|
||||
XSyncCounterNeverChanges,
|
||||
XSyncCounterNeverIncreases,
|
||||
XSyncCounterNeverDecreases,
|
||||
XSyncCounterUnrestricted
|
||||
} SyncCounterType;
|
||||
|
||||
typedef struct _SysCounterInfo {
|
||||
char *name;
|
||||
CARD64 resolution;
|
||||
CARD64 bracket_greater;
|
||||
CARD64 bracket_less;
|
||||
SyncCounterType counterType; /* how can this counter change */
|
||||
void (*QueryValue)(
|
||||
void * /*pCounter*/,
|
||||
CARD64 * /*freshvalue*/
|
||||
);
|
||||
void (*BracketValues)(
|
||||
void * /*pCounter*/,
|
||||
CARD64 * /*lessthan*/,
|
||||
CARD64 * /*greaterthan*/
|
||||
);
|
||||
} SysCounterInfo;
|
||||
|
||||
|
||||
|
||||
typedef struct _SyncTrigger {
|
||||
SyncCounter *pCounter;
|
||||
CARD64 wait_value; /* wait value */
|
||||
unsigned int value_type; /* Absolute or Relative */
|
||||
unsigned int test_type; /* transition or Comparision type */
|
||||
CARD64 test_value; /* trigger event threshold value */
|
||||
Bool (*CheckTrigger)(
|
||||
struct _SyncTrigger * /*pTrigger*/,
|
||||
CARD64 /*newval*/
|
||||
);
|
||||
void (*TriggerFired)(
|
||||
struct _SyncTrigger * /*pTrigger*/
|
||||
);
|
||||
void (*CounterDestroyed)(
|
||||
struct _SyncTrigger * /*pTrigger*/
|
||||
);
|
||||
} SyncTrigger;
|
||||
|
||||
typedef struct _SyncTriggerList {
|
||||
SyncTrigger *pTrigger;
|
||||
struct _SyncTriggerList *next;
|
||||
} SyncTriggerList;
|
||||
|
||||
typedef struct _SyncAlarmClientList {
|
||||
ClientPtr client;
|
||||
XID delete_id;
|
||||
struct _SyncAlarmClientList *next;
|
||||
} SyncAlarmClientList;
|
||||
|
||||
typedef struct _SyncAlarm {
|
||||
SyncTrigger trigger;
|
||||
ClientPtr client;
|
||||
XSyncAlarm alarm_id;
|
||||
CARD64 delta;
|
||||
int events;
|
||||
int state;
|
||||
SyncAlarmClientList *pEventClients;
|
||||
} SyncAlarm;
|
||||
|
||||
typedef struct {
|
||||
ClientPtr client;
|
||||
CARD32 delete_id;
|
||||
int num_waitconditions;
|
||||
} SyncAwaitHeader;
|
||||
|
||||
typedef struct {
|
||||
SyncTrigger trigger;
|
||||
CARD64 event_threshold;
|
||||
SyncAwaitHeader *pHeader;
|
||||
} SyncAwait;
|
||||
|
||||
typedef union {
|
||||
SyncAwaitHeader header;
|
||||
SyncAwait await;
|
||||
} SyncAwaitUnion;
|
||||
|
||||
|
||||
extern void * SyncCreateSystemCounter(
|
||||
char * /* name */,
|
||||
CARD64 /* inital_value */,
|
||||
CARD64 /* resolution */,
|
||||
SyncCounterType /* change characterization */,
|
||||
void (* /*QueryValue*/ ) (
|
||||
void * /* pCounter */,
|
||||
CARD64 * /* pValue_return */), /* XXX prototype */
|
||||
void (* /*BracketValues*/) (
|
||||
void * /* pCounter */,
|
||||
CARD64 * /* pbracket_less */,
|
||||
CARD64 * /* pbracket_greater */)
|
||||
);
|
||||
|
||||
extern void SyncChangeCounter(
|
||||
SyncCounter * /* pCounter*/,
|
||||
CARD64 /* new_value */
|
||||
);
|
||||
|
||||
extern void SyncDestroySystemCounter(
|
||||
void * pCounter
|
||||
);
|
||||
extern void InitServertime(void);
|
||||
|
||||
#endif /* _SYNC_SERVER */
|
||||
|
||||
#endif /* _SYNCSTR_H_ */
|
||||
111
nx-X11/include/extensions/xcmiscstr.h
Normal file
111
nx-X11/include/extensions/xcmiscstr.h
Normal file
@@ -0,0 +1,111 @@
|
||||
/*
|
||||
|
||||
Copyright 1993, 1994, 1998 The Open Group
|
||||
|
||||
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.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of The Open Group shall not be
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from The Open Group.
|
||||
|
||||
*/
|
||||
/* $XFree86$ */
|
||||
|
||||
#ifndef _XCMISCSTR_H_
|
||||
#define _XCMISCSTR_H_
|
||||
|
||||
#define X_XCMiscGetVersion 0
|
||||
#define X_XCMiscGetXIDRange 1
|
||||
#define X_XCMiscGetXIDList 2
|
||||
|
||||
#define XCMiscNumberEvents 0
|
||||
|
||||
#define XCMiscNumberErrors 0
|
||||
|
||||
#define XCMiscMajorVersion 1
|
||||
#define XCMiscMinorVersion 1
|
||||
|
||||
#define XCMiscExtensionName "XC-MISC"
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XCMiscCode */
|
||||
CARD8 miscReqType; /* always X_XCMiscGetVersion */
|
||||
CARD16 length B16;
|
||||
CARD16 majorVersion B16;
|
||||
CARD16 minorVersion B16;
|
||||
} xXCMiscGetVersionReq;
|
||||
#define sz_xXCMiscGetVersionReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 majorVersion B16;
|
||||
CARD16 minorVersion B16;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xXCMiscGetVersionReply;
|
||||
#define sz_xXCMiscGetVersionReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XCMiscCode */
|
||||
CARD8 miscReqType; /* always X_XCMiscGetXIDRange */
|
||||
CARD16 length B16;
|
||||
} xXCMiscGetXIDRangeReq;
|
||||
#define sz_xXCMiscGetXIDRangeReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 start_id B32;
|
||||
CARD32 count B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
} xXCMiscGetXIDRangeReply;
|
||||
#define sz_xXCMiscGetXIDRangeReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XCMiscCode */
|
||||
CARD8 miscReqType; /* always X_XCMiscGetXIDList */
|
||||
CARD16 length B16;
|
||||
CARD32 count B32; /* number of IDs requested */
|
||||
} xXCMiscGetXIDListReq;
|
||||
#define sz_xXCMiscGetXIDListReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 pad0;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 count B32; /* number of IDs requested */
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xXCMiscGetXIDListReply;
|
||||
#define sz_xXCMiscGetXIDListReply 32
|
||||
|
||||
#endif /* _XCMISCSTR_H_ */
|
||||
36
nx-X11/include/extensions/xf86bigfont.h
Normal file
36
nx-X11/include/extensions/xf86bigfont.h
Normal file
@@ -0,0 +1,36 @@
|
||||
/*
|
||||
* Declarations for the BIGFONT extension.
|
||||
*
|
||||
* Copyright (c) 1999-2000 Bruno Haible
|
||||
* Copyright (c) 1999-2000 The XFree86 Project, Inc.
|
||||
*/
|
||||
|
||||
/* THIS IS NOT AN X CONSORTIUM STANDARD */
|
||||
|
||||
#ifndef _XF86BIGFONT_H_
|
||||
#define _XF86BIGFONT_H_
|
||||
|
||||
#include <nx-X11/Xfuncproto.h>
|
||||
|
||||
#define X_XF86BigfontQueryVersion 0
|
||||
#define X_XF86BigfontQueryFont 1
|
||||
|
||||
#define XF86BigfontNumberEvents 0
|
||||
|
||||
#define XF86BigfontNumberErrors 0
|
||||
|
||||
#ifdef _XF86BIGFONT_SERVER_
|
||||
|
||||
_XFUNCPROTOBEGIN
|
||||
|
||||
#include <X11/fonts/font.h>
|
||||
|
||||
extern void XFree86BigfontExtensionInit(void);
|
||||
extern void XF86BigfontFreeFontShm(FontPtr);
|
||||
extern void XF86BigfontCleanup(void);
|
||||
|
||||
_XFUNCPROTOEND
|
||||
|
||||
#endif /* _XF86BIGFONT_SERVER_ */
|
||||
|
||||
#endif /* _XF86BIGFONT_H_ */
|
||||
88
nx-X11/include/extensions/xf86bigfproto.h
Normal file
88
nx-X11/include/extensions/xf86bigfproto.h
Normal file
@@ -0,0 +1,88 @@
|
||||
/*
|
||||
* Declarations of request structures for the BIGFONT extension.
|
||||
*
|
||||
* Copyright (c) 1999-2000 Bruno Haible
|
||||
* Copyright (c) 1999-2000 The XFree86 Project, Inc.
|
||||
*/
|
||||
|
||||
/* THIS IS NOT AN X CONSORTIUM STANDARD */
|
||||
|
||||
#ifndef _XF86BIGFPROTO_H_
|
||||
#define _XF86BIGFPROTO_H_
|
||||
|
||||
#include <nx-X11/extensions/xf86bigfont.h>
|
||||
|
||||
#define XF86BIGFONTNAME "XFree86-Bigfont"
|
||||
|
||||
#define XF86BIGFONT_MAJOR_VERSION 1 /* current version numbers */
|
||||
#define XF86BIGFONT_MINOR_VERSION 1
|
||||
|
||||
typedef struct _XF86BigfontQueryVersion {
|
||||
CARD8 reqType; /* always XF86BigfontReqCode */
|
||||
CARD8 xf86bigfontReqType; /* always X_XF86BigfontQueryVersion */
|
||||
CARD16 length B16;
|
||||
} xXF86BigfontQueryVersionReq;
|
||||
#define sz_xXF86BigfontQueryVersionReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 capabilities;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 majorVersion B16; /* major version of XFree86-Bigfont */
|
||||
CARD16 minorVersion B16; /* minor version of XFree86-Bigfont */
|
||||
CARD32 uid B32;
|
||||
CARD32 gid B32;
|
||||
CARD32 signature B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
} xXF86BigfontQueryVersionReply;
|
||||
#define sz_xXF86BigfontQueryVersionReply 32
|
||||
|
||||
/* Bit masks that can be set in the capabilities */
|
||||
#define XF86Bigfont_CAP_LocalShm 1
|
||||
|
||||
typedef struct _XF86BigfontQueryFont {
|
||||
CARD8 reqType; /* always XF86BigfontReqCode */
|
||||
CARD8 xf86bigfontReqType; /* always X_XF86BigfontQueryFont */
|
||||
CARD16 length B16;
|
||||
CARD32 id B32;
|
||||
CARD32 flags B32;
|
||||
} xXF86BigfontQueryFontReq;
|
||||
#define sz_xXF86BigfontQueryFontReq 12
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
xCharInfo minBounds;
|
||||
CARD32 walign1 B32;
|
||||
xCharInfo maxBounds;
|
||||
CARD32 walign2 B32;
|
||||
CARD16 minCharOrByte2 B16;
|
||||
CARD16 maxCharOrByte2 B16;
|
||||
CARD16 defaultChar B16;
|
||||
CARD16 nFontProps B16;
|
||||
CARD8 drawDirection;
|
||||
CARD8 minByte1;
|
||||
CARD8 maxByte1;
|
||||
BOOL allCharsExist;
|
||||
INT16 fontAscent B16;
|
||||
INT16 fontDescent B16;
|
||||
CARD32 nCharInfos B32;
|
||||
CARD32 nUniqCharInfos B32;
|
||||
CARD32 shmid B32;
|
||||
CARD32 shmsegoffset B32;
|
||||
/* followed by nFontProps xFontProp structures */
|
||||
/* and if nCharInfos > 0 && shmid == -1,
|
||||
followed by nUniqCharInfos xCharInfo structures
|
||||
and then by nCharInfos CARD16 indices (each >= 0, < nUniqCharInfos)
|
||||
and then, if nCharInfos is odd, one more CARD16 for padding. */
|
||||
} xXF86BigfontQueryFontReply;
|
||||
#define sz_xXF86BigfontQueryFontReply 72
|
||||
|
||||
/* Bit masks that can be set in the flags */
|
||||
#define XF86Bigfont_FLAGS_Shm 1
|
||||
|
||||
#endif /* _XF86BIGFPROTO_H_ */
|
||||
551
nx-X11/include/extensions/xfixesproto.h
Normal file
551
nx-X11/include/extensions/xfixesproto.h
Normal file
@@ -0,0 +1,551 @@
|
||||
/*
|
||||
* Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright 2010 Red Hat, Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
* to deal in the Software without restriction, including without limitation
|
||||
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
* and/or sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice (including the next
|
||||
* paragraph) shall be included in all copies or substantial portions of the
|
||||
* Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
* DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
/*
|
||||
* Copyright © 2002 Keith Packard, member of The XFree86 Project, Inc.
|
||||
*
|
||||
* 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 Keith Packard not be used in
|
||||
* advertising or publicity pertaining to distribution of the software without
|
||||
* specific, written prior permission. Keith Packard makes no
|
||||
* representations about the suitability of this software for any purpose. It
|
||||
* is provided "as is" without express or implied warranty.
|
||||
*
|
||||
* KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||
* EVENT SHALL KEITH 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.
|
||||
*/
|
||||
|
||||
#ifndef _XFIXESPROTO_H_
|
||||
#define _XFIXESPROTO_H_
|
||||
|
||||
#include <nx-X11/Xmd.h>
|
||||
#include <nx-X11/extensions/xfixeswire.h>
|
||||
#include <nx-X11/extensions/shapeconst.h>
|
||||
|
||||
#define Window CARD32
|
||||
#define Drawable CARD32
|
||||
#define Font CARD32
|
||||
#define Pixmap CARD32
|
||||
#define Cursor CARD32
|
||||
#define Colormap CARD32
|
||||
#define GContext CARD32
|
||||
#define Atom CARD32
|
||||
#define VisualID CARD32
|
||||
#define Time CARD32
|
||||
#define KeyCode CARD8
|
||||
#define KeySym CARD32
|
||||
#define Picture CARD32
|
||||
|
||||
/*************** Version 1 ******************/
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
} xXFixesReq;
|
||||
|
||||
/*
|
||||
* requests and replies
|
||||
*/
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
CARD32 majorVersion B32;
|
||||
CARD32 minorVersion B32;
|
||||
} xXFixesQueryVersionReq;
|
||||
|
||||
#define sz_xXFixesQueryVersionReq 12
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 majorVersion B32;
|
||||
CARD32 minorVersion B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xXFixesQueryVersionReply;
|
||||
|
||||
#define sz_xXFixesQueryVersionReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
BYTE mode; /* SetModeInsert/SetModeDelete*/
|
||||
BYTE target; /* SaveSetNearest/SaveSetRoot*/
|
||||
BYTE map; /* SaveSetMap/SaveSetUnmap */
|
||||
BYTE pad1;
|
||||
Window window;
|
||||
} xXFixesChangeSaveSetReq;
|
||||
|
||||
#define sz_xXFixesChangeSaveSetReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
Atom selection B32;
|
||||
CARD32 eventMask B32;
|
||||
} xXFixesSelectSelectionInputReq;
|
||||
|
||||
#define sz_xXFixesSelectSelectionInputReq 16
|
||||
|
||||
typedef struct {
|
||||
CARD8 type;
|
||||
CARD8 subtype;
|
||||
CARD16 sequenceNumber B16;
|
||||
Window window B32;
|
||||
Window owner B32;
|
||||
Atom selection B32;
|
||||
Time timestamp B32;
|
||||
Time selectionTimestamp B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
} xXFixesSelectionNotifyEvent;
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
CARD32 eventMask B32;
|
||||
} xXFixesSelectCursorInputReq;
|
||||
|
||||
#define sz_xXFixesSelectCursorInputReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 type;
|
||||
CARD8 subtype;
|
||||
CARD16 sequenceNumber B16;
|
||||
Window window B32;
|
||||
CARD32 cursorSerial B32;
|
||||
Time timestamp;
|
||||
Atom name B32; /* Version 2 */
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
} xXFixesCursorNotifyEvent;
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
} xXFixesGetCursorImageReq;
|
||||
|
||||
#define sz_xXFixesGetCursorImageReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
INT16 x B16;
|
||||
INT16 y B16;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
CARD16 xhot B16;
|
||||
CARD16 yhot B16;
|
||||
CARD32 cursorSerial B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
} xXFixesGetCursorImageReply;
|
||||
|
||||
#define sz_xXFixesGetCursorImageReply 32
|
||||
|
||||
/*************** Version 2 ******************/
|
||||
|
||||
#define Region CARD32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region region B32;
|
||||
/* LISTofRECTANGLE */
|
||||
} xXFixesCreateRegionReq;
|
||||
|
||||
#define sz_xXFixesCreateRegionReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region region B32;
|
||||
Pixmap bitmap B32;
|
||||
} xXFixesCreateRegionFromBitmapReq;
|
||||
|
||||
#define sz_xXFixesCreateRegionFromBitmapReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region region B32;
|
||||
Window window B32;
|
||||
CARD8 kind;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
} xXFixesCreateRegionFromWindowReq;
|
||||
|
||||
#define sz_xXFixesCreateRegionFromWindowReq 16
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region region B32;
|
||||
GContext gc B32;
|
||||
} xXFixesCreateRegionFromGCReq;
|
||||
|
||||
#define sz_xXFixesCreateRegionFromGCReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region region B32;
|
||||
Picture picture B32;
|
||||
} xXFixesCreateRegionFromPictureReq;
|
||||
|
||||
#define sz_xXFixesCreateRegionFromPictureReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region region B32;
|
||||
} xXFixesDestroyRegionReq;
|
||||
|
||||
#define sz_xXFixesDestroyRegionReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region region B32;
|
||||
/* LISTofRECTANGLE */
|
||||
} xXFixesSetRegionReq;
|
||||
|
||||
#define sz_xXFixesSetRegionReq 8
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region source B32;
|
||||
Region destination B32;
|
||||
} xXFixesCopyRegionReq;
|
||||
|
||||
#define sz_xXFixesCopyRegionReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region source1 B32;
|
||||
Region source2 B32;
|
||||
Region destination B32;
|
||||
} xXFixesCombineRegionReq,
|
||||
xXFixesUnionRegionReq,
|
||||
xXFixesIntersectRegionReq,
|
||||
xXFixesSubtractRegionReq;
|
||||
|
||||
#define sz_xXFixesCombineRegionReq 16
|
||||
#define sz_xXFixesUnionRegionReq sz_xXFixesCombineRegionReq
|
||||
#define sz_xXFixesIntersectRegionReq sz_xXFixesCombineRegionReq
|
||||
#define sz_xXFixesSubtractRegionReq sz_xXFixesCombineRegionReq
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region source B32;
|
||||
INT16 x B16, y B16;
|
||||
CARD16 width B16, height B16;
|
||||
Region destination B32;
|
||||
} xXFixesInvertRegionReq;
|
||||
|
||||
#define sz_xXFixesInvertRegionReq 20
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region region B32;
|
||||
INT16 dx B16, dy B16;
|
||||
} xXFixesTranslateRegionReq;
|
||||
|
||||
#define sz_xXFixesTranslateRegionReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region source B32;
|
||||
Region destination B32;
|
||||
} xXFixesRegionExtentsReq;
|
||||
|
||||
#define sz_xXFixesRegionExtentsReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region region B32;
|
||||
} xXFixesFetchRegionReq;
|
||||
|
||||
#define sz_xXFixesFetchRegionReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
INT16 x B16, y B16;
|
||||
CARD16 width B16, height B16;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xXFixesFetchRegionReply;
|
||||
|
||||
#define sz_xXFixesFetchRegionReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
GContext gc B32;
|
||||
Region region B32;
|
||||
INT16 xOrigin B16, yOrigin B16;
|
||||
} xXFixesSetGCClipRegionReq;
|
||||
|
||||
#define sz_xXFixesSetGCClipRegionReq 16
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Window dest;
|
||||
BYTE destKind;
|
||||
CARD8 pad1;
|
||||
CARD16 pad2 B16;
|
||||
INT16 xOff B16, yOff B16;
|
||||
Region region;
|
||||
} xXFixesSetWindowShapeRegionReq;
|
||||
|
||||
#define sz_xXFixesSetWindowShapeRegionReq 20
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Picture picture B32;
|
||||
Region region B32;
|
||||
INT16 xOrigin B16, yOrigin B16;
|
||||
} xXFixesSetPictureClipRegionReq;
|
||||
|
||||
#define sz_xXFixesSetPictureClipRegionReq 16
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Cursor cursor B32;
|
||||
CARD16 nbytes B16;
|
||||
CARD16 pad B16;
|
||||
} xXFixesSetCursorNameReq;
|
||||
|
||||
#define sz_xXFixesSetCursorNameReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Cursor cursor B32;
|
||||
} xXFixesGetCursorNameReq;
|
||||
|
||||
#define sz_xXFixesGetCursorNameReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
Atom atom B32;
|
||||
CARD16 nbytes B16;
|
||||
CARD16 pad2 B16;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
CARD32 pad6 B32;
|
||||
} xXFixesGetCursorNameReply;
|
||||
|
||||
#define sz_xXFixesGetCursorNameReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
} xXFixesGetCursorImageAndNameReq;
|
||||
|
||||
#define sz_xXFixesGetCursorImageAndNameReq 4
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BYTE pad1;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
INT16 x B16;
|
||||
INT16 y B16;
|
||||
CARD16 width B16;
|
||||
CARD16 height B16;
|
||||
CARD16 xhot B16;
|
||||
CARD16 yhot B16;
|
||||
CARD32 cursorSerial B32;
|
||||
Atom cursorName B32;
|
||||
CARD16 nbytes B16;
|
||||
CARD16 pad B16;
|
||||
} xXFixesGetCursorImageAndNameReply;
|
||||
|
||||
#define sz_xXFixesGetCursorImageAndNameReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Cursor source B32;
|
||||
Cursor destination B32;
|
||||
} xXFixesChangeCursorReq;
|
||||
|
||||
#define sz_xXFixesChangeCursorReq 12
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Cursor source B32;
|
||||
CARD16 nbytes;
|
||||
CARD16 pad;
|
||||
} xXFixesChangeCursorByNameReq;
|
||||
|
||||
#define sz_xXFixesChangeCursorByNameReq 12
|
||||
|
||||
/*************** Version 3 ******************/
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Region source B32;
|
||||
Region destination B32;
|
||||
CARD16 left B16;
|
||||
CARD16 right B16;
|
||||
CARD16 top B16;
|
||||
CARD16 bottom B16;
|
||||
} xXFixesExpandRegionReq;
|
||||
|
||||
#define sz_xXFixesExpandRegionReq 20
|
||||
|
||||
/*************** Version 4.0 ******************/
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
} xXFixesHideCursorReq;
|
||||
|
||||
#define sz_xXFixesHideCursorReq sizeof(xXFixesHideCursorReq)
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
} xXFixesShowCursorReq;
|
||||
|
||||
#define sz_xXFixesShowCursorReq sizeof(xXFixesShowCursorReq)
|
||||
|
||||
/*************** Version 5.0 ******************/
|
||||
|
||||
#define Barrier CARD32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Barrier barrier B32;
|
||||
Window window B32;
|
||||
INT16 x1 B16;
|
||||
INT16 y1 B16;
|
||||
INT16 x2 B16;
|
||||
INT16 y2 B16;
|
||||
CARD32 directions;
|
||||
CARD16 pad B16;
|
||||
CARD16 num_devices B16;
|
||||
/* array of CARD16 devices */
|
||||
} xXFixesCreatePointerBarrierReq;
|
||||
|
||||
#define sz_xXFixesCreatePointerBarrierReq 28
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType;
|
||||
CARD8 xfixesReqType;
|
||||
CARD16 length B16;
|
||||
Barrier barrier B32;
|
||||
} xXFixesDestroyPointerBarrierReq;
|
||||
|
||||
#define sz_xXFixesDestroyPointerBarrierReq 8
|
||||
|
||||
#undef Barrier
|
||||
#undef Region
|
||||
#undef Picture
|
||||
#undef Window
|
||||
#undef Drawable
|
||||
#undef Font
|
||||
#undef Pixmap
|
||||
#undef Cursor
|
||||
#undef Colormap
|
||||
#undef GContext
|
||||
#undef Atom
|
||||
#undef VisualID
|
||||
#undef Time
|
||||
#undef KeyCode
|
||||
#undef KeySym
|
||||
|
||||
#endif /* _XFIXESPROTO_H_ */
|
||||
139
nx-X11/include/extensions/xfixeswire.h
Normal file
139
nx-X11/include/extensions/xfixeswire.h
Normal file
@@ -0,0 +1,139 @@
|
||||
/*
|
||||
* Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright 2010 Red Hat, Inc.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||
* copy of this software and associated documentation files (the "Software"),
|
||||
* to deal in the Software without restriction, including without limitation
|
||||
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
* and/or sell copies of the Software, and to permit persons to whom the
|
||||
* Software is furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice (including the next
|
||||
* paragraph) shall be included in all copies or substantial portions of the
|
||||
* Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
* DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
/*
|
||||
* Copyright © 2002 Keith Packard, member of The XFree86 Project, Inc.
|
||||
*
|
||||
* 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 Keith Packard not be used in
|
||||
* advertising or publicity pertaining to distribution of the software without
|
||||
* specific, written prior permission. Keith Packard makes no
|
||||
* representations about the suitability of this software for any purpose. It
|
||||
* is provided "as is" without express or implied warranty.
|
||||
*
|
||||
* KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
|
||||
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
||||
* EVENT SHALL KEITH 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.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef _XFIXESWIRE_H_
|
||||
#define _XFIXESWIRE_H_
|
||||
|
||||
#define XFIXES_NAME "XFIXES"
|
||||
#define XFIXES_MAJOR 4
|
||||
#define XFIXES_MINOR 0
|
||||
|
||||
/*************** Version 1 ******************/
|
||||
#define X_XFixesQueryVersion 0
|
||||
#define X_XFixesChangeSaveSet 1
|
||||
#define X_XFixesSelectSelectionInput 2
|
||||
#define X_XFixesSelectCursorInput 3
|
||||
#define X_XFixesGetCursorImage 4
|
||||
/*************** Version 2 ******************/
|
||||
#define X_XFixesCreateRegion 5
|
||||
#define X_XFixesCreateRegionFromBitmap 6
|
||||
#define X_XFixesCreateRegionFromWindow 7
|
||||
#define X_XFixesCreateRegionFromGC 8
|
||||
#define X_XFixesCreateRegionFromPicture 9
|
||||
#define X_XFixesDestroyRegion 10
|
||||
#define X_XFixesSetRegion 11
|
||||
#define X_XFixesCopyRegion 12
|
||||
#define X_XFixesUnionRegion 13
|
||||
#define X_XFixesIntersectRegion 14
|
||||
#define X_XFixesSubtractRegion 15
|
||||
#define X_XFixesInvertRegion 16
|
||||
#define X_XFixesTranslateRegion 17
|
||||
#define X_XFixesRegionExtents 18
|
||||
#define X_XFixesFetchRegion 19
|
||||
#define X_XFixesSetGCClipRegion 20
|
||||
#define X_XFixesSetWindowShapeRegion 21
|
||||
#define X_XFixesSetPictureClipRegion 22
|
||||
#define X_XFixesSetCursorName 23
|
||||
#define X_XFixesGetCursorName 24
|
||||
#define X_XFixesGetCursorImageAndName 25
|
||||
#define X_XFixesChangeCursor 26
|
||||
#define X_XFixesChangeCursorByName 27
|
||||
/*************** Version 3 ******************/
|
||||
#define X_XFixesExpandRegion 28
|
||||
/*************** Version 4 ******************/
|
||||
#define X_XFixesHideCursor 29
|
||||
#define X_XFixesShowCursor 30
|
||||
/*************** Version 5 ******************/
|
||||
#define X_XFixesCreatePointerBarrier 31
|
||||
#define X_XFixesDestroyPointerBarrier 32
|
||||
|
||||
#define XFixesNumberRequests (X_XFixesDestroyPointerBarrier+1)
|
||||
|
||||
/* Selection events share one event number */
|
||||
#define XFixesSelectionNotify 0
|
||||
|
||||
/* Within the selection, the 'subtype' field distinguishes */
|
||||
#define XFixesSetSelectionOwnerNotify 0
|
||||
#define XFixesSelectionWindowDestroyNotify 1
|
||||
#define XFixesSelectionClientCloseNotify 2
|
||||
|
||||
#define XFixesSetSelectionOwnerNotifyMask (1L << 0)
|
||||
#define XFixesSelectionWindowDestroyNotifyMask (1L << 1)
|
||||
#define XFixesSelectionClientCloseNotifyMask (1L << 2)
|
||||
|
||||
/* There's only one cursor event so far */
|
||||
#define XFixesCursorNotify 1
|
||||
|
||||
#define XFixesDisplayCursorNotify 0
|
||||
|
||||
#define XFixesDisplayCursorNotifyMask (1L << 0)
|
||||
|
||||
#define XFixesNumberEvents (2)
|
||||
|
||||
/* errors */
|
||||
#define BadRegion 0
|
||||
#define BadBarrier 1
|
||||
#define XFixesNumberErrors (BadBarrier+1)
|
||||
|
||||
#define SaveSetNearest 0
|
||||
#define SaveSetRoot 1
|
||||
|
||||
#define SaveSetMap 0
|
||||
#define SaveSetUnmap 1
|
||||
|
||||
/*************** Version 2 ******************/
|
||||
|
||||
#define WindowRegionBounding 0
|
||||
#define WindowRegionClip 1
|
||||
|
||||
/*************** Version 5 ******************/
|
||||
|
||||
#define BarrierPositiveX (1L << 0)
|
||||
#define BarrierPositiveY (1L << 1)
|
||||
#define BarrierNegativeX (1L << 2)
|
||||
#define BarrierNegativeY (1L << 3)
|
||||
|
||||
#endif /* _XFIXESWIRE_H_ */
|
||||
46
nx-X11/include/extensions/xtestconst.h
Normal file
46
nx-X11/include/extensions/xtestconst.h
Normal file
@@ -0,0 +1,46 @@
|
||||
/*
|
||||
|
||||
Copyright 1992, 1998 The Open Group
|
||||
|
||||
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.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of The Open Group shall not be
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from The Open Group.
|
||||
|
||||
*/
|
||||
|
||||
#ifndef _XTEST_H_
|
||||
#define _XTEST_H_
|
||||
|
||||
#include <nx-X11/Xfuncproto.h>
|
||||
|
||||
#define X_XTestGetVersion 0
|
||||
#define X_XTestCompareCursor 1
|
||||
#define X_XTestFakeInput 2
|
||||
#define X_XTestGrabControl 3
|
||||
|
||||
#define XTestNumberEvents 0
|
||||
|
||||
#define XTestNumberErrors 0
|
||||
|
||||
#define XTestMajorVersion 2
|
||||
#define XTestMinorVersion 2
|
||||
|
||||
#define XTestExtensionName "XTEST"
|
||||
|
||||
#endif
|
||||
119
nx-X11/include/extensions/xteststr.h
Normal file
119
nx-X11/include/extensions/xteststr.h
Normal file
@@ -0,0 +1,119 @@
|
||||
/*
|
||||
|
||||
Copyright 1992, 1998 The Open Group
|
||||
|
||||
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.
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Except as contained in this notice, the name of The Open Group shall not be
|
||||
used in advertising or otherwise to promote the sale, use or other dealings
|
||||
in this Software without prior written authorization from The Open Group.
|
||||
|
||||
*/
|
||||
|
||||
#ifndef _XTESTSTR_H_
|
||||
#define _XTESTSTR_H_
|
||||
|
||||
#define Window CARD32
|
||||
#define Time CARD32
|
||||
#define Cursor CARD32
|
||||
|
||||
#define XTestCurrentCursor ((Cursor)1)
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XTestReqCode */
|
||||
CARD8 xtReqType; /* always X_XTestGetVersion */
|
||||
CARD16 length B16;
|
||||
CARD8 majorVersion;
|
||||
CARD8 pad;
|
||||
CARD16 minorVersion B16;
|
||||
} xXTestGetVersionReq;
|
||||
#define sz_xXTestGetVersionReq 8
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
CARD8 majorVersion;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD16 minorVersion B16;
|
||||
CARD16 pad0 B16;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xXTestGetVersionReply;
|
||||
#define sz_xXTestGetVersionReply 32
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XTestReqCode */
|
||||
CARD8 xtReqType; /* always X_XTestCompareCursor */
|
||||
CARD16 length B16;
|
||||
Window window B32;
|
||||
Cursor cursor B32;
|
||||
} xXTestCompareCursorReq;
|
||||
#define sz_xXTestCompareCursorReq 12
|
||||
|
||||
typedef struct {
|
||||
BYTE type; /* X_Reply */
|
||||
BOOL same;
|
||||
CARD16 sequenceNumber B16;
|
||||
CARD32 length B32;
|
||||
CARD32 pad0 B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
CARD32 pad3 B32;
|
||||
CARD32 pad4 B32;
|
||||
CARD32 pad5 B32;
|
||||
} xXTestCompareCursorReply;
|
||||
#define sz_xXTestCompareCursorReply 32
|
||||
|
||||
/* used only on the client side */
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XTestReqCode */
|
||||
CARD8 xtReqType; /* always X_XTestFakeInput */
|
||||
CARD16 length B16;
|
||||
BYTE type;
|
||||
BYTE detail;
|
||||
CARD16 pad0 B16;
|
||||
Time time B32;
|
||||
Window root B32;
|
||||
CARD32 pad1 B32;
|
||||
CARD32 pad2 B32;
|
||||
INT16 rootX B16, rootY B16;
|
||||
CARD32 pad3 B32;
|
||||
CARD16 pad4 B16;
|
||||
CARD8 pad5;
|
||||
CARD8 deviceid;
|
||||
} xXTestFakeInputReq;
|
||||
#define sz_xXTestFakeInputReq 36
|
||||
|
||||
typedef struct {
|
||||
CARD8 reqType; /* always XTestReqCode */
|
||||
CARD8 xtReqType; /* always X_XTestGrabControl */
|
||||
CARD16 length B16;
|
||||
BOOL impervious;
|
||||
CARD8 pad0;
|
||||
CARD8 pad1;
|
||||
CARD8 pad2;
|
||||
} xXTestGrabControlReq;
|
||||
#define sz_xXTestGrabControlReq 8
|
||||
|
||||
#undef Window
|
||||
#undef Time
|
||||
#undef Cursor
|
||||
|
||||
#endif /* _XTESTSTR_H_ */
|
||||
Reference in New Issue
Block a user