The OpenD Programming Language

1 /**
2  * License:
3  * $(TABLE
4  *   $(TR $(TD cairoD wrapper/bindings)
5  *     $(TD $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)))
6  *   $(TR $(TD $(LINK2 http://cgit.freedesktop.org/cairo/tree/COPYING, _cairo))
7  *     $(TD $(LINK2 http://cgit.freedesktop.org/cairo/tree/COPYING-LGPL-2.1, LGPL 2.1) /
8  *     $(LINK2 http://cgit.freedesktop.org/cairo/plain/COPYING-MPL-1.1, MPL 1.1)))
9  * )
10  * Authors:
11  * $(TABLE
12  *   $(TR $(TD Johannes Pfau) $(TD cairoD))
13  *   $(TR $(TD $(LINK2 http://cairographics.org, _cairo team)) $(TD _cairo))
14  * )
15  */
16 /*
17  * Distributed under the Boost Software License, Version 1.0.
18  *    (See accompanying file LICENSE_1_0.txt or copy at
19  *          http://www.boost.org/LICENSE_1_0.txt)
20  */
21 module cairo.c.xlib;
22 
23 import cairo.c.cairo;
24 
25 static if(CAIRO_HAS_XLIB_SURFACE)
26 {
27     import x11.X, x11.Xlib;
28 
29     extern(C):
30     ///
31     cairo_surface_t *
32     cairo_xlib_surface_create (Display     *dpy,
33                    Drawable	drawable,
34                    Visual      *visual,
35                    int		width,
36                    int		height);
37     ///
38     cairo_surface_t *
39     cairo_xlib_surface_create_for_bitmap (Display  *dpy,
40                           Pixmap	bitmap,
41                           Screen	*screen,
42                           int	width,
43                           int	height);
44     ///
45     void
46     cairo_xlib_surface_set_size (cairo_surface_t *surface,
47                      int              width,
48                      int              height);
49     ///
50     void
51     cairo_xlib_surface_set_drawable (cairo_surface_t *surface,
52                      Drawable	  drawable,
53                      int              width,
54                      int              height);
55     ///
56     Display *
57     cairo_xlib_surface_get_display (cairo_surface_t *surface);
58 
59     ///
60     Drawable
61     cairo_xlib_surface_get_drawable (cairo_surface_t *surface);
62 
63     ///
64     Screen *
65     cairo_xlib_surface_get_screen (cairo_surface_t *surface);
66 
67     ///
68     Visual *
69     cairo_xlib_surface_get_visual (cairo_surface_t *surface);
70 
71     ///
72     int
73     cairo_xlib_surface_get_depth (cairo_surface_t *surface);
74 
75     ///
76     int
77     cairo_xlib_surface_get_width (cairo_surface_t *surface);
78 
79     ///
80     int
81     cairo_xlib_surface_get_height (cairo_surface_t *surface);
82 }