[cairo-commit] cairo/src cairo-ft-font.c, 1.57, 1.58 cairo-gstate.c, 1.122, 1.123 cairo-image-surface.c, 1.39, 1.40 cairo-matrix.c, 1.25, 1.26 cairo-pattern.c, 1.34, 1.35 cairo-pdf-surface.c, 1.31, 1.32 cairo-surface.c, 1.65, 1.66 cairo-xlib-surface.c, 1.61, 1.62 cairo.c, 1.88, 1.89 cairo.h, 1.112, 1.113 cairoint.h, 1.134, 1.135

Carl Worth commit at pdx.freedesktop.org
Fri May 6 13:32:56 PDT 2005


Committed by: cworth

Update of /cvs/cairo/cairo/src
In directory gabe:/tmp/cvs-serv23395/src

Modified Files:
	cairo-ft-font.c cairo-gstate.c cairo-image-surface.c 
	cairo-matrix.c cairo-pattern.c cairo-pdf-surface.c 
	cairo-surface.c cairo-xlib-surface.c cairo.c cairo.h 
	cairoint.h 
Log Message:

       * src/cairo.c:
        * src/cairo.h: Eliminate the following deprecated functions from
        cairo's interface:

                cairo_copy
                cairo_get_path
                cairo_get_path_flat
                cairo_matrix_create
                cairo_matrix_destroy
                cairo_matrix_copy
                cairo_matrix_get_affine
                cairo_surface_set_repeat
                cairo_surface_set_matrix
                cairo_surface_get_matrix
                cairo_surface_set_filter
                cairo_surface_get_filter

        Also, eliminate all support for compiling against, or running with
        old, deprecated names for functions.

        * src/cairo-ft-font.c: (_compute_transform):
        * src/cairo-gstate.c:
        * src/cairo-image-surface.c: (cairo_image_surface_create_for_data):
        * src/cairo-matrix.c: (_cairo_matrix_get_affine),
        (_cairo_matrix_compute_adjoint),
        (_cairo_matrix_is_integer_translation):
        * src/cairo-pattern.c: (cairo_pattern_add_color_stop_rgba),
        (cairo_pattern_set_matrix), (cairo_pattern_get_matrix),
        (_cairo_image_data_set_linear), (_cairo_linear_pattern_classify),
        (_cairo_image_data_set_radial):
        * src/cairo-pdf-surface.c: (_cairo_pdf_surface_composite_image),
        (_cairo_pdf_surface_composite_pdf), (emit_surface_pattern),
        (emit_linear_pattern), (emit_radial_pattern):
        * src/cairo-surface.c:
        * src/cairo-xlib-surface.c:
        (_cairo_xlib_surface_acquire_source_image),
        (cairo_xlib_surface_create):
        * src/cairo.c: (cairo_set_source_rgba), (cairo_set_source),
        (cairo_get_source), (cairo_transform), (cairo_identity_matrix),
        (cairo_user_to_device), (cairo_user_to_device_distance),
        (cairo_device_to_user), (cairo_device_to_user_distance),
        (cairo_reset_clip), (cairo_select_font_face), (cairo_font_extents),
        (cairo_set_font_size), (cairo_get_operator), (cairo_get_rgb_color),
        (cairo_get_tolerance), (cairo_get_fill_rule),
        (cairo_get_line_width), (cairo_get_line_cap),
        (cairo_get_line_join), (cairo_get_miter_limit), (cairo_get_matrix),
        (cairo_get_target), (cairo_status), (cairo_status_string):
        * src/cairoint.h:
        * test/cairo-test.c: (cairo_test_create_png_pattern):
        * test/gradient-alpha.c: (draw):
        * test/mask.c: (set_gradient_pattern), (set_image_pattern):
        * test/move-to-show-surface.c: (draw):
        * test/select-font-no-show-text.c: (draw):
        * test/set-source.c: (draw):
        * test/text-cache-crash.c: (draw):
        * test/text-rotate.c: (draw):
        * test/transforms.c: (draw_L_shape):
        * test/translate-show-surface.c: (draw):
        * test/trap-clip.c: (set_gradient_pattern), (set_image_pattern):
        * util/cairo-api-update:

        Deal with all of the removals.


Index: cairo-ft-font.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo-ft-font.c,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -d -r1.57 -r1.58
--- cairo-ft-font.c	2 May 2005 21:20:07 -0000	1.57
+++ cairo-ft-font.c	6 May 2005 20:32:53 -0000	1.58
@@ -432,10 +432,10 @@
 					 &sf->x_scale, &sf->y_scale,
 					 /* XXX */ 1);
     cairo_matrix_scale (&normalized, 1.0 / sf->x_scale, 1.0 / sf->y_scale);
