[Commit] cairo/src cairo.c, 1.6, 1.7 cairo.h, 1.7,
1.8 cairo_gstate.c, 1.6, 1.7 cairoint.h, 1.10, 1.11
Carl Worth
commit at keithp.com
Thu Sep 4 07:52:04 PDT 2003
Committed by: cworth
Update of /local/src/CVS/cairo/src
In directory home.keithp.com:/tmp/cvs-serv18271/src
Modified Files:
cairo.c cairo.h cairo_gstate.c cairoint.h
Log Message:
Changed names of all cairo_get_* functions to cairo_current_*.
Added magic DEPRECATE macro so that using the old names will give useful warnings/errors.
Bumped version number to 0.1.1
Index: cairo.c
===================================================================
RCS file: /local/src/CVS/cairo/src/cairo.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- cairo.c 3 Sep 2003 14:14:19 -0000 1.6
+++ cairo.c 4 Sep 2003 13:52:01 -0000 1.7
@@ -628,86 +628,98 @@
}
cairo_operator_t
-cairo_get_operator (cairo_t *cr)
+cairo_current_operator (cairo_t *cr)
{
- return _cairo_gstate_get_operator (cr->gstate);
+ return _cairo_gstate_current_operator (cr->gstate);
}
+DEPRECATE (cairo_get_operator, cairo_current_operator);
void
-cairo_get_rgb_color (cairo_t *cr, double *red, double *green, double *blue)
+cairo_current_rgb_color (cairo_t *cr, double *red, double *green, double *blue)
{
- _cairo_gstate_get_rgb_color (cr->gstate, red, green, blue);
+ _cairo_gstate_current_rgb_color (cr->gstate, red, green, blue);
}
+DEPRECATE (cairo_get_rgb_color, cairo_current_rgb_color);
double
-cairo_get_alpha (cairo_t *cr)
+cairo_current_alpha (cairo_t *cr)
{
- return _cairo_gstate_get_alpha (cr->gstate);
+ return _cairo_gstate_current_alpha (cr->gstate);
}
-
+DEPRECATE (cairo_get_alpha, cairo_current_alpha);
double
-cairo_get_tolerance (cairo_t *cr)
+cairo_current_tolerance (cairo_t *cr)
{
- return _cairo_gstate_get_tolerance (cr->gstate);
+ return _cairo_gstate_current_tolerance (cr->gstate);
}
+DEPRECATE (cairo_get_tolerance, cairo_current_tolerance);
void
-cairo_get_current_point (cairo_t *cr, double *x, double *y)
+cairo_current_point (cairo_t *cr, double *x, double *y)
{
- _cairo_gstate_get_current_point (cr->gstate, x, y);
+ _cairo_gstate_current_point (cr->gstate, x, y);
}
+DEPRECATE (cairo_get_current_point, cairo_current_point);
cairo_fill_rule_t
-cairo_get_fill_rule (cairo_t *cr)
+cairo_current_fill_rule (cairo_t *cr)
{
- return _cairo_gstate_get_fill_rule (cr->gstate);
+ return _cairo_gstate_current_fill_rule (cr->gstate);
}
+DEPRECATE (cairo_get_fill_rule, cairo_current_fill_rule);
double
-cairo_get_line_width (cairo_t *cr)
+cairo_current_line_width (cairo_t *cr)
{
- return _cairo_gstate_get_line_width (cr->gstate);
+ return _cairo_gstate_current_line_width (cr->gstate);
}
+DEPRECATE (cairo_get_line_width, cairo_current_line_width);
cairo_line_cap_t
-cairo_get_line_cap (cairo_t *cr)
+cairo_current_line_cap (cairo_t *cr)
{
- return _cairo_gstate_get_line_cap (cr->gstate);
+ return _cairo_gstate_current_line_cap (cr->gstate);
}
+DEPRECATE (cairo_get_line_cap, cairo_current_line_cap);
cairo_line_join_t
-cairo_get_line_join (cairo_t *cr)
+cairo_current_line_join (cairo_t *cr)
{
- return _cairo_gstate_get_line_join (cr->gstate);
+ return _cairo_gstate_current_line_join (cr->gstate);
}
+DEPRECATE (cairo_get_line_join, cairo_current_line_join);
double
-cairo_get_miter_limit (cairo_t *cr)
+cairo_current_miter_limit (cairo_t *cr)
{
- return _cairo_gstate_get_miter_limit (cr->gstate);
+ return _cairo_gstate_current_miter_limit (cr->gstate);
}
+DEPRECATE (cairo_get_miter_limit, cairo_current_miter_limit);
void
-cairo_get_matrix (cairo_t *cr, cairo_matrix_t *matrix)
+cairo_current_matrix (cairo_t *cr, cairo_matrix_t *matrix)
{
- _cairo_gstate_get_matrix (cr->gstate, matrix);
+ _cairo_gstate_current_matrix (cr->gstate, matrix);
}
+DEPRECATE (cairo_get_matrix, cairo_current_matrix);
cairo_surface_t *
-cairo_get_target_surface (cairo_t *cr)
+cairo_current_target_surface (cairo_t *cr)
{
- return _cairo_gstate_get_target_surface (cr->gstate);
+ return _cairo_gstate_current_target_surface (cr->gstate);
}
+DEPRECATE (cairo_get_target_surface, cairo_current_target_surface);
cairo_status_t
-cairo_get_status (cairo_t *cr)
+cairo_status (cairo_t *cr)
{
return cr->status;
}
+DEPRECATE (cairo_get_status, cairo_status);
const char *
-cairo_get_status_string (cairo_t *cr)
+cairo_status_string (cairo_t *cr)
{
switch (cr->status) {
case CAIRO_STATUS_SUCCESS:
@@ -726,6 +738,7 @@
return "";
}
+DEPRECATE (cairo_get_status_string, cairo_status_string);
static void
_cairo_restrict_value (double *value, double min, double max)
Index: cairo.h
===================================================================
RCS file: /local/src/CVS/cairo/src/cairo.h,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- cairo.h 3 Sep 2003 14:14:19 -0000 1.7
+++ cairo.h 4 Sep 2003 13:52:01 -0000 1.8
@@ -335,45 +335,51 @@
/* 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. */
+
extern cairo_operator_t __external_linkage
-cairo_get_operator (cairo_t *cr);
+cairo_current_operator (cairo_t *cr);
extern void __external_linkage
-cairo_get_rgb_color (cairo_t *cr, double *red, double *green, double *blue);
+cairo_current_rgb_color (cairo_t *cr, double *red, double *green, double *blue);
extern double __external_linkage
-cairo_get_alpha (cairo_t *cr);
+cairo_current_alpha (cairo_t *cr);
-/* XXX: Do we want cairo_get_pattern as well? */
+/* XXX: Do we want cairo_current_pattern as well? */
extern double __external_linkage
-cairo_get_tolerance (cairo_t *cr);
+cairo_current_tolerance (cairo_t *cr);
extern void __external_linkage
-cairo_get_current_point (cairo_t *cr, double *x, double *y);
+cairo_current_point (cairo_t *cr, double *x, double *y);
extern cairo_fill_rule_t __external_linkage
-cairo_get_fill_rule (cairo_t *cr);
+cairo_current_fill_rule (cairo_t *cr);
extern double __external_linkage
-cairo_get_line_width (cairo_t *cr);
+cairo_current_line_width (cairo_t *cr);
extern cairo_line_cap_t __external_linkage
-cairo_get_line_cap (cairo_t *cr);
+cairo_current_line_cap (cairo_t *cr);
extern cairo_line_join_t __external_linkage
-cairo_get_line_join (cairo_t *cr);
+cairo_current_line_join (cairo_t *cr);
extern double __external_linkage
-cairo_get_miter_limit (cairo_t *cr);
+cairo_current_miter_limit (cairo_t *cr);
-/* XXX: How to do cairo_get_dash??? Do we want to switch to a cairo_dash object? */
+/* XXX: How to do cairo_current_dash??? Do we want to switch to a cairo_dash object? */
extern void __external_linkage
-cairo_get_matrix (cairo_t *cr, cairo_matrix_t *matrix);
+cairo_current_matrix (cairo_t *cr, cairo_matrix_t *matrix);
extern cairo_surface_t * __external_linkage
-cairo_get_target_surface (cairo_t *cr);
+cairo_current_target_surface (cairo_t *cr);
/* Error status queries */
@@ -387,10 +393,10 @@
} cairo_status_t;
extern cairo_status_t __external_linkage
-cairo_get_status (cairo_t *cr);
+cairo_status (cairo_t *cr);
extern const char * __external_linkage
-cairo_get_status_string (cairo_t *cr);
+cairo_status_string (cairo_t *cr);
/* Surface mainpulation */
@@ -522,6 +528,25 @@
extern cairo_status_t __external_linkage
cairo_matrix_transform_point (cairo_matrix_t *matrix, double *x, double *y);
+/* 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_get_operator cairo_get_operator_DEPRECATED_BY_cairo_current_operator
+#define cairo_get_rgb_color cairo_get_rgb_color_DEPRECATED_BY_cairo_current_rgb_color
+#define cairo_get_alpha cairo_get_alpha_DEPRECATED_BY_cairo_current_alpha
+#define cairo_get_tolerance cairo_get_tolerance_DEPRECATED_BY_cairo_current_tolerance
+#define cairo_get_current_point cairo_get_current_point_DEPRECATED_BY_cairo_current_point
+#define cairo_get_fill_rule cairo_get_fill_rule_DEPRECATED_BY_cairo_current_fill_rule
+#define cairo_get_line_width cairo_get_line_width_DEPRECATED_BY_cairo_current_line_width
+#define cairo_get_line_cap cairo_get_line_cap_DEPRECATED_BY_cairo_current_line_cap
+#define cairo_get_line_join cairo_get_line_join_DEPRECATED_BY_cairo_current_line_join
+#define cairo_get_miter_limit cairo_get_miter_limit_DEPRECATED_BY_cairo_current_miter_limit
+#define cairo_get_matrix cairo_get_matrix_DEPRECATED_BY_cairo_current_matrix
+#define cairo_get_target_surface cairo_get_target_surface_DEPRECATED_BY_cairo_current_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
+
#ifdef __cplusplus
}
#endif
Index: cairo_gstate.c
===================================================================
RCS file: /local/src/CVS/cairo/src/cairo_gstate.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- cairo_gstate.c 3 Sep 2003 14:14:19 -0000 1.6
+++ cairo_gstate.c 4 Sep 2003 13:52:01 -0000 1.7
@@ -302,7 +302,7 @@
/* XXX: Need to decide the memory mangement semantics of this
function. Should it reference the surface again? */
cairo_surface_t *
-_cairo_gstate_get_target_surface (cairo_gstate_t *gstate)
+_cairo_gstate_current_target_surface (cairo_gstate_t *gstate)
{
if (gstate == NULL)
return NULL;
@@ -318,9 +318,9 @@
gstate->pattern = pattern;
_cairo_surface_reference (gstate->pattern);
- _cairo_gstate_get_current_point (gstate,
- &gstate->pattern_offset.x,
- &gstate->pattern_offset.y);
+ _cairo_gstate_current_point (gstate,
+ &gstate->pattern_offset.x,
+ &gstate->pattern_offset.y);
return CAIRO_STATUS_SUCCESS;
}
@@ -334,7 +334,7 @@
}
cairo_operator_t
-_cairo_gstate_get_operator (cairo_gstate_t *gstate)
+_cairo_gstate_current_operator (cairo_gstate_t *gstate)
{
return gstate->operator;
}
@@ -358,7 +358,7 @@
}
cairo_status_t
-_cairo_gstate_get_rgb_color (cairo_gstate_t *gstate, double *red, double *green, double *blue)
+_cairo_gstate_current_rgb_color (cairo_gstate_t *gstate, double *red, double *green, double *blue)
{
_cairo_color_get_rgb (&gstate->color, red, green, blue);
@@ -374,7 +374,7 @@
}
double
-_cairo_gstate_get_tolerance (cairo_gstate_t *gstate)
+_cairo_gstate_current_tolerance (cairo_gstate_t *gstate)
{
return gstate->tolerance;
}
@@ -400,7 +400,7 @@
}
double
-_cairo_gstate_get_alpha (cairo_gstate_t *gstate)
+_cairo_gstate_current_alpha (cairo_gstate_t *gstate)
{
return gstate->alpha;
}
@@ -414,7 +414,7 @@
}
cairo_status_t
-_cairo_gstate_get_fill_rule (cairo_gstate_t *gstate)
+_cairo_gstate_current_fill_rule (cairo_gstate_t *gstate)
{
return gstate->fill_rule;
}
@@ -428,7 +428,7 @@
}
double
-_cairo_gstate_get_line_width (cairo_gstate_t *gstate)
+_cairo_gstate_current_line_width (cairo_gstate_t *gstate)
{
return gstate->line_width;
}
@@ -442,7 +442,7 @@
}
cairo_line_cap_t
-_cairo_gstate_get_line_cap (cairo_gstate_t *gstate)
+_cairo_gstate_current_line_cap (cairo_gstate_t *gstate)
{
return gstate->line_cap;
}
@@ -456,7 +456,7 @@
}
cairo_line_join_t
-_cairo_gstate_get_line_join (cairo_gstate_t *gstate)
+_cairo_gstate_current_line_join (cairo_gstate_t *gstate)
{
return gstate->line_join;
}
@@ -493,13 +493,13 @@
}
double
-_cairo_gstate_get_miter_limit (cairo_gstate_t *gstate)
+_cairo_gstate_current_miter_limit (cairo_gstate_t *gstate)
{
return gstate->miter_limit;
}
void
-_cairo_gstate_get_matrix (cairo_gstate_t *gstate, cairo_matrix_t *matrix)
+_cairo_gstate_current_matrix (cairo_gstate_t *gstate, cairo_matrix_t *matrix)
{
cairo_matrix_copy (matrix, &gstate->ctm);
}
@@ -796,7 +796,7 @@
}
cairo_status_t
-_cairo_gstate_get_current_point (cairo_gstate_t *gstate, double *x, double *y)
+_cairo_gstate_current_point (cairo_gstate_t *gstate, double *x, double *y)
{
*x = gstate->current_pt.x;
*y = gstate->current_pt.y;
Index: cairoint.h
===================================================================
RCS file: /local/src/CVS/cairo/src/cairoint.h,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- cairoint.h 3 Sep 2003 14:14:19 -0000 1.10
+++ cairoint.h 4 Sep 2003 13:52:01 -0000 1.11
@@ -46,6 +46,25 @@
#include <slim_internal.h>
+/* These macros allow us to deprecate a function by providing an alias
+ for the old function name to the new function name. With this
+ macro, code using the deprecated function will still compile and
+ link, but will provide a useful warning message giving the old and
+ new function names to the user at compilation time, (as long as the
+ compiler reports calls to undeclared functions).
+
+ If the macro is not supported by the compiler, the program will not
+ link, and the user will still se a useful error message. */
+#if __GNUC__ >= 2 && defined(__ELF__)
+# define DEPRECATE(old, new) DEPRECATE_INT(old, old##_DEPRECATED_BY_##new , new)
+# define DEPRECATE_INT(old, int, new) \
+ extern __typeof (new) int \
+ __asm__ ("" #int) \
+ __attribute__((__alias__("" #new)))
+#else
+# define DEPRECATE(old, new)
+#endif
+
#ifndef __GNUC__
#define __attribute__(x)
#endif
@@ -394,7 +413,7 @@
_cairo_gstate_set_target_surface (cairo_gstate_t *gstate, cairo_surface_t *surface);
extern cairo_surface_t * __internal_linkage
-_cairo_gstate_get_target_surface (cairo_gstate_t *gstate);
+_cairo_gstate_current_target_surface (cairo_gstate_t *gstate);
extern cairo_status_t __internal_linkage
_cairo_gstate_set_pattern (cairo_gstate_t *gstate, cairo_surface_t *pattern);
@@ -403,49 +422,52 @@
_cairo_gstate_set_operator (cairo_gstate_t *gstate, cairo_operator_t operator);
extern cairo_operator_t __internal_linkage
-_cairo_gstate_get_operator (cairo_gstate_t *gstate);
+_cairo_gstate_current_operator (cairo_gstate_t *gstate);
extern cairo_status_t __internal_linkage
_cairo_gstate_set_rgb_color (cairo_gstate_t *gstate, double red, double green, double blue);
extern cairo_status_t __internal_linkage
-_cairo_gstate_get_rgb_color (cairo_gstate_t *gstate, double *red, double *green, double *blue);
+_cairo_gstate_current_rgb_color (cairo_gstate_t *gstate,
+ double *red,
+ double *green,
+ double *blue);
extern cairo_status_t __internal_linkage
_cairo_gstate_set_tolerance (cairo_gstate_t *gstate, double tolerance);
extern double __internal_linkage
-_cairo_gstate_get_tolerance (cairo_gstate_t *gstate);
+_cairo_gstate_current_tolerance (cairo_gstate_t *gstate);
extern cairo_status_t __internal_linkage
_cairo_gstate_set_alpha (cairo_gstate_t *gstate, double alpha);
extern double __internal_linkage
-_cairo_gstate_get_alpha (cairo_gstate_t *gstate);
+_cairo_gstate_current_alpha (cairo_gstate_t *gstate);
extern cairo_status_t __internal_linkage
_cairo_gstate_set_fill_rule (cairo_gstate_t *gstate, cairo_fill_rule_t fill_rule);
extern cairo_fill_rule_t __internal_linkage
-_cairo_gstate_get_fill_rule (cairo_gstate_t *gstate);
+_cairo_gstate_current_fill_rule (cairo_gstate_t *gstate);
extern cairo_status_t __internal_linkage
_cairo_gstate_set_line_width (cairo_gstate_t *gstate, double width);
extern double __internal_linkage
-_cairo_gstate_get_line_width (cairo_gstate_t *gstate);
+_cairo_gstate_current_line_width (cairo_gstate_t *gstate);
extern cairo_status_t __internal_linkage
_cairo_gstate_set_line_cap (cairo_gstate_t *gstate, cairo_line_cap_t line_cap);
extern cairo_line_cap_t __internal_linkage
-_cairo_gstate_get_line_cap (cairo_gstate_t *gstate);
+_cairo_gstate_current_line_cap (cairo_gstate_t *gstate);
extern cairo_status_t __internal_linkage
_cairo_gstate_set_line_join (cairo_gstate_t *gstate, cairo_line_join_t line_join);
extern cairo_line_join_t __internal_linkage
-_cairo_gstate_get_line_join (cairo_gstate_t *gstate);
+_cairo_gstate_current_line_join (cairo_gstate_t *gstate);
extern cairo_status_t __internal_linkage
_cairo_gstate_set_dash (cairo_gstate_t *gstate, double *dash, int num_dashes, double offset);
@@ -454,10 +476,10 @@
_cairo_gstate_set_miter_limit (cairo_gstate_t *gstate, double limit);
extern double __internal_linkage
-_cairo_gstate_get_miter_limit (cairo_gstate_t *gstate);
+_cairo_gstate_current_miter_limit (cairo_gstate_t *gstate);
extern void __internal_linkage
-_cairo_gstate_get_matrix (cairo_gstate_t *gstate, cairo_matrix_t *matrix);
+_cairo_gstate_current_matrix (cairo_gstate_t *gstate, cairo_matrix_t *matrix);
extern cairo_status_t __internal_linkage
_cairo_gstate_translate (cairo_gstate_t *gstate, double tx, double ty);
@@ -530,7 +552,7 @@
_cairo_gstate_close_path (cairo_gstate_t *gstate);
extern cairo_status_t __internal_linkage
-_cairo_gstate_get_current_point (cairo_gstate_t *gstate, double *x, double *y);
+_cairo_gstate_current_point (cairo_gstate_t *gstate, double *x, double *y);
extern cairo_status_t __internal_linkage
_cairo_gstate_stroke (cairo_gstate_t *gstate);
More information about the Commit
mailing list