1ea1d6981Smrg<appendix id="protocol_encoding"> 2ea1d6981Smrg<title>Protocol Encoding</title> 3ea1d6981Smrg<!-- 4ea1d6981Smrg The sections in this appendix correspond to their 5ea1d6981Smrg number counterparts in the protocol document. 6ea1d6981Smrg--> 7ea1d6981Smrg<sect1 id='Syntactic_Conventions_b'> 8ea1d6981Smrg<title>Syntactic Conventions</title> 9ea1d6981Smrg 10ea1d6981Smrg<para> 11ea1d6981SmrgAll numbers are in decimal, 12ea1d6981Smrgunless prefixed with #x, in which case they are in hexadecimal (base 16). 13ea1d6981Smrg</para> 14ea1d6981Smrg 15ea1d6981Smrg<para> 16ea1d6981SmrgThe general syntax used to describe requests, replies, errors, events, and 17ea1d6981Smrgcompound types is: 18ea1d6981Smrg</para> 19ea1d6981Smrg 20ea1d6981Smrg<literallayout class="monospaced"> 21ea1d6981Smrg <emphasis role='bold'>NameofThing</emphasis> 22ea1d6981Smrg encode-form 23ea1d6981Smrg ... 24ea1d6981Smrg encode-form 25ea1d6981Smrg</literallayout> 26ea1d6981Smrg 27ea1d6981Smrg<para> 28ea1d6981SmrgEach encode-form describes a single component. 29ea1d6981Smrg</para> 30ea1d6981Smrg<para> 31ea1d6981SmrgFor components described in the protocol as: 32ea1d6981Smrg</para> 33ea1d6981Smrg<literallayout class="monospaced"> 34ea1d6981Smrg name: TYPE 35ea1d6981Smrg</literallayout> 36ea1d6981Smrg 37ea1d6981Smrg<para> 38ea1d6981Smrgthe encode-form is: 39ea1d6981Smrg</para> 40ea1d6981Smrg 41ea1d6981Smrg<literallayout class="monospaced"> 42ea1d6981Smrg N TYPE name 43ea1d6981Smrg</literallayout> 44ea1d6981Smrg 45ea1d6981Smrg<para> 46ea1d6981SmrgN is the number of bytes occupied in the data stream, 47ea1d6981Smrgand TYPE is the interpretation of those bytes. 48ea1d6981SmrgFor example, 49ea1d6981Smrg</para> 50ea1d6981Smrg 51ea1d6981Smrg<literallayout class="monospaced"> 52ea1d6981Smrg depth: CARD8 53ea1d6981Smrg</literallayout> 54ea1d6981Smrg 55ea1d6981Smrg<para> 56ea1d6981Smrgbecomes: 57ea1d6981Smrg</para> 58ea1d6981Smrg 59ea1d6981Smrg<literallayout class="monospaced"> 60ea1d6981Smrg 1 CARD8 depth 61ea1d6981Smrg</literallayout> 62ea1d6981Smrg 63ea1d6981Smrg<para> 64ea1d6981SmrgFor components with a static numeric value the encode-form is: 65ea1d6981Smrg</para> 66ea1d6981Smrg 67ea1d6981Smrg<literallayout class="monospaced"> 68ea1d6981Smrg N value name 69ea1d6981Smrg</literallayout> 70ea1d6981Smrg 71ea1d6981Smrg<para> 72ea1d6981SmrgThe value is always interpreted as an N-byte unsigned integer. 73ea1d6981SmrgFor example, 74ea1d6981Smrgthe first two bytes of a 75ea1d6981Smrg<emphasis role='bold'>Window</emphasis> 76ea1d6981Smrgerror are always zero (indicating an 77ea1d6981Smrgerror in general) and three (indicating the 78ea1d6981Smrg<emphasis role='bold'>Window</emphasis> 79ea1d6981Smrgerror in particular): 80ea1d6981Smrg</para> 81ea1d6981Smrg 82ea1d6981Smrg<literallayout class="monospaced"> 83ea1d6981Smrg 1 0 Error 84ea1d6981Smrg 1 3 code 85ea1d6981Smrg</literallayout> 86ea1d6981Smrg 87ea1d6981Smrg<para> 88ea1d6981SmrgFor components described in the protocol as: 89ea1d6981Smrg</para> 90ea1d6981Smrg 91ea1d6981Smrg<para> 92ea1d6981Smrgname: 93ea1d6981Smrg{ <emphasis role='bold'>Name1</emphasis>,..., 94ea1d6981Smrg<emphasis role='bold'>NameI</emphasis>} 95ea1d6981Smrg</para> 96ea1d6981Smrg 97ea1d6981Smrg<para> 98ea1d6981Smrgthe encode-form is: 99ea1d6981Smrg</para> 100ea1d6981Smrg 101ea1d6981Smrg<literallayout class="monospaced"> 102ea1d6981Smrg N name 103ea1d6981Smrg value1 Name1 104ea1d6981Smrg ... 105ea1d6981Smrg valueI NameI 106ea1d6981Smrg</literallayout> 107ea1d6981Smrg 108ea1d6981Smrg<para> 109ea1d6981SmrgThe value is always interpreted as an N-byte unsigned integer. 110ea1d6981SmrgNote that the size of N is sometimes larger than that strictly required 111ea1d6981Smrgto encode the values. 112ea1d6981SmrgFor example: 113ea1d6981Smrg</para> 114ea1d6981Smrg 115ea1d6981Smrg<para> 116ea1d6981Smrgclass: 117ea1d6981Smrg{ <emphasis role='bold'>InputOutput</emphasis>, 118ea1d6981Smrg<emphasis role='bold'>InputOnly</emphasis>, 119ea1d6981Smrg<emphasis role='bold'>CopyFromParent</emphasis> } 120ea1d6981Smrg</para> 121ea1d6981Smrg 122ea1d6981Smrg<para> 123ea1d6981Smrgbecomes: 124ea1d6981Smrg</para> 125ea1d6981Smrg 126ea1d6981Smrg<literallayout class="monospaced"> 127ea1d6981Smrg2 class 128ea1d6981Smrg 0 CopyFromParent 129ea1d6981Smrg 1 InputOutput 130ea1d6981Smrg 2 InputOnly 131ea1d6981Smrg</literallayout> 132ea1d6981Smrg 133ea1d6981Smrg<para> 134ea1d6981SmrgFor components described in the protocol as: 135ea1d6981Smrg</para> 136ea1d6981Smrg 137ea1d6981Smrg<para> 138ea1d6981SmrgNAME: TYPE or 139ea1d6981Smrg<emphasis role='bold'>Alternative1 ...or</emphasis> 140ea1d6981Smrg<emphasis role='bold'>AlternativeI</emphasis> 141ea1d6981Smrg</para> 142ea1d6981Smrg 143ea1d6981Smrg<para> 144ea1d6981Smrgthe encode-form is: 145ea1d6981Smrg</para> 146ea1d6981Smrg 147ea1d6981Smrg<literallayout class="monospaced"> 148ea1d6981SmrgN TYPE NAME 149ea1d6981Smrg value1 Alternative1 150ea1d6981Smrg ... 151ea1d6981Smrg valueI AlternativeI 152ea1d6981Smrg</literallayout> 153ea1d6981Smrg 154ea1d6981Smrg<para> 155ea1d6981SmrgThe alternative values are guaranteed not to conflict with the encoding 156ea1d6981Smrgof TYPE. 157ea1d6981SmrgFor example: 158ea1d6981Smrg</para> 159ea1d6981Smrg 160ea1d6981Smrg<para> 161ea1d6981Smrgdestination: WINDOW or 162ea1d6981Smrg<emphasis role='bold'>PointerWindow</emphasis> 163ea1d6981Smrgor 164ea1d6981Smrg<emphasis role='bold'>InputFocus</emphasis> 165ea1d6981Smrg</para> 166ea1d6981Smrg 167ea1d6981Smrg<para> 168ea1d6981Smrgbecomes: 169ea1d6981Smrg</para> 170ea1d6981Smrg 171ea1d6981Smrg<literallayout class="monospaced"> 172ea1d6981Smrg4 WINDOW destination 173ea1d6981Smrg 0 PointerWindow 174ea1d6981Smrg 1 InputFocus 175ea1d6981Smrg</literallayout> 176ea1d6981Smrg 177ea1d6981Smrg<para> 178ea1d6981SmrgFor components described in the protocol as: 179ea1d6981Smrg</para> 180ea1d6981Smrg 181ea1d6981Smrg<literallayout class="monospaced"> 182ea1d6981Smrg value-mask: BITMASK 183ea1d6981Smrg</literallayout> 184ea1d6981Smrg 185ea1d6981Smrg<para> 186ea1d6981Smrgthe encode-form is: 187ea1d6981Smrg</para> 188ea1d6981Smrg 189ea1d6981Smrg<literallayout class="monospaced"> 190ea1d6981SmrgN BITMASK value-mask 191ea1d6981Smrg mask1 mask-name1 192ea1d6981Smrg ... 193ea1d6981Smrg maskI mask-nameI 194ea1d6981Smrg</literallayout> 195ea1d6981Smrg 196ea1d6981Smrg<para> 197ea1d6981SmrgThe individual bits in the mask are specified and named, 198ea1d6981Smrgand N is 2 or 4. 199ea1d6981SmrgThe most-significant bit in a BITMASK is reserved for use in defining 200ea1d6981Smrgchained (multiword) bitmasks, as extensions augment existing core requests. 201ea1d6981SmrgThe precise interpretation of this bit is not yet defined here, 202ea1d6981Smrgalthough a probable mechanism is that a 1-bit indicates that another N bytes 203ea1d6981Smrgof bitmask follows, with bits within the overall mask still interpreted 204ea1d6981Smrgfrom least-significant to most-significant with an N-byte unit, 205ea1d6981Smrgwith N-byte units 206ea1d6981Smrginterpreted in stream order, and with the overall mask being byte-swapped 207ea1d6981Smrgin individual N-byte units. 208ea1d6981Smrg</para> 209ea1d6981Smrg 210ea1d6981Smrg<para> 211ea1d6981SmrgFor LISTofVALUE encodings, the request is followed by a section of the form: 212ea1d6981Smrg</para> 213ea1d6981Smrg 214ea1d6981Smrg<literallayout class="monospaced"> 215ea1d6981Smrg VALUEs 216ea1d6981Smrg encode-form 217ea1d6981Smrg ... 218ea1d6981Smrg encode-form 219ea1d6981Smrg</literallayout> 220ea1d6981Smrg 221ea1d6981Smrg<para> 222ea1d6981Smrglisting an encode-form for each VALUE. 223ea1d6981SmrgThe NAME in each encode-form keys to the corresponding BITMASK bit. 224ea1d6981SmrgThe encoding of a VALUE always occupies four bytes, 225ea1d6981Smrgbut the number of bytes specified in the encoding-form indicates how 226ea1d6981Smrgmany of the least-significant bytes are actually used; 227ea1d6981Smrgthe remaining bytes are unused and their values do not matter. 228ea1d6981Smrg</para> 229ea1d6981Smrg 230ea1d6981Smrg<para> 231ea1d6981SmrgIn various cases, the number of bytes occupied by a component will be 232ea1d6981Smrgspecified 233ea1d6981Smrgby a lowercase single-letter variable name instead of a specific numeric 234ea1d6981Smrgvalue, and often some other component will have its value specified as a 235ea1d6981Smrgsimple numeric expression involving these variables. 236ea1d6981SmrgComponents specified with such expressions are always interpreted 237ea1d6981Smrgas unsigned integers. 238ea1d6981SmrgThe scope of such variables is always just the enclosing request, reply, 239ea1d6981Smrgerror, event, or compound type structure. 240ea1d6981SmrgFor example: 241ea1d6981Smrg</para> 242ea1d6981Smrg 243ea1d6981Smrg<literallayout class="monospaced"> 244ea1d6981Smrg2 3+n request length 245ea1d6981Smrg4n LISTofPOINT points 246ea1d6981Smrg</literallayout> 247ea1d6981Smrg 248ea1d6981Smrg<para> 249ea1d6981SmrgFor unused bytes (the values of the bytes are undefined and do no matter), 250ea1d6981Smrgthe encode-form is: 251ea1d6981Smrg</para> 252ea1d6981Smrg 253ea1d6981Smrg<literallayout class="monospaced"> 254ea1d6981Smrg N unused 255ea1d6981Smrg</literallayout> 256ea1d6981Smrg 257ea1d6981Smrg<para> 258ea1d6981Smrg<!-- .LP --> 259ea1d6981SmrgIf the number of unused bytes is variable, the encode-form typically is: 260ea1d6981Smrg</para> 261ea1d6981Smrg 262ea1d6981Smrg<literallayout class="monospaced"> 263ea1d6981Smrg p unused, p=pad(E) 264ea1d6981Smrg</literallayout> 265ea1d6981Smrg 266ea1d6981Smrg<para> 267ea1d6981Smrgwhere E is some expression, 268ea1d6981Smrg<phrase id="encoding:pad"> 269ea1d6981Smrg<indexterm zone="encoding:pad" significance="preferred"><primary>Padding</primary></indexterm> 270ea1d6981Smrgand pad(E) is the number of bytes needed to round E up to a multiple of four. 271ea1d6981Smrg</phrase> 272ea1d6981Smrg</para> 273ea1d6981Smrg 274ea1d6981Smrg<literallayout class="monospaced"> 275ea1d6981Smrg pad(E) = (4 - (E mod 4)) mod 4 276ea1d6981Smrg</literallayout> 277ea1d6981Smrg</sect1> 278ea1d6981Smrg 279ea1d6981Smrg<sect1 id='Encoding::Common_Types'> 280ea1d6981Smrg<title>Common Types</title> 281ea1d6981Smrg<indexterm zone="Encoding::Common_Types"><primary>Types</primary><secondary>encoding</secondary></indexterm> 282ea1d6981Smrg 283ea1d6981Smrg<variablelist> 284ea1d6981Smrg <varlistentry> 285ea1d6981Smrg <term>LISTofFOO</term> 286ea1d6981Smrg <listitem> 287ea1d6981Smrg <para> 288ea1d6981SmrgIn this document the LISTof notation strictly means some number of repetitions 289ea1d6981Smrgof the FOO encoding; 290ea1d6981Smrgthe actual length of the list is encoded elsewhere. 291ea1d6981Smrg </para> 292ea1d6981Smrg </listitem> 293ea1d6981Smrg </varlistentry> 294ea1d6981Smrg <varlistentry> 295ea1d6981Smrg <term>SETofFOO</term> 296ea1d6981Smrg <listitem> 297ea1d6981Smrg <para> 298ea1d6981SmrgA set is always represented by a bitmask, with a 1-bit indicating presence in 299ea1d6981Smrgthe set. 300ea1d6981Smrg </para> 301ea1d6981Smrg </listitem> 302ea1d6981Smrg </varlistentry> 303ea1d6981Smrg</variablelist> 304ea1d6981Smrg 305ea1d6981Smrg<informaltable frame='none'> 306ea1d6981Smrg <tgroup cols='1' align='left' colsep='0' rowsep='0'> 307ea1d6981Smrg <colspec colname='c1' colwidth='1.0*'/> 308ea1d6981Smrg <tbody> 309ea1d6981Smrg <row> 310ea1d6981Smrg <entry> 311ea1d6981SmrgBITMASK: CARD32 312ea1d6981Smrg </entry> 313ea1d6981Smrg </row> 314ea1d6981Smrg <row> 315ea1d6981Smrg <entry> 316ea1d6981SmrgWINDOW: CARD32 317ea1d6981Smrg </entry> 318ea1d6981Smrg </row> 319ea1d6981Smrg <row> 320ea1d6981Smrg <entry> 321ea1d6981SmrgPIXMAP: CARD32 322ea1d6981Smrg </entry> 323ea1d6981Smrg </row> 324ea1d6981Smrg <row> 325ea1d6981Smrg <entry> 326ea1d6981SmrgCURSOR: CARD32 327ea1d6981Smrg </entry> 328ea1d6981Smrg </row> 329ea1d6981Smrg <row> 330ea1d6981Smrg <entry> 331ea1d6981SmrgFONT: CARD32 332ea1d6981Smrg </entry> 333ea1d6981Smrg </row> 334ea1d6981Smrg <row> 335ea1d6981Smrg <entry> 336ea1d6981SmrgGCONTEXT: CARD32 337ea1d6981Smrg </entry> 338ea1d6981Smrg </row> 339ea1d6981Smrg <row> 340ea1d6981Smrg <entry> 341ea1d6981SmrgCOLORMAP: CARD32 342ea1d6981Smrg </entry> 343ea1d6981Smrg </row> 344ea1d6981Smrg <row> 345ea1d6981Smrg <entry> 346ea1d6981SmrgDRAWABLE: CARD32 347ea1d6981Smrg </entry> 348ea1d6981Smrg </row> 349ea1d6981Smrg <row> 350ea1d6981Smrg <entry> 351ea1d6981SmrgFONTABLE: CARD32 352ea1d6981Smrg </entry> 353ea1d6981Smrg </row> 354ea1d6981Smrg <row> 355ea1d6981Smrg <entry> 356ea1d6981SmrgATOM: CARD32 357ea1d6981Smrg </entry> 358ea1d6981Smrg </row> 359ea1d6981Smrg <row> 360ea1d6981Smrg <entry> 361ea1d6981SmrgVISUALID: CARD32 362ea1d6981Smrg </entry> 363ea1d6981Smrg </row> 364ea1d6981Smrg <row> 365ea1d6981Smrg <entry> 366ea1d6981SmrgBYTE: 8-bit value 367ea1d6981Smrg </entry> 368ea1d6981Smrg </row> 369ea1d6981Smrg <row> 370ea1d6981Smrg <entry> 371ea1d6981SmrgINT8: 8-bit signed integer 372ea1d6981Smrg </entry> 373ea1d6981Smrg </row> 374ea1d6981Smrg <row> 375ea1d6981Smrg <entry> 376ea1d6981SmrgINT16: 16-bit signed integer 377ea1d6981Smrg </entry> 378ea1d6981Smrg </row> 379ea1d6981Smrg <row> 380ea1d6981Smrg <entry> 381ea1d6981SmrgINT32: 32-bit signed integer 382ea1d6981Smrg </entry> 383ea1d6981Smrg </row> 384ea1d6981Smrg <row> 385ea1d6981Smrg <entry> 386ea1d6981SmrgCARD8: 8-bit unsigned integer 387ea1d6981Smrg </entry> 388ea1d6981Smrg </row> 389ea1d6981Smrg <row> 390ea1d6981Smrg <entry> 391ea1d6981SmrgCARD16: 16-bit unsigned integer 392ea1d6981Smrg </entry> 393ea1d6981Smrg </row> 394ea1d6981Smrg <row> 395ea1d6981Smrg <entry> 396ea1d6981SmrgCARD32: 32-bit unsigned integer 397ea1d6981Smrg </entry> 398ea1d6981Smrg </row> 399ea1d6981Smrg <row> 400ea1d6981Smrg <entry> 401ea1d6981SmrgTIMESTAMP: CARD32 402ea1d6981Smrg </entry> 403ea1d6981Smrg </row> 404ea1d6981Smrg </tbody> 405ea1d6981Smrg </tgroup> 406ea1d6981Smrg</informaltable> 407ea1d6981Smrg 408ea1d6981Smrg 409ea1d6981Smrg<literallayout class="monospaced"> 410ea1d6981SmrgBITGRAVITY 411ea1d6981Smrg 0 Forget 412ea1d6981Smrg 1 NorthWest 413ea1d6981Smrg 2 North 414ea1d6981Smrg 3 NorthEast 415ea1d6981Smrg 4 West 416ea1d6981Smrg 5 Center 417ea1d6981Smrg 6 East 418ea1d6981Smrg 7 SouthWest 419ea1d6981Smrg 8 South 420ea1d6981Smrg 9 SouthEast 421ea1d6981Smrg 10 Static 422ea1d6981Smrg 423ea1d6981SmrgWINGRAVITY 424ea1d6981Smrg 0 Unmap 425ea1d6981Smrg 1 NorthWest 426ea1d6981Smrg 2 North 427ea1d6981Smrg 3 NorthEast 428ea1d6981Smrg 4 West 429ea1d6981Smrg 5 Center 430ea1d6981Smrg 6 East 431ea1d6981Smrg 7 SouthWest 432ea1d6981Smrg 8 South 433ea1d6981Smrg 9 SouthEast 434ea1d6981Smrg 10 Static 435ea1d6981Smrg 436ea1d6981SmrgBOOL 437ea1d6981Smrg 0 False 438ea1d6981Smrg 1 True 439ea1d6981Smrg 440ea1d6981SmrgSETofEVENT 441ea1d6981Smrg #x00000001 KeyPress 442ea1d6981Smrg #x00000002 KeyRelease 443ea1d6981Smrg #x00000004 ButtonPress 444ea1d6981Smrg #x00000008 ButtonRelease 445ea1d6981Smrg #x00000010 EnterWindow 446ea1d6981Smrg #x00000020 LeaveWindow 447ea1d6981Smrg #x00000040 PointerMotion 448ea1d6981Smrg #x00000080 PointerMotionHint 449ea1d6981Smrg #x00000100 Button1Motion 450ea1d6981Smrg #x00000200 Button2Motion 451ea1d6981Smrg #x00000400 Button3Motion 452ea1d6981Smrg #x00000800 Button4Motion 453ea1d6981Smrg #x00001000 Button5Motion 454ea1d6981Smrg #x00002000 ButtonMotion 455ea1d6981Smrg #x00004000 KeymapState 456ea1d6981Smrg #x00008000 Exposure 457ea1d6981Smrg #x00010000 VisibilityChange 458ea1d6981Smrg #x00020000 StructureNotify 459ea1d6981Smrg #x00040000 ResizeRedirect 460ea1d6981Smrg #x00080000 SubstructureNotify 461ea1d6981Smrg #x00100000 SubstructureRedirect 462ea1d6981Smrg #x00200000 FocusChange 463ea1d6981Smrg #x00400000 PropertyChange 464ea1d6981Smrg #x00800000 ColormapChange 465ea1d6981Smrg #x01000000 OwnerGrabButton 466ea1d6981Smrg #xFE000000 unused but must be zero 467ea1d6981Smrg 468ea1d6981SmrgSETofPOINTEREVENT 469ea1d6981Smrg encodings are the same as for SETofEVENT, except with 470ea1d6981Smrg #xFFFF8003 unused but must be zero 471ea1d6981Smrg 472ea1d6981SmrgSETofDEVICEEVENT 473ea1d6981Smrg encodings are the same as for SETofEVENT, except with 474ea1d6981Smrg #xFFFFC0B0 unused but must be zero 475ea1d6981Smrg 476ea1d6981SmrgKEYSYM: CARD32 477ea1d6981SmrgKEYCODE: CARD8 478ea1d6981SmrgBUTTON: CARD8 479ea1d6981Smrg 480ea1d6981SmrgSETofKEYBUTMASK 481ea1d6981Smrg #x0001 Shift 482ea1d6981Smrg #x0002 Lock 483ea1d6981Smrg #x0004 Control 484ea1d6981Smrg #x0008 Mod1 485ea1d6981Smrg #x0010 Mod2 486ea1d6981Smrg #x0020 Mod3 487ea1d6981Smrg #x0040 Mod4 488ea1d6981Smrg #x0080 Mod5 489ea1d6981Smrg #x0100 Button1 490ea1d6981Smrg #x0200 Button2 491ea1d6981Smrg #x0400 Button3 492ea1d6981Smrg #x0800 Button4 493ea1d6981Smrg #x1000 Button5 494ea1d6981Smrg #xE000 unused but must be zero 495ea1d6981Smrg 496ea1d6981SmrgSETofKEYMASK 497ea1d6981Smrg encodings are the same as for SETofKEYBUTMASK, except with 498ea1d6981Smrg #xFF00 unused but must be zero 499ea1d6981SmrgSTRING8: LISTofCARD8 500ea1d6981SmrgSTRING16: LISTofCHAR2B 501ea1d6981Smrg 502ea1d6981SmrgCHAR2B 503ea1d6981Smrg 1 CARD8 byte1 504ea1d6981Smrg 1 CARD8 byte2 505ea1d6981Smrg 506ea1d6981SmrgPOINT 507ea1d6981Smrg 2 INT16 x 508ea1d6981Smrg 2 INT16 y 509ea1d6981Smrg 510ea1d6981SmrgRECTANGLE 511ea1d6981Smrg 2 INT16 x 512ea1d6981Smrg 2 INT16 y 513ea1d6981Smrg 2 CARD16 width 514ea1d6981Smrg 2 CARD16 height 515ea1d6981Smrg 516ea1d6981SmrgARC 517ea1d6981Smrg 2 INT16 x 518ea1d6981Smrg 2 INT16 y 519ea1d6981Smrg 2 CARD16 width 520ea1d6981Smrg 2 CARD16 height 521ea1d6981Smrg 2 INT16 angle1 522ea1d6981Smrg 2 INT16 angle2 523ea1d6981Smrg 524ea1d6981SmrgHOST 525ea1d6981Smrg 1 family 526ea1d6981Smrg 0 Internet 527ea1d6981Smrg 1 DECnet 528ea1d6981Smrg 2 Chaos 529ea1d6981Smrg 5 ServerInterpreted 530ea1d6981Smrg 6 InternetV6 531ea1d6981Smrg 1 unused 532ea1d6981Smrg 2 n length of address 533ea1d6981Smrg n LISTofBYTE address 534ea1d6981Smrg p unused, p=pad(n) 535ea1d6981Smrg 536ea1d6981SmrgSTR 537ea1d6981Smrg 1 n length of name in bytes 538ea1d6981Smrg n STRING8 name 539ea1d6981Smrg 540ea1d6981Smrg</literallayout> 541ea1d6981Smrg</sect1> 542ea1d6981Smrg 543ea1d6981Smrg<sect1 id='Encoding::Errors'> 544ea1d6981Smrg<title>Errors</title> 545ea1d6981Smrg<indexterm zone="Encoding::Errors"><primary>Error report</primary><secondary>encoding</secondary></indexterm> 546ea1d6981Smrg 547ea1d6981Smrg<literallayout class="monospaced"> 548ea1d6981Smrg<emphasis role='bold'>Request</emphasis> 549ea1d6981Smrg 1 0 Error 550ea1d6981Smrg 1 1 code 551ea1d6981Smrg 2 CARD16 sequence number 552ea1d6981Smrg 4 unused 553ea1d6981Smrg 2 CARD16 minor opcode 554ea1d6981Smrg 1 CARD8 major opcode 555ea1d6981Smrg 21 unused 556ea1d6981Smrg 557ea1d6981Smrg<emphasis role='bold'>Value</emphasis> 558ea1d6981Smrg 1 0 Error 559ea1d6981Smrg 1 2 code 560ea1d6981Smrg 2 CARD16 sequence number 561ea1d6981Smrg 4 <32-bits> bad value 562ea1d6981Smrg 2 CARD16 minor opcode 563ea1d6981Smrg 1 CARD8 major opcode 564ea1d6981Smrg 21 unused 565ea1d6981Smrg 566ea1d6981Smrg<emphasis role='bold'>Window</emphasis> 567ea1d6981Smrg 1 0 Error 568ea1d6981Smrg 1 3 code 569ea1d6981Smrg 2 CARD16 sequence number 570ea1d6981Smrg 4 CARD32 bad resource id 571ea1d6981Smrg 2 CARD16 minor opcode 572ea1d6981Smrg 1 CARD8 major opcode 573ea1d6981Smrg 21 unused 574ea1d6981Smrg 575ea1d6981Smrg<emphasis role='bold'>Pixmap</emphasis> 576ea1d6981Smrg 1 0 Error 577ea1d6981Smrg 1 4 code 578ea1d6981Smrg 2 CARD16 sequence number 579ea1d6981Smrg 4 CARD32 bad resource id 580ea1d6981Smrg 2 CARD16 minor opcode 581ea1d6981Smrg 1 CARD8 major opcode 582ea1d6981Smrg 21 unused 583ea1d6981Smrg 584ea1d6981Smrg<emphasis role='bold'>Atom</emphasis> 585ea1d6981Smrg 1 0 Error 586ea1d6981Smrg 1 5 code 587ea1d6981Smrg 2 CARD16 sequence number 588ea1d6981Smrg 4 CARD32 bad atom id 589ea1d6981Smrg 2 CARD16 minor opcode 590ea1d6981Smrg 1 CARD8 major opcode 591ea1d6981Smrg 21 unused 592ea1d6981Smrg 593ea1d6981Smrg<emphasis role='bold'>Cursor</emphasis> 594ea1d6981Smrg 1 0 Error 595ea1d6981Smrg 1 6 code 596ea1d6981Smrg 2 CARD16 sequence number 597ea1d6981Smrg 4 CARD32 bad resource id 598ea1d6981Smrg 2 CARD16 minor opcode 599ea1d6981Smrg 1 CARD8 major opcode 600ea1d6981Smrg 21 unused 601ea1d6981Smrg 602ea1d6981Smrg<emphasis role='bold'>Font</emphasis> 603ea1d6981Smrg 1 0 Error 604ea1d6981Smrg 1 7 code 605ea1d6981Smrg 2 CARD16 sequence number 606ea1d6981Smrg 4 CARD32 bad resource id 607ea1d6981Smrg 2 CARD16 minor opcode 608ea1d6981Smrg 1 CARD8 major opcode 609ea1d6981Smrg 21 unused 610ea1d6981Smrg 611ea1d6981Smrg<emphasis role='bold'>Match</emphasis> 612ea1d6981Smrg 1 0 Error 613ea1d6981Smrg 1 8 code 614ea1d6981Smrg 2 CARD16 sequence number 615ea1d6981Smrg 4 unused 616ea1d6981Smrg 2 CARD16 minor opcode 617ea1d6981Smrg 1 CARD8 major opcode 618ea1d6981Smrg 21 unused 619ea1d6981Smrg 620ea1d6981Smrg<emphasis role='bold'>Drawable</emphasis> 621ea1d6981Smrg 1 0 Error 622ea1d6981Smrg 1 9 code 623ea1d6981Smrg 2 CARD16 sequence number 624ea1d6981Smrg 4 CARD32 bad resource id 625ea1d6981Smrg 2 CARD16 minor opcode 626ea1d6981Smrg 1 CARD8 major opcode 627ea1d6981Smrg 21 unused 628ea1d6981Smrg 629ea1d6981Smrg<emphasis role='bold'>Access</emphasis> 630ea1d6981Smrg 1 0 Error 631ea1d6981Smrg 1 10 code 632ea1d6981Smrg 2 CARD16 sequence number 633ea1d6981Smrg 4 unused 634ea1d6981Smrg 2 CARD16 minor opcode 635ea1d6981Smrg 1 CARD8 major opcode 636ea1d6981Smrg 21 unused 637ea1d6981Smrg 638ea1d6981Smrg<emphasis role='bold'>Alloc</emphasis> 639ea1d6981Smrg 1 0 Error 640ea1d6981Smrg 1 11 code 641ea1d6981Smrg 2 CARD16 sequence number 642ea1d6981Smrg 4 unused 643ea1d6981Smrg 2 CARD16 minor opcode 644ea1d6981Smrg 1 CARD8 major opcode 645ea1d6981Smrg 21 unused 646ea1d6981Smrg 647ea1d6981Smrg<emphasis role='bold'>Colormap</emphasis> 648ea1d6981Smrg 1 0 Error 649ea1d6981Smrg 1 12 code 650ea1d6981Smrg 2 CARD16 sequence number 651ea1d6981Smrg 4 CARD32 bad resource id 652ea1d6981Smrg 2 CARD16 minor opcode 653ea1d6981Smrg 1 CARD8 major opcode 654ea1d6981Smrg 21 unused 655ea1d6981Smrg 656ea1d6981Smrg<emphasis role='bold'>GContext</emphasis> 657ea1d6981Smrg 1 0 Error 658ea1d6981Smrg 1 13 code 659ea1d6981Smrg 2 CARD16 sequence number 660ea1d6981Smrg 4 CARD32 bad resource id 661ea1d6981Smrg 2 CARD16 minor opcode 662ea1d6981Smrg 1 CARD8 major opcode 663ea1d6981Smrg 21 unused 664ea1d6981Smrg 665ea1d6981Smrg<emphasis role='bold'>IDChoice</emphasis> 666ea1d6981Smrg 1 0 Error 667ea1d6981Smrg 1 14 code 668ea1d6981Smrg 2 CARD16 sequence number 669ea1d6981Smrg 4 CARD32 bad resource id 670ea1d6981Smrg 2 CARD16 minor opcode 671ea1d6981Smrg 1 CARD8 major opcode 672ea1d6981Smrg 21 unused 673ea1d6981Smrg 674ea1d6981Smrg<emphasis role='bold'>Name</emphasis> 675ea1d6981Smrg 1 0 Error 676ea1d6981Smrg 1 15 code 677ea1d6981Smrg 2 CARD16 sequence number 678ea1d6981Smrg 4 unused 679ea1d6981Smrg 2 CARD16 minor opcode 680ea1d6981Smrg 1 CARD8 major opcode 681ea1d6981Smrg 21 unused 682ea1d6981Smrg 683ea1d6981Smrg<emphasis role='bold'>Length</emphasis> 684ea1d6981Smrg 1 0 Error 685ea1d6981Smrg 1 16 code 686ea1d6981Smrg 2 CARD16 sequence number 687ea1d6981Smrg 4 unused 688ea1d6981Smrg 2 CARD16 minor opcode 689ea1d6981Smrg 1 CARD8 major opcode 690ea1d6981Smrg 21 unused 691ea1d6981Smrg 692ea1d6981Smrg<emphasis role='bold'>Implementation</emphasis> 693ea1d6981Smrg 1 0 Error 694ea1d6981Smrg 1 17 code 695ea1d6981Smrg 2 CARD16 sequence number 696ea1d6981Smrg 4 unused 697ea1d6981Smrg 2 CARD16 minor opcode 698ea1d6981Smrg 1 CARD8 major opcode 699ea1d6981Smrg 21 unused 700ea1d6981Smrg</literallayout> 701ea1d6981Smrg</sect1> 702ea1d6981Smrg 703ea1d6981Smrg<sect1 id='Encoding::Keyboards'> 704ea1d6981Smrg<title>Keyboards</title> 705ea1d6981Smrg 706ea1d6981Smrg<para> 707ea1d6981SmrgKEYCODE values are always greater than 7 (and less than 256). 708ea1d6981Smrg</para> 709ea1d6981Smrg 710ea1d6981Smrg<para> 711ea1d6981SmrgKEYSYM values with the bit #x10000000 set are reserved as vendor-specific. 712ea1d6981Smrg</para> 713ea1d6981Smrg 714ea1d6981Smrg<para> 715ea1d6981SmrgThe names and encodings of the standard KEYSYM values are contained in 716ea1d6981Smrg<link linkend="keysym_encoding">Appendix A, Keysym Encoding</link>. 717ea1d6981Smrg</para> 718ea1d6981Smrg</sect1> 719ea1d6981Smrg 720ea1d6981Smrg<sect1 id='Encoding::Pointers'> 721ea1d6981Smrg<title>Pointers</title> 722ea1d6981Smrg 723ea1d6981Smrg<para> 724ea1d6981SmrgBUTTON values are numbered starting with one. 725ea1d6981Smrg</para> 726ea1d6981Smrg 727ea1d6981Smrg</sect1> 728ea1d6981Smrg<sect1 id='Encoding::Predefined_Atoms'> 729ea1d6981Smrg<title>Predefined Atoms</title> 730ea1d6981Smrg<indexterm zone="Encoding::Predefined_Atoms"><primary>Atom</primary><secondary>predefined</secondary></indexterm> 731ea1d6981Smrg 732ea1d6981Smrg<literallayout class="monospaced"> 733ea1d6981SmrgPRIMARY 1 WM_NORMAL_HINTS 40 734ea1d6981SmrgSECONDARY 2 WM_SIZE_HINTS 41 735ea1d6981SmrgARC 3 WM_ZOOM_HINTS 42 736ea1d6981SmrgATOM 4 MIN_SPACE 43 737ea1d6981SmrgBITMAP 5 NORM_SPACE 44 738ea1d6981SmrgCARDINAL 6 MAX_SPACE 45 739ea1d6981SmrgCOLORMAP 7 END_SPACE 46 740ea1d6981SmrgCURSOR 8 SUPERSCRIPT_X 47 741ea1d6981SmrgCUT_BUFFER0 9 SUPERSCRIPT_Y 48 742ea1d6981SmrgCUT_BUFFER1 10 SUBSCRIPT_X 49 743ea1d6981SmrgCUT_BUFFER2 11 SUBSCRIPT_Y 50 744ea1d6981SmrgCUT_BUFFER3 12 UNDERLINE_POSITION 51 745ea1d6981SmrgCUT_BUFFER4 13 UNDERLINE_THICKNESS 52 746ea1d6981SmrgCUT_BUFFER5 14 STRIKEOUT_ASCENT 53 747ea1d6981SmrgCUT_BUFFER6 15 STRIKEOUT_DESCENT 54 748ea1d6981SmrgCUT_BUFFER7 16 ITALIC_ANGLE 55 749ea1d6981SmrgDRAWABLE 17 X_HEIGHT 56 750ea1d6981SmrgFONT 18 QUAD_WIDTH 57 751ea1d6981SmrgINTEGER 19 WEIGHT 58 752ea1d6981SmrgPIXMAP 20 POINT_SIZE 59 753ea1d6981SmrgPOINT 21 RESOLUTION 60 754ea1d6981SmrgRECTANGLE 22 COPYRIGHT 61 755ea1d6981SmrgRESOURCE_MANAGER 23 NOTICE 62 756ea1d6981SmrgRGB_COLOR_MAP 24 FONT_NAME 63 757ea1d6981SmrgRGB_BEST_MAP 25 FAMILY_NAME 64 758ea1d6981SmrgRGB_BLUE_MAP 26 FULL_NAME 65 759ea1d6981SmrgRGB_DEFAULT_MAP 27 CAP_HEIGHT 66 760ea1d6981SmrgRGB_GRAY_MAP 28 WM_CLASS 67 761ea1d6981SmrgRGB_GREEN_MAP 29 WM_TRANSIENT_FOR 68 762ea1d6981SmrgRGB_RED_MAP 30 763ea1d6981SmrgSTRING 31 764ea1d6981SmrgVISUALID 32 765ea1d6981SmrgWINDOW 33 766ea1d6981SmrgWM_COMMAND 34 767ea1d6981SmrgWM_HINTS 35 768ea1d6981SmrgWM_CLIENT_MACHINE 36 769ea1d6981SmrgWM_ICON_NAME 37 770ea1d6981SmrgWM_ICON_SIZE 38 771ea1d6981SmrgWM_NAME 39 772ea1d6981Smrg</literallayout> 773ea1d6981Smrg</sect1> 774ea1d6981Smrg 775ea1d6981Smrg<sect1 id='Encoding::Connection_Setup'> 776ea1d6981Smrg<title>Connection Setup</title> 777ea1d6981Smrg 778ea1d6981Smrg<para> 779ea1d6981SmrgFor TCP connections, 780ea1d6981Smrgdisplays on a given host are numbered starting from 0, 781ea1d6981Smrgand the server for display N listens and accepts connections on port 6000 + N. 782ea1d6981SmrgFor DECnet connections, 783ea1d6981Smrgdisplays on a given host are numbered starting from 0, 784ea1d6981Smrgand the server for display N listens and accepts connections on the object 785ea1d6981Smrgname obtained by concatenating "X$X" with the decimal representation of N, 786ea1d6981Smrgfor example, X$X0 and X$X1. 787ea1d6981Smrg</para> 788ea1d6981Smrg 789ea1d6981Smrg<para> 790ea1d6981SmrgInformation sent by the client at connection setup: 791ea1d6981Smrg</para> 792ea1d6981Smrg 793ea1d6981Smrg<literallayout class="monospaced"> 794ea1d6981Smrg 1 byte-order 795ea1d6981Smrg #x42 MSB first 796ea1d6981Smrg #x6C LSB first 797ea1d6981Smrg 1 unused 798ea1d6981Smrg 2 CARD16 protocol-major-version 799ea1d6981Smrg 2 CARD16 protocol-minor-version 800ea1d6981Smrg 2 n length of authorization-protocol-name 801ea1d6981Smrg 2 d length of authorization-protocol-data 802ea1d6981Smrg 2 unused 803ea1d6981Smrg n STRING8 authorization-protocol-name 804ea1d6981Smrg p unused, p=pad(n) 805ea1d6981Smrg d STRING8 authorization-protocol-data 806ea1d6981Smrg q unused, q=pad(d) 807ea1d6981Smrg</literallayout> 808ea1d6981Smrg 809ea1d6981Smrg<para> 810ea1d6981SmrgExcept where explicitly noted in the protocol, 811ea1d6981Smrgall 16-bit and 32-bit quantities sent by the client must be transmitted 812ea1d6981Smrgwith the specified byte order, 813ea1d6981Smrgand all 16-bit and 32-bit quantities returned by the server will be transmitted 814ea1d6981Smrgwith this byte order. 815ea1d6981Smrg</para> 816ea1d6981Smrg 817ea1d6981Smrg<para> 818ea1d6981SmrgInformation received by the client if the connection is refused: 819ea1d6981Smrg</para> 820ea1d6981Smrg 821ea1d6981Smrg<literallayout class="monospaced"> 822ea1d6981Smrg 1 0 Failed 823ea1d6981Smrg 1 n length of reason in bytes 824ea1d6981Smrg 2 CARD16 protocol-major-version 825ea1d6981Smrg 2 CARD16 protocol-minor-version 826ea1d6981Smrg 2 (n+p)/4 length in 4-byte units of "additional data" 827ea1d6981Smrg n STRING8 reason 828ea1d6981Smrg p unused, p=pad(n) 829ea1d6981Smrg</literallayout> 830ea1d6981Smrg 831ea1d6981Smrg<para> 832ea1d6981SmrgInformation received by the client if further authentication is required: 833ea1d6981Smrg</para> 834ea1d6981Smrg 835ea1d6981Smrg<literallayout class="monospaced"> 836ea1d6981Smrg 1 2 Authenticate 837ea1d6981Smrg 5 unused 838ea1d6981Smrg 2 (n+p)/4 length in 4-byte units of "additional data" 839ea1d6981Smrg n STRING8 reason 840ea1d6981Smrg p unused, p=pad(n) 841ea1d6981Smrg</literallayout> 842ea1d6981Smrg 843ea1d6981Smrg<para> 844ea1d6981SmrgInformation received by the client if the connection is accepted: 845ea1d6981Smrg</para> 846ea1d6981Smrg 847ea1d6981Smrg<literallayout class="monospaced"> 848ea1d6981Smrg 1 1 Success 849ea1d6981Smrg 1 unused 850ea1d6981Smrg 2 CARD16 protocol-major-version 851ea1d6981Smrg 2 CARD16 protocol-minor-version 852ea1d6981Smrg 2 8+2n+(v+p+m)/4 length in 4-byte units of 853ea1d6981Smrg "additional data" 854ea1d6981Smrg 4 CARD32 release-number 855ea1d6981Smrg 4 CARD32 resource-id-base 856ea1d6981Smrg 4 CARD32 resource-id-mask 857ea1d6981Smrg 4 CARD32 motion-buffer-size 858ea1d6981Smrg 2 v length of vendor 859ea1d6981Smrg 2 CARD16 maximum-request-length 860ea1d6981Smrg 1 CARD8 number of SCREENs in roots 861ea1d6981Smrg 1 n number for FORMATs in 862ea1d6981Smrg pixmap-formats 863ea1d6981Smrg 1 image-byte-order 864ea1d6981Smrg 0 LSBFirst 865ea1d6981Smrg 1 MSBFirst 866ea1d6981Smrg 1 bitmap-format-bit-order 867ea1d6981Smrg 0 LeastSignificant 868ea1d6981Smrg 1 MostSignificant 869ea1d6981Smrg 1 CARD8 bitmap-format-scanline-unit 870ea1d6981Smrg 1 CARD8 bitmap-format-scanline-pad 871ea1d6981Smrg 1 KEYCODE min-keycode 872ea1d6981Smrg 1 KEYCODE max-keycode 873ea1d6981Smrg 4 unused 874ea1d6981Smrg v STRING8 vendor 875ea1d6981Smrg p unused, p=pad(v) 876ea1d6981Smrg 8n LISTofFORMAT pixmap-formats 877ea1d6981Smrg m LISTofSCREEN roots (m is always a multiple of 4) 878ea1d6981Smrg</literallayout> 879ea1d6981Smrg 880ea1d6981Smrg<literallayout class="monospaced"> 881ea1d6981SmrgFORMAT 882ea1d6981Smrg 1 CARD8 depth 883ea1d6981Smrg 1 CARD8 bits-per-pixel 884ea1d6981Smrg 1 CARD8 scanline-pad 885ea1d6981Smrg 5 unused 886ea1d6981Smrg</literallayout> 887ea1d6981Smrg 888ea1d6981Smrg<literallayout class="monospaced"> 889ea1d6981SmrgSCREEN 890ea1d6981Smrg 4 WINDOW root 891ea1d6981Smrg 4 COLORMAP default-colormap 892ea1d6981Smrg 4 CARD32 white-pixel 893ea1d6981Smrg 4 CARD32 black-pixel 894ea1d6981Smrg 4 SETofEVENT current-input-masks 895ea1d6981Smrg 2 CARD16 width-in-pixels 896ea1d6981Smrg 2 CARD16 height-in-pixels 897ea1d6981Smrg 2 CARD16 width-in-millimeters 898ea1d6981Smrg 2 CARD16 height-in-millimeters 899ea1d6981Smrg 2 CARD16 min-installed-maps 900ea1d6981Smrg 2 CARD16 max-installed-maps 901ea1d6981Smrg 4 VISUALID root-visual 902ea1d6981Smrg 1 backing-stores 903ea1d6981Smrg 0 Never 904ea1d6981Smrg 1 WhenMapped 905ea1d6981Smrg 2 Always 906ea1d6981Smrg 1 BOOL save-unders 907ea1d6981Smrg 1 CARD8 root-depth 908ea1d6981Smrg 1 CARD8 number of DEPTHs in allowed-depths 909ea1d6981Smrg n LISTofDEPTH allowed-depths (n is always a 910ea1d6981Smrg multiple of 4) 911ea1d6981Smrg</literallayout> 912ea1d6981Smrg 913ea1d6981Smrg<literallayout class="monospaced"> 914ea1d6981SmrgDEPTH 915ea1d6981Smrg 1 CARD8 depth 916ea1d6981Smrg 1 unused 917ea1d6981Smrg 2 n number of VISUALTYPES in visuals 918ea1d6981Smrg 4 unused 919ea1d6981Smrg 24n LISTofVISUALTYPE visuals 920ea1d6981Smrg</literallayout> 921ea1d6981Smrg 922ea1d6981Smrg<literallayout class="monospaced"> 923ea1d6981SmrgVISUALTYPE 924ea1d6981Smrg 4 VISUALID visual-id 925ea1d6981Smrg 1 class 926ea1d6981Smrg 0 StaticGray 927ea1d6981Smrg 1 GrayScale 928ea1d6981Smrg 2 StaticColor 929ea1d6981Smrg 3 PseudoColor 930ea1d6981Smrg 4 TrueColor 931ea1d6981Smrg 5 DirectColor 932ea1d6981Smrg 1 CARD8 bits-per-rgb-value 933ea1d6981Smrg 2 CARD16 colormap-entries 934ea1d6981Smrg 4 CARD32 red-mask 935ea1d6981Smrg 4 CARD32 green-mask 936ea1d6981Smrg 4 CARD32 blue-mask 937ea1d6981Smrg 4 unused 938ea1d6981Smrg</literallayout> 939ea1d6981Smrg</sect1> 940ea1d6981Smrg 941ea1d6981Smrg<sect1 id='Encoding::Requests'> 942ea1d6981Smrg<title>Requests</title> 943ea1d6981Smrg<indexterm zone="Encoding::Requests"><primary>Request</primary><secondary>encoding</secondary></indexterm> 944ea1d6981Smrg 945ea1d6981Smrg<literallayout class="monospaced"> 946ea1d6981Smrg<link linkend="requests:CreateWindow"><emphasis role='bold'>CreateWindow</emphasis></link> 947ea1d6981Smrg 1 1 opcode 948ea1d6981Smrg 1 CARD8 depth 949ea1d6981Smrg 2 8+n request length 950ea1d6981Smrg 4 WINDOW wid 951ea1d6981Smrg 4 WINDOW parent 952ea1d6981Smrg 2 INT16 x 953ea1d6981Smrg 2 INT16 y 954ea1d6981Smrg 2 CARD16 width 955ea1d6981Smrg 2 CARD16 height 956ea1d6981Smrg 2 CARD16 border-width 957ea1d6981Smrg 2 class 958ea1d6981Smrg 0 CopyFromParent 959ea1d6981Smrg 1 InputOutput 960ea1d6981Smrg 2 InputOnly 961ea1d6981Smrg 4 VISUALID visual 962ea1d6981Smrg 0 CopyFromParent 963ea1d6981Smrg 4 BITMASK value-mask (has n bits set to 1) 964ea1d6981Smrg #x00000001 background-pixmap 965ea1d6981Smrg #x00000002 background-pixel 966ea1d6981Smrg #x00000004 border-pixmap 967ea1d6981Smrg #x00000008 border-pixel 968ea1d6981Smrg #x00000010 bit-gravity 969ea1d6981Smrg #x00000020 win-gravity 970ea1d6981Smrg #x00000040 backing-store 971ea1d6981Smrg #x00000080 backing-planes 972ea1d6981Smrg #x00000100 backing-pixel 973ea1d6981Smrg #x00000200 override-redirect 974ea1d6981Smrg #x00000400 save-under 975ea1d6981Smrg #x00000800 event-mask 976ea1d6981Smrg #x00001000 do-not-propagate-mask 977ea1d6981Smrg #x00002000 colormap 978ea1d6981Smrg #x00004000 cursor 979ea1d6981Smrg 4n LISTofVALUE value-list 980ea1d6981Smrg 981ea1d6981Smrg VALUEs 982ea1d6981Smrg 4 PIXMAP background-pixmap 983ea1d6981Smrg 0 None 984ea1d6981Smrg 1 ParentRelative 985ea1d6981Smrg 4 CARD32 background-pixel 986ea1d6981Smrg 4 PIXMAP border-pixmap 987ea1d6981Smrg 0 CopyFromParent 988ea1d6981Smrg 4 CARD32 border-pixel 989ea1d6981Smrg 1 BITGRAVITY bit-gravity 990ea1d6981Smrg 1 WINGRAVITY win-gravity 991ea1d6981Smrg 1 backing-store 992ea1d6981Smrg 0 NotUseful 993ea1d6981Smrg 1 WhenMapped 994ea1d6981Smrg 2 Always 995ea1d6981Smrg 4 CARD32 backing-planes 996ea1d6981Smrg 4 CARD32 backing-pixel 997ea1d6981Smrg 1 BOOL override-redirect 998ea1d6981Smrg 1 BOOL save-under 999ea1d6981Smrg 4 SETofEVENT event-mask 1000ea1d6981Smrg 4 SETofDEVICEEVENT do-not-propagate-mask 1001ea1d6981Smrg 4 COLORMAP colormap 1002ea1d6981Smrg 0 CopyFromParent 1003ea1d6981Smrg 4 CURSOR cursor 1004ea1d6981Smrg 0 None 1005ea1d6981Smrg 1006ea1d6981Smrg<link linkend="requests:ChangeWindowAttributes"><emphasis role='bold'>ChangeWindowAttributes</emphasis></link> 1007ea1d6981Smrg 1 2 opcode 1008ea1d6981Smrg 1 unused 1009ea1d6981Smrg 2 3+n request length 1010ea1d6981Smrg 4 WINDOW window 1011ea1d6981Smrg 4 BITMASK value-mask (has n bits set to 1) 1012ea1d6981Smrg encodings are the same as for CreateWindow 1013ea1d6981Smrg 4n LISTofVALUE value-list 1014ea1d6981Smrg encodings are the same as for CreateWindow 1015ea1d6981Smrg 1016ea1d6981Smrg<link linkend="requests:GetWindowAttributes"><emphasis role='bold'>GetWindowAttributes</emphasis></link> 1017ea1d6981Smrg 1 3 opcode 1018ea1d6981Smrg 1 unused 1019ea1d6981Smrg 2 2 request length 1020ea1d6981Smrg 4 WINDOW window 1021ea1d6981Smrg 1022ea1d6981Smrg▶ 1023ea1d6981Smrg 1 1 Reply 1024ea1d6981Smrg 1 backing-store 1025ea1d6981Smrg 0 NotUseful 1026ea1d6981Smrg 1 WhenMapped 1027ea1d6981Smrg 2 Always 1028ea1d6981Smrg 2 CARD16 sequence number 1029ea1d6981Smrg 4 3 reply length 1030ea1d6981Smrg 4 VISUALID visual 1031ea1d6981Smrg 2 class 1032ea1d6981Smrg 1 InputOutput 1033ea1d6981Smrg 2 InputOnly 1034ea1d6981Smrg 1 BITGRAVITY bit-gravity 1035ea1d6981Smrg 1 WINGRAVITY win-gravity 1036ea1d6981Smrg 4 CARD32 backing-planes 1037ea1d6981Smrg 4 CARD32 backing-pixel 1038ea1d6981Smrg 1 BOOL save-under 1039ea1d6981Smrg 1 BOOL map-is-installed 1040ea1d6981Smrg 1 map-state 1041ea1d6981Smrg 0 Unmapped 1042ea1d6981Smrg 1 Unviewable 1043ea1d6981Smrg 2 Viewable 1044ea1d6981Smrg 1 BOOL override-redirect 1045ea1d6981Smrg 4 COLORMAP colormap 1046ea1d6981Smrg 0 None 1047ea1d6981Smrg 4 SETofEVENT all-event-masks 1048ea1d6981Smrg 4 SETofEVENT your-event-mask 1049ea1d6981Smrg 2 SETofDEVICEEVENT do-not-propagate-mask 1050ea1d6981Smrg 2 unused 1051ea1d6981Smrg 1052ea1d6981Smrg<link linkend="requests:DestroyWindow"><emphasis role='bold'>DestroyWindow</emphasis></link> 1053ea1d6981Smrg 1 4 opcode 1054ea1d6981Smrg 1 unused 1055ea1d6981Smrg 2 2 request length 1056ea1d6981Smrg 4 WINDOW window 1057ea1d6981Smrg 1058ea1d6981Smrg<link linkend="requests:DestroySubwindows"><emphasis role='bold'>DestroySubwindows</emphasis></link> 1059ea1d6981Smrg 1 5 opcode 1060ea1d6981Smrg 1 unused 1061ea1d6981Smrg 2 2 request length 1062ea1d6981Smrg 4 WINDOW window 1063ea1d6981Smrg 1064ea1d6981Smrg<link linkend="requests:ChangeSaveSet"><emphasis role='bold'>ChangeSaveSet</emphasis></link> 1065ea1d6981Smrg 1 6 opcode 1066ea1d6981Smrg 1 mode 1067ea1d6981Smrg 0 Insert 1068ea1d6981Smrg 1 Delete 1069ea1d6981Smrg 2 2 request length 1070ea1d6981Smrg 4 WINDOW window 1071ea1d6981Smrg 1072ea1d6981Smrg<link linkend="requests:ReparentWindow"><emphasis role='bold'>ReparentWindow</emphasis></link> 1073ea1d6981Smrg 1 7 opcode 1074ea1d6981Smrg 1 unused 1075ea1d6981Smrg 2 4 request length 1076ea1d6981Smrg 4 WINDOW window 1077ea1d6981Smrg 4 WINDOW parent 1078ea1d6981Smrg 2 INT16 x 1079ea1d6981Smrg 2 INT16 y 1080ea1d6981Smrg 1081ea1d6981Smrg<link linkend="requests:MapWindow"><emphasis role='bold'>MapWindow</emphasis></link> 1082ea1d6981Smrg 1 8 opcode 1083ea1d6981Smrg 1 unused 1084ea1d6981Smrg 2 2 request length 1085ea1d6981Smrg 4 WINDOW window 1086ea1d6981Smrg 1087ea1d6981Smrg<link linkend="requests:MapSubwindows"><emphasis role='bold'>MapSubwindows</emphasis></link> 1088ea1d6981Smrg 1 9 opcode 1089ea1d6981Smrg 1 unused 1090ea1d6981Smrg 2 2 request length 1091ea1d6981Smrg 4 WINDOW window 1092ea1d6981Smrg 1093ea1d6981Smrg<link linkend="requests:UnmapWindow"><emphasis role='bold'>UnmapWindow</emphasis></link> 1094ea1d6981Smrg 1 10 opcode 1095ea1d6981Smrg 1 unused 1096ea1d6981Smrg 2 2 request length 1097ea1d6981Smrg 4 WINDOW window 1098ea1d6981Smrg 1099ea1d6981Smrg<link linkend="requests:UnmapSubwindows"><emphasis role='bold'>UnmapSubwindows</emphasis></link> 1100ea1d6981Smrg 1 11 opcode 1101ea1d6981Smrg 1 unused 1102ea1d6981Smrg 2 2 request length 1103ea1d6981Smrg 4 WINDOW window 1104ea1d6981Smrg 1105ea1d6981Smrg<link linkend="requests:ConfigureWindow"><emphasis role='bold'>ConfigureWindow</emphasis></link> 1106ea1d6981Smrg 1 12 opcode 1107ea1d6981Smrg 1 unused 1108ea1d6981Smrg 2 3+n request length 1109ea1d6981Smrg 4 WINDOW window 1110ea1d6981Smrg 2 BITMASK value-mask (has n bits set to 1) 1111ea1d6981Smrg #x0001 x 1112ea1d6981Smrg #x0002 y 1113ea1d6981Smrg #x0004 width 1114ea1d6981Smrg #x0008 height 1115ea1d6981Smrg #x0010 border-width 1116ea1d6981Smrg #x0020 sibling 1117ea1d6981Smrg #x0040 stack-mode 1118ea1d6981Smrg 2 unused 1119ea1d6981Smrg 4n LISTofVALUE value-list 1120ea1d6981Smrg 1121ea1d6981Smrg VALUEs 1122ea1d6981Smrg 2 INT16 x 1123ea1d6981Smrg 2 INT16 y 1124ea1d6981Smrg 2 CARD16 width 1125ea1d6981Smrg 2 CARD16 height 1126ea1d6981Smrg 2 CARD16 border-width 1127ea1d6981Smrg 4 WINDOW sibling 1128ea1d6981Smrg 1 stack-mode 1129ea1d6981Smrg 0 Above 1130ea1d6981Smrg 1 Below 1131ea1d6981Smrg 2 TopIf 1132ea1d6981Smrg 3 BottomIf 1133ea1d6981Smrg 4 Opposite 1134ea1d6981Smrg 1135ea1d6981Smrg<link linkend="requests:CirculateWindow"><emphasis role='bold'>CirculateWindow</emphasis></link> 1136ea1d6981Smrg 1 13 opcode 1137ea1d6981Smrg 1 direction 1138ea1d6981Smrg 0 RaiseLowest 1139ea1d6981Smrg 1 LowerHighest 1140ea1d6981Smrg 2 2 request length 1141ea1d6981Smrg 4 WINDOW window 1142ea1d6981Smrg 1143ea1d6981Smrg<link linkend="requests:GetGeometry"><emphasis role='bold'>GetGeometry</emphasis></link> 1144ea1d6981Smrg 1 14 opcode 1145ea1d6981Smrg 1 unused 1146ea1d6981Smrg 2 2 request length 1147ea1d6981Smrg 4 DRAWABLE drawable 1148ea1d6981Smrg 1149ea1d6981Smrg▶ 1150ea1d6981Smrg 1 1 Reply 1151ea1d6981Smrg 1 CARD8 depth 1152ea1d6981Smrg 2 CARD16 sequence number 1153ea1d6981Smrg 4 0 reply length 1154ea1d6981Smrg 4 WINDOW root 1155ea1d6981Smrg 2 INT16 x 1156ea1d6981Smrg 2 INT16 y 1157ea1d6981Smrg 2 CARD16 width 1158ea1d6981Smrg 2 CARD16 height 1159ea1d6981Smrg 2 CARD16 border-width 1160ea1d6981Smrg 10 unused 1161ea1d6981Smrg 1162ea1d6981Smrg<link linkend="requests:QueryTree"><emphasis role='bold'>QueryTree</emphasis></link> 1163ea1d6981Smrg 1 15 opcode 1164ea1d6981Smrg 1 unused 1165ea1d6981Smrg 2 2 request length 1166ea1d6981Smrg 4 WINDOW window 1167ea1d6981Smrg 1168ea1d6981Smrg▶ 1169ea1d6981Smrg 1 1 Reply 1170ea1d6981Smrg 1 unused 1171ea1d6981Smrg 2 CARD16 sequence number 1172ea1d6981Smrg 4 n reply length 1173ea1d6981Smrg 4 WINDOW root 1174ea1d6981Smrg 4 WINDOW parent 1175ea1d6981Smrg 0 None 1176ea1d6981Smrg 2 n number of WINDOWs in children 1177ea1d6981Smrg 14 unused 1178ea1d6981Smrg 4n LISTofWINDOW children 1179ea1d6981Smrg 1180ea1d6981Smrg<link linkend="requests:InternAtom"><emphasis role='bold'>InternAtom</emphasis></link> 1181ea1d6981Smrg 1 16 opcode 1182ea1d6981Smrg 1 BOOL only-if-exists 1183ea1d6981Smrg 2 2+(n+p)/4 request length 1184ea1d6981Smrg 2 n length of name 1185ea1d6981Smrg 2 unused 1186ea1d6981Smrg n STRING8 name 1187ea1d6981Smrg p unused, p=pad(n) 1188ea1d6981Smrg 1189ea1d6981Smrg▶ 1190ea1d6981Smrg 1 1 Reply 1191ea1d6981Smrg 1 unused 1192ea1d6981Smrg 2 CARD16 sequence number 1193ea1d6981Smrg 4 0 reply length 1194ea1d6981Smrg 4 ATOM atom 1195ea1d6981Smrg 0 None 1196ea1d6981Smrg 20 unused 1197ea1d6981Smrg 1198ea1d6981Smrg<link linkend="requests:GetAtomName"><emphasis role='bold'>GetAtomName</emphasis></link> 1199ea1d6981Smrg 1 17 opcode 1200ea1d6981Smrg 1 unused 1201ea1d6981Smrg 2 2 request length 1202ea1d6981Smrg 4 ATOM atom 1203ea1d6981Smrg 1204ea1d6981Smrg▶ 1205ea1d6981Smrg 1 1 Reply 1206ea1d6981Smrg 1 unused 1207ea1d6981Smrg 2 CARD16 sequence number 1208ea1d6981Smrg 4 (n+p)/4 reply length 1209ea1d6981Smrg 2 n length of name 1210ea1d6981Smrg 22 unused 1211ea1d6981Smrg n STRING8 name 1212ea1d6981Smrg p unused, p=pad(n) 1213ea1d6981Smrg 1214ea1d6981Smrg<link linkend="requests:ChangeProperty"><emphasis role='bold'>ChangeProperty</emphasis></link> 1215ea1d6981Smrg 1 18 opcode 1216ea1d6981Smrg 1 mode 1217ea1d6981Smrg 0 Replace 1218ea1d6981Smrg 1 Prepend 1219ea1d6981Smrg 2 Append 1220ea1d6981Smrg 2 6+(n+p)/4 request length 1221ea1d6981Smrg 4 WINDOW window 1222ea1d6981Smrg 4 ATOM property 1223ea1d6981Smrg 4 ATOM type 1224ea1d6981Smrg 1 CARD8 format 1225ea1d6981Smrg 3 unused 1226ea1d6981Smrg 4 CARD32 length of data in format units 1227ea1d6981Smrg (= n for format = 8) 1228ea1d6981Smrg (= n/2 for format = 16) 1229ea1d6981Smrg (= n/4 for format = 32) 1230ea1d6981Smrg n LISTofBYTE data 1231ea1d6981Smrg (n is a multiple of 2 for format = 16) 1232ea1d6981Smrg (n is a multiple of 4 for format = 32) 1233ea1d6981Smrg p unused, p=pad(n) 1234ea1d6981Smrg 1235ea1d6981Smrg 1236ea1d6981Smrg<link linkend="requests:DeleteProperty"><emphasis role='bold'>DeleteProperty</emphasis></link> 1237ea1d6981Smrg 1 19 opcode 1238ea1d6981Smrg 1 unused 1239ea1d6981Smrg 2 3 request length 1240ea1d6981Smrg 4 WINDOW window 1241ea1d6981Smrg 4 ATOM property 1242ea1d6981Smrg 1243ea1d6981Smrg<link linkend="requests:GetProperty"><emphasis role='bold'>GetProperty</emphasis></link> 1244ea1d6981Smrg 1 20 opcode 1245ea1d6981Smrg 1 BOOL delete 1246ea1d6981Smrg 2 6 request length 1247ea1d6981Smrg 4 WINDOW window 1248ea1d6981Smrg 4 ATOM property 1249ea1d6981Smrg 4 ATOM type 1250ea1d6981Smrg 0 AnyPropertyType 1251ea1d6981Smrg 4 CARD32 long-offset 1252ea1d6981Smrg 4 CARD32 long-length 1253ea1d6981Smrg 1254ea1d6981Smrg▶ 1255ea1d6981Smrg 1 1 Reply 1256ea1d6981Smrg 1 CARD8 format 1257ea1d6981Smrg 2 CARD16 sequence number 1258ea1d6981Smrg 4 (n+p)/4 reply length 1259ea1d6981Smrg 4 ATOM type 1260ea1d6981Smrg 0 None 1261ea1d6981Smrg 4 CARD32 bytes-after 1262ea1d6981Smrg 4 CARD32 length of value in format units 1263ea1d6981Smrg (= 0 for format = 0) 1264ea1d6981Smrg (= n for format = 8) 1265ea1d6981Smrg (= n/2 for format = 16) 1266ea1d6981Smrg (= n/4 for format = 32) 1267ea1d6981Smrg 12 unused 1268ea1d6981Smrg n LISTofBYTE value 1269ea1d6981Smrg (n is zero for format = 0) 1270ea1d6981Smrg (n is a multiple of 2 for format = 16) 1271ea1d6981Smrg (n is a multiple of 4 for format = 32) 1272ea1d6981Smrg p unused, p=pad(n) 1273ea1d6981Smrg 1274ea1d6981Smrg<link linkend="requests:ListProperties"><emphasis role='bold'>ListProperties</emphasis></link> 1275ea1d6981Smrg 1 21 opcode 1276ea1d6981Smrg 1 unused 1277ea1d6981Smrg 2 2 request length 1278ea1d6981Smrg 4 WINDOW window 1279ea1d6981Smrg 1280ea1d6981Smrg▶ 1281ea1d6981Smrg 1 1 Reply 1282ea1d6981Smrg 1 unused 1283ea1d6981Smrg 2 CARD16 sequence number 1284ea1d6981Smrg 4 n reply length 1285ea1d6981Smrg 2 n number of ATOMs in atoms 1286ea1d6981Smrg 22 unused 1287ea1d6981Smrg 4n LISTofATOM atoms 1288ea1d6981Smrg 1289ea1d6981Smrg<link linkend="requests:SetSelectionOwner"><emphasis role='bold'>SetSelectionOwner</emphasis></link> 1290ea1d6981Smrg 1 22 opcode 1291ea1d6981Smrg 1 unused 1292ea1d6981Smrg 2 4 request length 1293ea1d6981Smrg 4 WINDOW owner 1294ea1d6981Smrg 0 None 1295ea1d6981Smrg 4 ATOM selection 1296ea1d6981Smrg 4 TIMESTAMP time 1297ea1d6981Smrg 0 CurrentTime 1298ea1d6981Smrg 1299ea1d6981Smrg<link linkend="requests:GetSelectionOwner"><emphasis role='bold'>GetSelectionOwner</emphasis></link> 1300ea1d6981Smrg 1 23 opcode 1301ea1d6981Smrg 1 unused 1302ea1d6981Smrg 2 2 request length 1303ea1d6981Smrg 4 ATOM selection 1304ea1d6981Smrg 1305ea1d6981Smrg▶ 1306ea1d6981Smrg 1 1 Reply 1307ea1d6981Smrg 1 unused 1308ea1d6981Smrg 2 CARD16 sequence number 1309ea1d6981Smrg 4 0 reply length 1310ea1d6981Smrg 4 WINDOW owner 1311ea1d6981Smrg 0 None 1312ea1d6981Smrg 20 unused 1313ea1d6981Smrg 1314ea1d6981Smrg<link linkend="requests:ConvertSelection"><emphasis role='bold'>ConvertSelection</emphasis></link> 1315ea1d6981Smrg 1 24 opcode 1316ea1d6981Smrg 1 unused 1317ea1d6981Smrg 2 6 request length 1318ea1d6981Smrg 4 WINDOW requestor 1319ea1d6981Smrg 4 ATOM selection 1320ea1d6981Smrg 4 ATOM target 1321ea1d6981Smrg 4 ATOM property 1322ea1d6981Smrg 0 None 1323ea1d6981Smrg 4 TIMESTAMP time 1324ea1d6981Smrg 0 CurrentTime 1325ea1d6981Smrg 1326ea1d6981Smrg<link linkend="requests:SendEvent"><emphasis role='bold'>SendEvent</emphasis></link> 1327ea1d6981Smrg 1 25 opcode 1328ea1d6981Smrg 1 BOOL propagate 1329ea1d6981Smrg 2 11 requestlength 1330ea1d6981Smrg 4 WINDOW destination 1331ea1d6981Smrg 0 PointerWindow 1332ea1d6981Smrg 1 InputFocus 1333ea1d6981Smrg 4 SETofEVENT event-mask 1334ea1d6981Smrg 32 event 1335ea1d6981Smrg standard event format (see <link linkend='Events'>the Events section</link>) 1336ea1d6981Smrg 1337ea1d6981Smrg<link linkend="requests:GrabPointer"><emphasis role='bold'>GrabPointer</emphasis></link> 1338ea1d6981Smrg 1 26 opcode 1339ea1d6981Smrg 1 BOOL owner-events 1340ea1d6981Smrg 2 6 request length 1341ea1d6981Smrg 4 WINDOW grab-window 1342ea1d6981Smrg 2 SETofPOINTEREVENT event-mask 1343ea1d6981Smrg 1 pointer-mode 1344ea1d6981Smrg 0 Synchronous 1345ea1d6981Smrg 1 Asynchronous 1346ea1d6981Smrg 1 keyboard-mode 1347ea1d6981Smrg 0 Synchronous 1348ea1d6981Smrg 1 Asynchronous 1349ea1d6981Smrg 4 WINDOW confine-to 1350ea1d6981Smrg 0 None 1351ea1d6981Smrg 4 CURSOR cursor 1352ea1d6981Smrg 0 None 1353ea1d6981Smrg 4 TIMESTAMP time 1354ea1d6981Smrg 0 CurrentTime 1355ea1d6981Smrg 1356ea1d6981Smrg▶ 1357ea1d6981Smrg 1 1 Reply 1358ea1d6981Smrg 1 status 1359ea1d6981Smrg 0 Success 1360ea1d6981Smrg 1 AlreadyGrabbed 1361ea1d6981Smrg 2 InvalidTime 1362ea1d6981Smrg 3 NotViewable 1363ea1d6981Smrg 4 Frozen 1364ea1d6981Smrg 2 CARD16 sequence number 1365ea1d6981Smrg 4 0 reply length 1366ea1d6981Smrg 24 unused 1367ea1d6981Smrg 1368ea1d6981Smrg<link linkend="requests:UngrabPointer"><emphasis role='bold'>UngrabPointer</emphasis></link> 1369ea1d6981Smrg 1 27 opcode 1370ea1d6981Smrg 1 unused 1371ea1d6981Smrg 2 2 request length 1372ea1d6981Smrg 4 TIMESTAMP time 1373ea1d6981Smrg 0 CurrentTime 1374ea1d6981Smrg 1375ea1d6981Smrg<link linkend="requests:GrabButton"><emphasis role='bold'>GrabButton</emphasis></link> 1376ea1d6981Smrg 1 28 opcode 1377ea1d6981Smrg 1 BOOL owner-events 1378ea1d6981Smrg 2 6 request length 1379ea1d6981Smrg 4 WINDOW grab-window 1380ea1d6981Smrg 2 SETofPOINTEREVENT event-mask 1381ea1d6981Smrg 1 pointer-mode 1382ea1d6981Smrg 0 Synchronous 1383ea1d6981Smrg 1 Asynchronous 1384ea1d6981Smrg 1 keyboard-mode 1385ea1d6981Smrg 0 Synchronous 1386ea1d6981Smrg 1 Asynchronous 1387ea1d6981Smrg 4 WINDOW confine-to 1388ea1d6981Smrg 0 None 1389ea1d6981Smrg 4 CURSOR cursor 1390ea1d6981Smrg 0 None 1391ea1d6981Smrg 1 BUTTON button 1392ea1d6981Smrg 0 AnyButton 1393ea1d6981Smrg 1 unused 1394ea1d6981Smrg 2 SETofKEYMASK modifiers 1395ea1d6981Smrg #x8000 AnyModifier 1396ea1d6981Smrg 1397ea1d6981Smrg<link linkend="requests:UngrabButton"><emphasis role='bold'>UngrabButton</emphasis></link> 1398ea1d6981Smrg 1 29 opcode 1399ea1d6981Smrg 1 BUTTON button 1400ea1d6981Smrg 0 AnyButton 1401ea1d6981Smrg 2 3 request length 1402ea1d6981Smrg 4 WINDOW grab-window 1403ea1d6981Smrg 2 SETofKEYMASK modifiers 1404ea1d6981Smrg #x8000 AnyModifier 1405ea1d6981Smrg 2 unused 1406ea1d6981Smrg 1407ea1d6981Smrg<link linkend="requests:ChangeActivePointerGrab"><emphasis role='bold'>ChangeActivePointerGrab</emphasis></link> 1408ea1d6981Smrg 1 30 opcode 1409ea1d6981Smrg 1 unused 1410ea1d6981Smrg 2 4 request length 1411ea1d6981Smrg 4 CURSOR cursor 1412ea1d6981Smrg 0 None 1413ea1d6981Smrg 4 TIMESTAMP time 1414ea1d6981Smrg 0 CurrentTime 1415ea1d6981Smrg 2 SETofPOINTEREVENT event-mask 1416ea1d6981Smrg 2 unused 1417ea1d6981Smrg 1418ea1d6981Smrg<link linkend="requests:GrabKeyboard"><emphasis role='bold'>GrabKeyboard</emphasis></link> 1419ea1d6981Smrg 1 31 opcode 1420ea1d6981Smrg 1 BOOL owner-events 1421ea1d6981Smrg 2 4 request length 1422ea1d6981Smrg 4 WINDOW grab-window 1423ea1d6981Smrg 4 TIMESTAMP time 1424ea1d6981Smrg 0 CurrentTime 1425ea1d6981Smrg 1 pointer-mode 1426ea1d6981Smrg 0 Synchronous 1427ea1d6981Smrg 1 Asynchronous 1428ea1d6981Smrg 1 keyboard-mode 1429ea1d6981Smrg 0 Synchronous 1430ea1d6981Smrg 1 Asynchronous 1431ea1d6981Smrg 2 unused 1432ea1d6981Smrg 1433ea1d6981Smrg▶ 1434ea1d6981Smrg 1 1 Reply 1435ea1d6981Smrg 1 status 1436ea1d6981Smrg 0 Success 1437ea1d6981Smrg 1 AlreadyGrabbed 1438ea1d6981Smrg 2 InvalidTime 1439ea1d6981Smrg 3 NotViewable 1440ea1d6981Smrg 4 Frozen 1441ea1d6981Smrg 2 CARD16 sequence number 1442ea1d6981Smrg 4 0 reply length 1443ea1d6981Smrg 24 unused 1444ea1d6981Smrg 1445ea1d6981Smrg<link linkend="requests:UngrabKeyboard"><emphasis role='bold'>UngrabKeyboard</emphasis></link> 1446ea1d6981Smrg 1 32 opcode 1447ea1d6981Smrg 1 unused 1448ea1d6981Smrg 2 2 request length 1449ea1d6981Smrg 4 TIMESTAMP time 1450ea1d6981Smrg 0 CurrentTime 1451ea1d6981Smrg 1452ea1d6981Smrg<link linkend="requests:GrabKey"><emphasis role='bold'>GrabKey</emphasis></link> 1453ea1d6981Smrg 1 33 opcode 1454ea1d6981Smrg 1 BOOL owner-events 1455ea1d6981Smrg 2 4 request length 1456ea1d6981Smrg 4 WINDOW grab-window 1457ea1d6981Smrg 2 SETofKEYMASK modifiers 1458ea1d6981Smrg #x8000 AnyModifier 1459ea1d6981Smrg 1 KEYCODE key 1460ea1d6981Smrg 0 AnyKey 1461ea1d6981Smrg 1 pointer-mode 1462ea1d6981Smrg 0 Synchronous 1463ea1d6981Smrg 1 Asynchronous 1464ea1d6981Smrg 1 keyboard-mode 1465ea1d6981Smrg 0 Synchronous 1466ea1d6981Smrg 1 Asynchronous 1467ea1d6981Smrg 3 unused 1468ea1d6981Smrg 1469ea1d6981Smrg<link linkend="requests:UngrabKey"><emphasis role='bold'>UngrabKey</emphasis></link> 1470ea1d6981Smrg 1 34 opcode 1471ea1d6981Smrg 1 KEYCODE key 1472ea1d6981Smrg 0 AnyKey 1473ea1d6981Smrg 2 3 request length 1474ea1d6981Smrg 4 WINDOW grab-window 1475ea1d6981Smrg 2 SETofKEYMASK modifiers 1476ea1d6981Smrg #x8000 AnyModifier 1477ea1d6981Smrg 2 unused 1478ea1d6981Smrg 1479ea1d6981Smrg<link linkend="requests:AllowEvents"><emphasis role='bold'>AllowEvents</emphasis></link> 1480ea1d6981Smrg 1 35 opcode 1481ea1d6981Smrg 1 mode 1482ea1d6981Smrg 0 AsyncPointer 1483ea1d6981Smrg 1 SyncPointer 1484ea1d6981Smrg 2 ReplayPointer 1485ea1d6981Smrg 3 AsyncKeyboard 1486ea1d6981Smrg 4 SyncKeyboard 1487ea1d6981Smrg 5 ReplayKeyboard 1488ea1d6981Smrg 6 AsyncBoth 1489ea1d6981Smrg 7 SyncBoth 1490ea1d6981Smrg 2 2 request length 1491ea1d6981Smrg 4 TIMESTAMP time 1492ea1d6981Smrg 0 CurrentTime 1493ea1d6981Smrg 1494ea1d6981Smrg<link linkend="requests:GrabServer"><emphasis role='bold'>GrabServer</emphasis></link> 1495ea1d6981Smrg 1 36 opcode 1496ea1d6981Smrg 1 unused 1497ea1d6981Smrg 2 1 request length 1498ea1d6981Smrg 1499ea1d6981Smrg<link linkend="requests:UngrabServer"><emphasis role='bold'>UngrabServer</emphasis></link> 1500ea1d6981Smrg 1 37 opcode 1501ea1d6981Smrg 1 unused 1502ea1d6981Smrg 2 1 request length 1503ea1d6981Smrg 1504ea1d6981Smrg<link linkend="requests:QueryPointer"><emphasis role='bold'>QueryPointer</emphasis></link> 1505ea1d6981Smrg 1 38 opcode 1506ea1d6981Smrg 1 unused 1507ea1d6981Smrg 2 2 request length 1508ea1d6981Smrg 4 WINDOW window 1509ea1d6981Smrg 1510ea1d6981Smrg▶ 1511ea1d6981Smrg 1 1 Reply 1512ea1d6981Smrg 1 BOOL same-screen 1513ea1d6981Smrg 2 CARD16 sequence number 1514ea1d6981Smrg 4 0 reply length 1515ea1d6981Smrg 4 WINDOW root 1516ea1d6981Smrg 4 WINDOW child 1517ea1d6981Smrg 0 None 1518ea1d6981Smrg 2 INT16 root-x 1519ea1d6981Smrg 2 INT16 root-y 1520ea1d6981Smrg 2 INT16 win-x 1521ea1d6981Smrg 2 INT16 win-y 1522ea1d6981Smrg 2 SETofKEYBUTMASK mask 1523ea1d6981Smrg 6 unused 1524ea1d6981Smrg 1525ea1d6981Smrg<link linkend="requests:GetMotionEvents"><emphasis role='bold'>GetMotionEvents</emphasis></link> 1526ea1d6981Smrg 1 39 opcode 1527ea1d6981Smrg 1 unused 1528ea1d6981Smrg 2 4 request length 1529ea1d6981Smrg 4 WINDOW window 1530ea1d6981Smrg 4 TIMESTAMP start 1531ea1d6981Smrg 0 CurrentTime 1532ea1d6981Smrg 4 TIMESTAMP stop 1533ea1d6981Smrg 0 CurrentTime 1534ea1d6981Smrg 1535ea1d6981Smrg▶ 1536ea1d6981Smrg 1 1 Reply 1537ea1d6981Smrg 1 unused 1538ea1d6981Smrg 2 CARD16 sequence number 1539ea1d6981Smrg 4 2n reply length 1540ea1d6981Smrg 4 n number of TIMECOORDs in events 1541ea1d6981Smrg 20 unused 1542ea1d6981Smrg 8n LISTofTIMECOORD events 1543ea1d6981Smrg 1544ea1d6981Smrg TIMECOORD 1545ea1d6981Smrg 4 TIMESTAMP time 1546ea1d6981Smrg 2 INT16 x 1547ea1d6981Smrg 2 INT16 y 1548ea1d6981Smrg 1549ea1d6981Smrg<link linkend="requests:TranslateCoordinates"><emphasis role='bold'>TranslateCoordinates</emphasis></link> 1550ea1d6981Smrg 1 40 opcode 1551ea1d6981Smrg 1 unused 1552ea1d6981Smrg 2 4 request length 1553ea1d6981Smrg 4 WINDOW src-window 1554ea1d6981Smrg 4 WINDOW dst-window 1555ea1d6981Smrg 2 INT16 src-x 1556ea1d6981Smrg 2 INT16 src-y 1557ea1d6981Smrg▶ 1558ea1d6981Smrg 1 1 Reply 1559ea1d6981Smrg 1 BOOL same-screen 1560ea1d6981Smrg 2 CARD16 sequence number 1561ea1d6981Smrg 4 0 reply length 1562ea1d6981Smrg 4 WINDOW child 1563ea1d6981Smrg 0 None 1564ea1d6981Smrg 2 INT16 dst-x 1565ea1d6981Smrg 2 INT16 dst-y 1566ea1d6981Smrg 16 unused 1567ea1d6981Smrg 1568ea1d6981Smrg<link linkend="requests:WarpPointer"><emphasis role='bold'>WarpPointer</emphasis></link> 1569ea1d6981Smrg 1 41 opcode 1570ea1d6981Smrg 1 unused 1571ea1d6981Smrg 2 6 request length 1572ea1d6981Smrg 4 WINDOW src-window 1573ea1d6981Smrg 0 None 1574ea1d6981Smrg 4 WINDOW dst-window 1575ea1d6981Smrg 0 None 1576ea1d6981Smrg 2 INT16 src-x 1577ea1d6981Smrg 2 INT16 src-y 1578ea1d6981Smrg 2 CARD16 src-width 1579ea1d6981Smrg 2 CARD16 src-height 1580ea1d6981Smrg 2 INT16 dst-x 1581ea1d6981Smrg 2 INT16 dst-y 1582ea1d6981Smrg 1583ea1d6981Smrg<link linkend="requests:SetInputFocus"><emphasis role='bold'>SetInputFocus</emphasis></link> 1584ea1d6981Smrg 1 42 opcode 1585ea1d6981Smrg 1 revert-to 1586ea1d6981Smrg 0 None 1587ea1d6981Smrg 1 PointerRoot 1588ea1d6981Smrg 2 Parent 1589ea1d6981Smrg 2 3 request length 1590ea1d6981Smrg 4 WINDOW focus 1591ea1d6981Smrg 0 None 1592ea1d6981Smrg 1 PointerRoot 1593ea1d6981Smrg 4 TIMESTAMP time 1594ea1d6981Smrg 0 CurrentTime 1595ea1d6981Smrg 1596ea1d6981Smrg<link linkend="requests:GetInputFocus"><emphasis role='bold'>GetInputFocus</emphasis></link> 1597ea1d6981Smrg 1 43 opcode 1598ea1d6981Smrg 1 unused 1599ea1d6981Smrg 2 1 request length 1600ea1d6981Smrg 1601ea1d6981Smrg▶ 1602ea1d6981Smrg 1 1 Reply 1603ea1d6981Smrg 1 revert-to 1604ea1d6981Smrg 0 None 1605ea1d6981Smrg 1 PointerRoot 1606ea1d6981Smrg 2 Parent 1607ea1d6981Smrg 2 CARD16 sequence number 1608ea1d6981Smrg 4 0 reply length 1609ea1d6981Smrg 4 WINDOW focus 1610ea1d6981Smrg 0 None 1611ea1d6981Smrg 1 PointerRoot 1612ea1d6981Smrg 20 unused 1613ea1d6981Smrg 1614ea1d6981Smrg<link linkend="requests:QueryKeymap"><emphasis role='bold'>QueryKeymap</emphasis></link> 1615ea1d6981Smrg 1 44 opcode 1616ea1d6981Smrg 1 unused 1617ea1d6981Smrg 2 1 request length 1618ea1d6981Smrg 1619ea1d6981Smrg▶ 1620ea1d6981Smrg 1 1 Reply 1621ea1d6981Smrg 1 unused 1622ea1d6981Smrg 2 CARD16 sequence number 1623ea1d6981Smrg 4 2 reply length 1624ea1d6981Smrg 32 LISTofCARD8 keys 1625ea1d6981Smrg 1626ea1d6981Smrg<link linkend="requests:OpenFont"><emphasis role='bold'>OpenFont</emphasis></link> 1627ea1d6981Smrg 1 45 opcode 1628ea1d6981Smrg 1 unused 1629ea1d6981Smrg 2 3+(n+p)/4 request length 1630ea1d6981Smrg 4 FONT fid 1631ea1d6981Smrg 2 n length of name 1632ea1d6981Smrg 2 unused 1633ea1d6981Smrg n STRING8 name 1634ea1d6981Smrg p unused, p=pad(n) 1635ea1d6981Smrg 1636ea1d6981Smrg<link linkend="requests:CloseFont"><emphasis role='bold'>CloseFont</emphasis></link> 1637ea1d6981Smrg 1 46 opcode 1638ea1d6981Smrg 1 unused 1639ea1d6981Smrg 2 2 request length 1640ea1d6981Smrg 4 FONT font 1641ea1d6981Smrg 1642ea1d6981Smrg<link linkend="requests:QueryFont"><emphasis role='bold'>QueryFont</emphasis></link> 1643ea1d6981Smrg 1 47 opcode 1644ea1d6981Smrg 1 unused 1645ea1d6981Smrg 2 2 request length 1646ea1d6981Smrg 4 FONTABLE font 1647ea1d6981Smrg 1648ea1d6981Smrg▶ 1649ea1d6981Smrg 1 1 Reply 1650ea1d6981Smrg 1 unused 1651ea1d6981Smrg 2 CARD16 sequence number 1652ea1d6981Smrg 4 7+2n+3m reply length 1653ea1d6981Smrg 12 CHARINFO min-bounds 1654ea1d6981Smrg 4 unused 1655ea1d6981Smrg 12 CHARINFO max-bounds 1656ea1d6981Smrg 4 unused 1657ea1d6981Smrg 2 CARD16 min-char-or-byte2 1658ea1d6981Smrg 2 CARD16 max-char-or-byte2 1659ea1d6981Smrg 2 CARD16 default-char 1660ea1d6981Smrg 2 n number of FONTPROPs in properties 1661ea1d6981Smrg 1 draw-direction 1662ea1d6981Smrg 0 LeftToRight 1663ea1d6981Smrg 1 RightToLeft 1664ea1d6981Smrg 1 CARD8 min-byte1 1665ea1d6981Smrg 1 CARD8 max-byte1 1666ea1d6981Smrg 1 BOOL all-chars-exist 1667ea1d6981Smrg 2 INT16 font-ascent 1668ea1d6981Smrg 2 INT16 font-descent 1669ea1d6981Smrg 4 m number of CHARINFOs in char-infos 1670ea1d6981Smrg 8n LISTofFONTPROP properties 1671ea1d6981Smrg 12m LISTofCHARINFO char-infos 1672ea1d6981Smrg 1673ea1d6981Smrg FONTPROP 1674ea1d6981Smrg 4 ATOM name 1675ea1d6981Smrg 4 <32-bits> value 1676ea1d6981Smrg 1677ea1d6981Smrg CHARINFO 1678ea1d6981Smrg 2 INT16 left-side-bearing 1679ea1d6981Smrg 2 INT16 right-side-bearing 1680ea1d6981Smrg 2 INT16 character-width 1681ea1d6981Smrg 2 INT16 ascent 1682ea1d6981Smrg 2 INT16 descent 1683ea1d6981Smrg 2 CARD16 attributes 1684ea1d6981Smrg 1685ea1d6981Smrg<link linkend="requests:QueryTextExtents"><emphasis role='bold'>QueryTextExtents</emphasis></link> 1686ea1d6981Smrg 1 48 opcode 1687ea1d6981Smrg 1 BOOL odd length, True if p = 2 1688ea1d6981Smrg 2 2+(2n+p)/4 request length 1689ea1d6981Smrg 4 FONTABLE font 1690ea1d6981Smrg 2n STRING16 string 1691ea1d6981Smrg p unused, p=pad(2n) 1692ea1d6981Smrg 1693ea1d6981Smrg▶ 1694ea1d6981Smrg 1 1 Reply 1695ea1d6981Smrg 1 draw-direction 1696ea1d6981Smrg 0 LeftToRight 1697ea1d6981Smrg 1 RightToLeft 1698ea1d6981Smrg 2 CARD16 sequence number 1699ea1d6981Smrg 4 0 reply length 1700ea1d6981Smrg 2 INT16 font-ascent 1701ea1d6981Smrg 2 INT16 font-descent 1702ea1d6981Smrg 2 INT16 overall-ascent 1703ea1d6981Smrg 2 INT16 overall-descent 1704ea1d6981Smrg 4 INT32 overall-width 1705ea1d6981Smrg 4 INT32 overall-left 1706ea1d6981Smrg 4 INT32 overall-right 1707ea1d6981Smrg 4 unused 1708ea1d6981Smrg 1709ea1d6981Smrg<link linkend="requests:ListFonts"><emphasis role='bold'>ListFonts</emphasis></link> 1710ea1d6981Smrg 1 49 opcode 1711ea1d6981Smrg 1 unused 1712ea1d6981Smrg 2 2+(n+p)/4 request length 1713ea1d6981Smrg 2 CARD16 max-names 1714ea1d6981Smrg 2 n length of pattern 1715ea1d6981Smrg n STRING8 pattern 1716ea1d6981Smrg p unused, p=pad(n) 1717ea1d6981Smrg 1718ea1d6981Smrg▶ 1719ea1d6981Smrg 1 1 Reply 1720ea1d6981Smrg 1 unused 1721ea1d6981Smrg 2 CARD16 sequence number 1722ea1d6981Smrg 4 (n+p)/4 reply length 1723ea1d6981Smrg 2 CARD16 number of STRs in names 1724ea1d6981Smrg 22 unused 1725ea1d6981Smrg n LISTofSTR names 1726ea1d6981Smrg p unused, p=pad(n) 1727ea1d6981Smrg 1728ea1d6981Smrg<link linkend="requests:ListFontsWithInfo"><emphasis role='bold'>ListFontsWithInfo</emphasis></link> 1729ea1d6981Smrg 1 50 opcode 1730ea1d6981Smrg 1 unused 1731ea1d6981Smrg 2 2+(n+p)/4 request length 1732ea1d6981Smrg 2 CARD16 max-names 1733ea1d6981Smrg 2 n length of pattern 1734ea1d6981Smrg n STRING8 pattern 1735ea1d6981Smrg p unused, p=pad(n) 1736ea1d6981Smrg 1737ea1d6981Smrg▶ (except for last in series) 1738ea1d6981Smrg 1 1 Reply 1739ea1d6981Smrg 1 n length of name in bytes 1740ea1d6981Smrg 2 CARD16 sequence number 1741ea1d6981Smrg 4 7+2m+(n+p)/4 reply length 1742ea1d6981Smrg 12 CHARINFO min-bounds 1743ea1d6981Smrg 4 unused 1744ea1d6981Smrg 12 CHARINFO max-bounds 1745ea1d6981Smrg 4 unused 1746ea1d6981Smrg 2 CARD16 min-char-or-byte2 1747ea1d6981Smrg 2 CARD16 max-char-or-byte2 1748ea1d6981Smrg 2 CARD16 default-char 1749ea1d6981Smrg 2 m number of FONTPROPs in properties 1750ea1d6981Smrg 1 draw-direction 1751ea1d6981Smrg 0 LeftToRight 1752ea1d6981Smrg 1 RightToLeft 1753ea1d6981Smrg 1 CARD8 min-byte1 1754ea1d6981Smrg 1 CARD8 max-byte1 1755ea1d6981Smrg 1 BOOL all-chars-exist 1756ea1d6981Smrg 2 INT16 font-ascent 1757ea1d6981Smrg 2 INT16 font-descent 1758ea1d6981Smrg 4 CARD32 replies-hint 1759ea1d6981Smrg 8m LISTofFONTPROP properties 1760ea1d6981Smrg n STRING8 name 1761ea1d6981Smrg p unused, p=pad(n) 1762ea1d6981Smrg 1763ea1d6981Smrg FONTPROP 1764ea1d6981Smrg encodings are the same as for QueryFont 1765ea1d6981Smrg 1766ea1d6981Smrg CHARINFO 1767ea1d6981Smrg encodings are the same as for QueryFont 1768ea1d6981Smrg 1769ea1d6981Smrg▶ (last in series) 1770ea1d6981Smrg 1 1 Reply 1771ea1d6981Smrg 1 0 last-reply indicator 1772ea1d6981Smrg 2 CARD16 sequence number 1773ea1d6981Smrg 4 7 reply length 1774ea1d6981Smrg 52 unused 1775ea1d6981Smrg 1776ea1d6981Smrg<link linkend="requests:SetFontPath"><emphasis role='bold'>SetFontPath</emphasis></link> 1777ea1d6981Smrg 1 51 opcode 1778ea1d6981Smrg 1 unused 1779ea1d6981Smrg 2 2+(n+p)/4 request length 1780ea1d6981Smrg 2 CARD16 number of STRs in path 1781ea1d6981Smrg 2 unused 1782ea1d6981Smrg n LISTofSTR path 1783ea1d6981Smrg p unused, p=pad(n) 1784ea1d6981Smrg 1785ea1d6981Smrg<link linkend="requests:GetFontPath"><emphasis role='bold'>GetFontPath</emphasis></link> 1786ea1d6981Smrg 1 52 opcode 1787ea1d6981Smrg 1 unused 1788ea1d6981Smrg 2 1 request list 1789ea1d6981Smrg 1790ea1d6981Smrg▶ 1791ea1d6981Smrg 1 1 Reply 1792ea1d6981Smrg 1 unused 1793ea1d6981Smrg 2 CARD16 sequence number 1794ea1d6981Smrg 4 (n+p)/4 reply length 1795ea1d6981Smrg 2 CARD16 number of STRs in path 1796ea1d6981Smrg 22 unused 1797ea1d6981Smrg n LISTofSTR path 1798ea1d6981Smrg p unused, p=pad(n) 1799ea1d6981Smrg 1800ea1d6981Smrg<link linkend="requests:CreatePixmap"><emphasis role='bold'>CreatePixmap</emphasis></link> 1801ea1d6981Smrg 1 53 opcode 1802ea1d6981Smrg 1 CARD8 depth 1803ea1d6981Smrg 2 4 request length 1804ea1d6981Smrg 4 PIXMAP pid 1805ea1d6981Smrg 4 DRAWABLE drawable 1806ea1d6981Smrg 2 CARD16 width 1807ea1d6981Smrg 2 CARD16 height 1808ea1d6981Smrg 1809ea1d6981Smrg<link linkend="requests:FreePixmap"><emphasis role='bold'>FreePixmap</emphasis></link> 1810ea1d6981Smrg 1 54 opcode 1811ea1d6981Smrg 1 unused 1812ea1d6981Smrg 2 2 request length 1813ea1d6981Smrg 4 PIXMAP pixmap 1814ea1d6981Smrg 1815ea1d6981Smrg<link linkend="requests:CreateGC"><emphasis role='bold'>CreateGC</emphasis></link> 1816ea1d6981Smrg 1 55 opcode 1817ea1d6981Smrg 1 unused 1818ea1d6981Smrg 2 4+n request length 1819ea1d6981Smrg 4 GCONTEXT cid 1820ea1d6981Smrg 4 DRAWABLE drawable 1821ea1d6981Smrg 4 BITMASK value-mask (has n bits set to 1) 1822ea1d6981Smrg #x00000001 function 1823ea1d6981Smrg #x00000002 plane-mask 1824ea1d6981Smrg #x00000004 foreground 1825ea1d6981Smrg #x00000008 background 1826ea1d6981Smrg #x00000010 line-width 1827ea1d6981Smrg #x00000020 line-style 1828ea1d6981Smrg #x00000040 cap-style 1829ea1d6981Smrg #x00000080 join-style 1830ea1d6981Smrg #x00000100 fill-style 1831ea1d6981Smrg #x00000200 fill-rule 1832ea1d6981Smrg #x00000400 tile 1833ea1d6981Smrg #x00000800 stipple 1834ea1d6981Smrg #x00001000 tile-stipple-x-origin 1835ea1d6981Smrg #x00002000 tile-stipple-y-origin 1836ea1d6981Smrg #x00004000 font 1837ea1d6981Smrg #x00008000 subwindow-mode 1838ea1d6981Smrg #x00010000 graphics-exposures 1839ea1d6981Smrg #x00020000 clip-x-origin 1840ea1d6981Smrg #x00040000 clip-y-origin 1841ea1d6981Smrg #x00080000 clip-mask 1842ea1d6981Smrg #x00100000 dash-offset 1843ea1d6981Smrg #x00200000 dashes 1844ea1d6981Smrg #x00400000 arc-mode 1845ea1d6981Smrg 4n LISTofVALUE value-list 1846ea1d6981Smrg 1847ea1d6981Smrg VALUEs 1848ea1d6981Smrg 1 function 1849ea1d6981Smrg 0 Clear 1850ea1d6981Smrg 1 And 1851ea1d6981Smrg 2 AndReverse 1852ea1d6981Smrg 3 Copy 1853ea1d6981Smrg 4 AndInverted 1854ea1d6981Smrg 5 NoOp 1855ea1d6981Smrg 6 Xor 1856ea1d6981Smrg 7 Or 1857ea1d6981Smrg 8 Nor 1858ea1d6981Smrg 9 Equiv 1859ea1d6981Smrg 10 Invert 1860ea1d6981Smrg 11 OrReverse 1861ea1d6981Smrg 12 CopyInverted 1862ea1d6981Smrg 13 OrInverted 1863ea1d6981Smrg 14 Nand 1864ea1d6981Smrg 15 Set 1865ea1d6981Smrg 4 CARD32 plane-mask 1866ea1d6981Smrg 4 CARD32 foreground 1867ea1d6981Smrg 4 CARD32 background 1868ea1d6981Smrg 2 CARD16 line-width 1869ea1d6981Smrg 1 line-style 1870ea1d6981Smrg 0 Solid 1871ea1d6981Smrg 1 OnOffDash 1872ea1d6981Smrg 2 DoubleDash 1873ea1d6981Smrg 1 cap-style 1874ea1d6981Smrg 0 NotLast 1875ea1d6981Smrg 1 Butt 1876ea1d6981Smrg 2 Round 1877ea1d6981Smrg 3 Projecting 1878ea1d6981Smrg 1 join-style 1879ea1d6981Smrg 0 Miter 1880ea1d6981Smrg 1 Round 1881ea1d6981Smrg 2 Bevel 1882ea1d6981Smrg 1 fill-style 1883ea1d6981Smrg 0 Solid 1884ea1d6981Smrg 1 Tiled 1885ea1d6981Smrg 2 Stippled 1886ea1d6981Smrg 3 OpaqueStippled 1887ea1d6981Smrg 1 fill-rule 1888ea1d6981Smrg 0 EvenOdd 1889ea1d6981Smrg 1 Winding 1890ea1d6981Smrg 4 PIXMAP tile 1891ea1d6981Smrg 4 PIXMAP stipple 1892ea1d6981Smrg 2 INT16 tile-stipple-x-origin 1893ea1d6981Smrg 2 INT16 tile-stipple-y-origin 1894ea1d6981Smrg 4 FONT font 1895ea1d6981Smrg 1 subwindow-mode 1896ea1d6981Smrg 0 ClipByChildren 1897ea1d6981Smrg 1 IncludeInferiors 1898ea1d6981Smrg 1 BOOL graphics-exposures 1899ea1d6981Smrg 2 INT16 clip-x-origin 1900ea1d6981Smrg 2 INT16 clip-y-origin 1901ea1d6981Smrg 4 PIXMAP clip-mask 1902ea1d6981Smrg 0 None 1903ea1d6981Smrg 2 CARD16 dash-offset 1904ea1d6981Smrg 1 CARD8 dashes 1905ea1d6981Smrg 1 arc-mode 1906ea1d6981Smrg 0 Chord 1907ea1d6981Smrg 1 PieSlice 1908ea1d6981Smrg 1909ea1d6981Smrg<link linkend="requests:ChangeGC"><emphasis role='bold'>ChangeGC</emphasis></link> 1910ea1d6981Smrg 1 56 opcode 1911ea1d6981Smrg 1 unused 1912ea1d6981Smrg 2 3+n request length 1913ea1d6981Smrg 4 GCONTEXT gc 1914ea1d6981Smrg 4 BITMASK value-mask (has n bits set to 1) 1915ea1d6981Smrg encodings are the same as for CreateGC 1916ea1d6981Smrg 4n LISTofVALUE value-list 1917ea1d6981Smrg encodings are the same as for CreateGC 1918ea1d6981Smrg 1919ea1d6981Smrg<link linkend="requests:CopyGC"><emphasis role='bold'>CopyGC</emphasis></link> 1920ea1d6981Smrg 1 57 opcode 1921ea1d6981Smrg 1 unused 1922ea1d6981Smrg 2 4 request length 1923ea1d6981Smrg 4 GCONTEXT src-gc 1924ea1d6981Smrg 4 GCONTEXT dst-gc 1925ea1d6981Smrg 4 BITMASK value-mask 1926ea1d6981Smrg encodings are the same as for CreateGC 1927ea1d6981Smrg 1928ea1d6981Smrg<link linkend="requests:SetDashes"><emphasis role='bold'>SetDashes</emphasis></link> 1929ea1d6981Smrg 1 58 opcode 1930ea1d6981Smrg 1 unused 1931ea1d6981Smrg 2 3+(n+p)/4 request length 1932ea1d6981Smrg 4 GCONTEXT gc 1933ea1d6981Smrg 2 CARD16 dash-offset 1934ea1d6981Smrg 2 n length of dashes 1935ea1d6981Smrg n LISTofCARD8 dashes 1936ea1d6981Smrg p unused, p=pad(n) 1937ea1d6981Smrg 1938ea1d6981Smrg<link linkend="requests:SetClipRectangles"><emphasis role='bold'>SetClipRectangles</emphasis></link> 1939ea1d6981Smrg 1 59 opcode 1940ea1d6981Smrg 1 ordering 1941ea1d6981Smrg 0 UnSorted 1942ea1d6981Smrg 1 YSorted 1943ea1d6981Smrg 2 YXSorted 1944ea1d6981Smrg 3 YXBanded 1945ea1d6981Smrg 2 3+2n request length 1946ea1d6981Smrg 4 GCONTEXT gc 1947ea1d6981Smrg 2 INT16 clip-x-origin 1948ea1d6981Smrg 2 INT16 clip-y-origin 1949ea1d6981Smrg 8n LISTofRECTANGLE rectangles 1950ea1d6981Smrg 1951ea1d6981Smrg<link linkend="requests:FreeGC"><emphasis role='bold'>FreeGC</emphasis></link> 1952ea1d6981Smrg 1 60 opcode 1953ea1d6981Smrg 1 unused 1954ea1d6981Smrg 2 2 request length 1955ea1d6981Smrg 4 GCONTEXT gc 1956ea1d6981Smrg 1957ea1d6981Smrg<link linkend="requests:ClearArea"><emphasis role='bold'>ClearArea</emphasis></link> 1958ea1d6981Smrg 1 61 opcode 1959ea1d6981Smrg 1 BOOL exposures 1960ea1d6981Smrg 2 4 request length 1961ea1d6981Smrg 4 WINDOW window 1962ea1d6981Smrg 2 INT16 x 1963ea1d6981Smrg 2 INT16 y 1964ea1d6981Smrg 2 CARD16 width 1965ea1d6981Smrg 2 CARD16 height 1966ea1d6981Smrg 1967ea1d6981Smrg<link linkend="requests:CopyArea"><emphasis role='bold'>CopyArea</emphasis></link> 1968ea1d6981Smrg 1 62 opcode 1969ea1d6981Smrg 1 unused 1970ea1d6981Smrg 2 7 request length 1971ea1d6981Smrg 4 DRAWABLE src-drawable 1972ea1d6981Smrg 4 DRAWABLE dst-drawable 1973ea1d6981Smrg 4 GCONTEXT gc 1974ea1d6981Smrg 2 INT16 src-x 1975ea1d6981Smrg 2 INT16 src-y 1976ea1d6981Smrg 2 INT16 dst-x 1977ea1d6981Smrg 2 INT16 dst-y 1978ea1d6981Smrg 2 CARD16 width 1979ea1d6981Smrg 2 CARD16 height 1980ea1d6981Smrg 1981ea1d6981Smrg<link linkend="requests:CopyPlane"><emphasis role='bold'>CopyPlane</emphasis></link> 1982ea1d6981Smrg 1 63 opcode 1983ea1d6981Smrg 1 unused 1984ea1d6981Smrg 2 8 request length 1985ea1d6981Smrg 4 DRAWABLE src-drawable 1986ea1d6981Smrg 4 DRAWABLE dst-drawable 1987ea1d6981Smrg 4 GCONTEXT gc 1988ea1d6981Smrg 2 INT16 src-x 1989ea1d6981Smrg 2 INT16 src-y 1990ea1d6981Smrg 2 INT16 dst-x 1991ea1d6981Smrg 2 INT16 dst-y 1992ea1d6981Smrg 2 CARD16 width 1993ea1d6981Smrg 2 CARD16 height 1994ea1d6981Smrg 4 CARD32 bit-plane 1995ea1d6981Smrg 1996ea1d6981Smrg<link linkend="requests:PolyPoint"><emphasis role='bold'>PolyPoint</emphasis></link> 1997ea1d6981Smrg 1 64 opcode 1998ea1d6981Smrg 1 coordinate-mode 1999ea1d6981Smrg 0 Origin 2000ea1d6981Smrg 1 Previous 2001ea1d6981Smrg 2 3+n request length 2002ea1d6981Smrg 4 DRAWABLE drawable 2003ea1d6981Smrg 4 GCONTEXT gc 2004ea1d6981Smrg 4n LISTofPOINT points 2005ea1d6981Smrg 2006ea1d6981Smrg<link linkend="requests:PolyLine"><emphasis role='bold'>PolyLine</emphasis></link> 2007ea1d6981Smrg 1 65 opcode 2008ea1d6981Smrg 1 coordinate-mode 2009ea1d6981Smrg 0 Origin 2010ea1d6981Smrg 1 Previous 2011ea1d6981Smrg 2 3+n request length 2012ea1d6981Smrg 4 DRAWABLE drawable 2013ea1d6981Smrg 4 GCONTEXT gc 2014ea1d6981Smrg 4n LISTofPOINT points 2015ea1d6981Smrg 2016ea1d6981Smrg<link linkend="requests:PolySegment"><emphasis role='bold'>PolySegment</emphasis></link> 2017ea1d6981Smrg 1 66 opcode 2018ea1d6981Smrg 1 unused 2019ea1d6981Smrg 2 3+2n request length 2020ea1d6981Smrg 4 DRAWABLE drawable 2021ea1d6981Smrg 4 GCONTEXT gc 2022ea1d6981Smrg 8n LISTofSEGMENT segments 2023ea1d6981Smrg 2024ea1d6981Smrg SEGMENT 2025ea1d6981Smrg 2 INT16 x1 2026ea1d6981Smrg 2 INT16 y1 2027ea1d6981Smrg 2 INT16 x2 2028ea1d6981Smrg 2 INT16 y2 2029ea1d6981Smrg 2030ea1d6981Smrg<link linkend="requests:PolyRectangle"><emphasis role='bold'>PolyRectangle</emphasis></link> 2031ea1d6981Smrg 1 67 opcode 2032ea1d6981Smrg 1 unused 2033ea1d6981Smrg 2 3+2n request length 2034ea1d6981Smrg 4 DRAWABLE drawable 2035ea1d6981Smrg 4 GCONTEXT gc 2036ea1d6981Smrg 8n LISTofRECTANGLE rectangles 2037ea1d6981Smrg 2038ea1d6981Smrg<link linkend="requests:PolyArc"><emphasis role='bold'>PolyArc</emphasis></link> 2039ea1d6981Smrg 1 68 opcode 2040ea1d6981Smrg 1 unused 2041ea1d6981Smrg 2 3+3n request length 2042ea1d6981Smrg 4 DRAWABLE drawable 2043ea1d6981Smrg 4 GCONTEXT gc 2044ea1d6981Smrg 12n LISTofARC arcs 2045ea1d6981Smrg 2046ea1d6981Smrg<link linkend="requests:FillPoly"><emphasis role='bold'>FillPoly</emphasis></link> 2047ea1d6981Smrg 1 69 opcode 2048ea1d6981Smrg 1 unused 2049ea1d6981Smrg 2 4+n request length 2050ea1d6981Smrg 4 DRAWABLE drawable 2051ea1d6981Smrg 4 GCONTEXT gc 2052ea1d6981Smrg 1 shape 2053ea1d6981Smrg 0 Complex 2054ea1d6981Smrg 1 Nonconvex 2055ea1d6981Smrg 2 Convex 2056ea1d6981Smrg 1 coordinate-mode 2057ea1d6981Smrg 0 Origin 2058ea1d6981Smrg 1 Previous 2059ea1d6981Smrg 2 unused 2060ea1d6981Smrg 4n LISTofPOINT points 2061ea1d6981Smrg 2062ea1d6981Smrg<link linkend="requests:PolyFillRectangle"><emphasis role='bold'>PolyFillRectangle</emphasis></link> 2063ea1d6981Smrg 1 70 opcode 2064ea1d6981Smrg 1 unused 2065ea1d6981Smrg 2 3+2n request length 2066ea1d6981Smrg 4 DRAWABLE drawable 2067ea1d6981Smrg 4 GCONTEXT gc 2068ea1d6981Smrg 8n LISTofRECTANGLE rectangles 2069ea1d6981Smrg 2070ea1d6981Smrg<link linkend="requests:PolyFillArc"><emphasis role='bold'>PolyFillArc</emphasis></link> 2071ea1d6981Smrg 1 71 opcode 2072ea1d6981Smrg 1 unused 2073ea1d6981Smrg 2 3+3n request length 2074ea1d6981Smrg 4 DRAWABLE drawable 2075ea1d6981Smrg 4 GCONTEXT gc 2076ea1d6981Smrg 12n LISTofARC arcs 2077ea1d6981Smrg 2078ea1d6981Smrg<link linkend="requests:PutImage"><emphasis role='bold'>PutImage</emphasis></link> 2079ea1d6981Smrg 1 72 opcode 2080ea1d6981Smrg 1 format 2081ea1d6981Smrg 0 Bitmap 2082ea1d6981Smrg 1 XYPixmap 2083ea1d6981Smrg 2 ZPixmap 2084ea1d6981Smrg 2 6+(n+p)/4 request length 2085ea1d6981Smrg 4 DRAWABLE drawable 2086ea1d6981Smrg 4 GCONTEXT gc 2087ea1d6981Smrg 2 CARD16 width 2088ea1d6981Smrg 2 CARD16 height 2089ea1d6981Smrg 2 INT16 dst-x 2090ea1d6981Smrg 2 INT16 dst-y 2091ea1d6981Smrg 1 CARD8 left-pad 2092ea1d6981Smrg 1 CARD8 depth 2093ea1d6981Smrg 2 unused 2094ea1d6981Smrg n LISTofBYTE data 2095ea1d6981Smrg p unused, p=pad(n) 2096ea1d6981Smrg 2097ea1d6981Smrg<link linkend="requests:GetImage"><emphasis role='bold'>GetImage</emphasis></link> 2098ea1d6981Smrg 1 73 opcode 2099ea1d6981Smrg 1 format 2100ea1d6981Smrg 1 XYPixmap 2101ea1d6981Smrg 2 ZPixmap 2102ea1d6981Smrg 2 5 request length 2103ea1d6981Smrg 4 DRAWABLE drawable 2104ea1d6981Smrg 2 INT16 x 2105ea1d6981Smrg 2 INT16 y 2106ea1d6981Smrg 2 CARD16 width 2107ea1d6981Smrg 2 CARD16 height 2108ea1d6981Smrg 4 CARD32 plane-mask 2109ea1d6981Smrg 2110ea1d6981Smrg▶ 2111ea1d6981Smrg 1 1 Reply 2112ea1d6981Smrg 1 CARD8 depth 2113ea1d6981Smrg 2 CARD16 sequence number 2114ea1d6981Smrg 4 (n+p)/4 reply length 2115ea1d6981Smrg 4 VISUALID visual 2116ea1d6981Smrg 0 None 2117ea1d6981Smrg 20 unused 2118ea1d6981Smrg n LISTofBYTE data 2119ea1d6981Smrg p unused, p=pad(n) 2120ea1d6981Smrg 2121ea1d6981Smrg<link linkend="requests:PolyText8"><emphasis role='bold'>PolyText8</emphasis></link> 2122ea1d6981Smrg 1 74 opcode 2123ea1d6981Smrg 1 unused 2124ea1d6981Smrg 2 4+(n+p)/4 request length 2125ea1d6981Smrg 4 DRAWABLE drawable 2126ea1d6981Smrg 4 GCONTEXT gc 2127ea1d6981Smrg 2 INT16 x 2128ea1d6981Smrg 2 INT16 y 2129ea1d6981Smrg n LISTofTEXTITEM8 items 2130ea1d6981Smrg p unused, p=pad(n) (p is always 0 2131ea1d6981Smrg or 1) 2132ea1d6981Smrg 2133ea1d6981Smrg TEXTITEM8 2134ea1d6981Smrg 1 m length of string (cannot be 255) 2135ea1d6981Smrg 1 INT8 delta 2136ea1d6981Smrg m STRING8 string 2137ea1d6981Smrg or 2138ea1d6981Smrg 1 255 font-shift indicator 2139ea1d6981Smrg 1 font byte 3 (most-significant) 2140ea1d6981Smrg 1 font byte 2 2141ea1d6981Smrg 1 font byte 1 2142ea1d6981Smrg 1 font byte 0 (least-significant) 2143ea1d6981Smrg 2144ea1d6981Smrg<link linkend="requests:PolyText16"><emphasis role='bold'>PolyText16</emphasis></link> 2145ea1d6981Smrg 1 75 opcode 2146ea1d6981Smrg 1 unused 2147ea1d6981Smrg 2 4+(n+p)/4 request length 2148ea1d6981Smrg 4 DRAWABLE drawable 2149ea1d6981Smrg 4 GCONTEXT gc 2150ea1d6981Smrg 2 INT16 x 2151ea1d6981Smrg 2 INT16 y 2152ea1d6981Smrg n LISTofTEXTITEM16 items 2153ea1d6981Smrg p unused, p=pad(n) (p must be 0 or 2154ea1d6981Smrg 1) 2155ea1d6981Smrg 2156ea1d6981Smrg TEXTITEM16 2157ea1d6981Smrg 1 m number of CHAR2Bs in string 2158ea1d6981Smrg (cannot be 255) 2159ea1d6981Smrg 1 INT8 delta 2160ea1d6981Smrg 2m STRING16 string 2161ea1d6981Smrg or 2162ea1d6981Smrg 1 255 font-shift indicator 2163ea1d6981Smrg 1 font byte 3 (most-significant) 2164ea1d6981Smrg 1 font byte 2 2165ea1d6981Smrg 1 font byte 1 2166ea1d6981Smrg 1 font byte 0 (least-significant) 2167ea1d6981Smrg 2168ea1d6981Smrg<link linkend="requests:ImageText8"><emphasis role='bold'>ImageText8</emphasis></link> 2169ea1d6981Smrg 1 76 opcode 2170ea1d6981Smrg 1 n length of string 2171ea1d6981Smrg 2 4+(n+p)/4 request length 2172ea1d6981Smrg 4 DRAWABLE drawable 2173ea1d6981Smrg 4 GCONTEXT gc 2174ea1d6981Smrg 2 INT16 x 2175ea1d6981Smrg 2 INT16 y 2176ea1d6981Smrg n STRING8 string 2177ea1d6981Smrg p unused, p=pad(n) 2178ea1d6981Smrg 2179ea1d6981Smrg<link linkend="requests:ImageText16"><emphasis role='bold'>ImageText16</emphasis></link> 2180ea1d6981Smrg 1 77 opcode 2181ea1d6981Smrg 1 n number of CHAR2Bs in string 2182ea1d6981Smrg 2 4+(2n+p)/4 request length 2183ea1d6981Smrg 4 DRAWABLE drawable 2184ea1d6981Smrg 4 GCONTEXT gc 2185ea1d6981Smrg 2 INT16 x 2186ea1d6981Smrg 2 INT16 y 2187ea1d6981Smrg 2n STRING16 string 2188ea1d6981Smrg p unused, p=pad(2n) 2189ea1d6981Smrg 2190ea1d6981Smrg<link linkend="requests:CreateColormap"><emphasis role='bold'>CreateColormap</emphasis></link> 2191ea1d6981Smrg 1 78 opcode 2192ea1d6981Smrg 1 alloc 2193ea1d6981Smrg 0 None 2194ea1d6981Smrg 1 All 2195ea1d6981Smrg 2 4 request length 2196ea1d6981Smrg 4 COLORMAP mid 2197ea1d6981Smrg 4 WINDOW window 2198ea1d6981Smrg 4 VISUALID visual 2199ea1d6981Smrg 2200ea1d6981Smrg<link linkend="requests:FreeColormap"><emphasis role='bold'>FreeColormap</emphasis></link> 2201ea1d6981Smrg 1 79 opcode 2202ea1d6981Smrg 1 unused 2203ea1d6981Smrg 2 2 request length 2204ea1d6981Smrg 4 COLORMAP cmap 2205ea1d6981Smrg 2206ea1d6981Smrg<link linkend="requests:CopyColormapAndFree"><emphasis role='bold'>CopyColormapAndFree</emphasis></link> 2207ea1d6981Smrg 1 80 opcode 2208ea1d6981Smrg 1 unused 2209ea1d6981Smrg 2 3 request length 2210ea1d6981Smrg 4 COLORMAP mid 2211ea1d6981Smrg 4 COLORMAP src-cmap 2212ea1d6981Smrg 2213ea1d6981Smrg<link linkend="requests:InstallColormap"><emphasis role='bold'>InstallColormap</emphasis></link> 2214ea1d6981Smrg 1 81 opcode 2215ea1d6981Smrg 1 unused 2216ea1d6981Smrg 2 2 request length 2217ea1d6981Smrg 4 COLORMAP cmap 2218ea1d6981Smrg 2219ea1d6981Smrg<link linkend="requests:UninstallColormap"><emphasis role='bold'>UninstallColormap</emphasis></link> 2220ea1d6981Smrg 1 82 opcode 2221ea1d6981Smrg 1 unused 2222ea1d6981Smrg 2 2 request length 2223ea1d6981Smrg 4 COLORMAP cmap 2224ea1d6981Smrg 2225ea1d6981Smrg<link linkend="requests:ListInstalledColormaps"><emphasis role='bold'>ListInstalledColormaps</emphasis></link> 2226ea1d6981Smrg 1 83 opcode 2227ea1d6981Smrg 1 unused 2228ea1d6981Smrg 2 2 request length 2229ea1d6981Smrg 4 WINDOW window 2230ea1d6981Smrg 2231ea1d6981Smrg▶ 2232ea1d6981Smrg 1 1 Reply 2233ea1d6981Smrg 1 unused 2234ea1d6981Smrg 2 CARD16 sequence number 2235ea1d6981Smrg 4 n reply length 2236ea1d6981Smrg 2 n number of COLORMAPs in cmaps 2237ea1d6981Smrg 22 unused 2238ea1d6981Smrg 4n LISTofCOLORMAP cmaps 2239ea1d6981Smrg 2240ea1d6981Smrg<link linkend="requests:AllocColor"><emphasis role='bold'>AllocColor</emphasis></link> 2241ea1d6981Smrg 1 84 opcode 2242ea1d6981Smrg 1 unused 2243ea1d6981Smrg 2 4 request length 2244ea1d6981Smrg 4 COLORMAP cmap 2245ea1d6981Smrg 2 CARD16 red 2246ea1d6981Smrg 2 CARD16 green 2247ea1d6981Smrg 2 CARD16 blue 2248ea1d6981Smrg 2 unused 2249ea1d6981Smrg 2250ea1d6981Smrg▶ 2251ea1d6981Smrg 1 1 Reply 2252ea1d6981Smrg 1 unused 2253ea1d6981Smrg 2 CARD16 sequence number 2254ea1d6981Smrg 4 0 reply length 2255ea1d6981Smrg 2 CARD16 red 2256ea1d6981Smrg 2 CARD16 green 2257ea1d6981Smrg 2 CARD16 blue 2258ea1d6981Smrg 2 unused 2259ea1d6981Smrg 4 CARD32 pixel 2260ea1d6981Smrg 12 unused 2261ea1d6981Smrg 2262ea1d6981Smrg<link linkend="requests:AllocNamedColor"><emphasis role='bold'>AllocNamedColor</emphasis></link> 2263ea1d6981Smrg 1 85 opcode 2264ea1d6981Smrg 1 unused 2265ea1d6981Smrg 2 3+(n+p)/4 request length 2266ea1d6981Smrg 4 COLORMAP cmap 2267ea1d6981Smrg 2 n length of name 2268ea1d6981Smrg 2 unused 2269ea1d6981Smrg n STRING8 name 2270ea1d6981Smrg p unused, p=pad(n) 2271ea1d6981Smrg 2272ea1d6981Smrg▶ 2273ea1d6981Smrg 1 1 Reply 2274ea1d6981Smrg 1 unused 2275ea1d6981Smrg 2 CARD16 sequence number 2276ea1d6981Smrg 4 0 reply length 2277ea1d6981Smrg 4 CARD32 pixel 2278ea1d6981Smrg 2 CARD16 exact-red 2279ea1d6981Smrg 2 CARD16 exact-green 2280ea1d6981Smrg 2 CARD16 exact-blue 2281ea1d6981Smrg 2 CARD16 visual-red 2282ea1d6981Smrg 2 CARD16 visual-green 2283ea1d6981Smrg 2 CARD16 visual-blue 2284ea1d6981Smrg 8 unused 2285ea1d6981Smrg 2286ea1d6981Smrg<link linkend="requests:AllocColorCells"><emphasis role='bold'>AllocColorCells</emphasis></link> 2287ea1d6981Smrg 1 86 opcode 2288ea1d6981Smrg 1 BOOL contiguous 2289ea1d6981Smrg 2 3 request length 2290ea1d6981Smrg 4 COLORMAP cmap 2291ea1d6981Smrg 2 CARD16 colors 2292ea1d6981Smrg 2 CARD16 planes 2293ea1d6981Smrg 2294ea1d6981Smrg▶ 2295ea1d6981Smrg 1 1 Reply 2296ea1d6981Smrg 1 unused 2297ea1d6981Smrg 2 CARD16 sequence number 2298ea1d6981Smrg 4 n+m reply length 2299ea1d6981Smrg 2 n number of CARD32s in pixels 2300ea1d6981Smrg 2 m number of CARD32s in masks 2301ea1d6981Smrg 20 unused 2302ea1d6981Smrg 4n LISTofCARD32 pixels 2303ea1d6981Smrg 4m LISTofCARD32 masks 2304ea1d6981Smrg 2305ea1d6981Smrg<link linkend="requests:AllocColorPlanes"><emphasis role='bold'>AllocColorPlanes</emphasis></link> 2306ea1d6981Smrg 1 87 opcode 2307ea1d6981Smrg 1 BOOL contiguous 2308ea1d6981Smrg 2 4 request length 2309ea1d6981Smrg 4 COLORMAP cmap 2310ea1d6981Smrg 2 CARD16 colors 2311ea1d6981Smrg 2 CARD16 reds 2312ea1d6981Smrg 2 CARD16 greens 2313ea1d6981Smrg 2 CARD16 blues 2314ea1d6981Smrg 2315ea1d6981Smrg▶ 2316ea1d6981Smrg 1 1 Reply 2317ea1d6981Smrg 1 unused 2318ea1d6981Smrg 2 CARD16 sequence number 2319ea1d6981Smrg 4 n reply length 2320ea1d6981Smrg 2 n number of CARD32s in pixels 2321ea1d6981Smrg 2 unused 2322ea1d6981Smrg 4 CARD32 red-mask 2323ea1d6981Smrg 4 CARD32 green-mask 2324ea1d6981Smrg 4 CARD32 blue-mask 2325ea1d6981Smrg 8 unused 2326ea1d6981Smrg 4n LISTofCARD32 pixels 2327ea1d6981Smrg 2328ea1d6981Smrg<link linkend="requests:FreeColors"><emphasis role='bold'>FreeColors</emphasis></link> 2329ea1d6981Smrg 1 88 opcode 2330ea1d6981Smrg 1 unused 2331ea1d6981Smrg 2 3+n request length 2332ea1d6981Smrg 4 COLORMAP cmap 2333ea1d6981Smrg 4 CARD32 plane-mask 2334ea1d6981Smrg 4n LISTofCARD32 pixels 2335ea1d6981Smrg 2336ea1d6981Smrg<link linkend="requests:StoreColors"><emphasis role='bold'>StoreColors</emphasis></link> 2337ea1d6981Smrg 1 89 opcode 2338ea1d6981Smrg 1 unused 2339ea1d6981Smrg 2 2+3n request length 2340ea1d6981Smrg 4 COLORMAP cmap 2341ea1d6981Smrg 12n LISTofCOLORITEM items 2342ea1d6981Smrg 2343ea1d6981Smrg COLORITEM 2344ea1d6981Smrg 4 CARD32 pixel 2345ea1d6981Smrg 2 CARD16 red 2346ea1d6981Smrg 2 CARD16 green 2347ea1d6981Smrg 2 CARD16 blue 2348ea1d6981Smrg 1 do-red, do-green, do-blue 2349ea1d6981Smrg #x01 do-red (1 is True, 0 is False) 2350ea1d6981Smrg #x02 do-green (1 is True, 0 is False) 2351ea1d6981Smrg #x04 do-blue (1 is True, 0 is False) 2352ea1d6981Smrg #xF8 unused 2353ea1d6981Smrg 1 unused 2354ea1d6981Smrg 2355ea1d6981Smrg<link linkend="requests:StoreNamedColor"><emphasis role='bold'>StoreNamedColor</emphasis></link> 2356ea1d6981Smrg 1 90 opcode 2357ea1d6981Smrg 1 do-red, do-green, do-blue 2358ea1d6981Smrg #x01 do-red (1 is True, 0 is False) 2359ea1d6981Smrg #x02 do-green (1 is True, 0 is False) 2360ea1d6981Smrg #x04 do-blue (1 is True, 0 is False) 2361ea1d6981Smrg #xF8 unused 2362ea1d6981Smrg 2 4+(n+p)/4 request length 2363ea1d6981Smrg 4 COLORMAP cmap 2364ea1d6981Smrg 4 CARD32 pixel 2365ea1d6981Smrg 2 n length of name 2366ea1d6981Smrg 2 unused 2367ea1d6981Smrg n STRING8 name 2368ea1d6981Smrg p unused, p=pad(n) 2369ea1d6981Smrg 2370ea1d6981Smrg<link linkend="requests:QueryColors"><emphasis role='bold'>QueryColors</emphasis></link> 2371ea1d6981Smrg 1 91 opcode 2372ea1d6981Smrg 1 unused 2373ea1d6981Smrg 2 2+n request length 2374ea1d6981Smrg 4 COLORMAP cmap 2375ea1d6981Smrg 4n LISTofCARD32 pixels 2376ea1d6981Smrg 2377ea1d6981Smrg▶ 2378ea1d6981Smrg 1 1 Reply 2379ea1d6981Smrg 1 unused 2380ea1d6981Smrg 2 CARD16 sequence number 2381ea1d6981Smrg 4 2n reply length 2382ea1d6981Smrg 2 n number of RGBs in colors 2383ea1d6981Smrg 22 unused 2384ea1d6981Smrg 8n LISTofRGB colors 2385ea1d6981Smrg 2386ea1d6981Smrg RGB 2387ea1d6981Smrg 2 CARD16 red 2388ea1d6981Smrg 2 CARD16 green 2389ea1d6981Smrg 2 CARD16 blue 2390ea1d6981Smrg 2 unused 2391ea1d6981Smrg 2392ea1d6981Smrg<link linkend="requests:LookupColor"><emphasis role='bold'>LookupColor</emphasis></link> 2393ea1d6981Smrg 1 92 opcode 2394ea1d6981Smrg 1 unused 2395ea1d6981Smrg 2 3+(n+p)/4 request length 2396ea1d6981Smrg 4 COLORMAP cmap 2397ea1d6981Smrg 2 n length of name 2398ea1d6981Smrg 2 unused 2399ea1d6981Smrg n STRING8 name 2400ea1d6981Smrg p unused, p=pad(n) 2401ea1d6981Smrg 2402ea1d6981Smrg▶ 2403ea1d6981Smrg 1 1 Reply 2404ea1d6981Smrg 1 unused 2405ea1d6981Smrg 2 CARD16 sequence number 2406ea1d6981Smrg 4 0 reply length 2407ea1d6981Smrg 2 CARD16 exact-red 2408ea1d6981Smrg 2 CARD16 exact-green 2409ea1d6981Smrg 2 CARD16 exact-blue 2410ea1d6981Smrg 2 CARD16 visual-red 2411ea1d6981Smrg 2 CARD16 visual-green 2412ea1d6981Smrg 2 CARD16 visual-blue 2413ea1d6981Smrg 12 unused 2414ea1d6981Smrg 2415ea1d6981Smrg<link linkend="requests:CreateCursor"><emphasis role='bold'>CreateCursor</emphasis></link> 2416ea1d6981Smrg 1 93 opcode 2417ea1d6981Smrg 1 unused 2418ea1d6981Smrg 2 8 request length 2419ea1d6981Smrg 4 CURSOR cid 2420ea1d6981Smrg 4 PIXMAP source 2421ea1d6981Smrg 4 PIXMAP mask 2422ea1d6981Smrg 0 None 2423ea1d6981Smrg 2 CARD16 fore-red 2424ea1d6981Smrg 2 CARD16 fore-green 2425ea1d6981Smrg 2 CARD16 fore-blue 2426ea1d6981Smrg 2 CARD16 back-red 2427ea1d6981Smrg 2 CARD16 back-green 2428ea1d6981Smrg 2 CARD16 back-blue 2429ea1d6981Smrg 2 CARD16 x 2430ea1d6981Smrg 2 CARD16 y 2431ea1d6981Smrg 2432ea1d6981Smrg<link linkend="requests:CreateGlyphCursor"><emphasis role='bold'>CreateGlyphCursor</emphasis></link> 2433ea1d6981Smrg 1 94 opcode 2434ea1d6981Smrg 1 unused 2435ea1d6981Smrg 2 8 request length 2436ea1d6981Smrg 4 CURSOR cid 2437ea1d6981Smrg 4 FONT source-font 2438ea1d6981Smrg 4 FONT mask-font 2439ea1d6981Smrg 0 None 2440ea1d6981Smrg 2 CARD16 source-char 2441ea1d6981Smrg 2 CARD16 mask-char 2442ea1d6981Smrg 2 CARD16 fore-red 2443ea1d6981Smrg 2 CARD16 fore-green 2444ea1d6981Smrg 2 CARD16 fore-blue 2445ea1d6981Smrg 2 CARD16 back-red 2446ea1d6981Smrg 2 CARD16 back-green 2447ea1d6981Smrg 2 CARD16 back-blue 2448ea1d6981Smrg 2449ea1d6981Smrg<link linkend="requests:FreeCursor"><emphasis role='bold'>FreeCursor</emphasis></link> 2450ea1d6981Smrg 1 95 opcode 2451ea1d6981Smrg 1 unused 2452ea1d6981Smrg 2 2 request length 2453ea1d6981Smrg 4 CURSOR cursor 2454ea1d6981Smrg 2455ea1d6981Smrg<link linkend="requests:RecolorCursor"><emphasis role='bold'>RecolorCursor</emphasis></link> 2456ea1d6981Smrg 1 96 opcode 2457ea1d6981Smrg 1 unused 2458ea1d6981Smrg 2 5 request length 2459ea1d6981Smrg 4 CURSOR cursor 2460ea1d6981Smrg 2 CARD16 fore-red 2461ea1d6981Smrg 2 CARD16 fore-green 2462ea1d6981Smrg 2 CARD16 fore-blue 2463ea1d6981Smrg 2 CARD16 back-red 2464ea1d6981Smrg 2 CARD16 back-green 2465ea1d6981Smrg 2 CARD16 back-blue 2466ea1d6981Smrg 2467ea1d6981Smrg<link linkend="requests:QueryBestSize"><emphasis role='bold'>QueryBestSize</emphasis></link> 2468ea1d6981Smrg 1 97 opcode 2469ea1d6981Smrg 1 class 2470ea1d6981Smrg 0 Cursor 2471ea1d6981Smrg 1 Tile 2472ea1d6981Smrg 2 Stipple 2473ea1d6981Smrg 2 3 request length 2474ea1d6981Smrg 4 DRAWABLE drawable 2475ea1d6981Smrg 2 CARD16 width 2476ea1d6981Smrg 2 CARD16 height 2477ea1d6981Smrg 2478ea1d6981Smrg▶ 2479ea1d6981Smrg 1 1 Reply 2480ea1d6981Smrg 1 unused 2481ea1d6981Smrg 2 CARD16 sequence number 2482ea1d6981Smrg 4 0 reply length 2483ea1d6981Smrg 2 CARD16 width 2484ea1d6981Smrg 2 CARD16 height 2485ea1d6981Smrg 20 unused 2486ea1d6981Smrg 2487ea1d6981Smrg<link linkend="requests:QueryExtension"><emphasis role='bold'>QueryExtension</emphasis></link> 2488ea1d6981Smrg 1 98 opcode 2489ea1d6981Smrg 1 unused 2490ea1d6981Smrg 2 2+(n+p)/4 request length 2491ea1d6981Smrg 2 n length of name 2492ea1d6981Smrg 2 unused 2493ea1d6981Smrg n STRING8 name 2494ea1d6981Smrg p unused, p=pad(n) 2495ea1d6981Smrg 2496ea1d6981Smrg▶ 2497ea1d6981Smrg 1 1 Reply 2498ea1d6981Smrg 1 unused 2499ea1d6981Smrg 2 CARD16 sequence number 2500ea1d6981Smrg 4 0 reply length 2501ea1d6981Smrg 1 BOOL present 2502ea1d6981Smrg 1 CARD8 major-opcode 2503ea1d6981Smrg 1 CARD8 first-event 2504ea1d6981Smrg 1 CARD8 first-error 2505ea1d6981Smrg 20 unused 2506ea1d6981Smrg 2507ea1d6981Smrg<link linkend="requests:ListExtensions"><emphasis role='bold'>ListExtensions</emphasis></link> 2508ea1d6981Smrg 1 99 opcode 2509ea1d6981Smrg 1 unused 2510ea1d6981Smrg 2 1 request length 2511ea1d6981Smrg 2512ea1d6981Smrg▶ 2513ea1d6981Smrg 1 1 Reply 2514ea1d6981Smrg 1 CARD8 number of STRs in names 2515ea1d6981Smrg 2 CARD16 sequence number 2516ea1d6981Smrg 4 (n+p)/4 reply length 2517ea1d6981Smrg 24 unused 2518ea1d6981Smrg n LISTofSTR names 2519ea1d6981Smrg p unused, p=pad(n) 2520ea1d6981Smrg 2521ea1d6981Smrg<link linkend="requests:ChangeKeyboardMapping"><emphasis role='bold'>ChangeKeyboardMapping</emphasis></link> 2522ea1d6981Smrg 1 100 opcode 2523ea1d6981Smrg 1 n keycode-count 2524ea1d6981Smrg 2 2+nm request length 2525ea1d6981Smrg 1 KEYCODE first-keycode 2526ea1d6981Smrg 1 m keysyms-per-keycode 2527ea1d6981Smrg 2 unused 2528ea1d6981Smrg 4nm LISTofKEYSYM keysyms 2529ea1d6981Smrg 2530ea1d6981Smrg<link linkend="requests:GetKeyboardMapping"><emphasis role='bold'>GetKeyboardMapping</emphasis></link> 2531ea1d6981Smrg 1 101 opcode 2532ea1d6981Smrg 1 unused 2533ea1d6981Smrg 2 2 request length 2534ea1d6981Smrg 1 KEYCODE first-keycode 2535ea1d6981Smrg 1 m count 2536ea1d6981Smrg 2 unused 2537ea1d6981Smrg 2538ea1d6981Smrg▶ 2539ea1d6981Smrg 1 1 Reply 2540ea1d6981Smrg 1 n keysyms-per-keycode 2541ea1d6981Smrg 2 CARD16 sequence number 2542ea1d6981Smrg 4 nm reply length (m = count field 2543ea1d6981Smrg from the request) 2544ea1d6981Smrg 24 unused 2545ea1d6981Smrg 4nm LISTofKEYSYM keysyms 2546ea1d6981Smrg 2547ea1d6981Smrg<link linkend="requests:ChangeKeyboardControl"><emphasis role='bold'>ChangeKeyboardControl</emphasis></link> 2548ea1d6981Smrg 1 102 opcode 2549ea1d6981Smrg 1 unused 2550ea1d6981Smrg 2 2+n request length 2551ea1d6981Smrg 4 BITMASK value-mask (has n bits set to 1) 2552ea1d6981Smrg #x0001 key-click-percent 2553ea1d6981Smrg #x0002 bell-percent 2554ea1d6981Smrg #x0004 bell-pitch 2555ea1d6981Smrg #x0008 bell-duration 2556ea1d6981Smrg #x0010 led 2557ea1d6981Smrg #x0020 led-mode 2558ea1d6981Smrg #x0040 key 2559ea1d6981Smrg #x0080 auto-repeat-mode 2560ea1d6981Smrg 4n LISTofVALUE value-list 2561ea1d6981Smrg 2562ea1d6981Smrg VALUEs 2563ea1d6981Smrg 1 INT8 key-click-percent 2564ea1d6981Smrg 1 INT8 bell-percent 2565ea1d6981Smrg 2 INT16 bell-pitch 2566ea1d6981Smrg 2 INT16 bell-duration 2567ea1d6981Smrg 1 CARD8 led 2568ea1d6981Smrg 1 led-mode 2569ea1d6981Smrg 0 Off 2570ea1d6981Smrg 1 On 2571ea1d6981Smrg 1 KEYCODE key 2572ea1d6981Smrg 1 auto-repeat-mode 2573ea1d6981Smrg 0 Off 2574ea1d6981Smrg 1 On 2575ea1d6981Smrg 2 Default 2576ea1d6981Smrg 2577ea1d6981Smrg<link linkend="requests:GetKeyboardControl"><emphasis role='bold'>GetKeyboardControl</emphasis></link> 2578ea1d6981Smrg 1 103 opcode 2579ea1d6981Smrg 1 unused 2580ea1d6981Smrg 2 1 request length 2581ea1d6981Smrg 2582ea1d6981Smrg▶ 2583ea1d6981Smrg 1 1 Reply 2584ea1d6981Smrg 1 global-auto-repeat 2585ea1d6981Smrg 0 Off 2586ea1d6981Smrg 1 On 2587ea1d6981Smrg 2 CARD16 sequence number 2588ea1d6981Smrg 4 5 reply length 2589ea1d6981Smrg 4 CARD32 led-mask 2590ea1d6981Smrg 1 CARD8 key-click-percent 2591ea1d6981Smrg 1 CARD8 bell-percent 2592ea1d6981Smrg 2 CARD16 bell-pitch 2593ea1d6981Smrg 2 CARD16 bell-duration 2594ea1d6981Smrg 2 unused 2595ea1d6981Smrg 32 LISTofCARD8 auto-repeats 2596ea1d6981Smrg 2597ea1d6981Smrg<link linkend="requests:Bell"><emphasis role='bold'>Bell</emphasis></link> 2598ea1d6981Smrg 1 104 opcode 2599ea1d6981Smrg 1 INT8 percent 2600ea1d6981Smrg 2 1 request length 2601ea1d6981Smrg 2602ea1d6981Smrg<link linkend="requests:ChangePointerControl"><emphasis role='bold'>ChangePointerControl</emphasis></link> 2603ea1d6981Smrg 1 105 opcode 2604ea1d6981Smrg 1 unused 2605ea1d6981Smrg 2 3 request length 2606ea1d6981Smrg 2 INT16 acceleration-numerator 2607ea1d6981Smrg 2 INT16 acceleration-denominator 2608ea1d6981Smrg 2 INT16 threshold 2609ea1d6981Smrg 1 BOOL do-acceleration 2610ea1d6981Smrg 1 BOOL do-threshold 2611ea1d6981Smrg 2612ea1d6981Smrg<link linkend="requests:GetPointerControl"><emphasis role='bold'>GetPointerControl</emphasis></link> 2613ea1d6981Smrg 1 106 opcode 2614ea1d6981Smrg 1 unused 2615ea1d6981Smrg 2 1 request length 2616ea1d6981Smrg 2617ea1d6981Smrg▶ 2618ea1d6981Smrg 1 1 Reply 2619ea1d6981Smrg 1 unused 2620ea1d6981Smrg 2 CARD16 sequence number 2621ea1d6981Smrg 4 0 reply length 2622ea1d6981Smrg 2 CARD16 acceleration-numerator 2623ea1d6981Smrg 2 CARD16 acceleration-denominator 2624ea1d6981Smrg 2 CARD16 threshold 2625ea1d6981Smrg 18 unused 2626ea1d6981Smrg 2627ea1d6981Smrg<link linkend="requests:SetScreenSaver"><emphasis role='bold'>SetScreenSaver</emphasis></link> 2628ea1d6981Smrg 1 107 opcode 2629ea1d6981Smrg 1 unused 2630ea1d6981Smrg 2 3 request length 2631ea1d6981Smrg 2 INT16 timeout 2632ea1d6981Smrg 2 INT16 interval 2633ea1d6981Smrg 1 prefer-blanking 2634ea1d6981Smrg 0 No 2635ea1d6981Smrg 1 Yes 2636ea1d6981Smrg 2 Default 2637ea1d6981Smrg 1 allow-exposures 2638ea1d6981Smrg 0 No 2639ea1d6981Smrg 1 Yes 2640ea1d6981Smrg 2 Default 2641ea1d6981Smrg 2 unused 2642ea1d6981Smrg 2643ea1d6981Smrg<link linkend="requests:GetScreenSaver"><emphasis role='bold'>GetScreenSaver</emphasis></link> 2644ea1d6981Smrg 1 108 opcode 2645ea1d6981Smrg 1 unused 2646ea1d6981Smrg 2 1 request length 2647ea1d6981Smrg 2648ea1d6981Smrg▶ 2649ea1d6981Smrg 1 1 Reply 2650ea1d6981Smrg 1 unused 2651ea1d6981Smrg 2 CARD16 sequence number 2652ea1d6981Smrg 4 0 reply length 2653ea1d6981Smrg 2 CARD16 timeout 2654ea1d6981Smrg 2 CARD16 interval 2655ea1d6981Smrg 1 prefer-blanking 2656ea1d6981Smrg 0 No 2657ea1d6981Smrg 1 Yes 2658ea1d6981Smrg 1 allow-exposures 2659ea1d6981Smrg 0 No 2660ea1d6981Smrg 1 Yes 2661ea1d6981Smrg 18 unused 2662ea1d6981Smrg 2663ea1d6981Smrg<link linkend="requests:ChangeHosts"><emphasis role='bold'>ChangeHosts</emphasis></link> 2664ea1d6981Smrg 1 109 opcode 2665ea1d6981Smrg 1 mode 2666ea1d6981Smrg 0 Insert 2667ea1d6981Smrg 1 Delete 2668ea1d6981Smrg 2 2+(n+p)/4 request length 2669ea1d6981Smrg 1 family 2670ea1d6981Smrg 0 Internet 2671ea1d6981Smrg 1 DECnet 2672ea1d6981Smrg 2 Chaos 2673ea1d6981Smrg 1 unused 2674ea1d6981Smrg 2 n length of address 2675ea1d6981Smrg n LISTofCARD8 address 2676ea1d6981Smrg p unused, p=pad(n) 2677ea1d6981Smrg 2678ea1d6981Smrg<link linkend="requests:ListHosts"><emphasis role='bold'>ListHosts</emphasis></link> 2679ea1d6981Smrg 1 110 opcode 2680ea1d6981Smrg 1 unused 2681ea1d6981Smrg 2 1 request length 2682ea1d6981Smrg 2683ea1d6981Smrg▶ 2684ea1d6981Smrg 1 1 Reply 2685ea1d6981Smrg 1 mode 2686ea1d6981Smrg 0 Disabled 2687ea1d6981Smrg 1 Enabled 2688ea1d6981Smrg 2 CARD16 sequence number 2689ea1d6981Smrg 4 n/4 reply length 2690ea1d6981Smrg 2 CARD16 number of HOSTs in hosts 2691ea1d6981Smrg 22 unused 2692ea1d6981Smrg n LISTofHOST hosts (n always a multiple of 4) 2693ea1d6981Smrg 2694ea1d6981Smrg<link linkend="requests:SetAccessControl"><emphasis role='bold'>SetAccessControl</emphasis></link> 2695ea1d6981Smrg 1 111 opcode 2696ea1d6981Smrg 1 mode 2697ea1d6981Smrg 0 Disable 2698ea1d6981Smrg 1 Enable 2699ea1d6981Smrg 2 1 request length 2700ea1d6981Smrg 2701ea1d6981Smrg<link linkend="requests:SetCloseDownMode"><emphasis role='bold'>SetCloseDownMode</emphasis></link> 2702ea1d6981Smrg 1 112 opcode 2703ea1d6981Smrg 1 mode 2704ea1d6981Smrg 0 Destroy 2705ea1d6981Smrg 1 RetainPermanent 2706ea1d6981Smrg 2 RetainTemporary 2707ea1d6981Smrg 2 1 request length 2708ea1d6981Smrg 2709ea1d6981Smrg<link linkend="requests:KillClient"><emphasis role='bold'>KillClient</emphasis></link> 2710ea1d6981Smrg 1 113 opcode 2711ea1d6981Smrg 1 unused 2712ea1d6981Smrg 2 2 request length 2713ea1d6981Smrg 4 CARD32 resource 2714ea1d6981Smrg 0 AllTemporary 2715ea1d6981Smrg 2716ea1d6981Smrg<link linkend="requests:RotateProperties"><emphasis role='bold'>RotateProperties</emphasis></link> 2717ea1d6981Smrg 1 114 opcode 2718ea1d6981Smrg 1 unused 2719ea1d6981Smrg 2 3+n request length 2720ea1d6981Smrg 4 WINDOW window 2721ea1d6981Smrg 2 n number of properties 2722ea1d6981Smrg 2 INT16 delta 2723ea1d6981Smrg 4n LISTofATOM properties 2724ea1d6981Smrg 2725ea1d6981Smrg<link linkend="requests:ForceScreenSaver"><emphasis role='bold'>ForceScreenSaver</emphasis></link> 2726ea1d6981Smrg 1 115 opcode 2727ea1d6981Smrg 1 mode 2728ea1d6981Smrg 0 Reset 2729ea1d6981Smrg 1 Activate 2730ea1d6981Smrg 2 1 request length 2731ea1d6981Smrg 2732ea1d6981Smrg<link linkend="requests:SetPointerMapping"><emphasis role='bold'>SetPointerMapping</emphasis></link> 2733ea1d6981Smrg 1 116 opcode 2734ea1d6981Smrg 1 n length of map 2735ea1d6981Smrg 2 1+(n+p)/4 request length 2736ea1d6981Smrg n LISTofCARD8 map 2737ea1d6981Smrg p unused, p=pad(n) 2738ea1d6981Smrg 2739ea1d6981Smrg▶ 2740ea1d6981Smrg 1 1 Reply 2741ea1d6981Smrg 1 status 2742ea1d6981Smrg 0 Success 2743ea1d6981Smrg 1 Busy 2744ea1d6981Smrg 2 CARD16 sequence number 2745ea1d6981Smrg 4 0 reply length 2746ea1d6981Smrg 24 unused 2747ea1d6981Smrg 2748ea1d6981Smrg<link linkend="requests:GetPointerMapping"><emphasis role='bold'>GetPointerMapping</emphasis></link> 2749ea1d6981Smrg 1 117 opcode 2750ea1d6981Smrg 1 unused 2751ea1d6981Smrg 2 1 request length 2752ea1d6981Smrg 2753ea1d6981Smrg▶ 2754ea1d6981Smrg 1 1 Reply 2755ea1d6981Smrg 1 n length of map 2756ea1d6981Smrg 2 CARD16 sequence number 2757ea1d6981Smrg 4 (n+p)/4 reply length 2758ea1d6981Smrg 24 unused 2759ea1d6981Smrg n LISTofCARD8 map 2760ea1d6981Smrg p unused, p=pad(n) 2761ea1d6981Smrg 2762ea1d6981Smrg<link linkend="requests:SetModifierMapping"><emphasis role='bold'>SetModifierMapping</emphasis></link> 2763ea1d6981Smrg 1 118 opcode 2764ea1d6981Smrg 1 n keycodes-per-modifier 2765ea1d6981Smrg 2 1+2n request length 2766ea1d6981Smrg 8n LISTofKEYCODE keycodes 2767ea1d6981Smrg 2768ea1d6981Smrg▶ 2769ea1d6981Smrg 1 1 Reply 2770ea1d6981Smrg 1 status 2771ea1d6981Smrg 0 Success 2772ea1d6981Smrg 1 Busy 2773ea1d6981Smrg 2 Failed 2774ea1d6981Smrg 2 CARD16 sequence number 2775ea1d6981Smrg 4 0 reply length 2776ea1d6981Smrg 24 unused 2777ea1d6981Smrg 2778ea1d6981Smrg<link linkend="requests:GetModifierMapping"><emphasis role='bold'>GetModifierMapping</emphasis></link> 2779ea1d6981Smrg 1 119 opcode 2780ea1d6981Smrg 1 unused 2781ea1d6981Smrg 2 1 request length 2782ea1d6981Smrg 2783ea1d6981Smrg▶ 2784ea1d6981Smrg 1 1 Reply 2785ea1d6981Smrg 1 n keycodes-per-modifier 2786ea1d6981Smrg 2 CARD16 sequence number 2787ea1d6981Smrg 4 2n reply length 2788ea1d6981Smrg 24 unused 2789ea1d6981Smrg 8n LISTofKEYCODE keycodes 2790ea1d6981Smrg 2791ea1d6981Smrg<link linkend="requests:NoOperation"><emphasis role='bold'>NoOperation</emphasis></link> 2792ea1d6981Smrg 1 127 opcode 2793ea1d6981Smrg 1 unused 2794ea1d6981Smrg 2 1+n request length 2795ea1d6981Smrg 4n unused 2796ea1d6981Smrg</literallayout> 2797ea1d6981Smrg</sect1> 2798ea1d6981Smrg 2799ea1d6981Smrg<sect1 id='Encoding::Events'> 2800ea1d6981Smrg<title>Events</title> 2801ea1d6981Smrg<indexterm zone="Encoding::Events"><primary>Event</primary><secondary>encoding</secondary></indexterm> 2802ea1d6981Smrg 2803ea1d6981Smrg<literallayout class="monospaced"> 2804ea1d6981Smrg<link linkend="events:KeyPress"><emphasis role='bold'>KeyPress</emphasis></link> 2805ea1d6981Smrg 1 2 code 2806ea1d6981Smrg 1 KEYCODE detail 2807ea1d6981Smrg 2 CARD16 sequence number 2808ea1d6981Smrg 4 TIMESTAMP time 2809ea1d6981Smrg 4 WINDOW root 2810ea1d6981Smrg 4 WINDOW event 2811ea1d6981Smrg 4 WINDOW child 2812ea1d6981Smrg 0 None 2813ea1d6981Smrg 2 INT16 root-x 2814ea1d6981Smrg 2 INT16 root-y 2815ea1d6981Smrg 2 INT16 event-x 2816ea1d6981Smrg 2 INT16 event-y 2817ea1d6981Smrg 2 SETofKEYBUTMASK state 2818ea1d6981Smrg 1 BOOL same-screen 2819ea1d6981Smrg 1 unused 2820ea1d6981Smrg 2821ea1d6981Smrg<link linkend="events:KeyRelease"><emphasis role='bold'>KeyRelease</emphasis></link> 2822ea1d6981Smrg 1 3 code 2823ea1d6981Smrg 1 KEYCODE detail 2824ea1d6981Smrg 2 CARD16 sequence number 2825ea1d6981Smrg 4 TIMESTAMP time 2826ea1d6981Smrg 4 WINDOW root 2827ea1d6981Smrg 4 WINDOW event 2828ea1d6981Smrg 4 WINDOW child 2829ea1d6981Smrg 0 None 2830ea1d6981Smrg 2 INT16 root-x 2831ea1d6981Smrg 2 INT16 root-y 2832ea1d6981Smrg 2 INT16 event-x 2833ea1d6981Smrg 2 INT16 event-y 2834ea1d6981Smrg 2 SETofKEYBUTMASK state 2835ea1d6981Smrg 1 BOOL same-screen 2836ea1d6981Smrg 1 unused 2837ea1d6981Smrg 2838ea1d6981Smrg<link linkend="events:ButtonPress"><emphasis role='bold'>ButtonPress</emphasis></link> 2839ea1d6981Smrg 1 4 code 2840ea1d6981Smrg 1 BUTTON detail 2841ea1d6981Smrg 2 CARD16 sequence number 2842ea1d6981Smrg 4 TIMESTAMP time 2843ea1d6981Smrg 4 WINDOW root 2844ea1d6981Smrg 4 WINDOW event 2845ea1d6981Smrg 4 WINDOW child 2846ea1d6981Smrg 0 None 2847ea1d6981Smrg 2 INT16 root-x 2848ea1d6981Smrg 2 INT16 root-y 2849ea1d6981Smrg 2 INT16 event-x 2850ea1d6981Smrg 2 INT16 event-y 2851ea1d6981Smrg 2 SETofKEYBUTMASK state 2852ea1d6981Smrg 1 BOOL same-screen 2853ea1d6981Smrg 1 unused 2854ea1d6981Smrg 2855ea1d6981Smrg<link linkend="events:ButtonRelease"><emphasis role='bold'>ButtonRelease</emphasis></link> 2856ea1d6981Smrg 1 5 code 2857ea1d6981Smrg 1 BUTTON detail 2858ea1d6981Smrg 2 CARD16 sequence number 2859ea1d6981Smrg 4 TIMESTAMP time 2860ea1d6981Smrg 4 WINDOW root 2861ea1d6981Smrg 4 WINDOW event 2862ea1d6981Smrg 4 WINDOW child 2863ea1d6981Smrg 0 None 2864ea1d6981Smrg 2 INT16 root-x 2865ea1d6981Smrg 2 INT16 root-y 2866ea1d6981Smrg 2 INT16 event-x 2867ea1d6981Smrg 2 INT16 event-y 2868ea1d6981Smrg 2 SETofKEYBUTMASK state 2869ea1d6981Smrg 1 BOOL same-screen 2870ea1d6981Smrg 1 unused 2871ea1d6981Smrg 2872ea1d6981Smrg<link linkend="events:MotionNotify"><emphasis role='bold'>MotionNotify</emphasis></link> 2873ea1d6981Smrg 1 6 code 2874ea1d6981Smrg 1 detail 2875ea1d6981Smrg 0 Normal 2876ea1d6981Smrg 1 Hint 2877ea1d6981Smrg 2 CARD16 sequence number 2878ea1d6981Smrg 4 TIMESTAMP time 2879ea1d6981Smrg 4 WINDOW root 2880ea1d6981Smrg 4 WINDOW event 2881ea1d6981Smrg 4 WINDOW child 2882ea1d6981Smrg 0 None 2883ea1d6981Smrg 2 INT16 root-x 2884ea1d6981Smrg 2 INT16 root-y 2885ea1d6981Smrg 2 INT16 event-x 2886ea1d6981Smrg 2 INT16 event-y 2887ea1d6981Smrg 2 SETofKEYBUTMASK state 2888ea1d6981Smrg 1 BOOL same-screen 2889ea1d6981Smrg 1 unused 2890ea1d6981Smrg 2891ea1d6981Smrg<link linkend="events:EnterNotify"><emphasis role='bold'>EnterNotify</emphasis></link> 2892ea1d6981Smrg 1 7 code 2893ea1d6981Smrg 1 detail 2894ea1d6981Smrg 0 Ancestor 2895ea1d6981Smrg 1 Virtual 2896ea1d6981Smrg 2 Inferior 2897ea1d6981Smrg 3 Nonlinear 2898ea1d6981Smrg 4 NonlinearVirtual 2899ea1d6981Smrg 2 CARD16 sequence number 2900ea1d6981Smrg 4 TIMESTAMP time 2901ea1d6981Smrg 4 WINDOW root 2902ea1d6981Smrg 4 WINDOW event 2903ea1d6981Smrg 4 WINDOW child 2904ea1d6981Smrg 0 None 2905ea1d6981Smrg 2 INT16 root-x 2906ea1d6981Smrg 2 INT16 root-y 2907ea1d6981Smrg 2 INT16 event-x 2908ea1d6981Smrg 2 INT16 event-y 2909ea1d6981Smrg 2 SETofKEYBUTMASK state 2910ea1d6981Smrg 1 mode 2911ea1d6981Smrg 0 Normal 2912ea1d6981Smrg 1 Grab 2913ea1d6981Smrg 2 Ungrab 2914ea1d6981Smrg 1 same-screen, focus 2915ea1d6981Smrg #x01 focus (1 is True, 0 is False) 2916ea1d6981Smrg #x02 same-screen (1 is True, 0 is False) 2917ea1d6981Smrg #xFC unused 2918ea1d6981Smrg 2919ea1d6981Smrg<link linkend="events:LeaveNotify"><emphasis role='bold'>LeaveNotify</emphasis></link> 2920ea1d6981Smrg 1 8 code 2921ea1d6981Smrg 1 detail 2922ea1d6981Smrg 0 Ancestor 2923ea1d6981Smrg 1 Virtual 2924ea1d6981Smrg 2 Inferior 2925ea1d6981Smrg 3 Nonlinear 2926ea1d6981Smrg 4 NonlinearVirtual 2927ea1d6981Smrg 2 CARD16 sequence number 2928ea1d6981Smrg 4 TIMESTAMP time 2929ea1d6981Smrg 4 WINDOW root 2930ea1d6981Smrg 4 WINDOW event 2931ea1d6981Smrg 4 WINDOW child 2932ea1d6981Smrg 0 None 2933ea1d6981Smrg 2 INT16 root-x 2934ea1d6981Smrg 2 INT16 root-y 2935ea1d6981Smrg 2 INT16 event-x 2936ea1d6981Smrg 2 INT16 event-y 2937ea1d6981Smrg 2 SETofKEYBUTMASK state 2938ea1d6981Smrg 1 mode 2939ea1d6981Smrg 0 Normal 2940ea1d6981Smrg 1 Grab 2941ea1d6981Smrg 2 Ungrab 2942ea1d6981Smrg 1 same-screen, focus 2943ea1d6981Smrg #x01 focus (1 is True, 0 is False) 2944ea1d6981Smrg #x02 same-screen (1 is True, 0 is False) 2945ea1d6981Smrg #xFC unused 2946ea1d6981Smrg 2947ea1d6981Smrg<link linkend="events:FocusIn"><emphasis role='bold'>FocusIn</emphasis></link> 2948ea1d6981Smrg 1 9 code 2949ea1d6981Smrg 1 detail 2950ea1d6981Smrg 0 Ancestor 2951ea1d6981Smrg 1 Virtual 2952ea1d6981Smrg 2 Inferior 2953ea1d6981Smrg 3 Nonlinear 2954ea1d6981Smrg 4 NonlinearVirtual 2955ea1d6981Smrg 5 Pointer 2956ea1d6981Smrg 6 PointerRoot 2957ea1d6981Smrg 7 None 2958ea1d6981Smrg 2 CARD16 sequence number 2959ea1d6981Smrg 4 WINDOW event 2960ea1d6981Smrg 1 mode 2961ea1d6981Smrg 0 Normal 2962ea1d6981Smrg 1 Grab 2963ea1d6981Smrg 2 Ungrab 2964ea1d6981Smrg 3 WhileGrabbed 2965ea1d6981Smrg 23 unused 2966ea1d6981Smrg 2967ea1d6981Smrg<link linkend="events:FocusOut"><emphasis role='bold'>FocusOut</emphasis></link> 2968ea1d6981Smrg 1 10 code 2969ea1d6981Smrg 1 detail 2970ea1d6981Smrg 0 Ancestor 2971ea1d6981Smrg 1 Virtual 2972ea1d6981Smrg 2 Inferior 2973ea1d6981Smrg 3 Nonlinear 2974ea1d6981Smrg 4 NonlinearVirtual 2975ea1d6981Smrg 5 Pointer 2976ea1d6981Smrg 6 PointerRoot 2977ea1d6981Smrg 7 None 2978ea1d6981Smrg 2 CARD16 sequence number 2979ea1d6981Smrg 4 WINDOW event 2980ea1d6981Smrg 1 mode 2981ea1d6981Smrg 0 Normal 2982ea1d6981Smrg 1 Grab 2983ea1d6981Smrg 2 Ungrab 2984ea1d6981Smrg 3 WhileGrabbed 2985ea1d6981Smrg 23 unused 2986ea1d6981Smrg 2987ea1d6981Smrg<link linkend="events:KeymapNotify"><emphasis role='bold'>KeymapNotify</emphasis></link> 2988ea1d6981Smrg 1 11 code 2989ea1d6981Smrg 31 LISTofCARD8 keys (byte for keycodes 0-7 is 2990ea1d6981Smrg omitted) 2991ea1d6981Smrg 2992ea1d6981Smrg<link linkend="events:Expose"><emphasis role='bold'>Expose</emphasis></link> 2993ea1d6981Smrg 1 12 code 2994ea1d6981Smrg 1 unused 2995ea1d6981Smrg 2 CARD16 sequence number 2996ea1d6981Smrg 4 WINDOW window 2997ea1d6981Smrg 2 CARD16 x 2998ea1d6981Smrg 2 CARD16 y 2999ea1d6981Smrg 2 CARD16 width 3000ea1d6981Smrg 2 CARD16 height 3001ea1d6981Smrg 2 CARD16 count 3002ea1d6981Smrg 14 unused 3003ea1d6981Smrg 3004ea1d6981Smrg<link linkend="events:GraphicsExposure"><emphasis role='bold'>GraphicsExposure</emphasis></link> 3005ea1d6981Smrg 1 13 code 3006ea1d6981Smrg 1 unused 3007ea1d6981Smrg 2 CARD16 sequence number 3008ea1d6981Smrg 4 DRAWABLE drawable 3009ea1d6981Smrg 2 CARD16 x 3010ea1d6981Smrg 2 CARD16 y 3011ea1d6981Smrg 2 CARD16 width 3012ea1d6981Smrg 2 CARD16 height 3013ea1d6981Smrg 2 CARD16 minor-opcode 3014ea1d6981Smrg 2 CARD16 count 3015ea1d6981Smrg 1 CARD8 major-opcode 3016ea1d6981Smrg 11 unused 3017ea1d6981Smrg 3018ea1d6981Smrg<link linkend="events:NoExposure"><emphasis role='bold'>NoExposure</emphasis></link> 3019ea1d6981Smrg 1 14 code 3020ea1d6981Smrg 1 unused 3021ea1d6981Smrg 2 CARD16 sequence number 3022ea1d6981Smrg 4 DRAWABLE drawable 3023ea1d6981Smrg 2 CARD16 minor-opcode 3024ea1d6981Smrg 1 CARD8 major-opcode 3025ea1d6981Smrg 21 unused 3026ea1d6981Smrg 3027ea1d6981Smrg<link linkend="events:VisibilityNotify"><emphasis role='bold'>VisibilityNotify</emphasis></link> 3028ea1d6981Smrg 1 15 code 3029ea1d6981Smrg 1 unused 3030ea1d6981Smrg 2 CARD16 sequence number 3031ea1d6981Smrg 4 WINDOW window 3032ea1d6981Smrg 1 state 3033ea1d6981Smrg 0 Unobscured 3034ea1d6981Smrg 1 PartiallyObscured 3035ea1d6981Smrg 2 FullyObscured 3036ea1d6981Smrg 23 unused 3037ea1d6981Smrg 3038ea1d6981Smrg<link linkend="events:CreateNotify"><emphasis role='bold'>CreateNotify</emphasis></link> 3039ea1d6981Smrg 1 16 code 3040ea1d6981Smrg 1 unused 3041ea1d6981Smrg 2 CARD16 sequence number 3042ea1d6981Smrg 4 WINDOW parent 3043ea1d6981Smrg 4 WINDOW window 3044ea1d6981Smrg 2 INT16 x 3045ea1d6981Smrg 2 INT16 y 3046ea1d6981Smrg 2 CARD16 width 3047ea1d6981Smrg 2 CARD16 height 3048ea1d6981Smrg 2 CARD16 border-width 3049ea1d6981Smrg 1 BOOL override-redirect 3050ea1d6981Smrg 9 unused 3051ea1d6981Smrg 3052ea1d6981Smrg<link linkend="events:DestroyNotify"><emphasis role='bold'>DestroyNotify</emphasis></link> 3053ea1d6981Smrg 1 17 code 3054ea1d6981Smrg 1 unused 3055ea1d6981Smrg 2 CARD16 sequence number 3056ea1d6981Smrg 4 WINDOW event 3057ea1d6981Smrg 4 WINDOW window 3058ea1d6981Smrg 20 unused 3059ea1d6981Smrg 3060ea1d6981Smrg<link linkend="events:UnmapNotify"><emphasis role='bold'>UnmapNotify</emphasis></link> 3061ea1d6981Smrg 1 18 code 3062ea1d6981Smrg 1 unused 3063ea1d6981Smrg 2 CARD16 sequence number 3064ea1d6981Smrg 4 WINDOW event 3065ea1d6981Smrg 4 WINDOW window 3066ea1d6981Smrg 1 BOOL from-configure 3067ea1d6981Smrg 19 unused 3068ea1d6981Smrg 3069ea1d6981Smrg<link linkend="events:MapNotify"><emphasis role='bold'>MapNotify</emphasis></link> 3070ea1d6981Smrg 1 19 code 3071ea1d6981Smrg 1 unused 3072ea1d6981Smrg 2 CARD16 sequence number 3073ea1d6981Smrg 4 WINDOW event 3074ea1d6981Smrg 4 WINDOW window 3075ea1d6981Smrg 1 BOOL override-redirect 3076ea1d6981Smrg 19 unused 3077ea1d6981Smrg 3078ea1d6981Smrg<link linkend="events:MapRequest"><emphasis role='bold'>MapRequest</emphasis></link> 3079ea1d6981Smrg 1 20 code 3080ea1d6981Smrg 1 unused 3081ea1d6981Smrg 2 CARD16 sequence number 3082ea1d6981Smrg 4 WINDOW parent 3083ea1d6981Smrg 4 WINDOW window 3084ea1d6981Smrg 20 unused 3085ea1d6981Smrg 3086ea1d6981Smrg<link linkend="events:ReparentNotify"><emphasis role='bold'>ReparentNotify</emphasis></link> 3087ea1d6981Smrg 1 21 code 3088ea1d6981Smrg 1 unused 3089ea1d6981Smrg 2 CARD16 sequence number 3090ea1d6981Smrg 4 WINDOW event 3091ea1d6981Smrg 4 WINDOW window 3092ea1d6981Smrg 4 WINDOW parent 3093ea1d6981Smrg 2 INT16 x 3094ea1d6981Smrg 2 INT16 y 3095ea1d6981Smrg 1 BOOL override-redirect 3096ea1d6981Smrg 11 unused 3097ea1d6981Smrg 3098ea1d6981Smrg<link linkend="events:ConfigureNotify"><emphasis role='bold'>ConfigureNotify</emphasis></link> 3099ea1d6981Smrg 1 22 code 3100ea1d6981Smrg 1 unused 3101ea1d6981Smrg 2 CARD16 sequence number 3102ea1d6981Smrg 4 WINDOW event 3103ea1d6981Smrg 4 WINDOW window 3104ea1d6981Smrg 4 WINDOW above-sibling 3105ea1d6981Smrg 0 None 3106ea1d6981Smrg 2 INT16 x 3107ea1d6981Smrg 2 INT16 y 3108ea1d6981Smrg 2 CARD16 width 3109ea1d6981Smrg 2 CARD16 height 3110ea1d6981Smrg 2 CARD16 border-width 3111ea1d6981Smrg 1 BOOL override-redirect 3112ea1d6981Smrg 5 unused 3113ea1d6981Smrg 3114ea1d6981Smrg<link linkend="events:ConfigureRequest"><emphasis role='bold'>ConfigureRequest</emphasis></link> 3115ea1d6981Smrg 1 23 code 3116ea1d6981Smrg 1 stack-mode 3117ea1d6981Smrg 0 Above 3118ea1d6981Smrg 1 Below 3119ea1d6981Smrg 2 TopIf 3120ea1d6981Smrg 3 BottomIf 3121ea1d6981Smrg 4 Opposite 3122ea1d6981Smrg 2 CARD16 sequence number 3123ea1d6981Smrg 4 WINDOW parent 3124ea1d6981Smrg 4 WINDOW window 3125ea1d6981Smrg 4 WINDOW sibling 3126ea1d6981Smrg 0 None 3127ea1d6981Smrg 2 INT16 x 3128ea1d6981Smrg 2 INT16 y 3129ea1d6981Smrg 2 CARD16 width 3130ea1d6981Smrg 2 CARD16 height 3131ea1d6981Smrg 2 CARD16 border-width 3132ea1d6981Smrg 2 BITMASK value-mask 3133ea1d6981Smrg #x0001 x 3134ea1d6981Smrg #x0002 y 3135ea1d6981Smrg #x0004 width 3136ea1d6981Smrg #x0008 height 3137ea1d6981Smrg #x0010 border-width 3138ea1d6981Smrg #x0020 sibling 3139ea1d6981Smrg #x0040 stack-mode 3140ea1d6981Smrg 4 unused 3141ea1d6981Smrg 3142ea1d6981Smrg<link linkend="events:GravityNotify"><emphasis role='bold'>GravityNotify</emphasis></link> 3143ea1d6981Smrg 1 24 code 3144ea1d6981Smrg 1 unused 3145ea1d6981Smrg 2 CARD16 sequence number 3146ea1d6981Smrg 4 WINDOW event 3147ea1d6981Smrg 4 WINDOW window 3148ea1d6981Smrg 2 INT16 x 3149ea1d6981Smrg 2 INT16 y 3150ea1d6981Smrg 16 unused 3151ea1d6981Smrg 3152ea1d6981Smrg<link linkend="events:ResizeRequest"><emphasis role='bold'>ResizeRequest</emphasis></link> 3153ea1d6981Smrg 1 25 code 3154ea1d6981Smrg 1 unused 3155ea1d6981Smrg 2 CARD16 sequence number 3156ea1d6981Smrg 4 WINDOW window 3157ea1d6981Smrg 2 CARD16 width 3158ea1d6981Smrg 2 CARD16 height 3159ea1d6981Smrg 20 unused 3160ea1d6981Smrg 3161ea1d6981Smrg<link linkend="events:CirculateNotify"><emphasis role='bold'>CirculateNotify</emphasis></link> 3162ea1d6981Smrg 1 26 code 3163ea1d6981Smrg 1 unused 3164ea1d6981Smrg 2 CARD16 sequence number 3165ea1d6981Smrg 4 WINDOW event 3166ea1d6981Smrg 4 WINDOW window 3167ea1d6981Smrg 4 WINDOW unused 3168ea1d6981Smrg 1 place 3169ea1d6981Smrg 0 Top 3170ea1d6981Smrg 1 Bottom 3171ea1d6981Smrg 15 unused 3172ea1d6981Smrg 3173ea1d6981Smrg<link linkend="events:CirculateRequest"><emphasis role='bold'>CirculateRequest</emphasis></link> 3174ea1d6981Smrg 1 27 code 3175ea1d6981Smrg 1 unused 3176ea1d6981Smrg 2 CARD16 sequence number 3177ea1d6981Smrg 4 WINDOW parent 3178ea1d6981Smrg 4 WINDOW window 3179ea1d6981Smrg 4 unused 3180ea1d6981Smrg 1 place 3181ea1d6981Smrg 0 Top 3182ea1d6981Smrg 1 Bottom 3183ea1d6981Smrg 15 unused 3184ea1d6981Smrg 3185ea1d6981Smrg<link linkend="events:PropertyNotify"><emphasis role='bold'>PropertyNotify</emphasis></link> 3186ea1d6981Smrg 1 28 code 3187ea1d6981Smrg 1 unused 3188ea1d6981Smrg 2 CARD16 sequence number 3189ea1d6981Smrg 4 WINDOW window 3190ea1d6981Smrg 4 ATOM atom 3191ea1d6981Smrg 4 TIMESTAMP time 3192ea1d6981Smrg 1 state 3193ea1d6981Smrg 0 NewValue 3194ea1d6981Smrg 1 Deleted 3195ea1d6981Smrg 15 unused 3196ea1d6981Smrg 3197ea1d6981Smrg<link linkend="events:SelectionClear"><emphasis role='bold'>SelectionClear</emphasis></link> 3198ea1d6981Smrg 1 29 code 3199ea1d6981Smrg 1 unused 3200ea1d6981Smrg 2 CARD16 sequence number 3201ea1d6981Smrg 4 TIMESTAMP time 3202ea1d6981Smrg 4 WINDOW owner 3203ea1d6981Smrg 4 ATOM selection 3204ea1d6981Smrg 16 unused 3205ea1d6981Smrg 3206ea1d6981Smrg<link linkend="events:SelectionRequest"><emphasis role='bold'>SelectionRequest</emphasis></link> 3207ea1d6981Smrg 1 30 code 3208ea1d6981Smrg 1 unused 3209ea1d6981Smrg 2 CARD16 sequence number 3210ea1d6981Smrg 4 TIMESTAMP time 3211ea1d6981Smrg 0 CurrentTime 3212ea1d6981Smrg 4 WINDOW owner 3213ea1d6981Smrg 4 WINDOW requestor 3214ea1d6981Smrg 4 ATOM selection 3215ea1d6981Smrg 4 ATOM target 3216ea1d6981Smrg 4 ATOM property 3217ea1d6981Smrg 0 None 3218ea1d6981Smrg 4 unused 3219ea1d6981Smrg 3220ea1d6981Smrg<link linkend="events:SelectionNotify"><emphasis role='bold'>SelectionNotify</emphasis></link> 3221ea1d6981Smrg 1 31 code 3222ea1d6981Smrg 1 unused 3223ea1d6981Smrg 2 CARD16 sequence number 3224ea1d6981Smrg 4 TIMESTAMP time 3225ea1d6981Smrg 0 CurrentTime 3226ea1d6981Smrg 4 WINDOW requestor 3227ea1d6981Smrg 4 ATOM selection 3228ea1d6981Smrg 4 ATOM target 3229ea1d6981Smrg 4 ATOM property 3230ea1d6981Smrg 0 None 3231ea1d6981Smrg 8 unused 3232ea1d6981Smrg 3233ea1d6981Smrg<link linkend="events:ColormapNotify"><emphasis role='bold'>ColormapNotify</emphasis></link> 3234ea1d6981Smrg 1 32 code 3235ea1d6981Smrg 1 unused 3236ea1d6981Smrg 2 CARD16 sequence number 3237ea1d6981Smrg 4 WINDOW window 3238ea1d6981Smrg 4 COLORMAP colormap 3239ea1d6981Smrg 0 None 3240ea1d6981Smrg 1 BOOL new 3241ea1d6981Smrg 1 state 3242ea1d6981Smrg 0 Uninstalled 3243ea1d6981Smrg 1 Installed 3244ea1d6981Smrg 18 unused 3245ea1d6981Smrg 3246ea1d6981Smrg<link linkend="events:ClientMessage"><emphasis role='bold'>ClientMessage</emphasis></link> 3247ea1d6981Smrg 1 33 code 3248ea1d6981Smrg 1 CARD8 format 3249ea1d6981Smrg 2 CARD16 sequence number 3250ea1d6981Smrg 4 WINDOW window 3251ea1d6981Smrg 4 ATOM type 3252ea1d6981Smrg 20 data 3253ea1d6981Smrg 3254ea1d6981Smrg<link linkend="events:MappingNotify"><emphasis role='bold'>MappingNotify</emphasis></link> 3255ea1d6981Smrg 1 34 code 3256ea1d6981Smrg 1 unused 3257ea1d6981Smrg 2 CARD16 sequence number 3258ea1d6981Smrg 1 request 3259ea1d6981Smrg 0 Modifier 3260ea1d6981Smrg 1 Keyboard 3261ea1d6981Smrg 2 Pointer 3262ea1d6981Smrg 1 KEYCODE first-keycode 3263ea1d6981Smrg 1 CARD8 count 3264ea1d6981Smrg 25 unused 3265ea1d6981Smrg</literallayout> 3266ea1d6981Smrg 3267ea1d6981Smrg</sect1> 3268ea1d6981Smrg</appendix> 3269