diff options
author | Matt Dew <marcoz@osource.org> | 2011-04-16 22:56:24 -0600 |
---|---|---|
committer | Matt Dew <marcoz@osource.org> | 2011-04-16 22:56:24 -0600 |
commit | bd57362b912026a8d6f73c2854e6e7829da7dd29 (patch) | |
tree | 2654a26518c7ef59d7e1cabeb73e6caf21d6cecf | |
parent | 3a93e47dbc500f2451c7259cef54631a60807bcb (diff) |
Experimenting with changing table layout
-rw-r--r-- | specs/bigreq.xml | 89 |
1 files changed, 46 insertions, 43 deletions
diff --git a/specs/bigreq.xml b/specs/bigreq.xml index 077cbc9..881b10d 100644 --- a/specs/bigreq.xml +++ b/specs/bigreq.xml @@ -67,12 +67,12 @@ bytes in length.</para> <para>The core protocol restricts the maximum length of a protocol request to 262140 bytes, in that it uses a 16-bit length field specifying the number of 4-byte units in the request. This is a problem in the core protocol when -joining large numbers of lines (<symbol role='Pn'>PolyLine</symbol>) or arcs -(<symbol role='Pn'>PolyArc</symbol>), since these requests cannot be broken up -into smaller requests without disturbing the rendering of the join points. It -is also much more of a problem for protocol extensions, such as the PEX -extension for 3D graphics and the XIE extension for imaging, that need to send -long data lists in output commands.</para> +joining large numbers of lines (<emphasis role='bold'>PolyLine</emphasis>) +or arcs (<emphasis role='bold'>PolyArc</emphasis>), since these requests cannot +be broken up into smaller requests without disturbing the rendering of the +join points. It is also much more of a problem for protocol extensions, +such as the PEX extension for 3D graphics and the XIE extension for imaging, +that need to send long data lists in output commands.</para> <para>This extension defines a mechanism for extending the length field beyond 16 bits. If the normal 16-bit length field of the protocol request is zero, @@ -80,10 +80,10 @@ then an additional 32-bit field containing the actual length (in 4-byte units) is inserted into the request, immediately following the 16-bit length field.</para> -<para>For example, a normal <emphasis role='bold'>PolyLine</emphasis> encoding is:</para> +<para>For example, a normal <emphasis role='bold'>PolyLine</emphasis> +encoding is:</para> -<table tabstyle='encoding1' width="100%"> -<title>BLAH</title> +<informaltable tabstyle='encoding1' width="100%"> <tgroup cols='4' align='left'> <colspec colname='c1' colwidth="0.5*"/> <colspec colname='c2' colwidth="3.0*"/> @@ -91,7 +91,9 @@ field.</para> <colspec colname='c4' colwidth="3.0*"/> <thead> <row> - <entry namest="c1" nameend="c4"><function>PolyLine</function></entry> + <entry namest="c1" nameend="c4"> + <emphasis role='bold'>PolyLine</emphasis> + </entry> </row> </thead> <tbody> @@ -145,19 +147,21 @@ field.</para> </row> </tbody> </tgroup> -</table> +</informaltable> -<para>An extended-length <emphasis role='bold'>PolyLine</emphasis> encoding is:</para> +<para>An extended-length <emphasis role='bold'>PolyLine</emphasis> +encoding is:</para> -<informaltable width="100%"> +<informaltable tabstyle='encoding1' width="100%"> <tgroup cols='4' align='left'> - <colspec colname='c1' colwidth="0.5*" align="left"/> - <colspec colname='c2' colwidth="3.0*" align="left"/> - <colspec colname='c3' colwidth="3.0*" align="left"/> - <colspec colname='c4' colwidth="3.0*" align="left"/> + <colspec colname='c1' colwidth="0.5*"/> + <colspec colname='c2' colwidth="3.0*"/> + <colspec colname='c3' colwidth="3.0*"/> + <colspec colname='c4' colwidth="3.0*"/> <thead> <row> - <entry namest="c1" nameend="c4"><emphasis role='bold'>Poly</emphasis>Line</entry> + <entry namest="c1" nameend="c4"> + <emphasis role='bold'>PolyLine</emphasis></entry> </row> </thead> <tbody> @@ -226,14 +230,12 @@ protocol requests, including all extensions.</para> <chapter id='requests'> <title>Requests</title> -<para role='box'><function>BigReqEnable</function></para> - +<para><emphasis role='bold'>BigReqEnable</emphasis></para> <para role='box'>→</para> - -<para role='box'><emphasis remap='I'>maximum-request-length</emphasis>: +<para role='box'><emphasis role='italic'>maximum-request-length</emphasis>: CARD32</para> -<para> +<para role='box'> This request enables extended-length protocol requests for the requesting client. It also returns the maximum length of a request, in 4-byte units, that can be used in extended-length protocol requests. This value will always be @@ -260,11 +262,11 @@ conventions established there. <para>The name of this extension is "BIG-REQUESTS".</para> -<informaltable width="100%"> +<informaltable role='encoding1' width="100%"> <tgroup cols='3' align='left'> - <colspec colname='c1' colwidth="0.5*" align="left"/> - <colspec colname='c2' colwidth="2.0*" align="left"/> - <colspec colname='c3' colwidth="2.0*" align="left"/> + <colspec colname='c1' colwidth="0.5*"/> + <colspec colname='c2' colwidth="2.0*"/> + <colspec colname='c3' colwidth="2.0*"/> <thead> <row> <entry namest="c1" nameend="c3">BigReqEnable</entry> @@ -343,29 +345,30 @@ extension internally when necessary. It is also desirable to make the use of this extension as transparent as possible to the X client. For example, if enabling of the extension were delayed until the first time it was needed, an application that used -<olink targetdoc='libx11' targetptr='libx11'>>XNextRequest</olink> +<olink targetdoc='libX11' targetptr='xnextrequest'>>XNextRequest</olink> to determine the sequence number of a request would no longer get the correct sequence number. As such, -<function>XOpenDisplay</function> will determine if the extension is +<olink targetdoc='libX11' targetptr='xopendisplay'>XOpenDisplay</olink> will +determine if the extension is supported by the server and, if it is, enable extended-length encodings. </para> <para> The core Xlib functions -<olink targetdoc='libx11' targetptr='xdrawlines'>XDrawLines</olink>, -<olink targetdoc='libx11' targetptr='xdrawarcs'>XDrawArcs</olink>, -<olink targetdoc='libx11' targetptr='xfillpolygon'>XFillPolygon</olink>, -<olink targetdoc='libx11' targetptr='xchangeproperty'>XChangeProperty</olink>, -<olink targetdoc='libx11' targetptr='xsetcliprectangles'>XSetClipRectangles</olink>, -and <olink targetdoc='libx11' targetptr='xsetregion'>XSetRegion</olink> +<olink targetdoc='libX11' targetptr='xdrawlines'>XDrawLines</olink>, +<olink targetdoc='libX11' targetptr='xdrawarcs'>XDrawArcs</olink>, +<olink targetdoc='libX11' targetptr='xfillpolygon'>XFillPolygon</olink>, +<olink targetdoc='libX11' targetptr='xchangeproperty'>XChangeProperty</olink>, +<olink targetdoc='libX11' targetptr='xsetcliprectangles'>XSetClipRectangles</olink>, +and <olink targetdoc='libX11' targetptr='xsetregion'>XSetRegion</olink> are required to use extended-length encodings when necessary, if supported by -the server. Use of extended-length encodings in other core Xlib functions ( -<olink targetdoc='libx11' targetptr='xdrawpoints'>XDrawPoints</olink>, -<olink targetdoc='libx11' targetptr='xdrawrectangles'>XDrawRectangles</olink>, -<olink targetdoc='libx11' targetptr='xdrawsegments'>XDrawSegments</olink>. -<olink targetdoc='libx11' targetptr='xfillarcs'>XFillArcs</olink>, -<olink targetdoc='libx11' targetptr='xfillrectangles'>XFillRectangles</olink>, -<olink targetdoc='libx11' targetptr='xputimage'>XPutImage</olink>) +the server. Use of extended-length encodings in other core Xlib functions +(<olink targetdoc='libX11' targetptr='xdrawpoints'>XDrawPoints</olink>, +<olink targetdoc='libX11' targetptr='xdrawrectangles'>XDrawRectangles</olink>, +<olink targetdoc='libX11' targetptr='xdrawsegments'>XDrawSegments</olink>. +<olink targetdoc='libX11' targetptr='xfillarcs'>XFillArcs</olink>, +<olink targetdoc='libX11' targetptr='xfillrectangles'>XFillRectangles</olink>, +<olink targetdoc='libX11' targetptr='xputimage'>XPutImage</olink>) is permitted but not required; an Xlib implementation may choose to split the data across multiple smaller requests instead. @@ -378,7 +381,7 @@ extended-length encodings is, the following function is added to Xlib: <funcsynopsis id='xextendedmaxrequestsize'> <funcprototype> <funcdef>long <function>XExtendedMaxRequestSize</function></funcdef> - <paramdef>Display <parameter> *display</parameter></paramdef> + <paramdef>Display<parameter>*display</parameter></paramdef> </funcprototype> </funcsynopsis> |