[glide] Begin adding calculation of animation positions within slides



commit 3f1671a5270c73b0dd962cc8c2ed5138e87edcfb
Author: Robert Carr <racarr Valentine localdomain>
Date:   Sun May 2 03:58:36 2010 -0400

    Begin adding calculation of animation positions within slides

 src/glide-actor-priv.h |    2 ++
 src/glide-actor.c      |   13 +++++++++++++
 src/glide-actor.h      |   15 ++++++++++++++-
 3 files changed, 29 insertions(+), 1 deletions(-)
---
diff --git a/src/glide-actor-priv.h b/src/glide-actor-priv.h
index ad20775..9c49f12 100644
--- a/src/glide-actor-priv.h
+++ b/src/glide-actor-priv.h
@@ -29,6 +29,8 @@ struct _GlideActorPrivate
   GlideStageManager *manager;
   
   gboolean selected;
+  
+  GlideActorAnimationPosition animation_position;
 };
 
 G_END_DECLS
diff --git a/src/glide-actor.c b/src/glide-actor.c
index f35f9d4..02bf888 100644
--- a/src/glide-actor.c
+++ b/src/glide-actor.c
@@ -321,3 +321,16 @@ glide_actor_end_undo (GlideActor *actor)
 {
   glide_undo_manager_end_actor_action (glide_actor_get_undo_manager (actor), actor);
 }
+
+GlideActorAnimationPosition *
+glide_actor_get_animation_posisiton (GlideActor *actor)
+{
+  return &actor->priv->animation_position;
+}
+void 
+glide_actor_set_animation_position (GlideActor *actor, GlideActorAnimationPosition *pos)
+{
+  if (actor->priv->animation_position.other)
+    g_free (actor->priv->animation_position.other);
+  actor->priv->animation_position = *pos;
+}
diff --git a/src/glide-actor.h b/src/glide-actor.h
index 03c068e..b6a7f31 100644
--- a/src/glide-actor.h
+++ b/src/glide-actor.h
@@ -76,6 +76,18 @@ struct _GlideActorClass
   (clutter_actor_get_name ((ClutterActor *)actor) ?  \
    clutter_actor_get_name ((ClutterActor *)actor) : "unknown")
 
+typedef enum
+  {
+    GLIDE_ACTOR_ANIMATION_POSITION_FIRST,
+    GLIDE_ACTOR_ANIMATION_POSITION_AFTER,
+    GLIDE_ACTOR_ANIMATION_POSITION_WITH
+  } GlideActorAnimationPositionType;
+
+typedef struct _GlideActorAnimationPosition {
+  GlideActorAnimationPositionType pos_type;
+  gchar *other;
+} GlideActorAnimationPosition;
+
 /*
  * Public methods
  */
@@ -101,7 +113,8 @@ gchar *glide_actor_get_resource_path (GlideActor *actor, const gchar *resource_n
 void glide_actor_start_undo (GlideActor *actor, const gchar *label);
 void glide_actor_end_undo (GlideActor *actor);
 
-
+GlideActorAnimationPosition *glide_actor_get_animation_posisiton (GlideActor *actor);
+void glide_actor_set_animation_position (GlideActor *actor, GlideActorAnimationPosition *pos);
 
 G_END_DECLS
 



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