-    cairo_matrix_get_affine (&normalized, 
-			     &sf->shape[0][0], &sf->shape[0][1],
-			     &sf->shape[1][0], &sf->shape[1][1],
-			     &tx, &ty);
+    _cairo_matrix_get_affine (&normalized, 
+			      &sf->shape[0][0], &sf->shape[0][1],
+			      &sf->shape[1][0], &sf->shape[1][1],
+			      &tx, &ty);
 }
 
 /* Temporarily scales an unscaled font to the give scale. We catch

Index: cairo-gstate.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo-gstate.c,v
retrieving revision 1.122
retrieving revision 1.123
diff -u -d -r1.122 -r1.123
--- cairo-gstate.c	6 May 2005 20:26:16 -0000	1.122
+++ cairo-gstate.c	6 May 2005 20:32:53 -0000	1.123
@@ -251,21 +251,6 @@
     return clone;
 }
 
-cairo_status_t
-_cairo_gstate_copy (cairo_gstate_t *dest, cairo_gstate_t *src)
-{
-    cairo_status_t status;
-    cairo_gstate_t *next;
-
-    /* Preserve next pointer over fini/init */
-    next = dest->next;
-    _cairo_gstate_fini (dest);
-    status = _cairo_gstate_init_copy (dest, src);
-    dest->next = next;
-
-    return status;
-}
-
 /* Push rendering off to an off-screen group. */
 /* XXX: Rethinking this API
 cairo_status_t

Index: cairo-image-surface.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo-image-surface.c,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -d -r1.39 -r1.40
--- cairo-image-surface.c	6 May 2005 20:26:16 -0000	1.39
+++ cairo-image-surface.c	6 May 2005 20:32:53 -0000	1.40
@@ -223,7 +223,6 @@
 
     return &surface->base;
 }
-DEPRECATE(cairo_surface_create_for_image, cairo_image_surface_create_for_data);
 
 /**
  * cairo_image_surface_get_width:

Index: cairo-matrix.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo-matrix.c,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -d -r1.25 -r1.26
--- cairo-matrix.c	11 Apr 2005 16:18:51 -0000	1.25
+++ cairo-matrix.c	6 May 2005 20:32:53 -0000	1.26
@@ -47,67 +47,6 @@
 _cairo_matrix_compute_adjoint (cairo_matrix_t *matrix);
 
 /**
- * cairo_matrix_create:
- * 
- * Creates a new identity matrix.
- * 
- * Return value: a newly created matrix; free with cairo_matrix_destroy(),
- *  or %NULL if memory couldn't be allocated.
- *
- * WARNING: This function is deprecated and will be disappearing
- * shortly. Now that the structure of #cairo_matrix_t is exposed,
- * users can manage the memory on their own, (in particular by putting
- * a cairo_matrix_t on the stack).
- **/
-cairo_matrix_t *
-cairo_matrix_create (void)
-{
-    cairo_matrix_t *matrix;
-
-    matrix = malloc (sizeof (cairo_matrix_t));
-    if (matrix == NULL)
-	return NULL;
-
-    cairo_matrix_init_identity (matrix);
-
-    return matrix;
-}
-
-/**
- * cairo_matrix_destroy:
- * @matrix: a #cairo_matrix_t
- * 
- * Frees a matrix created with cairo_matrix_create.
- *
- * WARNING: This function is deprecated and will be disappearing
- * shortly. Now that the structure of #cairo_matrix_t is exposed,
- * users can manage the memory on their own, (in particular by putting
- * a cairo_matrix_t on the stack).
- **/
-void
-cairo_matrix_destroy (cairo_matrix_t *matrix)
-{
-    free (matrix);
-}
-
-/**
- * cairo_matrix_copy:
- * @matrix: a #cairo_matrix_t
- * @other: another #cairo_
- * 
- * Modifies @matrix to be identical to @other.
- * 
- * WARNING: This function is deprecated and will be disappearing
- * shortly. Now that the structure of #cairo_matrix_t is exposed,
- * users can copy a matrix by direct assignment.
- **/
-void
-cairo_matrix_copy (cairo_matrix_t *matrix, const cairo_matrix_t *other)
-{
-    *matrix = *other;
-}
-
-/**
  * cairo_matrix_init_identity:
  * @matrix: a #cairo_matrix_t
  * 
@@ -122,7 +61,6 @@
 		       0, 0);
 }
 slim_hidden_def(cairo_matrix_init_identity);
-DEPRECATE(cairo_matrix_set_identity, cairo_matrix_init_identity);
 
 /**
  * cairo_matrix_init:
@@ -153,40 +91,38 @@
     matrix->x0 = x0; matrix->y0 = y0;
 }
 slim_hidden_def(cairo_matrix_init);
-DEPRECATE(cairo_matrix_set_affine, cairo_matrix_init);
 
 /**
- * cairo_matrix_get_affine:
+ * _cairo_matrix_get_affine:
  * @matrix: a @cairo_matrix_t
- * @a: location to store a component of affine transformation, or %NULL
- * @b: location to store b component of affine transformation, or %NULL
- * @c: location to store c component of affine transformation, or %NULL
- * @d: location to store d component of affine transformation, or %NULL
- * @tx: location to store X-translation component of affine transformation, or %NULL
- * @ty: location to store Y-translation component of affine transformation, or %NULL
+ * @xx: location to store xx component of matrix
+ * @yx: location to store yx component of matrix
+ * @xy: location to store xy component of matrix
+ * @yy: location to store yy component of matrix
+ * @x0: location to store x0 (X-translation component) of matrix, or %NULL
+ * @y0: location to store y0 (Y-translation component) of matrix, or %NULL
  * 
  * Gets the matrix values for the affine tranformation that @matrix represents.
  * See cairo_matrix_init().
  *
- * WARNING: This function is deprecated and will be disappearing
- * shortly. Now that the structure of #cairo_matrix_t is exposed,
- * users can just examine the matrix values directly.
+ *
+ * This function is a leftover from the old public API, but is still
+ * mildly useful as an internal means for getting at the matrix
+ * members in a positional way. For example, when reassigning to some
+ * external matrix type, or when renaming members to more meaningful
+ * names (such as a,b,c,d,e,f) for particular manipulations.
  **/
 void
-cairo_matrix_get_affine (cairo_matrix_t *matrix,
-			 double *xx, double *yx,
-			 double *xy, double *yy,
-			 double *x0, double *y0)
+_cairo_matrix_get_affine (cairo_matrix_t *matrix,
+			  double *xx, double *yx,
+			  double *xy, double *yy,
+			  double *x0, double *y0)
 {
-    if (xx)
-	*xx  = matrix->xx;
-    if (yx)
-	*yx  = matrix->yx;
+    *xx  = matrix->xx;
+    *yx  = matrix->yx;
 
-    if (xy)
-	*xy  = matrix->xy;
-    if (yy)
-	*yy  = matrix->yy;
+    *xy  = matrix->xy;
+    *yy  = matrix->yy;
 
     if (x0)
 	*x0 = matrix->x0;
@@ -495,10 +431,10 @@
     /* adj (A) = transpose (C:cofactor (A,i,j)) */
     double a, b, c, d, tx, ty;
 
-    cairo_matrix_get_affine (matrix,
-			     &a,  &b,
-			     &c,  &d,
-			     &tx, &ty);
+    _cairo_matrix_get_affine (matrix,
+			      &a,  &b,
+			      &c,  &d,
+			      &tx, &ty);
 
     cairo_matrix_init (matrix,
 		       d, -b,
@@ -627,7 +563,7 @@
     double a, b, c, d, tx, ty;
     int ttx, tty;
     int ok = 0;
-    cairo_matrix_get_affine (mat, &a, &b, &c, &d, &tx, &ty);
+    _cairo_matrix_get_affine (mat, &a, &b, &c, &d, &tx, &ty);
     ttx = _cairo_fixed_from_double (tx);
     tty = _cairo_fixed_from_double (ty);
     ok = ((a == 1.0)

Index: cairo-pattern.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo-pattern.c,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -d -r1.34 -r1.35
--- cairo-pattern.c	6 May 2005 19:00:22 -0000	1.34
+++ cairo-pattern.c	6 May 2005 20:32:53 -0000	1.35
@@ -368,12 +368,11 @@
 					  offset,
 					  &color);
 }
-DEPRECATE (cairo_pattern_add_color_stop, cairo_pattern_add_color_stop_rgba);
 
 cairo_status_t
 cairo_pattern_set_matrix (cairo_pattern_t *pattern, cairo_matrix_t *matrix)
 {
-    cairo_matrix_copy (&pattern->matrix, matrix);
+    pattern->matrix = *matrix;
 
     return CAIRO_STATUS_SUCCESS;
 }
@@ -381,7 +380,7 @@
 cairo_status_t
 cairo_pattern_get_matrix (cairo_pattern_t *pattern, cairo_matrix_t *matrix)
 {
-    cairo_matrix_copy (matrix, &pattern->matrix);
+    *matrix = pattern->matrix;
 
     return CAIRO_STATUS_SUCCESS;
 }
@@ -681,8 +680,8 @@
     point1.x = pattern->point1.x;
     point1.y = pattern->point1.y;
 
-    cairo_matrix_get_affine (&pattern->base.base.matrix,
-			     &a, &b, &c, &d, &tx, &ty);
+    _cairo_matrix_get_affine (&pattern->base.base.matrix,
+			      &a, &b, &c, &d, &tx, &ty);
 
     dx = point1.x - point0.x;
     dy = point1.y - point0.y;
@@ -736,8 +735,8 @@
     point1.x = pattern->point1.x;
     point1.y = pattern->point1.y;
 
-    cairo_matrix_get_affine (&pattern->base.base.matrix,
-			     &a, &b, &c, &d, &tx, &ty);
+    _cairo_matrix_get_affine (&pattern->base.base.matrix,
+			      &a, &b, &c, &d, &tx, &ty);
 
     dx = point1.x - point0.x;
     dy = point1.y - point0.y;
@@ -810,8 +809,8 @@
 	r1_2 = c0_c1 = 0.0; /* shut up compiler */
     }
 
