2003-11-28  Miguel de Icaza  <miguel@ximian.com>

	* Mono.Cairo/Object.cs: 

	* Mono.Cairo/Surface.cs (LookupSurface): New method, it took me a
	while to find out why Cairo applications would crash sometimes.
	The problem was that Cairo.Object:TargetSurface get property would
	create a Surface from an IntPtr, leading to having two managed
	objects owning the same unmanaged Surface.

	(Surface..ctor): Make private, so only this module can create
	surfaces. 

	(Surface.Dispose): Add disposable pattern, finalizer.

	* Mono.Cairo/Object.cs: Add disposable pattern, finalizer.

2003-10-11  Duncan Mak  <duncan@ximian.com>

	* Mono.Cairo/Cairo.cs (cairo_set_target_drawable): Not available anymore, removed.
	(cairo_reference, cairo_arc, cairo_arc_negative): New API, added.
	(cairo_current_matrix): Signature changed, updated.
	(cairo_surface_reference): New API.
	(cairo_surface_get_matrix): Use 'out' instead of 'ref' param.

	* Mono.Cairo/Surface.cs: 	
	* Mono.Cairo/Object.cs: Added binding for new APIs listed in Cairo.cs.
	(Destroy): It's supposed to return void, not IntPtr.

2003-09-08  Duncan Mak  <duncan@ximian.com>

	* Mono.Cairo/Surface.cs (PutImage): Removed.

	* Mono.Cairo/Object.cs (Copy): Wrapper for cairo_copy.

	* Mono.Cairo/Cairo.cs (cairo_copy): New API
	(cairo_surface_put_image): Removed.

2003-09-05  Duncan Mak  <duncan@ximian.com>

	* Mono.Cairo/Object.cs (Tolerance): Fix typo.

2003-09-04  Duncan Mak  <duncan@ximian.com>

	* Mono.Cairo/Cairo.cs: Update to the new API in CVS. Change all
	*_get_* to *_current_*.	
	(cairo_set_target_drawable): 
	(cairo_surface_create_for_drawable): Add CLSCompliantAttribute.
	(cairo_current_tolerance):
	(cairo_set_tolerance): Fix typo. Thanks Alp.

	* Mono.Cairo/Object.cs: Update binding to reflect changes in the
	API.

2003-08-12  Duncan Mak  <duncan@ximian.com>

	* Mono.Cairo/Cairo.cs: csc was having trouble resolving the type
	name because the namespace name (Cairo) is the same as the class
	name (also Cairo). To resolve this ambiguity while keeping the
	code looking decent, the Cairo.Cairo class is now Cairo.CairoAPI.

2003-08-12  Duncan Mak  <duncan@ximian.com>

	* Mono.Cairo/Cairo.cs: Now that the namespace is called 'Cairo',
	the enums no longer need to be nested inside the Cairo class.

	* Mono.Cairo/Matrix.cs:
	* Mono.Cairo/Object.cs:
	* Mono.Cairo/Surface.cs: I never liked having the word 'Object' in
	the name of a class, esp. now that we have namespaces. So I have
	decided to rename them.

		CairoObject        -> Cairo.Object
		CairoMatrixObject  -> Cairo.Matrix
		CairoSurfaceObject -> Cairo.Surface

	I didn't like the Mono.Cairo namespace either, so they're just in
	the Cairo namespace now. I know it's icky that the directory is
	called Mono.Cairo, and the dll we write to is called
	'Mono.Cairo.dll', and yet the namespace now gonna just be 'Cairo'
	and not 'Mono.Cairo'. C'est la vie.
	
2003-08-12  Duncan Mak  <duncan@ximian.com>

	* Mono.Cairo/CairoObject.cs (Pattern): Re-enable this. This
	is actually a CairoSurfaceObject (a C cairo_surface_t); the
	CairoPatternObject is just something I made up...

2003-08-12  Nick Drochak <ndrochak@gol.com>

	* Makefile: put .dll on System.Drawing reference. Fix CSC build.

2003-08-11  Duncan Mak  <duncan@ximian.com>

	* makefile:
	* Mono.Cairo.dll.sources: Added.

	* Mono.Cairo/Cairo.cs:
	* Mono.Cairo/CairoObject.cs:
	* Mono.Cairo/CairoMatrixObject.cs: 
	* Mono.Cairo/CairoSurfaceObject.cs: Made them build properly.

2003-08-09  Duncan Mak  <duncan@ximian.com>

	* Mono.Cairo/Cairo.cs:
	* Mono.Cairo/CairoObject.cs:
	* Mono.Cairo/CairoMatrixObject.cs: 
	* Mono.Cairo/CairoSurfaceObject.cs: Added Cairo binding.
