# Clutter::Behaviour Class Reference

Inherits Glib::Object.

Inherited by Clutter::BehaviourDepth, Clutter::BehaviourEllipse, Clutter::BehaviourOpacity, Clutter::BehaviourPath, Clutter::BehaviourRotate, and Clutter::BehaviourScale.

Collaboration diagram for Clutter::Behaviour:
[legend]

List of all members.

## Public Types

typedef sigc::slot< void, const Glib::RefPtr< Behaviour > &, const Glib::RefPtr< Actor >& > | SlotForEach
| For instance, void on_foreach(const Glib::RefPtr<Behaviour>& behaviour, const Glib::RefPtr<Actor>& actor).

## Public Member Functions

virtual | ~Behaviour ()
ClutterBehaviour* | gobj ()
| Provides access to the underlying C GObject.
const ClutterBehaviour* | gobj () const
| Provides access to the underlying C GObject.
ClutterBehaviour* | gobj_copy ()
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
void | apply (const Glib::RefPtr< Actor >& actor)
| Applies behave to actor.
void | remove (const Glib::RefPtr< Actor >& actor)
| Removes actor from the list of Clutter::Actors to which behave applies.
void | remove_all ()
| Removes every actor from the list that behave holds.
bool | is_applied (const Glib::RefPtr< Actor >& actor)
| Check if behave applied to actor.
std::vector< Glib::RefPtr < Actor > > | get_actors ()
std::vector< Glib::RefPtr < Actor const > > | get_actors () const
int | get_n_actors () const
| Gets the number of actors this behaviour is applied too.
Glib::RefPtr< Actor > | get_nth_actor (int index)
| Gets an actor the behaviour was applied to referenced by index num.
Glib::RefPtr< const Actor > | get_nth_actor (int index) const
| Gets an actor the behaviour was applied to referenced by index num.
Glib::RefPtr< Alpha > | get_alpha ()
| Retrieves the Clutter::Alpha object bound to behave.
Glib::RefPtr< const Alpha > | get_alpha () const
| Retrieves the Clutter::Alpha object bound to behave.
void | set_alpha (const Glib::RefPtr< Alpha >& alpha)
| Binds alpha to a Clutter::Behaviour.
void | actors_foreach (const SlotForEach& slot)
Glib::SignalProxy1< void, const Glib::RefPtr< Actor >& > | signal_applied ()
Glib::SignalProxy1< void, const Glib::RefPtr< Actor >& > | signal_removed ()

## Protected Member Functions

| Behaviour ()
virtual void | alpha_notify_vfunc (double alpha_value)
virtual void | on_applied (const Glib::RefPtr< Actor >& actor)
virtual void | on_removed (const Glib::RefPtr< Actor >& actor)

## Related Functions

(Note that these are not member functions.)
Glib::RefPtr< Clutter::Behaviour > | wrap (ClutterBehaviour* object, bool take_copy=false)
| A Glib::wrap() method for this object.

## Member Typedef Documentation

typedef sigc::slot<void, const Glib::RefPtr<Behaviour>&, const Glib::RefPtr<Actor>&> Clutter::Behaviour::SlotForEach

For instance, void on_foreach(const Glib::RefPtr<Behaviour>& behaviour, const Glib::RefPtr<Actor>& actor).

## Constructor & Destructor Documentation

virtual Clutter::Behaviour::~Behaviour | ( |  | ) | `[virtual]`

Clutter::Behaviour::Behaviour | ( |  | ) | `[protected]`

## Member Function Documentation

void Clutter::Behaviour::actors_foreach | ( | const SlotForEach& | slot | ) |

virtual void Clutter::Behaviour::alpha_notify_vfunc | ( | double | alpha_value | ) | `[protected, virtual]`

void Clutter::Behaviour::apply | ( | const Glib::RefPtr< Actor >& | actor | ) |

Applies behave to actor.

This function adds a reference on the actor.

Since cluttermm 0.2:

Parameters:

  | actor | A Clutter::Actor.

std::vector<Glib::RefPtr<Actor const> > Clutter::Behaviour::get_actors | ( |  | ) | const

std::vector<Glib::RefPtr<Actor> > Clutter::Behaviour::get_actors | ( |  | ) |

Glib::RefPtr<Alpha> Clutter::Behaviour::get_alpha | ( |  | ) |

Retrieves the Clutter::Alpha object bound to behave.

Since cluttermm 0.2:

Returns:
  A Clutter::Alpha object, or `0` if no alpha object has been bound to this behaviour.

