2007-02-05 Emmanuele Bassi * Clutter.pm: Bump to VERSION 0.230, support latest stable release in 0.2. (import): Support ':init' as well as '-init' and 'init' argument to initialise Clutter when importing the module. (square): Add pure-Perl square waveform generator function. (pod:SYNOPSIS): Update the example code. * xs/ClutterTypes.xs: Make Clutter::Color->parse() a valid class method; add support for accessing the members of Clutter::Knot. * xs/ClutterGroup.xs: Extend the stack beforehand with the size of the list returned by clutter_group_get_children(), instead of using XPUSHs; bind clutter_group_remove_all(). * xs/ClutterActor.xs: Allow overriding the ClutterActor::request_coords() and ClutterActor::allocate_coords() vfuncs from Perl, and document how to do it. * examples/behaviour.pl: Test ':init' as initialisation pragma. * examples/hello.pl: Add a simple hello world using the same code of the SYNOPSIS. * examples/*.pl: Add copyright and license terms for the code in the examples. 2007-01-18 Emmanuele Bassi * Makefile.PL: Depend on clutter-0.2. * README: Add informations on Clutter and installation instructions. * xs/ClutterActor.xs: * xs/ClutterBehaviour.xs: * xs/ClutterLabel.xs: * xs/ClutterTypes.xs: Add last bits of new upstream API. * xs/ClutterGroup.xs: Remove deprecated clutter_group_show_all() and clutter_group_hide_all(). 2006-12-19 Emmanuele Bassi * xs/ClutterTypes.xs: Wrap lighen, darken and shade ClutterColor methods. 2006-12-19 Emmanuele Bassi * xs/ClutterAlpha.xs: Allow undef data by default in Clutter::Alpha::set_func(). * xs/ClutterTypes.xs: Wrap the pixel packing functions; wrap the HLS colospace conversion functions; fix the equal functions. * Clutter.pm: Fix examples in SYNOPSIS. * examples/behaviour.pl: Fix default value for the angle-end property of the Clutter::Ex::Behaviour::Rotate. 2006-12-17 Emmanuele Bassi * xs/ClutterMedia.xs: Add _ADD_INTERFACES function, which should allow the implementation in pure perl of the Clutter::Media interface. 2006-12-13 Emmanuele Bassi * xs/ClutterActor.xs: Wrap clutter_actor_show_all() and clutter_actor_hide_all(); these currently clash with clutter_group_show_all() and clutter_group_hide_all() when using a Clutter::Group; will think on how to resolve this. 2006-12-13 Emmanuele Bassi * xs/ClutterTypes.xs: Wrap clutter_color_equal(). * xs/ClutterBehaviourPath.xs: Use undef as default value for the knots argument in the constructor. * Clutter.pm: Overload the equality operator for the Clutter::Color object to call Clutter::Color::equal. 2006-12-11 Emmanuele Bassi * examples/behaviour.pl: Implement a rather dummy rotate behaviour; still needs work, but it's quite funny. 2006-12-11 Emmanuele Bassi * xs/ClutterBehaviour.xs: Add support for implementing a Clutter::Behaviour in pure perl; update the callback for the Clutter::Behaviour::actors_foreach() method; bind Clutter::Behaviour::get_actors(). * examples/behaviour.pl: Show how the pure perl behaviour works; update the path behaviour method call - don't use an arrayref of arrayrefs: just append knots as arrayrefs. 2006-12-04 Emmanuele Bassi * xs/ClutterTypes.xs: Remove the virtual accessors: we threat a ClutterKnot as an array reference, and the type is too simple to warrant the extra-complexity of being a blessed reference. * doctypes: Add timestamp. 2006-12-04 Emmanuele Bassi * xs/ClutterMedia.xs: Add the perl machinery needed in order to implement a Clutter::Media interface in pure perl. * xs/ClutterBehaviourPath.xs: Wrap ClutterKnot as an array of two elements; unwrap it from either an array or an hash references. This allows us to use the object created using the Clutter::Knot::new() constructor or to use perl native objects for brevity. Bind the clutter_knot_equal() function as a class method. Require an array of knots instead of an array reference in both the Clutter::Behavior::Path constructor and the add_knot() method. * t/ClutterBehaviourPath.t: Update the test suite. * Clutter.pm: Overload '==' for the Clutter::Knot object, using the equal() class method. 2006-12-04 Emmanuele Bassi * Clutter.pm: Add the difference from the C library to the Perl bindings to the Clutter pod. * examples/behave.pl: Add a bit of padding to the texture. * xs/ClutterBehaviourPath.xs: Collapse the add_knots() and add_knot() Clutter::Behaviour::Path methods into a single Clutter::Behaviour::Path::add_knot(), which accepts an array of Clutter::Knot objects. 2006-12-03 Emmanuele Bassi A examples/behaviour.pl A examples/redhand.png * examples/behaviour.pl: Add an example for the new behaviour API. * xs/ClutterAlpha.xs: Add symbolic name for the CLUTTER_ALPHA_MAX_ALPHA C macro. * xs/ClutterBehaviourOpacity.xs: * xs/ClutterBehaviourScale.xs: Allow passing undef as the Clutter::Alpha object. * Clutter.pm: Add pure perl implementation of the convenience alpha functions. 2006-12-03 Emmanuele Bassi A t/ClutterBehaviourPath.t * Makefile.PL: Clean up. * xs/ClutterBehaviourPath.xs: Allow passing undef as alpha object and knots inside the constructor; bind the remaining missing functions: clutter_behaviour_path_get_knots clutter_behaviour_path_clear * MANIFEST: * t/ClutterBehaviourPath.t: Add test suite for Clutter::Behaviour::Path methods. 2006-12-02 Emmanuele Bassi A xs/ClutterBehaviourPath.xs * doctypes: Add time_t. * maps: ClutterKnot is a boxed type, not a GObject, rename ClutterCloneTexture as Clutter::Texture::Clone. * xs/ClutterBehaviourPath.xs: Bind the path behaviour. * xs/ClutterTypes.xs: Add the ClutterKnot wrappers. * xs/ClutterCloneTexture.xs: Move the Clone object as a subpackage of the Clutter::Texture object. * t/ClutterGroup.t: Fix the test suite for Clutter::Group: the size is set on realize. * t/ClutterStage.t: Better check for the color components. 2006-12-02 Emmanuele Bassi * xs/ClutterTexture.xs: * xs/ClutterStage.xs: * xs/ClutterRectangle.xs: * xs/ClutterTimeline.xs: Synch with upstream API. 2006-12-02 Emmanuele Bassi D xs/ClutterVideoTexture.xs A xs/ClutterAlpha.xs A xs/ClutterBehaviourOpacity.xs A xs/ClutterBehaviourScale.xs A xs/ClutterBehaviour.xs * maps: Update types. * xs/ClutterAlpha.xs: * xs/ClutterBehaviour.xs: Bind new behaviour API. * xs/ClutterBehaviour*.xs: Bind the new behaviour objects. * xs/ClutterActor.xs: * xs/ClutterLabel.xs: * xs/ClutterStage.xs: * xs/Clutter.xs: Update API. * MANIFEST: * Clutter.pm: * Makefile.PL: Update version, clean up, remove the version macro generation: upstream now has it too. * doctypes: Add GdkPixbuf and Pango types. 2006-07-16 Emmanuele Bassi * xs/ClutterEvent.xs: Fix a typo in clutterperl_event_unwrap(). 2006-07-15 Emmanuele Bassi * xs/ClutterEvent.xs: Bind the Clutter::Event object. * examples/rects.pl: Add an example of the Clutter::Event accessors. 2006-07-08 Emmanuele Bassi * t/*.t: Initialize Clutter when testing, otherwise most of the methods won't work. 2006-07-08 Emmanuele Bassi * Makefile.PL: Require clutter HEAD. 2006-07-06 Emmanuele Bassi * xs/*.xs: Remove the _noinc from all the classes inheriting from ClutterActor, as it is now a "floating" object. * xs/ClutterActor.xs: Re-sync with clutter API changes. 2006-06-25 Emmanuele Bassi * xs/ClutterCloneTexture.xs: * xs/ClutterVideoTexture.xs: Implement the remaining textures. * xs/ClutterMedia.xs: Implement Clutter::Media interface; only the C part works - implementing the interface in Perl will require some more black magic. 2006-06-24 Emmanuele Bassi A examples/rects.pl * MANIFEST: * examples/rects.pl: Add an example program (it's the same one used for the Python bindings). 2006-06-24 Emmanuele Bassi * xs/ClutterTexture.xs: * xs/ClutterTimeline.xs: Implemented Clutter::Texture and Clutter::Timeline. 2006-06-23 Emmanuele Bassi * xs/ClutterRectangle.xs: Implement Clutter::Rectangle * xs/ClutterTypes.xs: Implement Clutter::ActorBox * xs/ClutterActor.xs: Rename parameter name "self" to "actor", so that the apidoc is coherent with the object name. * xs/ClutterGroup.xs: Implement Clutter::Group::foreach(); rename Clutter::Group::add_many to ::add, so that the semantics is kept; implement the rest of Clutter::Group methods. * xs/ClutterLabel.xs: Implement Clutter::Label. The constructor takes two optional parameters which are dogfed to the relative accessors. * t/ClutterGroup.t: * t/ClutterLabel.t: * t/ClutterRectangle.t: Add test suites for the newly wrapped objects. 2006-06-23 Emmanuele Bassi * *: Initial import of the Perl bindings for Clutter