2007-02-05  Emmanuele Bassi  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* xs/ClutterTypes.xs: Wrap lighen, darken and shade
	ClutterColor methods.

2006-12-19  Emmanuele Bassi  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* examples/behaviour.pl: Implement a rather dummy
	rotate behaviour; still needs work, but it's quite funny.

2006-12-11  Emmanuele Bassi  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	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  <ebassi@openedhand.com>

	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  <ebassi@openedhand.com>

	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  <ebassi@openedhand.com>

	* xs/ClutterTexture.xs:
	* xs/ClutterStage.xs:
	* xs/ClutterRectangle.xs:
	* xs/ClutterTimeline.xs: Synch with upstream API.

2006-12-02  Emmanuele Bassi  <ebassi@openedhand.com>

	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  <ebassi@openedhand.com>

	* xs/ClutterEvent.xs: Fix a typo in clutterperl_event_unwrap().

2006-07-15  Emmanuele Bassi  <ebassi@openedhand.com>

	* xs/ClutterEvent.xs: Bind the Clutter::Event object.

	* examples/rects.pl: Add an example of the Clutter::Event
	accessors.

2006-07-08  Emmanuele Bassi  <ebassi@openedhand.com>

	* t/*.t: Initialize Clutter when testing, otherwise most of
	the methods won't work.

2006-07-08  Emmanuele Bassi  <ebassi@openedhand.com>

	* Makefile.PL: Require clutter HEAD.

2006-07-06  Emmanuele Bassi  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	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  <ebassi@openedhand.com>

	* xs/ClutterTexture.xs:
	* xs/ClutterTimeline.xs: Implemented Clutter::Texture and
	Clutter::Timeline.

2006-06-23  Emmanuele Bassi  <ebassi@openedhand.com>

	* 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  <ebassi@openedhand.com>

	* *: Initial import of the Perl bindings for Clutter
