Add description of new protocol elements
[free-sw/xcb/proto] / src / render.xml
index 88e9a40..59cc8e0 100644 (file)
@@ -4,7 +4,8 @@ Copyright (C) 2002-2004 Carl D. Worth, Jamey Sharp, Bart Massey, Josh Triplett
 All Rights Reserved.  See the file COPYING in this directory
 for licensing information.
 -->
-<xcb header="render" extension-xname="RENDER" extension-name="Render">
+<xcb header="render" extension-xname="RENDER" extension-name="Render"
+    major-version="0" minor-version="10">
   <!-- supports version 0.10 -->
 
   <import>xproto</import>
@@ -14,6 +15,10 @@ for licensing information.
     <item name="Direct" />
   </enum>
 
+  <enum name="Picture">
+    <item name="None" />
+  </enum>
+
   <!-- Disjoint* and Conjoint* are new in version 0.2 -->
   <enum name="PictOp">
     <item name="Clear" />
@@ -31,7 +36,7 @@ for licensing information.
     <item name="Add" />
     <item name="Saturate" />
     
-    <item name="DisjointClear"><value>0x10</value></item>
+    <item name="DisjointClear"><value>16</value></item>
     <item name="DisjointSrc" />
     <item name="DisjointDst" />
     <item name="DisjointOver" />
@@ -44,7 +49,7 @@ for licensing information.
     <item name="DisjointAtopReverse" />
     <item name="DisjointXor" />
     
-    <item name="ConjointClear"><value>0x20</value></item>
+    <item name="ConjointClear"><value>32</value></item>
     <item name="ConjointSrc" />
     <item name="ConjointDst" />
     <item name="ConjointOver" />
@@ -128,7 +133,7 @@ for licensing information.
 
   <struct name="PICTFORMINFO">
     <field type="PICTFORMAT" name="id" />
-    <field type="CARD8" name="type" />
+    <field type="CARD8" name="type" enum="PictType" />
     <field type="CARD8" name="depth" />
     <pad bytes="2" />
     <field type="DIRECTFORMAT" name="direct" />
@@ -232,7 +237,7 @@ for licensing information.
       <list type="PICTSCREEN" name="screens">
         <fieldref>num_screens</fieldref>
       </list>
-      <list type="CARD32" name="subpixels">
+      <list type="CARD32" name="subpixels" enum="SubPixel" >
         <fieldref>num_subpixel</fieldref>
       </list>
     </reply>
@@ -281,10 +286,10 @@ for licensing information.
   </request>
 
   <request name="Composite" opcode="8">
-    <field type="CARD8" name="op" />
+    <field type="CARD8" name="op" enum="PictOp" />
     <pad bytes="3" />
     <field type="PICTURE" name="src" />
-    <field type="PICTURE" name="mask" />
+    <field type="PICTURE" name="mask" altenum="Picture" />
     <field type="PICTURE" name="dst" />
     <field type="INT16" name="src_x" />
     <field type="INT16" name="src_y" />
@@ -299,7 +304,7 @@ for licensing information.
   <!-- opcode 9 reserved for Scale -->
 
   <request name="Trapezoids" opcode="10">
-    <field type="CARD8" name="op" />
+    <field type="CARD8" name="op" enum="PictOp" />
     <pad bytes="3" />
     <field type="PICTURE" name="src" />
     <field type="PICTURE" name="dst" />
@@ -310,7 +315,7 @@ for licensing information.
   </request>
 
   <request name="Triangles" opcode="11">
-    <field type="CARD8" name="op" />
+    <field type="CARD8" name="op" enum="PictOp" />
     <pad bytes="3" />
     <field type="PICTURE" name="src" />
     <field type="PICTURE" name="dst" />
@@ -321,7 +326,7 @@ for licensing information.
   </request>
 
   <request name="TriStrip" opcode="12">
-    <field type="CARD8" name="op" />
+    <field type="CARD8" name="op" enum="PictOp" />
     <pad bytes="3" />
     <field type="PICTURE" name="src" />
     <field type="PICTURE" name="dst" />
@@ -332,7 +337,7 @@ for licensing information.
   </request>
 
   <request name="TriFan" opcode="13">
-    <field type="CARD8" name="op" />
+    <field type="CARD8" name="op" enum="PictOp" />
     <pad bytes="3" />
     <field type="PICTURE" name="src" />
     <field type="PICTURE" name="dst" />
@@ -382,7 +387,7 @@ for licensing information.
   </request>
 
   <request name="CompositeGlyphs8" opcode="23">
-    <field type="CARD8" name="op" />
+    <field type="CARD8" name="op" enum="PictOp" />
     <pad bytes="3" />
     <field type="PICTURE" name="src" />
     <field type="PICTURE" name="dst" />
@@ -394,7 +399,7 @@ for licensing information.
   </request>
 
   <request name="CompositeGlyphs16" opcode="24">
-    <field type="CARD8" name="op" />
+    <field type="CARD8" name="op" enum="PictOp" />
     <pad bytes="3" />
     <field type="PICTURE" name="src" />
     <field type="PICTURE" name="dst" />
@@ -406,7 +411,7 @@ for licensing information.
   </request>
 
   <request name="CompositeGlyphs32" opcode="25">
-    <field type="CARD8" name="op" />
+    <field type="CARD8" name="op" enum="PictOp" />
     <pad bytes="3" />
     <field type="PICTURE" name="src" />
     <field type="PICTURE" name="dst" />
@@ -420,7 +425,7 @@ for licensing information.
   <!-- new in version 0.1 -->
 
   <request name="FillRectangles" opcode="26">
-    <field type="CARD8" name="op" />
+    <field type="CARD8" name="op" enum="PictOp" />
     <pad bytes="3" />
     <field type="PICTURE" name="dst" />
     <field type="COLOR" name="color" />
@@ -474,6 +479,7 @@ for licensing information.
   <request name="SetPictureFilter" opcode="30">
     <field type="PICTURE" name="picture" />
     <field type="CARD16" name="filter_len" />
+    <pad bytes="2" />
     <list type="char" name="filter">
       <fieldref>filter_len</fieldref>
     </list>
@@ -524,6 +530,12 @@ for licensing information.
     <field type="POINTFIX" name="p1" />
     <field type="POINTFIX" name="p2" />
     <field type="CARD32" name="num_stops" />
+    <list type="FIXED" name="stops">
+      <fieldref>num_stops</fieldref>
+    </list>
+    <list type="COLOR" name="colors">
+      <fieldref>num_stops</fieldref>
+    </list>
   </request>
 
   <request name="CreateRadialGradient" opcode="35">
@@ -533,6 +545,12 @@ for licensing information.
     <field type="FIXED" name="inner_radius" />
     <field type="FIXED" name="outer_radius" />
     <field type="CARD32" name="num_stops" />
+    <list type="FIXED" name="stops">
+      <fieldref>num_stops</fieldref>
+    </list>
+    <list type="COLOR" name="colors">
+      <fieldref>num_stops</fieldref>
+    </list>
   </request>
 
   <request name="CreateConicalGradient" opcode="36">
@@ -540,5 +558,11 @@ for licensing information.
     <field type="POINTFIX" name="center" />
     <field type="FIXED" name="angle" />        <!-- degrees -->
     <field type="CARD32" name="num_stops" />
+    <list type="FIXED" name="stops">
+      <fieldref>num_stops</fieldref>
+    </list>
+    <list type="COLOR" name="colors">
+      <fieldref>num_stops</fieldref>
+    </list>
   </request>
 </xcb>