[clutter/master-next: 27/51] Deprecate ClutterAnimation, as well as clutter_actor_animate()



commit ac9772de68032a2ef1d7d418d69f855098f16e37
Author: Emmanuele Bassi <ebassi linux intel com>
Date:   Wed Apr 11 18:18:27 2012 +0100

    Deprecate ClutterAnimation, as well as clutter_actor_animate()
    
    ClutterPropertyTransition, and the implicit animation API based on
    ClutterTransition and ClutterAnimatable, are enough to replace this
    whole API.

 clutter/Makefile.am                          |    3 +-
 clutter/clutter-animatable.c                 |    1 +
 clutter/clutter-animatable.h                 |    2 +-
 clutter/clutter-animation.h                  |  165 --------------------------
 clutter/clutter-types.h                      |   68 ++++++-----
 clutter/clutter.h                            |    1 -
 clutter/{ => deprecated}/clutter-animation.c |    0
 clutter/deprecated/clutter-animation.h       |  158 ++++++++++++++++++++++++-
 8 files changed, 193 insertions(+), 205 deletions(-)
---
diff --git a/clutter/Makefile.am b/clutter/Makefile.am
index 601e68d..75dad37 100644
--- a/clutter/Makefile.am
+++ b/clutter/Makefile.am
@@ -55,7 +55,6 @@ source_h =					\
 	$(srcdir)/clutter-align-constraint.h	\
 	$(srcdir)/clutter-alpha.h		\
 	$(srcdir)/clutter-animatable.h          \
-	$(srcdir)/clutter-animation.h           \
 	$(srcdir)/clutter-backend.h		\
 	$(srcdir)/clutter-bind-constraint.h	\
 	$(srcdir)/clutter-binding-pool.h 	\
@@ -135,7 +134,6 @@ source_c = \
 	$(srcdir)/clutter-align-constraint.c	\
 	$(srcdir)/clutter-alpha.c 		\
 	$(srcdir)/clutter-animatable.c		\
-	$(srcdir)/clutter-animation.c		\
 	$(srcdir)/clutter-backend.c		\
 	$(srcdir)/clutter-base-types.c		\
 	$(srcdir)/clutter-bezier.c		\
@@ -283,6 +281,7 @@ deprecated_h = \
 # deprecated source code
 deprecated_c = \
 	$(srcdir)/deprecated/clutter-actor-deprecated.c		\
+	$(srcdir)/deprecated/clutter-animation.c		\
 	$(srcdir)/deprecated/clutter-animator.c			\
 	$(srcdir)/deprecated/clutter-behaviour.c 		\
 	$(srcdir)/deprecated/clutter-behaviour-depth.c		\
diff --git a/clutter/clutter-animatable.c b/clutter/clutter-animatable.c
index 81601d7..359995e 100644
--- a/clutter/clutter-animatable.c
+++ b/clutter/clutter-animatable.c
@@ -55,6 +55,7 @@
 #include "clutter-private.h"
 
 #include "deprecated/clutter-animatable.h"
+#include "deprecated/clutter-animation.h"
 
 typedef ClutterAnimatableIface  ClutterAnimatableInterface;
 G_DEFINE_INTERFACE (ClutterAnimatable, clutter_animatable, G_TYPE_OBJECT);
diff --git a/clutter/clutter-animatable.h b/clutter/clutter-animatable.h
index 945431b..78a796f 100644
--- a/clutter/clutter-animatable.h
+++ b/clutter/clutter-animatable.h
@@ -29,7 +29,7 @@
 #error "Only <clutter/clutter.h> can be included directly."
 #endif
 
-#include <clutter/clutter-animation.h>
+#include <clutter/clutter-types.h>
 
 G_BEGIN_DECLS
 
diff --git a/clutter/clutter-types.h b/clutter/clutter-types.h
index 00c89d9..08c8288 100644
--- a/clutter/clutter-types.h
+++ b/clutter/clutter-types.h
@@ -47,21 +47,18 @@ G_BEGIN_DECLS
 #define CLUTTER_TYPE_SIZE               (clutter_size_get_type ())
 #define CLUTTER_TYPE_RECT               (clutter_rect_get_type ())
 
