<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Clutter Reference Manual: Part I. Overview</title> <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"> <link rel="home" href="index.html" title="Clutter Reference Manual"> <link rel="up" href="index.html" title="Clutter Reference Manual"> <link rel="prev" href="index.html" title="Clutter Reference Manual"> <link rel="next" href="building-clutter.html" title="Part II. Building Clutter"> <meta name="generator" content="GTK-Doc V1.20.1 (XML mode)"> <link rel="stylesheet" href="style.css" type="text/css"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle"> <td width="100%" align="left" class="shortcuts"></td> <td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td> <td><img src="up-insensitive.png" width="16" height="16" border="0"></td> <td><a accesskey="p" href="index.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td> <td><a accesskey="n" href="building-clutter.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td> </tr></table> <div class="part"> <div class="titlepage"><div> <div><h1 class="title"> <a name="clutter-overview"></a>Part I. Overview</h1></div> <div><div class="author"> <h3 class="author"> <span class="firstname">Emmanuele</span> <span class="surname">Bassi</span> </h3> <div class="affiliation"><div class="address"><p><br> <code class="email"><<a class="email" href="mailto:ebassiopenedhand.com">ebassi<em class="parameter"><code>openedhand.com</code></em></a>></code><br> </p></div></div> </div></div> </div></div> <div class="partintro"> <div></div> <p>Clutter is a GObject based library for creating fast, visually rich, graphical user interfaces.</p> <p>Clutter works by manipulating a scene-graph of 2D surfaces, or 'actors', inside a 3D space.</p> <p><a class="link" href="ClutterActor.html" title="ClutterActor"><span class="type">ClutterActor</span></a> is the base class for such surfaces. All <a class="link" href="ClutterActor.html" title="ClutterActor"><span class="type">ClutterActor</span></a>s can be positioned, scaled and rotated in 3D space. In addition, other properties can be set, such as 2D clipping, children and opacity. Tranforms applied to a parent actor also apply to any children. Actors are also able to receive events.</p> <p>Subclasses of <a class="link" href="ClutterActor.html" title="ClutterActor"><span class="type">ClutterActor</span></a> include <a class="link" href="ClutterStage.html" title="ClutterStage"><span class="type">ClutterStage</span></a>, <a class="link" href="ClutterTexture.html" title="ClutterTexture"><span class="type">ClutterTexture</span></a>, <a class="link" href="ClutterText.html" title="ClutterText"><span class="type">ClutterText</span></a>, <a class="link" href="ClutterRectangle.html" title="ClutterRectangle"><span class="type">ClutterRectangle</span></a>, <a class="link" href="ClutterCairoTexture.html" title="ClutterCairoTexture"><span class="type">ClutterCairoTexture</span></a>, <a class="link" href="ClutterGroup.html" title="ClutterGroup"><span class="type">ClutterGroup</span></a> and <a class="link" href="ClutterBox.html" title="ClutterBox"><span class="type">ClutterBox</span></a>. <a class="link" href="ClutterActor.html" title="ClutterActor"><span class="type">ClutterActor</span></a>s are added to a parent, transformed and then made visible.</p> <p><a class="link" href="ClutterStage.html" title="ClutterStage"><span class="type">ClutterStage</span></a> is the top level <a class="link" href="ClutterActor.html" title="ClutterActor"><span class="type">ClutterActor</span></a> - it's the representation of a window, or framebuffer. It is created automatically when Clutter is initialised. <a class="link" href="ClutterStage.html" title="ClutterStage"><span class="type">ClutterStage</span></a> is a <a class="link" href="ClutterGroup.html" title="ClutterGroup"><span class="type">ClutterGroup</span></a>, a class implementing the <a class="link" href="ClutterContainer.html" title="ClutterContainer"><span class="type">ClutterContainer</span></a> interface.</p> <p>Clutter allows explicit positioning and sizing through the <a class="link" href="ClutterFixedLayout.html" title="ClutterFixedLayout"><span class="type">ClutterFixedLayout</span></a> layout manager; and implicit positioning and sizing through fluid layout managers like <a class="link" href="ClutterBoxLayout.html" title="ClutterBoxLayout"><span class="type">ClutterBoxLayout</span></a>, <a class="link" href="ClutterFlowLayout.html" title="ClutterFlowLayout"><span class="type">ClutterFlowLayout</span></a> and <a class="link" href="ClutterTableLayout.html" title="ClutterTableLayout"><span class="type">ClutterTableLayout</span></a>. Actors inside fixed layout managers like <a class="link" href="ClutterGroup.html" title="ClutterGroup"><span class="type">ClutterGroup</span></a> and <a class="link" href="ClutterStage.html" title="ClutterStage"><span class="type">ClutterStage</span></a> can also be positioned and sized implicitly using the <a class="link" href="ClutterConstraint.html" title="ClutterConstraint"><span class="type">ClutterConstraint</span></a> sub-classes.</p> <p><a class="link" href="ClutterTimeline.html" title="ClutterTimeline"><span class="type">ClutterTimeline</span></a>s provide the basis for Clutter's animation utilities. <a class="link" href="ClutterActor.html" title="ClutterActor"><span class="type">ClutterActor</span></a>s can be animated using explicit animations through the various <a class="link" href="ClutterBehaviour.html" title="ClutterBehaviour"><span class="type">ClutterBehaviour</span></a> implementations, or implicit animations, through the <a class="link" href="clutter-Implicit-Animations.html#clutter-actor-animate" title="clutter_actor_animate ()"><code class="function">clutter_actor_animate()</code></a> function. Animations can also be defined as named states through the <a class="link" href="ClutterState.html" title="ClutterState"><span class="type">ClutterState</span></a> class.</p> <p>Clutter further contains a number of utilities, including; <a class="link" href="ClutterScript.html" title="ClutterScript"><span class="type">ClutterScript</span></a> - for loading 'UI definition' files formatted in <a class="ulink" href="http://json.org" target="_top">JSON</a>; <a class="link" href="clutter-Shaders.html#ClutterShader"><span class="type">ClutterShader</span></a> - a class for applying GPU shaders to actors, <a class="link" href="ClutterModel.html" title="ClutterModel"><span class="type">ClutterModel</span></a> - a utility class for MVC list type implementations; <a class="link" href="ClutterAction.html" title="ClutterAction"><span class="type">ClutterAction</span></a>s, <a class="link" href="ClutterConstraint.html" title="ClutterConstraint"><span class="type">ClutterConstraint</span></a>s and <a class="link" href="ClutterEffect.html" title="ClutterEffect"><span class="type">ClutterEffect</span></a>s.</p> </div> </div> <div class="footer"> <hr> Generated by GTK-Doc V1.20.1</div> </body> </html>