Provided by: libxcb-doc_1.13-2~ubuntu18.04_all bug

NAME

       xcb-examples - manpage examples

DESCRIPTION

       Many of the XCB manpages contain example code. These examples intend to explain how to use
       one particular part of XCB. They almost never represent a standalone (or even useful)
       program - X11 programs are relatively involved and thus beyond the scope of a manpage
       example.

ENVIRONMENT

       Every example assumes you have an xcb_connection and possibly other variables at hand. For
       illustrating how xcb_get_property works, you need the window of which you want to get the
       property, for example. To make it clear that these variables are your responsibility,
       these examples consist of a single function which takes the necessary variables as
       parameters.

FLUSHING

       Flushing means calling xcb_flush to clear the XCB-internal write buffer and send all
       pending requests to the X11 server. You don't explicitly need to flush before using a
       reply function (like xcb_query_pointer_reply), but you do need to flush before entering
       the event loop of your program.

       There are only two cases when XCB flushes by itself. The first case is when its write
       buffer becomes full, the second case is when you are asking for the reply of a request
       which wasn't flushed out yet (like xcb_query_pointer_reply). This last point also includes
       xcb_request_check(). Please note that waiting for an event does NOT flush.

       Examples generally include the xcb_flush call where appropriate (for example after setting
       a property). Therefore, including these functions and calling them in your application
       should just work. However, you might get better results when flushing outside of the
       function, depending on the architecture of your program.

COMPILATION

       If an example does not compile (without warnings) when using -std=c99, that is considered
       a documentation bug. Similarly, not handling errors or leaking memory is also considered a
       documentation bug. Please inform us about it on xcb@lists.freedesktop.org.

CODING STYLE

       Every example uses 4 spaces for indentation.

       Comments are in asterisks, like /* this */.

       No line is longer than 80 characters (including indentation).

SEE ALSO

       xcb_connect(3), xcb_get_property(3), xcb_flush(3)

AUTHOR

       Michael Stapelberg <michael+xcb at stapelberg dot de>