GLX Specific Support

GLX Specific Support — GLX specific API

Synopsis




Display*            clutter_glx_get_default_display     (void);
int                 clutter_glx_get_default_screen      (void);
Window              clutter_glx_get_root_window         (void);
XVisualInfo*        clutter_glx_get_stage_visual        (ClutterStage *stage);
Window              clutter_glx_get_stage_window        (ClutterStage *stage);
gboolean            clutter_glx_set_stage_foreign       (ClutterStage *stage,
                                                         Window xwindow);
void                clutter_glx_trap_x_errors           (void);
gint                clutter_glx_untrap_x_errors         (void);
ClutterGLXFilterReturn (*ClutterGLXFilterFunc)          (XEvent *xev,
                                                         ClutterEvent *cev,
                                                         gpointer *data);
enum                ClutterGLXFilterReturn;

Description

The GLX backend for Clutter provides some specific API, allowing integration with the Xlibs API for embedding and manipulating the stage window, or for trapping X errors.

The ClutterGLX API is available since Clutter 0.4

Details

clutter_glx_get_default_display ()

Display*            clutter_glx_get_default_display     (void);

FIXME

Returns : FIXME

Since 0.4


clutter_glx_get_default_screen ()

int                 clutter_glx_get_default_screen      (void);

Gets the pointer to the default X Screen object.

Returns : FIXME

Since 0.4


clutter_glx_get_root_window ()

Window              clutter_glx_get_root_window         (void);

FIXME

Returns : FIXME

Since 0.4


clutter_glx_get_stage_visual ()

XVisualInfo*        clutter_glx_get_stage_visual        (ClutterStage *stage);

Returns the stage XVisualInfo

stage : a ClutterStage
Returns : The XVisualInfo for the stage.

Since 0.4


clutter_glx_get_stage_window ()

Window              clutter_glx_get_stage_window        (ClutterStage *stage);

Gets the stages X Window.

stage : a ClutterStage
Returns : An XID for the stage window.

Since 0.4


clutter_glx_set_stage_foreign ()

gboolean            clutter_glx_set_stage_foreign       (ClutterStage *stage,
                                                         Window xwindow);

Target the ClutterStage to use an existing external X Window

stage : a ClutterStage
xwindow : an existing X Window id
Returns : TRUE if foreign window is valid

Since 0.4


clutter_glx_trap_x_errors ()

void                clutter_glx_trap_x_errors           (void);

FIXME

Since 0.4


clutter_glx_untrap_x_errors ()

gint                clutter_glx_untrap_x_errors         (void);

FIXME

Returns : FIXME

Since 0.4


ClutterGLXFilterFunc ()

ClutterGLXFilterReturn (*ClutterGLXFilterFunc)          (XEvent *xev,
                                                         ClutterEvent *cev,
                                                         gpointer *data);

xev :
cev :
data :
Returns :

enum ClutterGLXFilterReturn

typedef enum {
  CLUTTER_GLX_FILTER_CONTINUE,   /* Event not handled, continue processesing */
  CLUTTER_GLX_FILTER_TRANSLATE,  /* Native event translated into a Clutter 
                                    event and stored in the "event" structure 
                                    that was passed in */
  CLUTTER_GLX_FILTER_REMOVE      /* Terminate processing, removing event */
} ClutterGLXFilterReturn;