clutter-actor: Add an internal _clutter_actor_get_opacity_override
authorNeil Roberts <neil@linux.intel.com>
Tue, 1 Mar 2011 19:52:43 +0000 (19:52 +0000)
committerNeil Roberts <neil@linux.intel.com>
Thu, 3 Mar 2011 16:54:51 +0000 (16:54 +0000)
This is needed if an effect wants to temporarily override the paint
opacity. It needs to be able to restore the old opacity override in
the post_paint handler otherwise it would replace the effect of the
opacity override from any outer effects.

http://bugzilla.clutter-project.org/show_bug.cgi?id=2541

clutter/clutter-actor-private.h
clutter/clutter-actor.c

index 37bd7d5..b598008 100644 (file)
@@ -131,6 +131,7 @@ void _clutter_actor_rerealize (ClutterActor    *self,
 
 void _clutter_actor_set_opacity_override (ClutterActor *self,
                                           gint          opacity);
+gint _clutter_actor_get_opacity_override (ClutterActor *self);
 void _clutter_actor_set_in_clone_paint (ClutterActor *self,
                                         gboolean      is_in_clone_paint);
 
index b2ea110..92990bb 100644 (file)
@@ -10192,6 +10192,14 @@ _clutter_actor_set_opacity_override (ClutterActor *self,
   self->priv->opacity_override = opacity;
 }
 
+gint
+_clutter_actor_get_opacity_override (ClutterActor *self)
+{
+  g_return_val_if_fail (CLUTTER_IS_ACTOR (self), -1);
+
+  return self->priv->opacity_override;
+}
+
 /* Allows you to disable applying the actors model view transform during
  * a paint. Used by ClutterClone. */
 void