<struct name="VISUALTYPE">
<field type="VISUALID" name="visual_id" />
- <field type="CARD8" name="class" />
+ <field type="CARD8" name="class" enum="VisualClass" />
<field type="CARD8" name="bits_per_rgb_value" />
<field type="CARD16" name="colormap_entries" />
<field type="CARD32" name="red_mask" />
</list>
</struct>
+ <enum name="EventMask">
+ <item name="NoEvent"> <value>0</value></item>
+ <item name="KeyPress"> <bit>0</bit></item>
+ <item name="KeyRelease"> <bit>1</bit></item>
+ <item name="ButtonPress"> <bit>2</bit></item>
+ <item name="ButtonRelease"> <bit>3</bit></item>
+ <item name="EnterWindow"> <bit>4</bit></item>
+ <item name="LeaveWindow"> <bit>5</bit></item>
+ <item name="PointerMotion"> <bit>6</bit></item>
+ <item name="PointerMotionHint"> <bit>7</bit></item>
+ <item name="Button1Motion"> <bit>8</bit></item>
+ <item name="Button2Motion"> <bit>9</bit></item>
+ <item name="Button3Motion"> <bit>10</bit></item>
+ <item name="Button4Motion"> <bit>11</bit></item>
+ <item name="Button5Motion"> <bit>12</bit></item>
+ <item name="ButtonMotion"> <bit>13</bit></item>
+ <item name="KeymapState"> <bit>14</bit></item>
+ <item name="Exposure"> <bit>15</bit></item>
+ <item name="VisibilityChange"> <bit>16</bit></item>
+ <item name="StructureNotify"> <bit>17</bit></item>
+ <item name="ResizeRedirect"> <bit>18</bit></item>
+ <item name="SubstructureNotify"> <bit>19</bit></item>
+ <item name="SubstructureRedirect"><bit>20</bit></item>
+ <item name="FocusChange"> <bit>21</bit></item>
+ <item name="PropertyChange"> <bit>22</bit></item>
+ <item name="ColorMapChange"> <bit>23</bit></item>
+ <item name="OwnerGrabButton"> <bit>24</bit></item>
+ </enum>
+
+ <enum name="BackingStore">
+ <item name="NotUseful"> <value>0</value></item>
+ <item name="WhenMapped"><value>1</value></item>
+ <item name="Always"> <value>2</value></item>
+ </enum>
+
<struct name="SCREEN">
<field type="WINDOW" name="root" />
<field type="COLORMAP" name="default_colormap" />
<field type="CARD32" name="white_pixel" />
<field type="CARD32" name="black_pixel" />
- <field type="CARD32" name="current_input_masks" />
+ <field type="CARD32" name="current_input_masks" mask="EventMask" />
<field type="CARD16" name="width_in_pixels" />
<field type="CARD16" name="height_in_pixels" />
<field type="CARD16" name="width_in_millimeters" />
<field type="CARD16" name="min_installed_maps" />
<field type="CARD16" name="max_installed_maps" />
<field type="VISUALID" name="root_visual" />
- <field type="BYTE" name="backing_stores" />
+ <field type="BYTE" name="backing_stores" enum="BackingStore" />
<field type="BOOL" name="save_unders" />
<field type="CARD8" name="root_depth" />
<field type="CARD8" name="allowed_depths_len" />
<field type="CARD16" name="protocol_minor_version" />
<field type="CARD16" name="authorization_protocol_name_len" />
<field type="CARD16" name="authorization_protocol_data_len" />
+ <pad bytes="2" />
<list type="char" name="authorization_protocol_name">
<fieldref>authorization_protocol_name_len</fieldref>
</list>
<field type="CARD16" name="maximum_request_length" />
<field type="CARD8" name="roots_len" />
<field type="CARD8" name="pixmap_formats_len" />
- <field type="CARD8" name="image_byte_order" />
- <field type="CARD8" name="bitmap_format_bit_order" />
+ <field type="CARD8" name="image_byte_order" enum="ImageOrder" />
+ <field type="CARD8" name="bitmap_format_bit_order" enum="ImageOrder" />
<field type="CARD8" name="bitmap_format_scanline_unit" />
<field type="CARD8" name="bitmap_format_scanline_pad" />
<field type="KEYCODE" name="min_keycode" />
<item name="3"> <bit>5</bit></item>
<item name="4"> <bit>6</bit></item>
<item name="5"> <bit>7</bit></item>
+ <item name="Any"> <bit>15</bit></item>
+ </enum>
+
+ <enum name="KeyButMask">
+ <item name="Shift"> <bit>0</bit></item>
+ <item name="Lock"> <bit>1</bit></item>
+ <item name="Control"><bit>2</bit></item>
+ <item name="Mod1"> <bit>3</bit></item>
+ <item name="Mod2"> <bit>4</bit></item>
+ <item name="Mod3"> <bit>5</bit></item>
+ <item name="Mod4"> <bit>6</bit></item>
+ <item name="Mod5"> <bit>7</bit></item>
+ <item name="Button1"><bit>8</bit></item>
+ <item name="Button2"><bit>9</bit></item>
+ <item name="Button3"><bit>10</bit></item>
+ <item name="Button4"><bit>11</bit></item>
+ <item name="Button5"><bit>12</bit></item>
+ </enum>
+
+ <enum name="Window">
+ <item name="None"> <value>0</value></item>
</enum>
<event name="KeyPress" number="2">
<field type="TIMESTAMP" name="time" />
<field type="WINDOW" name="root" />
<field type="WINDOW" name="event" />
- <field type="WINDOW" name="child" />
+ <field type="WINDOW" name="child" altenum="Window" />
<field type="INT16" name="root_x" />
<field type="INT16" name="root_y" />
<field type="INT16" name="event_x" />
<field type="INT16" name="event_y" />
- <field type="CARD16" name="state" />
+ <field type="CARD16" name="state" mask="KeyButMask" />
<field type="BOOL" name="same_screen" />
+ <pad bytes="1" />
</event>
<eventcopy name="KeyRelease" number="3" ref="KeyPress" />
<field type="TIMESTAMP" name="time" />
<field type="WINDOW" name="root" />
<field type="WINDOW" name="event" />
- <field type="WINDOW" name="child" />
+ <field type="WINDOW" name="child" altenum="Window" />
<field type="INT16" name="root_x" />
<field type="INT16" name="root_y" />
<field type="INT16" name="event_x" />
<field type="INT16" name="event_y" />
- <field type="CARD16" name="state" />
+ <field type="CARD16" name="state" mask="KeyButMask" />
<field type="BOOL" name="same_screen" />
+ <pad bytes="1" />
</event>
<eventcopy name="ButtonRelease" number="5" ref="ButtonPress" />
</enum>
<event name="MotionNotify" number="6">
- <field type="BYTE" name="detail" />
+ <field type="BYTE" name="detail" enum="Motion" />
<field type="TIMESTAMP" name="time" />
<field type="WINDOW" name="root" />
<field type="WINDOW" name="event" />
- <field type="WINDOW" name="child" />
+ <field type="WINDOW" name="child" altenum="Window" />
<field type="INT16" name="root_x" />
<field type="INT16" name="root_y" />
<field type="INT16" name="event_x" />
<field type="INT16" name="event_y" />
- <field type="CARD16" name="state" />
+ <field type="CARD16" name="state" mask="KeyButMask" />
<field type="BOOL" name="same_screen" />
+ <pad bytes="1" />
</event>
<enum name="NotifyDetail">
</enum>
<event name="EnterNotify" number="7">
- <field type="BYTE" name="detail" />
+ <field type="BYTE" name="detail" enum="NotifyDetail" />
<field type="TIMESTAMP" name="time" />
<field type="WINDOW" name="root" />
<field type="WINDOW" name="event" />
- <field type="WINDOW" name="child" />
+ <field type="WINDOW" name="child" altenum="Window" />
<field type="INT16" name="root_x" />
<field type="INT16" name="root_y" />
<field type="INT16" name="event_x" />
<field type="INT16" name="event_y" />
- <field type="CARD16" name="state" />
- <field type="BYTE" name="mode" />
+ <field type="CARD16" name="state" mask="KeyButMask" />
+ <field type="BYTE" name="mode" enum="NotifyMode" />
<field type="BYTE" name="same_screen_focus" />
</event>
<eventcopy name="LeaveNotify" number="8" ref="EnterNotify" />
<event name="FocusIn" number="9">
- <field type="BYTE" name="detail" />
+ <field type="BYTE" name="detail" enum="NotifyDetail" />
<field type="WINDOW" name="event" />
- <field type="BYTE" name="mode" />
+ <field type="BYTE" name="mode" enum="NotifyMode" />
+ <pad bytes="3" />
</event>
<eventcopy name="FocusOut" number="10" ref="FocusIn" />
<field type="CARD16" name="width" />
<field type="CARD16" name="height" />
<field type="CARD16" name="count" />
+ <pad bytes="2" />
</event>
<event name="GraphicsExposure" number="13">
<field type="CARD16" name="minor_opcode" />
<field type="CARD16" name="count" />
<field type="CARD8" name="major_opcode" />
+ <pad bytes="3" />
</event>
<event name="NoExposure" number="14">
<field type="DRAWABLE" name="drawable" />
<field type="CARD16" name="minor_opcode" />
<field type="CARD8" name="major_opcode" />
+ <pad bytes="1" />
</event>
<enum name="Visibility">
<event name="VisibilityNotify" number="15">
<pad bytes="1" />
<field type="WINDOW" name="window" />
- <field type="BYTE" name="state" />
+ <field type="BYTE" name="state" enum="Visibility" />
+ <pad bytes="3" />
</event>
<event name="CreateNotify" number="16">
<field type="CARD16" name="height" />
<field type="CARD16" name="border_width" />
<field type="BOOL" name="override_redirect" />
+ <pad bytes="1" />
</event>
<event name="DestroyNotify" number="17">
<field type="WINDOW" name="event" />
<field type="WINDOW" name="window" />
<field type="BOOL" name="from_configure" />
+ <pad bytes="3" />
</event>
<event name="MapNotify" number="19">
<field type="WINDOW" name="event" />
<field type="WINDOW" name="window" />
<field type="BOOL" name="override_redirect" />
+ <pad bytes="3" />
</event>
<event name="MapRequest" number="20">
<field type="INT16" name="x" />
<field type="INT16" name="y" />
<field type="BOOL" name="override_redirect" />
+ <pad bytes="3" />
</event>
<event name="ConfigureNotify" number="22">
<pad bytes="1" />
<field type="WINDOW" name="event" />
<field type="WINDOW" name="window" />
- <field type="WINDOW" name="above_sibling" />
+ <field type="WINDOW" name="above_sibling" altenum="Window" />
<field type="INT16" name="x" />
<field type="INT16" name="y" />
<field type="CARD16" name="width" />
<field type="CARD16" name="height" />
<field type="CARD16" name="border_width" />
<field type="BOOL" name="override_redirect" />
+ <pad bytes="1" />
</event>
<event name="ConfigureRequest" number="23">
- <field type="BYTE" name="stack_mode" />
+ <field type="BYTE" name="stack_mode" enum="StackMode" />
<field type="WINDOW" name="parent" />
<field type="WINDOW" name="window" />
- <field type="WINDOW" name="sibling" />
+ <field type="WINDOW" name="sibling" altenum="Window" />
<field type="INT16" name="x" />
<field type="INT16" name="y" />
<field type="CARD16" name="width" />
<field type="CARD16" name="height" />
<field type="CARD16" name="border_width" />
- <field type="CARD16" name="value_mask" />
+ <field type="CARD16" name="value_mask" mask="ConfigWindow" />
</event>
<event name="GravityNotify" number="24">
<field type="WINDOW" name="event" />
<field type="WINDOW" name="window" />
<pad bytes="4" />
- <field type="BYTE" name="place" />
+ <field type="BYTE" name="place" enum="Place" />
+ <pad bytes="3" />
</event>
<eventcopy name="CirculateRequest" number="27" ref="CirculateNotify" />
<field type="WINDOW" name="window" />
<field type="ATOM" name="atom" />
<field type="TIMESTAMP" name="time" />
- <field type="BYTE" name="state" />
+ <field type="BYTE" name="state" enum="Property" />
+ <pad bytes="3" />
</event>
<event name="SelectionClear" number="29">
<field type="ATOM" name="selection" />
</event>
+ <enum name="Time">
+ <item name="CurrentTime"> <value>0</value> </item>
+ </enum>
+
+ <enum name="Atom">
+ <item name="None"> <value>0</value></item>
+ <item name="Any"> <value>0</value></item>
+ <item name="PRIMARY" />
+ <item name="SECONDARY" />
+ <item name="ARC" />
+ <item name="ATOM" />
+ <item name="BITMAP" />
+ <item name="CARDINAL" />
+ <item name="COLORMAP" />
+ <item name="CURSOR" />
+ <item name="CUT_BUFFER0" />
+ <item name="CUT_BUFFER1" />
+ <item name="CUT_BUFFER2" />
+ <item name="CUT_BUFFER3" />
+ <item name="CUT_BUFFER4" />
+ <item name="CUT_BUFFER5" />
+ <item name="CUT_BUFFER6" />
+ <item name="CUT_BUFFER7" />
+ <item name="DRAWABLE" />
+ <item name="FONT" />
+ <item name="INTEGER" />
+ <item name="PIXMAP" />
+ <item name="POINT" />
+ <item name="RECTANGLE" />
+ <item name="RESOURCE_MANAGER" />
+ <item name="RGB_COLOR_MAP" />
+ <item name="RGB_BEST_MAP" />
+ <item name="RGB_BLUE_MAP" />
+ <item name="RGB_DEFAULT_MAP" />
+ <item name="RGB_GRAY_MAP" />
+ <item name="RGB_GREEN_MAP" />
+ <item name="RGB_RED_MAP" />
+ <item name="STRING" />
+ <item name="VISUALID" />
+ <item name="WINDOW" />
+ <item name="WM_COMMAND" />
+ <item name="WM_HINTS" />
+ <item name="WM_CLIENT_MACHINE" />
+ <item name="WM_ICON_NAME" />
+ <item name="WM_ICON_SIZE" />
+ <item name="WM_NAME" />
+ <item name="WM_NORMAL_HINTS" />
+ <item name="WM_SIZE_HINTS" />
+ <item name="WM_ZOOM_HINTS" />
+ <item name="MIN_SPACE" />
+ <item name="NORM_SPACE" />
+ <item name="MAX_SPACE" />
+ <item name="END_SPACE" />
+ <item name="SUPERSCRIPT_X" />
+ <item name="SUPERSCRIPT_Y" />
+ <item name="SUBSCRIPT_X" />
+ <item name="SUBSCRIPT_Y" />
+ <item name="UNDERLINE_POSITION" />
+ <item name="UNDERLINE_THICKNESS" />
+ <item name="STRIKEOUT_ASCENT" />
+ <item name="STRIKEOUT_DESCENT" />
+ <item name="ITALIC_ANGLE" />
+ <item name="X_HEIGHT" />
+ <item name="QUAD_WIDTH" />
+ <item name="WEIGHT" />
+ <item name="POINT_SIZE" />
+ <item name="RESOLUTION" />
+ <item name="COPYRIGHT" />
+ <item name="NOTICE" />
+ <item name="FONT_NAME" />
+ <item name="FAMILY_NAME" />
+ <item name="FULL_NAME" />
+ <item name="CAP_HEIGHT" />
+ <item name="WM_CLASS" />
+ <item name="WM_TRANSIENT_FOR" />
+ </enum>
+
<event name="SelectionRequest" number="30">
<pad bytes="1" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
<field type="WINDOW" name="owner" />
<field type="WINDOW" name="requestor" />
<field type="ATOM" name="selection" />
<field type="ATOM" name="target" />
- <field type="ATOM" name="property" />
+ <field type="ATOM" name="property" altenum="Atom" />
</event>
<event name="SelectionNotify" number="31">
<pad bytes="1" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
<field type="WINDOW" name="requestor" />
<field type="ATOM" name="selection" />
<field type="ATOM" name="target" />
- <field type="ATOM" name="property" />
+ <field type="ATOM" name="property" altenum="Atom" />
</event>
<enum name="ColormapState">
<item name="Installed"> <value>1</value></item>
</enum>
+ <enum name="Colormap">
+ <item name="None"> <value>0</value></item>
+ </enum>
+
<event name="ColormapNotify" number="32">
<pad bytes="1" />
<field type="WINDOW" name="window" />
- <field type="COLORMAP" name="colormap" />
+ <field type="COLORMAP" name="colormap" altenum="Colormap" />
<field type="BOOL" name="new" />
- <field type="BYTE" name="state" />
+ <field type="BYTE" name="state" enum="ColormapState" />
+ <pad bytes="2" />
</event>
<union name="ClientMessageData">
<event name="MappingNotify" number="34">
<pad bytes="1" />
- <field type="BYTE" name="request" />
+ <field type="BYTE" name="request" enum="Mapping" />
<field type="KEYCODE" name="first_keycode" />
<field type="CARD8" name="count" />
+ <pad bytes="1" />
</event>
<field type="CARD32" name="bad_value" />
<field type="CARD16" name="minor_opcode" />
<field type="CARD8" name="major_opcode" />
+ <pad bytes="1" />
</error>
<error name="Value" number="2">
<field type="CARD32" name="bad_value" />
<field type="CARD16" name="minor_opcode" />
<field type="CARD8" name="major_opcode" />
+ <pad bytes="1" />
</error>
<errorcopy name="Window" number="3" ref="Value" />
<item name="Static"> <value>10</value></item>
</enum>
- <!-- Also used in XCBSCREEN field backing_stores -->
- <enum name="BackingStore">
- <item name="NotUseful"> <value>0</value></item>
- <item name="WhenMapped"><value>1</value></item>
- <item name="Always"> <value>2</value></item>
- </enum>
-
- <enum name="EventMask">
- <item name="NoEvent"> <value>0</value></item>
- <item name="KeyPress"> <bit>0</bit></item>
- <item name="KeyRelease"> <bit>1</bit></item>
- <item name="ButtonPress"> <bit>2</bit></item>
- <item name="ButtonRelease"> <bit>3</bit></item>
- <item name="EnterWindow"> <bit>4</bit></item>
- <item name="LeaveWindow"> <bit>5</bit></item>
- <item name="PointerMotion"> <bit>6</bit></item>
- <item name="PointerMotionHint"> <bit>7</bit></item>
- <item name="Button1Motion"> <bit>8</bit></item>
- <item name="Button2Motion"> <bit>9</bit></item>
- <item name="Button3Motion"> <bit>10</bit></item>
- <item name="Button4Motion"> <bit>11</bit></item>
- <item name="Button5Motion"> <bit>12</bit></item>
- <item name="ButtonMotion"> <bit>13</bit></item>
- <item name="KeymapState"> <bit>14</bit></item>
- <item name="Exposure"> <bit>15</bit></item>
- <item name="VisibilityChange"> <bit>16</bit></item>
- <item name="StructureNotify"> <bit>17</bit></item>
- <item name="ResizeRedirect"> <bit>18</bit></item>
- <item name="SubstructureNotify"> <bit>19</bit></item>
- <item name="SubstructureRedirect"><bit>20</bit></item>
- <item name="FocusChange"> <bit>21</bit></item>
- <item name="PropertyChange"> <bit>22</bit></item>
- <item name="ColorMapChange"> <bit>23</bit></item>
- <item name="OwnerGrabButton"> <bit>24</bit></item>
- </enum>
-
<request name="CreateWindow" opcode="1">
<field type="CARD8" name="depth" />
<field type="WINDOW" name="wid" />
<field type="CARD16" name="width" />
<field type="CARD16" name="height" />
<field type="CARD16" name="border_width" />
- <field type="CARD16" name="class" />
+ <field type="CARD16" name="class" enum="WindowClass" />
<field type="VISUALID" name="visual" />
<valueparam value-mask-type="CARD32"
value-mask-name="value_mask"
<pad bytes="1" />
<field type="WINDOW" name="window" />
<reply>
- <field type="CARD8" name="backing_store" />
+ <field type="CARD8" name="backing_store" enum="BackingStore" />
<field type="VISUALID" name="visual" />
- <field type="CARD16" name="class" />
- <field type="CARD8" name="bit_gravity" />
- <field type="CARD8" name="win_gravity" />
+ <field type="CARD16" name="class" enum="WindowClass" />
+ <field type="CARD8" name="bit_gravity" enum="Gravity" />
+ <field type="CARD8" name="win_gravity" enum="Gravity" />
<field type="CARD32" name="backing_planes" />
<field type="CARD32" name="backing_pixel" />
<field type="BOOL" name="save_under" />
<field type="BOOL" name="map_is_installed" />
- <field type="CARD8" name="map_state" />
+ <field type="CARD8" name="map_state" enum="MapState" />
<field type="BOOL" name="override_redirect" />
- <field type="COLORMAP" name="colormap" />
- <field type="CARD32" name="all_event_masks" />
- <field type="CARD32" name="your_event_mask" />
- <field type="CARD16" name="do_not_propagate_mask" />
+ <field type="COLORMAP" name="colormap" altenum="Colormap" />
+ <field type="CARD32" name="all_event_masks" mask="EventMask" />
+ <field type="CARD32" name="your_event_mask" mask="EventMask" />
+ <field type="CARD16" name="do_not_propagate_mask" mask="EventMask" />
+ <pad bytes="2" />
</reply>
</request>
</enum>
<request name="ChangeSaveSet" opcode="6">
- <field type="BYTE" name="mode" />
+ <field type="BYTE" name="mode" enum="SetMode" />
<field type="WINDOW" name="window" />
</request>
<request name="ConfigureWindow" opcode="12">
<pad bytes="1" />
<field type="WINDOW" name="window" />
+ <field type="CARD16" name="value_mask" />
+ <pad bytes="2" />
<valueparam value-mask-type="CARD16"
value-mask-name="value_mask"
value-list-name="value_list" />
</enum>
<request name="CirculateWindow" opcode="13">
- <field type="CARD8" name="direction" />
+ <field type="CARD8" name="direction" enum="Circulate" />
<field type="WINDOW" name="window" />
</request>
<field type="CARD16" name="width" />
<field type="CARD16" name="height" />
<field type="CARD16" name="border_width" />
+ <pad bytes="2" />
</reply>
</request>
<reply>
<pad bytes="1" />
<field type="WINDOW" name="root" />
- <field type="WINDOW" name="parent" />
+ <field type="WINDOW" name="parent" altenum="Window" />
<field type="CARD16" name="children_len" />
<pad bytes="14" />
<list type="WINDOW" name="children">
</list>
<reply>
<pad bytes="1" />
- <field type="ATOM" name="atom" />
+ <field type="ATOM" name="atom" altenum="Atom" />
</reply>
</request>
<pad bytes="1" />
<field type="CARD16" name="name_len" />
<pad bytes="22" />
- <list type="CARD8" name="name">
+ <list type="char" name="name">
<fieldref>name_len</fieldref>
</list>
</reply>
</enum>
<request name="ChangeProperty" opcode="18">
- <field type="CARD8" name="mode" />
+ <field type="CARD8" name="mode" enum="PropMode" />
<field type="WINDOW" name="window" />
<field type="ATOM" name="property" />
<field type="ATOM" name="type" />
<field type="BOOL" name="delete" />
<field type="WINDOW" name="window" />
<field type="ATOM" name="property" />
- <field type="ATOM" name="type" />
+ <field type="ATOM" name="type" altenum="GetPropertyType" />
<field type="CARD32" name="long_offset" />
<field type="CARD32" name="long_length" />
<reply>
<field type="CARD32" name="value_len" />
<pad bytes="12" />
<list type="void" name="value">
- <fieldref>value_len</fieldref>
+ <op op="*">
+ <fieldref>value_len</fieldref>
+ <op op="/">
+ <fieldref>format</fieldref>
+ <value>8</value>
+ </op>
+ </op>
</list>
</reply>
</request>
<request name="SetSelectionOwner" opcode="22">
<pad bytes="1" />
- <field type="WINDOW" name="owner" />
+ <field type="WINDOW" name="owner" altenum="Window" />
<field type="ATOM" name="selection" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<request name="GetSelectionOwner" opcode="23">
<field type="ATOM" name="selection" />
<reply>
<pad bytes="1" />
- <field type="WINDOW" name="owner" />
+ <field type="WINDOW" name="owner" altenum="Window" />
</reply>
</request>
<field type="WINDOW" name="requestor" />
<field type="ATOM" name="selection" />
<field type="ATOM" name="target" />
- <field type="ATOM" name="property" />
- <field type="TIMESTAMP" name="time" />
+ <field type="ATOM" name="property" altenum="Atom" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<enum name="SendEventDest">
<request name="SendEvent" opcode="25">
<field type="BOOL" name="propagate" />
- <field type="WINDOW" name="destination" />
- <field type="CARD32" name="event_mask" />
+ <field type="WINDOW" name="destination" altenum="SendEventDest" />
+ <field type="CARD32" name="event_mask" mask="EventMask" />
<list type="char" name="event"><value>32</value></list>
</request>
<enum name="GrabMode">
- <item name="Async"><value>0</value></item>
- <item name="Sync"> <value>1</value></item>
+ <item name="Sync"> <value>0</value></item>
+ <item name="Async"><value>1</value></item>
</enum>
<enum name="GrabStatus">
<item name="Frozen"> <value>4</value></item>
</enum>
+ <enum name="Cursor">
+ <item name="None"> <value>0</value></item>
+ </enum>
+
<request name="GrabPointer" opcode="26">
<field type="BOOL" name="owner_events" />
<field type="WINDOW" name="grab_window" />
- <field type="CARD16" name="event_mask" />
- <field type="BYTE" name="pointer_mode" />
- <field type="BYTE" name="keyboard_mode" />
- <field type="WINDOW" name="confine_to" />
- <field type="CURSOR" name="cursor" />
- <field type="TIMESTAMP" name="time" />
+ <field type="CARD16" name="event_mask" mask="EventMask" />
+ <field type="BYTE" name="pointer_mode" enum="GrabMode" />
+ <field type="BYTE" name="keyboard_mode" enum="GrabMode" />
+ <field type="WINDOW" name="confine_to" altenum="Window" />
+ <field type="CURSOR" name="cursor" altenum="Cursor" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
<reply>
- <field type="BYTE" name="status" />
+ <field type="BYTE" name="status" enum="GrabStatus" />
</reply>
</request>
<request name="UngrabPointer" opcode="27">
<pad bytes="1" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<enum name="ButtonIndex">
<request name="GrabButton" opcode="28">
<field type="BOOL" name="owner_events" />
<field type="WINDOW" name="grab_window" />
- <field type="CARD16" name="event_mask" />
- <field type="CARD8" name="pointer_mode" />
- <field type="CARD8" name="keyboard_mode" />
- <field type="WINDOW" name="confine_to" />
- <field type="CURSOR" name="cursor" />
- <field type="CARD8" name="button" />
+ <field type="CARD16" name="event_mask" mask="EventMask" />
+ <field type="CARD8" name="pointer_mode" enum="GrabMode" />
+ <field type="CARD8" name="keyboard_mode" enum="GrabMode" />
+ <field type="WINDOW" name="confine_to" altenum="Window" />
+ <field type="CURSOR" name="cursor" altenum="Cursor" />
+ <field type="CARD8" name="button" enum="ButtonIndex" />
<pad bytes="1" />
- <field type="CARD16" name="modifiers" />
+ <field type="CARD16" name="modifiers" mask="ModMask" />
</request>
<request name="UngrabButton" opcode="29">
- <field type="CARD8" name="button" />
+ <field type="CARD8" name="button" enum="ButtonIndex" />
<field type="WINDOW" name="grab_window" />
- <field type="CARD16" name="modifiers" />
+ <field type="CARD16" name="modifiers" mask="ModMask" />
<pad bytes="2" />
</request>
<request name="ChangeActivePointerGrab" opcode="30">
<pad bytes="1" />
- <field type="CURSOR" name="cursor" />
- <field type="TIMESTAMP" name="time" />
- <field type="CARD16" name="event_mask" />
+ <field type="CURSOR" name="cursor" altenum="Cursor" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
+ <field type="CARD16" name="event_mask" mask="EventMask" />
+ <pad bytes="2" />
</request>
<request name="GrabKeyboard" opcode="31">
<field type="BOOL" name="owner_events" />
<field type="WINDOW" name="grab_window" />
- <field type="TIMESTAMP" name="time" />
- <field type="BYTE" name="pointer_mode" />
- <field type="BYTE" name="keyboard_mode" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
+ <field type="BYTE" name="pointer_mode" enum="GrabMode" />
+ <field type="BYTE" name="keyboard_mode" enum="GrabMode" />
+ <pad bytes="2" />
<reply>
- <field type="BYTE" name="status" />
+ <field type="BYTE" name="status" enum="GrabStatus" />
</reply>
</request>
<request name="UngrabKeyboard" opcode="32">
<pad bytes="1" />
- <field type="TIMESTAMP" name="time" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<!-- Use KEYCODE any = { XCBGrabAny }; to grab any key -->
<request name="GrabKey" opcode="33">
<field type="BOOL" name="owner_events" />
<field type="WINDOW" name="grab_window" />
- <field type="CARD16" name="modifiers" />
- <field type="KEYCODE" name="key" />
- <field type="CARD8" name="pointer_mode" />
- <field type="CARD8" name="keyboard_mode" />
+ <field type="CARD16" name="modifiers" mask="ModMask" />
+ <field type="KEYCODE" name="key" altenum="Grab" />
+ <field type="CARD8" name="pointer_mode" enum="GrabMode" />
+ <field type="CARD8" name="keyboard_mode" enum="GrabMode" />
+ <pad bytes="3" />
</request>
<request name="UngrabKey" opcode="34">
- <field type="CARD8" name="key" />
+ <field type="KEYCODE" name="key" altenum="Grab" />
<field type="WINDOW" name="grab_window" />
- <field type="CARD16" name="modifiers" />
+ <field type="CARD16" name="modifiers" mask="ModMask" />
+ <pad bytes="2" />
</request>
<enum name="Allow">
</enum>
<request name="AllowEvents" opcode="35">
- <field type="CARD8" name="mode" />
- <field type="TIMESTAMP" name="time" />
+ <field type="CARD8" name="mode" enum="Allow" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<request name="GrabServer" opcode="36" />
<reply>
<field type="BOOL" name="same_screen" />
<field type="WINDOW" name="root" />
- <field type="WINDOW" name="child" />
+ <field type="WINDOW" name="child" altenum="Window" />
<field type="INT16" name="root_x" />
<field type="INT16" name="root_y" />
<field type="INT16" name="win_x" />
<field type="INT16" name="win_y" />
- <field type="CARD16" name="mask" />
+ <field type="CARD16" name="mask" mask="KeyButMask" />
+ <pad bytes="2" />
</reply>
</request>
<request name="GetMotionEvents" opcode="39">
<pad bytes="1" />
<field type="WINDOW" name="window" />
- <field type="TIMESTAMP" name="start" />
- <field type="TIMESTAMP" name="stop" />
+ <field type="TIMESTAMP" name="start" altenum="Time" />
+ <field type="TIMESTAMP" name="stop" altenum="Time" />
<reply>
<pad bytes="1" />
<field type="CARD32" name="events_len" />
<field type="INT16" name="src_y" />
<reply>
<field type="BOOL" name="same_screen" />
- <field type="WINDOW" name="child" />
- <field type="CARD16" name="dst_x" />
- <field type="CARD16" name="dst_y" />
+ <field type="WINDOW" name="child" altenum="Window" />
+ <field type="INT16" name="dst_x" />
+ <field type="INT16" name="dst_y" />
</reply>
</request>
<request name="WarpPointer" opcode="41">
<pad bytes="1" />
- <field type="WINDOW" name="src_window" />
- <field type="WINDOW" name="dst_window" />
+ <field type="WINDOW" name="src_window" altenum="Window" />
+ <field type="WINDOW" name="dst_window" altenum="Window" />
<field type="INT16" name="src_x" />
<field type="INT16" name="src_y" />
<field type="CARD16" name="src_width" />
<item name="None"> <value>0</value></item>
<item name="PointerRoot"><value>1</value></item>
<item name="Parent"> <value>2</value></item> <!-- revert_to only -->
+ <item name="FollowKeyboard"><value>3</value></item> <!-- xinput extension only -->
</enum>
<request name="SetInputFocus" opcode="42">
- <field type="CARD8" name="revert_to" />
- <field type="WINDOW" name="focus" />
- <field type="TIMESTAMP" name="time" />
+ <field type="CARD8" name="revert_to" enum="InputFocus" />
+ <field type="WINDOW" name="focus" altenum="InputFocus" />
+ <field type="TIMESTAMP" name="time" altenum="Time" />
</request>
<request name="GetInputFocus" opcode="43">
<reply>
- <field type="CARD8" name="revert_to" />
- <field type="WINDOW" name="focus" />
+ <field type="CARD8" name="revert_to" enum="InputFocus" />
+ <field type="WINDOW" name="focus" altenum="InputFocus" />
</reply>
</request>
<pad bytes="1" />
<field type="FONT" name="fid" />
<field type="CARD16" name="name_len" />
+ <pad bytes="2" />
<list type="char" name="name">
<fieldref>name_len</fieldref>
</list>
<field type="CARD16" name="max_char_or_byte2" />
<field type="CARD16" name="default_char" />
<field type="CARD16" name="properties_len" />
- <field type="BYTE" name="draw_direction" />
+ <field type="BYTE" name="draw_direction" enum="FontDraw" />
<field type="CARD8" name="min_byte1" />
<field type="CARD8" name="max_byte1" />
<field type="BOOL" name="all_chars_exist" />
<field type="FONTABLE" name="font" />
<list type="CHAR2B" name="string" />
<reply>
- <field type="BYTE" name="draw_direction" />
+ <field type="BYTE" name="draw_direction" enum="FontDraw" />
<field type="INT16" name="font_ascent" />
<field type="INT16" name="font_descent" />
<field type="INT16" name="overall_ascent" />
<field type="CARD16" name="max_char_or_byte2" />
<field type="CARD16" name="default_char" />
<field type="CARD16" name="properties_len" />
- <field type="BYTE" name="draw_direction" />
+ <field type="BYTE" name="draw_direction" enum="FontDraw" />
<field type="CARD8" name="min_byte1" />
<field type="CARD8" name="max_byte1" />
<field type="BOOL" name="all_chars_exist" />
<!-- GC Function values -->
<enum name="GX">
- <item name="clear"> <value>0x0</value></item>
- <item name="and"> <value>0x1</value></item>
- <item name="andReverse"> <value>0x2</value></item>
- <item name="copy"> <value>0x3</value></item>
- <item name="andInverted"> <value>0x4</value></item>
- <item name="noop"> <value>0x5</value></item>
- <item name="xor"> <value>0x6</value></item>
- <item name="or"> <value>0x7</value></item>
- <item name="nor"> <value>0x8</value></item>
- <item name="equiv"> <value>0x9</value></item>
- <item name="invert"> <value>0xa</value></item>
- <item name="orReverse"> <value>0xb</value></item>
- <item name="copyInverted"><value>0xc</value></item>
- <item name="orInverted"> <value>0xd</value></item>
- <item name="nand"> <value>0xe</value></item>
- <item name="set"> <value>0xf</value></item>
+ <item name="clear"> <value>0</value></item>
+ <item name="and"> <value>1</value></item>
+ <item name="andReverse"> <value>2</value></item>
+ <item name="copy"> <value>3</value></item>
+ <item name="andInverted"> <value>4</value></item>
+ <item name="noop"> <value>5</value></item>
+ <item name="xor"> <value>6</value></item>
+ <item name="or"> <value>7</value></item>
+ <item name="nor"> <value>8</value></item>
+ <item name="equiv"> <value>9</value></item>
+ <item name="invert"> <value>10</value></item>
+ <item name="orReverse"> <value>11</value></item>
+ <item name="copyInverted"><value>12</value></item>
+ <item name="orInverted"> <value>13</value></item>
+ <item name="nand"> <value>14</value></item>
+ <item name="set"> <value>15</value></item>
</enum>
<enum name="LineStyle">
<enum name="CapStyle">
<item name="NotLast"> <value>0</value></item>
- <item name="Cap"> <value>1</value></item>
- <item name="Butt"> <value>2</value></item>
+ <item name="Butt"> <value>1</value></item>
+ <item name="Round"> <value>2</value></item>
<item name="Projecting"><value>3</value></item>
</enum>
<enum name="JoinStyle">
- <item name="Mitre"> <value>0</value></item>
+ <item name="Miter"> <value>0</value></item>
<item name="Round"> <value>1</value></item>
<item name="Bevel"> <value>2</value></item>
</enum>
<pad bytes="1" />
<field type="GCONTEXT" name="src_gc" />
<field type="GCONTEXT" name="dst_gc" />
- <field type="CARD32" name="value_mask" />
+ <field type="CARD32" name="value_mask" mask="GC" />
</request>
<request name="SetDashes" opcode="58">
</enum>
<request name="SetClipRectangles" opcode="59">
- <field type="BYTE" name="ordering" />
+ <field type="BYTE" name="ordering" enum="ClipOrdering" />
<field type="GCONTEXT" name="gc" />
<field type="INT16" name="clip_x_origin" />
<field type="INT16" name="clip_y_origin" />
<!-- combine-adjacent doesn't work for mode==Relative -->
<request name="PolyPoint" opcode="64">
- <field type="BYTE" name="coordinate_mode" />
+ <field type="BYTE" name="coordinate_mode" enum="CoordMode" />
<field type="DRAWABLE" name="drawable" />
<field type="GCONTEXT" name="gc" />
<list type="POINT" name="points" />
</request>
<request name="PolyLine" opcode="65" combine-adjacent="true">
- <field type="BYTE" name="coordinate_mode" />
+ <field type="BYTE" name="coordinate_mode" enum="CoordMode" />
<field type="DRAWABLE" name="drawable" />
<field type="GCONTEXT" name="gc" />
<list type="POINT" name="points" />
<pad bytes="1" />
<field type="DRAWABLE" name="drawable" />
<field type="GCONTEXT" name="gc" />
- <field type="CARD8" name="shape" />
- <field type="CARD8" name="coordinate_mode" />
+ <field type="CARD8" name="shape" enum="PolyShape" />
+ <field type="CARD8" name="coordinate_mode" enum="CoordMode" />
+ <pad bytes="2" />
<list type="POINT" name="points" />
</request>
</enum>
<request name="PutImage" opcode="72">
- <field type="CARD8" name="format" />
+ <field type="CARD8" name="format" enum="ImageFormat" />
<field type="DRAWABLE" name="drawable" />
<field type="GCONTEXT" name="gc" />
<field type="CARD16" name="width" />
<field type="INT16" name="dst_y" />
<field type="CARD8" name="left_pad" />
<field type="CARD8" name="depth" />
+ <pad bytes="2" />
<list type="BYTE" name="data" />
</request>
<!-- FIXME: data array in reply will include padding, but ought not to. -->
<request name="GetImage" opcode="73">
- <field type="CARD8" name="format" />
+ <field type="CARD8" name="format" enum="ImageFormat" />
<field type="DRAWABLE" name="drawable" />
<field type="INT16" name="x" />
<field type="INT16" name="y" />
</enum>
<request name="CreateColormap" opcode="78">
- <field type="BYTE" name="alloc" />
+ <field type="BYTE" name="alloc" enum="ColormapAlloc" />
<field type="COLORMAP" name="mid" />
<field type="WINDOW" name="window" />
<field type="VISUALID" name="visual" />
<field type="CARD16" name="red" />
<field type="CARD16" name="green" />
<field type="CARD16" name="blue" />
+ <pad bytes="2" />
<reply>
<pad bytes="1" />
<field type="CARD16" name="red" />
<pad bytes="1" />
<field type="COLORMAP" name="cmap" />
<field type="CARD16" name="name_len" />
+ <pad bytes="2" />
<list type="char" name="name">
<fieldref>name_len</fieldref>
</list>
<field type="CARD16" name="red" />
<field type="CARD16" name="green" />
<field type="CARD16" name="blue" />
- <field type="BYTE" name="flags" />
+ <field type="BYTE" name="flags" mask="ColorFlag" />
<pad bytes="1" />
</struct>
</request>
<request name="StoreNamedColor" opcode="90">
- <field type="CARD8" name="flags" />
+ <field type="CARD8" name="flags" mask="ColorFlag" />
<field type="COLORMAP" name="cmap" />
<field type="CARD32" name="pixel" />
<field type="CARD16" name="name_len" />
+ <pad bytes="2" />
<list type="char" name="name">
<fieldref>name_len</fieldref>
</list>
<pad bytes="1" />
<field type="COLORMAP" name="cmap" />
<field type="CARD16" name="name_len" />
+ <pad bytes="2" />
<list type="char" name="name">
<fieldref>name_len</fieldref>
</list>
</reply>
</request>
+ <enum name="Pixmap">
+ <item name="None"> <value>0</value></item>
+ </enum>
+
<request name="CreateCursor" opcode="93">
<pad bytes="1" />
<field type="CURSOR" name="cid" />
<field type="PIXMAP" name="source" />
- <field type="PIXMAP" name="mask" />
+ <field type="PIXMAP" name="mask" altenum="Pixmap" />
<field type="CARD16" name="fore_red" />
<field type="CARD16" name="fore_green" />
<field type="CARD16" name="fore_blue" />
<field type="CARD16" name="y" />
</request>
+ <enum name="Font">
+ <item name="None"> <value>0</value></item>
+ </enum>
+
<request name="CreateGlyphCursor" opcode="94">
<pad bytes="1" />
<field type="CURSOR" name="cid" />
<field type="FONT" name="source_font" />
- <field type="FONT" name="mask_font" />
+ <field type="FONT" name="mask_font" altenum="Font" />
<field type="CARD16" name="source_char" />
<field type="CARD16" name="mask_char" />
<field type="CARD16" name="fore_red" />
</enum>
<request name="QueryBestSize" opcode="97">
- <field type="CARD8" name="class" />
+ <field type="CARD8" name="class" enum="QueryShapeOf" />
<field type="DRAWABLE" name="drawable" />
<field type="CARD16" name="width" />
<field type="CARD16" name="height" />
<request name="QueryExtension" opcode="98">
<pad bytes="1" />
<field type="CARD16" name="name_len" />
+ <pad bytes="2" />
<list type="char" name="name">
<fieldref>name_len</fieldref>
</list>
<field type="CARD8" name="keycode_count" />
<field type="KEYCODE" name="first_keycode" />
<field type="CARD8" name="keysyms_per_keycode" />
+ <pad bytes="2" />
<list type="KEYSYM" name="keysyms">
<op op="*">
<fieldref>keycode_count</fieldref>
<field type="BYTE" name="keysyms_per_keycode" />
<pad bytes="24" />
<list type="KEYSYM" name="keysyms">
- <op op="*">
- <fieldref>length</fieldref>
- <value>4</value>
- </op>
+ <fieldref>length</fieldref>
</list>
</reply>
</request>
<request name="GetKeyboardControl" opcode="103">
<reply>
- <field type="BYTE" name="global_auto_repeat" />
+ <field type="BYTE" name="global_auto_repeat" enum="AutoRepeatMode" />
<field type="CARD32" name="led_mask" />
<field type="CARD8" name="key_click_percent" />
<field type="CARD8" name="bell_percent" />
<field type="CARD16" name="acceleration_numerator" />
<field type="CARD16" name="acceleration_denominator" />
<field type="CARD16" name="threshold" />
+ <pad bytes="18" />
</reply>
</request>
<pad bytes="1" />
<field type="INT16" name="timeout" />
<field type="INT16" name="interval" />
- <field type="CARD8" name="prefer_blanking" />
- <field type="CARD8" name="allow_exposures" />
+ <field type="CARD8" name="prefer_blanking" enum="Blanking" />
+ <field type="CARD8" name="allow_exposures" enum="Exposures" />
</request>
<request name="GetScreenSaver" opcode="108">
<pad bytes="1" />
<field type="CARD16" name="timeout" />
<field type="CARD16" name="interval" />
- <field type="BYTE" name="prefer_blanking" />
- <field type="BYTE" name="allow_exposures" />
+ <field type="BYTE" name="prefer_blanking" enum="Blanking" />
+ <field type="BYTE" name="allow_exposures" enum="Exposures" />
+ <pad bytes="18" />
</reply>
</request>
</enum>
<request name="ChangeHosts" opcode="109">
- <field type="CARD8" name="mode" />
- <field type="CARD8" name="family" />
+ <field type="CARD8" name="mode" enum="HostMode" />
+ <field type="CARD8" name="family" enum="Family" />
<pad bytes="1" />
<field type="CARD16" name="address_len" />
<list type="char" name="address">
</request>
<struct name="HOST">
- <field type="CARD8" name="family" />
+ <field type="CARD8" name="family" enum="Family" />
<pad bytes="1" />
<field type="CARD16" name="address_len" />
<list type="BYTE" name="address">
<request name="ListHosts" opcode="110">
<reply>
- <field type="BYTE" name="mode" />
+ <field type="BYTE" name="mode" enum="AccessControl" />
<field type="CARD16" name="hosts_len" />
<pad bytes="22" />
<list type="HOST" name="hosts">
</enum>
<request name="SetAccessControl" opcode="111">
- <field type="CARD8" name="mode" />
+ <field type="CARD8" name="mode" enum="AccessControl" />
</request>
<enum name="CloseDown">
</enum>
<request name="SetCloseDownMode" opcode="112">
- <field type="CARD8" name="mode" />
+ <field type="CARD8" name="mode" enum="CloseDown" />
</request>
<enum name="Kill">
<request name="KillClient" opcode="113">
<pad bytes="1" />
- <field type="CARD32" name="resource" />
+ <field type="CARD32" name="resource" altenum="Kill" />
</request>
<request name="RotateProperties" opcode="114">
+ <pad bytes="1" />
<field type="WINDOW" name="window" />
<field type="CARD16" name="atoms_len" />
<field type="INT16" name="delta" />
</enum>
<request name="ForceScreenSaver" opcode="115">
- <field type="CARD8" name="mode" />
+ <field type="CARD8" name="mode" enum="ScreenSaver" />
</request>
<!-- Reply from SetPointerMapping or SetModifierMapping -->
<fieldref>map_len</fieldref>
</list>
<reply>
- <field type="BYTE" name="status" />
+ <field type="BYTE" name="status" enum="MappingStatus" />
</reply>
</request>
</op>
</list>
<reply>
- <field type="BYTE" name="status" />
+ <field type="BYTE" name="status" enum="MappingStatus" />
</reply>
</request>