summaryrefslogtreecommitdiff
path: root/clutter/clutter/clutter-graphene.c
diff options
context:
space:
mode:
Diffstat (limited to 'clutter/clutter/clutter-graphene.c')
-rw-r--r--clutter/clutter/clutter-graphene.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/clutter/clutter/clutter-graphene.c b/clutter/clutter/clutter-graphene.c
index d037b6026..72ecbfd42 100644
--- a/clutter/clutter/clutter-graphene.c
+++ b/clutter/clutter/clutter-graphene.c
@@ -30,6 +30,23 @@
#include "clutter-types.h"
static gboolean
+graphene_point_progress (const GValue *a,
+ const GValue *b,
+ double progress,
+ GValue *retval)
+{
+ const graphene_point_t *ap = g_value_get_boxed (a);
+ const graphene_point_t *bp = g_value_get_boxed (b);
+ graphene_point_t res;
+
+ graphene_point_interpolate (ap, bp, progress, &res);
+
+ g_value_set_boxed (retval, &res);
+
+ return TRUE;
+}
+
+static gboolean
graphene_point3d_progress (const GValue *a,
const GValue *b,
double progress,
@@ -66,6 +83,8 @@ graphene_size_progress (const GValue *a,
void
clutter_graphene_init (void)
{
+ clutter_interval_register_progress_func (GRAPHENE_TYPE_POINT,
+ graphene_point_progress);
clutter_interval_register_progress_func (GRAPHENE_TYPE_POINT3D,
graphene_point3d_progress);
clutter_interval_register_progress_func (GRAPHENE_TYPE_SIZE,