1
0
Fork 0

Merge branch 'master' into msvc-support-master

This commit is contained in:
Chun-wei Fan 2011-10-12 14:37:19 +08:00
commit bd991e625b
77 changed files with 1993 additions and 1458 deletions

View file

@ -16,8 +16,8 @@ INCLUDES = \
-I$(top_srcdir)/clutter \ -I$(top_srcdir)/clutter \
-I$(top_srcdir)/clutter/$(CLUTTER_WINSYS) \ -I$(top_srcdir)/clutter/$(CLUTTER_WINSYS) \
-I$(top_srcdir)/clutter/$(CLUTTER_WINSYS_BASE) \ -I$(top_srcdir)/clutter/$(CLUTTER_WINSYS_BASE) \
-I$(top_srcdir)/clutter/deprecated \
-I$(top_srcdir)/clutter/cally \ -I$(top_srcdir)/clutter/cally \
-I$(top_srcdir)/clutter/evdev \
-I$(top_builddir) \ -I$(top_builddir) \
-I$(top_builddir)/clutter \ -I$(top_builddir)/clutter \
$(NULL) $(NULL)
@ -27,6 +27,7 @@ AM_CPPFLAGS = \
-DCLUTTER_LIBDIR=\""$(libdir)"\" \ -DCLUTTER_LIBDIR=\""$(libdir)"\" \
-DCLUTTER_DATADIR=\""$(datadir)"\" \ -DCLUTTER_DATADIR=\""$(datadir)"\" \
-DCLUTTER_LOCALEDIR=\""$(localedir)"\" \ -DCLUTTER_LOCALEDIR=\""$(localedir)"\" \
-DCLUTTER_SYSCONFDIR=\""$(sysconfdir)"\" \
-DCLUTTER_COMPILATION=1 \ -DCLUTTER_COMPILATION=1 \
-DCOGL_ENABLE_EXPERIMENTAL_API \ -DCOGL_ENABLE_EXPERIMENTAL_API \
-DG_LOG_DOMAIN=\"Clutter\" \ -DG_LOG_DOMAIN=\"Clutter\" \
@ -43,6 +44,7 @@ INTROSPECTION_GIRS =
# the base include path for headers # the base include path for headers
clutter_base_includedir = $(includedir)/clutter-$(CLUTTER_API_VERSION) clutter_base_includedir = $(includedir)/clutter-$(CLUTTER_API_VERSION)
clutter_includedir = $(clutter_base_includedir)/clutter clutter_includedir = $(clutter_base_includedir)/clutter
clutter_deprecateddir = $(clutter_base_includedir)/clutter/deprecated
# pkg-config files # pkg-config files
pc_files = pc_files =
@ -58,13 +60,6 @@ source_h = \
$(srcdir)/clutter-animation.h \ $(srcdir)/clutter-animation.h \
$(srcdir)/clutter-animator.h \ $(srcdir)/clutter-animator.h \
$(srcdir)/clutter-backend.h \ $(srcdir)/clutter-backend.h \
$(srcdir)/clutter-behaviour.h \
$(srcdir)/clutter-behaviour-depth.h \
$(srcdir)/clutter-behaviour-ellipse.h \
$(srcdir)/clutter-behaviour-opacity.h \
$(srcdir)/clutter-behaviour-path.h \
$(srcdir)/clutter-behaviour-rotate.h \
$(srcdir)/clutter-behaviour-scale.h \
$(srcdir)/clutter-bind-constraint.h \ $(srcdir)/clutter-bind-constraint.h \
$(srcdir)/clutter-binding-pool.h \ $(srcdir)/clutter-binding-pool.h \
$(srcdir)/clutter-bin-layout.h \ $(srcdir)/clutter-bin-layout.h \
@ -87,13 +82,12 @@ source_h = \
$(srcdir)/clutter-drag-action.h \ $(srcdir)/clutter-drag-action.h \
$(srcdir)/clutter-drop-action.h \ $(srcdir)/clutter-drop-action.h \
$(srcdir)/clutter-effect.h \ $(srcdir)/clutter-effect.h \
$(srcdir)/clutter-enums.h \
$(srcdir)/clutter-event.h \ $(srcdir)/clutter-event.h \
$(srcdir)/clutter-feature.h \ $(srcdir)/clutter-feature.h \
$(srcdir)/clutter-fixed.h \
$(srcdir)/clutter-fixed-layout.h \ $(srcdir)/clutter-fixed-layout.h \
$(srcdir)/clutter-flow-layout.h \ $(srcdir)/clutter-flow-layout.h \
$(srcdir)/clutter-frame-source.h \ $(srcdir)/clutter-gesture-action.h \
$(srcdir)/clutter-gesture-action.h \
$(srcdir)/clutter-group.h \ $(srcdir)/clutter-group.h \
$(srcdir)/clutter-input-device.h \ $(srcdir)/clutter-input-device.h \
$(srcdir)/clutter-interval.h \ $(srcdir)/clutter-interval.h \
@ -110,11 +104,9 @@ source_h = \
$(srcdir)/clutter-path-constraint.h \ $(srcdir)/clutter-path-constraint.h \
$(srcdir)/clutter-path.h \ $(srcdir)/clutter-path.h \
$(srcdir)/clutter-rectangle.h \ $(srcdir)/clutter-rectangle.h \
$(srcdir)/clutter-score.h \
$(srcdir)/clutter-script.h \ $(srcdir)/clutter-script.h \
$(srcdir)/clutter-scriptable.h \ $(srcdir)/clutter-scriptable.h \
$(srcdir)/clutter-settings.h \ $(srcdir)/clutter-settings.h \
$(srcdir)/clutter-shader.h \
$(srcdir)/clutter-shader-effect.h \ $(srcdir)/clutter-shader-effect.h \
$(srcdir)/clutter-shader-types.h \ $(srcdir)/clutter-shader-types.h \
$(srcdir)/clutter-swipe-action.h \ $(srcdir)/clutter-swipe-action.h \
@ -127,7 +119,6 @@ source_h = \
$(srcdir)/clutter-texture.h \ $(srcdir)/clutter-texture.h \
$(srcdir)/clutter-text.h \ $(srcdir)/clutter-text.h \
$(srcdir)/clutter-timeline.h \ $(srcdir)/clutter-timeline.h \
$(srcdir)/clutter-timeout-pool.h \
$(srcdir)/clutter-types.h \ $(srcdir)/clutter-types.h \
$(srcdir)/clutter-units.h \ $(srcdir)/clutter-units.h \
$(srcdir)/clutter-util.h \ $(srcdir)/clutter-util.h \
@ -144,13 +135,6 @@ source_c = \
$(srcdir)/clutter-animation.c \ $(srcdir)/clutter-animation.c \
$(srcdir)/clutter-animator.c \ $(srcdir)/clutter-animator.c \
$(srcdir)/clutter-backend.c \ $(srcdir)/clutter-backend.c \
$(srcdir)/clutter-behaviour.c \
$(srcdir)/clutter-behaviour-depth.c \
$(srcdir)/clutter-behaviour-ellipse.c \
$(srcdir)/clutter-behaviour-opacity.c \
$(srcdir)/clutter-behaviour-path.c \
$(srcdir)/clutter-behaviour-rotate.c \
$(srcdir)/clutter-behaviour-scale.c \
$(srcdir)/clutter-bezier.c \ $(srcdir)/clutter-bezier.c \
$(srcdir)/clutter-bind-constraint.c \ $(srcdir)/clutter-bind-constraint.c \
$(srcdir)/clutter-binding-pool.c \ $(srcdir)/clutter-binding-pool.c \
@ -174,12 +158,10 @@ source_c = \
$(srcdir)/clutter-effect.c \ $(srcdir)/clutter-effect.c \
$(srcdir)/clutter-event.c \ $(srcdir)/clutter-event.c \
$(srcdir)/clutter-feature.c \ $(srcdir)/clutter-feature.c \
$(srcdir)/clutter-fixed.c \
$(srcdir)/clutter-fixed-layout.c \ $(srcdir)/clutter-fixed-layout.c \
$(srcdir)/clutter-flatten-effect.c \ $(srcdir)/clutter-flatten-effect.c \
$(srcdir)/clutter-flow-layout.c \ $(srcdir)/clutter-flow-layout.c \
$(srcdir)/clutter-frame-source.c \ $(srcdir)/clutter-gesture-action.c \
$(srcdir)/clutter-gesture-action.c \
$(srcdir)/clutter-group.c \ $(srcdir)/clutter-group.c \
$(srcdir)/clutter-input-device.c \ $(srcdir)/clutter-input-device.c \
$(srcdir)/clutter-interval.c \ $(srcdir)/clutter-interval.c \
@ -196,12 +178,10 @@ source_c = \
$(srcdir)/clutter-path-constraint.c \ $(srcdir)/clutter-path-constraint.c \
$(srcdir)/clutter-path.c \ $(srcdir)/clutter-path.c \
$(srcdir)/clutter-rectangle.c \ $(srcdir)/clutter-rectangle.c \
$(srcdir)/clutter-score.c \
$(srcdir)/clutter-script.c \ $(srcdir)/clutter-script.c \
$(srcdir)/clutter-script-parser.c \ $(srcdir)/clutter-script-parser.c \
$(srcdir)/clutter-scriptable.c \ $(srcdir)/clutter-scriptable.c \
$(srcdir)/clutter-settings.c \ $(srcdir)/clutter-settings.c \
$(srcdir)/clutter-shader.c \
$(srcdir)/clutter-shader-effect.c \ $(srcdir)/clutter-shader-effect.c \
$(srcdir)/clutter-shader-types.c \ $(srcdir)/clutter-shader-types.c \
$(srcdir)/clutter-swipe-action.c \ $(srcdir)/clutter-swipe-action.c \
@ -214,7 +194,6 @@ source_c = \
$(srcdir)/clutter-texture.c \ $(srcdir)/clutter-texture.c \
$(srcdir)/clutter-text.c \ $(srcdir)/clutter-text.c \
$(srcdir)/clutter-timeline.c \ $(srcdir)/clutter-timeline.c \
$(srcdir)/clutter-timeout-pool.c \
$(srcdir)/clutter-units.c \ $(srcdir)/clutter-units.c \
$(srcdir)/clutter-util.c \ $(srcdir)/clutter-util.c \
$(srcdir)/clutter-paint-volume.c \ $(srcdir)/clutter-paint-volume.c \
@ -240,9 +219,9 @@ source_h_priv = \
$(srcdir)/clutter-private.h \ $(srcdir)/clutter-private.h \
$(srcdir)/clutter-profile.h \ $(srcdir)/clutter-profile.h \
$(srcdir)/clutter-script-private.h \ $(srcdir)/clutter-script-private.h \
$(srcdir)/clutter-settings-private.h \
$(srcdir)/clutter-stage-manager-private.h \ $(srcdir)/clutter-stage-manager-private.h \
$(srcdir)/clutter-stage-private.h \ $(srcdir)/clutter-stage-private.h \
$(srcdir)/clutter-timeout-interval.h \
$(NULL) $(NULL)
# private source code; these should not be introspected # private source code; these should not be introspected
@ -250,7 +229,48 @@ source_c_priv = \
$(srcdir)/clutter-event-translator.c \ $(srcdir)/clutter-event-translator.c \
$(srcdir)/clutter-id-pool.c \ $(srcdir)/clutter-id-pool.c \
$(srcdir)/clutter-profile.c \ $(srcdir)/clutter-profile.c \
$(srcdir)/clutter-timeout-interval.c \ $(NULL)
# deprecated installed headers
deprecated_h = \
$(srcdir)/deprecated/clutter-behaviour.h \
$(srcdir)/deprecated/clutter-behaviour-depth.h \
$(srcdir)/deprecated/clutter-behaviour-ellipse.h \
$(srcdir)/deprecated/clutter-behaviour-opacity.h \
$(srcdir)/deprecated/clutter-behaviour-path.h \
$(srcdir)/deprecated/clutter-behaviour-rotate.h \
$(srcdir)/deprecated/clutter-behaviour-scale.h \
$(srcdir)/deprecated/clutter-fixed.h \
$(srcdir)/deprecated/clutter-frame-source.h \
$(srcdir)/deprecated/clutter-timeout-pool.h \
$(srcdir)/deprecated/clutter-score.h \
$(srcdir)/deprecated/clutter-shader.h \
$(NULL)
# deprecated source code
deprecated_c = \
$(srcdir)/deprecated/clutter-behaviour.c \
$(srcdir)/deprecated/clutter-behaviour-depth.c \
$(srcdir)/deprecated/clutter-behaviour-ellipse.c \
$(srcdir)/deprecated/clutter-behaviour-opacity.c \
$(srcdir)/deprecated/clutter-behaviour-path.c \
$(srcdir)/deprecated/clutter-behaviour-rotate.c \
$(srcdir)/deprecated/clutter-behaviour-scale.c \
$(srcdir)/deprecated/clutter-fixed.c \
$(srcdir)/deprecated/clutter-frame-source.c \
$(srcdir)/deprecated/clutter-timeout-pool.c \
$(srcdir)/deprecated/clutter-score.c \
$(srcdir)/deprecated/clutter-shader.c \
$(NULL)
# deprecated private headers; these should not be installed
deprecated_h_priv = \
$(srcdir)/deprecated/clutter-timeout-interval.h \
$(NULL)
# deprecated private source code; these should not be introspected
deprecated_c_priv = \
$(srcdir)/deprecated/clutter-timeout-interval.c \
$(NULL) $(NULL)
# built sources # built sources
@ -610,6 +630,8 @@ nodist_clutter_include_HEADERS = \
$(top_builddir)/clutter/clutter-version.h \ $(top_builddir)/clutter/clutter-version.h \
$(built_source_h) $(built_source_h)
clutter_deprecated_HEADERS = $(deprecated_h)
lib_LTLIBRARIES += libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la lib_LTLIBRARIES += libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la
libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_LIBADD = \ libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_LIBADD = \
@ -629,6 +651,10 @@ libclutter_@CLUTTER_SONAME_INFIX@_@CLUTTER_API_VERSION@_la_SOURCES = \
$(source_h) \ $(source_h) \
$(source_c_priv) \ $(source_c_priv) \
$(source_h_priv) \ $(source_h_priv) \
$(deprecated_c) \
$(deprecated_h) \
$(deprecated_c_priv) \
$(deprecated_h_priv) \
$(cally_sources_c) \ $(cally_sources_c) \
$(cally_sources_h) \ $(cally_sources_h) \
$(cally_sources_private) \ $(cally_sources_private) \
@ -700,7 +726,13 @@ Clutter-@CLUTTER_API_VERSION@.gir: libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_AP
Clutter_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Clutter Clutter_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Clutter
Clutter_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@ Clutter_@CLUTTER_API_VERSION_AM@_gir_VERSION = @CLUTTER_API_VERSION@
Clutter_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la Clutter_@CLUTTER_API_VERSION_AM@_gir_LIBS = libclutter-@CLUTTER_SONAME_INFIX@-@CLUTTER_API_VERSION@.la
Clutter_@CLUTTER_API_VERSION_AM@_gir_FILES = $(clutter_include_HEADERS) $(nodist_clutter_include_HEADERS) $(source_c) $(built_source_c) Clutter_@CLUTTER_API_VERSION_AM@_gir_FILES = \
$(clutter_include_HEADERS) \
$(clutter_deprecated_HEADERS) \
$(nodist_clutter_include_HEADERS) \
$(source_c) \
$(deprecated_c) \
$(built_source_c)
Clutter_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS) -UCLUTTER_DISABLE_DEPRECATED Clutter_@CLUTTER_API_VERSION_AM@_gir_CFLAGS = $(INCLUDES) $(CLUTTER_CFLAGS) $(AM_CPPFLAGS) -UCLUTTER_DISABLE_DEPRECATED
Clutter_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = GL-1.0 GObject-2.0 cairo-1.0 Cogl-1.0 CoglPango-1.0 Atk-1.0 Json-1.0 Clutter_@CLUTTER_API_VERSION_AM@_gir_INCLUDES = GL-1.0 GObject-2.0 cairo-1.0 Cogl-1.0 CoglPango-1.0 Atk-1.0 Json-1.0
Clutter_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \ Clutter_@CLUTTER_API_VERSION_AM@_gir_SCANNERFLAGS = \

View file

@ -92,66 +92,6 @@ typedef void (*ClutterCallback) (ClutterActor *actor,
*/ */
#define CLUTTER_CALLBACK(f) ((ClutterCallback) (f)) #define CLUTTER_CALLBACK(f) ((ClutterCallback) (f))
/**
* ClutterActorFlags:
* @CLUTTER_ACTOR_MAPPED: the actor will be painted (is visible, and inside
* a toplevel, and all parents visible)
* @CLUTTER_ACTOR_REALIZED: the resources associated to the actor have been
* allocated
* @CLUTTER_ACTOR_REACTIVE: the actor 'reacts' to mouse events emmitting event
* signals
* @CLUTTER_ACTOR_VISIBLE: the actor has been shown by the application program
* @CLUTTER_ACTOR_NO_LAYOUT: the actor provides an explicit layout management
* policy for its children; this flag will prevent Clutter from automatic
* queueing of relayout and will defer all layouting to the actor itself
*
* Flags used to signal the state of an actor.
*/
typedef enum
{
CLUTTER_ACTOR_MAPPED = 1 << 1,
CLUTTER_ACTOR_REALIZED = 1 << 2,
CLUTTER_ACTOR_REACTIVE = 1 << 3,
CLUTTER_ACTOR_VISIBLE = 1 << 4,
CLUTTER_ACTOR_NO_LAYOUT = 1 << 5
} ClutterActorFlags;
/**
* ClutterOffscreenRedirect:
* @CLUTTER_OFFSCREEN_REDIRECT_AUTOMATIC_FOR_OPACITY: Only redirect
* the actor if it is semi-transparent and its has_overlaps()
* virtual returns %TRUE. This is the default.
* @CLUTTER_OFFSCREEN_REDIRECT_ALWAYS: Always redirect the actor to an
* offscreen buffer even if it is fully opaque.
*
* Possible flags to pass to clutter_actor_set_offscreen_redirect().
*
* Since: 1.8
*/
typedef enum
{
CLUTTER_OFFSCREEN_REDIRECT_AUTOMATIC_FOR_OPACITY = 1<<0,
CLUTTER_OFFSCREEN_REDIRECT_ALWAYS = 1<<1
} ClutterOffscreenRedirect;
/**
* ClutterAllocationFlags:
* @CLUTTER_ALLOCATION_NONE: No flag set
* @CLUTTER_ABSOLUTE_ORIGIN_CHANGED: Whether the absolute origin of the
* actor has changed; this implies that any ancestor of the actor has
* been moved
*
* Flags passed to the #ClutterActor::allocate() virtual function and
* to the clutter_actor_allocate() function
*
* Since: 1.0
*/
typedef enum
{
CLUTTER_ALLOCATION_NONE = 0,
CLUTTER_ABSOLUTE_ORIGIN_CHANGED = 1 << 1
} ClutterAllocationFlags;
/** /**
* ClutterActor: * ClutterActor:
* @flags: #ClutterActorFlags * @flags: #ClutterActorFlags
@ -458,6 +398,7 @@ void clutter_actor_set_name (ClutterActor
const gchar * clutter_actor_get_name (ClutterActor *self); const gchar * clutter_actor_get_name (ClutterActor *self);
#ifndef CLUTTER_DISABLE_DEPRECATED #ifndef CLUTTER_DISABLE_DEPRECATED
CLUTTER_DEPRECATED
guint32 clutter_actor_get_gid (ClutterActor *self); guint32 clutter_actor_get_gid (ClutterActor *self);
#endif #endif
@ -530,19 +471,29 @@ gboolean clutter_actor_event (ClutterActor
gboolean capture); gboolean capture);
#ifndef CLUTTER_DISABLE_DEPRECATED #ifndef CLUTTER_DISABLE_DEPRECATED
CLUTTER_DEPRECATED
ClutterActor * clutter_get_actor_by_gid (guint32 id_); ClutterActor * clutter_get_actor_by_gid (guint32 id_);
#endif #endif
#if !defined(CLUTTER_DISABLE_DEPRECATED) || defined(CLUTTER_COMPILATION) #if !defined(CLUTTER_DISABLE_DEPRECATED) || defined(CLUTTER_COMPILATION)
CLUTTER_DEPRECATED_FOR(clutter_actor_add_effect)
gboolean clutter_actor_set_shader (ClutterActor *self, gboolean clutter_actor_set_shader (ClutterActor *self,
ClutterShader *shader); ClutterShader *shader);
CLUTTER_DEPRECATED_FOR(clutter_actor_get_effect)
ClutterShader * clutter_actor_get_shader (ClutterActor *self); ClutterShader * clutter_actor_get_shader (ClutterActor *self);
CLUTTER_DEPRECATED_FOR(clutter_shader_effect_set_uniform_value)
void clutter_actor_set_shader_param (ClutterActor *self, void clutter_actor_set_shader_param (ClutterActor *self,
const gchar *param, const gchar *param,
const GValue *value); const GValue *value);
CLUTTER_DEPRECATED_FOR(clutter_shader_effect_set_uniform)
void clutter_actor_set_shader_param_int (ClutterActor *self, void clutter_actor_set_shader_param_int (ClutterActor *self,
const gchar *param, const gchar *param,
gint value); gint value);
CLUTTER_DEPRECATED_FOR(clutter_shader_effect_set_uniform)
void clutter_actor_set_shader_param_float (ClutterActor *self, void clutter_actor_set_shader_param_float (ClutterActor *self,
const gchar *param, const gchar *param,
gfloat value); gfloat value);

View file

@ -48,21 +48,6 @@ G_BEGIN_DECLS
typedef struct _ClutterAlignConstraint ClutterAlignConstraint; typedef struct _ClutterAlignConstraint ClutterAlignConstraint;
typedef struct _ClutterAlignConstraintClass ClutterAlignConstraintClass; typedef struct _ClutterAlignConstraintClass ClutterAlignConstraintClass;
/**
* ClutterAlignAxis:
* @CLUTTER_ALIGN_X_AXIS: Maintain the alignment on the X axis
* @CLUTTER_ALIGN_Y_AXIS: Maintain the alignment on the Y axis
*
* Specifies the axis on which #ClutterAlignConstraint should maintain
* the alignment
*
* Since: 1.4
*/
typedef enum { /*< prefix=CLUTTER_ALIGN >*/
CLUTTER_ALIGN_X_AXIS,
CLUTTER_ALIGN_Y_AXIS
} ClutterAlignAxis;
GType clutter_align_constraint_get_type (void) G_GNUC_CONST; GType clutter_align_constraint_get_type (void) G_GNUC_CONST;
ClutterConstraint *clutter_align_constraint_new (ClutterActor *source, ClutterConstraint *clutter_align_constraint_new (ClutterActor *source,

View file

@ -44,7 +44,6 @@ G_BEGIN_DECLS
#define CLUTTER_IS_ALPHA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_ALPHA)) #define CLUTTER_IS_ALPHA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_ALPHA))
#define CLUTTER_ALPHA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_ALPHA, ClutterAlphaClass)) #define CLUTTER_ALPHA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_ALPHA, ClutterAlphaClass))
typedef struct _ClutterAlpha ClutterAlpha;
typedef struct _ClutterAlphaClass ClutterAlphaClass; typedef struct _ClutterAlphaClass ClutterAlphaClass;
typedef struct _ClutterAlphaPrivate ClutterAlphaPrivate; typedef struct _ClutterAlphaPrivate ClutterAlphaPrivate;

View file

@ -38,7 +38,6 @@ G_BEGIN_DECLS
#define CLUTTER_IS_ANIMATABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_TYPE_ANIMATABLE)) #define CLUTTER_IS_ANIMATABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_TYPE_ANIMATABLE))
#define CLUTTER_ANIMATABLE_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), CLUTTER_TYPE_ANIMATABLE, ClutterAnimatableIface)) #define CLUTTER_ANIMATABLE_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), CLUTTER_TYPE_ANIMATABLE, ClutterAnimatableIface))
typedef struct _ClutterAnimatable ClutterAnimatable; /* dummy typedef */
typedef struct _ClutterAnimatableIface ClutterAnimatableIface; typedef struct _ClutterAnimatableIface ClutterAnimatableIface;
/** /**
@ -99,6 +98,7 @@ struct _ClutterAnimatableIface
GType clutter_animatable_get_type (void) G_GNUC_CONST; GType clutter_animatable_get_type (void) G_GNUC_CONST;
#ifndef CLUTTER_DISABLE_DEPRECATED #ifndef CLUTTER_DISABLE_DEPRECATED
CLUTTER_DEPRECATED_FOR(clutter_animatable_interpolate_value)
gboolean clutter_animatable_animate_property (ClutterAnimatable *animatable, gboolean clutter_animatable_animate_property (ClutterAnimatable *animatable,
ClutterAnimation *animation, ClutterAnimation *animation,
const gchar *property_name, const gchar *property_name,

View file

@ -57,20 +57,6 @@ typedef struct _ClutterAnimatorPrivate ClutterAnimatorPrivate;
*/ */
typedef struct _ClutterAnimatorKey ClutterAnimatorKey; typedef struct _ClutterAnimatorKey ClutterAnimatorKey;
/**
* ClutterInterpolation:
* @CLUTTER_INTERPOLATION_LINEAR: linear interpolation
* @CLUTTER_INTERPOLATION_CUBIC: cubic interpolation
*
* The mode of interpolation between key frames
*
* Since: 1.2
*/
typedef enum {
CLUTTER_INTERPOLATION_LINEAR,
CLUTTER_INTERPOLATION_CUBIC
} ClutterInterpolation;
/** /**
* ClutterAnimator: * ClutterAnimator:
* *

View file

@ -64,16 +64,29 @@ GType clutter_backend_get_type (void) G_GNUC_CONST;
ClutterBackend *clutter_get_default_backend (void); ClutterBackend *clutter_get_default_backend (void);
#ifndef CLUTTER_DISABLE_DEPRECATED #ifndef CLUTTER_DISABLE_DEPRECATED
CLUTTER_DEPRECATED_FOR(ClutterSettings:font_dpi)
void clutter_backend_set_resolution (ClutterBackend *backend, void clutter_backend_set_resolution (ClutterBackend *backend,
gdouble dpi); gdouble dpi);
CLUTTER_DEPRECATED_FOR(ClutterSettings:double_click_time)
void clutter_backend_set_double_click_time (ClutterBackend *backend, void clutter_backend_set_double_click_time (ClutterBackend *backend,
guint msec); guint msec);
CLUTTER_DEPRECATED_FOR(ClutterSettings:double_click_time)
guint clutter_backend_get_double_click_time (ClutterBackend *backend); guint clutter_backend_get_double_click_time (ClutterBackend *backend);
CLUTTER_DEPRECATED_FOR(ClutterSettings:double_click_distance)
void clutter_backend_set_double_click_distance (ClutterBackend *backend, void clutter_backend_set_double_click_distance (ClutterBackend *backend,
guint distance); guint distance);
CLUTTER_DEPRECATED_FOR(ClutterSettings:double_click_distance)
guint clutter_backend_get_double_click_distance (ClutterBackend *backend); guint clutter_backend_get_double_click_distance (ClutterBackend *backend);
CLUTTER_DEPRECATED_FOR(ClutterSettings:font_name)
void clutter_backend_set_font_name (ClutterBackend *backend, void clutter_backend_set_font_name (ClutterBackend *backend,
const gchar *font_name); const gchar *font_name);
CLUTTER_DEPRECATED_FOR(ClutterSettings:font_name)
const gchar * clutter_backend_get_font_name (ClutterBackend *backend); const gchar * clutter_backend_get_font_name (ClutterBackend *backend);
#endif /* CLUTTER_DISABLE_DEPRECATED */ #endif /* CLUTTER_DISABLE_DEPRECATED */

View file

@ -44,31 +44,6 @@ typedef struct _ClutterBinLayout ClutterBinLayout;
typedef struct _ClutterBinLayoutPrivate ClutterBinLayoutPrivate; typedef struct _ClutterBinLayoutPrivate ClutterBinLayoutPrivate;
typedef struct _ClutterBinLayoutClass ClutterBinLayoutClass; typedef struct _ClutterBinLayoutClass ClutterBinLayoutClass;
/**
* ClutterBinAlignment:
* @CLUTTER_BIN_ALIGNMENT_FIXED: Fixed position alignment; the
* #ClutterBinLayout will honour the fixed position provided
* by the actors themselves when allocating them
* @CLUTTER_BIN_ALIGNMENT_FILL: Fill the allocation size
* @CLUTTER_BIN_ALIGNMENT_START: Position the actors at the top
* or left side of the container, depending on the axis
* @CLUTTER_BIN_ALIGNMENT_END: Position the actors at the bottom
* or right side of the container, depending on the axis
* @CLUTTER_BIN_ALIGNMENT_CENTER: Position the actors at the
* center of the container, depending on the axis
*
* The alignment policies available on each axis for #ClutterBinLayout
*
* Since: 1.2
*/
typedef enum {
CLUTTER_BIN_ALIGNMENT_FIXED,
CLUTTER_BIN_ALIGNMENT_FILL,
CLUTTER_BIN_ALIGNMENT_START,
CLUTTER_BIN_ALIGNMENT_END,
CLUTTER_BIN_ALIGNMENT_CENTER
} ClutterBinAlignment;
/** /**
* ClutterBinLayout: * ClutterBinLayout:
* *

View file

@ -48,30 +48,6 @@ G_BEGIN_DECLS
typedef struct _ClutterBindConstraint ClutterBindConstraint; typedef struct _ClutterBindConstraint ClutterBindConstraint;
typedef struct _ClutterBindConstraintClass ClutterBindConstraintClass; typedef struct _ClutterBindConstraintClass ClutterBindConstraintClass;
/**
* ClutterBindCoordinate:
* @CLUTTER_BIND_X: Bind the X coordinate
* @CLUTTER_BIND_Y: Bind the Y coordinate
* @CLUTTER_BIND_WIDTH: Bind the width
* @CLUTTER_BIND_HEIGHT: Bind the height
* @CLUTTER_BIND_POSITION: Equivalent to to %CLUTTER_BIND_X and
* %CLUTTER_BIND_Y
* @CLUTTER_BIND_SIZE: Equivalent to %CLUTTER_BIND_WIDTH and
* %CLUTTER_BIND_HEIGHT
*
* Specifies which property should be used in a binding
*
* Since: 1.4
*/
typedef enum { /*< prefix=CLUTTER_BIND >*/
CLUTTER_BIND_X,
CLUTTER_BIND_Y,
CLUTTER_BIND_WIDTH,
CLUTTER_BIND_HEIGHT,
CLUTTER_BIND_POSITION,
CLUTTER_BIND_SIZE
} ClutterBindCoordinate;
GType clutter_bind_constraint_get_type (void) G_GNUC_CONST; GType clutter_bind_constraint_get_type (void) G_GNUC_CONST;
ClutterConstraint * clutter_bind_constraint_new (ClutterActor *source, ClutterConstraint * clutter_bind_constraint_new (ClutterActor *source,

View file

@ -47,24 +47,6 @@ typedef struct _ClutterBoxLayout ClutterBoxLayout;
typedef struct _ClutterBoxLayoutPrivate ClutterBoxLayoutPrivate; typedef struct _ClutterBoxLayoutPrivate ClutterBoxLayoutPrivate;
typedef struct _ClutterBoxLayoutClass ClutterBoxLayoutClass; typedef struct _ClutterBoxLayoutClass ClutterBoxLayoutClass;
/**
* ClutterBoxAlignment:
* @CLUTTER_BOX_ALIGNMENT_START: Align the child to the top or to
* to the left, depending on the used axis
* @CLUTTER_BOX_ALIGNMENT_CENTER: Align the child to the center
* @CLUTTER_BOX_ALIGNMENT_END: Align the child to the bottom or to
* the right, depending on the used axis
*
* The alignment policies available on each axis of the #ClutterBoxLayout
*
* Since: 1.2
*/
typedef enum {
CLUTTER_BOX_ALIGNMENT_START,
CLUTTER_BOX_ALIGNMENT_END,
CLUTTER_BOX_ALIGNMENT_CENTER
} ClutterBoxAlignment;
/** /**
* ClutterBoxLayout: * ClutterBoxLayout:
* *

View file

@ -117,11 +117,14 @@ ClutterActor * clutter_cairo_texture_new (guint
guint height); guint height);
#ifndef CLUTTER_DISABLE_DEPRECATED #ifndef CLUTTER_DISABLE_DEPRECATED
CLUTTER_DEPRECATED_FOR(clutter_cairo_texture_invalidate_rectangle)
cairo_t * clutter_cairo_texture_create_region (ClutterCairoTexture *self, cairo_t * clutter_cairo_texture_create_region (ClutterCairoTexture *self,
gint x_offset, gint x_offset,
gint y_offset, gint y_offset,
gint width, gint width,
gint height); gint height);
CLUTTER_DEPRECATED_FOR(clutter_cairo_texture_invalidate)
cairo_t * clutter_cairo_texture_create (ClutterCairoTexture *self); cairo_t * clutter_cairo_texture_create (ClutterCairoTexture *self);
#endif /* CLUTTER_DISABLE_DEPRECATED */ #endif /* CLUTTER_DISABLE_DEPRECATED */

View file

@ -48,23 +48,6 @@ typedef struct _ClutterClickAction ClutterClickAction;
typedef struct _ClutterClickActionPrivate ClutterClickActionPrivate; typedef struct _ClutterClickActionPrivate ClutterClickActionPrivate;
typedef struct _ClutterClickActionClass ClutterClickActionClass; typedef struct _ClutterClickActionClass ClutterClickActionClass;
/**
* ClutterLongPressState:
* @CLUTTER_LONG_PRESS_QUERY: Queries the action whether it supports
* long presses
* @CLUTTER_LONG_PRESS_ACTIVATE: Activates the action on a long press
* @CLUTTER_LONG_PRESS_CANCEL: The long press was cancelled
*
* The states for the #ClutterClikAction::long-press signal.
*
* Since: 1.8
*/
typedef enum { /*< prefix=CLUTTER_LONG_PRESS >*/
CLUTTER_LONG_PRESS_QUERY,
CLUTTER_LONG_PRESS_ACTIVATE,
CLUTTER_LONG_PRESS_CANCEL
} ClutterLongPressState;
/** /**
* ClutterClickAction: * ClutterClickAction:
* *

View file

@ -149,111 +149,6 @@ GParamSpec *clutter_param_spec_color (const gchar *name,
const ClutterColor *default_value, const ClutterColor *default_value,
GParamFlags flags); GParamFlags flags);
/**
* ClutterStaticColor:
* @CLUTTER_COLOR_WHITE: White color (ffffffff)
* @CLUTTER_COLOR_BLACK: Black color (000000ff)
* @CLUTTER_COLOR_RED: Red color (ff0000ff)
* @CLUTTER_COLOR_DARK_RED: Dark red color (800000ff)
* @CLUTTER_COLOR_GREEN: Green color (00ff00ff)
* @CLUTTER_COLOR_DARK_GREEN: Dark green color (008000ff)
* @CLUTTER_COLOR_BLUE: Blue color (0000ffff)
* @CLUTTER_COLOR_DARK_BLUE: Dark blue color (000080ff)
* @CLUTTER_COLOR_CYAN: Cyan color (00ffffff)
* @CLUTTER_COLOR_DARK_CYAN: Dark cyan color (008080ff)
* @CLUTTER_COLOR_MAGENTA: Magenta color (ff00ffff)
* @CLUTTER_COLOR_DARK_MAGENTA: Dark magenta color (800080ff)
* @CLUTTER_COLOR_YELLOW: Yellow color (ffff00ff)
* @CLUTTER_COLOR_DARK_YELLOW: Dark yellow color (808000ff)
* @CLUTTER_COLOR_GRAY: Gray color (a0a0a4ff)
* @CLUTTER_COLOR_DARK_GRAY: Dark Gray color (808080ff)
* @CLUTTER_COLOR_LIGHT_GRAY: Light gray color (c0c0c0ff)
* @CLUTTER_COLOR_BUTTER: Butter color (edd400ff)
* @CLUTTER_COLOR_BUTTER_LIGHT: Light butter color (fce94fff)
* @CLUTTER_COLOR_BUTTER_DARK: Dark butter color (c4a000ff)
* @CLUTTER_COLOR_ORANGE: Orange color (f57900ff)
* @CLUTTER_COLOR_ORANGE_LIGHT: Light orange color (fcaf3fff)
* @CLUTTER_COLOR_ORANGE_DARK: Dark orange color (ce5c00ff)
* @CLUTTER_COLOR_CHOCOLATE: Chocolate color (c17d11ff)
* @CLUTTER_COLOR_CHOCOLATE_LIGHT: Light chocolate color (e9b96eff)
* @CLUTTER_COLOR_CHOCOLATE_DARK: Dark chocolate color (8f5902ff)
* @CLUTTER_COLOR_CHAMELEON: Chameleon color (73d216ff)
* @CLUTTER_COLOR_CHAMELEON_LIGHT: Light chameleon color (8ae234ff)
* @CLUTTER_COLOR_CHAMELEON_DARK: Dark chameleon color (4e9a06ff)
* @CLUTTER_COLOR_SKY_BLUE: Sky color (3465a4ff)
* @CLUTTER_COLOR_SKY_BLUE_LIGHT: Light sky color (729fcfff)
* @CLUTTER_COLOR_SKY_BLUE_DARK: Dark sky color (204a87ff)
* @CLUTTER_COLOR_PLUM: Plum color (75507bff)
* @CLUTTER_COLOR_PLUM_LIGHT: Light plum color (ad7fa8ff)
* @CLUTTER_COLOR_PLUM_DARK: Dark plum color (5c3566ff)
* @CLUTTER_COLOR_SCARLET_RED: Scarlet red color (cc0000ff)
* @CLUTTER_COLOR_SCARLET_RED_LIGHT: Light scarlet red color (ef2929ff)
* @CLUTTER_COLOR_SCARLET_RED_DARK: Dark scarlet red color (a40000ff)
* @CLUTTER_COLOR_ALUMINIUM_1: Aluminium, first variant (eeeeecff)
* @CLUTTER_COLOR_ALUMINIUM_2: Aluminium, second variant (d3d7cfff)
* @CLUTTER_COLOR_ALUMINIUM_3: Aluminium, third variant (babdb6ff)
* @CLUTTER_COLOR_ALUMINIUM_4: Aluminium, fourth variant (888a85ff)
* @CLUTTER_COLOR_ALUMINIUM_5: Aluminium, fifth variant (555753ff)
* @CLUTTER_COLOR_ALUMINIUM_6: Aluminium, sixth variant (2e3436ff)
* @CLUTTER_COLOR_TRANSPARENT: Transparent color (00000000)
*
* Named colors, for accessing global colors defined by Clutter
*
* Since: 1.6
*/
typedef enum { /*< prefix=CLUTTER_COLOR >*/
/* CGA/EGA-like palette */
CLUTTER_COLOR_WHITE = 0,
CLUTTER_COLOR_BLACK,
CLUTTER_COLOR_RED,
CLUTTER_COLOR_DARK_RED,
CLUTTER_COLOR_GREEN,
CLUTTER_COLOR_DARK_GREEN,
CLUTTER_COLOR_BLUE,
CLUTTER_COLOR_DARK_BLUE,
CLUTTER_COLOR_CYAN,
CLUTTER_COLOR_DARK_CYAN,
CLUTTER_COLOR_MAGENTA,
CLUTTER_COLOR_DARK_MAGENTA,
CLUTTER_COLOR_YELLOW,
CLUTTER_COLOR_DARK_YELLOW,
CLUTTER_COLOR_GRAY,
CLUTTER_COLOR_DARK_GRAY,
CLUTTER_COLOR_LIGHT_GRAY,
/* Tango icon palette */
CLUTTER_COLOR_BUTTER,
CLUTTER_COLOR_BUTTER_LIGHT,
CLUTTER_COLOR_BUTTER_DARK,
CLUTTER_COLOR_ORANGE,
CLUTTER_COLOR_ORANGE_LIGHT,
CLUTTER_COLOR_ORANGE_DARK,
CLUTTER_COLOR_CHOCOLATE,
CLUTTER_COLOR_CHOCOLATE_LIGHT,
CLUTTER_COLOR_CHOCOLATE_DARK,
CLUTTER_COLOR_CHAMELEON,
CLUTTER_COLOR_CHAMELEON_LIGHT,
CLUTTER_COLOR_CHAMELEON_DARK,
CLUTTER_COLOR_SKY_BLUE,
CLUTTER_COLOR_SKY_BLUE_LIGHT,
CLUTTER_COLOR_SKY_BLUE_DARK,
CLUTTER_COLOR_PLUM,
CLUTTER_COLOR_PLUM_LIGHT,
CLUTTER_COLOR_PLUM_DARK,
CLUTTER_COLOR_SCARLET_RED,
CLUTTER_COLOR_SCARLET_RED_LIGHT,
CLUTTER_COLOR_SCARLET_RED_DARK,
CLUTTER_COLOR_ALUMINIUM_1,
CLUTTER_COLOR_ALUMINIUM_2,
CLUTTER_COLOR_ALUMINIUM_3,
CLUTTER_COLOR_ALUMINIUM_4,
CLUTTER_COLOR_ALUMINIUM_5,
CLUTTER_COLOR_ALUMINIUM_6,
/* Fully transparent black */
CLUTTER_COLOR_TRANSPARENT
} ClutterStaticColor;
const ClutterColor *clutter_color_get_static (ClutterStaticColor color); const ClutterColor *clutter_color_get_static (ClutterStaticColor color);
G_END_DECLS G_END_DECLS

View file

@ -1,205 +1,21 @@
#ifndef _CLUTTER_DEPRECATED_H #ifndef __CLUTTER_DEPRECATED_H__
#define _CLUTTER_DEPRECATED_H #define __CLUTTER_DEPRECATED_H__
/* This header contains defines that makes the compiler provide useful #define __CLUTTER_DEPRECATED_H_INSIDE__
* direction for resolving compile problems when code is using old APIs
* When using a function name that no longer applies the compiler will
* tell the developer the name of the new function call.
*
* Functions that are simply renamed should give errors containing
* _REPLACED_BY_ whilst functions that are deprecated by new functions with
* new functionality should giver errors containing _DEPRECATED_BY_.
*/
#define clutter_group_find_child_by_id clutter_group_find_child_by_id_REPLACED_BY_clutter_container_find_child_by_name #include "deprecated/clutter-behaviour.h"
#include "deprecated/clutter-behaviour-depth.h"
#include "deprecated/clutter-behaviour-ellipse.h"
#include "deprecated/clutter-behaviour-opacity.h"
#include "deprecated/clutter-behaviour-path.h"
#include "deprecated/clutter-behaviour-rotate.h"
#include "deprecated/clutter-behaviour-scale.h"
#include "deprecated/clutter-fixed.h"
#include "deprecated/clutter-frame-source.h"
#include "deprecated/clutter-timeout-pool.h"
#include "deprecated/clutter-score.h"
#include "deprecated/clutter-shader.h"
#define clutter_behaviour_ellipse_set_angle_begin clutter_behaviour_ellipse_set_angle_begin_REPLACED_BY_clutter_behaviour_set_angle_start #undef __CLUTTER_DEPRECATED_H_INSIDE__
#define clutter_behaviour_ellipse_set_angle_beginx clutter_behaviour_ellipse_set_angle_beginx_REPLACED_BY_clutter_behaviour_set_angle_startx
#define clutter_behaviour_ellipse_get_angle_begin clutter_behaviour_ellipse_get_angle_begin_REPLACED_BY_clutter_behaviour_get_angle_start
#define clutter_behaviour_ellipse_get_angle_beginx clutter_behaviour_ellipse_get_angle_beginx_REPLACED_BY_clutter_behaviour_get_angle_startx
#define clutter_behaviour_bspline_append clutter_behaviour_bspline_append_REPLACED_BY_clutter_behaviour_bspline_append_knots
#define clutter_actor_get_id clutter_actor_get_id_REPLACED_BY_clutter_actor_get_gid #endif /* __CLUTTER_DEPRECATED_H__ */
#define clutter_actor_rotate_x clutter_actor_rotate_x_DEPRECATED_BY_clutter_actor_set_rotation
#define clutter_actor_rotate_y clutter_actor_rotate_y_DEPRECATED_BY_clutter_actor_set_rotation
#define clutter_actor_rotate_z clutter_actor_rotate_z_DEPRECATED_BY_clutter_actor_set_rotation
#define clutter_actor_rotate_xx clutter_actor_rotate_xx_DEPRECATED_BY_clutter_actor_set_rotationx
#define clutter_actor_rotate_yx clutter_actor_rotate_yx_DEPRECATED_BY_clutter_actor_set_rotationx
#define clutter_actor_rotate_zx clutter_actor_rotate_zx_DEPRECATED_BY_clutter_actor_set_rotationx
#define clutter_actor_get_rxang clutter_actor_get_rxang_DEPRECATED_BY_clutter_actor_get_rotation
#define clutter_actor_get_ryang clutter_actor_get_ryang_DEPRECATED_BY_clutter_actor_get_rotation
#define clutter_actor_get_rzang clutter_actor_get_rzang_DEPRECATED_BY_clutter_actor_get_rotation
#define clutter_actor_get_rxangx clutter_actor_get_rxangx_DEPRECATED_BY_clutter_actor_get_rotationx
#define clutter_actor_get_ryangx clutter_actor_get_ryangx_DEPRECATED_BY_clutter_actor_get_rotationx
#define clutter_actor_get_rzangx clutter_actor_get_rzangx_DEPRECATED_BY_clutter_actor_get_rotationx
#define clutter_actor_set_scale_with_gravityx clutter_actor_set_scale_with_gravityx_DEPRECATED_BY_clutter_actor_set_scale_with_gravity
#define clutter_entry_set_position clutter_entry_set_position_REPLACED_BY_clutter_entry_set_cursor_position
#define clutter_entry_get_position clutter_entry_get_position_REPLACED_BY_clutter_entry_get_cursor_position
#define clutter_shader_bind clutter_shader_bind_REPLACED_BY_clutter_shader_compile
#define clutter_shader_is_bound clutter_shader_is_bound_REPLACED_BY_clutter_shader_is_compiled
#define clutter_texture_new_from_pixbuf clutter_texture_new_from_pixbuf_DEPRECATED_BY_clutter_texture_new_from_file_OR_clutter_texture_new_AND_clutter_texture_set_from_rgb_data
#define clutter_texture_set_pixbuf clutter_texture_set_pixbuf_DEPRECATED_BY_clutter_texture_set_from_rgb_data
#define clutter_actor_query_coords clutter_actor_query_coords_REPLACED_BY_clutter_actor_get_preferred_size_OR_clutter_actor_get_allocation_box
#define clutter_actor_request_coords clutter_actor_request_coords_REPLACED_BY_clutter_actor_allocate
#define clutter_actor_get_abs_position clutter_actor_get_abs_position_REPLACED_BY_clutter_actor_get_transformed_position
#define clutter_actor_get_abs_size clutter_actor_get_abs_size_REPLACED_BY_clutter_actor_get_transformed_size
#define clutter_actor_get_abs_opacity clutter_actor_get_abs_opacity_REPLACED_BY_clutter_actor_get_paint_opacity
#define clutter_stage_get_resolution clutter_backend_get_resolution
#define clutter_stage_get_resolutionx clutter_backend_get_resolution
#define clutter_set_use_mipmapped_text clutter_actor_set_use_mipmapped_text_REPLACED_BY_clutter_set_font_flags
#define clutter_get_use_mipmapped_text clutter_actor_get_use_mipmapped_text_REPLACED_BY_clutter_get_font_flags
#define clutter_color_parse clutter_color_parse_REPLACED_BY_clutter_color_from_string
#define clutter_color_from_hlsx clutter_color_from_hlsx_DEPRECATED_BY_clutter_color_from_hls
#define clutter_color_to_hlsx clutter_color_to_hlsx_DEPRECATED_BY_clutter_color_to_hls
#define clutter_color_shadex clutter_color_shadex_DEPRECATED_BY_clutter_color_shade
#define clutter_stage_set_perspectivex clutter_stage_set_perspectivex_DEPRECATED_BY_clutter_stage_set_perspective
#define clutter_stage_set_fogx clutter_stage_set_fogx_DEPRECATED_BY_clutter_stage_set_fog
#define clutter_actor_set_rotationx clutter_actor_set_rotationx_DEPRECATED_BY_clutter_actor_set_rotation
#define clutter_actor_get_rotationx clutter_actor_get_rotationx_DEPRECATED_BY_clutter_actor_get_rotation
#define clutter_actor_set_scalex clutter_actor_set_scalex_DEPRECATED_BY_clutter_actor_set_scale
#define clutter_actor_get_scalex clutter_actor_get_scalex_DEPRECATED_BY_clutter_actor_get_scale
#define CLUTTER_ALPHA_RAMP_INC clutter_ramp_inc_func
#define CLUTTER_ALPHA_RAMP_DEC clutter_ramp_dec_func
#define CLUTTER_ALPHA_RAMP clutter_ramp_func
#define CLUTTER_ALPHA_SINE clutter_sine_func
#define CLUTTER_ALPHA_SINE_INC clutter_sine_inc_func
#define CLUTTER_ALPHA_SINE_DEC clutter_sine_dec_func
#define CLUTTER_ALPHA_SINE_HALF clutter_sine_half_func
#define CLUTTER_ALPHA_SQUARE clutter_square_func
#define CLUTTER_ALPHA_SMOOTHSTEP_INC clutter_smoothstep_inc_func
#define CLUTTER_ALPHA_SMOOTHSTEP_DEC clutter_smoothstep_dec_func
#define CLUTTER_ALPHA_EXP_INC clutter_exp_inc_func
#define CLUTTER_ALPHA_EXP_DEC clutter_exp_dec_func
#define clutter_ramp_inc_func clutter_ramp_inc_func_DEPRECATED_BY_CLUTTER_LINEAR
#define clutter_ramp_dec_func clutter_ramp_dec_func_DEPRECATED_BY_CLUTTER_LINEAR
#define clutter_ramp_func clutter_ramp_func_DEPRECATED_BY_CLUTTER_LINEAR
#define clutter_sine_inc_func clutter_sine_inc_func_DEPRECATED_BY_CLUTTER_EASE_OUT_SINE
#define clutter_sine_dec_func clutter_sine_dec_func_DEPRECATED_BY_CLUTTER_EASE_IN_SINE
#define clutter_sine_half_func clutter_sine_half_func_DEPRECATED_BY_CLUTTER_EASE_IN_OUT_SINE
#define clutter_sine_func clutter_sine_func_DEPRECATED_BY_CLUTTER_EASE_IN_OUT_SINE
#define clutter_square_func clutter_square_func_REMOVED
#define clutter_smoothstep_inc_func clutter_smoothstep_inc_func_DEPRECATED_BY_CLUTTER_EASE_IN_CUBIC
#define clutter_smoothstep_dec_func clutter_smoothstep_dec_func_DEPRECATED_BY_CLUTTER_EASE_OUT_CUBIC
#define clutter_exp_inc_func clutter_exp_inc_func_DEPRECATED_BY_CLUTTER_EASE_IN_EXPO
#define clutter_exp_dec_func clutter_exp_dec_func_DEPRECATED_BY_CLUTTER_EASE_OUT_EXPO
#define clutter_behaviour_path_get_knots clutter_behaviour_path_get_knots_REPLACED_BY_clutter_path_get_nodes
#define clutter_behaviour_path_append_knots clutter_behaviour_path_append_knots_REPLACED_BY_clutter_path_add_string
#define clutter_behaviour_path_append_knot clutter_behaviour_path_append_knot_REPLACED_BY_clutter_path_add_string
#define clutter_behaviour_path_insert_knot clutter_behaviour_path_insert_knot_REPLACED_BY_clutter_path_insert_node
#define clutter_behaviour_path_remove_knot clutter_behaviour_path_remove_knot_REPLACED_BY_clutter_path_remove_node
#define clutter_behaviour_path_clear clutter_behaviour_path_clear_REPLACED_BY_clutter_path_clear
#define ClutterFixed ClutterFixed_REPLACED_BY_CoglFixed
#define ClutterAngle ClutterAngle_REPLACED_BY_CoglAngle
#define CFX_ONE CFX_ONE_REPLACED_BY_COGL_FIXED_1
#define CFX_HALF CFX_HALF_REPLACED_BY_COGL_FIXED_0_5
#define CFX_PI CFX_PI_REPLACED_BY_COGL_FIXED_PI
#define CFX_2PI CFX_2PI_REPLACED_BY_COGL_FIXED_2_PI
#define CLUTTER_INT_TO_FIXED CLUTTER_INT_TO_FIXED_REPLACED_BY_COGL_FIXED_FROM_INT
#define CLUTTER_FIXED_TO_INT CLUTTER_FIXED_TO_INT_REPLACED_BY_COGL_FIXED_TO_INT
#define CLUTTER_FLOAT_TO_FIXED CLUTTER_FLOAT_TO_FIXED_REPLACED_BY_COGL_FIXED_FROM_FLOAT
#define CLUTTER_FIXED_TO_FLOAT CLUTTER_FIXED_TO_FLOAT_REPLACED_BY_COGL_FIXED_TO_FLOAT
#define CLUTTER_FIXED_MUL CLUTTER_FIXED_MUL_REPLACED_BY_COGL_FIXED_FAST_MUL
#define CLUTTER_FIXED_DIV CLUTTER_FIXED_DIV_REPLACED_BY_COGL_FIXED_FAST_DIV
#define clutter_qmulx clutter_qmulx_REPLACED_BY_COGL_FIXED_MUL
#define clutter_qdivx clutter_qdivx_REPLACED_BY_COGL_FIXED_DIV
#define clutter_sinx clutter_sinx_REPLACED_BY_cogl_fixed_sin
#define clutter_cosx clutter_cosx_REPLACED_BY_cogl_fixed_cos
#define clutter_media_set_position clutter_media_set_position_DEPRECATED_BY_clutter_media_set_progress
#define clutter_media_get_position clutter_media_get_position_DEPRECATED_BY_clutter_media_get_progress
#define clutter_media_set_volume clutter_media_set_volume_DEPRECATED_BY_clutter_media_set_audio_volume
#define clutter_media_get_volume clutter_media_get_volume_DEPRECATED_BY_clutter_media_get_audio_volume
#define clutter_media_get_buffer_percent clutter_media_get_buffer_percent_DEPRECATED_BY_clutter_media_get_buffer_fill
#define CLUTTER_TYPE_LABEL CLUTTER_TYPE_LABEL_DEPRECATED_BY_CLUTTER_TYPE_TEXT
#define CLUTTER_TYPE_ENTRY CLUTTER_TYPE_ENTRY_DEPRECATED_BY_CLUTTER_TYPE_TEXT
#define clutter_label_new clutter_label_new_DEPRECATED_BY_clutter_text_new
#define clutter_entry_new clutter_entry_new_DEPRECATED_BY_clutter_text_new
#define CLUTTER_TYPE_TEXTURE_HANDLE CLUTTER_TYPE_TEXTURE_HANDLE_REPLACED_BY_COGL_TYPE_HANDLE
#define ClutterEffectTemplate ClutterEffectTemplate_DEPRECATED_BY_ClutterAnimation
#define clutter_effect_template_new clutter_effect_template_new_DEPRECATED_BY_clutter_animation_new
#define clutter_effect_template_new_for_duration clutter_effect_template_new_for_duration_DEPRECATED_BY_clutter_animation_new
#define clutter_effect_move clutter_effect_move_DEPRECATED_BY_clutter_actor_animate
#define clutter_effect_path clutter_effect_path_DEPRECATED_BY_clutter_actor_animate
#define clutter_effect_depth clutter_effect_depth_DEPRECATED_BY_clutter_actor_animate
#define clutter_effect_scale clutter_effect_scale_DEPRECATED_BY_clutter_actor_animate
#define clutter_effect_rotate clutter_effect_rotate_DEPRECATED_BY_clutter_actor_animate
#define clutter_shader_set_uniform_1f clutter_shader_set_uniform_1f_REPLACED_BY_clutter_shader_set_uniform
#define clutter_actor_set_xu clutter_actor_set_xu_DEPRECATED_BY_clutter_actor_set_x
#define clutter_actor_set_yu clutter_actor_set_yu_DEPRECATED_BY_clutter_actor_set_y
#define clutter_actor_set_widthu clutter_actor_set_widthu_DEPRECATED_BY_clutter_actor_set_width
#define clutter_actor_set_heightu clutter_actor_set_heightu_DEPRECATED_BY_clutter_actor_set_height
#define clutter_actor_set_depthu clutter_actor_set_depthu_DEPRECATED_BY_clutter_actor_set_depth
#define clutter_actor_set_positionu clutter_actor_set_positionu_DEPRECATED_BY_clutter_actor_set_position
#define clutter_actor_set_sizeu clutter_actor_set_sizeu_DEPRECATED_BY_clutter_actor_set_size
#define clutter_actor_set_anchor_pointu clutter_actor_set_anchor_pointu_DEPRECATED_BY_clutter_actor_set_anchor_point
#define clutter_actor_get_anchor_pointu clutter_actor_get_anchor_pointu_DEPRECATED_BY_clutter_actor_get_anchor_point
#define clutter_actor_move_byu clutter_actor_move_byu_DEPRECATED_BY_clutter_actor_move_by
#define clutter_actor_get_xu clutter_actor_get_xu_DEPRECATED_BY_clutter_actor_get_x
#define clutter_actor_get_yu clutter_actor_get_yu_DEPRECATED_BY_clutter_actor_get_y
#define clutter_actor_get_widthu clutter_actor_get_widthu_DEPRECATED_BY_clutter_actor_get_width
#define clutter_actor_get_heightu clutter_actor_get_heightu_DEPRECATED_BY_clutter_actor_get_height
#define clutter_actor_get_depthu clutter_actor_get_depthu_DEPRECATED_BY_clutter_actor_get_depth
#define clutter_actor_get_positionu clutter_actor_get_positionu_DEPRECATED_BY_clutter_actor_get_position
#define clutter_actor_get_sizeu clutter_actor_get_sizeu_DEPRECATED_BY_clutter_actor_get_size
#define clutter_key_event_symbol clutter_key_event_symbol_REPLACED_BY_clutter_event_get_key_symbol
#define clutter_key_event_code clutter_key_event_code_REPLACED_BY_clutter_event_get_key_code
#define clutter_key_event_unicode clutter_key_event_unicode_REPLACED_BY_clutter_event_get_key_unicode
#define clutter_button_event_button clutter_button_event_button_REPLACED_BY_clutter_event_get_button
#define clutter_stage_fullscreen clutter_stage_fullscreen_REPLACED_BY_clutter_stage_set_fullscreen
#define clutter_stage_unfullscreen clutter_stage_unfullscreen_REPLACED_BY_clutter_stage_set_fullscreen
#define clutter_actor_get_box_from_vertices clutter_actor_get_box_from_vertices_REPLACED_BY_clutter_actor_box_from_vertices
#define clutter_behaviour_ellipse_newx clutter_behaviour_ellipse_newx_DEPRECATED_BY_clutter_behaviour_ellipse_new
#define clutter_behaviour_ellipse_set_angle_startx clutter_behaviour_ellipse_set_angle_startx_DEPRECATED_BY_clutter_behaviour_ellipse_set_angle_start
#define clutter_behaviour_ellipse_get_angle_startx clutter_behaviour_ellipse_get_angle_startx_DEPRECATED_BY_clutter_behaviour_ellipse_get_angle_start
#define clutter_behaviour_ellipse_set_angle_endx clutter_behaviour_ellipse_set_angle_endx_DEPRECATED_BY_clutter_behaviour_ellipse_set_angle_end
#define clutter_behaviour_ellipse_get_angle_endx clutter_behaviour_ellipse_get_angle_endx_DEPRECATED_BY_clutter_behaviour_ellipse_get_angle_end
#define clutter_behaviour_ellipse_set_angle_tiltx clutter_behaviour_ellipse_set_angle_tiltx_DEPRECATED_BY_clutter_behaviour_ellipse_set_angle_tilt
#define clutter_behaviour_ellipse_get_angle_tiltx clutter_behaviour_ellipse_get_angle_tiltx_DEPRECATED_BY_clutter_behaviour_ellipse_get_angle_tilt
#define clutter_behaviour_ellipse_set_tiltx clutter_behaviour_ellipse_set_tiltx_DEPRECATED_BY_clutter_behaviour_ellipse_set_tilt
#define clutter_behaviour_ellipse_get_tiltx clutter_behaviour_ellipse_get_tiltx_DEPRECATED_BY_clutter_behaviour_ellipse_get_tilt
#define clutter_behaviour_rotate_newx clutter_behaviour_rotate_newx_DEPRECATED_BY_clutter_behaviour_rotate_new
#define clutter_behaviour_rotate_get_boundsx clutter_behaviour_rotate_get_boundsx_DEPRECATED_BY_clutter_behaviour_rotate_get_bounds
#define clutter_behaviour_rotate_set_boundsx clutter_behaviour_rotate_set_boundsx_DEPRECATED_BY_clutter_behaviour_rotate_set_bounds
#define clutter_behaviour_scale_newx clutter_behaviour_scale_newx_DEPRECATED_BY_clutter_behaviour_scale_new
#define clutter_behaviour_scale_set_boundsx clutter_behaviour_scale_set_boundsx_DEPRECATED_BY_clutter_behaviour_scale_set_bounds
#define clutter_behaviour_scale_get_boundsx clutter_behaviour_scale_get_boundsx_DEPRECATED_BY_clutter_behaviour_scale_get_bounds
#define clutter_timeline_get_progressx clutter_timeline_get_progressx_DEPRECATED_BY_clutter_timeline_get_progress
#define clutter_actor_pick clutter_actor_pick_DEPRECATED_BY_clutter_actor_paint
#define clutter_actor_get_allocation_coords clutter_actor_get_allocation_coords_DEPRECATED_BY_clutter_actor_get_allocation_box
#endif /* CLUTTER_DEPRECATED_H */

View file

@ -75,6 +75,7 @@ struct _ClutterInputDevice
/* the actor that has a grab in place for the device */ /* the actor that has a grab in place for the device */
ClutterActor *pointer_grab_actor; ClutterActor *pointer_grab_actor;
ClutterActor *keyboard_grab_actor;
/* the current click count */ /* the current click count */
gint click_count; gint click_count;

View file

@ -45,24 +45,6 @@ typedef struct _ClutterDragAction ClutterDragAction;
typedef struct _ClutterDragActionPrivate ClutterDragActionPrivate; typedef struct _ClutterDragActionPrivate ClutterDragActionPrivate;
typedef struct _ClutterDragActionClass ClutterDragActionClass; typedef struct _ClutterDragActionClass ClutterDragActionClass;
/**
* ClutterDragAxis:
* @CLUTTER_DRAG_AXIS_NONE: No constraint
* @CLUTTER_DRAG_X_AXIS: Set a constraint on the X axis
* @CLUTTER_DRAG_Y_AXIS: Set a constraint on the Y axis
*
* The axis of the constraint that should be applied on the
* dragging action
*
* Since: 1.4
*/
typedef enum { /*< prefix=CLUTTER_DRAG >*/
CLUTTER_DRAG_AXIS_NONE = 0,
CLUTTER_DRAG_X_AXIS,
CLUTTER_DRAG_Y_AXIS
} ClutterDragAxis;
/** /**
* ClutterDragAction: * ClutterDragAction:
* *

View file

@ -42,19 +42,6 @@ G_BEGIN_DECLS
typedef struct _ClutterEffectClass ClutterEffectClass; typedef struct _ClutterEffectClass ClutterEffectClass;
/**
* ClutterEffectPaintFlags:
* @CLUTTER_EFFECT_PAINT_ACTOR_DIRTY: The actor or one of its children
* has queued a redraw before this paint. This implies that the effect
* should call clutter_actor_continue_paint() to chain to the next
* effect and can not cache any results from a previous paint.
*
* Flags passed to the paint or pick method of #ClutterEffect.
*/
typedef enum { /*< prefix=CLUTTER_EFFECT_PAINT >*/
CLUTTER_EFFECT_PAINT_ACTOR_DIRTY = (1 << 0)
} ClutterEffectPaintFlags;
/** /**
* ClutterEffect: * ClutterEffect:
* *

1059
clutter/clutter-enums.h Normal file

File diff suppressed because it is too large Load diff

View file

@ -28,9 +28,8 @@
#ifndef __CLUTTER_EVENT_H__ #ifndef __CLUTTER_EVENT_H__
#define __CLUTTER_EVENT_H__ #define __CLUTTER_EVENT_H__
#include <glib-object.h>
#include <clutter/clutter-input-device.h>
#include <clutter/clutter-types.h> #include <clutter/clutter-types.h>
#include <clutter/clutter-input-device.h>
#define CLUTTER_TYPE_EVENT (clutter_event_get_type ()) #define CLUTTER_TYPE_EVENT (clutter_event_get_type ())
@ -54,90 +53,6 @@
G_BEGIN_DECLS G_BEGIN_DECLS
/**
* ClutterEventFlags:
* @CLUTTER_EVENT_NONE: No flag set
* @CLUTTER_EVENT_FLAG_SYNTHETIC: Synthetic event
*
* Flags for the #ClutterEvent
*
* Since: 0.6
*/
typedef enum { /*< flags prefix=CLUTTER_EVENT >*/
CLUTTER_EVENT_NONE = 0,
CLUTTER_EVENT_FLAG_SYNTHETIC = 1 << 0
} ClutterEventFlags;
/**
* ClutterEventType:
* @CLUTTER_NOTHING: Empty event
* @CLUTTER_KEY_PRESS: Key press event
* @CLUTTER_KEY_RELEASE: Key release event
* @CLUTTER_MOTION: Pointer motion event
* @CLUTTER_ENTER: Actor enter event
* @CLUTTER_LEAVE: Actor leave event
* @CLUTTER_BUTTON_PRESS: Pointer button press event
* @CLUTTER_BUTTON_RELEASE: Pointer button release event
* @CLUTTER_SCROLL: Pointer scroll event
* @CLUTTER_STAGE_STATE: Stage stage change event
* @CLUTTER_DESTROY_NOTIFY: Destroy notification event
* @CLUTTER_CLIENT_MESSAGE: Client message event
* @CLUTTER_DELETE: Stage delete event
*
* Types of events.
*
* Since: 0.4
*/
typedef enum { /*< prefix=CLUTTER >*/
CLUTTER_NOTHING = 0,
CLUTTER_KEY_PRESS,
CLUTTER_KEY_RELEASE,
CLUTTER_MOTION,
CLUTTER_ENTER,
CLUTTER_LEAVE,
CLUTTER_BUTTON_PRESS,
CLUTTER_BUTTON_RELEASE,
CLUTTER_SCROLL,
CLUTTER_STAGE_STATE,
CLUTTER_DESTROY_NOTIFY,
CLUTTER_CLIENT_MESSAGE,
CLUTTER_DELETE
} ClutterEventType;
/**
* ClutterScrollDirection:
* @CLUTTER_SCROLL_UP: Scroll up
* @CLUTTER_SCROLL_DOWN: Scroll down
* @CLUTTER_SCROLL_LEFT: Scroll left
* @CLUTTER_SCROLL_RIGHT: Scroll right
*
* Direction of a pointer scroll event.
*
* Since: 0.4
*/
typedef enum { /*< prefix=CLUTTER_SCROLL >*/
CLUTTER_SCROLL_UP,
CLUTTER_SCROLL_DOWN,
CLUTTER_SCROLL_LEFT,
CLUTTER_SCROLL_RIGHT
} ClutterScrollDirection;
/**
* ClutterStageState:
* @CLUTTER_STAGE_STATE_FULLSCREEN: Fullscreen mask
* @CLUTTER_STAGE_STATE_OFFSCREEN: Offscreen mask
* @CLUTTER_STAGE_STATE_ACTIVATED: Activated mask
*
* Stage state masks
*
* Since: 0.4
*/
typedef enum {
CLUTTER_STAGE_STATE_FULLSCREEN = (1<<1),
CLUTTER_STAGE_STATE_OFFSCREEN = (1<<2),
CLUTTER_STAGE_STATE_ACTIVATED = (1<<3)
} ClutterStageState;
typedef struct _ClutterAnyEvent ClutterAnyEvent; typedef struct _ClutterAnyEvent ClutterAnyEvent;
typedef struct _ClutterButtonEvent ClutterButtonEvent; typedef struct _ClutterButtonEvent ClutterButtonEvent;
typedef struct _ClutterKeyEvent ClutterKeyEvent; typedef struct _ClutterKeyEvent ClutterKeyEvent;

View file

@ -28,44 +28,10 @@
#ifndef __CLUTTER_FEATURE_H__ #ifndef __CLUTTER_FEATURE_H__
#define __CLUTTER_FEATURE_H__ #define __CLUTTER_FEATURE_H__
#include <glib.h> #include <clutter/clutter-types.h>
G_BEGIN_DECLS G_BEGIN_DECLS
/**
* ClutterFeatureFlags:
* @CLUTTER_FEATURE_TEXTURE_NPOT: Set if NPOTS textures supported.
* @CLUTTER_FEATURE_SYNC_TO_VBLANK: Set if vblank syncing supported.
* @CLUTTER_FEATURE_TEXTURE_YUV: Set if YUV based textures supported.
* @CLUTTER_FEATURE_TEXTURE_READ_PIXELS: Set if texture pixels can be read.
* @CLUTTER_FEATURE_STAGE_STATIC: Set if stage size if fixed (i.e framebuffer)
* @CLUTTER_FEATURE_STAGE_USER_RESIZE: Set if stage is able to be user resized.
* @CLUTTER_FEATURE_STAGE_CURSOR: Set if stage has a graphical cursor.
* @CLUTTER_FEATURE_SHADERS_GLSL: Set if the backend supports GLSL shaders.
* @CLUTTER_FEATURE_OFFSCREEN: Set if the backend supports offscreen rendering.
* @CLUTTER_FEATURE_STAGE_MULTIPLE: Set if multiple stages are supported.
* @CLUTTER_FEATURE_SWAP_EVENTS: Set if the GLX_INTEL_swap_event is supported.
*
* Runtime flags indicating specific features available via Clutter window
* sysytem and graphics backend.
*
* Since: 0.4
*/
typedef enum
{
CLUTTER_FEATURE_TEXTURE_NPOT = (1 << 2),
CLUTTER_FEATURE_SYNC_TO_VBLANK = (1 << 3),
CLUTTER_FEATURE_TEXTURE_YUV = (1 << 4),
CLUTTER_FEATURE_TEXTURE_READ_PIXELS = (1 << 5),
CLUTTER_FEATURE_STAGE_STATIC = (1 << 6),
CLUTTER_FEATURE_STAGE_USER_RESIZE = (1 << 7),
CLUTTER_FEATURE_STAGE_CURSOR = (1 << 8),
CLUTTER_FEATURE_SHADERS_GLSL = (1 << 9),
CLUTTER_FEATURE_OFFSCREEN = (1 << 10),
CLUTTER_FEATURE_STAGE_MULTIPLE = (1 << 11),
CLUTTER_FEATURE_SWAP_EVENTS = (1 << 12)
} ClutterFeatureFlags;
gboolean clutter_feature_available (ClutterFeatureFlags feature); gboolean clutter_feature_available (ClutterFeatureFlags feature);
ClutterFeatureFlags clutter_feature_get_all (void); ClutterFeatureFlags clutter_feature_get_all (void);

View file

@ -44,23 +44,6 @@ typedef struct _ClutterFlowLayout ClutterFlowLayout;
typedef struct _ClutterFlowLayoutPrivate ClutterFlowLayoutPrivate; typedef struct _ClutterFlowLayoutPrivate ClutterFlowLayoutPrivate;
typedef struct _ClutterFlowLayoutClass ClutterFlowLayoutClass; typedef struct _ClutterFlowLayoutClass ClutterFlowLayoutClass;
/**
* ClutterFlowOrientation:
* @CLUTTER_FLOW_HORIZONTAL: Arrange the children of the flow layout
* horizontally first
* @CLUTTER_FLOW_VERTICAL: Arrange the children of the flow layout
* vertically first
*
* The direction of the arrangement of the children inside
* a #ClutterFlowLayout
*
* Since: 1.2
*/
typedef enum { /*< prefix=CLUTTER_FLOW >*/
CLUTTER_FLOW_HORIZONTAL,
CLUTTER_FLOW_VERTICAL
} ClutterFlowOrientation;
/** /**
* ClutterFlowLayout: * ClutterFlowLayout:
* *

View file

@ -48,84 +48,6 @@ G_BEGIN_DECLS
typedef struct _ClutterInputDevice ClutterInputDevice; typedef struct _ClutterInputDevice ClutterInputDevice;
typedef struct _ClutterInputDeviceClass ClutterInputDeviceClass; typedef struct _ClutterInputDeviceClass ClutterInputDeviceClass;
/**
* ClutterInputDeviceType:
* @CLUTTER_POINTER_DEVICE: A pointer device
* @CLUTTER_KEYBOARD_DEVICE: A keyboard device
* @CLUTTER_EXTENSION_DEVICE: A generic extension device
* @CLUTTER_JOYSTICK_DEVICE: A joystick device
* @CLUTTER_TABLET_DEVICE: A tablet device
* @CLUTTER_TOUCHPAD_DEVICE: A touchpad device
* @CLUTTER_TOUCHSCREEN_DEVICE: A touch screen device
* @CLUTTER_PEN_DEVICE: A pen device
* @CLUTTER_ERASER_DEVICE: An eraser device
* @CLUTTER_CURSOR_DEVICE: A cursor device
* @CLUTTER_N_DEVICE_TYPES: The number of device types
*
* The types of input devices available.
*
* The #ClutterInputDeviceType enumeration can be extended at later
* date; not every platform supports every input device type.
*
* Since: 1.0
*/
typedef enum {
CLUTTER_POINTER_DEVICE,
CLUTTER_KEYBOARD_DEVICE,
CLUTTER_EXTENSION_DEVICE,
CLUTTER_JOYSTICK_DEVICE,
CLUTTER_TABLET_DEVICE,
CLUTTER_TOUCHPAD_DEVICE,
CLUTTER_TOUCHSCREEN_DEVICE,
CLUTTER_PEN_DEVICE,
CLUTTER_ERASER_DEVICE,
CLUTTER_CURSOR_DEVICE,
CLUTTER_N_DEVICE_TYPES
} ClutterInputDeviceType;
/**
* ClutterInputMode:
* @CLUTTER_INPUT_MODE_MASTER: A master, virtual device
* @CLUTTER_INPUT_MODE_SLAVE: A slave, physical device, attached to
* a master device
* @CLUTTER_INPUT_MODE_FLOATING: A slave, physical device, not attached
* to a master device
*
* The mode for input devices available.
*
* Since: 1.6
*/
typedef enum {
CLUTTER_INPUT_MODE_MASTER,
CLUTTER_INPUT_MODE_SLAVE,
CLUTTER_INPUT_MODE_FLOATING
} ClutterInputMode;
/**
* ClutterInputAxis:
* @CLUTTER_INPUT_AXIS_IGNORE: Unused axis
* @CLUTTER_INPUT_AXIS_X: The position on the X axis
* @CLUTTER_INPUT_AXIS_Y: The position of the Y axis
* @CLUTTER_INPUT_AXIS_PRESSURE: The pressure information
* @CLUTTER_INPUT_AXIS_XTILT: The tilt on the X axis
* @CLUTTER_INPUT_AXIS_YTILT: The tile on the Y axis
* @CLUTTER_INPUT_AXIS_WHEEL: A wheel
*
* The type of axes Clutter recognizes on a #ClutterInputDevice
*
* Since: 1.6
*/
typedef enum {
CLUTTER_INPUT_AXIS_IGNORE,
CLUTTER_INPUT_AXIS_X,
CLUTTER_INPUT_AXIS_Y,
CLUTTER_INPUT_AXIS_PRESSURE,
CLUTTER_INPUT_AXIS_XTILT,
CLUTTER_INPUT_AXIS_YTILT,
CLUTTER_INPUT_AXIS_WHEEL
} ClutterInputAxis;
GType clutter_input_device_get_type (void) G_GNUC_CONST; GType clutter_input_device_get_type (void) G_GNUC_CONST;
ClutterInputDeviceType clutter_input_device_get_device_type (ClutterInputDevice *device); ClutterInputDeviceType clutter_input_device_get_device_type (ClutterInputDevice *device);
@ -167,6 +89,11 @@ void clutter_input_device_update_from_event (ClutterInputDev
ClutterEvent *event, ClutterEvent *event,
gboolean update_stage); gboolean update_stage);
void clutter_input_device_grab (ClutterInputDevice *device,
ClutterActor *actor);
void clutter_input_device_ungrab (ClutterInputDevice *device);
ClutterActor * clutter_input_device_get_grabbed_actor (ClutterInputDevice *device);
G_END_DECLS G_END_DECLS
#endif /* __CLUTTER_INPUT_DEVICE_H__ */ #endif /* __CLUTTER_INPUT_DEVICE_H__ */

View file

@ -99,6 +99,7 @@
#include "clutter-master-clock.h" #include "clutter-master-clock.h"
#include "clutter-private.h" #include "clutter-private.h"
#include "clutter-profile.h" #include "clutter-profile.h"
#include "clutter-settings-private.h"
#include "clutter-stage-manager.h" #include "clutter-stage-manager.h"
#include "clutter-stage-private.h" #include "clutter-stage-private.h"
#include "clutter-version.h" /* For flavour define */ #include "clutter-version.h" /* For flavour define */
@ -132,11 +133,13 @@ static ClutterTextDirection clutter_text_direction = CLUTTER_TEXT_DIRECTION_LTR;
static guint clutter_main_loop_level = 0; static guint clutter_main_loop_level = 0;
static GSList *main_loops = NULL; static GSList *main_loops = NULL;
guint clutter_debug_flags = 0; /* global clutter debug flag */ /* debug flags */
guint clutter_debug_flags = 0;
guint clutter_paint_debug_flags = 0; guint clutter_paint_debug_flags = 0;
guint clutter_pick_debug_flags = 0; guint clutter_pick_debug_flags = 0;
guint clutter_profile_flags = 0; /* global clutter profile flag */ /* profile flags */
guint clutter_profile_flags = 0;
const guint clutter_major_version = CLUTTER_MAJOR_VERSION; const guint clutter_major_version = CLUTTER_MAJOR_VERSION;
const guint clutter_minor_version = CLUTTER_MINOR_VERSION; const guint clutter_minor_version = CLUTTER_MINOR_VERSION;
@ -213,6 +216,196 @@ clutter_threads_init_default (void)
clutter_threads_unlock = clutter_threads_impl_unlock; clutter_threads_unlock = clutter_threads_impl_unlock;
} }
#define ENVIRONMENT_GROUP "Environment"
#define DEBUG_GROUP "Debug"
static void
clutter_config_read_from_key_file (GKeyFile *keyfile)
{
GError *key_error = NULL;
gboolean bool_value;
gint int_value;
gchar *str_value;
if (!g_key_file_has_group (keyfile, ENVIRONMENT_GROUP))
return;
bool_value =
g_key_file_get_boolean (keyfile, ENVIRONMENT_GROUP,
"ShowFps",
&key_error);
if (key_error != NULL)
g_clear_error (&key_error);
else
clutter_show_fps = bool_value;
bool_value =
g_key_file_get_boolean (keyfile, ENVIRONMENT_GROUP,
"DisableMipmappedText",
&key_error);
if (key_error != NULL)
g_clear_error (&key_error);
else
clutter_disable_mipmap_text = bool_value;
bool_value =
g_key_file_get_boolean (keyfile, ENVIRONMENT_GROUP,
"UseFuzzyPicking",
&key_error);
if (key_error != NULL)
g_clear_error (&key_error);
else
clutter_use_fuzzy_picking = bool_value;
bool_value =
g_key_file_get_boolean (keyfile, ENVIRONMENT_GROUP,
"EnableAccessibility",
&key_error);
if (key_error != NULL)
g_clear_error (&key_error);
else
clutter_enable_accessibility = bool_value;
int_value =
g_key_file_get_integer (keyfile, ENVIRONMENT_GROUP,
"DefaultFps",
&key_error);
if (key_error != NULL)
g_clear_error (&key_error);
else
clutter_default_fps = int_value;
str_value =
g_key_file_get_string (keyfile, ENVIRONMENT_GROUP,
"TextDirection",
&key_error);
if (key_error != NULL)
g_clear_error (&key_error);
else
{
if (g_strcmp0 (str_value, "rtl") == 0)
clutter_text_direction = CLUTTER_TEXT_DIRECTION_RTL;
else
clutter_text_direction = CLUTTER_TEXT_DIRECTION_LTR;
}
g_free (str_value);
}
#ifdef CLUTTER_ENABLE_DEBUG
static void
clutter_debug_read_from_key_file (GKeyFile *keyfile)
{
GError *key_error = NULL;
gchar *value;
if (!g_key_file_has_group (keyfile, DEBUG_GROUP))
return;
value = g_key_file_get_value (keyfile, DEBUG_GROUP,
"Debug",
&key_error);
if (key_error == NULL)
{
clutter_debug_flags |=
g_parse_debug_string (value,
clutter_debug_keys,
G_N_ELEMENTS (clutter_debug_keys));
}
else
g_clear_error (&key_error);
g_free (value);
value = g_key_file_get_value (keyfile, DEBUG_GROUP,
"PaintDebug",
&key_error);
if (key_error == NULL)
{
clutter_paint_debug_flags |=
g_parse_debug_string (value,
clutter_paint_debug_keys,
G_N_ELEMENTS (clutter_paint_debug_keys));
}
else
g_clear_error (&key_error);
g_free (value);
value = g_key_file_get_value (keyfile, DEBUG_GROUP,
"PickDebug",
&key_error);
if (key_error == NULL)
{
clutter_pick_debug_flags |=
g_parse_debug_string (value,
clutter_pick_debug_keys,
G_N_ELEMENTS (clutter_pick_debug_keys));
}
else
g_clear_error (&key_error);
g_free (value);
}
#endif
static void
clutter_config_read_from_file (const gchar *config_path)
{
ClutterSettings *settings = clutter_settings_get_default ();
GKeyFile *key_file = g_key_file_new ();
GError *error = NULL;
g_key_file_load_from_file (key_file, config_path, G_KEY_FILE_NONE, &error);
if (error == NULL)
{
clutter_config_read_from_key_file (key_file);
#ifdef CLUTTER_ENABLE_DEBUG
clutter_debug_read_from_key_file (key_file);
#endif
_clutter_settings_read_from_key_file (settings, key_file);
}
else
{
g_warning ("Unable to read configuration settings from '%s': %s",
config_path,
error->message);
g_error_free (error);
}
g_key_file_free (key_file);
}
static void
clutter_config_read (void)
{
gchar *config_path;
config_path = g_build_filename (CLUTTER_SYSCONFDIR,
"clutter-1.0",
"settings.ini",
NULL);
if (g_file_test (config_path, G_FILE_TEST_EXISTS))
clutter_config_read_from_file (config_path);
g_free (config_path);
config_path = g_build_filename (g_get_user_config_dir (),
"clutter-1.0",
"settings.ini",
NULL);
if (g_file_test (config_path, G_FILE_TEST_EXISTS))
clutter_config_read_from_file (config_path);
g_free (config_path);
}
/** /**
* clutter_get_show_fps: * clutter_get_show_fps:
* *
@ -256,6 +449,8 @@ clutter_get_accessibility_enabled (void)
* *
* This function should only be used by libraries integrating Clutter from * This function should only be used by libraries integrating Clutter from
* within another toolkit. * within another toolkit.
*
* Deprecated: 1.10: Use clutter_stage_ensure_redraw() instead.
*/ */
void void
clutter_redraw (ClutterStage *stage) clutter_redraw (ClutterStage *stage)
@ -489,7 +684,7 @@ clutter_context_get_pango_fontmap (void)
static ClutterTextDirection static ClutterTextDirection
clutter_get_text_direction (void) clutter_get_text_direction (void)
{ {
PangoDirection dir = PANGO_DIRECTION_LTR; ClutterTextDirection dir = CLUTTER_TEXT_DIRECTION_LTR;
const gchar *direction; const gchar *direction;
direction = g_getenv ("CLUTTER_TEXT_DIRECTION"); direction = g_getenv ("CLUTTER_TEXT_DIRECTION");
@ -756,7 +951,7 @@ clutter_threads_init (void)
* *
* Most threaded Clutter apps won't need to use this method. * Most threaded Clutter apps won't need to use this method.
* *
* This method must be called before clutter_threads_init(), and cannot * This method must be called before clutter_init(), and cannot
* be called multiple times. * be called multiple times.
* *
* Since: 0.4 * Since: 0.4
@ -850,7 +1045,7 @@ _clutter_threads_dispatch_free (gpointer data)
* closure-&gt;callback = callback; * closure-&gt;callback = callback;
* closure-&gt;data = data; * closure-&gt;data = data;
* *
* return g_add_idle_full (G_PRIORITY_DEFAULT_IDLE, * return g_idle_add_full (G_PRIORITY_DEFAULT_IDLE,
* idle_safe_callback, * idle_safe_callback,
* closure, * closure,
* g_free) * g_free)
@ -962,9 +1157,7 @@ clutter_threads_add_idle (GSourceFunc func,
* *
* It is important to note that, due to how the Clutter main loop is * It is important to note that, due to how the Clutter main loop is
* implemented, the timing will not be accurate and it will not try to * implemented, the timing will not be accurate and it will not try to
* "keep up" with the interval. A more reliable source is available * "keep up" with the interval.
* using clutter_threads_add_frame_source_full(), which is also internally
* used by #ClutterTimeline.
* *
* See also clutter_threads_add_idle_full(). * See also clutter_threads_add_idle_full().
* *
@ -1031,7 +1224,7 @@ clutter_threads_add_timeout (guint interval,
void void
clutter_threads_enter (void) clutter_threads_enter (void)
{ {
if (clutter_threads_lock) if (clutter_threads_lock != NULL)
(* clutter_threads_lock) (); (* clutter_threads_lock) ();
} }
@ -1045,7 +1238,7 @@ clutter_threads_enter (void)
void void
clutter_threads_leave (void) clutter_threads_leave (void)
{ {
if (clutter_threads_unlock) if (clutter_threads_unlock != NULL)
(* clutter_threads_unlock) (); (* clutter_threads_unlock) ();
} }
@ -1103,6 +1296,12 @@ clutter_context_get_default_unlocked (void)
ctx->is_initialized = FALSE; ctx->is_initialized = FALSE;
ctx->motion_events_per_actor = TRUE; ctx->motion_events_per_actor = TRUE;
/* create the default settings object, and store a back pointer to
* the backend singleton
*/
ctx->settings = clutter_settings_get_default ();
_clutter_settings_set_backend (ctx->settings, ctx->backend);
#ifdef CLUTTER_ENABLE_DEBUG #ifdef CLUTTER_ENABLE_DEBUG
ctx->timer = g_timer_new (); ctx->timer = g_timer_new ();
g_timer_start (ctx->timer); g_timer_start (ctx->timer);
@ -1368,6 +1567,12 @@ pre_parse_hook (GOptionContext *context,
g_warning ("Locale not supported by C library.\n" g_warning ("Locale not supported by C library.\n"
"Using the fallback 'C' locale."); "Using the fallback 'C' locale.");
/* read the configuration file, if it exists; the configuration file
* determines the initial state of the settings, so that command line
* arguments can override them.
*/
clutter_config_read ();
clutter_context = _clutter_context_get_default (); clutter_context = _clutter_context_get_default ();
clutter_context->id_pool = _clutter_id_pool_new (256); clutter_context->id_pool = _clutter_id_pool_new (256);
@ -2005,14 +2210,27 @@ emit_pointer_event (ClutterEvent *event,
} }
static inline void static inline void
emit_keyboard_event (ClutterEvent *event) emit_keyboard_event (ClutterEvent *event,
ClutterInputDevice *device)
{ {
ClutterMainContext *context = _clutter_context_get_default (); ClutterMainContext *context = _clutter_context_get_default ();
if (context->keyboard_grab_actor == NULL) if (context->keyboard_grab_actor == NULL &&
emit_event (event, TRUE); (device == NULL || device->keyboard_grab_actor == NULL))
{
emit_event (event, FALSE);
}
else else
clutter_actor_event (context->keyboard_grab_actor, event, FALSE); {
if (context->keyboard_grab_actor != NULL)
{
clutter_actor_event (context->keyboard_grab_actor, event, FALSE);
}
else if (device != NULL && device->keyboard_grab_actor != NULL)
{
clutter_actor_event (context->keyboard_grab_actor, event, FALSE);
}
}
} }
static gboolean static gboolean
@ -2100,7 +2318,7 @@ _clutter_process_event_details (ClutterActor *stage,
} }
} }
emit_keyboard_event (event); emit_keyboard_event (event, device);
} }
break; break;
@ -2299,7 +2517,7 @@ _clutter_process_event_details (ClutterActor *stage,
} }
} }
/** /*
* _clutter_process_event * _clutter_process_event
* @event: a #ClutterEvent. * @event: a #ClutterEvent.
* *
@ -2409,23 +2627,34 @@ clutter_set_default_frame_rate (guint frames_per_sec)
static void static void
on_pointer_grab_weak_notify (gpointer data, on_grab_actor_destroy (ClutterActor *actor,
GObject *where_the_object_was) ClutterInputDevice *device)
{ {
ClutterInputDevice *dev = (ClutterInputDevice *)data; if (device == NULL)
ClutterMainContext *context;
context = _clutter_context_get_default ();
if (dev)
{ {
dev->pointer_grab_actor = NULL; ClutterMainContext *context = _clutter_context_get_default ();
clutter_ungrab_pointer_for_device (dev->id);
if (context->pointer_grab_actor == actor)
clutter_ungrab_pointer ();
if (context->keyboard_grab_actor == actor)
clutter_ungrab_keyboard ();
return;
} }
else
switch (device->device_type)
{ {
context->pointer_grab_actor = NULL; case CLUTTER_POINTER_DEVICE:
clutter_ungrab_pointer (); device->pointer_grab_actor = NULL;
break;
case CLUTTER_KEYBOARD_DEVICE:
device->keyboard_grab_actor = NULL;
break;
default:
g_assert_not_reached ();
} }
} }
@ -2444,8 +2673,10 @@ on_pointer_grab_weak_notify (gpointer data,
* using the #ClutterActor::captured-event signal should always be the * using the #ClutterActor::captured-event signal should always be the
* preferred way to intercept event delivery to reactive actors.</para></note> * preferred way to intercept event delivery to reactive actors.</para></note>
* *
* If you wish to grab all the pointer events for a specific input device, * This function should rarely be used.
* you should use clutter_grab_pointer_for_device(). *
* If a grab is required, you are strongly encouraged to use a specific
* input device by calling clutter_input_device_grab().
* *
* Since: 0.6 * Since: 0.6
*/ */
@ -2461,24 +2692,152 @@ clutter_grab_pointer (ClutterActor *actor)
if (context->pointer_grab_actor == actor) if (context->pointer_grab_actor == actor)
return; return;
if (context->pointer_grab_actor) if (context->pointer_grab_actor != NULL)
{ {
g_object_weak_unref (G_OBJECT (context->pointer_grab_actor), g_signal_handlers_disconnect_by_func (context->pointer_grab_actor,
on_pointer_grab_weak_notify, G_CALLBACK (on_grab_actor_destroy),
NULL); NULL);
context->pointer_grab_actor = NULL; context->pointer_grab_actor = NULL;
} }
if (actor) if (actor != NULL)
{ {
context->pointer_grab_actor = actor; context->pointer_grab_actor = actor;
g_object_weak_ref (G_OBJECT (actor), g_signal_connect (context->pointer_grab_actor, "destroy",
on_pointer_grab_weak_notify, G_CALLBACK (on_grab_actor_destroy),
NULL); NULL);
} }
} }
/**
* clutter_input_device_grab:
* @device: a #ClutterInputDevice
* @actor: a #ClutterActor
*
* Acquires a grab on @actor for the given @device.
*
* Any event coming from @device will be delivered to @actor, bypassing
* the usual event delivery mechanism, until the grab is released by
* calling clutter_input_device_ungrab().
*
* The grab is client-side: even if the windowing system used by the Clutter
* backend has the concept of "device grabs", Clutter will not use them.
*
* Only #ClutterInputDevice of types %CLUTTER_POINTER_DEVICE and
* %CLUTTER_KEYBOARD_DEVICE can hold a grab.
*
* Since: 1.10
*/
void
clutter_input_device_grab (ClutterInputDevice *device,
ClutterActor *actor)
{
ClutterActor **grab_actor;
g_return_if_fail (CLUTTER_IS_INPUT_DEVICE (device));
g_return_if_fail (CLUTTER_IS_ACTOR (actor));
switch (device->device_type)
{
case CLUTTER_POINTER_DEVICE:
grab_actor = &(device->pointer_grab_actor);
break;
case CLUTTER_KEYBOARD_DEVICE:
grab_actor = &(device->keyboard_grab_actor);
break;
default:
g_critical ("Only pointer and keyboard devices can grab an actor");
return;
}
if (*grab_actor != NULL)
{
g_signal_handlers_disconnect_by_func (*grab_actor,
G_CALLBACK (on_grab_actor_destroy),
device);
}
*grab_actor = actor;
g_signal_connect (*grab_actor,
"destroy",
G_CALLBACK (on_grab_actor_destroy),
device);
}
/**
* clutter_input_device_ungrab:
* @device: a #ClutterInputDevice
*
* Releases the grab on the @device, if one is in place.
*
* Since: 1.10
*/
void
clutter_input_device_ungrab (ClutterInputDevice *device)
{
ClutterActor **grab_actor;
g_return_if_fail (CLUTTER_IS_INPUT_DEVICE (device));
switch (device->device_type)
{
case CLUTTER_POINTER_DEVICE:
grab_actor = &(device->pointer_grab_actor);
break;
case CLUTTER_KEYBOARD_DEVICE:
grab_actor = &(device->keyboard_grab_actor);
break;
default:
return;
}
if (*grab_actor == NULL)
return;
g_signal_handlers_disconnect_by_func (*grab_actor,
G_CALLBACK (on_grab_actor_destroy),
device);
*grab_actor = NULL;
}
/**
* clutter_input_device_get_grabbed_actor:
* @device: a #ClutterInputDevice
*
* Retrieves a pointer to the #ClutterActor currently grabbing all
* the events coming from @device.
*
* Return value: (transfer none): a #ClutterActor, or %NULL
*
* Since: 1.10
*/
ClutterActor *
clutter_input_device_get_grabbed_actor (ClutterInputDevice *device)
{
g_return_val_if_fail (CLUTTER_IS_INPUT_DEVICE (device), NULL);
switch (device->device_type)
{
case CLUTTER_POINTER_DEVICE:
return device->pointer_grab_actor;
case CLUTTER_KEYBOARD_DEVICE:
return device->keyboard_grab_actor;
default:
g_critical ("Only pointer and keyboard devices can grab an actor");
}
return NULL;
}
/** /**
* clutter_grab_pointer_for_device: * clutter_grab_pointer_for_device:
* @actor: a #ClutterActor * @actor: a #ClutterActor
@ -2489,6 +2848,8 @@ clutter_grab_pointer (ClutterActor *actor)
* If @id is -1 then this function is equivalent to clutter_grab_pointer(). * If @id is -1 then this function is equivalent to clutter_grab_pointer().
* *
* Since: 0.8 * Since: 0.8
*
* Deprecated: 1.10: Use clutter_input_device_grab() instead.
*/ */
void void
clutter_grab_pointer_for_device (ClutterActor *actor, clutter_grab_pointer_for_device (ClutterActor *actor,
@ -2501,7 +2862,11 @@ clutter_grab_pointer_for_device (ClutterActor *actor,
/* essentially a global grab */ /* essentially a global grab */
if (id_ == -1) if (id_ == -1)
{ {
clutter_grab_pointer (actor); if (actor == NULL)
clutter_ungrab_pointer ();
else
clutter_grab_pointer (actor);
return; return;
} }
@ -2509,25 +2874,13 @@ clutter_grab_pointer_for_device (ClutterActor *actor,
if (dev == NULL) if (dev == NULL)
return; return;
if (dev->pointer_grab_actor == actor) if (dev->device_type != CLUTTER_POINTER_DEVICE)
return; return;
if (dev->pointer_grab_actor) if (actor == NULL)
{ clutter_input_device_ungrab (dev);
g_object_weak_unref (G_OBJECT (dev->pointer_grab_actor), else
on_pointer_grab_weak_notify, clutter_input_device_grab (dev, actor);
dev);
dev->pointer_grab_actor = NULL;
}
if (actor)
{
dev->pointer_grab_actor = actor;
g_object_weak_ref (G_OBJECT (actor),
on_pointer_grab_weak_notify,
dev);
}
} }
@ -2551,6 +2904,8 @@ clutter_ungrab_pointer (void)
* Removes an existing grab of the pointer events for device @id_. * Removes an existing grab of the pointer events for device @id_.
* *
* Since: 0.8 * Since: 0.8
*
* Deprecated: 1.10: Use clutter_input_device_ungrab() instead.
*/ */
void void
clutter_ungrab_pointer_for_device (gint id_) clutter_ungrab_pointer_for_device (gint id_)
@ -2578,18 +2933,6 @@ clutter_get_pointer_grab (void)
} }
static void
on_keyboard_grab_weak_notify (gpointer data,
GObject *where_the_object_was)
{
ClutterMainContext *context;
context = _clutter_context_get_default ();
context->keyboard_grab_actor = NULL;
clutter_ungrab_keyboard ();
}
/** /**
* clutter_grab_keyboard: * clutter_grab_keyboard:
* @actor: a #ClutterActor * @actor: a #ClutterActor
@ -2620,21 +2963,21 @@ clutter_grab_keyboard (ClutterActor *actor)
if (context->keyboard_grab_actor == actor) if (context->keyboard_grab_actor == actor)
return; return;
if (context->keyboard_grab_actor) if (context->keyboard_grab_actor != NULL)
{ {
g_object_weak_unref (G_OBJECT (context->keyboard_grab_actor), g_signal_handlers_disconnect_by_func (context->keyboard_grab_actor,
on_keyboard_grab_weak_notify, G_CALLBACK (on_grab_actor_destroy),
NULL); NULL);
context->keyboard_grab_actor = NULL; context->keyboard_grab_actor = NULL;
} }
if (actor) if (actor != NULL)
{ {
context->keyboard_grab_actor = actor; context->keyboard_grab_actor = actor;
g_object_weak_ref (G_OBJECT (actor), g_signal_connect (context->keyboard_grab_actor, "destroy",
on_keyboard_grab_weak_notify, G_CALLBACK (on_grab_actor_destroy),
NULL); NULL);
} }
} }
@ -2679,6 +3022,9 @@ clutter_get_keyboard_grab (void)
* drawn. * drawn.
* *
* Since: 0.8 * Since: 0.8
*
* Deprecated: 1.10: Use clutter_get_font_map() and
* cogl_pango_font_map_clear_glyph_cache() instead.
*/ */
void void
clutter_clear_glyph_cache (void) clutter_clear_glyph_cache (void)
@ -2703,6 +3049,9 @@ clutter_clear_glyph_cache (void)
* introduce some artifacts if the text is animated. * introduce some artifacts if the text is animated.
* *
* Since: 1.0 * Since: 1.0
*
* Deprecated: 1.10: Use clutter_backend_set_font_options() and the
* #cairo_font_option_t API.
*/ */
void void
clutter_set_font_flags (ClutterFontFlags flags) clutter_set_font_flags (ClutterFontFlags flags)
@ -2754,6 +3103,9 @@ clutter_set_font_flags (ClutterFontFlags flags)
* Return value: The font flags * Return value: The font flags
* *
* Since: 1.0 * Since: 1.0
*
* Deprecated: 1.10: Use clutter_backend_get_font_options() and the
* #cairo_font_options_t API.
*/ */
ClutterFontFlags ClutterFontFlags
clutter_get_font_flags (void) clutter_get_font_flags (void)
@ -2797,6 +3149,8 @@ clutter_get_font_flags (void)
* Return value: (transfer none): a #ClutterInputDevice, or %NULL * Return value: (transfer none): a #ClutterInputDevice, or %NULL
* *
* Since: 0.8 * Since: 0.8
*
* Deprecated: 1.10: Use clutter_device_manager_get_device() instead.
*/ */
ClutterInputDevice * ClutterInputDevice *
clutter_get_input_device_for_id (gint id_) clutter_get_input_device_for_id (gint id_)

