modernc.org/xcb@v1.0.15/examples/screen/screen.c (about)

     1  // +build ignore
     2  
     3  // src: https://www.x.org/releases/current/doc/libxcb/tutorial/index.html#screen
     4  
     5  #include <stdio.h>
     6  
     7  #include <xcb/xcb.h>
     8  
     9  int
    10  main ()
    11  {
    12    xcb_connection_t     *c;
    13    xcb_screen_t         *screen;
    14    int                   screen_nbr;
    15    xcb_screen_iterator_t iter;
    16  
    17    /* Open the connection to the X server. Use the DISPLAY environment variable */
    18    c = xcb_connect (NULL, &screen_nbr);
    19  
    20    /* Get the screen #screen_nbr */
    21    iter = xcb_setup_roots_iterator (xcb_get_setup (c));
    22    for (; iter.rem; --screen_nbr, xcb_screen_next (&iter))
    23      if (screen_nbr == 0) {
    24        screen = iter.data;
    25        break;
    26      }
    27  
    28    printf ("\n");
    29    printf ("Informations of screen %ld:\n", screen->root);
    30    printf ("  width.........: %d\n", screen->width_in_pixels);
    31    printf ("  height........: %d\n", screen->height_in_pixels);
    32    printf ("  white pixel...: %ld\n", screen->white_pixel);
    33    printf ("  black pixel...: %ld\n", screen->black_pixel);
    34    printf ("\n");
    35  
    36    return 0;
    37  }