-    cairo_matrix_get_affine (&pattern->base.base.matrix,
-			     &a, &b, &c, &d, &tx, &ty);
+    _cairo_matrix_get_affine (&pattern->base.base.matrix,
+			      &a, &b, &c, &d, &tx, &ty);
 
     for (y = 0; y < height; y++) {
 	for (x = 0; x < width; x++) {

Index: cairo-pdf-surface.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo-pdf-surface.c,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -d -r1.31 -r1.32
--- cairo-pdf-surface.c	3 May 2005 21:28:50 -0000	1.31
+++ cairo-pdf-surface.c	6 May 2005 20:32:53 -0000	1.32
@@ -1243,7 +1243,7 @@
 
     _cairo_pdf_surface_ensure_stream (dst);
 
-    cairo_matrix_copy (&i2u, &pattern->base.matrix);
+    i2u = pattern->base.matrix;
     cairo_matrix_invert (&i2u);
     cairo_matrix_translate (&i2u, 0, image->height);
     cairo_matrix_scale (&i2u, image->width, -image->height);
@@ -1286,7 +1286,7 @@
 
     src = (cairo_pdf_surface_t *) pattern->surface;
 
-    cairo_matrix_copy (&i2u, &src->base.matrix);
+    i2u = src->base.matrix;
     cairo_matrix_invert (&i2u);
     cairo_matrix_scale (&i2u, 
 			1.0 / (src->width_inches * document->x_ppi),
@@ -1420,7 +1420,7 @@
 
     cairo_matrix_init_identity (&pm);
     cairo_matrix_scale (&pm, image->width, image->height);
-    cairo_matrix_copy (&pm, &pattern->base.matrix);
+    pm = pattern->base.matrix;
     cairo_matrix_invert (&pm);
 
     snprintf (entries, sizeof entries,
@@ -1502,7 +1502,7 @@
 
     function_id = emit_pattern_stops (surface, &pattern->base);
 
-    cairo_matrix_copy (&p2u, &pattern->base.base.matrix);
+    p2u = pattern->base.base.matrix;
     cairo_matrix_invert (&p2u);
 
     x0 = pattern->point0.x;
@@ -1556,7 +1556,7 @@
 
     function_id = emit_pattern_stops (surface, &pattern->base);
 
-    cairo_matrix_copy (&p2u, &pattern->base.base.matrix);
+    p2u = pattern->base.base.matrix;
     cairo_matrix_invert (&p2u);
 
     x0 = pattern->center0.x;

Index: cairo-surface.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo-surface.c,v
retrieving revision 1.65
retrieving revision 1.66
diff -u -d -r1.65 -r1.66
--- cairo-surface.c	6 May 2005 20:26:16 -0000	1.65
+++ cairo-surface.c	6 May 2005 20:32:53 -0000	1.66
@@ -540,85 +540,6 @@
     return status;
 }
 
-cairo_status_t
-cairo_surface_set_matrix (cairo_surface_t *surface, cairo_matrix_t *matrix)
-{
-    if (surface->finished)
-	return CAIRO_STATUS_SURFACE_FINISHED;
-
-    if (surface == NULL)
-	return CAIRO_STATUS_NULL_POINTER;
-
-    cairo_matrix_copy (&surface->matrix, matrix);
-
-    return CAIRO_STATUS_SUCCESS;
-}
-slim_hidden_def(cairo_surface_set_matrix);
-
-cairo_status_t
-cairo_surface_get_matrix (cairo_surface_t *surface, cairo_matrix_t *matrix)
-{
-    if (surface->finished)
-	return CAIRO_STATUS_SURFACE_FINISHED;
-
-    if (surface == NULL)
-	return CAIRO_STATUS_NULL_POINTER;
-
-    cairo_matrix_copy (matrix, &surface->matrix);
-
-    return CAIRO_STATUS_SUCCESS;
-}
-slim_hidden_def(cairo_surface_get_matrix);
-
-cairo_status_t
-cairo_surface_set_filter (cairo_surface_t *surface, cairo_filter_t filter)
-{
-    if (surface->finished)
-	return CAIRO_STATUS_SURFACE_FINISHED;
-
-    if (surface == NULL)
-	return CAIRO_STATUS_NULL_POINTER;
-
-    surface->filter = filter;
-    return CAIRO_STATUS_SUCCESS;
-}
-
-cairo_filter_t
-cairo_surface_get_filter (cairo_surface_t *surface)
-{
-    return surface->filter;
-}
-
-/* XXX: NYI
-cairo_status_t
-cairo_surface_clip_rectangle (cairo_surface_t *surface,
-			      int x, int y,
-			      int width, int height)
-{
-
-}
-*/
-
-/* XXX: NYI
-cairo_status_t
-cairo_surface_clip_restore (cairo_surface_t *surface);
-*/
-
-cairo_status_t
-cairo_surface_set_repeat (cairo_surface_t *surface, int repeat)
-{
-    if (surface->finished)
-	return CAIRO_STATUS_SURFACE_FINISHED;
-
-    if (surface == NULL)
-	return CAIRO_STATUS_NULL_POINTER;
-
-    surface->repeat = repeat;
-
-    return CAIRO_STATUS_SUCCESS;
-}
-slim_hidden_def(cairo_surface_set_repeat);
-
 typedef struct {
     cairo_surface_t *dst;
     cairo_rectangle_t extents;

Index: cairo-xlib-surface.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo-xlib-surface.c,v
retrieving revision 1.61
retrieving revision 1.62
diff -u -d -r1.61 -r1.62
--- cairo-xlib-surface.c	6 May 2005 20:26:16 -0000	1.61
+++ cairo-xlib-surface.c	6 May 2005 20:32:53 -0000	1.62
@@ -377,13 +377,8 @@
     cairo_status_t status;
 
     status = _get_image_surface (surface, NULL, &image, NULL);
-    if (status == CAIRO_STATUS_SUCCESS) {
-	cairo_surface_set_filter (&image->base, surface->base.filter);
-	cairo_surface_set_matrix (&image->base, &surface->base.matrix);
-	cairo_surface_set_repeat (&image->base, surface->base.repeat);
-
+    if (status == CAIRO_STATUS_SUCCESS)
 	*image_out = image;
-    }
 
     return status;
 }
@@ -1023,7 +1018,6 @@
 						visual,
 						format);
 }
-DEPRECATE (cairo_surface_create_for_drawable, cairo_xlib_surface_create);
 
 /**
  * cairo_xlib_surface_create_for_pixmap:

Index: cairo.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo.c,v
retrieving revision 1.88
retrieving revision 1.89
diff -u -d -r1.88 -r1.89
--- cairo.c	6 May 2005 20:23:41 -0000	1.88
+++ cairo.c	6 May 2005 20:32:53 -0000	1.89
@@ -248,38 +248,6 @@
 }
 slim_hidden_def(cairo_restore);
 
-/**
- * cairo_copy:
- * @dest: a #cairo_t
- * @src: another #cairo_t
- * 
- * This function copies all current state information from src to
- * dest. This includes the current point and path, the target surface,
- * the transformation matrix, and so forth.
- *
- * The stack of states saved with cairo_save() is <emphasis>not</emphasis>
- * not copied; nor are any saved states on @dest cleared. The
- * operation only copies the current state of @src to the current
- * state of @dest.
- **/
-void
-cairo_copy (cairo_t *dest, cairo_t *src)
-{
-    CAIRO_CHECK_SANITY (src);
-    CAIRO_CHECK_SANITY (dest);
-    if (dest->status)
-	return;
-
-    if (src->status) {
-	dest->status = src->status;
-	return;
-    }
-
-    dest->status = _cairo_gstate_copy (dest->gstate, src->gstate);
-    CAIRO_CHECK_SANITY (src);
-    CAIRO_CHECK_SANITY (dest);
-}
-
 /* XXX: I want to rethink this API
 void
 cairo_push_group (cairo_t *cr)
@@ -405,7 +373,6 @@
     
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE(cairo_set_rgb_color, cairo_set_source_rgb);
 
 void
 cairo_set_source_surface (cairo_t	  *cr,
@@ -459,7 +426,6 @@
     cr->status = _cairo_gstate_set_source (cr->gstate, source);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE(cairo_set_pattern, cairo_set_source);
 
 /**
  * cairo_get_source:
@@ -482,7 +448,6 @@
 
     return _cairo_gstate_get_source (cr->gstate);
 }
-DEPRECATE(cairo_current_pattern, cairo_get_source);
 
 /**
  * cairo_set_tolerance:
@@ -720,7 +685,6 @@
     cr->status = _cairo_gstate_transform (cr->gstate, matrix);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE(cairo_concat_matrix, cairo_transform);
 
 /**
  * cairo_set_matrix:
@@ -761,7 +725,6 @@
     cr->status = _cairo_gstate_identity_matrix (cr->gstate);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE(cairo_default_matrix, cairo_identity_matrix);
 
 /**
  * cairo_user_to_device:
@@ -783,7 +746,6 @@
     cr->status = _cairo_gstate_user_to_device (cr->gstate, x, y);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE(cairo_transform_point, cairo_user_to_device);
 
 /**
  * cairo_user_to_device_distance:
@@ -806,7 +768,6 @@
     cr->status = _cairo_gstate_user_to_device_distance (cr->gstate, dx, dy);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE(cairo_transform_distance, cairo_user_to_device_distance);
 
 /**
  * cairo_device_to_user:
@@ -828,7 +789,6 @@
     cr->status = _cairo_gstate_device_to_user (cr->gstate, x, y);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE(cairo_inverse_transform_point, cairo_device_to_user);
 
 /**
  * cairo_device_to_user_distance:
@@ -851,7 +811,6 @@
     cr->status = _cairo_gstate_device_to_user_distance (cr->gstate, dx, dy);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE(cairo_inverse_transform_distance, cairo_device_to_user_distance);
 
 void
 cairo_new_path (cairo_t *cr)
@@ -1548,7 +1507,6 @@
     cr->status = _cairo_gstate_reset_clip (cr->gstate);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE (cairo_init_clip, cairo_reset_clip);
 
 /**
  * cairo_select_font_face:
@@ -1578,7 +1536,6 @@
     cr->status = _cairo_gstate_select_font_face (cr->gstate, family, slant, weight);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE (cairo_select_font, cairo_select_font_face);
 
 /**
  * cairo_get_font_face:
@@ -1624,8 +1581,6 @@
     cr->status = _cairo_gstate_get_font_extents (cr->gstate, extents);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE (cairo_current_font_extents, cairo_font_extents);
-DEPRECATE (cairo_get_font_extents, cairo_font_extents);
 
 /**
  * cairo_set_font_face:
@@ -1669,7 +1624,6 @@
     cr->status = _cairo_gstate_set_font_size (cr->gstate, size);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE (cairo_scale_font, cairo_set_font_size);
 
 /**
  * cairo_set_font_matrix
@@ -1912,7 +1866,6 @@
     CAIRO_CHECK_SANITY (cr);
     return _cairo_gstate_get_operator (cr->gstate);
 }
-DEPRECATE (cairo_current_operator, cairo_get_operator);
 
 /**
  * cairo_get_rgb_color:
@@ -1938,7 +1891,6 @@
     _cairo_gstate_get_rgb_color (cr->gstate, red, green, blue);
     CAIRO_CHECK_SANITY (cr);
 }
-DEPRECATE (cairo_current_rgb_color, cairo_get_rgb_color);
 
 /**
  * cairo_get_tolerance:
@@ -1954,7 +1906,6 @@
     CAIRO_CHECK_SANITY (cr);
     return _cairo_gstate_get_tolerance (cr->gstate);
 }
-DEPRECATE (cairo_current_tolerance, cairo_get_tolerance);
 
 /**
  * cairo_get_current_point:
@@ -2004,7 +1955,6 @@
     CAIRO_CHECK_SANITY (cr);
 }
 slim_hidden_def(cairo_get_current_point);
-DEPRECATE (cairo_current_point, cairo_get_current_point);
 
 /**
  * cairo_get_fill_rule:
@@ -2020,7 +1970,6 @@
     CAIRO_CHECK_SANITY (cr);
     return _cairo_gstate_get_fill_rule (cr->gstate);
 }
-DEPRECATE (cairo_current_fill_rule, cairo_get_fill_rule);
 
 /**
  * cairo_get_line_width:
@@ -2036,7 +1985,6 @@
     CAIRO_CHECK_SANITY (cr);
     return _cairo_gstate_get_line_width (cr->gstate);
 }
-DEPRECATE (cairo_current_line_width, cairo_get_line_width);
 
 /**
  * cairo_get_line_cap:
@@ -2052,7 +2000,6 @@
     CAIRO_CHECK_SANITY (cr);
     return _cairo_gstate_get_line_cap (cr->gstate);
 }
-DEPRECATE (cairo_current_line_cap, cairo_get_line_cap);
 
 /**
  * cairo_get_line_join:
@@ -2068,7 +2015,6 @@
     CAIRO_CHECK_SANITY (cr);
     return _cairo_gstate_get_line_join (cr->gstate);
 }
-DEPRECATE (cairo_current_line_join, cairo_get_line_join);
 
 /**
  * cairo_get_miter_limit:
@@ -2084,7 +2030,6 @@
     CAIRO_CHECK_SANITY (cr);
     return _cairo_gstate_get_miter_limit (cr->gstate);
 }
-DEPRECATE (cairo_current_miter_limit, cairo_get_miter_limit);
 
 /**
  * cairo_get_matrix:
@@ -2099,7 +2044,6 @@
     CAIRO_CHECK_SANITY (cr);
     _cairo_gstate_get_matrix (cr->gstate, matrix);
 }
-DEPRECATE(cairo_current_matrix, cairo_get_matrix);
 
 /**
  * cairo_get_target:
@@ -2121,93 +2065,6 @@
 
     return _cairo_gstate_get_target (cr->gstate);
 }
-DEPRECATE (cairo_current_target_surface, cairo_get_target);
-
-void
-cairo_get_path (cairo_t			*cr,
-		cairo_move_to_func_t	*move_to,
-		cairo_line_to_func_t	*line_to,
-		cairo_curve_to_func_t	*curve_to,
-		cairo_close_path_func_t	*close_path,
-		void			*closure)
-{
-    int i;
-    cairo_path_t *path;
-    cairo_path_data_t *data;
-
-    CAIRO_CHECK_SANITY (cr);
-    if (cr->status)
-	return;
- 
-    path = cairo_copy_path (cr);
-
-    for (i=0; i < path->num_data; i += path->data[i].header.length) {
-	data = &path->data[i];
-	switch (data->header.type) {
-	case CAIRO_PATH_MOVE_TO:
-	    (move_to) (closure, data[1].point.x, data[1].point.y);
-	    break;
-	case CAIRO_PATH_LINE_TO:
-	    (line_to) (closure, data[1].point.x, data[1].point.y);
-	    break;
-	case CAIRO_PATH_CURVE_TO:
-	    (curve_to) (closure,
-			data[1].point.x, data[1].point.y,
-			data[2].point.x, data[2].point.y,
-			data[3].point.x, data[3].point.y);
-	    break;
-	case CAIRO_PATH_CLOSE_PATH:
-	    (close_path) (closure);
-	    break;
-	}
-    }
-
-    cairo_path_destroy (path);
-
-    CAIRO_CHECK_SANITY (cr);
-}
-DEPRECATE (cairo_current_path, cairo_get_path);
-
-void
-cairo_get_path_flat (cairo_t		     *cr,
-		     cairo_move_to_func_t    *move_to,
-		     cairo_line_to_func_t    *line_to,
-		     cairo_close_path_func_t *close_path,
-		     void		     *closure)
-{
-    int i;
-    cairo_path_t *path;
-    cairo_path_data_t *data;
-
-    CAIRO_CHECK_SANITY (cr);
-    if (cr->status)
-	return;
-
-    path = cairo_copy_path_flat (cr);
-
-    for (i=0; i < path->num_data; i += path->data[i].header.length) {
-	data = &path->data[i];
-	switch (data->header.type) {
-	case CAIRO_PATH_MOVE_TO:
-	    (move_to) (closure, data[1].point.x, data[1].point.y);
-	    break;
-	case CAIRO_PATH_LINE_TO:
-	    (line_to) (closure, data[1].point.x, data[1].point.y);
-	    break;
-	case CAIRO_PATH_CLOSE_PATH:
-	    (close_path) (closure);
-	    break;
-	case CAIRO_PATH_CURVE_TO:
-	    ASSERT_NOT_REACHED;
-	    break;
-	}
-    }
-
-    cairo_path_destroy (path);
-
-    CAIRO_CHECK_SANITY (cr);
-}
-DEPRECATE (cairo_current_path_flat, cairo_get_path_flat);
 
 /**
  * cairo_copy_path:
@@ -2301,7 +2158,6 @@
     CAIRO_CHECK_SANITY (cr);
     return cr->status;
 }
-DEPRECATE (cairo_get_status, cairo_status);
 
 const char *
 cairo_status_string (cairo_t *cr)
@@ -2341,7 +2197,6 @@
 
     return "<unknown error status>";
 }
-DEPRECATE (cairo_get_status_string, cairo_status_string);
 
 void
 _cairo_restrict_value (double *value, double min, double max)

Index: cairo.h
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo.h,v
retrieving revision 1.112
retrieving revision 1.113
diff -u -d -r1.112 -r1.113
--- cairo.h	6 May 2005 20:26:16 -0000	1.112
+++ cairo.h	6 May 2005 20:32:53 -0000	1.113
@@ -214,10 +214,6 @@
 void
 cairo_restore (cairo_t *cr);
 
-/* XXX: Replace with cairo_get_gstate/cairo_set_gstate */
-void
-cairo_copy (cairo_t *dest, cairo_t *src);
-
 /* XXX: I want to rethink this API
 void
 cairo_push_group (cairo_t *cr);
@@ -268,10 +264,6 @@
 			  double	   x,
 			  double	   y);
 
-/* XXX: Currently, the tolerance value is specified by the user in
-   terms of device-space units. If I'm not mistaken, this is the only
-   value in this API that is not expressed in user-space units. I
-   should think whether this value should be user-space instead. */
 void
 cairo_set_tolerance (cairo_t *cr, double tolerance);
 
@@ -425,16 +417,9 @@
 		 double x, double y,
 		 double width, double height);
 