-typedef struct _ClutterActor            ClutterActor;
-
-typedef struct _ClutterStage            ClutterStage;
-typedef struct _ClutterContainer        ClutterContainer; /* dummy */
-typedef struct _ClutterChildMeta        ClutterChildMeta;
-typedef struct _ClutterLayoutMeta       ClutterLayoutMeta;
-typedef struct _ClutterActorMeta        ClutterActorMeta;
-typedef struct _ClutterLayoutManager    ClutterLayoutManager;
-typedef struct _ClutterActorIter        ClutterActorIter;
-typedef struct _ClutterPaintNode        ClutterPaintNode;
-typedef struct _ClutterContent          ClutterContent; /* dummy */
+typedef struct _ClutterActor                    ClutterActor;
+
+typedef struct _ClutterStage                    ClutterStage;
+typedef struct _ClutterContainer                ClutterContainer; /* dummy */
+typedef struct _ClutterChildMeta                ClutterChildMeta;
+typedef struct _ClutterLayoutMeta               ClutterLayoutMeta;
+typedef struct _ClutterActorMeta                ClutterActorMeta;
+typedef struct _ClutterLayoutManager            ClutterLayoutManager;
+typedef struct _ClutterActorIter                ClutterActorIter;
+typedef struct _ClutterPaintNode                ClutterPaintNode;
+typedef struct _ClutterContent                  ClutterContent; /* dummy */
 
-typedef struct _ClutterAlpha            	ClutterAlpha;
-typedef struct _ClutterAnimator         	ClutterAnimator;
-typedef struct _ClutterState            	ClutterState;
 typedef struct _ClutterInterval         	ClutterInterval;
 typedef struct _ClutterAnimatable       	ClutterAnimatable; /* dummy */
 typedef struct _ClutterTimeline         	ClutterTimeline;
@@ -70,28 +67,35 @@ typedef struct _ClutterPropertyTransition       ClutterPropertyTransition;
 typedef struct _ClutterKeyframeTransition       ClutterKeyframeTransition;
 typedef struct _ClutterTransitionGroup		ClutterTransitionGroup;
 
-typedef struct _ClutterAction           ClutterAction;
-typedef struct _ClutterConstraint       ClutterConstraint;
-typedef struct _ClutterEffect           ClutterEffect;
+typedef struct _ClutterAction                   ClutterAction;
+typedef struct _ClutterConstraint               ClutterConstraint;
+typedef struct _ClutterEffect                   ClutterEffect;
+
+typedef struct _ClutterPath                     ClutterPath;
 
-typedef struct _ClutterPath             ClutterPath;
+typedef struct _ClutterActorBox                 ClutterActorBox;
+typedef struct _ClutterColor                    ClutterColor;
+typedef struct _ClutterGeometry                 ClutterGeometry;
+typedef struct _ClutterKnot                     ClutterKnot;
+typedef struct _ClutterMargin                   ClutterMargin;
+typedef struct _ClutterPerspective              ClutterPerspective;
+typedef struct _ClutterPoint                    ClutterPoint;
+typedef struct _ClutterRect                     ClutterRect;
+typedef struct _ClutterSize                     ClutterSize;
+typedef struct _ClutterVertex                   ClutterVertex;
 
-typedef struct _ClutterActorBox         ClutterActorBox;
-typedef struct _ClutterColor            ClutterColor;
-typedef struct _ClutterGeometry         ClutterGeometry;
-typedef struct _ClutterKnot             ClutterKnot;
-typedef struct _ClutterMargin           ClutterMargin;
-typedef struct _ClutterPerspective      ClutterPerspective;
-typedef struct _ClutterPoint            ClutterPoint;
-typedef struct _ClutterRect             ClutterRect;
-typedef struct _ClutterSize             ClutterSize;
-typedef struct _ClutterVertex           ClutterVertex;
+typedef struct _ClutterAlpha            	ClutterAlpha;
+typedef struct _ClutterAnimation                ClutterAnimation;
+typedef struct _ClutterAnimator         	ClutterAnimator;
+typedef struct _ClutterState            	ClutterState;
+typedef struct _ClutterBehaviour                ClutterBehaviour;
+typedef struct _ClutterShader                   ClutterShader;
 
