⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xproto.h

📁 远程桌面连接工具
💻 H
📖 第 1 页 / 共 4 页
字号:
 * The event feilds in the structures for DestroyNotify, UnmapNotify, * MapNotify, ReparentNotify, ConfigureNotify, CirclulateNotify, GravityNotify, * must be at the same offset because server internal code is depending upon * this to patch up the events before they are delivered. * Also note that MapRequest, ConfigureRequest and CirculateRequest have * the same offset for the event window. */	struct {            CARD32 pad00 B32;	    Window event B32, window B32;	} destroyNotify;	struct {            CARD32 pad00 B32;	    Window event B32, window B32;	    BOOL fromConfigure;	    BYTE pad1, pad2, pad3;        } unmapNotify;	struct {            CARD32 pad00 B32;	    Window event B32, window B32;	    BOOL override;	    BYTE pad1, pad2, pad3;        } mapNotify;	struct {            CARD32 pad00 B32;	    Window parent B32, window B32;        } mapRequest;	struct {            CARD32 pad00 B32;	    Window event B32, window B32, parent B32;	    INT16 x B16, y B16;	    BOOL override;	    BYTE pad1, pad2, pad3;	} reparent;	struct {            CARD32 pad00 B32;	    Window event B32, window B32, aboveSibling B32;	    INT16 x B16, y B16;	    CARD16 width B16, height B16, borderWidth B16;	    BOOL override;			    BYTE bpad;	} configureNotify;	struct {            CARD32 pad00 B32;	    Window parent B32, window B32, sibling B32;	    INT16 x B16, y B16;	    CARD16 width B16, height B16, borderWidth B16;	    CARD16 valueMask B16;	    CARD32 pad1 B32;	} configureRequest;	struct {            CARD32 pad00 B32;	    Window event B32, window B32;	    INT16 x B16, y B16;	    CARD32 pad1 B32, pad2 B32, pad3 B32, pad4 B32;	} gravity;	struct {            CARD32 pad00 B32;	    Window window B32;	    CARD16 width B16, height B16;	} resizeRequest;	struct {/* The event field in the circulate record is really the parent when this   is used as a CirculateRequest insteaad of a CircluateNotify */            CARD32 pad00 B32;	    Window event B32, window B32, parent B32;	    BYTE place;			/* Top or Bottom */	    BYTE pad1, pad2, pad3;	} circulate;	struct {            CARD32 pad00 B32;	    Window window B32;	    Atom atom B32;	    Time time B32;	    BYTE state;			/* NewValue or Deleted */	    BYTE pad1;	    CARD16 pad2 B16;	} property;	struct {            CARD32 pad00 B32;            Time time B32;     	    Window window B32;	    Atom atom B32;	} selectionClear;	struct {            CARD32 pad00 B32;            Time time B32;    	    Window owner B32, requestor B32;	    Atom selection B32, target B32, property B32;	} selectionRequest;	struct {            CARD32 pad00 B32;            Time time B32;   	    Window requestor B32;	    Atom selection B32, target B32, property B32;	} selectionNotify;	struct {            CARD32 pad00 B32;	    Window window B32;	    Colormap colormap B32;#if defined(__cplusplus) || defined(c_plusplus)	    BOOL c_new;#else	    BOOL new;#endif	    BYTE state;			/* Installed or UnInstalled */	    BYTE pad1, pad2;	} colormap;	struct {	    CARD32 pad00 B32;	    CARD8 request;	    KeyCode firstKeyCode;	    CARD8 count;	    BYTE pad1;	} mappingNotify;	struct {            CARD32 pad00 B32;	    Window window B32;	    union {		struct {		    Atom type B32;		    INT32 longs0 B32;		    INT32 longs1 B32;		    INT32 longs2 B32;		    INT32 longs3 B32;		    INT32 longs4 B32;		} l;		struct {		    Atom type B32;		    INT16 shorts0 B16;		    INT16 shorts1 B16;		    INT16 shorts2 B16;		    INT16 shorts3 B16;		    INT16 shorts4 B16;		    INT16 shorts5 B16;		    INT16 shorts6 B16;		    INT16 shorts7 B16;		    INT16 shorts8 B16;		    INT16 shorts9 B16;		} s;		struct {		    Atom type B32;		    INT8 bytes[20];		} b;	    } u; 	} clientMessage;    } u;} xEvent;/* KeymapNotify events are not included in the above union because they   are different from all other events: they do not have a "detail"   or "sequenceNumber", so there is room for a 248-bit key mask. */typedef struct {    BYTE type;    BYTE map[31];    } xKeymapEvent;#define XEventSize (sizeof(xEvent))/* XReply is the union of all the replies above whose "fixed part"fits in 32 bytes.  It does NOT include GetWindowAttributesReply,QueryFontReply, QueryKeymapReply, or GetKeyboardControlReply ListFontsWithInfoReply */typedef union {    xGenericReply generic;    xGetGeometryReply geom;    xQueryTreeReply tree;    xInternAtomReply atom;    xGetAtomNameReply atomName;    xGetPropertyReply property;    xListPropertiesReply listProperties;    xGetSelectionOwnerReply selection;    xGrabPointerReply grabPointer;    xGrabKeyboardReply grabKeyboard;    xQueryPointerReply pointer;    xGetMotionEventsReply motionEvents;    xTranslateCoordsReply coords;    xGetInputFocusReply inputFocus;    xQueryTextExtentsReply textExtents;    xListFontsReply fonts;    xGetFontPathReply fontPath;    xGetImageReply image;    xListInstalledColormapsReply colormaps;    xAllocColorReply allocColor;    xAllocNamedColorReply allocNamedColor;    xAllocColorCellsReply colorCells;    xAllocColorPlanesReply colorPlanes;    xQueryColorsReply colors;    xLookupColorReply lookupColor;    xQueryBestSizeReply bestSize;    xQueryExtensionReply extension;    xListExtensionsReply extensions;    xSetModifierMappingReply setModifierMapping;    xGetModifierMappingReply getModifierMapping;    xSetPointerMappingReply setPointerMapping;    xGetKeyboardMappingReply getKeyboardMapping;    xGetPointerMappingReply getPointerMapping;    xGetPointerControlReply pointerControl;    xGetScreenSaverReply screenSaver;    xListHostsReply hosts;    xError error;    xEvent event;} xReply;/***************************************************************** * REQUESTS *****************************************************************//* Request structure */typedef struct _xReq {	CARD8 reqType;	CARD8 data;            /* meaning depends on request type */	CARD16 length B16;         /* length in 4 bytes quantities 				  of whole request, including this header */} xReq;/***************************************************************** *  structures that follow request.  *****************************************************************//* ResourceReq is used for any request which has a resource ID    (or Atom or Time) as its one and only argument.  */typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    CARD32 id B32;  /* a Window, Drawable, Font, GContext, Pixmap, etc. */    } xResourceReq;typedef struct {    CARD8 reqType;    CARD8 depth;    CARD16 length B16;    Window wid B32, parent B32;    INT16 x B16, y B16;    CARD16 width B16, height B16, borderWidth B16;  #if defined(__cplusplus) || defined(c_plusplus)    CARD16 c_class B16;#else    CARD16 class B16;#endif    VisualID visual B32;    CARD32 mask B32;} xCreateWindowReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    Window window B32;    CARD32 valueMask B32; } xChangeWindowAttributesReq;typedef struct {    CARD8 reqType;    BYTE mode;    CARD16 length B16;    Window window B32;} xChangeSaveSetReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    Window window B32, parent B32;    INT16 x B16, y B16;} xReparentWindowReq;typedef struct {    CARD8 reqType;    CARD8 pad;    CARD16 length B16;    Window window B32;    CARD16 mask B16;    CARD16 pad2 B16;} xConfigureWindowReq;typedef struct {    CARD8 reqType;    CARD8 direction;    CARD16 length B16;    Window window B32;} xCirculateWindowReq;typedef struct {    /* followed by padded string */    CARD8 reqType;    BOOL onlyIfExists;    CARD16 length B16;    CARD16 nbytes  B16;    /* number of bytes in string */    CARD16 pad B16;} xInternAtomReq;typedef struct {    CARD8 reqType;    CARD8 mode;    CARD16 length B16;    Window window B32;    Atom property B32, type B32;    CARD8 format;    BYTE pad[3];    CARD32 nUnits B32;     /* length of stuff following, depends on format */} xChangePropertyReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    Window window B32;    Atom property B32;} xDeletePropertyReq;typedef struct {    CARD8 reqType;#if defined(__cplusplus) || defined(c_plusplus)    BOOL c_delete;#else    BOOL delete;#endif    CARD16 length B16;    Window window B32;    Atom property B32, type B32;    CARD32 longOffset B32;    CARD32 longLength B32;} xGetPropertyReq; typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    Window window B32;    Atom selection B32;    Time time B32;} xSetSelectionOwnerReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    Window requestor B32;    Atom selection B32, target B32, property B32;    Time time B32;    } xConvertSelectionReq;typedef struct {    CARD8 reqType;    BOOL propagate;    CARD16 length B16;    Window destination B32;    CARD32 eventMask B32;#ifdef WORD64    /* the structure should have been quad-aligned */    BYTE eventdata[SIZEOF(xEvent)];#else    xEvent event;#endif /* WORD64 */} xSendEventReq;typedef struct {    CARD8 reqType;    BOOL ownerEvents;    CARD16 length B16;    Window grabWindow B32;    CARD16 eventMask B16;    BYTE pointerMode, keyboardMode;    Window confineTo B32;    Cursor cursor B32;    Time time B32;} xGrabPointerReq;typedef struct {    CARD8 reqType;    BOOL ownerEvents;    CARD16 length B16;    Window grabWindow B32;    CARD16 eventMask B16;    BYTE pointerMode, keyboardMode;    Window confineTo B32;    Cursor cursor B32;    CARD8 button;    BYTE pad;    CARD16 modifiers B16;} xGrabButtonReq;typedef struct {    CARD8 reqType;    CARD8 button;    CARD16 length B16;    Window grabWindow B32;    CARD16 modifiers B16;    CARD16 pad B16;} xUngrabButtonReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    Cursor cursor B32;    Time time B32;    CARD16 eventMask B16;    CARD16 pad2 B16;} xChangeActivePointerGrabReq;typedef struct {    CARD8 reqType;    BOOL ownerEvents;    CARD16 length B16;    Window grabWindow B32;    Time time B32;    BYTE pointerMode, keyboardMode;      CARD16 pad B16;} xGrabKeyboardReq;typedef struct {    CARD8 reqType;    BOOL ownerEvents;    CARD16 length B16;    Window grabWindow B32;    CARD16 modifiers B16;    CARD8 key;    BYTE pointerMode, keyboardMode;      BYTE pad1, pad2, pad3;} xGrabKeyReq;typedef struct {    CARD8 reqType;    CARD8 key;    CARD16 length B16;    Window grabWindow B32;    CARD16 modifiers B16;    CARD16 pad B16;} xUngrabKeyReq;typedef struct {    CARD8 reqType;    CARD8 mode;    CARD16 length B16;    Time time B32;} xAllowEventsReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    Window window B32;    Time start B32, stop B32;} xGetMotionEventsReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    Window srcWid B32, dstWid B32;    INT16 srcX B16, srcY B16;} xTranslateCoordsReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    Window srcWid B32, dstWid B32;    INT16 srcX B16, srcY B16;    CARD16 srcWidth B16, srcHeight B16;    INT16 dstX B16, dstY B16;} xWarpPointerReq;typedef struct {    CARD8 reqType;    CARD8 revertTo;    CARD16 length B16;    Window focus B32;    Time time B32;} xSetInputFocusReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    Font fid B32;    CARD16 nbytes B16;    BYTE pad1, pad2;	/* string follows on word boundary */} xOpenFontReq;typedef struct {    CARD8 reqType;    BOOL oddLength;    CARD16 length B16;    Font fid B32;    } xQueryTextExtentsReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    CARD16 maxNames B16;    CARD16 nbytes B16;  /* followed immediately by string bytes */} xListFontsReq;typedef xListFontsReq xListFontsWithInfoReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    CARD16 nFonts B16;    BYTE pad1, pad2;	/* LISTofSTRING8 follows on word boundary */} xSetFontPathReq;typedef struct {    CARD8 reqType;    CARD8 depth;    CARD16 length B16;    Pixmap pid B32;    Drawable drawable B32;    CARD16 width B16, height B16;} xCreatePixmapReq;typedef struct {    CARD8 reqType;    BYTE pad;    CARD16 length B16;    GContext gc B32;    Drawable drawable B32;    CARD32 mask B32;} xCreateGCReq;typedef struct {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -