From 46c597a1f674394d94ac9bdd61b3521d8bb0905a Mon Sep 17 00:00:00 2001 From: Emmanuele Bassi Date: Thu, 21 Oct 2010 12:16:05 +0100 Subject: [PATCH] Clean up clutter-private.h/6 Move all Actor private API to a separate file. --- clutter/Makefile.am | 1 + clutter/clutter-actor-box.c | 2 + clutter/clutter-actor-private.h | 97 +++++++++++++++++++++ clutter/clutter-actor.c | 2 +- clutter/clutter-animator.c | 2 + clutter/clutter-behaviour-ellipse.c | 6 +- clutter/clutter-bind-constraint.c | 2 + clutter/clutter-cairo-texture.c | 1 + clutter/clutter-clone.c | 1 + clutter/clutter-desaturate-effect.c | 2 + clutter/clutter-input-device.c | 1 + clutter/clutter-master-clock.c | 1 + clutter/clutter-offscreen-effect.c | 1 + clutter/clutter-page-turn-effect.c | 2 + clutter/clutter-paint-volume.c | 1 + clutter/clutter-path.c | 3 +- clutter/clutter-private.h | 102 +---------------------- clutter/clutter-rectangle.c | 1 + clutter/clutter-stage.c | 1 + clutter/clutter-text.c | 2 + clutter/clutter-texture.c | 1 + clutter/clutter-units.c | 2 + clutter/glx/clutter-stage-glx.c | 1 + clutter/wayland/clutter-stage-wayland.c | 7 +- clutter/win32/clutter-stage-win32.c | 1 + clutter/x11/clutter-event-x11.c | 3 +- clutter/x11/clutter-stage-x11.c | 1 + clutter/x11/clutter-x11-texture-pixmap.c | 1 + 28 files changed, 138 insertions(+), 110 deletions(-) create mode 100644 clutter/clutter-actor-private.h diff --git a/clutter/Makefile.am b/clutter/Makefile.am index 0bff379d2..65ee1984d 100644 --- a/clutter/Makefile.am +++ b/clutter/Makefile.am @@ -220,6 +220,7 @@ source_c = \ # private headers; these should not be distributed or introspected source_h_priv = \ $(srcdir)/clutter-actor-meta-private.h \ + $(srcdir)/clutter-actor-private.h \ $(srcdir)/clutter-backend-private.h \ $(srcdir)/clutter-bezier.h \ $(srcdir)/clutter-debug.h \ diff --git a/clutter/clutter-actor-box.c b/clutter/clutter-actor-box.c index 89bedd952..56c9ea2bf 100644 --- a/clutter/clutter-actor-box.c +++ b/clutter/clutter-actor-box.c @@ -2,6 +2,8 @@ #include "config.h" #endif +#include + #include "clutter-types.h" #include "clutter-interval.h" #include "clutter-private.h" diff --git a/clutter/clutter-actor-private.h b/clutter/clutter-actor-private.h new file mode 100644 index 000000000..df5fbad51 --- /dev/null +++ b/clutter/clutter-actor-private.h @@ -0,0 +1,97 @@ +#ifndef __CLUTTER_ACTOR_PRIVATE_H__ +#define __CLUTTER_ACTOR_PRIVATE_H__ + +#include + +G_BEGIN_DECLS + +/* + * ClutterRedrawFlags: + * @CLUTTER_REDRAW_CLIPPED_TO_ALLOCATION: Tells clutter the maximum + * extents of what needs to be redrawn lies within the actors + * current allocation. (Only use this for 2D actors though because + * any actor with depth may be projected outside of its allocation) + * + * Flags passed to the clutter_actor_queue_redraw_with_clip () + * function + * + * Since: 1.6 + */ +typedef enum +{ + CLUTTER_REDRAW_CLIPPED_TO_ALLOCATION = 1 << 0 +} ClutterRedrawFlags; + +/* ClutterActorTraverseFlags: + * + * Controls some options for how clutter_actor_traverse() iterates + * through the graph. + */ +typedef enum _ClutterActorTraverseFlags +{ + CLUTTER_ACTOR_TRAVERSE_PLACE_HOLDER = 1L<<0 +} ClutterActorTraverseFlags; + +/* ClutterForeachCallback: + * @actor: The actor being iterated + * @user_data: The private data specified when starting the iteration + * + * A generic callback for iterating over actor, such as with + * _clutter_actor_foreach_child. The difference when compared to + * #ClutterCallback is that it returns a boolean so it is possible to break + * out of an iteration early. + * + * Return value: %TRUE to continue iterating or %FALSE to break iteration + * early. + */ +typedef gboolean (*ClutterForeachCallback) (ClutterActor *actor, + void *user_data); + +gint _clutter_actor_get_n_children (ClutterActor *self); +gboolean _clutter_actor_foreach_child (ClutterActor *self, + ClutterForeachCallback callback, + void *user_data); +gboolean _clutter_actor_traverse (ClutterActor *actor, + ClutterActorTraverseFlags flags, + ClutterForeachCallback callback, + void *user_data); +ClutterActor *_clutter_actor_get_stage_internal (ClutterActor *actor); + +void _clutter_actor_apply_modelview_transform (ClutterActor *self, + CoglMatrix *matrix); +void _clutter_actor_apply_modelview_transform_recursive (ClutterActor *self, + ClutterActor *ancestor, + CoglMatrix *matrix); + +void _clutter_actor_rerealize (ClutterActor *self, + ClutterCallback callback, + void *data); + +void _clutter_actor_set_opacity_parent (ClutterActor *self, + ClutterActor *parent); + +void _clutter_actor_set_enable_model_view_transform (ClutterActor *self, + gboolean enable); + +void _clutter_actor_set_enable_paint_unmapped (ClutterActor *self, + gboolean enable); + +void _clutter_actor_set_has_pointer (ClutterActor *self, + gboolean has_pointer); + +void _clutter_actor_queue_redraw_with_clip (ClutterActor *self, + ClutterRedrawFlags flags, + ClutterPaintVolume *clip_volume); +const ClutterPaintVolume *_clutter_actor_get_queue_redraw_clip (ClutterActor *self); +void _clutter_actor_set_queue_redraw_clip (ClutterActor *self, + const ClutterPaintVolume *clip_volume); +void _clutter_actor_finish_queue_redraw (ClutterActor *self, + ClutterPaintVolume *clip); + +gboolean _clutter_actor_set_default_paint_volume (ClutterActor *self, + GType check_gtype, + ClutterPaintVolume *volume); + +G_END_DECLS + +#endif /* __CLUTTER_ACTOR_PRIVATE_H__ */ diff --git a/clutter/clutter-actor.c b/clutter/clutter-actor.c index e78295654..cf1f3bb94 100644 --- a/clutter/clutter-actor.c +++ b/clutter/clutter-actor.c @@ -286,7 +286,7 @@ #include "cogl/cogl.h" -#include "clutter-actor.h" +#include "clutter-actor-private.h" #include "clutter-action.h" #include "clutter-actor-meta-private.h" diff --git a/clutter/clutter-animator.c b/clutter/clutter-animator.c index 4be585b04..b2c61270d 100644 --- a/clutter/clutter-animator.c +++ b/clutter/clutter-animator.c @@ -125,6 +125,8 @@ #endif #include +#include + #include #include "clutter-animator.h" diff --git a/clutter/clutter-behaviour-ellipse.c b/clutter/clutter-behaviour-ellipse.c index 9c46a50e6..b7540e213 100644 --- a/clutter/clutter-behaviour-ellipse.c +++ b/clutter/clutter-behaviour-ellipse.c @@ -42,6 +42,9 @@ #include "config.h" #endif +#include +#include + #include "clutter-fixed.h" #include "clutter-marshal.h" #include "clutter-behaviour-ellipse.h" @@ -49,9 +52,6 @@ #include "clutter-enum-types.h" #include "clutter-private.h" -#include -#include - G_DEFINE_TYPE (ClutterBehaviourEllipse, clutter_behaviour_ellipse, CLUTTER_TYPE_BEHAVIOUR); diff --git a/clutter/clutter-bind-constraint.c b/clutter/clutter-bind-constraint.c index ceb537550..a0c817020 100644 --- a/clutter/clutter-bind-constraint.c +++ b/clutter/clutter-bind-constraint.c @@ -84,6 +84,8 @@ #include "config.h" #endif +#include + #include "clutter-bind-constraint.h" #include "clutter-constraint.h" diff --git a/clutter/clutter-cairo-texture.c b/clutter/clutter-cairo-texture.c index abd73c41a..e9586a31a 100644 --- a/clutter/clutter-cairo-texture.c +++ b/clutter/clutter-cairo-texture.c @@ -82,6 +82,7 @@ #include "clutter-cairo-texture.h" +#include "clutter-actor-private.h" #include "clutter-debug.h" #include "clutter-marshal.h" #include "clutter-private.h" diff --git a/clutter/clutter-clone.c b/clutter/clutter-clone.c index 5e7d585be..37e78803d 100644 --- a/clutter/clutter-clone.c +++ b/clutter/clutter-clone.c @@ -41,6 +41,7 @@ #include "config.h" #endif +#include "clutter-actor-private.h" #include "clutter-clone.h" #include "clutter-debug.h" #include "clutter-main.h" diff --git a/clutter/clutter-desaturate-effect.c b/clutter/clutter-desaturate-effect.c index 0d67eaaef..e6a06b1f9 100644 --- a/clutter/clutter-desaturate-effect.c +++ b/clutter/clutter-desaturate-effect.c @@ -43,6 +43,8 @@ #include "config.h" #endif +#include + #include "clutter-desaturate-effect.h" #include "cogl/cogl.h" diff --git a/clutter/clutter-input-device.c b/clutter/clutter-input-device.c index 677103fe7..b2bfe46ad 100644 --- a/clutter/clutter-input-device.c +++ b/clutter/clutter-input-device.c @@ -35,6 +35,7 @@ #include "config.h" #endif +#include "clutter-actor-private.h" #include "clutter-debug.h" #include "clutter-device-manager-private.h" #include "clutter-enum-types.h" diff --git a/clutter/clutter-master-clock.c b/clutter/clutter-master-clock.c index 42267feca..ba415611c 100644 --- a/clutter/clutter-master-clock.c +++ b/clutter/clutter-master-clock.c @@ -39,6 +39,7 @@ #include "clutter-debug.h" #include "clutter-private.h" #include "clutter-profile.h" +#include "clutter-stage-manager-private.h" #include "clutter-stage-private.h" #define CLUTTER_MASTER_CLOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CLUTTER_TYPE_MASTER_CLOCK, ClutterMasterClockClass)) diff --git a/clutter/clutter-offscreen-effect.c b/clutter/clutter-offscreen-effect.c index 8725c2f02..21b30350f 100644 --- a/clutter/clutter-offscreen-effect.c +++ b/clutter/clutter-offscreen-effect.c @@ -69,6 +69,7 @@ #include "cogl/cogl.h" +#include "clutter-actor-private.h" #include "clutter-debug.h" #include "clutter-private.h" #include "clutter-stage-private.h" diff --git a/clutter/clutter-page-turn-effect.c b/clutter/clutter-page-turn-effect.c index d95e6140c..8afcf85a8 100644 --- a/clutter/clutter-page-turn-effect.c +++ b/clutter/clutter-page-turn-effect.c @@ -39,6 +39,8 @@ #include "config.h" #endif +#include + #include "clutter-page-turn-effect.h" #include "clutter-debug.h" diff --git a/clutter/clutter-paint-volume.c b/clutter/clutter-paint-volume.c index 61d441c71..ad0dd7a1b 100644 --- a/clutter/clutter-paint-volume.c +++ b/clutter/clutter-paint-volume.c @@ -32,6 +32,7 @@ #include +#include "clutter-actor-private.h" #include "clutter-paint-volume-private.h" #include "clutter-private.h" diff --git a/clutter/clutter-path.c b/clutter/clutter-path.c index 9f8e76835..91b2be2ff 100644 --- a/clutter/clutter-path.c +++ b/clutter/clutter-path.c @@ -78,9 +78,10 @@ #include "config.h" #endif -#include #include #include +#include +#include #include "clutter-path.h" #include "clutter-types.h" diff --git a/clutter/clutter-private.h b/clutter/clutter-private.h index e0d49ae6c..d3dfe04c3 100644 --- a/clutter/clutter-private.h +++ b/clutter/clutter-private.h @@ -26,12 +26,6 @@ #ifndef __CLUTTER_PRIVATE_H__ #define __CLUTTER_PRIVATE_H__ -#include -#include -#include - -#include - #include #include @@ -39,7 +33,6 @@ #include "pango/cogl-pango.h" #include "clutter-backend.h" -#include "clutter-device-manager.h" #include "clutter-effect.h" #include "clutter-event.h" #include "clutter-feature.h" @@ -47,10 +40,7 @@ #include "clutter-layout-manager.h" #include "clutter-master-clock.h" #include "clutter-settings.h" -#include "clutter-stage-manager.h" -#include "clutter-stage-window.h" #include "clutter-stage.h" -#include "clutter-timeline.h" G_BEGIN_DECLS @@ -109,23 +99,6 @@ typedef enum { CLUTTER_INTERNAL_CHILD = 1 << 6 } ClutterPrivateFlags; -/* - * ClutterRedrawFlags: - * @CLUTTER_REDRAW_CLIPPED_TO_ALLOCATION: Tells clutter the maximum - * extents of what needs to be redrawn lies within the actors - * current allocation. (Only use this for 2D actors though because - * any actor with depth may be projected outside of its allocation) - * - * Flags passed to the clutter_actor_queue_redraw_with_clip () - * function - * - * Since: 1.6 - */ -typedef enum -{ - CLUTTER_REDRAW_CLIPPED_TO_ALLOCATION = 1 << 0 -} ClutterRedrawFlags; - struct _ClutterMainContext { ClutterBackend *backend; /* holds a pointer to the windowing @@ -176,31 +149,6 @@ struct _ClutterMainContext ClutterSettings *settings; }; -/* ClutterActorTraverseFlags: - * - * Controls some options for how clutter_actor_traverse() iterates - * through the graph. - */ -typedef enum _ClutterActorTraverseFlags -{ - CLUTTER_ACTOR_TRAVERSE_PLACE_HOLDER = 1L<<0 -} ClutterActorTraverseFlags; - -/* ClutterForeachCallback: - * @actor: The actor being iterated - * @user_data: The private data specified when starting the iteration - * - * A generic callback for iterating over actor, such as with - * _clutter_actor_foreach_child. The difference when compared to - * #ClutterCallback is that it returns a boolean so it is possible to break - * out of an iteration early. - * - * Return value: %TRUE to continue iterating or %FALSE to break iteration - * early. - */ -typedef gboolean (*ClutterForeachCallback) (ClutterActor *actor, - void *user_data); - #define CLUTTER_CONTEXT() (_clutter_context_get_default ()) ClutterMainContext *_clutter_context_get_default (void); gboolean _clutter_context_is_initialized (void); @@ -252,47 +200,6 @@ gboolean _clutter_boolean_handled_accumulator (GSignalInvocationHint *ihint, const GValue *handler_return, gpointer dummy); -gint _clutter_actor_get_n_children (ClutterActor *self); -gboolean _clutter_actor_foreach_child (ClutterActor *self, - ClutterForeachCallback callback, - void *user_data); -gboolean _clutter_actor_traverse (ClutterActor *actor, - ClutterActorTraverseFlags flags, - ClutterForeachCallback callback, - void *user_data); -ClutterActor *_clutter_actor_get_stage_internal (ClutterActor *actor); - -void _clutter_actor_apply_modelview_transform (ClutterActor *self, - CoglMatrix *matrix); -void _clutter_actor_apply_modelview_transform_recursive (ClutterActor *self, - ClutterActor *ancestor, - CoglMatrix *matrix); - -void _clutter_actor_rerealize (ClutterActor *self, - ClutterCallback callback, - void *data); - -void _clutter_actor_set_opacity_parent (ClutterActor *self, - ClutterActor *parent); - -void _clutter_actor_set_enable_model_view_transform (ClutterActor *self, - gboolean enable); - -void _clutter_actor_set_enable_paint_unmapped (ClutterActor *self, - gboolean enable); - -void _clutter_actor_set_has_pointer (ClutterActor *self, - gboolean has_pointer); - -void _clutter_actor_queue_redraw_with_clip (ClutterActor *self, - ClutterRedrawFlags flags, - ClutterPaintVolume *clip_volume); -const ClutterPaintVolume *_clutter_actor_get_queue_redraw_clip (ClutterActor *self); -void _clutter_actor_set_queue_redraw_clip (ClutterActor *self, - const ClutterPaintVolume *clip_volume); -void _clutter_actor_finish_queue_redraw (ClutterActor *self, - ClutterPaintVolume *clip); - void _clutter_run_repaint_functions (void); gboolean _clutter_effect_pre_paint (ClutterEffect *effect); @@ -310,9 +217,6 @@ void _clutter_event_set_platform_data (ClutterEvent *event, gpointer data); gpointer _clutter_event_get_platform_data (const ClutterEvent *event); - - - void _clutter_util_fully_transform_vertices (const CoglMatrix *modelview, const CoglMatrix *projection, const int *viewport, @@ -320,10 +224,6 @@ void _clutter_util_fully_transform_vertices (const CoglMatrix *mo ClutterVertex *vertices_out, int n_vertices); -gboolean _clutter_actor_set_default_paint_volume (ClutterActor *self, - GType check_gtype, - ClutterPaintVolume *volume); - G_END_DECLS -#endif /* _HAVE_CLUTTER_PRIVATE_H */ +#endif /* __CLUTTER_PRIVATE_H__ */ diff --git a/clutter/clutter-rectangle.c b/clutter/clutter-rectangle.c index 64ba03ef9..1bcab5691 100644 --- a/clutter/clutter-rectangle.c +++ b/clutter/clutter-rectangle.c @@ -33,6 +33,7 @@ #include "config.h" #endif +#include "clutter-actor-private.h" #include "clutter-color.h" #include "clutter-debug.h" #include "clutter-main.h" diff --git a/clutter/clutter-stage.c b/clutter/clutter-stage.c index 011bedc66..837298e54 100644 --- a/clutter/clutter-stage.c +++ b/clutter/clutter-stage.c @@ -55,6 +55,7 @@ #include "clutter-stage.h" +#include "clutter-actor-private.h" #include "clutter-backend-private.h" #include "clutter-color.h" #include "clutter-container.h" diff --git a/clutter/clutter-text.c b/clutter/clutter-text.c index c950c15f3..8cabad697 100644 --- a/clutter/clutter-text.c +++ b/clutter/clutter-text.c @@ -45,9 +45,11 @@ #endif #include +#include #include "clutter-text.h" +#include "clutter-actor-private.h" #include "clutter-binding-pool.h" #include "clutter-debug.h" #include "clutter-enum-types.h" diff --git a/clutter/clutter-texture.c b/clutter/clutter-texture.c index 97b92cc7d..0874b0dda 100644 --- a/clutter/clutter-texture.c +++ b/clutter/clutter-texture.c @@ -44,6 +44,7 @@ #include "config.h" #endif +#include "clutter-actor-private.h" #include "clutter-texture.h" #include "clutter-main.h" #include "clutter-marshal.h" diff --git a/clutter/clutter-units.c b/clutter/clutter-units.c index 0129d8da0..1e88ff707 100644 --- a/clutter/clutter-units.c +++ b/clutter/clutter-units.c @@ -66,6 +66,8 @@ #include "config.h" #endif +#include + #include #include diff --git a/clutter/glx/clutter-stage-glx.c b/clutter/glx/clutter-stage-glx.c index 13005b2e8..42b29fe81 100644 --- a/clutter/glx/clutter-stage-glx.c +++ b/clutter/glx/clutter-stage-glx.c @@ -28,6 +28,7 @@ #include "clutter-glx.h" #include "clutter-profile.h" +#include "clutter-actor-private.h" #include "clutter-debug.h" #include "clutter-event.h" #include "clutter-enum-types.h" diff --git a/clutter/wayland/clutter-stage-wayland.c b/clutter/wayland/clutter-stage-wayland.c index f6cab309f..26eb03ad7 100644 --- a/clutter/wayland/clutter-stage-wayland.c +++ b/clutter/wayland/clutter-stage-wayland.c @@ -37,12 +37,13 @@ #include "clutter-wayland.h" #include "clutter-backend-wayland.h" -#include "clutter-main.h" -#include "clutter-feature.h" +#include "clutter-actor-private.h" +#include "clutter-debug.h" #include "clutter-event.h" #include "clutter-enum-types.h" +#include "clutter-feature.h" +#include "clutter-main.h" #include "clutter-private.h" -#include "clutter-debug.h" #include "clutter-stage-private.h" #include "cogl/cogl-framebuffer-private.h" diff --git a/clutter/win32/clutter-stage-win32.c b/clutter/win32/clutter-stage-win32.c index 6d5ce3ef5..5bbcd13bb 100644 --- a/clutter/win32/clutter-stage-win32.c +++ b/clutter/win32/clutter-stage-win32.c @@ -27,6 +27,7 @@ #include "clutter-stage-win32.h" #include "clutter-win32.h" +#include "clutter-actor-private.h" #include "clutter-main.h" #include "clutter-feature.h" #include "clutter-event.h" diff --git a/clutter/x11/clutter-event-x11.c b/clutter/x11/clutter-event-x11.c index b3a4768ef..0716cb97a 100644 --- a/clutter/x11/clutter-event-x11.c +++ b/clutter/x11/clutter-event-x11.c @@ -33,7 +33,8 @@ #include "clutter-keymap-x11.h" #include "clutter-x11.h" -#include "clutter-backend.h" +#include "clutter-actor-private.h" +#include "clutter-backend-private.h" #include "clutter-debug.h" #include "clutter-device-manager-private.h" #include "clutter-event.h" diff --git a/clutter/x11/clutter-stage-x11.c b/clutter/x11/clutter-stage-x11.c index ecef07982..54175dcc0 100644 --- a/clutter/x11/clutter-stage-x11.c +++ b/clutter/x11/clutter-stage-x11.c @@ -31,6 +31,7 @@ #include "clutter-stage-x11.h" #include "clutter-x11.h" +#include "clutter-actor-private.h" #include "clutter-debug.h" #include "clutter-main.h" #include "clutter-feature.h" diff --git a/clutter/x11/clutter-x11-texture-pixmap.c b/clutter/x11/clutter-x11-texture-pixmap.c index d03690816..f2948568c 100644 --- a/clutter/x11/clutter-x11-texture-pixmap.c +++ b/clutter/x11/clutter-x11-texture-pixmap.c @@ -46,6 +46,7 @@ #include "clutter-x11.h" #include "clutter-backend-x11.h" +#include "clutter-actor-private.h" #include "clutter-marshal.h" #include "clutter-paint-volume-private.h" #include "clutter-private.h"