-typedef struct _ClutterFog              ClutterFog; /* deprecated */
-typedef struct _ClutterBehaviour        ClutterBehaviour; /* deprecated */
-typedef struct _ClutterShader           ClutterShader; /* deprecated */
+typedef union _ClutterEvent                     ClutterEvent;
 
-typedef union _ClutterEvent             ClutterEvent;
+typedef struct _ClutterFog                      ClutterFog; /* deprecated */
+typedef struct _ClutterBehaviour                ClutterBehaviour; /* deprecated */
+typedef struct _ClutterShader                   ClutterShader; /* deprecated */
 
 /**
  * ClutterPaintVolume:
diff --git a/clutter/clutter.h b/clutter/clutter.h
index a5e2a61..d96713f 100644
--- a/clutter/clutter.h
+++ b/clutter/clutter.h
@@ -37,7 +37,6 @@
 #include "clutter-align-constraint.h"
 #include "clutter-alpha.h"
 #include "clutter-animatable.h"
-#include "clutter-animation.h"
 #include "clutter-backend.h"
 #include "clutter-bind-constraint.h"
 #include "clutter-binding-pool.h"
diff --git a/clutter/clutter-animation.c b/clutter/deprecated/clutter-animation.c
similarity index 100%
rename from clutter/clutter-animation.c
rename to clutter/deprecated/clutter-animation.c
diff --git a/clutter/deprecated/clutter-animation.h b/clutter/deprecated/clutter-animation.h
index 50c14bf..fec7e6e 100644
--- a/clutter/deprecated/clutter-animation.h
+++ b/clutter/deprecated/clutter-animation.h
@@ -26,20 +26,165 @@
 #error "Only <clutter/clutter.h> can be included directly."
 #endif
 
-#ifndef __CLUTTER_ANIMATION_DEPRECATED_H__
-#define __CLUTTER_ANIMATION_DEPRECATED_H__
+#ifndef __CLUTTER_ANIMATION_H__
+#define __CLUTTER_ANIMATION_H__
 
-#include <clutter/clutter-animation.h>
+#include <clutter/clutter-types.h>
 
 G_BEGIN_DECLS
 
+#define CLUTTER_TYPE_ANIMATION                  (clutter_animation_get_type ())
+#define CLUTTER_ANIMATION(obj)                  (G_TYPE_CHECK_INSTANCE_CAST ((obj), CLUTTER_TYPE_ANIMATION, ClutterAnimation))
+#define CLUTTER_IS_ANIMATION(obj)               (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CLUTTER_TYPE_ANIMATION))
+#define CLUTTER_ANIMATION_CLASS(klass)          (G_TYPE_CHECK_CLASS_CAST ((klass), CLUTTER_TYPE_ANIMATION, ClutterAnimationClass))
+#define CLUTTER_IS_ANIMATION_CLASS(klass)       (G_TYPE_CHECK_CLASS_TYPE ((klass), CLUTTER_TYPE_ANIMATION))
+#define CLUTTER_ANIMATION_GET_CLASS(obj)        (G_TYPE_INSTANCE_GET_CLASS ((obj), CLUTTER_TYPE_ANIMATION, ClutterAnimationClass))
+
+typedef struct _ClutterAnimation                ClutterAnimation;
+typedef struct _ClutterAnimationPrivate         ClutterAnimationPrivate;
+typedef struct _ClutterAnimationClass           ClutterAnimationClass;
+
+/**
+ * ClutterAnimation:
+ *
+ * The #ClutterAnimation structure contains only private data and should
+ * be accessed using the provided functions.
+ *
+ * Since: 1.0
+ */
+struct _ClutterAnimation
+{
+  /*< private >*/
+  GObject parent_instance;
+
+  ClutterAnimationPrivate *priv;
+};
+
+/**
+ * ClutterAnimationClass:
+ * @started: class handler for the #ClutterAnimation::started signal
+ * @completed: class handler for the #ClutterAnimation::completed signal
+ *
+ * The #ClutterAnimationClass structure contains only private data and
+ * should be accessed using the provided functions.
+ *
+ * Since: 1.0
+ */
+struct _ClutterAnimationClass
+{
+  /*< private >*/
+  GObjectClass parent_class;
+
+  /*< public >*/
+  void (* started)   (ClutterAnimation *animation);
+  void (* completed) (ClutterAnimation *animation);
+
+  /*< private >*/
+  /* padding for future expansion */
+  void (*_clutter_reserved1) (void);
+  void (*_clutter_reserved2) (void);
+  void (*_clutter_reserved3) (void);
+  void (*_clutter_reserved4) (void);
+  void (*_clutter_reserved5) (void);
+  void (*_clutter_reserved6) (void);
+  void (*_clutter_reserved7) (void);
+  void (*_clutter_reserved8) (void);
+};
+
+CLUTTER_DEPRECATED_IN_1_12
+GType clutter_animation_get_type (void) G_GNUC_CONST;
+
+CLUTTER_DEPRECATED_IN_1_12_FOR(clutter_property_transition_new)
+ClutterAnimation *      clutter_animation_new                   (void);
+
+CLUTTER_DEPRECATED_IN_1_12_FOR(clutter_transition_set_animatable)
+void                    clutter_animation_set_object            (ClutterAnimation     *animation,
+                                                                 GObject              *object);
+CLUTTER_DEPRECATED_IN_1_12_FOR(clutter_transition_get_animatable)
+GObject *               clutter_animation_get_object            (ClutterAnimation     *animation);
+CLUTTER_DEPRECATED_IN_1_12_FOR(clutter_timeline_set_progress_mode)
+void                    clutter_animation_set_mode              (ClutterAnimation     *animation,
+                                                                 gulong                mode);
+CLUTTER_DEPRECATED_IN_1_12_FOR(clutter_timeline_get_progress_mode)
+gulong                  clutter_animation_get_mode              (ClutterAnimation     *animation);
+CLUTTER_DEPRECATED_IN_1_12_FOR(clutter_timeline_set_duration)
+void                    clutter_animation_set_duration          (ClutterAnimation     *animation,
+                                                                 guint                 msecs);
+CLUTTER_DEPRECATED_IN_1_12_FOR(clutter_timeline_get_duration)
+guint                   clutter_animation_get_duration          (ClutterAnimation     *animation);
+CLUTTER_DEPRECATED_IN_1_12_FOR(clutter_timeline_set_repeat_count)
+void                    clutter_animation_set_loop              (ClutterAnimation     *animation,
+                                                                 gboolean              loop);
+CLUTTER_DEPRECATED_IN_1_12_FOR(clutter_timeline_get_repeat_count)
+gboolean                clutter_animation_get_loop              (ClutterAnimation     *animation);
+CLUTTER_DEPRECATED_IN_1_12
+void                    clutter_animation_set_timeline          (ClutterAnimation     *animation,
+                                                                 ClutterTimeline      *timeline);
+CLUTTER_DEPRECATED_IN_1_12
+ClutterTimeline *       clutter_animation_get_timeline          (ClutterAnimation     *animation);
 CLUTTER_DEPRECATED_IN_1_10_FOR(clutter_animation_set_timeline)
 void                    clutter_animation_set_alpha             (ClutterAnimation     *animation,
                                                                  ClutterAlpha         *alpha);