-/* XXX: This is the same name that PostScript uses, but to me the name
-   suggests an actual drawing operation ala cairo_stroke --- especially
-   since I want to add a cairo_path_t and with that it would be
-   natural to have "cairo_stroke_path (cairo_t *, cairo_path_t *)"
-
-   Maybe we could use something like "cairo_outline_path (cairo_t *)"? 
-*/
 /* XXX: NYI
 void
-cairo_stroke_path (cairo_t *cr);
+cairo_stroke_to_path (cairo_t *cr);
 */
 
 void
@@ -524,7 +509,7 @@
  * a font by sheering it or scaling it unequally in the two
  * directions) . A font face can be set on a #cairo_t by using
  * cairo_set_font_face(); the size and font matrix are set with
- * cairo_scale_font() and cairo_transform_font().
+ * cairo_set_font_size() and cairo_set_font_matrix().
  */
 typedef struct _cairo_font_face cairo_font_face_t;
 
@@ -749,12 +734,6 @@
 
 /* Query functions */
 
-/* XXX: It would be nice if I could find a simpler way to make the
-   definitions for the deprecated functions. Ideally, I would just
-   have to put DEPRECATE (cairo_get_operator, cairo_current_operator)
-   into one file and be done with it. For now, I've got a little more
-   typing than that. */
-
 cairo_operator_t
 cairo_get_operator (cairo_t *cr);
 
