|| ||Emmanuele Bassi <ebassi-AT-o-hand.com>|
|| ||[ANNOUNCE] Clutter development snapshot - 0.5.0|
|| ||Wed, 02 Jan 2008 16:06:39 +0000|
good news, everyone!
here's to you the first development snapshot of Clutter. this release is
meant for testing and bug fixing, and it's the first towards the next
stable cycle of Clutter.
Clutter is an open source software library for creating fast, visually
rich and animated graphical user interfaces. Clutter is licensed under
the terms of the GNU Lesser General Public License version 2.1.
Clutter currently requires:
* GLib >= 2.14.0
* Pango 1.x
* OpenGL >= 1.2 or OpenGL ES 1.1
* GLX, SDL or an EGL Implementation
The official website is: http://www.clutter-project.org
The Clutter blog is at: http://www.clutter-project.org/blog
To subscribe to the Clutter mailing list, send mail to:
The official mailing list archive is: http://lists.o-hand.com/clutter/
o This is unstable development release. While it has had a bit of
testing, there are certainly plenty of bugs remaining to be found.
This release should not be used in production.
o This version is API and ABI incompatible with the current stable
release of Clutter. The API has been mostly frozen, but it can
still change within the 0.5 development snapshots cycle.
o This version is parallel installable with Clutter 0.4 and with the
upcoming 0.6 release.
o Bugs should be reported to http://bugzilla.o-hand.com
* List of changes between 0.4.2 and 0.5.0
o New event handling system: every actor with the CLUTTER_ACTOR_REACTIVE
flag set will receive events from the underlying backend; the event
propagation chain will be walked in two directions (from the actor to
the top-level container and back) with the ability to block it in
o ClutterShader, an abstraction over the programmable OpenGL pipeline.
o ClutterScore, an object for controlling timelines; using a score
instance is possible to start multiple timelines at once, or start
a timeline after another has emitted the ::complete signal.
o ClutterScript, an object for parsing a scene from an external file or
every object is defined using its class and properties, and container
objects can have their children defined as well. It is also possible
do describe top-level objects such as timelines and behaviours, and to
automatically connect signal handlers to signal names.
o ClutterTimelines duration can now be set in milliseconds using the
:duration property; the default framerate will be used to compute the
actual duration in frames. The default framerate will be set by the
backend, and can be overridden by the application.
o ClutterTimelines direction can now be set using the :direction
property; a timeline can be set to proceed forward or backward,
and the direction can also be change while the timeline is still
o New, experimental OSX backend.
o Build environment for MS VisualStudio 2005.
o The SDL backend can now be compiled under win32 with MingW; this
backend is still marked as experimental.
o ClutterModel, a generic list-based model object that can be used to
implement actors following the Model-Viewer-Controller design pattern.
Clutter provides a default implementation of ClutterModel, called
ClutterModelDefault and using the GSequence data structure from GLib
to optimize insertion and look up.
o Add the ability to grab pointer and keyboard events: if an actor
is set to have a grab it'll be the only one receiving events until
it releases the grab.
o Add the ability for an actor to receive the key focus; an actor
with key focus will always receive the key events, even if it did
not acquire the keyboard grab.
o It is now possible to set the GL "fog" (also known as "depth cueing")
effect on the ClutterStage; if the fog is enabled, actors farther
away from the view point will fade into the stage background color.
o Each actor now has an "anchor point", a point defined in the actor's
coordinate space that will be used as the origin when scaling and
o Every pixel-based API has been doubled with a corresponding
ClutterUnits-based function (postfixed with a '-u'), for instance:
clutter_actor_set_position() - clutter_actor_set_positionu()
clutter_actor_set_size() - clutter_actor_set_sizeu()
clutter_actor_set_depth() - clutter_actor_set_depthu()
This allows sub-pixel precision and device independence.
o The ClutterLabel actor now tries very hard to provide a sane
default size, if no bounding box has been requested; this fixes
the :alignment property and allows the addition of the :justify
* List of bugs fixed
o #423 - All actors should emit events rather than just the stage
o #424 - Interface definition files
o #443 - ClutterModel implementation
o #480 - Uninitialized variable in path_alpha_to_position() [Gwenole Beauchesne]
o #511 - clutter_stage_get_actor_at_pos problem
o #512 - clutter window moves when stage actor is scaled
o #518 - XEMBED not supported in eglx backend
o #519 - Should have an Atom cache initialized on start up
o #520 - Delete after multibyte unicode chars in ClutterEntry [Tommi Komulainen]
o #522 - Array out of bounds indexing [Tommi Komulainen]
o #523 - cogl portability fixes [Tommi Komulainen]
o #524 - missing config.h includes [Tommi Komulainen]
o #525 - Redundant include in cogl/gl [Tommi Komulainen]
o #531 - Extraneous "new-frame" signal generated
o #532 - clutter_actor_set_scale_with_gravityx() precision [Gwenole Beauchesne]
o #544 - clutter_color_to_hlsx is broken [Neil Roberts]
o #546 - ClutterStageState doesn't make sense
o #550 - Wanted: Set Actor's position based on center or other edges/corners of quadrangle
o #557 - ClutterScript should support complex properties for third party classes
o #558 - Unmerge UI definitions
o #566 - ClutterEntry does not scroll the text to the right [Gwenole Beauchesne]
o #577 - Inconsistent naming of behaviour properties
o #580 - Fix call to cogl_enable() [Gwenole Beauchesne]
o #582 - api naming inconsistence between clutter_behaviour_path_append_knots and
o #584 - Typo on clutter_effect_rotate_x documentation page
o #592 - Fix build on trunk [Gwenole Beauchesne]
o #596 - ClutterTexture tileing logic is a little borked
o #597 - ClutterGroups not pickable
o #600 - fix ClutterLabel layout computing when no box has been set
o #604 - Color param for Label constructor should be const [Jonathon Jongsma]
o #606 - enable depth test in GL
o #608 - Control motion events frequency
o #614 - ClutterActor API inconsistencies
o #616 - ClutterTexture doesn't respect width set from clutterscript
o #617 - ClutterEffect Improvements
o #618 - ClutterScript name/id confusion
o #619 - clutter_behavior_rotate angle properties should accept negative values
o #628 - clutter_actor_rotate_x() is a setter, not a modifier
o #629 - There is no clutter_actor_get_position()
o #634 - clutter_behaviour_path_new() documentation unclear
o #637 - add depth cueing support to the stage
o #645 - Fix crash in clutter_label_new_full() [Gwenole Beauchesne]
o #647 - Cannot hide the stage
o #648 - Hidden fullscreen stage doesn't come back as fullscreen
o #652 - reference needed on actor being source of last motion_event
o #661 - clutter_actor_set_width() documentation is vague
o #662 - clutter_actor_set_opacity() documentation doesn't describe values
o #665 - ClutterBehaviourEllipse tilts are broken
o #670 - Fix clutter_container_lower_child() [Gwenole Beauchesne]
o #673 - ClutterActor "captured-events" signal documentation wrong
o #674 - ClutterActor::get_depth() and set_depth() vfuncs not used [Murray Cumming]
o #675 - update subregions of cluttertextures
o #678 - ClutterLabel size allocation still bogus
Thanks to all the contributors:
Murray Cumming, for the documentation review and the tutorial
Tommi Komulainen, for the OSX backend
Have fun with Clutter!
Emmanuele Bassi, OpenedHand Ltd.
Unit R, Homesdale Business Centre
216-218 Homesdale Rd., Bromley - BR12QZ
gnome-announce-list mailing list
to post comments)