ClutterX11TexturePixmap

ClutterX11TexturePixmap — A texture which displays the content of an X Pixmap.

Synopsis

struct              ClutterX11TexturePixmap;
struct              ClutterX11TexturePixmapClass;
ClutterActor *      clutter_x11_texture_pixmap_new      (void);
ClutterActor *      clutter_x11_texture_pixmap_new_with_pixmap
                                                        (Pixmap pixmap);
ClutterActor *      clutter_x11_texture_pixmap_new_with_window
                                                        (Window window);
void                clutter_x11_texture_pixmap_set_pixmap
                                                        (ClutterX11TexturePixmap *texture,
                                                         Pixmap pixmap);
void                clutter_x11_texture_pixmap_set_window
                                                        (ClutterX11TexturePixmap *texture,
                                                         Window window,
                                                         gboolean automatic);
void                clutter_x11_texture_pixmap_sync_window
                                                        (ClutterX11TexturePixmap *texture);
void                clutter_x11_texture_pixmap_update_area
                                                        (ClutterX11TexturePixmap *texture,
                                                         gint x,
                                                         gint y,
                                                         gint width,
                                                         gint height);
void                clutter_x11_texture_pixmap_set_automatic
                                                        (ClutterX11TexturePixmap *texture,
                                                         gboolean setting);

Description

ClutterX11TexturePixmap is a class for displaying the content of an X Pixmap as a ClutterActor. Used together with the X Composite extension, it allows to display the content of X Windows inside Clutter.

The class uses the GLX_EXT_texture_from_pixmap OpenGL extension (http://people.freedesktop.org/~davidr/GLX_EXT_texture_from_pixmap.txt) if available

Details

struct ClutterX11TexturePixmap

struct ClutterX11TexturePixmap {
};

The ClutterX11TexturePixmap structure contains only private data

Since 0.8


struct ClutterX11TexturePixmapClass

struct ClutterX11TexturePixmapClass {
  void (* update_area) (ClutterX11TexturePixmap *texture,
                        gint                     x,
                        gint                     y,
                        gint                     width,
                        gint                     height);
};

The ClutterX11TexturePixmapClass structure contains only private data

update_area ()

virtual function for updating the area of the texture

Since 0.8


clutter_x11_texture_pixmap_new ()

ClutterActor *      clutter_x11_texture_pixmap_new      (void);

Creates a new ClutterX11TexturePixmap which can be used to display the contents of an X11 Pixmap inside a Clutter scene graph

Returns :

A new ClutterX11TexturePixmap

Since 0.8


clutter_x11_texture_pixmap_new_with_pixmap ()

ClutterActor *      clutter_x11_texture_pixmap_new_with_pixmap
                                                        (Pixmap pixmap);

Creates a new ClutterX11TexturePixmap for pixmap

pixmap :

the X Pixmap to which this texture should be bound

Returns :

A new ClutterX11TexturePixmap bound to the given X Pixmap

Since 0.8


clutter_x11_texture_pixmap_new_with_window ()

ClutterActor *      clutter_x11_texture_pixmap_new_with_window
                                                        (Window window);

Creates a new ClutterX11TexturePixmap for window

window :

the X window to which this texture should be bound

Returns :

A new ClutterX11TexturePixmap bound to the given X window.

Since 0.8


clutter_x11_texture_pixmap_set_pixmap ()

void                clutter_x11_texture_pixmap_set_pixmap
                                                        (ClutterX11TexturePixmap *texture,
                                                         Pixmap pixmap);

Sets the X Pixmap to which the texture should be bound.

texture :

the texture to bind

pixmap :

the X Pixmap to which the texture should be bound

Since 0.8


clutter_x11_texture_pixmap_set_window ()

void                clutter_x11_texture_pixmap_set_window
                                                        (ClutterX11TexturePixmap *texture,
                                                         Window window,
                                                         gboolean automatic);

Sets up a suitable pixmap for the window, using the composite and damage extensions if possible, and then calls clutter_x11_texture_pixmap_set_pixmap().

If you want to display a window in a ClutterTexture, you probably want this function, or its older sister, clutter_glx_texture_pixmap_set_window().

This function has no effect unless the XComposite extension is available.

texture :

the texture to bind

window :

the X window to which the texture should be bound

automatic :

TRUE for automatic window updates, FALSE for manual.

Since 0.8


clutter_x11_texture_pixmap_sync_window ()

void                clutter_x11_texture_pixmap_sync_window
                                                        (ClutterX11TexturePixmap *texture);

Resets the texture's pixmap from its window, perhaps in response to the pixmap's invalidation as the window changed size.

texture :

the texture to bind

Since 0.8


clutter_x11_texture_pixmap_update_area ()

void                clutter_x11_texture_pixmap_update_area
                                                        (ClutterX11TexturePixmap *texture,
                                                         gint x,
                                                         gint y,
                                                         gint width,
                                                         gint height);

Performs the actual binding of texture to the current content of the pixmap. Can be called to update the texture if the pixmap content has changed.

texture :

The texture whose content shall be updated.

x :

the X coordinate of the area to update

y :

the Y coordinate of the area to update

width :

the width of the area to update

height :

the height of the area to update

Since 0.8


clutter_x11_texture_pixmap_set_automatic ()

void                clutter_x11_texture_pixmap_set_automatic
                                                        (ClutterX11TexturePixmap *texture,
                                                         gboolean setting);

Enables or disables the automatic updates ot texture in case the backing pixmap or window is damaged

texture :

a ClutterX11TexturePixmap

setting :

TRUE to enable automatic updates

Since 0.8