@@ -765,11 +744,6 @@
 cairo_get_source (cairo_t *cr);
 
 double
-cairo_get_alpha (cairo_t *cr);
-
-/* XXX: Do we want cairo_get_pattern as well? */
-
-double
 cairo_get_tolerance (cairo_t *cr);
 
 void
@@ -800,34 +774,6 @@
 cairo_surface_t *
 cairo_get_target (cairo_t *cr);
 
-typedef void (cairo_move_to_func_t) (void *closure,
-				     double x, double y);
-
-typedef void (cairo_line_to_func_t) (void *closure,
-				     double x, double y);
-
-typedef void (cairo_curve_to_func_t) (void *closure,
-				      double x1, double y1,
-				      double x2, double y2,
-				      double x3, double y3);
-
-typedef void (cairo_close_path_func_t) (void *closure);
-
-void
-cairo_get_path (cairo_t			*cr,
-		cairo_move_to_func_t	*move_to,
-		cairo_line_to_func_t	*line_to,
-		cairo_curve_to_func_t	*curve_to,
-		cairo_close_path_func_t	*close_path,
-		void			*closure);
-
-void
-cairo_get_path_flat (cairo_t                 *cr,
-		     cairo_move_to_func_t    *move_to,
-		     cairo_line_to_func_t    *line_to,
-		     cairo_close_path_func_t *close_path,
-		     void                    *closure);
-
 /**
  * cairo_path_data_t:
  *
@@ -1004,36 +950,6 @@
 
 #endif
 
-/* XXX: Note: The current Render/Ic implementations don't do the right
-   thing with repeat when the surface has a non-identity matrix. */
-/* XXX: Rework this as a cairo function with an enum: cairo_set_pattern_extend */
-cairo_status_t
-cairo_surface_set_repeat (cairo_surface_t *surface, int repeat);
-
-/* XXX: Rework this as a cairo function: cairo_set_pattern_transform */
-cairo_status_t
-cairo_surface_set_matrix (cairo_surface_t *surface, cairo_matrix_t *matrix);
-
-/* XXX: Rework this as a cairo function: cairo_get_pattern_transform */
-cairo_status_t
-cairo_surface_get_matrix (cairo_surface_t *surface, cairo_matrix_t *matrix);
-
-typedef enum {
-    CAIRO_FILTER_FAST,
-    CAIRO_FILTER_GOOD,
-    CAIRO_FILTER_BEST,
-    CAIRO_FILTER_NEAREST,
-    CAIRO_FILTER_BILINEAR,
-    CAIRO_FILTER_GAUSSIAN
-} cairo_filter_t;
-  
-/* XXX: Rework this as a cairo function: cairo_set_pattern_filter */
-cairo_status_t
-cairo_surface_set_filter (cairo_surface_t *surface, cairo_filter_t filter);
-
-cairo_filter_t 
-cairo_surface_get_filter (cairo_surface_t *surface);
-
 void *
 cairo_surface_get_user_data (cairo_surface_t		 *surface,
 			     const cairo_user_data_key_t *key);
