DESCRIPTION
Clutter::Behaviour is the base class for objects controlling the behaviour of actors. These objects are used primarily to drive a set of actors depending on the position on a timeline, using an ``alpha'' function; the alpha function is held by the Clutter::Alpha object, which automatically binds a Clutter::Timeline to the function.HIERARCHY
Glib::Object +----Clutter::Behaviour
METHODS
$behaviour->actors_foreach ($func, $data=undef)
- $func (scalar)
- $data (scalar)
actors = $behaviour->get_actors
alpha = $behaviour->get_alpha
$behaviour->set_alpha ($alpha)
- $alpha (Clutter::Alpha)
$behaviour->apply ($actor)
- $actor (Clutter::Actor)
boolean = $behaviour->is_applied ($actor)
- $actor (Clutter::Actor)
integer = $behaviour->get_n_actors
actor = $behaviour->get_nth_actor ($index)
- $index (integer)
$behaviour->remove ($actor)
- $actor (Clutter::Actor)
$behaviour->remove_all
PROPERTIES
- 'alpha' (Clutter::Alpha : readable / writable / private)
- Alpha Object to drive the behaviour
SIGNALS
- applied (Clutter::Behaviour, Clutter::Actor)
- removed (Clutter::Behaviour, Clutter::Actor)
DERIVING NEW BEHAVIOURS
Clutter provides various behaviours, like Clutter::Behaviour::Opacity, Clutter::Behaviour::Path and Clutter::Behaviour::Scale. You may derive a new behaviour from any of these, or directly from the Clutter::Behaviour class itself.The new behaviour must be a GObject, so you must follow the normal procedure for creating a new Glib::Object (i.e., either using the Glib::Object::Subclass pragmatic module or by directly calling the Glib::Type::register_object function). The new subclass can customize the behaviour by providing a new implementation of the following method:
- ALPHA_NOTIFY ($behaviour, $alpha_value)
-
-
- o $behaviour (Clutter::Behaviour)
- o $alpha_value (float) The value computed by the alpha function
-
This is called each time the value of the alpha function held by the Clutter::Alpha object bound to the behaviour changes. You should update the property, or the properties, of the actors controlled by your behaviour using alpha_value, scaled accordingly.
-
COPYRIGHT
Copyright (C) 2006, 2007, 2008 OpenedHand LtdCopyright (C) 2009 Intel Corporation
This module is free software; you can redistribute it and/or modify it under the terms of either:
- the GNU Lesser General Public Library version 2.1; or
- the Artistic License, version 2.0.
See Clutter for the full copyright notice.