-
 CLUTTER_DEPRECATED_IN_1_10_FOR(clutter_animation_get_timeline)
 ClutterAlpha *          clutter_animation_get_alpha             (ClutterAnimation     *animation);
+CLUTTER_DEPRECATED_IN_1_12
+ClutterAnimation *      clutter_animation_bind                  (ClutterAnimation     *animation,
+                                                                 const gchar          *property_name,
+                                                                 const GValue         *final);
+CLUTTER_DEPRECATED_IN_1_12_FOR(clutter_transition_set_interval)
+ClutterAnimation *      clutter_animation_bind_interval         (ClutterAnimation     *animation,
+                                                                 const gchar          *property_name,
+                                                                 ClutterInterval      *interval);
+CLUTTER_DEPRECATED_IN_1_12
+gboolean                clutter_animation_has_property          (ClutterAnimation     *animation,
+                                                                 const gchar          *property_name);
+CLUTTER_DEPRECATED_IN_1_12
+ClutterAnimation *      clutter_animation_update                (ClutterAnimation     *animation,
+                                                                 const gchar          *property_name,
+                                                                 const GValue         *final);
+CLUTTER_DEPRECATED_IN_1_12
+void                    clutter_animation_update_interval       (ClutterAnimation     *animation,
+                                                                 const gchar          *property_name,
+                                                                 ClutterInterval      *interval);
+CLUTTER_DEPRECATED_IN_1_12
+void                    clutter_animation_unbind_property       (ClutterAnimation     *animation,
+                                                                 const gchar          *property_name);
+CLUTTER_DEPRECATED_IN_1_12
+ClutterInterval     *   clutter_animation_get_interval          (ClutterAnimation     *animation,
+                                                                 const gchar          *property_name);
+CLUTTER_DEPRECATED_IN_1_12
+void                    clutter_animation_completed             (ClutterAnimation     *animation);
+
+/*
+ * ClutterActor API
+ */
 