@@ -1127,6 +1043,15 @@
 cairo_extend_t
 cairo_pattern_get_extend (cairo_pattern_t *pattern);
 
+typedef enum {
+    CAIRO_FILTER_FAST,
+    CAIRO_FILTER_GOOD,
+    CAIRO_FILTER_BEST,
+    CAIRO_FILTER_NEAREST,
+    CAIRO_FILTER_BILINEAR,
+    CAIRO_FILTER_GAUSSIAN
+} cairo_filter_t;
+  
 cairo_status_t
 cairo_pattern_set_filter (cairo_pattern_t *pattern, cairo_filter_t filter);
 
@@ -1135,18 +1060,6 @@
 
 /* Matrix functions */
 
-/* XXX: Deprecated. To be removed in favor of a structure of known size. */
-cairo_matrix_t *
-cairo_matrix_create (void);
-
-/* XXX: Deprecated. To be removed in favor of a structure of known size. */
-void
-cairo_matrix_destroy (cairo_matrix_t *matrix);
-
-/* XXX: Deprecated. To be removed in favor of direct assignment. */
-void
-cairo_matrix_copy (cairo_matrix_t *matrix, const cairo_matrix_t *other);
-
 void
 cairo_matrix_init (cairo_matrix_t *matrix,
 		   double  xx, double  yx,
@@ -1168,13 +1081,6 @@
 cairo_matrix_init_rotate (cairo_matrix_t *matrix,
 			  double radians);
 
-/* XXX: Deprecated. To be removed in favor of direct access. */
-void
-cairo_matrix_get_affine (cairo_matrix_t *matrix,
-			 double  *a, double  *b,
-			 double  *c, double  *d,
-			 double *tx, double *ty);
-
 void
 cairo_matrix_translate (cairo_matrix_t *matrix, double tx, double ty);
 
@@ -1192,98 +1098,79 @@
 		       const cairo_matrix_t *a,
 		       const cairo_matrix_t *b);
 
+/* XXX: Need a new name here perhaps. */
 void
 cairo_matrix_transform_distance (cairo_matrix_t *matrix, double *dx, double *dy);
 
+/* XXX: Need a new name here perhaps. */
 void
 cairo_matrix_transform_point (cairo_matrix_t *matrix, double *x, double *y);
 
-#define CAIRO_API_SHAKEUP_FLAG_DAY 0
-
 #ifndef _CAIROINT_H_
 