Glib::RefPtr<const Alpha> Clutter::Behaviour::get_alpha | ( |  | ) | const

Retrieves the Clutter::Alpha object bound to behave.

Since cluttermm 0.2:

Returns:
  A Clutter::Alpha object, or `0` if no alpha object has been bound to this behaviour.

int Clutter::Behaviour::get_n_actors | ( |  | ) | const

Gets the number of actors this behaviour is applied too.

Since cluttermm 0.2:

Returns:
  The number of applied actors.

Glib::RefPtr<Actor> Clutter::Behaviour::get_nth_actor | ( | int | index | ) |

Gets an actor the behaviour was applied to referenced by index num.

Since cluttermm 0.2:

Parameters:

  | index | The index of an actor this behaviour is applied too.

Returns:
  A Clutter actor or `0` if index is invalid.

Glib::RefPtr<const Actor> Clutter::Behaviour::get_nth_actor | ( | int | index | ) | const

Gets an actor the behaviour was applied to referenced by index num.

Since cluttermm 0.2:

Parameters:

  | index | The index of an actor this behaviour is applied too.

Returns:
  A Clutter actor or `0` if index is invalid.

const ClutterBehaviour* Clutter::Behaviour::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GObject.

Reimplemented in Clutter::BehaviourDepth, Clutter::BehaviourEllipse, Clutter::BehaviourOpacity, Clutter::BehaviourRotate, and Clutter::BehaviourScale.

ClutterBehaviour* Clutter::Behaviour::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GObject.

Reimplemented in Clutter::BehaviourDepth, Clutter::BehaviourEllipse, Clutter::BehaviourOpacity, Clutter::BehaviourRotate, and Clutter::BehaviourScale.

ClutterBehaviour* Clutter::Behaviour::gobj_copy | ( |  | ) |

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

Reimplemented in Clutter::BehaviourDepth, Clutter::BehaviourEllipse, Clutter::BehaviourOpacity, Clutter::BehaviourRotate, and Clutter::BehaviourScale.

bool Clutter::Behaviour::is_applied | ( | const Glib::RefPtr< Actor >& | actor | ) |

Check if behave applied to actor.

Since cluttermm 0.4:

Parameters:

  | actor | A Clutter::Actor.

Returns:
  `true` if actor has behaviour. `false` otherwise.

virtual void Clutter::Behaviour::on_applied | ( | const Glib::RefPtr< Actor >& | actor | ) | `[protected, virtual]`

virtual void Clutter::Behaviour::on_removed | ( | const Glib::RefPtr< Actor >& | actor | ) | `[protected, virtual]`

void Clutter::Behaviour::remove | ( | const Glib::RefPtr< Actor >& | actor | ) |

Removes actor from the list of Clutter::Actors to which behave applies.

This function removes a reference on the actor.

Since cluttermm 0.2:

Parameters:

  | actor | A Clutter::Actor.

void Clutter::Behaviour::remove_all | ( |  | ) |

Removes every actor from the list that behave holds.

Since cluttermm 0.4:

void Clutter::Behaviour::set_alpha | ( | const Glib::RefPtr< Alpha >& | alpha | ) |

Binds alpha to a Clutter::Behaviour.

The Clutter::Alpha object is what makes a behaviour work: for each tick of the timeline used by Clutter::Alpha a new value of the alpha parameter is computed by the alpha function; the value should be used by the Clutter::Behaviour to update one or more properties of the actors to which the behaviour applies.

If alpha is not `0`, the Clutter::Behaviour will take ownership of the Clutter::Alpha instance.

Since cluttermm 0.2:

Parameters:

  | alpha | A Clutter::Alpha or `0` to unset a previously set alpha.

Glib::SignalProxy1< void,const Glib::RefPtr<Actor>& > Clutter::Behaviour::signal_applied | ( |  | ) |

Prototype:
  `void on_my_applied(const Glib::RefPtr<Actor>& actor)`

Glib::SignalProxy1< void,const Glib::RefPtr<Actor>& > Clutter::Behaviour::signal_removed | ( |  | ) |

Prototype:
  `void on_my_removed(const Glib::RefPtr<Actor>& actor)`

## Friends And Related Function Documentation

Glib::RefPtr< Clutter::Behaviour > wrap | ( | ClutterBehaviour * | object,
|  | bool | take_copy = `false` |
| ) |  |  | `[related]`

A Glib::wrap() method for this object.

Parameters:

  | object | The C instance.
  | take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns:
  A C++ instance that wraps this C instance.

The documentation for this class was generated from the following file:

- cluttermm/behaviour.h