From 11420a705734ab3626754c550c942b0d66fd4200 Mon Sep 17 00:00:00 2001 From: Emmanuele Bassi Date: Thu, 3 Nov 2011 15:02:35 +0000 Subject: [PATCH] group: Move deprecated macro into its own header --- clutter/Makefile.am | 1 + clutter/clutter-deprecated.h | 1 + clutter/clutter-group.c | 15 ++++++---- clutter/clutter-group.h | 57 ++++++++++---------------------------- clutter/deprecated/clutter-group.h | 23 +++++++++++++++ 5 files changed, 49 insertions(+), 48 deletions(-) create mode 100644 clutter/deprecated/clutter-group.h diff --git a/clutter/Makefile.am b/clutter/Makefile.am index df4eca7..352127a 100644 --- a/clutter/Makefile.am +++ b/clutter/Makefile.am @@ -241,6 +241,7 @@ deprecated_h = \ $(srcdir)/deprecated/clutter-behaviour-scale.h \ $(srcdir)/deprecated/clutter-fixed.h \ $(srcdir)/deprecated/clutter-frame-source.h \ + $(srcdir)/deprecated/clutter-group.h \ $(srcdir)/deprecated/clutter-keysyms.h \ $(srcdir)/deprecated/clutter-main.h \ $(srcdir)/deprecated/clutter-timeout-pool.h \ diff --git a/clutter/clutter-deprecated.h b/clutter/clutter-deprecated.h index ab9c7a7..8d823dc 100644 --- a/clutter/clutter-deprecated.h +++ b/clutter/clutter-deprecated.h @@ -14,6 +14,7 @@ #include "deprecated/clutter-behaviour-scale.h" #include "deprecated/clutter-fixed.h" #include "deprecated/clutter-frame-source.h" +#include "deprecated/clutter-group.h" #include "deprecated/clutter-keysyms.h" #include "deprecated/clutter-main.h" #include "deprecated/clutter-score.h" diff --git a/clutter/clutter-group.c b/clutter/clutter-group.c index 41cb7d0..2fc0fcc 100644 --- a/clutter/clutter-group.c +++ b/clutter/clutter-group.c @@ -353,7 +353,7 @@ clutter_group_dispose (GObject *object) /* Note: we are careful to consider that destroying children could * have the side-effect of destroying other children so * priv->children may be modified during clutter_actor_destroy. */ - while (priv->children) + while (priv->children != NULL) { ClutterActor *child = priv->children->data; priv->children = g_list_delete_link (priv->children, priv->children); @@ -468,19 +468,22 @@ clutter_group_new (void) * Removes all children actors from the #ClutterGroup. */ void -clutter_group_remove_all (ClutterGroup *group) +clutter_group_remove_all (ClutterGroup *self) { + ClutterContainer *container; GList *children; - g_return_if_fail (CLUTTER_IS_GROUP (group)); + g_return_if_fail (CLUTTER_IS_GROUP (self)); - children = group->priv->children; - while (children) + container = CLUTTER_CONTAINER (self); + children = self->priv->children; + + while (children != NULL) { ClutterActor *child = children->data; children = children->next; - clutter_container_remove_actor (CLUTTER_CONTAINER (group), child); + clutter_container_remove_actor (container, child); } } diff --git a/clutter/clutter-group.h b/clutter/clutter-group.h index 9b270a3..0d17792 100644 --- a/clutter/clutter-group.h +++ b/clutter/clutter-group.h @@ -34,31 +34,16 @@ G_BEGIN_DECLS -#define CLUTTER_TYPE_GROUP clutter_group_get_type() +#define CLUTTER_TYPE_GROUP (clutter_group_get_type ()) +#define CLUTTER_GROUP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CLUTTER_TYPE_GROUP, ClutterGroup)) +#define CLUTTER_GROUP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CLUTTER_TYPE_GROUP, ClutterGroupClass)) +#define CLUTTER_IS_GROUP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_TYPE_GROUP)) +#define CLUTTER_IS_GROUP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_GROUP)) +#define CLUTTER_GROUP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_GROUP, ClutterGroupClass)) -#define CLUTTER_GROUP(obj) \ - (G_TYPE_CHECK_INSTANCE_CAST ((obj), \ - CLUTTER_TYPE_GROUP, ClutterGroup)) - -#define CLUTTER_GROUP_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_CAST ((klass), \ - CLUTTER_TYPE_GROUP, ClutterGroupClass)) - -#define CLUTTER_IS_GROUP(obj) \ - (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \ - CLUTTER_TYPE_GROUP)) - -#define CLUTTER_IS_GROUP_CLASS(klass) \ - (G_TYPE_CHECK_CLASS_TYPE ((klass), \ - CLUTTER_TYPE_GROUP)) - -#define CLUTTER_GROUP_GET_CLASS(obj) \ - (G_TYPE_INSTANCE_GET_CLASS ((obj), \ - CLUTTER_TYPE_GROUP, ClutterGroupClass)) - -typedef struct _ClutterGroup ClutterGroup; -typedef struct _ClutterGroupClass ClutterGroupClass; -typedef struct _ClutterGroupPrivate ClutterGroupPrivate; +typedef struct _ClutterGroup ClutterGroup; +typedef struct _ClutterGroupClass ClutterGroupClass; +typedef struct _ClutterGroupPrivate ClutterGroupPrivate; /** * ClutterGroup: @@ -97,25 +82,13 @@ struct _ClutterGroupClass void (*_clutter_reserved6) (void); }; -GType clutter_group_get_type (void) G_GNUC_CONST; -ClutterActor *clutter_group_new (void); -ClutterActor *clutter_group_get_nth_child (ClutterGroup *self, - gint index_); -gint clutter_group_get_n_children (ClutterGroup *self); -void clutter_group_remove_all (ClutterGroup *group); - -#ifndef CLUTTER_DISABLE_DEPRECATED - -/* for Mr. Mallum only */ -#define clutter_group_add(group,actor) G_STMT_START { \ - ClutterActor *_actor = (ClutterActor *) (actor); \ - if (CLUTTER_IS_GROUP ((group)) && CLUTTER_IS_ACTOR ((_actor))) \ - { \ - ClutterContainer *_container = (ClutterContainer *) (group); \ - clutter_container_add_actor (_container, _actor); \ - } } G_STMT_END +GType clutter_group_get_type (void) G_GNUC_CONST; -#endif /* CLUTTER_DISABLE_DEPRECATED */ +ClutterActor * clutter_group_new (void); +ClutterActor * clutter_group_get_nth_child (ClutterGroup *self, + gint index_); +gint clutter_group_get_n_children (ClutterGroup *self); +void clutter_group_remove_all (ClutterGroup *self); G_END_DECLS diff --git a/clutter/deprecated/clutter-group.h b/clutter/deprecated/clutter-group.h new file mode 100644 index 0000000..0f0536c --- /dev/null +++ b/clutter/deprecated/clutter-group.h @@ -0,0 +1,23 @@ +#ifndef __CLUTTER_GROUP_DEPRECATED_H__ +#define __CLUTTER_GROUP_DEPRECATED_H__ + +#include + +G_BEGIN_DECLS + +#ifndef CLUTTER_DISABLE_DEPRECATED + +/* for Mr. Mallum only */ +#define clutter_group_add(group,actor) G_STMT_START { \ + ClutterActor *_actor = (ClutterActor *) (actor); \ + if (CLUTTER_IS_GROUP ((group)) && CLUTTER_IS_ACTOR ((_actor))) \ + { \ + ClutterContainer *_container = (ClutterContainer *) (group); \ + clutter_container_add_actor (_container, _actor); \ + } } G_STMT_END + +#endif /* CLUTTER_DISABLE_DEPRECATED */ + +G_END_DECLS + +#endif /* __CLUTTER_GROUP_DEPRECATED_H__ */ -- 2.7.4