+CLUTTER_DEPRECATED_IN_1_12
+ClutterAnimation *      clutter_actor_animate                   (ClutterActor         *actor,
+                                                                 gulong                mode,
+                                                                 guint                 duration,
+                                                                 const gchar          *first_property_name,
+                                                                 ...) G_GNUC_NULL_TERMINATED;
+CLUTTER_DEPRECATED_IN_1_12
+ClutterAnimation *      clutter_actor_animate_with_timeline     (ClutterActor         *actor,
+                                                                 gulong                mode,
+                                                                 ClutterTimeline      *timeline,
+                                                                 const gchar          *first_property_name,
+                                                                 ...) G_GNUC_NULL_TERMINATED;
+CLUTTER_DEPRECATED_IN_1_12
+ClutterAnimation *      clutter_actor_animatev                  (ClutterActor         *actor,
+                                                                 gulong                mode,
+                                                                 guint                 duration,
+                                                                 gint                  n_properties,
+                                                                 const gchar * const   properties[],
+                                                                 const GValue         *values);
+CLUTTER_DEPRECATED_IN_1_12
+ClutterAnimation *      clutter_actor_animate_with_timelinev    (ClutterActor         *actor,
+                                                                 gulong                mode,
+                                                                 ClutterTimeline      *timeline,
+                                                                 gint                  n_properties,
+                                                                 const gchar * const   properties[],
+                                                                 const GValue         *values);
 CLUTTER_DEPRECATED_IN_1_10_FOR(clutter_actor_animate_with_timeline)
 ClutterAnimation *      clutter_actor_animate_with_alpha        (ClutterActor         *actor,
                                                                  ClutterAlpha         *alpha,
@@ -52,6 +197,11 @@ ClutterAnimation *      clutter_actor_animate_with_alphav       (ClutterActor
                                                                  const gchar * const   properties[],
                                                                  const GValue         *values);
 
+CLUTTER_DEPRECATED_IN_1_12
+ClutterAnimation *      clutter_actor_get_animation             (ClutterActor         *actor);
+CLUTTER_DEPRECATED_IN_1_12
+void                    clutter_actor_detach_animation          (ClutterActor         *actor);
+
 G_END_DECLS
 
 #endif /* __CLUTTER_ANIMATION_DEPRECATED_H__ */



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]