View file

@ -96,7 +96,10 @@ void clutter_main (void);
void clutter_main_quit (void); void clutter_main_quit (void);
gint clutter_main_level (void); gint clutter_main_level (void);
#if !defined(CLUTTER_DISABLE_DEPRECATED) || defined(CLUTTER_COMPILATION)
CLUTTER_DEPRECATED_FOR(clutter_stage_ensure_redraw)
void clutter_redraw (ClutterStage *stage); void clutter_redraw (ClutterStage *stage);
#endif
void clutter_do_event (ClutterEvent *event); void clutter_do_event (ClutterEvent *event);
@ -107,7 +110,8 @@ gulong clutter_get_timestamp (void);
gboolean clutter_get_accessibility_enabled (void); gboolean clutter_get_accessibility_enabled (void);
/* Threading functions */ /* Threading functions */
#ifndef CLUTTER_DISABLE_DEPRECATED #if !defined(CLUTTER_DISABLE_DEPRECATED) || defined(CLUTTER_COMPILATION)
CLUTTER_DEPRECATED
void clutter_threads_init (void); void clutter_threads_init (void);
#endif #endif
@ -130,10 +134,12 @@ guint clutter_threads_add_timeout_full (gint priority,
gpointer data, gpointer data,
GDestroyNotify notify); GDestroyNotify notify);
#ifndef CLUTTER_DISABLE_DEPRECATED #if !defined(CLUTTER_DISABLE_DEPRECATED) || defined(CLUTTER_COMPILATION)
CLUTTER_DEPRECATED
guint clutter_threads_add_frame_source (guint fps, guint clutter_threads_add_frame_source (guint fps,
GSourceFunc func, GSourceFunc func,
gpointer data); gpointer data);
CLUTTER_DEPRECATED
guint clutter_threads_add_frame_source_full (gint priority, guint clutter_threads_add_frame_source_full (gint priority,
guint fps, guint fps,
GSourceFunc func, GSourceFunc func,
@ -146,8 +152,11 @@ guint clutter_threads_add_repaint_func (GSourceFunc func,
GDestroyNotify notify); GDestroyNotify notify);
void clutter_threads_remove_repaint_func (guint handle_id); void clutter_threads_remove_repaint_func (guint handle_id);
#ifndef CLUTTER_DISABLE_DEPRECATED #if !defined(CLUTTER_DISABLE_DEPRECATED) || defined(CLUTTER_COMPILATION)
CLUTTER_DEPRECATED_FOR(clutter_stage_set_motion_events_enabled)
void clutter_set_motion_events_enabled (gboolean enable); void clutter_set_motion_events_enabled (gboolean enable);
CLUTTER_DEPRECATED_FOR(clutter_stage_get_motion_events_enabled)
gboolean clutter_get_motion_events_enabled (void); gboolean clutter_get_motion_events_enabled (void);
#endif /* CLUTTER_DISABLE_DEPRECATED */ #endif /* CLUTTER_DISABLE_DEPRECATED */
@ -162,15 +171,28 @@ void clutter_grab_keyboard (ClutterActor *actor);
void clutter_ungrab_keyboard (void); void clutter_ungrab_keyboard (void);
ClutterActor * clutter_get_keyboard_grab (void); ClutterActor * clutter_get_keyboard_grab (void);
#if !defined(CLUTTER_DISABLE_DEPRECATED) || defined(CLUTTER_COMPILATION)
CLUTTER_DEPRECATED_FOR(cogl_pango_font_map_clear_glyph_cache)
void clutter_clear_glyph_cache (void); void clutter_clear_glyph_cache (void);
void clutter_set_font_flags (ClutterFontFlags flags);
ClutterFontFlags clutter_get_font_flags (void);
CLUTTER_DEPRECATED_FOR(clutter_backend_set_font_options)
void clutter_set_font_flags (ClutterFontFlags flags);
CLUTTER_DEPRECATED_FOR(clutter_backend_get_font_options)
ClutterFontFlags clutter_get_font_flags (void);
#endif /* CLUTTER_DISABLE_DEPRECATED */
#if !defined(CLUTTER_DISABLE_DEPRECATED) || defined(CLUTTER_COMPILATION)
CLUTTER_DEPRECATED_FOR(clutter_device_manager_get_device)
ClutterInputDevice *clutter_get_input_device_for_id (gint id_); ClutterInputDevice *clutter_get_input_device_for_id (gint id_);
CLUTTER_DEPRECATED_FOR(clutter_input_device_grab)
void clutter_grab_pointer_for_device (ClutterActor *actor, void clutter_grab_pointer_for_device (ClutterActor *actor,
gint id_); gint id_);
CLUTTER_DEPRECATED_FOR(clutter_input_device_ungrab)
void clutter_ungrab_pointer_for_device (gint id_); void clutter_ungrab_pointer_for_device (gint id_);
#endif /* CLUTTER_DISABLE_DEPRECATED */
PangoFontMap * clutter_get_font_map (void); PangoFontMap * clutter_get_font_map (void);

View file

@ -232,7 +232,7 @@ clutter_model_real_get_column_type (ClutterModel *model,
{ {
ClutterModelPrivate *priv = model->priv; ClutterModelPrivate *priv = model->priv;
if (column < 0 || column >= clutter_model_get_n_columns (model)) if (column >= clutter_model_get_n_columns (model))
return G_TYPE_INVALID; return G_TYPE_INVALID;
return priv->column_types[column]; return priv->column_types[column];
@ -244,7 +244,7 @@ clutter_model_real_get_column_name (ClutterModel *model,
{ {
ClutterModelPrivate *priv = model->priv; ClutterModelPrivate *priv = model->priv;
if (column < 0 || column >= clutter_model_get_n_columns (model)) if (column >= clutter_model_get_n_columns (model))
return NULL; return NULL;
if (priv->column_names && priv->column_names[column]) if (priv->column_names && priv->column_names[column])
@ -1390,7 +1390,7 @@ clutter_model_get_column_name (ClutterModel *model,
g_return_val_if_fail (CLUTTER_IS_MODEL (model), NULL); g_return_val_if_fail (CLUTTER_IS_MODEL (model), NULL);
if (column < 0 || column >= clutter_model_get_n_columns (model)) if (column >= clutter_model_get_n_columns (model))
{ {
g_warning ("%s: Invalid column id value %d\n", G_STRLOC, column); g_warning ("%s: Invalid column id value %d\n", G_STRLOC, column);
return NULL; return NULL;
@ -1422,7 +1422,7 @@ clutter_model_get_column_type (ClutterModel *model,
g_return_val_if_fail (CLUTTER_IS_MODEL (model), G_TYPE_INVALID); g_return_val_if_fail (CLUTTER_IS_MODEL (model), G_TYPE_INVALID);
if (column < 0 || column >= clutter_model_get_n_columns (model)) if (column >= clutter_model_get_n_columns (model))
{ {
g_warning ("%s: Invalid column id value %d\n", G_STRLOC, column); g_warning ("%s: Invalid column id value %d\n", G_STRLOC, column);
return G_TYPE_INVALID; return G_TYPE_INVALID;
@ -2003,7 +2003,7 @@ clutter_model_iter_set_internal_valist (ClutterModelIter *iter,
gchar *error = NULL; gchar *error = NULL;
GType col_type; GType col_type;
if (column < 0 || column >= clutter_model_get_n_columns (model)) if (column >= clutter_model_get_n_columns (model))
{ {
g_warning ("%s: Invalid column number %d added to iter " g_warning ("%s: Invalid column number %d added to iter "
"(remember to end you list of columns with a -1)", "(remember to end you list of columns with a -1)",
@ -2169,7 +2169,7 @@ clutter_model_iter_get_valist (ClutterModelIter *iter,
gchar *error = NULL; gchar *error = NULL;
GType col_type; GType col_type;
if (column < 0 || column >= clutter_model_get_n_columns (model)) if (column >= clutter_model_get_n_columns (model))
{ {
g_warning ("%s: Invalid column number %d added to iter " g_warning ("%s: Invalid column number %d added to iter "
"(remember to end you list of columns with a -1)", "(remember to end you list of columns with a -1)",

View file

@ -28,9 +28,8 @@
#ifndef __CLUTTER_PATH_H__ #ifndef __CLUTTER_PATH_H__
#define __CLUTTER_PATH_H__ #define __CLUTTER_PATH_H__
#include <glib-object.h>
#include <clutter/clutter-types.h>
#include <cairo.h> #include <cairo.h>
#include <clutter/clutter-types.h>
G_BEGIN_DECLS G_BEGIN_DECLS
@ -42,40 +41,6 @@ G_BEGIN_DECLS
#define CLUTTER_IS_PATH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_PATH)) #define CLUTTER_IS_PATH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_PATH))
#define CLUTTER_PATH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_PATH, ClutterPathClass)) #define CLUTTER_PATH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_PATH, ClutterPathClass))
#define CLUTTER_PATH_RELATIVE (32)
/**
* ClutterPathNodeType:
* @CLUTTER_PATH_MOVE_TO: jump to the given position
* @CLUTTER_PATH_LINE_TO: create a line from the last node to the
* given position
* @CLUTTER_PATH_CURVE_TO: bezier curve using the last position and
* three control points.
* @CLUTTER_PATH_CLOSE: create a line from the last node to the last
* %CLUTTER_PATH_MOVE_TO node.
* @CLUTTER_PATH_REL_MOVE_TO: same as %CLUTTER_PATH_MOVE_TO but with
* coordinates relative to the last node.
* @CLUTTER_PATH_REL_LINE_TO: same as %CLUTTER_PATH_LINE_TO but with
* coordinates relative to the last node.
* @CLUTTER_PATH_REL_CURVE_TO: same as %CLUTTER_PATH_CURVE_TO but with
* coordinates relative to the last node.
*
* Types of nodes in a #ClutterPath.
*
* Since: 1.0
*/
typedef enum {
CLUTTER_PATH_MOVE_TO = 0,
CLUTTER_PATH_LINE_TO = 1,
CLUTTER_PATH_CURVE_TO = 2,
CLUTTER_PATH_CLOSE = 3,
CLUTTER_PATH_REL_MOVE_TO = CLUTTER_PATH_MOVE_TO | CLUTTER_PATH_RELATIVE,
CLUTTER_PATH_REL_LINE_TO = CLUTTER_PATH_LINE_TO | CLUTTER_PATH_RELATIVE,
CLUTTER_PATH_REL_CURVE_TO = CLUTTER_PATH_CURVE_TO | CLUTTER_PATH_RELATIVE
} ClutterPathNodeType;
typedef struct _ClutterPath ClutterPath;
typedef struct _ClutterPathClass ClutterPathClass; typedef struct _ClutterPathClass ClutterPathClass;
typedef struct _ClutterPathPrivate ClutterPathPrivate; typedef struct _ClutterPathPrivate ClutterPathPrivate;
typedef struct _ClutterPathNode ClutterPathNode; typedef struct _ClutterPathNode ClutterPathNode;

View file

@ -1937,7 +1937,7 @@ void
_clutter_script_construct_object (ClutterScript *script, _clutter_script_construct_object (ClutterScript *script,
ObjectInfo *oinfo) ObjectInfo *oinfo)
{ {
GArray *params; GArray *params = NULL;
guint i; guint i;
/* we have completely updated the object */ /* we have completely updated the object */

View file

@ -29,7 +29,6 @@
#define __CLUTTER_SCRIPT_H__ #define __CLUTTER_SCRIPT_H__
#include <clutter/clutter-types.h> #include <clutter/clutter-types.h>
#include <clutter/clutter-state.h>
G_BEGIN_DECLS G_BEGIN_DECLS

View file

@ -0,0 +1,16 @@
#ifndef __CLUTTER_SETTINGS_PRIVATE_H__
#define __CLUTTER_SETTINGS_PRIVATE_H__
#include <clutter/clutter-backend-private.h>
#include <clutter/clutter-settings.h>
G_BEGIN_DECLS
void _clutter_settings_set_backend (ClutterSettings *settings,
ClutterBackend *backend);
void _clutter_settings_read_from_key_file (ClutterSettings *settings,
GKeyFile *key_file);
G_END_DECLS
#endif /* __CLUTTER_SETTINGS_PRIVATE_H__ */

View file

@ -118,6 +118,9 @@ settings_update_font_options (ClutterSettings *self)
cairo_subpixel_order_t subpixel_order = CAIRO_SUBPIXEL_ORDER_DEFAULT; cairo_subpixel_order_t subpixel_order = CAIRO_SUBPIXEL_ORDER_DEFAULT;
cairo_font_options_t *options; cairo_font_options_t *options;
if (self->backend == NULL)
return;
options = cairo_font_options_create (); options = cairo_font_options_create ();
cairo_font_options_set_hint_metrics (options, CAIRO_HINT_METRICS_ON); cairo_font_options_set_hint_metrics (options, CAIRO_HINT_METRICS_ON);
@ -187,7 +190,8 @@ settings_update_font_name (ClutterSettings *self)
{ {
CLUTTER_NOTE (BACKEND, "New font-name: %s", self->font_name); CLUTTER_NOTE (BACKEND, "New font-name: %s", self->font_name);
g_signal_emit_by_name (self->backend, "font-changed"); if (self->backend != NULL)
g_signal_emit_by_name (self->backend, "font-changed");
} }
static void static void
@ -195,13 +199,17 @@ settings_update_resolution (ClutterSettings *self)
{ {
CLUTTER_NOTE (BACKEND, "New resolution: %.2f", self->resolution); CLUTTER_NOTE (BACKEND, "New resolution: %.2f", self->resolution);
g_signal_emit_by_name (self->backend, "resolution-changed"); if (self->backend != NULL)
g_signal_emit_by_name (self->backend, "resolution-changed");
} }
static void static void
settings_update_fontmap (ClutterSettings *self, settings_update_fontmap (ClutterSettings *self,
guint stamp) guint stamp)
{ {
if (self->backend == NULL)
return;
#ifdef HAVE_PANGO_FT2 #ifdef HAVE_PANGO_FT2
CLUTTER_NOTE (BACKEND, "Update fontmaps (stamp: %d)", stamp); CLUTTER_NOTE (BACKEND, "Update fontmaps (stamp: %d)", stamp);
@ -391,7 +399,8 @@ clutter_settings_dispatch_properties_changed (GObject *gobject,
klass->dispatch_properties_changed (gobject, n_pspecs, pspecs); klass->dispatch_properties_changed (gobject, n_pspecs, pspecs);
/* emit settings-changed just once for multiple properties */ /* emit settings-changed just once for multiple properties */
g_signal_emit_by_name (self->backend, "settings-changed"); if (self->backend != NULL)
g_signal_emit_by_name (self->backend, "settings-changed");
} }
static void static void
@ -405,13 +414,17 @@ clutter_settings_class_init (ClutterSettingsClass *klass)
* A back pointer to the #ClutterBackend * A back pointer to the #ClutterBackend
* *
* Since: 1.4 * Since: 1.4
*
* Deprecated: 1.10
*/ */
obj_props[PROP_BACKEND] = obj_props[PROP_BACKEND] =
g_param_spec_object ("backend", g_param_spec_object ("backend",
"Backend", "Backend",
"A pointer to the backend", "A pointer to the backend",
CLUTTER_TYPE_BACKEND, CLUTTER_TYPE_BACKEND,
CLUTTER_PARAM_WRITABLE | G_PARAM_CONSTRUCT_ONLY); CLUTTER_PARAM_WRITABLE |
G_PARAM_DEPRECATED |
G_PARAM_CONSTRUCT_ONLY);
/** /**
* ClutterSettings:double-click-time: * ClutterSettings:double-click-time:
@ -656,14 +669,123 @@ clutter_settings_init (ClutterSettings *self)
ClutterSettings * ClutterSettings *
clutter_settings_get_default (void) clutter_settings_get_default (void)
{ {
ClutterMainContext *context = _clutter_context_get_default (); static ClutterSettings *settings = NULL;
if (G_LIKELY (context->settings != NULL)) if (G_UNLIKELY (settings == NULL))
return context->settings; settings = g_object_new (CLUTTER_TYPE_SETTINGS, NULL);
context->settings = g_object_new (CLUTTER_TYPE_SETTINGS, return settings;
"backend", context->backend, }
NULL);
void
return context->settings; _clutter_settings_set_backend (ClutterSettings *settings,
ClutterBackend *backend)
{
g_assert (CLUTTER_IS_SETTINGS (settings));
g_assert (CLUTTER_IS_BACKEND (backend));
settings->backend = backend;
}
#define SETTINGS_GROUP "Settings"
void
_clutter_settings_read_from_key_file (ClutterSettings *settings,
GKeyFile *keyfile)
{
GObjectClass *settings_class;
GObject *settings_obj;
GParamSpec **pspecs;
guint n_pspecs, i;
if (!g_key_file_has_group (keyfile, SETTINGS_GROUP))
return;
settings_obj = G_OBJECT (settings);
settings_class = G_OBJECT_GET_CLASS (settings);
pspecs = g_object_class_list_properties (settings_class, &n_pspecs);
for (i = 0; i < n_pspecs; i++)
{
GParamSpec *pspec = pspecs[i];
const gchar *p_name = pspec->name;
GType p_type = G_TYPE_FUNDAMENTAL (pspec->value_type);
GValue value = G_VALUE_INIT;
GError *key_error = NULL;
g_value_init (&value, p_type);
switch (p_type)
{
case G_TYPE_INT:
case G_TYPE_UINT:
{
gint val;
val = g_key_file_get_integer (keyfile,
SETTINGS_GROUP, p_name,
&key_error);
if (p_type == G_TYPE_INT)
g_value_set_int (&value, val);
else
g_value_set_uint (&value, val);
}
break;
case G_TYPE_BOOLEAN:
{
gboolean val;
val = g_key_file_get_boolean (keyfile,
SETTINGS_GROUP, p_name,
&key_error);
g_value_set_boolean (&value, val);
}
break;
case G_TYPE_FLOAT:
case G_TYPE_DOUBLE:
{
gdouble val;
val = g_key_file_get_double (keyfile,
SETTINGS_GROUP, p_name,
&key_error);
if (p_type == G_TYPE_FLOAT)
g_value_set_float (&value, val);
else
g_value_set_double (&value, val);
}
break;
case G_TYPE_STRING:
{
gchar *val;
val = g_key_file_get_string (keyfile,
SETTINGS_GROUP, p_name,
&key_error);
g_value_take_string (&value, val);
}
break;
}
if (key_error != NULL &&
key_error->domain != G_KEY_FILE_ERROR &&
key_error->code != G_KEY_FILE_ERROR_KEY_NOT_FOUND)
{
g_critical ("Unable to read the value for setting '%s': %s",
p_name,
key_error->message);
}
if (key_error == NULL)
g_object_set_property (settings_obj, p_name, &value);
else
g_error_free (key_error);
g_value_unset (&value);
}
g_free (pspecs);
} }

View file

@ -48,24 +48,6 @@ G_BEGIN_DECLS
typedef struct _ClutterSnapConstraint ClutterSnapConstraint; typedef struct _ClutterSnapConstraint ClutterSnapConstraint;
typedef struct _ClutterSnapConstraintClass ClutterSnapConstraintClass; typedef struct _ClutterSnapConstraintClass ClutterSnapConstraintClass;
/**
* ClutterSnapEdge:
* @CLUTTER_SNAP_EDGE_TOP: the top edge
* @CLUTTER_SNAP_EDGE_RIGHT: the right edge
* @CLUTTER_SNAP_EDGE_BOTTOM: the bottom edge
* @CLUTTER_SNAP_EDGE_LEFT: the left edge
*
* The edge to snap
*
* Since: 1.6
*/
typedef enum {
CLUTTER_SNAP_EDGE_TOP,
CLUTTER_SNAP_EDGE_RIGHT,
CLUTTER_SNAP_EDGE_BOTTOM,
CLUTTER_SNAP_EDGE_LEFT
} ClutterSnapEdge;
GType clutter_snap_constraint_get_type (void) G_GNUC_CONST; GType clutter_snap_constraint_get_type (void) G_GNUC_CONST;
ClutterConstraint * clutter_snap_constraint_new (ClutterActor *source, ClutterConstraint * clutter_snap_constraint_new (ClutterActor *source,

View file

@ -72,22 +72,6 @@ G_BEGIN_DECLS
#endif /* !CLUTTER_DISABLE_DEPRECATED */ #endif /* !CLUTTER_DISABLE_DEPRECATED */
/**
* ClutterPickMode:
* @CLUTTER_PICK_NONE: Do not paint any actor
* @CLUTTER_PICK_REACTIVE: Paint only the reactive actors
* @CLUTTER_PICK_ALL: Paint all actors
*
* Controls the paint cycle of the scene graph when in pick mode
*
* Since: 1.0
*/
typedef enum {
CLUTTER_PICK_NONE = 0,
CLUTTER_PICK_REACTIVE,
CLUTTER_PICK_ALL
} ClutterPickMode;
typedef struct _ClutterPerspective ClutterPerspective; typedef struct _ClutterPerspective ClutterPerspective;
typedef struct _ClutterFog ClutterFog; typedef struct _ClutterFog ClutterFog;

View file

@ -25,7 +25,6 @@
#define __CLUTTER_STATE_H__ #define __CLUTTER_STATE_H__
#include <clutter/clutter-types.h> #include <clutter/clutter-types.h>
#include <clutter/clutter-timeline.h>
G_BEGIN_DECLS G_BEGIN_DECLS
@ -37,7 +36,6 @@ G_BEGIN_DECLS
#define CLUTTER_IS_STATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_STATE)) #define CLUTTER_IS_STATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_STATE))
#define CLUTTER_STATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_STATE, ClutterStateClass)) #define CLUTTER_STATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_STATE, ClutterStateClass))
typedef struct _ClutterState ClutterState;
typedef struct _ClutterStatePrivate ClutterStatePrivate; typedef struct _ClutterStatePrivate ClutterStatePrivate;
typedef struct _ClutterStateClass ClutterStateClass; typedef struct _ClutterStateClass ClutterStateClass;

View file

@ -48,24 +48,6 @@ typedef struct _ClutterSwipeAction ClutterSwipeAction;
typedef struct _ClutterSwipeActionPrivate ClutterSwipeActionPrivate; typedef struct _ClutterSwipeActionPrivate ClutterSwipeActionPrivate;
typedef struct _ClutterSwipeActionClass ClutterSwipeActionClass; typedef struct _ClutterSwipeActionClass ClutterSwipeActionClass;
/**
* ClutterSwipeDirection:
* @CLUTTER_SWIPE_DIRECTION_UP: Upwards swipe gesture
* @CLUTTER_SWIPE_DIRECTION_DOWN: Downwards swipe gesture
* @CLUTTER_SWIPE_DIRECTION_LEFT: Leftwards swipe gesture
* @CLUTTER_SWIPE_DIRECTION_RIGHT: Rightwards swipe gesture
*
* The main direction of the swipe gesture
*
* Since: 1.8
*/
typedef enum { /*< prefix=CLUTTER_SWIPE_DIRECTION >*/
CLUTTER_SWIPE_DIRECTION_UP = 1 << 0,
CLUTTER_SWIPE_DIRECTION_DOWN = 1 << 1,
CLUTTER_SWIPE_DIRECTION_LEFT = 1 << 2,
CLUTTER_SWIPE_DIRECTION_RIGHT = 1 << 3
} ClutterSwipeDirection;
/** /**
* ClutterSwipeAction: * ClutterSwipeAction:
* *

View file

@ -47,25 +47,6 @@ typedef struct _ClutterTableLayout ClutterTableLayout;
typedef struct _ClutterTableLayoutPrivate ClutterTableLayoutPrivate; typedef struct _ClutterTableLayoutPrivate ClutterTableLayoutPrivate;
typedef struct _ClutterTableLayoutClass ClutterTableLayoutClass; typedef struct _ClutterTableLayoutClass ClutterTableLayoutClass;
/**
* ClutterTableAlignment:
* @CLUTTER_TABLE_ALIGNMENT_START: Align the child to the top or to the
* left of a cell in the table, depending on the axis
* @CLUTTER_TABLE_ALIGNMENT_CENTER: Align the child to the center of
* a cell in the table
* @CLUTTER_TABLE_ALIGNMENT_END: Align the child to the bottom or to the
* right of a cell in the table, depending on the axis
*
* The alignment policies available on each axis of the #ClutterTableLayout
*
* Since: 1.4
*/
typedef enum {
CLUTTER_TABLE_ALIGNMENT_START,
CLUTTER_TABLE_ALIGNMENT_CENTER,
CLUTTER_TABLE_ALIGNMENT_END
} ClutterTableAlignment;
/** /**
* ClutterTableLayout: * ClutterTableLayout:
* *

View file

@ -121,46 +121,6 @@ struct _ClutterTextureClass
void (*_clutter_texture5) (void); void (*_clutter_texture5) (void);
}; };
/**
* ClutterTextureFlags:
* @CLUTTER_TEXTURE_NONE: No flags
* @CLUTTER_TEXTURE_RGB_FLAG_BGR: FIXME
* @CLUTTER_TEXTURE_RGB_FLAG_PREMULT: FIXME
* @CLUTTER_TEXTURE_YUV_FLAG_YUV2: FIXME
*
* Flags for clutter_texture_set_from_rgb_data() and
* clutter_texture_set_from_yuv_data().
*
* Since: 0.4
*/
typedef enum { /*< prefix=CLUTTER_TEXTURE >*/
CLUTTER_TEXTURE_NONE = 0,
CLUTTER_TEXTURE_RGB_FLAG_BGR = 1 << 1,
CLUTTER_TEXTURE_RGB_FLAG_PREMULT = 1 << 2, /* FIXME: not handled */
CLUTTER_TEXTURE_YUV_FLAG_YUV2 = 1 << 3
/* FIXME: add compressed types ? */
} ClutterTextureFlags;
/**
* ClutterTextureQuality:
* @CLUTTER_TEXTURE_QUALITY_LOW: fastest rendering will use nearest neighbour
* interpolation when rendering. good setting.
* @CLUTTER_TEXTURE_QUALITY_MEDIUM: higher quality rendering without using
* extra resources.
* @CLUTTER_TEXTURE_QUALITY_HIGH: render the texture with the best quality
* available using extra memory.
*
* Enumaration controlling the texture quality.
*
* Since: 0.8
*/
typedef enum { /*< prefix=CLUTTER_TEXTURE_QUALITY >*/
CLUTTER_TEXTURE_QUALITY_LOW,
CLUTTER_TEXTURE_QUALITY_MEDIUM,
CLUTTER_TEXTURE_QUALITY_HIGH
} ClutterTextureQuality;
GType clutter_texture_get_type (void) G_GNUC_CONST; GType clutter_texture_get_type (void) G_GNUC_CONST;
ClutterActor * clutter_texture_new (void); ClutterActor * clutter_texture_new (void);
@ -168,6 +128,7 @@ ClutterActor * clutter_texture_new_from_file (const gchar
GError **error); GError **error);
#ifndef CLUTTER_DISABLE_DEPRECATED #ifndef CLUTTER_DISABLE_DEPRECATED
CLUTTER_DEPRECATED_FOR(ClutterOffscreenEffect)
ClutterActor * clutter_texture_new_from_actor (ClutterActor *actor); ClutterActor * clutter_texture_new_from_actor (ClutterActor *actor);
#endif /* CLUTTER_DISABLE_DEPRECATED */ #endif /* CLUTTER_DISABLE_DEPRECATED */

View file

@ -28,8 +28,7 @@
#ifndef __CLUTTER_TIMELINE_H__ #ifndef __CLUTTER_TIMELINE_H__
#define __CLUTTER_TIMELINE_H__ #define __CLUTTER_TIMELINE_H__
#include <glib-object.h> #include <clutter/clutter-types.h>
#include <clutter/clutter-fixed.h>
G_BEGIN_DECLS G_BEGIN_DECLS
@ -40,21 +39,6 @@ G_BEGIN_DECLS
#define CLUTTER_IS_TIMELINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_TIMELINE)) #define CLUTTER_IS_TIMELINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_TIMELINE))
#define CLUTTER_TIMELINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_TIMELINE, ClutterTimelineClass)) #define CLUTTER_TIMELINE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_TIMELINE, ClutterTimelineClass))
/**
* ClutterTimelineDirection:
* @CLUTTER_TIMELINE_FORWARD: forward direction for a timeline
* @CLUTTER_TIMELINE_BACKWARD: backward direction for a timeline
*
* The direction of a #ClutterTimeline
*
* Since: 0.6
*/
typedef enum {
CLUTTER_TIMELINE_FORWARD,
CLUTTER_TIMELINE_BACKWARD
} ClutterTimelineDirection;
typedef struct _ClutterTimeline ClutterTimeline;
typedef struct _ClutterTimelineClass ClutterTimelineClass; typedef struct _ClutterTimelineClass ClutterTimelineClass;
typedef struct _ClutterTimelinePrivate ClutterTimelinePrivate; typedef struct _ClutterTimelinePrivate ClutterTimelinePrivate;

View file

@ -28,17 +28,30 @@
#ifndef __CLUTTER_TYPES_H__ #ifndef __CLUTTER_TYPES_H__
#define __CLUTTER_TYPES_H__ #define __CLUTTER_TYPES_H__
#include <glib-object.h> #include <clutter/clutter-enums.h>
G_BEGIN_DECLS G_BEGIN_DECLS
/* these macros are used to mark deprecated functions, and thus have to be
* exposed in a public header.
*
* do *not* use them in other libraries depending on Clutter: use G_DEPRECATED
* and G_DEPRECATED_FOR, or use your own wrappers around them.
*/
#ifdef CLUTTER_DISABLE_DEPRECATION_WARNINGS
#define CLUTTER_DEPRECATED
#define CLUTTER_DEPRECATED_FOR(f)
#else
#define CLUTTER_DEPRECATED G_DEPRECATED
#define CLUTTER_DEPRECATED_FOR(f) G_DEPRECATED_FOR(f)
#endif
#define CLUTTER_TYPE_ACTOR_BOX (clutter_actor_box_get_type ()) #define CLUTTER_TYPE_ACTOR_BOX (clutter_actor_box_get_type ())
#define CLUTTER_TYPE_GEOMETRY (clutter_geometry_get_type ()) #define CLUTTER_TYPE_GEOMETRY (clutter_geometry_get_type ())
#define CLUTTER_TYPE_KNOT (clutter_knot_get_type ()) #define CLUTTER_TYPE_KNOT (clutter_knot_get_type ())
#define CLUTTER_TYPE_PAINT_VOLUME (clutter_paint_volume_get_type ()) #define CLUTTER_TYPE_PAINT_VOLUME (clutter_paint_volume_get_type ())
#define CLUTTER_TYPE_VERTEX (clutter_vertex_get_type ()) #define CLUTTER_TYPE_VERTEX (clutter_vertex_get_type ())
/* Forward delarations to avoid header catch 22's */
typedef struct _ClutterActor ClutterActor; typedef struct _ClutterActor ClutterActor;
typedef struct _ClutterStage ClutterStage; typedef struct _ClutterStage ClutterStage;
@ -47,57 +60,32 @@ typedef struct _ClutterChildMeta ClutterChildMeta;
typedef struct _ClutterLayoutMeta ClutterLayoutMeta; typedef struct _ClutterLayoutMeta ClutterLayoutMeta;
typedef struct _ClutterActorMeta ClutterActorMeta; typedef struct _ClutterActorMeta ClutterActorMeta;
typedef struct _ClutterAlpha ClutterAlpha;
typedef struct _ClutterAnimatable ClutterAnimatable; /* dummy */
typedef struct _ClutterAnimator ClutterAnimator; typedef struct _ClutterAnimator ClutterAnimator;
typedef struct _ClutterState ClutterState;
typedef struct _ClutterTimeline ClutterTimeline;
typedef struct _ClutterAction ClutterAction; typedef struct _ClutterAction ClutterAction;
typedef struct _ClutterConstraint ClutterConstraint; typedef struct _ClutterConstraint ClutterConstraint;
typedef struct _ClutterEffect ClutterEffect; typedef struct _ClutterEffect ClutterEffect;
typedef struct _ClutterPath ClutterPath;
#if !defined(CLUTTER_DISABLE_DEPRECATED) || defined(CLUTTER_COMPILATION) #if !defined(CLUTTER_DISABLE_DEPRECATED) || defined(CLUTTER_COMPILATION)
typedef struct _ClutterBehaviour ClutterBehaviour;
typedef struct _ClutterShader ClutterShader; typedef struct _ClutterShader ClutterShader;
#endif #endif /* DISABLE_DEPRECATED */
typedef struct _ClutterColor ClutterColor;
typedef union _ClutterEvent ClutterEvent;
/**
* ClutterGravity:
* @CLUTTER_GRAVITY_NONE: Do not apply any gravity
* @CLUTTER_GRAVITY_NORTH: Scale from topmost downwards
* @CLUTTER_GRAVITY_NORTH_EAST: Scale from the top right corner
* @CLUTTER_GRAVITY_EAST: Scale from the right side
* @CLUTTER_GRAVITY_SOUTH_EAST: Scale from the bottom right corner
* @CLUTTER_GRAVITY_SOUTH: Scale from the bottom upwards
* @CLUTTER_GRAVITY_SOUTH_WEST: Scale from the bottom left corner
* @CLUTTER_GRAVITY_WEST: Scale from the left side
* @CLUTTER_GRAVITY_NORTH_WEST: Scale from the top left corner
* @CLUTTER_GRAVITY_CENTER: Scale from the center.
*
* Gravity of the scaling operations. When a gravity different than
* %CLUTTER_GRAVITY_NONE is used, an actor is scaled keeping the position
* of the specified portion at the same coordinates.
*
* Since: 0.2
*/
typedef enum { /*< prefix=CLUTTER_GRAVITY >*/
CLUTTER_GRAVITY_NONE = 0,
CLUTTER_GRAVITY_NORTH,
CLUTTER_GRAVITY_NORTH_EAST,
CLUTTER_GRAVITY_EAST,
CLUTTER_GRAVITY_SOUTH_EAST,
CLUTTER_GRAVITY_SOUTH,
CLUTTER_GRAVITY_SOUTH_WEST,
CLUTTER_GRAVITY_WEST,
CLUTTER_GRAVITY_NORTH_WEST,
CLUTTER_GRAVITY_CENTER
} ClutterGravity;
typedef struct _ClutterActorBox ClutterActorBox; typedef struct _ClutterActorBox ClutterActorBox;
typedef struct _ClutterColor ClutterColor;
typedef struct _ClutterGeometry ClutterGeometry; typedef struct _ClutterGeometry ClutterGeometry;
typedef struct _ClutterKnot ClutterKnot; typedef struct _ClutterKnot ClutterKnot;
typedef struct _ClutterVertex ClutterVertex; typedef struct _ClutterVertex ClutterVertex;
typedef union _ClutterEvent ClutterEvent;
/** /**
* ClutterPaintVolume: * ClutterPaintVolume:
* *
@ -249,224 +237,6 @@ void clutter_knot_free (ClutterKnot *knot);
gboolean clutter_knot_equal (const ClutterKnot *knot_a, gboolean clutter_knot_equal (const ClutterKnot *knot_a,
const ClutterKnot *knot_b); const ClutterKnot *knot_b);
/**
* ClutterRotateAxis:
* @CLUTTER_X_AXIS: Rotate around the X axis
* @CLUTTER_Y_AXIS: Rotate around the Y axis
* @CLUTTER_Z_AXIS: Rotate around the Z axis
*
* Axis of a rotation.
*
* Since: 0.4
*/
typedef enum { /*< prefix=CLUTTER >*/
CLUTTER_X_AXIS,
CLUTTER_Y_AXIS,
CLUTTER_Z_AXIS
} ClutterRotateAxis;
/**
* ClutterRotateDirection:
* @CLUTTER_ROTATE_CW: Clockwise rotation
* @CLUTTER_ROTATE_CCW: Counter-clockwise rotation
*
* Direction of a rotation.
*
* Since: 0.4
*/
typedef enum { /*< prefix=CLUTTER_ROTATE >*/
CLUTTER_ROTATE_CW,
CLUTTER_ROTATE_CCW
} ClutterRotateDirection;
/**
* ClutterRequestMode:
* @CLUTTER_REQUEST_HEIGHT_FOR_WIDTH: Height for width requests
* @CLUTTER_REQUEST_WIDTH_FOR_HEIGHT: Width for height requests
*
* Specifies the type of requests for a #ClutterActor.
*
* Since: 0.8
*/
typedef enum {
CLUTTER_REQUEST_HEIGHT_FOR_WIDTH,
CLUTTER_REQUEST_WIDTH_FOR_HEIGHT
} ClutterRequestMode;
/**
* ClutterAnimationMode:
* @CLUTTER_CUSTOM_MODE: custom progress function
* @CLUTTER_LINEAR: linear tweening
* @CLUTTER_EASE_IN_QUAD: quadratic tweening
* @CLUTTER_EASE_OUT_QUAD: quadratic tweening, inverse of
* %CLUTTER_EASE_IN_QUAD
* @CLUTTER_EASE_IN_OUT_QUAD: quadratic tweening, combininig
* %CLUTTER_EASE_IN_QUAD and %CLUTTER_EASE_OUT_QUAD
* @CLUTTER_EASE_IN_CUBIC: cubic tweening
* @CLUTTER_EASE_OUT_CUBIC: cubic tweening, invers of
* %CLUTTER_EASE_IN_CUBIC
* @CLUTTER_EASE_IN_OUT_CUBIC: cubic tweening, combining
* %CLUTTER_EASE_IN_CUBIC and %CLUTTER_EASE_OUT_CUBIC
* @CLUTTER_EASE_IN_QUART: quartic tweening
* @CLUTTER_EASE_OUT_QUART: quartic tweening, inverse of
* %CLUTTER_EASE_IN_QUART
* @CLUTTER_EASE_IN_OUT_QUART: quartic tweening, combining
* %CLUTTER_EASE_IN_QUART and %CLUTTER_EASE_OUT_QUART
* @CLUTTER_EASE_IN_QUINT: quintic tweening
* @CLUTTER_EASE_OUT_QUINT: quintic tweening, inverse of
* %CLUTTER_EASE_IN_QUINT
* @CLUTTER_EASE_IN_OUT_QUINT: fifth power tweening, combining
* %CLUTTER_EASE_IN_QUINT and %CLUTTER_EASE_OUT_QUINT
* @CLUTTER_EASE_IN_SINE: sinusoidal tweening
* @CLUTTER_EASE_OUT_SINE: sinusoidal tweening, inverse of
* %CLUTTER_EASE_IN_SINE
* @CLUTTER_EASE_IN_OUT_SINE: sine wave tweening, combining
* %CLUTTER_EASE_IN_SINE and %CLUTTER_EASE_OUT_SINE
* @CLUTTER_EASE_IN_EXPO: exponential tweening
* @CLUTTER_EASE_OUT_EXPO: exponential tweening, inverse of
* %CLUTTER_EASE_IN_EXPO
* @CLUTTER_EASE_IN_OUT_EXPO: exponential tweening, combining
* %CLUTTER_EASE_IN_EXPO and %CLUTTER_EASE_OUT_EXPO
* @CLUTTER_EASE_IN_CIRC: circular tweening
* @CLUTTER_EASE_OUT_CIRC: circular tweening, inverse of
* %CLUTTER_EASE_IN_CIRC
* @CLUTTER_EASE_IN_OUT_CIRC: circular tweening, combining
* %CLUTTER_EASE_IN_CIRC and %CLUTTER_EASE_OUT_CIRC
* @CLUTTER_EASE_IN_ELASTIC: elastic tweening, with offshoot on start
* @CLUTTER_EASE_OUT_ELASTIC: elastic tweening, with offshoot on end
* @CLUTTER_EASE_IN_OUT_ELASTIC: elastic tweening with offshoot on both ends
* @CLUTTER_EASE_IN_BACK: overshooting cubic tweening, with
* backtracking on start
* @CLUTTER_EASE_OUT_BACK: overshooting cubic tweening, with
* backtracking on end
* @CLUTTER_EASE_IN_OUT_BACK: overshooting cubic tweening, with
* backtracking on both ends
* @CLUTTER_EASE_IN_BOUNCE: exponentially decaying parabolic (bounce)
* tweening, with bounce on start
* @CLUTTER_EASE_OUT_BOUNCE: exponentially decaying parabolic (bounce)
* tweening, with bounce on end
* @CLUTTER_EASE_IN_OUT_BOUNCE: exponentially decaying parabolic (bounce)
* tweening, with bounce on both ends
* @CLUTTER_ANIMATION_LAST: last animation mode, used as a guard for
* registered global alpha functions
*
* The animation modes used by #ClutterAlpha and #ClutterAnimation. This
* enumeration can be expanded in later versions of Clutter. See the
* #ClutterAlpha documentation for a graph of all the animation modes.
*
* Every global alpha function registered using clutter_alpha_register_func()
* or clutter_alpha_register_closure() will have a logical id greater than
* %CLUTTER_ANIMATION_LAST.
*
* Since: 1.0
*/
typedef enum {
CLUTTER_CUSTOM_MODE = 0,
/* linear */
CLUTTER_LINEAR,
/* quadratic */
CLUTTER_EASE_IN_QUAD,
CLUTTER_EASE_OUT_QUAD,
CLUTTER_EASE_IN_OUT_QUAD,
/* cubic */
CLUTTER_EASE_IN_CUBIC,
CLUTTER_EASE_OUT_CUBIC,
CLUTTER_EASE_IN_OUT_CUBIC,
/* quartic */
CLUTTER_EASE_IN_QUART,
CLUTTER_EASE_OUT_QUART,
CLUTTER_EASE_IN_OUT_QUART,
/* quintic */
CLUTTER_EASE_IN_QUINT,
CLUTTER_EASE_OUT_QUINT,
CLUTTER_EASE_IN_OUT_QUINT,
/* sinusoidal */
CLUTTER_EASE_IN_SINE,
CLUTTER_EASE_OUT_SINE,
CLUTTER_EASE_IN_OUT_SINE,
/* exponential */
CLUTTER_EASE_IN_EXPO,
CLUTTER_EASE_OUT_EXPO,
CLUTTER_EASE_IN_OUT_EXPO,
/* circular */
CLUTTER_EASE_IN_CIRC,
CLUTTER_EASE_OUT_CIRC,
CLUTTER_EASE_IN_OUT_CIRC,
/* elastic */
CLUTTER_EASE_IN_ELASTIC,
CLUTTER_EASE_OUT_ELASTIC,
CLUTTER_EASE_IN_OUT_ELASTIC,
/* overshooting cubic */
CLUTTER_EASE_IN_BACK,
CLUTTER_EASE_OUT_BACK,
CLUTTER_EASE_IN_OUT_BACK,
/* exponentially decaying parabolic */
CLUTTER_EASE_IN_BOUNCE,
CLUTTER_EASE_OUT_BOUNCE,
CLUTTER_EASE_IN_OUT_BOUNCE,
/* guard, before registered alpha functions */
CLUTTER_ANIMATION_LAST
} ClutterAnimationMode;
/**
* ClutterFontFlags:
* @CLUTTER_FONT_MIPMAPPING: Set to use mipmaps for the glyph cache textures.
* @CLUTTER_FONT_HINTING: Set to enable hinting on the glyphs.
*
* Runtime flags to change the font quality. To be used with
* clutter_set_font_flags().
*
* Since: 1.0
*/
typedef enum
{
CLUTTER_FONT_MIPMAPPING = (1 << 0),
CLUTTER_FONT_HINTING = (1 << 1)
} ClutterFontFlags;
/**
* ClutterTextDirection:
* @CLUTTER_TEXT_DIRECTION_DEFAULT: Use the default setting, as returned
* by clutter_get_default_text_direction()
* @CLUTTER_TEXT_DIRECTION_LTR: Use left-to-right text direction
* @CLUTTER_TEXT_DIRECTION_RTL: Use right-to-left text direction
*
* The text direction to be used by #ClutterActor<!-- -->s
*
* Since: 1.2
*/
typedef enum {
CLUTTER_TEXT_DIRECTION_DEFAULT,
CLUTTER_TEXT_DIRECTION_LTR,
CLUTTER_TEXT_DIRECTION_RTL
} ClutterTextDirection;
/**
* ClutterShaderType:
* @CLUTTER_VERTEX_SHADER: a vertex shader
* @CLUTTER_FRAGMENT_SHADER: a fragment shader
*
* The type of GLSL shader program
*
* Since: 1.4
*/
typedef enum {
CLUTTER_VERTEX_SHADER,
CLUTTER_FRAGMENT_SHADER
} ClutterShaderType;
GType clutter_paint_volume_get_type (void) G_GNUC_CONST; GType clutter_paint_volume_get_type (void) G_GNUC_CONST;
ClutterPaintVolume *clutter_paint_volume_copy (const ClutterPaintVolume *pv); ClutterPaintVolume *clutter_paint_volume_copy (const ClutterPaintVolume *pv);
@ -491,82 +261,6 @@ void clutter_paint_volume_union (ClutterPaintVolume
gboolean clutter_paint_volume_set_from_allocation (ClutterPaintVolume *pv, gboolean clutter_paint_volume_set_from_allocation (ClutterPaintVolume *pv,
ClutterActor *actor); ClutterActor *actor);
/**
* ClutterModifierType:
* @CLUTTER_SHIFT_MASK: Mask applied by the Shift key
* @CLUTTER_LOCK_MASK: Mask applied by the Caps Lock key
* @CLUTTER_CONTROL_MASK: Mask applied by the Control key
* @CLUTTER_MOD1_MASK: Mask applied by the first Mod key
* @CLUTTER_MOD2_MASK: Mask applied by the second Mod key
* @CLUTTER_MOD3_MASK: Mask applied by the third Mod key
* @CLUTTER_MOD4_MASK: Mask applied by the fourth Mod key
* @CLUTTER_MOD5_MASK: Mask applied by the fifth Mod key
* @CLUTTER_BUTTON1_MASK: Mask applied by the first pointer button
* @CLUTTER_BUTTON2_MASK: Mask applied by the second pointer button
* @CLUTTER_BUTTON3_MASK: Mask applied by the third pointer button
* @CLUTTER_BUTTON4_MASK: Mask applied by the fourth pointer button
* @CLUTTER_BUTTON5_MASK: Mask applied by the fifth pointer button
* @CLUTTER_SUPER_MASK: Mask applied by the Super key
* @CLUTTER_HYPER_MASK: Mask applied by the Hyper key
* @CLUTTER_META_MASK: Mask applied by the Meta key
* @CLUTTER_RELEASE_MASK: Mask applied during release
* @CLUTTER_MODIFIER_MASK: A mask covering all modifier types
*
* Masks applied to a #ClutterEvent by modifiers.
*
* Note that Clutter may add internal values to events which include
* reserved values such as %CLUTTER_MODIFIER_RESERVED_13_MASK. Your code
* should preserve and ignore them. You can use %CLUTTER_MODIFIER_MASK to
* remove all reserved values.
*
* Since: 0.4
*/
typedef enum {
CLUTTER_SHIFT_MASK = 1 << 0,
CLUTTER_LOCK_MASK = 1 << 1,
CLUTTER_CONTROL_MASK = 1 << 2,
CLUTTER_MOD1_MASK = 1 << 3,
CLUTTER_MOD2_MASK = 1 << 4,
CLUTTER_MOD3_MASK = 1 << 5,
CLUTTER_MOD4_MASK = 1 << 6,
CLUTTER_MOD5_MASK = 1 << 7,
CLUTTER_BUTTON1_MASK = 1 << 8,
CLUTTER_BUTTON2_MASK = 1 << 9,
CLUTTER_BUTTON3_MASK = 1 << 10,
CLUTTER_BUTTON4_MASK = 1 << 11,
CLUTTER_BUTTON5_MASK = 1 << 12,
#ifndef __GTK_DOC_IGNORE__
CLUTTER_MODIFIER_RESERVED_13_MASK = 1 << 13,
CLUTTER_MODIFIER_RESERVED_14_MASK = 1 << 14,
CLUTTER_MODIFIER_RESERVED_15_MASK = 1 << 15,
CLUTTER_MODIFIER_RESERVED_16_MASK = 1 << 16,
CLUTTER_MODIFIER_RESERVED_17_MASK = 1 << 17,
CLUTTER_MODIFIER_RESERVED_18_MASK = 1 << 18,
CLUTTER_MODIFIER_RESERVED_19_MASK = 1 << 19,
CLUTTER_MODIFIER_RESERVED_20_MASK = 1 << 20,
CLUTTER_MODIFIER_RESERVED_21_MASK = 1 << 21,
CLUTTER_MODIFIER_RESERVED_22_MASK = 1 << 22,
CLUTTER_MODIFIER_RESERVED_23_MASK = 1 << 23,
CLUTTER_MODIFIER_RESERVED_24_MASK = 1 << 24,
CLUTTER_MODIFIER_RESERVED_25_MASK = 1 << 25,
#endif
CLUTTER_SUPER_MASK = 1 << 26,
CLUTTER_HYPER_MASK = 1 << 27,
CLUTTER_META_MASK = 1 << 28,
#ifndef __GTK_DOC_IGNORE__
CLUTTER_MODIFIER_RESERVED_29_MASK = 1 << 29,
#endif
CLUTTER_RELEASE_MASK = 1 << 30,
/* Combination of CLUTTER_SHIFT_MASK..CLUTTER_BUTTON5_MASK + CLUTTER_SUPER_MASK
+ CLUTTER_HYPER_MASK + CLUTTER_META_MASK + CLUTTER_RELEASE_MASK */
CLUTTER_MODIFIER_MASK = 0x5c001fff
} ClutterModifierType;
G_END_DECLS G_END_DECLS
#endif /* __CLUTTER_TYPES_H__ */ #endif /* __CLUTTER_TYPES_H__ */

View file

@ -37,28 +37,6 @@
G_BEGIN_DECLS G_BEGIN_DECLS
/**
* ClutterUnitType:
* @CLUTTER_UNIT_PIXEL: Unit expressed in pixels (with subpixel precision)
* @CLUTTER_UNIT_EM: Unit expressed in em
* @CLUTTER_UNIT_MM: Unit expressed in millimeters
* @CLUTTER_UNIT_POINT: Unit expressed in points
* @CLUTTER_UNIT_CM: Unit expressed in centimeters
*
* The type of unit in which a value is expressed
*
* This enumeration might be expanded at later date
*
* Since: 1.0
*/
typedef enum {
CLUTTER_UNIT_PIXEL,
CLUTTER_UNIT_EM,
CLUTTER_UNIT_MM,
CLUTTER_UNIT_POINT,
CLUTTER_UNIT_CM
} ClutterUnitType;
/** /**
* ClutterUnits: * ClutterUnits:
* *
@ -170,18 +148,18 @@ struct _ClutterParamSpecUnits
GType clutter_param_units_get_type (void) G_GNUC_CONST; GType clutter_param_units_get_type (void) G_GNUC_CONST;
GParamSpec * clutter_param_spec_units (const gchar *name, GParamSpec * clutter_param_spec_units (const gchar *name,
const gchar *nick, const gchar *nick,
const gchar *blurb, const gchar *blurb,
ClutterUnitType default_type, ClutterUnitType default_type,
gfloat minimum, gfloat minimum,
gfloat maximum, gfloat maximum,
gfloat default_value, gfloat default_value,
GParamFlags flags); GParamFlags flags);
void clutter_value_set_units (GValue *value, void clutter_value_set_units (GValue *value,
const ClutterUnits *units); const ClutterUnits *units);
const ClutterUnits * clutter_value_get_units (const GValue *value); const ClutterUnits * clutter_value_get_units (const GValue *value);
G_END_DECLS G_END_DECLS

View file

@ -28,13 +28,14 @@
#ifndef __CLUTTER_UTIL_H__ #ifndef __CLUTTER_UTIL_H__
#define __CLUTTER_UTIL_H__ #define __CLUTTER_UTIL_H__
#include <glib.h> #include <clutter/clutter-types.h>
G_BEGIN_DECLS G_BEGIN_DECLS
#ifndef CLUTTER_DISABLE_DEPRECATED #ifndef CLUTTER_DISABLE_DEPRECATED
gint clutter_util_next_p2 (gint a) G_GNUC_DEPRECATED; CLUTTER_DEPRECATED
gint clutter_util_next_p2 (gint a);
#endif /* CLUTTER_DISABLE_DEPRECATED */ #endif /* CLUTTER_DISABLE_DEPRECATED */

View file

@ -28,9 +28,8 @@
#define __CLUTTER_H_INSIDE__ #define __CLUTTER_H_INSIDE__
#include "clutter-deprecated.h"
#include "clutter-config.h" #include "clutter-config.h"
#include "clutter-types.h"
#include "clutter-action.h" #include "clutter-action.h"
#include "clutter-actor.h" #include "clutter-actor.h"
@ -41,13 +40,6 @@
#include "clutter-animation.h" #include "clutter-animation.h"
#include "clutter-animator.h" #include "clutter-animator.h"
#include "clutter-backend.h" #include "clutter-backend.h"
#include "clutter-behaviour-depth.h"
#include "clutter-behaviour-ellipse.h"
#include "clutter-behaviour.h"
#include "clutter-behaviour-opacity.h"
#include "clutter-behaviour-path.h"
#include "clutter-behaviour-rotate.h"
#include "clutter-behaviour-scale.h"
#include "clutter-bind-constraint.h" #include "clutter-bind-constraint.h"
#include "clutter-binding-pool.h" #include "clutter-binding-pool.h"
#include "clutter-bin-layout.h" #include "clutter-bin-layout.h"
@ -69,11 +61,11 @@
#include "clutter-drag-action.h" #include "clutter-drag-action.h"
#include "clutter-drop-action.h" #include "clutter-drop-action.h"
#include "clutter-effect.h" #include "clutter-effect.h"
#include "clutter-enums.h"
#include "clutter-event.h" #include "clutter-event.h"
#include "clutter-feature.h" #include "clutter-feature.h"
#include "clutter-fixed-layout.h" #include "clutter-fixed-layout.h"
#include "clutter-flow-layout.h" #include "clutter-flow-layout.h"
#include "clutter-frame-source.h"
#include "clutter-gesture-action.h" #include "clutter-gesture-action.h"
#include "clutter-group.h" #include "clutter-group.h"
#include "clutter-input-device.h" #include "clutter-input-device.h"
@ -90,11 +82,9 @@
#include "clutter-path-constraint.h" #include "clutter-path-constraint.h"
#include "clutter-path.h" #include "clutter-path.h"
#include "clutter-rectangle.h" #include "clutter-rectangle.h"
#include "clutter-score.h"
#include "clutter-scriptable.h" #include "clutter-scriptable.h"
#include "clutter-script.h" #include "clutter-script.h"
#include "clutter-settings.h" #include "clutter-settings.h"
#include "clutter-shader.h"
#include "clutter-shader-effect.h" #include "clutter-shader-effect.h"
#include "clutter-shader-types.h" #include "clutter-shader-types.h"
#include "clutter-swipe-action.h" #include "clutter-swipe-action.h"
@ -107,14 +97,16 @@
#include "clutter-texture.h" #include "clutter-texture.h"
#include "clutter-text.h" #include "clutter-text.h"
#include "clutter-timeline.h" #include "clutter-timeline.h"
#include "clutter-timeout-pool.h"
#include "clutter-types.h"
#include "clutter-units.h" #include "clutter-units.h"
#include "clutter-util.h" #include "clutter-util.h"
#include "clutter-version.h" #include "clutter-version.h"
#include "clutter-enum-types.h" #include "clutter-enum-types.h"
#ifndef CLUTTER_DISABLE_DEPRECATED
#include "clutter-deprecated.h"
#endif
#undef __CLUTTER_H_INSIDE__ #undef __CLUTTER_H_INSIDE__
#endif /* __CLUTTER_H__ */ #endif /* __CLUTTER_H__ */

View file

@ -62,6 +62,7 @@ G_BEGIN_DECLS
* *
* Deprecated: 1.6: Use clutter_egl_get_egl_display() instead * Deprecated: 1.6: Use clutter_egl_get_egl_display() instead
*/ */
CLUTTER_DEPRECATED_FOR(clutter_egl_get_egl_display)
EGLDisplay clutter_eglx_display (void); EGLDisplay clutter_eglx_display (void);
/** /**
@ -73,6 +74,7 @@ EGLDisplay clutter_eglx_display (void);
* *
* Deprecated: 1.6: Use clutter_egl_get_egl_display() instead * Deprecated: 1.6: Use clutter_egl_get_egl_display() instead
*/ */
CLUTTER_DEPRECATED_FOR(clutter_egl_get_egl_display)
EGLDisplay clutter_egl_display (void); EGLDisplay clutter_egl_display (void);
#endif /* CLUTTER_DISABLE_DEPRECATED */ #endif /* CLUTTER_DISABLE_DEPRECATED */

View file

@ -27,8 +27,8 @@
#include "config.h" #include "config.h"
#endif #endif
#include "clutter-behaviour.h"
#include "clutter-behaviour-depth.h" #include "clutter-behaviour-depth.h"
#include "clutter-enum-types.h" #include "clutter-enum-types.h"
#include "clutter-main.h" #include "clutter-main.h"
#include "clutter-debug.h" #include "clutter-debug.h"

View file

@ -30,8 +30,7 @@
#ifndef __CLUTTER_BEHAVIOUR_DEPTH__ #ifndef __CLUTTER_BEHAVIOUR_DEPTH__
#define __CLUTTER_BEHAVIOUR_DEPTH__ #define __CLUTTER_BEHAVIOUR_DEPTH__
#include <clutter/clutter-actor.h> #include <clutter/clutter-types.h>
#include <clutter/clutter-behaviour.h>
G_BEGIN_DECLS G_BEGIN_DECLS

View file

@ -50,8 +50,8 @@
#include <math.h> #include <math.h>
#include <stdlib.h> #include <stdlib.h>
#include "clutter-behaviour.h"
#include "clutter-behaviour-ellipse.h" #include "clutter-behaviour-ellipse.h"
#include "clutter-debug.h" #include "clutter-debug.h"
#include "clutter-enum-types.h" #include "clutter-enum-types.h"
#include "clutter-private.h" #include "clutter-private.h"

View file

@ -28,9 +28,6 @@
#ifndef __CLUTTER_BEHAVIOUR_ELLIPSE_H__ #ifndef __CLUTTER_BEHAVIOUR_ELLIPSE_H__
#define __CLUTTER_BEHAVIOUR_ELLIPSE_H__ #define __CLUTTER_BEHAVIOUR_ELLIPSE_H__
#include <clutter/clutter-alpha.h>
#include <clutter/clutter-actor.h>
#include <clutter/clutter-behaviour.h>
#include <clutter/clutter-types.h> #include <clutter/clutter-types.h>
G_BEGIN_DECLS G_BEGIN_DECLS

View file

@ -42,8 +42,8 @@
#include <math.h> #include <math.h>
#include "clutter-behaviour.h"
#include "clutter-behaviour-opacity.h" #include "clutter-behaviour-opacity.h"
#include "clutter-private.h" #include "clutter-private.h"
#include "clutter-debug.h" #include "clutter-debug.h"

View file

@ -30,8 +30,7 @@
#ifndef __CLUTTER_BEHAVIOUR_OPACITY_H__ #ifndef __CLUTTER_BEHAVIOUR_OPACITY_H__
#define __CLUTTER_BEHAVIOUR_OPACITY_H__ #define __CLUTTER_BEHAVIOUR_OPACITY_H__
#include <clutter/clutter-alpha.h> #include <clutter/clutter-types.h>
#include <clutter/clutter-behaviour.h>
G_BEGIN_DECLS G_BEGIN_DECLS

View file

@ -67,8 +67,8 @@
#include "config.h" #include "config.h"
#endif #endif
#include "clutter-behaviour.h"
#include "clutter-behaviour-path.h" #include "clutter-behaviour-path.h"
#include "clutter-bezier.h" #include "clutter-bezier.h"
#include "clutter-debug.h" #include "clutter-debug.h"
#include "clutter-enum-types.h" #include "clutter-enum-types.h"

View file

@ -30,8 +30,7 @@
#ifndef __CLUTTER_BEHAVIOUR_PATH_H__ #ifndef __CLUTTER_BEHAVIOUR_PATH_H__
#define __CLUTTER_BEHAVIOUR_PATH_H__ #define __CLUTTER_BEHAVIOUR_PATH_H__
#include <clutter/clutter-alpha.h> #include <clutter/clutter-types.h>
#include <clutter/clutter-behaviour.h>
#include <clutter/clutter-path.h> #include <clutter/clutter-path.h>
G_BEGIN_DECLS G_BEGIN_DECLS

View file

@ -39,10 +39,10 @@
#include "config.h" #include "config.h"
#endif #endif
#include "clutter-behaviour-rotate.h"
#include <math.h> #include <math.h>
#include "clutter-behaviour.h"
#include "clutter-behaviour-rotate.h"
#include "clutter-debug.h" #include "clutter-debug.h"
#include "clutter-enum-types.h" #include "clutter-enum-types.h"
#include "clutter-main.h" #include "clutter-main.h"

View file

@ -28,8 +28,6 @@
#ifndef __CLUTTER_BEHAVIOUR_ROTATE_H__ #ifndef __CLUTTER_BEHAVIOUR_ROTATE_H__
#define __CLUTTER_BEHAVIOUR_ROTATE_H__ #define __CLUTTER_BEHAVIOUR_ROTATE_H__
#include <clutter/clutter-alpha.h>
#include <clutter/clutter-behaviour.h>
#include <clutter/clutter-types.h> #include <clutter/clutter-types.h>
G_BEGIN_DECLS G_BEGIN_DECLS

View file

@ -41,8 +41,8 @@
#include <math.h> #include <math.h>
#include "clutter-behaviour.h"
#include "clutter-behaviour-scale.h" #include "clutter-behaviour-scale.h"
#include "clutter-debug.h" #include "clutter-debug.h"
#include "clutter-main.h" #include "clutter-main.h"
#include "clutter-private.h" #include "clutter-private.h"

View file

@ -30,7 +30,7 @@
#ifndef __CLUTTER_BEHAVIOUR_SCALE_H__ #ifndef __CLUTTER_BEHAVIOUR_SCALE_H__
#define __CLUTTER_BEHAVIOUR_SCALE_H__ #define __CLUTTER_BEHAVIOUR_SCALE_H__
#include <clutter/clutter-behaviour.h> #include <clutter/clutter-types.h>
G_BEGIN_DECLS G_BEGIN_DECLS

View file

@ -30,8 +30,6 @@
#ifndef __CLUTTER_BEHAVIOUR_H__ #ifndef __CLUTTER_BEHAVIOUR_H__
#define __CLUTTER_BEHAVIOUR_H__ #define __CLUTTER_BEHAVIOUR_H__
#include <glib-object.h>
#include <clutter/clutter-alpha.h>
#include <clutter/clutter-types.h> #include <clutter/clutter-types.h>
G_BEGIN_DECLS G_BEGIN_DECLS
@ -60,7 +58,6 @@ G_BEGIN_DECLS
(G_TYPE_INSTANCE_GET_CLASS ((obj), \ (G_TYPE_INSTANCE_GET_CLASS ((obj), \
CLUTTER_TYPE_BEHAVIOUR, ClutterBehaviourClass)) CLUTTER_TYPE_BEHAVIOUR, ClutterBehaviourClass))
typedef struct _ClutterBehaviour ClutterBehaviour;
typedef struct _ClutterBehaviourPrivate ClutterBehaviourPrivate; typedef struct _ClutterBehaviourPrivate ClutterBehaviourPrivate;
typedef struct _ClutterBehaviourClass ClutterBehaviourClass; typedef struct _ClutterBehaviourClass ClutterBehaviourClass;

View file

@ -524,8 +524,8 @@ select_thread_start_poll (GPollFD *ufds,
have_new_pollfds = TRUE; have_new_pollfds = TRUE;
else else
{ {
if (!((nfds == 1 && poll_fd_index < 0 && g_thread_supported ()) || if (!((nfds == 1 && poll_fd_index < 0) ||
(nfds == 2 && poll_fd_index >= 0 && g_thread_supported ()))) (nfds == 2 && poll_fd_index >= 0)))
select_thread_set_state (POLLING_RESTART); select_thread_set_state (POLLING_RESTART);
} }
} }

View file

@ -135,7 +135,7 @@ clutter_stage_osx_get_wrapper (ClutterStageWindow *stage_window);
- (void)windowDidChangeScreen:(NSNotification *)notification - (void)windowDidChangeScreen:(NSNotification *)notification
{ {
clutter_redraw(CLUTTER_STAGE(self->stage_osx->wrapper)); clutter_stage_ensure_redraw (CLUTTER_STAGE(self->stage_osx->wrapper));
} }
@end @end

View file

@ -107,7 +107,8 @@ XVisualInfo *clutter_x11_get_visual_info (void);
void clutter_x11_set_display (Display * xdpy); void clutter_x11_set_display (Display * xdpy);
#ifndef CLUTTER_DISABLE_DEPRECATED #ifndef CLUTTER_DISABLE_DEPRECATED
XVisualInfo *clutter_x11_get_stage_visual (ClutterStage *stage) G_GNUC_DEPRECATED; CLUTTER_DEPRECATED_FOR(clutter_x11_get_visual_info)
XVisualInfo *clutter_x11_get_stage_visual (ClutterStage *stage);
#endif #endif
Window clutter_x11_get_stage_window (ClutterStage *stage); Window clutter_x11_get_stage_window (ClutterStage *stage);
@ -127,7 +128,8 @@ gboolean clutter_x11_has_event_retrieval (void);
ClutterStage *clutter_x11_get_stage_from_window (Window win); ClutterStage *clutter_x11_get_stage_from_window (Window win);
#ifndef CLUTTER_DISABLE_DEPRECATED #ifndef CLUTTER_DISABLE_DEPRECATED
const GSList* clutter_x11_get_input_devices (void) G_GNUC_DEPRECATED; CLUTTER_DEPRECATED_FOR(clutter_device_manager_peek_devices)
const GSList* clutter_x11_get_input_devices (void);
#endif #endif
void clutter_x11_enable_xinput (void); void clutter_x11_enable_xinput (void);

View file

@ -741,7 +741,7 @@ AS_CASE([$enable_deprecated],
[yes], [yes],
[ [
CLUTTER_DEPRECATED_CFLAGS="" CLUTTER_DEPRECATED_CFLAGS="-DGLIB_DISABLE_DEPRECATION_WARNINGS -DCLUTTER_DISABLE_DEPRECATION_WARNINGS"
], ],
[AC_MSG_ERROR([Unknown argument for --enable-deprecated])] [AC_MSG_ERROR([Unknown argument for --enable-deprecated])]
@ -1013,6 +1013,8 @@ echo "Clutter - $VERSION (${CLUTTER_RELEASE_STATUS})"
echo "" echo ""
echo " • Global:" echo " • Global:"
echo " Prefix: ${prefix}" echo " Prefix: ${prefix}"
echo " Libdir: ${libdir}"
echo " Sysconfdir: ${sysconfdir}"
echo " Flavour: ${CLUTTER_WINSYS}" echo " Flavour: ${CLUTTER_WINSYS}"
echo " Target library: ${CLUTTER_WINSYS_LIB}" echo " Target library: ${CLUTTER_WINSYS_LIB}"

View file

@ -140,20 +140,7 @@
<title>Base classes</title> <title>Base classes</title>
<xi:include href="xml/clutter-timeline.xml"/> <xi:include href="xml/clutter-timeline.xml"/>
<xi:include href="xml/clutter-score.xml"/>
<xi:include href="xml/clutter-alpha.xml"/> <xi:include href="xml/clutter-alpha.xml"/>
<xi:include href="xml/clutter-behaviour.xml"/>
</chapter>
<chapter>
<title>Behaviours</title>
<xi:include href="xml/clutter-behaviour-depth.xml"/>
<xi:include href="xml/clutter-behaviour-ellipse.xml"/>
<xi:include href="xml/clutter-behaviour-opacity.xml"/>
<xi:include href="xml/clutter-behaviour-path.xml"/>
<xi:include href="xml/clutter-behaviour-rotate.xml"/>
<xi:include href="xml/clutter-behaviour-scale.xml"/>
</chapter> </chapter>
<chapter> <chapter>
@ -184,7 +171,6 @@
<xi:include href="xml/clutter-main.xml"/> <xi:include href="xml/clutter-main.xml"/>
<xi:include href="xml/clutter-path.xml"/> <xi:include href="xml/clutter-path.xml"/>
<xi:include href="xml/clutter-settings.xml"/> <xi:include href="xml/clutter-settings.xml"/>
<xi:include href="xml/clutter-shader.xml"/>
<xi:include href="xml/clutter-stage-manager.xml"/> <xi:include href="xml/clutter-stage-manager.xml"/>
<xi:include href="xml/clutter-units.xml"/> <xi:include href="xml/clutter-units.xml"/>
<xi:include href="xml/clutter-util.xml"/> <xi:include href="xml/clutter-util.xml"/>
@ -255,6 +241,20 @@
</part> </part>
<part id="deprecated">
<title>Deprecated Classes</title>
<xi:include href="xml/clutter-score.xml"/>
<xi:include href="xml/clutter-shader.xml"/>
<xi:include href="xml/clutter-behaviour.xml"/>
<xi:include href="xml/clutter-behaviour-depth.xml"/>
<xi:include href="xml/clutter-behaviour-ellipse.xml"/>
<xi:include href="xml/clutter-behaviour-opacity.xml"/>
<xi:include href="xml/clutter-behaviour-path.xml"/>
<xi:include href="xml/clutter-behaviour-rotate.xml"/>
<xi:include href="xml/clutter-behaviour-scale.xml"/>
</part>
<part id="clutterobjects"> <part id="clutterobjects">
<title>Clutter Actors and Objects</title> <title>Clutter Actors and Objects</title>

View file

@ -428,6 +428,7 @@ clutter_actor_add_action
clutter_actor_add_action_with_name clutter_actor_add_action_with_name
clutter_actor_remove_action clutter_actor_remove_action
clutter_actor_remove_action_by_name clutter_actor_remove_action_by_name
clutter_actor_has_actions
clutter_actor_get_actions clutter_actor_get_actions
clutter_actor_get_action clutter_actor_get_action
clutter_actor_clear_actions clutter_actor_clear_actions
@ -435,6 +436,7 @@ clutter_actor_add_constraint
clutter_actor_add_constraint_with_name clutter_actor_add_constraint_with_name
clutter_actor_remove_constraint clutter_actor_remove_constraint
clutter_actor_remove_constraint_by_name clutter_actor_remove_constraint_by_name
clutter_actor_has_constraints
clutter_actor_get_constraints clutter_actor_get_constraints
clutter_actor_get_constraint clutter_actor_get_constraint
clutter_actor_clear_constraints clutter_actor_clear_constraints
@ -442,6 +444,7 @@ clutter_actor_add_effect
clutter_actor_add_effect_with_name clutter_actor_add_effect_with_name
clutter_actor_remove_effect clutter_actor_remove_effect
clutter_actor_remove_effect_by_name clutter_actor_remove_effect_by_name
clutter_actor_has_effects
clutter_actor_get_effects clutter_actor_get_effects
clutter_actor_get_effect clutter_actor_get_effect
clutter_actor_clear_effects clutter_actor_clear_effects
@ -1065,6 +1068,7 @@ clutter_event_get_key_code
clutter_event_set_key_unicode clutter_event_set_key_unicode
clutter_event_get_key_unicode clutter_event_get_key_unicode
clutter_keysym_to_unicode clutter_keysym_to_unicode
clutter_unicode_to_keysym
<SUBSECTION> <SUBSECTION>
clutter_event_set_related clutter_event_set_related
@ -1125,6 +1129,11 @@ clutter_input_device_get_device_coords
clutter_input_device_get_pointer_actor clutter_input_device_get_pointer_actor
clutter_input_device_get_pointer_stage clutter_input_device_get_pointer_stage
<SUBSECTION>
clutter_input_device_grab
clutter_input_device_ungrab
clutter_input_device_get_grabbed_actor
<SUBSECTION> <SUBSECTION>
clutter_input_device_update_from_event clutter_input_device_update_from_event

View file

@ -228,5 +228,102 @@
</section> </section>
<section id="configuration-file">
<title>Configuration File</title>
<para>Clutter will look for files named <filename>settings.ini</filename>
located in the <filename>/etc/clutter-1.0</filename> and
<filename>$XDG_CONFIG_HOME/clutter-1.0</filename> directories. These files
must be valid key files (see #GKeyFile in the GLib documentation) and may
have three sections:</para>
<variablelist>
<varlistentry>
<term>Environment</term>
<listitem><para>The keys in this section map the environment variables
honoured by Clutter.</para></listitem>
</varlistentry>
<varlistentry>
<term>Debug</term>
<listitem><para>The keys in this section related to the debugging notes
that Clutter exposes when compiled with debugging support; similarly to
the environment variables and command line arguments related to the
debugging notes, Clutter must be compiled with support for these notes
in order to use them.</para></listitem>
</varlistentry>
<varlistentry>
<term>Settings</term>
<listitem><para>The keys in this section strictly map to the #GObject
properties exposed by the #ClutterSettings type; if Clutter is running
on an X11 platform, the XSettings manager will take precedence over the
values specified in the <filename>settings.ini</filename>
file.</para></listitem>
</varlistentry>
</variablelist>
<section id="configuration-keys-environment">
<title>Keys available for the Environment group</title>
<variablelist>
<varlistentry>
<term>ShowFps</term>
<listitem><para>A boolean value, equivalent to setting
<code>CLUTTER_SHOW_FPS</code>.</para></listitem>
</varlistentry>
<varlistentry>
<term>DisableMipmappedText</term>
<listitem><para>A boolean value, equivalent to setting
<code>CLUTTER_DISABLE_MIPMAPPED_TEXT</code>.</para></listitem>
</varlistentry>
<varlistentry>
<term>UseFuzzyPicking</term>
<listitem><para>A boolean value, equivalent to setting
<code>CLUTTER_FUZZY_PICK</code>.</para></listitem>
</varlistentry>
<varlistentry>
<term>EnableAccessibility</term>
<listitem><para>A boolean value, equivalent to setting
<code>CLUTTER_ENABLE_ACCESSIBILITY</code>.</para></listitem>
</varlistentry>
<varlistentry>
<term>DefaultFps</term>
<listitem><para>An integer value, equivalent to setting
<code>CLUTTER_DEFAULT_FPS</code>.</para></listitem>
</varlistentry>
<varlistentry>
<term>TextDirection</term>
<listitem><para>A string value, equivalent to setting
<code>CLUTTER_TEXT_DIRECTION</code>.</para></listitem>
</varlistentry>
</variablelist>
</section>
<section id="configuration-keys-debug">
<title>Keys available for the Debug group</title>
<variablelist>
<varlistentry>
<term>Debug</term>
<listitem><para>A string containing the debugging flags, in the same
format that should be used with the <code>CLUTTER_DEBUG</code>
environment variable.</para></listitem>
</varlistentry>
<varlistentry>
<term>PaintDebug</term>
<listitem><para>A string containing the paint debugging flags, in the same
format that should be used with the <code>CLUTTER_PAINT</code>
environment variable.</para></listitem>
</varlistentry>
<varlistentry>
<term>PickDebug</term>
<listitem><para>A string containing the pick debugging flags, in the same
format that should be used with the <code>CLUTTER_PICK</code>
environment variable.</para></listitem>
</varlistentry>
</variablelist>
</section>
</section>
</partintro> </partintro>
</part> </part>

View file

@ -79,9 +79,10 @@ on_motion_idle (gpointer user_data)
x + TEX_SIZE / 2 - 1, x + TEX_SIZE / 2 - 1,
y + TEX_SIZE / 2 - 1); y + TEX_SIZE / 2 - 1);
clutter_actor_show (data->box); clutter_actor_show (data->box);
/* Redraw so that the layouting will be done and the box will be /* Redraw so that the layouting will be done and the box will be
drawn in the right position */ drawn in the right position */
clutter_redraw (CLUTTER_STAGE (data->stage)); clutter_stage_ensure_redraw (CLUTTER_STAGE (data->stage));
pixels = clutter_stage_read_pixels (CLUTTER_STAGE (data->stage), pixels = clutter_stage_read_pixels (CLUTTER_STAGE (data->stage),
x, y, x, y,

View file

@ -52,7 +52,7 @@ test_thread_done_idle (gpointer user_data)
return FALSE; return FALSE;
} }
static GStaticPrivate test_thread_data = G_STATIC_PRIVATE_INIT; static GPrivate test_thread_data = G_PRIVATE_INIT (test_thread_data_free);
typedef struct typedef struct
{ {
@ -93,7 +93,7 @@ do_something_very_slow (void)
TestThreadData *data; TestThreadData *data;
gint i; gint i;
data = (TestThreadData *) g_static_private_get (&test_thread_data); data = g_private_get (&test_thread_data);
if (data->cancelled) if (data->cancelled)
return; return;
@ -124,10 +124,9 @@ do_something_very_slow (void)
static gpointer static gpointer
test_thread_func (gpointer user_data) test_thread_func (gpointer user_data)
{ {
TestThreadData *data; TestThreadData *data = user_data;
data = user_data; g_private_set (&test_thread_data, data);
g_static_private_set (&test_thread_data, data, NULL);
do_something_very_slow (); do_something_very_slow ();
@ -162,11 +161,14 @@ on_key_press_event (ClutterStage *stage,
data->label = g_object_ref (count_label); data->label = g_object_ref (count_label);
data->progress = g_object_ref (progress_rect); data->progress = g_object_ref (progress_rect);
data->timeline = g_object_ref (timeline); data->timeline = g_object_ref (timeline);
g_thread_create (test_thread_func, data, FALSE, NULL);
g_thread_new ("counter", test_thread_func, data, FALSE, NULL);
return TRUE; return TRUE;
case CLUTTER_KEY_q: case CLUTTER_KEY_q:
clutter_main_quit (); clutter_main_quit ();
return TRUE; return TRUE;
default: default: