
@c %start of fragment

@deffn Function clutter-stage-new  @result{}@tie{} (ret@tie{}@code{<clutter-actor>})
Creates a new, non-default stage. A non-default stage is a new top-level
actor which can be used as another container. It works exactly like the
default stage, but while @code{clutter-stage-get-default} will always
return the same instance, you will have to keep a pointer to any
@code{<clutter-stage>} returned by @code{clutter-stage-new}.

The ability to support multiple stages depends on the current backend.
Use @code{clutter-feature-available} and
@samp{CLUTTER_FEATURE_STAGE_MULTIPLE} to check at runtime whether a
backend supports multiple stages.

@table @var
@item ret
a new stage, or @samp{@code{#f}} if the default backend does not support
multiple stages. Use @code{clutter-actor-destroy} to programmatically
close the returned stage.

@end table

Since 0.8

@end deffn

@deffn Function clutter-stage-set-fullscreen  (self@tie{}@code{<clutter-stage>}) (fullscreen@tie{}@code{bool})
@deffnx Method set-fullscreen
Asks to place the stage window in the fullscreen or unfullscreen states.

( Note that you shouldn't assume the window is definitely full screen
afterward, because other entities (e.g. the user or window manager)
could unfullscreen it again, and not all window managers honor requests
to fullscreen windows.

If you want to receive notification of the fullscreen state you should
either use the @code{<"fullscreen">} and @code{<"unfullscreen">}
signals, or use the notify signal for the @code{<"fullscreen-set">}
property

@table @var
@item stage
a @code{<clutter-stage>}

@item fullscreen
@samp{@code{#t}} to to set the stage fullscreen

@end table

Since 1.0

@end deffn

@deffn Function clutter-stage-get-fullscreen  (self@tie{}@code{<clutter-stage>}) @result{}@tie{} (ret@tie{}@code{bool})
@deffnx Method get-fullscreen
Retrieves whether the stage is full screen or not

@table @var
@item stage
a @code{<clutter-stage>}

@item ret
@samp{@code{#t}} if the stage is full screen

@end table

Since 1.0

@end deffn

@deffn Function clutter-stage-show-cursor  (self@tie{}@code{<clutter-stage>})
@deffnx Method show-cursor
Shows the cursor on the stage window

@table @var
@item stage
a @code{<clutter-stage>}

@end table

@end deffn

@deffn Function clutter-stage-hide-cursor  (self@tie{}@code{<clutter-stage>})
@deffnx Method hide-cursor
Makes the cursor invisible on the stage window

@table @var
@item stage
a @code{<clutter-stage>}

@end table

Since 0.4

@end deffn

@deffn Function clutter-stage-get-actor-at-pos  (self@tie{}@code{<clutter-stage>}) (pick_mode@tie{}@code{<clutter-pick-mode>}) (x@tie{}@code{int}) (y@tie{}@code{int}) @result{}@tie{} (ret@tie{}@code{<clutter-actor>})
@deffnx Method get-actor-at-pos
Checks the scene at the coordinates @var{x} and @var{y} and returns a
pointer to the @code{<clutter-actor>} at those coordinates.

By using @var{pick-mode} it is possible to control which actors will be
painted and thus available.

@table @var
@item stage
a @code{<clutter-stage>}

@item pick-mode
how the scene graph should be painted

@item x
X coordinate to check

@item y
Y coordinate to check

@item ret
the actor at the specified coordinates, if any.

@end table

@end deffn

@deffn Function clutter-stage-ensure-current  (self@tie{}@code{<clutter-stage>})
@deffnx Method ensure-current
This function essentially makes sure the right GL context is current for
the passed stage. It is not intended to be used by applications.

@table @var
@item stage
the @code{<clutter-stage>}

@end table

Since 0.8

@end deffn

@deffn Function clutter-stage-ensure-viewport  (self@tie{}@code{<clutter-stage>})
@deffnx Method ensure-viewport
Ensures that the GL viewport is updated with the current stage window
size.

This function will queue a redraw of @var{stage}.

This function should not be called by applications; it is used when
embedding a @code{<clutter-stage>} into a toolkit with another windowing
system, like GTK+.

@table @var
@item stage
a @code{<clutter-stage>}

@end table

Since 1.0

@end deffn

@deffn Function clutter-stage-ensure-redraw  (self@tie{}@code{<clutter-stage>})
@deffnx Method ensure-redraw
Ensures that @var{stage} is redrawn

This function should not be called by applications: it is used when
embedding a @code{<clutter-stage>} into a toolkit with another windowing
system, like GTK+.

@table @var
@item stage
a @code{<clutter-stage>}

@end table

Since 1.0

@end deffn

@deffn Function clutter-stage-event  (self@tie{}@code{<clutter-stage>}) (event@tie{}@code{<clutter-event>}) @result{}@tie{} (ret@tie{}@code{bool})
@deffnx Method event
This function is used to emit an event on the main stage.

You should rarely need to use this function, except for synthetised
events.

@table @var
@item stage
a @code{<clutter-stage>}

@item event
a @code{<clutter-event>}

@item ret
the return value from the signal emission

@end table

Since 0.4

@end deffn

@deffn Function clutter-stage-set-key-focus  (self@tie{}@code{<clutter-stage>}) (actor@tie{}@code{<clutter-actor>})
@deffnx Method set-key-focus
Sets the key focus on @var{actor}. An actor with key focus will receive
all the key events. If @var{actor} is @samp{@code{#f}}, the stage will
receive focus.

@table @var
@item stage
the @code{<clutter-stage>}

@item actor
the actor to set key focus to, or @samp{@code{#f}}.

@end table

Since 0.6

@end deffn

@deffn Function clutter-stage-get-key-focus  (self@tie{}@code{<clutter-stage>}) @result{}@tie{} (ret@tie{}@code{<clutter-actor>})
@deffnx Method get-key-focus
Retrieves the actor that is currently under key focus.

@table @var
@item stage
the @code{<clutter-stage>}

@item ret
the actor with key focus, or the stage.

@end table

Since 0.6

@end deffn

@deffn Function clutter-stage-set-use-alpha  (self@tie{}@code{<clutter-stage>}) (use_alpha@tie{}@code{bool})
@deffnx Method set-use-alpha
Sets whether the @var{stage} should honour the @code{<"opacity">} and
the alpha channel of the @code{<"color">}

@table @var
@item stage
a @code{<clutter-stage>}

@item use-alpha
whether the stage should honour the opacity or the alpha channel of the
stage color

@end table

Since 1.2

@end deffn

@deffn Function clutter-stage-get-use-alpha  (self@tie{}@code{<clutter-stage>}) @result{}@tie{} (ret@tie{}@code{bool})
@deffnx Method get-use-alpha
Retrieves the value set using @code{clutter-stage-set-use-alpha}

@table @var
@item stage
a @code{<clutter-stage>}

@item ret
@samp{@code{#t}} if the stage should honour the opacity and the alpha
channel of the stage color

@end table

Since 1.2

@end deffn

@deffn Function clutter-stage-set-minimum-size  (self@tie{}@code{<clutter-stage>}) (width@tie{}@code{unsigned-int}) (height@tie{}@code{unsigned-int})
@deffnx Method set-minimum-size
Sets the minimum size for a stage window, if the default backend uses
@code{<clutter-stage>} inside a window

This is a convenience function, and it is equivalent to setting the
@code{<"min-width">} and @code{<"min-height">} on @var{stage}

If the current size of @var{stage} is smaller than the minimum size, the
@var{stage} will be resized to the new @var{width} and @var{height}

This function has no effect if @var{stage} is fullscreen

@table @var
@item stage
a @code{<clutter-stage>}

@item width
width, in pixels

@item height
height, in pixels

@end table

Since 1.2

@end deffn

@deffn Function clutter-stage-get-minimum-size  (self@tie{}@code{<clutter-stage>}) @result{}@tie{} (width@tie{}@code{unsigned-int}) (height@tie{}@code{unsigned-int})
@deffnx Method get-minimum-size
Retrieves the minimum size for a stage window as set using
@code{clutter-stage-set-minimum-size}.

The returned size may not correspond to the actual minimum size and it
is specific to the @code{<clutter-stage>} implementation inside the
Clutter backend

@table @var
@item stage
a @code{<clutter-stage>}

@item width
return location for the minimum width, in pixels, or @samp{@code{#f}}.

@item height
return location for the minimum height, in pixels, or @samp{@code{#f}}.

@end table

Since 1.2

@end deffn

@deffn Function clutter-stage-set-no-clear-hint  (self@tie{}@code{<clutter-stage>}) (no_clear@tie{}@code{bool})
@deffnx Method set-no-clear-hint
Sets whether the @var{stage} should clear itself at the beginning of
each paint cycle or not.

Clearing the @code{<clutter-stage>} can be a costly operation,
especially if the stage is always covered - for instance, in a
full-screen video player or in a game with a background texture.

This setting is a hint; Clutter might discard this hint depending on its
internal state.

@c (warning)

If parts of the stage are visible and you disable clearing you might end
up with visual artifacts while painting the contents of the stage.

@table @var
@item stage
a @code{<clutter-stage>}

@item no-clear
@samp{@code{#t}} if the @var{stage} should not clear itself on every
repaint cycle

@end table

Since 1.4

@end deffn

@deffn Function clutter-stage-get-no-clear-hint  (self@tie{}@code{<clutter-stage>}) @result{}@tie{} (ret@tie{}@code{bool})
@deffnx Method get-no-clear-hint
Retrieves the hint set with @code{clutter-stage-set-no-clear-hint}

@table @var
@item stage
a @code{<clutter-stage>}

@item ret
@samp{@code{#t}} if the stage should not clear itself on every paint
cycle, and @samp{@code{#f}} otherwise

@end table

Since 1.4

@end deffn

@deffn Function clutter-stage-set-accept-focus  (self@tie{}@code{<clutter-stage>}) (accept_focus@tie{}@code{bool})
@deffnx Method set-accept-focus
Sets whether the @var{stage} should accept the key focus when shown.

This function should be called before showing @var{stage} using
@code{clutter-actor-show}.

@table @var
@item stage
a @code{<clutter-stage>}

@item accept-focus
@samp{@code{#t}} to accept focus on show

@end table

Since 1.6

@end deffn

@deffn Function clutter-stage-get-accept-focus  (self@tie{}@code{<clutter-stage>}) @result{}@tie{} (ret@tie{}@code{bool})
@deffnx Method get-accept-focus
Retrieves the value set with @code{clutter-stage-set-accept-focus}.

@table @var
@item stage
a @code{<clutter-stage>}

@item ret
@samp{@code{#t}} if the @code{<clutter-stage>} should accept focus, and
@samp{@code{#f}} otherwise

@end table

Since 1.6

@end deffn

@deffn Function clutter-stage-set-perspective  (self@tie{}@code{<clutter-stage>}) (perspective@tie{}@code{<clutter-perspective>})
@deffnx Method set-perspective
Sets the stage perspective. Using this function is not recommended
because it will disable Clutter's attempts to generate an appropriate
perspective based on the size of the stage.

@table @var
@item stage
A @code{<clutter-stage>}

@item perspective
A @code{<clutter-perspective>}

@end table

@end deffn

@deffn Function clutter-stage-get-perspective  (self@tie{}@code{<clutter-stage>}) @result{}@tie{} (ret@tie{}@code{scm})
@deffnx Method get-perspective
Retrieves the stage perspective.

@table @var
@item stage
A @code{<clutter-stage>}

@item perspective
return location for a @code{<clutter-perspective>}.

@end table

@end deffn

@deffn Function clutter-stage-set-title  (self@tie{}@code{<clutter-stage>}) (title@tie{}@code{mchars})
@deffnx Method set-title
Sets the stage title.

@table @var
@item stage
A @code{<clutter-stage>}

@item title
A utf8 string for the stage windows title.

@end table

Since 0.4

@end deffn

@deffn Function clutter-stage-get-title  (self@tie{}@code{<clutter-stage>}) @result{}@tie{} (ret@tie{}@code{mchars})
@deffnx Method get-title
Gets the stage title.

@table @var
@item stage
A @code{<clutter-stage>}

@item ret
pointer to the title string for the stage. The returned string is owned
by the actor and should not be modified or freed.

@end table

Since 0.4

@end deffn

@deffn Function clutter-stage-set-user-resizable  (self@tie{}@code{<clutter-stage>}) (resizable@tie{}@code{bool})
@deffnx Method set-user-resizable
Sets if the stage is resizable by user interaction (e.g. via window
manager controls)

@table @var
@item stage
a @code{<clutter-stage>}

@item resizable
whether the stage should be user resizable.

@end table

Since 0.4

@end deffn

@deffn Function clutter-stage-get-user-resizable  (self@tie{}@code{<clutter-stage>}) @result{}@tie{} (ret@tie{}@code{bool})
@deffnx Method get-user-resizable
Retrieves the value set with @code{clutter-stage-set-user-resizable}.

@table @var
@item stage
a @code{<clutter-stage>}

@item ret
@samp{@code{#t}} if the stage is resizable by the user.

@end table

Since 0.4

@end deffn


@c %end of fragment