-#if CAIRO_API_SHAKEUP_FLAG_DAY
-
-/* Deprecated functions. We've made some effort to allow the
-   deprecated functions to continue to work for now, (with useful
-   warnings). But the deprecated functions will not appear in the next
-   release. */
-#define cairo_current_path	     cairo_current_path_DEPRECATED_BY_cairo_get_path
-#define cairo_current_path_flat	     cairo_current_path_flat_DEPRECATED_BY_cairo_get_path_flat
-#define cairo_current_font_extents   cairo_current_font_extents_DEPRECATED_BY_cairo_font_extents
-#define cairo_get_font_extents       cairo_get_font_extents_DEPRECATED_BY_cairo_font_extents
-#define cairo_current_operator       cairo_current_operator_DEPRECATED_BY_cairo_get_operator
-#define cairo_current_rgb_color      cairo_current_rgb_color_DEPRECATED_BY_cairo_get_rgb_color
-#define cairo_current_alpha	     cairo_current_alpha_DEPRECATED_BY_cairo_get_alpha
-#define cairo_current_tolerance	     cairo_current_tolerance_DEPRECATED_BY_cairo_get_tolerance
-#define cairo_current_point	     cairo_current_point_DEPRECATED_BY_cairo_get_current_point
-#define cairo_current_fill_rule	     cairo_current_fill_rule_DEPRECATED_BY_cairo_get_fill_rule
-#define cairo_current_line_width     cairo_current_line_width_DEPRECATED_BY_cairo_get_line_width
-#define cairo_current_line_cap       cairo_current_line_cap_DEPRECATED_BY_cairo_get_line_cap
-#define cairo_current_line_join      cairo_current_line_join_DEPRECATED_BY_cairo_get_line_join
-#define cairo_current_miter_limit    cairo_current_miter_limit_DEPRECATED_BY_cairo_get_miter_limit
-#define cairo_current_matrix         cairo_current_matrix_DEPRECATED_BY_cairo_get_matrix
-#define cairo_current_target_surface cairo_current_target_surface_DEPRECATED_BY_cairo_get_target_surface
-#define cairo_get_status             cairo_get_status_DEPRECATED_BY_cairo_status
-#define cairo_get_status_string	     cairo_get_status_string_DEPRECATED_BY_cairo_status_string
-#define cairo_concat_matrix		 cairo_concat_matrix_DEPRECATED_BY_cairo_transform
-#define cairo_scale_font                 cairo_scale_font_DEPRECATED_BY_cairo_set_font_size
-#define cairo_select_font                cairo_select_font_face_DEPRECATED_BY_cairo_select_font_face
-#define cairo_transform_font             cairo_transform_font_DEPRECATED_BY_cairo_set_font_matrix
-#define cairo_transform_point		 cairo_transform_point_DEPRECATED_BY_cairo_user_to_device
-#define cairo_transform_distance	 cairo_transform_distance_DEPRECATED_BY_cairo_user_to_device_distance
-#define cairo_inverse_transform_point	 cairo_inverse_transform_point_DEPRECATED_BY_cairo_device_to_user
-#define cairo_inverse_transform_distance cairo_inverse_transform_distance_DEPRECATED_BY_cairo_device_to_user_distance
-#define cairo_init_clip			 cairo_init_clip_DEPRECATED_BY_cairo_reset_clip
-#define cairo_surface_create_for_image	 cairo_surface_create_for_image_DEPRECATED_BY_cairo_image_surface_create_for_data
-#define cairo_default_matrix		 cairo_default_matrix_DEPRECATED_BY_cairo_identity_matrix
-#define cairo_matrix_set_affine		 cairo_matrix_set_affine_DEPRECTATED_BY_cairo_matrix_init
-#define cairo_matrix_set_identity	 cairo_matrix_set_identity_DEPRECATED_BY_cairo_matrix_init_identity
-#define cairo_pattern_add_color_stop	 cairo_pattern_add_color_stop_DEPRECATED_BY_cairo_pattern_add_color_stop_rgba
-#define cairo_set_rgb_color		 cairo_set_rgb_color_DEPRECATED_BY_cairo_set_source_rgb
-#define cairo_set_pattern		 cairo_set_pattern_DEPRECATED_BY_cairo_set_source
-#define cairo_set_alpha			 cairo_set_alpha_DEPRECATED_BY_cairo_set_source_rgba
-
-#else /* CAIRO_API_SHAKEUP_FLAG_DAY */
-
-#define cairo_current_path	     cairo_get_path
-#define cairo_current_path_flat	     cairo_get_path_flat
-#define cairo_current_font	     cairo_get_font
-#define cairo_current_font_extents   cairo_font_extents
-#define cairo_current_operator       cairo_get_operator
-#define cairo_current_rgb_color      cairo_get_rgb_color
-#define cairo_current_alpha	     cairo_get_alpha
-#define cairo_current_tolerance	     cairo_get_tolerance
-#define cairo_current_point	     cairo_get_current_point
-#define cairo_current_fill_rule	     cairo_get_fill_rule
-#define cairo_current_line_width     cairo_get_line_width
-#define cairo_current_line_cap       cairo_get_line_cap
-#define cairo_current_line_join      cairo_get_line_join
-#define cairo_current_miter_limit    cairo_get_miter_limit
-#define cairo_current_matrix	     cairo_get_matrix
-#define cairo_current_target_surface cairo_get_target_surface
-#define cairo_get_font_extents       cairo_font_extents
-#define cairo_get_status             cairo_status
-#define cairo_get_status_string	     cairo_status_string
-#define cairo_concat_matrix		 cairo_transform
-#define cairo_transform_point		 cairo_user_to_device
-#define cairo_transform_distance	 cairo_user_to_device_distance
-#define cairo_inverse_transform_point	 cairo_device_to_user
-#define cairo_inverse_transform_distance cairo_device_to_user_distance
-#define cairo_init_clip			 cairo_reset_clip
-#define cairo_scale_font                 cairo_set_font_size
-#define cairo_select_font                cairo_select_font_face
-#define cairo_surface_create_for_image	 cairo_image_surface_create_for_data
-#define cairo_transform_font             cairo_set_font_matrix
-#define cairo_default_matrix		 cairo_identity_matrix
-#define cairo_matrix_set_affine		 cairo_matrix_init
-#define cairo_matrix_set_identity	 cairo_matrix_init_identity
-#define cairo_pattern_add_color_stop	 cairo_pattern_add_color_stop_rgba
-#define cairo_set_rgb_color		 cairo_set_source_rgb
-#define cairo_set_pattern		 cairo_set_source
-#define cairo_set_alpha			 cairo_set_alpha_DEPRECATED_BY_cairo_set_source_rgba
+/* Obsolete functions. These definitions exist to coerce the compiler
+ * into providing a little bit of guidance with its error
+ * messages. The idea is to help users port their old code without
+ * having to dig through lots of documentation.
+ *
+ * The first set of REPLACED_BY functions is for functions whose names
+ * have just been changed. So fixing these up is mechanical, (and
+ * automated by means of the cairo/util/cairo-api-update script.
+ *
+ * The second set of DEPRECATED_BY functions is for functions where
+ * the replacement is used in a different way, (ie. different
+ * arguments, multiple functions instead of one, etc). Fixing these up
+ * will require a bit more work on the user's part, (and hopefully we
+ * can get cairo-api-update to find these and print some guiding
+ * information).
+ */
+#define cairo_current_font_extents   cairo_current_font_extents_REPLACED_BY_cairo_font_extents
+#define cairo_get_font_extents       cairo_get_font_extents_REPLACED_BY_cairo_font_extents
+#define cairo_current_operator       cairo_current_operator_REPLACED_BY_cairo_get_operator
+#define cairo_current_tolerance	     cairo_current_tolerance_REPLACED_BY_cairo_get_tolerance
+#define cairo_current_point	     cairo_current_point_REPLACED_BY_cairo_get_current_point
+#define cairo_current_fill_rule	     cairo_current_fill_rule_REPLACED_BY_cairo_get_fill_rule
+#define cairo_current_line_width     cairo_current_line_width_REPLACED_BY_cairo_get_line_width
+#define cairo_current_line_cap       cairo_current_line_cap_REPLACED_BY_cairo_get_line_cap
+#define cairo_current_line_join      cairo_current_line_join_REPLACED_BY_cairo_get_line_join
+#define cairo_current_miter_limit    cairo_current_miter_limit_REPLACED_BY_cairo_get_miter_limit
+#define cairo_current_matrix         cairo_current_matrix_REPLACED_BY_cairo_get_matrix
+#define cairo_current_target_surface cairo_current_target_surface_REPLACED_BY_cairo_get_target_surface
+#define cairo_get_status             cairo_get_status_REPLACED_BY_cairo_status
+#define cairo_get_status_string	     cairo_get_status_string_REPLACED_BY_cairo_status_string
+#define cairo_concat_matrix		 cairo_concat_matrix_REPLACED_BY_cairo_transform
+#define cairo_scale_font                 cairo_scale_font_REPLACED_BY_cairo_set_font_size
+#define cairo_select_font                cairo_select_font_REPLACED_BY_cairo_select_font_face
+#define cairo_transform_font             cairo_transform_font_REPLACED_BY_cairo_set_font_matrix
+#define cairo_transform_point		 cairo_transform_point_REPLACED_BY_cairo_user_to_device
+#define cairo_transform_distance	 cairo_transform_distance_REPLACED_BY_cairo_user_to_device_distance
+#define cairo_inverse_transform_point	 cairo_inverse_transform_point_REPLACED_BY_cairo_device_to_user
+#define cairo_inverse_transform_distance cairo_inverse_transform_distance_REPLACED_BY_cairo_device_to_user_distance
+#define cairo_init_clip			 cairo_init_clip_REPLACED_BY_cairo_reset_clip
+#define cairo_surface_create_for_image	 cairo_surface_create_for_image_REPLACED_BY_cairo_image_surface_create_for_data
+#define cairo_default_matrix		 cairo_default_matrix_REPLACED_BY_cairo_identity_matrix
+#define cairo_matrix_set_affine		 cairo_matrix_set_affine_REPLACED_BY_cairo_matrix_init
+#define cairo_matrix_set_identity	 cairo_matrix_set_identity_REPLACED_BY_cairo_matrix_init_identity
+#define cairo_pattern_add_color_stop	 cairo_pattern_add_color_stop_REPLACED_BY_cairo_pattern_add_color_stop_rgba
+#define cairo_set_rgb_color		 cairo_set_rgb_color_REPLACED_BY_cairo_set_source_rgb
+#define cairo_set_pattern		 cairo_set_pattern_REPLACED_BY_cairo_set_source
 
