Clutter::Stage(3) Top level visual element to which actors are placed

SYNOPSIS


my $stage = Clutter::Stage->new();
$stage->signal_connect(destroy => sub { Clutter->main_quit });
$stage->add($actor, $rectangle, $group, $texture, $label);
$stage->show();
$stage->destroy();
# the default stage is owned by Clutter, and get_default() will
# always return the same pointer
my $stage = Clutter::Stage->get_default();

DESCRIPTION

Clutter::Stage is a top level 'window' on which child actors are placed and manipulated.

Clutter creates a default stage upon initialization, which can be retrieved using Clutter::Stage::get_default(). Clutter always provides the default stage, unless the backend is unable to create one. The stage returned by Clutter::Stage::get_default() is guaranteed to always be the same.

Backends might provide support for multiple stages. The support for this feature can be checked at run-time using the Clutter::feature_available() function and the 'stage-multiple' flag. If the backend used supports multiple stages, new Clutter::Stage instances can be created using Clutter::Stage::new(). These stages must be managed by the developer using Clutter::Actor::destroy(), which will take care of destroying all the actors contained inside them.

Clutter::Stage is a proxy actor, wrapping the backend-specific implementation of the windowing system. It is possible to subclass Clutter::Stage, as long as every overridden virtual function chains up to the parent class corresponding function.

HIERARCHY

  Glib::Object
  +----Glib::InitiallyUnowned
       +----Clutter::Actor
            +----Clutter::Group
                 +----Clutter::Stage

INTERFACES

  Glib::Object::_Unregistered::ClutterScriptable
  Clutter::Container

METHODS

actor = Clutter::Stage->new

Creates a new Clutter::Stage, if the Clutter backend supports multiple stages.

actor = $stage->get_actor_at_pos ($mode, $x, $y)

  • $mode (Clutter::PickMode)
  • $x (double)
  • $y (double)

color = $stage->get_color

$stage->set_color ($color)

  • $color (Clutter::Color)

actor = Clutter::Stage->get_default

Retrieves the default Clutter::Stage. The returned stage is always the same and it must not be destroyed.

$stage->event ($event)

  • $event (Clutter::Event)

(z_near, z_far) = $stage->get_fog

$stage->set_fog ($z_near, $z_far)

  • $z_near (double)
  • $z_far (double)

boolean = $stage->get_fullscreen

$stage->set_fullscreen ($fullscreen)

  • $fullscreen (boolean)

$stage->hide_cursor

boolean = $stage->is_default

actor = $stage->get_key_focus

$stage->set_key_focus ($actor)

  • $actor (Clutter::Actor or undef)

(fovy, aspect, z_near, z_far) = $stage->get_perspective

$stage->set_perspective ($fovy, $aspect, $z_near, $z_far)

  • $fovy (double)
  • $aspect (double)
  • $z_near (double)
  • $z_far (double)

$stage->show_cursor

string = $stage->get_title

$stage->set_title ($title)

  • $title (string or undef)

boolean = $stage->get_use_fog

$stage->set_use_fog ($use_fog)

  • $use_fog (boolean)

boolean = $stage->get_user_resizable

$stage->set_user_resizable ($resizable)

  • $resizable (boolean)

PROPERTIES

'color' (Clutter::Color : readable / writable / private)
The color of the stage
'cursor-visible' (boolean : readable / writable / private)
Whether the mouse pointer is visible on the main stage
'fog' (ClutterFog : readable / writable / private)
Settings for the depth cueing
'fullscreen-set' (boolean : readable / private)
Whether the main stage is fullscreen
'offscreen' (boolean : readable / writable / private)
Whether the main stage should be rendered offscreen
'perspective' (ClutterPerspective : readable / writable / private)
Perspective projection parameters
'title' (string : readable / writable / private)
Stage Title
'use-fog' (boolean : readable / writable / private)
Whether to enable depth cueing
'user-resizable' (boolean : readable / writable / private)
Whether the stage is able to be resized via user interaction

SIGNALS

activate (Clutter::Stage)
fullscreen (Clutter::Stage)
unfullscreen (Clutter::Stage)
deactivate (Clutter::Stage)

ENUMS AND FLAGS

enum Clutter::PickMode

  • 'none' / 'CLUTTER_PICK_NONE'
  • 'reactive' / 'CLUTTER_PICK_REACTIVE'
  • 'all' / 'CLUTTER_PICK_ALL'

COPYRIGHT

Copyright (C) 2006, 2007, 2008 OpenedHand Ltd

Copyright (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.