hi everyone;
this is the last part of the overview on Clutter 0.6, and deals with the
small API additions as well as deprecations and removals.
- Additions
* The CLUTTER_2BUTTON_PRESS and CLUTTER_3BUTTON_PRESS event types have
been removed in favour of the ClutterButtonEvent:click_count member. the
click_count will register the amount of pointer clicks within the double
click area and time; it removes the need for multiple event types and
allows more freedom in case of n_clicks > 3.
* Scaling with gravity functionality was replaced by more generic and
powerful anchor point. the "anchor point" is a point within an actor's
coordinate space which will be used as the origin of the translations;
the anchor is located, by default, to the upper left corner of the actor
(that is, at the (0, 0) coordinates). the anchor point affects how
scaling, rotations and translations are computed; it won't affect
clipping, though, which will always be relative to the upper left corner
of the actor.
* It is possible to update an area of a ClutterTexture, using the
clutter_texture_set_area_from_rgb_data() function.
* ClutterLabel:alignment property now works, and a new :justify property
has been added.
* the clutter_actor_transform_stage_point() function has been added; it
translates a point with screen coordinates (x, y) to coordinates
relative to the actor. it can be used to translate screen events from
global screen coordinates into local coordinates. this function has
limitations, as it can fail and it can be computationally intensive.
* the ClutterEvent structure has two new members: source and flags.
- Changes and Deprecations
* the Effects API has been simplified, and it now requires just the
final value of most of the effects.
* clutter_effect_move() (move along a path) has been renamed to
clutter_effect_path(); clutter_effect_move() is a new effect that moves
an actor straight to a given point.
* clutter_behaviour_bspline_append() has been renamed to
clutter_behaviour_bspline_append_knots()
* the behaviours API and properties have been renamed to fit the:
${property}-start, ${property}-end
pattern; so, for instance, "angle-begin" is now "angle-start", in both
the property name and accessors.
* the ClutterActor rotation API has been deprecated and replaced by the
rotation accessors:
clutter_actor_set_rotation(), clutter_actor_get_rotation()
which behave like the ClutterBehaviourRotation: they take the rotation
axis, angle and center.
* the default value of the ClutterLabel:wrap property is now FALSE.
* the Rotate behaviour will clamp the start and end angles to [0, 360)
* ClutterAngle, a fixed point type used for fast angle computations, has
been removed from the public API; it is still available for
implementations to use internally.
* clutter_actor_get_id() has been replaced by clutter_actor_get_gid().
- Removals
* ClutterLayout has been removed from Clutter core.
* ClutterBox and its subclasses (ClutterHBox, ClutterVBox) have been
similarly removed. they will all be moved to a higher level library, and
competing implementations will be considered in case of merging back
inside Clutter core.
* the ClutterGlx specific API has been abstracted and moved into the
ClutterX11 namespace; it will be shared by the ClutterGlx and the
ClutterEglX backends.
* the ::set_depth() and ::get_depth() virtual functions of
ClutterActorClass have been removed, since they were not used anywhere
in the code.
* ClutterContainer::find_child_by_id() has been removed, as now it's not
needed to iterate over containers to find an actor given its id.
+++
other additions, changes, deprecations and removals might be found in
the NEWS and README files in trunk.
that's all (or at least: most of it), folks; we expect the first 0.5
release to land right before the end of the year or in the first week of
January, with along with Perl and Python bindings. when 0.5.0 is out of
the door, the API will most likely be semi-frozen and won't change much,
if at all.
there's also a surprise, which will be ready in time for the final 0.6.0
release, so stay tuned and have fun with Clutter!
ciao,
Emmanuele.
--
Emmanuele Bassi, OpenedHand Ltd.
Unit R, Homesdale Business Centre
216-218 Homesdale Rd., Bromley - BR12QZ
http://www.o-hand.com
--
To unsubscribe send a mail to [EMAIL PROTECTED]