-#endif /* CAIRO_API_SHAKEUP_FLAG_DAY */
+#define cairo_current_path	     cairo_current_path_DEPRECATED_BY_cairo_copy_path
+#define cairo_current_path_flat	     cairo_current_path_flat_DEPRECATED_BY_cairo_copy_path_flat
+#define cairo_get_path		     cairo_get_path_DEPRECATED_BY_cairo_copy_path
+#define cairo_get_path_flat	     cairo_get_path_flat_DEPRECATED_BY_cairo_get_path_flat
+#define cairo_set_alpha		     cairo_set_alpha_DEPRECATED_BY_cairo_set_source_rgba
+#define cairo_show_surface	     cairo_show_surface_DEPRECATED_BY_cairo_set_source_surface_AND_cairo_paint
+#define cairo_copy		     cairo_copy_DEPRECATED_BY_cairo_create_AND_MANY_INDIVIDUAL_FUNCTIONS
+#define cairo_surface_set_repeat	cairo_surface_set_repeat_DEPRECATED_BY_cairo_pattern_set_extend
+#define cairo_surface_set_matrix	cairo_surface_set_matrix_DEPRECATED_BY_cairo_pattern_set_matrix
+#define cairo_surface_get_matrix	cairo_surface_get_matrix_DEPRECATED_BY_cairo_pattern_get_matrix
+#define cairo_surface_set_filter	cairo_surface_set_filter_DEPRECATED_BY_cairo_pattern_set_filter
+#define cairo_surface_get_filter	cairo_surface_get_filter_DEPRECATED_BY_cairo_pattern_get_filter
+#define cairo_matrix_create		cairo_matrix_create_DEPRECATED_BY_cairo_matrix_t
+#define cairo_matrix_destroy		cairo_matrix_create_DEPRECATED_BY_cairo_matrix_t
+#define cairo_matrix_copy		cairo_matrix_create_DEPRECATED_BY_cairo_matrix_t
+#define cairo_matrix_get_affine		cairo_matrix_create_DEPRECATED_BY_cairo_matrix_t
 
 #endif
 

Index: cairoint.h
===================================================================
RCS file: /cvs/cairo/cairo/src/cairoint.h,v
retrieving revision 1.134
retrieving revision 1.135
diff -u -d -r1.134 -r1.135
--- cairoint.h	6 May 2005 20:23:41 -0000	1.134
+++ cairoint.h	6 May 2005 20:32:53 -0000	1.135
@@ -91,7 +91,7 @@
 #define cairo_private
 #endif
 
-/* These macros allow us to deprecate a function by providing an alias
+/* This macro allow us to deprecate a function by providing an alias
    for the old function name to the new function name. With this
    macro, binary compatibility is preserved. The macro only works on
    some platforms --- tough.
@@ -100,14 +100,15 @@
    source code so that it will no longer link against the old
    symbols. Instead it will give a descriptive error message
    indicating that the old function has been deprecated by the new
-   function.  */
+   function.
+*/
 #if __GNUC__ >= 2 && defined(__ELF__)
-# define DEPRECATE(old, new)			\
+# define CAIRO_FUNCTION_ALIAS(old, new)		\
 	extern __typeof (new) old		\
 	__asm__ ("" #old)			\
 	__attribute__((__alias__("" #new)))
 #else
-# define DEPRECATE(old, new)
+# define CAIRO_FUNCTION_ALIAS(old, new)
 #endif
 
 #ifndef __GNUC__
@@ -1620,6 +1621,12 @@
 
 /* cairo_matrix.c */
 cairo_private void
+_cairo_matrix_get_affine (cairo_matrix_t *matrix,
+			  double *xx, double *yx,
+			  double *xy, double *yy,
+			  double *x0, double *y0);
+
+cairo_private void
 _cairo_matrix_transform_bounding_box (cairo_matrix_t *matrix,
 				      double *x, double *y,
 				      double *width, double *height);
@@ -1800,7 +1807,6 @@
 slim_hidden_proto(cairo_fill_preserve)
 slim_hidden_proto(cairo_clip_preserve)
 slim_hidden_proto(cairo_close_path)
-slim_hidden_proto(cairo_matrix_copy)
 slim_hidden_proto(cairo_matrix_invert)
 slim_hidden_proto(cairo_matrix_multiply)
 slim_hidden_proto(cairo_matrix_scale)
@@ -1818,8 +1824,5 @@
 slim_hidden_proto(cairo_save)
 slim_hidden_proto(cairo_stroke_preserve)
 slim_hidden_proto(cairo_surface_destroy)
-slim_hidden_proto(cairo_surface_get_matrix)
-slim_hidden_proto(cairo_surface_set_matrix)
-slim_hidden_proto(cairo_surface_set_repeat)
 
 #endif




More information about the cairo-commit mailing list