| 
    cairomm
    1.14.2
    
   | 
 
An XlibSurface provides a way to render to the X Window System using XLib. More...
#include <cairomm/xlib_surface.h>

Public Member Functions | |
| XlibSurface (cairo_surface_t*cobject, bool has_reference=false) | |
| Create a C++ wrapper for the C instance.  More... | |
| ~XlibSurface () override | |
| void | set_size (int width, int height) | 
| Informs cairo of the new size of the X Drawable underlying the surface.  More... | |
| void | set_drawable (Drawable drawable, int width, int height) | 
| Informs cairo of a new X Drawable underlying the surface.  More... | |
| Drawable | get_drawable () const | 
| gets the Drawable object associated with this surface  More... | |
| const Display* | get_display () const | 
| Get the X Display for the underlying X Drawable.  More... | |
| Display* | get_display () | 
| Get the X Display for the underlying X Drawable.  More... | |
| Screen* | get_screen () | 
| Get the X Screen for the underlying X Drawable.  More... | |
| const Screen* | get_screen () const | 
| Get the X Screen for the underlying X Drawable.  More... | |
| Visual* | get_visual () | 
| Get the X Visual for the underlying X Drawable.  More... | |
| const Visual* | get_visual () const | 
| Get the X Visual for the underlying X Drawable.  More... | |
| int | get_depth () const | 
| Get the number of bits used to represent each pixel value.  More... | |
| int | get_height () const | 
| Get the height in pixels of the X Drawable underlying the surface.  More... | |
| int | get_width () const | 
| Get the width in pixels of the X Drawable underlying the surface.  More... | |
| XRenderPictFormat* | get_xrender_format () const | 
| Gets the X Render picture format that  uses for rendering with the X Render extension.  More... | |
  Public Member Functions inherited from Cairo::Surface | |
| Surface (cairo_surface_t*cobject, bool has_reference=false) | |
| Create a C++ wrapper for the C instance.  More... | |
| Surface (const Surface&)=delete | |
| Surface& | operator= (const Surface&)=delete | 
| virtual | ~Surface () | 
| const unsigned char* | get_mime_data (const std::string& mime_type, unsigned long& length) | 
| Return mime data previously attached to surface using the specified mime type.  More... | |
| void | set_mime_data (const std::string& mime_type, unsigned char* data, unsigned long length, const SlotDestroy& slot_destroy) | 
| Attach an image in the format mime_type to surface.  More... | |
| void | unset_mime_data (const std::string& mime_type) | 
| Remove the data from a surface.  More... | |
| void | get_font_options (FontOptions& options) const | 
| Retrieves the default font rendering options for the surface.  More... | |
| void | finish () | 
| This function finishes the surface and drops all references to external resources.  More... | |
| void | flush () | 
| Do any pending drawing for the surface and also restore any temporary modifications cairo has made to the surface's state.  More... | |
| void | mark_dirty () | 
| Tells cairo to consider the data buffer dirty.  More... | |
| void | mark_dirty (int x, int y, int width, int height) | 
| Marks a rectangular area of the given surface dirty.  More... | |
| void | set_device_offset (double x_offset, double y_offset) | 
| Sets an offset that is added to the device coordinates determined by the CTM when drawing to surface.  More... | |
| void | get_device_offset (double& x_offset, double& y_offset) const | 
| Returns a previous device offset set by set_device_offset().  More... | |
| void | set_fallback_resolution (double x_pixels_per_inch, double y_pixels_per_inch) | 
| Set the horizontal and vertical resolution for image fallbacks.  More... | |
| void | get_fallback_resolution (double& x_pixels_per_inch, double& y_pixels_per_inch) const | 
| This function returns the previous fallback resolution set by set_fallback_resolution(), or default fallback resolution if never set.  More... | |
| SurfaceType | get_type () const | 
| Content | get_content () const | 
| This function returns the content type of surface which indicates whether the surface contains color and/or alpha information.  More... | |
| void | copy_page () | 
| Emits the current page for backends that support multiple pages, but doesn't clear it, so that the contents of the current page will be retained for the next page.  More... | |
| void | show_page () | 
| Emits and clears the current page for backends that support multiple pages.  More... | |
| bool | has_show_text_glyphs () const | 
| Returns whether the surface supports sophisticated Context::show_text_glyphs() operations.  More... | |
| void | write_to_png (const std::string& filename) | 
| Writes the contents of surface to a new file filename as a PNG image.  More... | |
| void | write_to_png_stream (const SlotWriteFunc& write_func) | 
| Writes the Surface to the write function.  More... | |
| void | write_to_png (cairo_write_func_t write_func, void* closure) | 
| RefPtr< Device > | get_device () | 
| This function returns the device for a surface.  More... | |
| cobject* | cobj () | 
| Provides acces to the underlying C cairo surface.  More... | |
| const cobject* | cobj () const | 
| Provides acces to the underlying C cairo surface.  More... | |
Static Public Member Functions | |
| static RefPtr< XlibSurface > | create (Display* dpy, Drawable drawable, Visual* visual, int width, int height) | 
| Creates an Xlib surface that draws to the given drawable.  More... | |
| static RefPtr< XlibSurface > | create (Display* dpy, Pixmap bitmap, Screen* screen, int width, int height) | 
| Creates an Xlib surface that draws to the given bitmap.  More... | |
| 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.  More... | |
  Static Public Member Functions inherited from Cairo::Surface | |
| static RefPtr< Surface > | create (const RefPtr< Surface > other, Content content, int width, int height) | 
| Create a new surface that is as compatible as possible with an existing surface.  More... | |
| static RefPtr< Surface > | create (const RefPtr< Surface >& target, double x, double y, double width, double height) | 
| Create a new surface that is a rectangle within the target surface.  More... | |
Additional Inherited Members | |
  Public Types inherited from Cairo::Surface | |
| typedef sigc::slot< ErrorStatus, const unsigned char*, unsigned int > | SlotWriteFunc | 
For example:  ErrorStatus my_write_func(unsigned char* data, unsigned int length);   More... | |
| typedef sigc::slot< ErrorStatus, unsigned char*, unsigned int > | SlotReadFunc | 
| This is the type of function which is called when a backend needs to read data from an input stream.  More... | |
| typedef sigc::slot< void > | SlotDestroy | 
| For instance, void on_destroy();.  More... | |
| typedef cairo_surface_t | cobject | 
| The underlying C cairo surface type.  More... | |
  Protected Attributes inherited from Cairo::Surface | |
| cobject* | m_cobject | 
| The underlying C cairo surface type that is wrapped by this Surface.  More... | |
An XlibSurface provides a way to render to the X Window System using XLib.
If you want to draw to the screen within an application that uses the X Window system, you should use this Surface type.
      
  | 
  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. | 
      
  | 
  override | 
      
  | 
  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 | 
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 | 
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.
| const Display* Cairo::XlibSurface::get_display | ( | ) | const | 
Get the X Display for the underlying X Drawable.
| Display* Cairo::XlibSurface::get_display | ( | ) | 
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.
| Screen* Cairo::XlibSurface::get_screen | ( | ) | 
Get the X Screen for the underlying X Drawable.
| const Screen* Cairo::XlibSurface::get_screen | ( | ) | const | 
Get the X Screen for the underlying X Drawable.
| Visual* Cairo::XlibSurface::get_visual | ( | ) | 
Get the X Visual for the underlying X Drawable.
| const Visual* Cairo::XlibSurface::get_visual | ( | ) | const | 
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.8.11