
If you want to draw to the screen within an application that uses the X Window system, you should use this Surface type.
Public Member Functions | |
| int | get_depth () const |
| Get the number of bits used to represent each pixel value. | |
| Display * | get_display () |
| Get the X Display for the underlying X Drawable. | |
| const Display * | get_display () const |
| Get the X Display for the underlying X Drawable. | |
| Drawable | get_drawable () const |
| gets the Drawable object associated with this surface | |
| int | get_height () const |
| Get the height in pixels of the X Drawable underlying the surface. | |
| const Screen * | get_screen () const |
| Get the X Screen for the underlying X Drawable. | |
| Screen * | get_screen () |
| Get the X Screen for the underlying X Drawable. | |
| const Visual * | get_visual () const |
| Get the X Visual for the underlying X Drawable. | |
| Visual * | get_visual () |
| Get the X Visual for the underlying X Drawable. | |
| int | get_width () const |
| Get the width in pixels of the X Drawable underlying the surface. | |
| XRenderPictFormat * | get_xrender_format () const |
| Gets the X Render picture format that uses for rendering with the X Render extension. | |
| void | set_drawable (Drawable drawable, int width, int height) |
| Informs cairo of a new X Drawable underlying the surface. | |
| void | set_size (int width, int height) |
| Informs cairo of the new size of the X Drawable underlying the surface. | |
| XlibSurface (cairo_surface_t *cobject, bool has_reference=false) | |
| Create a C++ wrapper for the C instance. | |
| virtual | ~XlibSurface () |
Static Public Member Functions | |
| static RefPtr < XlibSurface > | create (Display *dpy, Pixmap bitmap, Screen *screen, int width, int height) |
| Creates an Xlib surface that draws to the given bitmap. | |
| static RefPtr < XlibSurface > | create (Display *dpy, Drawable drawable, Visual *visual, int width, int height) |
| Creates an Xlib surface that draws to the given drawable. | |
| static Cairo::RefPtr < Cairo::XlibSurface > | create_with_xrender_format (Display *dpy, Drawable drawable, Screen *screen, XRenderPictFormat *format, int width, int height) |
| Creates an Xlib surface that draws to the given drawable. | |
| Cairo::XlibSurface::XlibSurface | ( | cairo_surface_t * | cobject, | |
| bool | has_reference = false | |||
| ) | [explicit] |
Create a C++ wrapper for the C instance.
This C++ instance should then be given to a RefPtr.
| cobject | The C instance. | |
| has_reference | whether we already have a reference. Otherwise, the constructor will take an extra reference. |
| virtual Cairo::XlibSurface::~XlibSurface | ( | ) | [virtual] |
| static RefPtr<XlibSurface> Cairo::XlibSurface::create | ( | Display * | dpy, | |
| Pixmap | bitmap, | |||
| Screen * | screen, | |||
| int | width, | |||
| int | height | |||
| ) | [static] |
Creates an Xlib surface that draws to the given bitmap.
This will be drawn to as a CAIRO_FORMAT_A1 object.
| dpy | an X Display | |
| bitmap | an X Drawable, (a depth-1 Pixmap) | |
| screen | the X Screen associated with bitmap | |
| width | the current width of bitmap. | |
| height | the current height of bitmap. |
| static RefPtr<XlibSurface> Cairo::XlibSurface::create | ( | Display * | dpy, | |
| Drawable | drawable, | |||
| Visual * | visual, | |||
| int | width, | |||
| int | height | |||
| ) | [static] |
Creates an Xlib surface that draws to the given drawable.
The way that colors are represented in the drawable is specified by the provided visual.
| dpy | an X Display | |
| drawable | an X Drawable, (a Pixmap or a Window) | |
| visual | the visual to use for drawing to drawable. The depth of the visual must match the depth of the drawable. Currently, only TrueColor visuals are fully supported. | |
| width | the current width of drawable. | |
| height | the current height of drawable. |
| static Cairo::RefPtr<Cairo::XlibSurface> Cairo::XlibSurface::create_with_xrender_format | ( | Display * | dpy, | |
| Drawable | drawable, | |||
| Screen * | screen, | |||
| XRenderPictFormat * | format, | |||
| int | width, | |||
| int | height | |||
| ) | [static] |
Creates an Xlib surface that draws to the given drawable.
The way that colors are represented in the drawable is specified by the provided picture format.
Note: If is a Window, then the function set_size() must be called whenever the size of the window changes.
| dpy | an X Display | |
| drawable | an X Drawable, (a Pixmap or a Window) | |
| screen | the X Screen associated with | |
| format | the picture format to use for drawing to . The depth of must match the depth of the drawable. | |
| width | the current width of . | |
| height | the current height of . |
| int Cairo::XlibSurface::get_depth | ( | ) | const |
Get the number of bits used to represent each pixel value.
| Display* Cairo::XlibSurface::get_display | ( | ) |
Get the X Display for the underlying X Drawable.
| const Display* Cairo::XlibSurface::get_display | ( | ) | const |
Get the X Display for the underlying X Drawable.
| Drawable Cairo::XlibSurface::get_drawable | ( | ) | const |
gets the Drawable object associated with this surface
| int Cairo::XlibSurface::get_height | ( | ) | const |
Get the height in pixels of the X Drawable underlying the surface.
| const Screen* Cairo::XlibSurface::get_screen | ( | ) | const |
Get the X Screen for the underlying X Drawable.
| Screen* Cairo::XlibSurface::get_screen | ( | ) |
Get the X Screen for the underlying X Drawable.
| const Visual* Cairo::XlibSurface::get_visual | ( | ) | const |
Get the X Visual for the underlying X Drawable.
| Visual* Cairo::XlibSurface::get_visual | ( | ) |
Get the X Visual for the underlying X Drawable.
| int Cairo::XlibSurface::get_width | ( | ) | const |
Get the width in pixels of the X Drawable underlying the surface.
| XRenderPictFormat* Cairo::XlibSurface::get_xrender_format | ( | ) | const |
Gets the X Render picture format that uses for rendering with the X Render extension.
If the surface was created by cairo_xlib_surface_create_with_xrender_format() originally, the return value is the format passed to that constructor.
Return value: the XRenderPictFormat* associated with , or NULL if the surface is not an xlib surface or if the X Render extension is not available.
Since: 1.6
| void Cairo::XlibSurface::set_drawable | ( | Drawable | drawable, | |
| int | width, | |||
| int | height | |||
| ) |
Informs cairo of a new X Drawable underlying the surface.
The drawable must match the display, screen and format of the existing drawable or the application will get X protocol errors and will probably terminate. No checks are done by this function to ensure this compatibility.
| drawable | the new drawable for the surface | |
| width | the width of the new drawable | |
| height | the height of the new drawable |
| void Cairo::XlibSurface::set_size | ( | int | width, | |
| int | height | |||
| ) |
Informs cairo of the new size of the X Drawable underlying the surface.
For a surface created for a Window (rather than a Pixmap), this function must be called each time the size of the window changes. (For a subwindow, you are normally resizing the window yourself, but for a toplevel window, it is necessary to listen for ConfigureNotify events.)
A Pixmap can never change size, so it is never necessary to call this function on a surface created for a Pixmap.
| width | the new width of the surface | |
| height | the new height of the surface |
1.5.3