replace all the _new functions with xcb_generate_id. repalce X11/XCB with xcb. Fix...
[free-sw/xcb/libxcb] / doc / tutorial / index.html
index 64f36a4..e39ee2e 100644 (file)
 #include <string.h>
 #include <sys/time.h>
 
-#include <X11/XCB/xcb.h>
+#include <xcb/xcb.h>
 
 #include <X11/Xlib.h>
 
@@ -596,7 +596,7 @@ gcc -Wall prog.c -o prog `pkg-config --cflags --libs xcb`
       and is opaque. Here is how the connection can be opened:
       </p>
       <pre class="code">
-#<include>include</include> <string>&lt;X11/XCB/xcb.h&gt;</string>
+#<include>include</include> <string>&lt;xcb/xcb.h&gt;</string>
 
 <type>int</type>
 <function>main</function> ()
@@ -684,10 +684,10 @@ xcb_screen_iterator_t xcb_setup_roots_iterator (xcb_setup_t *R);
       <pre class="code">
 #include &lt;stdio.h&gt;
 
-#include &lt;X11/XCB/xcb.h&gt;
+#include &lt;xcb/xcb.h&gt;
 
 int
-main (int argc, char *argv[])
+main ()
 {
   xcb_connection_t     *c;
   xcb_screen_t         *screen;
@@ -731,7 +731,7 @@ typedef struct {
       We first ask for a new Id for our window, with this function:
       </p>
       <pre class="code">
-xcb_window_t xcb_window_new(xcb_connection_t *c);
+xcb_window_t xcb_generate_id(xcb_connection_t *c);
 </pre>
       <p>
       Then, XCB supplies the following function to create new windows:
@@ -747,7 +747,7 @@ xcb_void_cookie_t xcb_create_window (xcb_connection_t *c,             /* Pointer
                                      uint16_t          height,        /* Height of the window (in pixels) */
                                      uint16_t          border_width,  /* Width of the window's border (in pixels) */
                                      uint16_t          _class,
-                                     xcb_visualid_t     visual,
+                                     xcb_visualid_t    visual,
                                      uint32_t          value_mask,
                                      const uint32_t   *value_list);
 </pre>
@@ -769,10 +769,10 @@ xcb_void_cookie_t xcb_map_window (xcb_connection_t *c,
       <pre class="code">
 #include &lt;unistd.h&gt;      /* pause() */
 
-#include &lt;X11/XCB/xcb.h&gt;
+#include &lt;xcb/xcb.h&gt;
 
 int
-main (int argc, char *argv[])
+main ()
 {
   xcb_connection_t *c;
   xcb_screen_t     *screen;
@@ -785,7 +785,7 @@ main (int argc, char *argv[])
   screen = xcb_setup_roots_iterator (xcb_get_setup (c)).data;
 
   /* Ask for our window's Id */
-  win.window = xcb_window_new(c);
+  win.window = xcb_generate_id(c);
 
   /* Create the window */
   xcb_create_window (c,                             /* Connection          */
@@ -823,7 +823,7 @@ int xcb_flush (xcb_connection_t *c);
       This function flushes all pending requests to the X server (much
       like the <span class="code">fflush()</span> function is used to
       flush standard output). The second function is
-      <span class="code">xcb_sync()</span>:
+      <span class="code">xcb_aux_sync()</span>:
       </p>
       <pre class="code">
 int xcb_aux_sync (xcb_connection_t *c);
@@ -836,8 +836,8 @@ int xcb_aux_sync (xcb_connection_t *c);
       now, we put it there.
       </p>
       <p>
-      The window that is created by the above code has a default
-      background (gray). This one can be set to a specific color,
+      The window that is created by the above code has a non defined
+      background. This one can be set to a specific color,
       thanks to the two last parameters of
       <span class="code">xcb_create_window()</span>, which are not
       described yet. See the subsections
@@ -862,7 +862,7 @@ int xcb_aux_sync (xcb_connection_t *c);
         </div>
         <div class="xcb">
         <ul>
-          <li>xcb_window_new ()
+          <li>xcb_generate_id ()
           <li>xcb_create_window ()
         </ul>
         </div>
@@ -896,7 +896,7 @@ typedef struct {
         context with this function:
         </p>
         <pre class="code">
-xcb_gcontext_t xcb_gcontext_new (xcb_connection_t *c);
+xcb_gcontext_t xcb_generate_id (xcb_connection_t *c);
 </pre>
         <p>
         Then, we set the attributes of the graphic context with this function:
@@ -914,10 +914,10 @@ xcb_void_cookie_t xcb_create_gc (xcb_connection_t *c,
         draw in foreground with a black color.
         </p>
         <pre class="code">
-#include &lt;X11/XCB/xcb.h&gt;
+#include &lt;xcb/xcb.h&gt;
 
 int
-main (int argc, char *argv[])
+main ()
 {
   xcb_connection_t *c;
   xcb_screen_t     *screen;
@@ -932,7 +932,7 @@ main (int argc, char *argv[])
 
   /* Create a black graphic context for drawing in the foreground */
   win.window = screen-&gt;root;
-  black = xcb_gcontext_new (c);
+  black = xcb_generate_id (c);
   mask = XCB_GC_FOREGROUND;
   value[0] = screen-&gt;black_pixel;
   xcb_create_gc (c, black, win, mask, value);
@@ -970,7 +970,7 @@ main (int argc, char *argv[])
           </div>
           <div class="xcb">
           <ul>
-            <li>xcb_gcontext_new ()
+            <li>xcb_generate_id ()
             <li>xcb_create_gc ()
           </ul>
           </div>
@@ -1246,10 +1246,10 @@ xcb_void_cookie_t xcb_poly_fill_arc (xcb_connection_t *c,
 #include &lt;stdlib.h&gt;
 #include &lt;stdio.h&gt;
 
-#include &lt;X11/XCB/xcb.h&gt;
+#include &lt;xcb/xcb.h&gt;
 
 int
-main (int argc, char *argv[])
+main ()
 {
   xcb_connection_t    *c;
   xcb_screen_t        *screen;
@@ -1293,14 +1293,14 @@ main (int argc, char *argv[])
   /* Create black (foreground) graphic context */
   win.window = screen-&gt;root;
 
-  foreground = xcb_gcontext_new (c);
+  foreground = xcb_generate_id (c);
   mask = XCB_GC_FOREGROUND | XCB_GC_GRAPHICS_EXPOSURES;
   values[0] = screen-&gt;black_pixel;
   values[1] = 0;
   xcb_create_gc (c, foreground, win, mask, values);
 
   /* Ask for our window's Id */
-  win.window = xcb_window_new(c);
+  win.window = xcb_generate_id(c);
 
   /* Create the window */
   mask = XCB_CW_BACK_PIXEL | XCB_CW_EVENT_MASK;
@@ -1391,7 +1391,7 @@ main (int argc, char *argv[])
         <pre class="code">
   mask = XCB_CW_EVENT_MASK;
   valwin[0] = XCB_EVENT_MASK_EXPOSURE;
-  win.window = xcb_window_new (c);
+  win.window = xcb_generate_id (c);
   xcb_create_window (c, depth, win.window, root-&gt;root,
                      0, 0, 150, 150, 10,
                      XCB_WINDOW_CLASS_INPUT_OUTPUT, root-&gt;root_visual,
@@ -1405,7 +1405,7 @@ main (int argc, char *argv[])
         <pre class="code">
   mask = XCB_CW_EVENT_MASK;
   valwin[0] = XCB_EVENT_MASK_EXPOSURE | XCB_EVENT_MASK_BUTTON_PRESS;
-  win.window = xcb_window_new (c);
+  win.window = xcb_generate_id (c);
   xcb_create_window (c, depth, win.window, root-&gt;root,
                      0, 0, 150, 150, 10,
                      XCB_WINDOW_CLASS_INPUT_OUTPUT, root-&gt;root_visual,
@@ -1894,7 +1894,7 @@ typedef xcb_key_press_event_t xcb_key_release_event_t;
 #include &lt;stdlib.h&gt;
 #include &lt;stdio.h&gt;
 
-#include &lt;X11/XCB/xcb.h&gt;
+#include &lt;xcb/xcb.h&gt;
 
 void
 print_modifiers (uint32_t mask)
@@ -1912,11 +1912,11 @@ print_modifiers (uint32_t mask)
 }
 
 int
-main (int argc, char *argv[])
+main ()
 {
-  xcb_connection_t   *c;
-  xcb_screen_t       *screen;
-  xcb_drawable_t      win;
+  xcb_connection_t    *c;
+  xcb_screen_t        *screen;
+  xcb_drawable_t       win;
   xcb_generic_event_t *e;
   uint32_t             mask = 0;
   uint32_t             values[2];
@@ -1928,7 +1928,7 @@ main (int argc, char *argv[])
   screen = xcb_setup_roots_iterator (xcb_get_setup (c)).data;
 
   /* Ask for our window's Id */
-  win.window = xcb_window_new (c);
+  win.window = xcb_generate_id (c);
 
   /* Create the window */
   mask = XCB_CW_BACK_PIXEL | XCB_CW_EVENT_MASK;
@@ -2142,11 +2142,11 @@ xcb_void_cookie_t xcb_change_property (xcb_connection_t *c,       /* Connection
         <pre class="code">
 #include &lt;string.h&gt;
 
-#include &lt;X11/XCB/xcb.h&gt;
-#include &lt;X11/XCB/xcb_atom.h&gt;
+#include &lt;xcb/xcb.h&gt;
+#include &lt;xcb/xcb_atom.h&gt;
 
 int
-main (int argc, char *argv[])
+main ()
 {
   xcb_connection_t *c;
   xcb_screen_t     *screen;
@@ -2163,7 +2163,7 @@ main (int argc, char *argv[])
   screen = xcb_setup_roots_iterator (xcb_get_setup (c)).data;
 
   /* Ask for our window's Id */
-  win = xcb_window_new (c);
+  win = xcb_generate_id (c);
 
   /* Create the window */
   xcb_create_window (c,                             /* Connection          */
@@ -2673,10 +2673,10 @@ typedef struct {
         <pre class="code">
 #include &lt;stdio.h&gt;
 
-#include &lt;X11/XCB/xcb.h&gt;
+#include &lt;xcb/xcb.h&gt;
 
 int
-main (int argc, char *argv[])
+main ()
 {
   xcb_connection_t *c;
   xcb_screen_t     *screen;
@@ -2702,7 +2702,7 @@ main (int argc, char *argv[])
         map, with this function:
         </p>
         <pre class="code">
-xcb_colormap_t xcb_colormap_new (xcb_connection_t *c);
+xcb_colormap_t xcb_generate_id (xcb_connection_t *c);
 </pre>
         <p>
         Then, we create the color map with
@@ -2718,10 +2718,10 @@ xcb_void_cookie_t xcb_create_colormap (xcb_connection_t *c,       /* Pointer to
         Here is an example of creation of a new color map:
         </p>
         <pre class="code">
-#include &lt;X11/XCB/xcb.h&gt;
+#include &lt;xcb/xcb.h&gt;
 
 int
-main (int argc, char *argv[])
+main ()
 {
   xcb_connection_t *c;
   xcb_screen_t     *screen;
@@ -2734,7 +2734,7 @@ main (int argc, char *argv[])
 
   /* We create the window win here*/
 
-  cmap = xcb_colormap_new (c);
+  cmap = xcb_generate_id (c);
   xcb_create_colormap (c, XCB_COLORMAP_ALLOC_NONE, cmap, win, screen-&gt;root_visual);
 
   return 0;
@@ -2763,7 +2763,7 @@ xcb_void_cookie_t xcb_free_colormap (xcb_connection_t *c,   /* The connection */
           </div>
           <div class="xcb">
             <ul>
-              <li>xcb_colormap_new ()
+              <li>xcb_generate_id ()
               <li>xcb_create_colormap ()
             </ul>
           </div>
@@ -2819,10 +2819,10 @@ xcb_alloc_color_reply_t *xcb_alloc_color_reply (xcb_connection_t        *c,
       <pre class="code">
 #include &lt;malloc.h&gt;
 
-#include &lt;X11/XCB/xcb.h&gt;
+#include &lt;xcb/xcb.h&gt;
 
 int
-main (int argc, char *argv[])
+main ()
 {
   xcb_connection_t        *c;
   xcb_screen_t            *screen;
@@ -2836,7 +2836,7 @@ main (int argc, char *argv[])
 
   /* We create the window win here*/
 
-  cmap = xcb_colormap_new (c);
+  cmap = xcb_generate_id (c);
   xcb_create_colormap (c, XCB_COLORMAP_ALLOC_NONE, cmap, win, screen-&gt;root_visual);
 
   rep = xcb_alloc_color_reply (c, xcb_alloc_color (c, cmap, 65535, 0, 0), NULL);
@@ -2946,7 +2946,7 @@ typedef union {
         Id to our pixmap, with this function:
         </p>
         <pre class="code">
-xcb_pixmap_t xcb_pixmap_new (xcb_connection_t *c);
+xcb_pixmap_t xcb_generate_id (xcb_connection_t *c);
 </pre>
         <p>
          Then, XCB supplies the following function to create new pixmaps:
@@ -2973,12 +2973,12 @@ xcb_void_cookie_t xcb_copy_area (xcb_connection_t *c,             /* Pointer to
                                  xcb_drawable_t    src_drawable,  /* The Drawable we want to paste */
                                  xcb_drawable_t    dst_drawable,  /* The Drawable on which we copy the previous Drawable */
                                  xcb_gcontext_t    gc,            /* A Graphic Context */
-                                 int16_t          src_x,          /* Top left x coordinate of the region we want to copy */
-                                 int16_t          src_y,          /* Top left y coordinate of the region we want to copy */
-                                 int16_t          dst_x,          /* Top left x coordinate of the region where we want to copy */
-                                 int16_t          dst_y,          /* Top left y coordinate of the region where we want to copy */
-                                 uint16_t         width,          /* Width of the region we want to copy */
-                                 uint16_t         height);        /* Height of the region we want to copy */
+                                 int16_t           src_x,         /* Top left x coordinate of the region we want to copy */
+                                 int16_t           src_y,         /* Top left y coordinate of the region we want to copy */
+                                 int16_t           dst_x,         /* Top left x coordinate of the region where we want to copy */
+                                 int16_t           dst_y,         /* Top left y coordinate of the region where we want to copy */
+                                 uint16_t          width,         /* Width of the region we want to copy */
+                                 uint16_t          height);       /* Height of the region we want to copy */
 </pre>
         <p>
         As you can see, we could copy the whole pixmap, as well as
@@ -3061,7 +3061,7 @@ xcb_void_cookie_t xcb_create_glyph_cursor_checked (xcb_connection_t *c,
         <p>
         So we first open that font (see <a href="#loadfont">Loading a Font</a>)
         and create the new cursor. As for every X ressource, we have to
-        ask for an X id with <span class="code">xcb_cursor_new</span>
+        ask for an X id with <span class="code">xcb_generate_id</span>
         first:
         </p>
         <pre class="code">
@@ -3070,10 +3070,10 @@ xcb_cursor_t         cursor;
 
 /* The connection is set */
 
-font = xcb_font_new (conn);
+font = xcb_generate_id (conn);
 xcb_open_font (conn, font, strlen ("cursor"), "cursor");
 
-cursor = xcb_cursor_new (conn);
+cursor = xcb_generate_id (conn);
 xcb_create_glyph_cursor (conn, cursor, font, font,
                          58, 58 + 1,
                          0, 0, 0,
@@ -3143,7 +3143,7 @@ xcb_change_window_attributes (conn, window, mask, &amp;value_list);
         structure. They are obtained by using a function that requires a
         <span class="code">xcb_connection_t *</span> or a member of the
         <span class="code">xcb_setup_t</span> structure
-        (via the function <span class="code">xcb_get_setup_t</span>), or
+        (via the function <span class="code">xcb_get_setup</span>), or
         a function that requires that structure.
         </p>
         <ol>
@@ -3192,9 +3192,9 @@ c = xcb_connect (display_name, &amp;screen_default_nbr);
           <li class="subtitle"><a name="ScreenCount"></a>ScreenCount
           <p>
           You get the count of screens with the functions
-          <span class="code">xcb_get_setup_t</span>
+          <span class="code">xcb_get_setup</span>
           and
-          <span class="code">xcb_setup_roots_iterator_t</span>
+          <span class="code">xcb_setup_roots_iterator</span>
           (if you need to iterate):
           </p>
           <pre class="code">
@@ -3225,10 +3225,10 @@ screen_count = xcb_setup_roots_length (xcb_get_setup (c));
           <li class="subtitle"><a name="ServerVendor"></a>ServerVendor
           <p>
           You get the name of the vendor of the server hardware with
-          the functions <span class="code">xcb_get_setup_t</span>
+          the functions <span class="code">xcb_get_setup</span>
           and
           <span
-          class="code">xcb_setup_vendor_t</span>. Beware
+          class="code">xcb_setup_vendor</span>. Beware
           that, unlike Xlib, the string returned by XCB is not
           necessarily null-terminaled:
           </p>
@@ -3250,7 +3250,7 @@ vendor[length] = '\0';
           <p>
           You get the major version of the protocol in the
           <span class="code">xcb_setup_t</span>
-          structure, with the function <span class="code">xcb_get_setup_t</span>:
+          structure, with the function <span class="code">xcb_get_setup</span>:
           </p>
           <pre class="code">
 xcb_connection_t *c;
@@ -3266,7 +3266,7 @@ protocol_major_version = xcb_get_setup (c)-&gt;protocol_major_version;
           <p>
           You get the minor version of the protocol in the
           <span class="code">xcb_setup_t</span>
-          structure, with the function <span class="code">xcb_get_setup_t</span>:
+          structure, with the function <span class="code">xcb_get_setup</span>:
           </p>
           <pre class="code">
 xcb_connection_t *c;
@@ -3282,7 +3282,7 @@ protocol_minor_version = xcb_get_setup (c)-&gt;protocol_minor_version;
           <p>
           You get the number of the release of the server hardware in the
           <span class="code">xcb_setup_t</span>
-          structure, with the function <span class="code">xcb_get_setup_t</span>:
+          structure, with the function <span class="code">xcb_get_setup</span>:
           </p>
           <pre class="code">
 xcb_connection_t *c;
@@ -3303,7 +3303,7 @@ release_number = xcb_get_setup (c)-&gt;release_number;
           <p>
           You get the bitmap scanline unit in the
           <span class="code">xcb_setup_t</span>
-          structure, with the function <span class="code">xcb_get_setup_t</span>:
+          structure, with the function <span class="code">xcb_get_setup</span>:
           </p>
           <pre class="code">
 xcb_connection_t *c;
@@ -3319,7 +3319,7 @@ bitmap_format_scanline_unit = xcb_get_setup (c)-&gt;bitmap_format_scanline_unit;
           <p>
           You get the bitmap bit order in the
           <span class="code">xcb_setup_t</span>
-          structure, with the function <span class="code">xcb_get_setup_t</span>:
+          structure, with the function <span class="code">xcb_get_setup</span>:
           </p>
           <pre class="code">
 xcb_connection_t *c;
@@ -3335,7 +3335,7 @@ bitmap_format_bit_order = xcb_get_setup (c)-&gt;bitmap_format_bit_order;
           <p>
           You get the bitmap scanline pad in the
           <span class="code">xcb_setup_t</span>
-          structure, with the function <span class="code">xcb_get_setup_t</span>:
+          structure, with the function <span class="code">xcb_get_setup</span>:
           </p>
           <pre class="code">
 xcb_connection_t *c;
@@ -3351,7 +3351,7 @@ bitmap_format_scanline_pad = xcb_get_setup (c)-&gt;bitmap_format_scanline_pad;
           <p>
           You get the image byte order in the
           <span class="code">xcb_setup_t</span>
-          structure, with the function <span class="code">xcb_get_setup_t</span>:
+          structure, with the function <span class="code">xcb_get_setup</span>:
           </p>
           <pre class="code">
 xcb_connection_t *c;
@@ -3560,7 +3560,7 @@ if (screen) {
   uint32_t       mask;
   uint32_t       values[2];
 
-  gc = xcb_gcontext_new (c);
+  gc = xcb_generate_id (c);
   draw.window = screen-&gt;root;
   mask = XCB_GC_FOREGROUND | XCB_GC_BACKGROUND;
   values[0] = screen-&gt;black_pixel;