mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2025-12-25 08:20:10 +01:00
10510 lines
354 KiB
Text
10510 lines
354 KiB
Text
2005-08-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am:
|
|
* test/caps-sub-paths.c: (main): Remove caps-sub-paths from the
|
|
XFAIL list since it is fixed now.
|
|
|
|
2005-08-23 Carl Worth <cworth@cworth.org>
|
|
|
|
Fix for bug #4205:
|
|
|
|
* src/cairo-path-stroke.c: (_cairo_stroker_add_caps):
|
|
(_cairo_path_fixed_stroke_to_traps): Abstract the cap-addition
|
|
code from the end of the stroke operation into a new
|
|
_cairo_stroker_add_caps function.
|
|
|
|
* src/cairo-path-stroke.c: (_cairo_stroker_move_to): Call the new
|
|
_cairo_stroker_add_caps at the beginning of every move_to so that
|
|
we get caps on every subpath and not just the last one.
|
|
|
|
2005-08-23 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* src/Makefile.am: Add libpixman.la to the libcairo_la_DEPENDENCIES
|
|
line so that changes to pixman get picked up.
|
|
|
|
2005-08-23 Owen Taylor <otaylor@redhat.com>
|
|
|
|
Some fixes for warnings from sparse (Part of #4208,
|
|
Kjartan Maraas)
|
|
|
|
* test/cairo-test.c (create_xlib_surface): Use NULL, not 0.
|
|
|
|
* src/cairo-matrix.c (_cairo_matrix_transformed_circle_major_axis):
|
|
Fix C99'ism of mixed code and declarations.
|
|
|
|
2005-08-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* BUGS: caps only added to last subpath: COVERED by
|
|
test/caps-sub-paths and bug #4205.
|
|
|
|
2005-08-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/caps-sub-paths.c: Use the expect_failure variant of
|
|
cairo_test so that make check prints the reason this test fails.
|
|
|
|
2005-08-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/caps-sub-paths-ref.png:
|
|
* test/caps-sub-paths.c: (draw), (main): Add test to demonstrate
|
|
bug #4205, missing caps on all but last sub-path in a complex
|
|
path.
|
|
|
|
2005-08-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c (cairo_create): Remove discussion of the BAD_NESTING
|
|
restriction from the documentation of cairo_create. No such
|
|
restriction exists anymore.
|
|
|
|
2005-08-22 Carl Worth <cworth@cworth.org>
|
|
|
|
Fix for bug #4192:
|
|
|
|
* src/cairo-ft-font.c: (_font_map_release_face_lock_held): New
|
|
function to handle both calling FT_Done_Face on unscaled->face and
|
|
decrementing font_map->num_open_faces.
|
|
|
|
* src/cairo-ft-font.c:
|
|
(_cairo_ft_unscaled_font_map_destroy),
|
|
(_cairo_ft_unscaled_font_destroy),
|
|
(_cairo_ft_unscaled_font_lock_face): Call new
|
|
_font_map_release_face_lock_held as approporiate.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_map_destroy):
|
|
Assert that (font_map->num_open_faces == 0) when we're done, to
|
|
help guarantee the bug is fixed.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_fini): Don't call
|
|
FT_Done_Face anymore, instead assert that (unscaled->face == NULL)
|
|
by the time this function is called.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_init),
|
|
(_cairo_ft_unscaled_font_set_scale): Prefer TRUE/FALSE as values
|
|
for cairo_bool_t have_scale.
|
|
|
|
2005-08-22 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* doc/public/Makefile.am: Add version.xml to content_files
|
|
so it will be copied to the right place for DESTDIR builds.
|
|
|
|
2005-08-22 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* doc/public/cairo-docs.xml:
|
|
* doc/public/cairo-sections.txt: Rework the index for the
|
|
reference manual.
|
|
|
|
* doc/public/tmpl/cairo-font-options.sgml:
|
|
* doc/public/tmpl/cairo-font.sgml:
|
|
* doc/public/tmpl/cairo-ft.sgml:
|
|
* doc/public/tmpl/cairo-glitz.sgml:
|
|
* doc/public/tmpl/cairo-image.sgml:
|
|
* doc/public/tmpl/cairo-matrix.sgml:
|
|
* doc/public/tmpl/cairo-paths.sgml:
|
|
* doc/public/tmpl/cairo-pattern.sgml:
|
|
* doc/public/tmpl/cairo-pdf.sgml:
|
|
* doc/public/tmpl/cairo-png.sgml:
|
|
* doc/public/tmpl/cairo-ps.sgml:
|
|
* doc/public/tmpl/cairo-quartz.sgml:
|
|
* doc/public/tmpl/cairo-scaled-font.sgml:
|
|
* doc/public/tmpl/cairo-status.sgml:
|
|
* doc/public/tmpl/cairo-surface.sgml:
|
|
* doc/public/tmpl/cairo-text.sgml:
|
|
* doc/public/tmpl/cairo-transforms.sgml:
|
|
* doc/public/tmpl/cairo-types.sgml:
|
|
* doc/public/tmpl/cairo-version.sgml:
|
|
* doc/public/tmpl/cairo-win32-fonts.sgml:
|
|
* doc/public/tmpl/cairo-win32.sgml:
|
|
* doc/public/tmpl/cairo-xcb-xrender.sgml:
|
|
* doc/public/tmpl/cairo-xcb.sgml:
|
|
* doc/public/tmpl/cairo-xlib.sgml:
|
|
* doc/public/tmpl/cairo.sgml: Update descriptions and add new
|
|
files for added sections.
|
|
|
|
2005-08-22 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-ft-font.c: Make cairo_ft_unscaled_font_backend static.
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_fini): Add missing static.
|
|
|
|
* src/cairo-pattern.c (_cairo_pattern_init_gradient):
|
|
* src/cairo-ps-surface.c (_cairo_ps_surface_finish):
|
|
* src/cairo-xlib-surface.c (_get_image_surface): Use
|
|
NULL, not 0.
|
|
|
|
* src/cairo-font.c (_cairo_lock,unlock,get_global_image_glyph_cache):
|
|
Use void in the definition of void functions, not ().
|
|
|
|
* src/cairo-pattern.c: Make non-exported
|
|
cairo_pattern_nil_* static.
|
|
|
|
2005-08-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* BUGS: ref_counts will go negative: COVERED by
|
|
https://bugs.freedesktop.org/show_bug.cgi?id=4198
|
|
|
|
2005-08-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* BUGS: Remove several entries in an effort to obsolete the BUGS
|
|
file in favor of bugzilla and cairo/test. Specifically:
|
|
|
|
cairo_image_surface_create should clear image: NOTABUG. The user
|
|
can clear if desired, and cairo clearing unconditionally would
|
|
be performance overhead).
|
|
|
|
cairo_clip is really slow: FIXED/COVERED. Since the time this
|
|
entry was added we've got rectangular, pixel-alignend clipping
|
|
optimized. And there's a bug in bugzilla
|
|
(https://bugs.freedesktop.org/show_bug.cgi?id=4191) for
|
|
optimizing IN.
|
|
|
|
self-intersecting path is wrong: COVERED by
|
|
test/self-intersecting.c.
|
|
|
|
Cairo is crashing Xnest: NEEDINFO. Is this still happening? Xfake
|
|
has been working quite well for a very long time now.
|
|
|
|
font-size="0" in SVG does bad things: FIXED.
|
|
|
|
2005-08-22 Bertram Felgenhauer <int-e@gmx.de>
|
|
|
|
* src/cairoint.h, src/cairo-matrix.c
|
|
(_cairo_matrix_compute_eigen_values): remove.
|
|
|
|
2005-08-22 Bertram Felgenhauer <int-e@gmx.de>
|
|
|
|
* src/cairo-arc.c (_arc_segments_needed): correct the calculation of
|
|
the error bound.
|
|
|
|
2005-08-22 Bertram Felgenhauer <int-e@gmx.de>
|
|
|
|
* src/cairo-pen.c (_cairo_pen_vertices_needed): use new function.
|
|
strip comment of derivation for major axis length.
|
|
|
|
* src/cairo-matrix.c (_cairo_matrix_transformed_circle_major_axis):
|
|
use _cairo_matrix_get_affine to retrieve matrix entries.
|
|
|
|
* src/cairoint.h, src/cairo-matrix.c
|
|
(_cairo_matrix_transformed_circle_major_axis): new function split out
|
|
of cairo-pen.c. UTF8-ify the comment that explains the calculation.
|
|
|
|
2005-08-22 Bertram Felgenhauer <int-e@gmx.de>
|
|
|
|
* src/cairo-pen.c (_cairo_pen_vertices_needed): use correctly
|
|
transposed version of the matrix and fix up the comments above
|
|
to use row vector notation.
|
|
|
|
2005-08-22 Tor Lillqvist <tml@novell.com>
|
|
|
|
* configure.in: Calculate LT_CURRENT_MINUS_AGE (which forms part
|
|
of the DLL name on Win32), and AC_SUBST it.
|
|
|
|
* Makefile.am: Add target "zips" to create zip file based
|
|
distribution for Win32.
|
|
|
|
* src/Makefile.am: Produce a cairo.def file for distribution by
|
|
preprocessing the relevant header files and grepping for
|
|
declarations of functions that start with cairo_. Works for now,
|
|
will have to modify later if necessary. Use the .def file when
|
|
linking on Win32.
|
|
|
|
2005-08-22 Owen Taylor <otaylor@redhat.com>
|
|
|
|
Support artificial bold fonts with FC_EMBOLDEN; patch
|
|
from Jackey Yang and sunmoon1997.
|
|
|
|
* configure.in: Check for FT_GlyphSlot_Embolden()
|
|
|
|
* src/cairo-ft-font.c: Call FT_GlyphSlot_Embolden for
|
|
fonts where FC_EMBOLDEN is set but that aren't bold.
|
|
Add another private flag for this.
|
|
|
|
2005-08-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am (EXTRA_DIST): Fix typo that was causing make
|
|
dist to fail.
|
|
|
|
2005-08-22 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* test/text-rotate.c (draw): Use floor(0.5+x) rather than
|
|
round(), which is C99. (David Hollenberg)
|
|
|
|
2005-08-22 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* autogen.sh: Set LC_ALL=C rather than LANG and LC_NUMERIC to be
|
|
robust against whatever settings the user has. (Martin Dobias)
|
|
|
|
2005-08-21 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* src/cairo.c: (cairo_paint_with_alpha): Optimize away calls to
|
|
cairo_paint_with_alpha() if the alpha value given is <= 0.
|
|
|
|
* src/cairoint.h: Add a new macro CAIRO_ALPHA_IS_ZERO.
|
|
|
|
2005-08-21 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
Fix for bug #4172:
|
|
|
|
* src/cairo-pattern.c: (_cairo_pattern_shader_gaussian),
|
|
(_cairo_image_data_set_linear), (_cairo_image_data_set_radial):
|
|
Use _cairo_fixed_to_double and _cairo_double_to_fixed when converting
|
|
between double and 16.16 fixed point. These functions round nicely,
|
|
and solve some inconsistencies in rendering between my PPC and x86
|
|
machines. Thanks to Owen Taylor for suggesting the fix.
|
|
|
|
* test/gradient-alpha-ref.png:
|
|
* test/linear-gradient-ref.png:
|
|
* test/text-pattern-ref.png: The above change does affect linear
|
|
gradients slightly, but it seems worth it. Update the reference
|
|
images to follow.
|
|
|
|
2005-08-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-surface.c (_cairo_surface_acquire_dest_image): Remove
|
|
stray doc sentence that wasn't meant to be committed.
|
|
|
|
2005-08-21 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
Fix for bug #4165:
|
|
|
|
* src/cairo-hull.c: (_cairo_hull_vertex_compare): Use pointer
|
|
comparison for coincident points to ensure a well-defined
|
|
ordering, and avoid setting discard on both points. This fixes
|
|
problems with my Mac's implementation of qsort. Final patch by
|
|
Bertram Felgenhauer.
|
|
|
|
* test/clip-operator-ref.png:
|
|
* test/linear-gradient-ref.png:
|
|
* test/operator-clear-ref.png:
|
|
* test/operator-source-ref.png:
|
|
* test/unantialiased-shapes-ref.png:
|
|
* test/unbounded-operator-ref.png: Update reference images after
|
|
the change.
|
|
|
|
2005-08-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* autogen.sh: Check automake-<ver> if automake isn't sufficiently
|
|
new. (#3593, Philip Van Hoof)
|
|
|
|
2005-08-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* autogen.sh: When invoked as, say, ../autogen.sh, switch to
|
|
the sourcedir to run the auto*. Based on corresponding code
|
|
in GTK+'s autogen.sh. (#3402, Thomas Fitzsimmons)
|
|
|
|
* gtk-doc.make: Update from gtk-doc CVS, bringing in some
|
|
minor output changes. (Eliminate the *** from the messages
|
|
that don't indicate errors.)
|
|
|
|
* doc/public/Makefile.am (EXTRA_DIST): Use += for EXTRA_DIST,
|
|
since gtk-doc.make already defines it.
|
|
|
|
2005-08-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* configure.in: Check for FT_Load_Sfnt_Table and disable
|
|
the PDF/PS backends if not found. (#4144, Billy Biggs)
|
|
|
|
2005-08-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-surface.c (_cairo_surface_clone_similar): Fix the
|
|
handling of backend->clone_similar == NULL. (#4161,
|
|
Christian Biesinger)
|
|
|
|
2005-08-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-surface.c: Improve the documentation of internal
|
|
functions. (Based on a patch from Christian Biesinger, #4162)
|
|
|
|
2005-08-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal):
|
|
Recognize gentoo's (and maybe other distro's) modified
|
|
server vendor string, where extra text is added to the
|
|
upstream value. (#4068, reported by Doug Goldstein, others.
|
|
Patch from Mart Raudsepp)
|
|
|
|
2005-08-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-ft-font.c (_cairo_ft_unscaled_font_create_glyph):
|
|
Don't try to transform val->image when it is NULL.
|
|
(#4163, Mathias Hasselmann)
|
|
|
|
2005-08-20 Carl Worth <cworth@cworth.org>
|
|
|
|
Fix for bug #4142:
|
|
|
|
* test/cairo-test.c (create_xlib_surface): Disable xlib tests on X
|
|
servers without the Render, since they currently just crash
|
|
there. A better long-term fix would be to do some useful tests in
|
|
this case. Thanks to Tim Mooney.
|
|
|
|
2005-08-20 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal):
|
|
Include Xfree86-4.5 in the blacklist. (Reported by
|
|
Andrew Benton)
|
|
|
|
2005-08-20 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
Fix for bug #4096:
|
|
|
|
* src/cairo-png.c: (multiply_alpha), (premultiply_data): Improve
|
|
the performance of png reading by adding special cases for fully
|
|
transparent and fully opaque alpha, and using the standard
|
|
optimization for 8-bit division by 255.
|
|
|
|
* src/cairoint.h: Add an INLINE macro for gcc.
|
|
|
|
2005-08-19 Carl Worth <cworth@cworth.org>
|
|
|
|
From Bertram Felgenhauer <int-e@gmx.de>:
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/rectangle-rounding-error-ref.png:
|
|
* test/rectangle-rounding-error.c: (draw), (main):
|
|
Add regression test for bug #4137 (fixed earlier).
|
|
|
|
2005-08-19 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* test/pixman-rotate.c: No need to include cairo-pdf.h.
|
|
|
|
2005-08-19 Carl Worth <cworth@cworth.org>
|
|
|
|
Fix for bug #4137:
|
|
|
|
* src/cairo-fixed.c: (_cairo_fixed_from_double): Fix to round
|
|
properly.
|
|
|
|
2005-08-19 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-pdf-surface.c (_cairo_pdf_surface_show_glyphs):
|
|
Ignore really small fonts, since size zero fonts give xpdf
|
|
fits. (#2938)
|
|
|
|
2005-08-19 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-font.c: (_cairo_scaled_font_set_error): Fix to
|
|
actually test scaled_font->status instead of just having a comment
|
|
that claims to test it. Thanks to Behdad Esfahbod
|
|
<behdad@cs.toronto.edu>.
|
|
|
|
2005-08-18 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_composite): We need
|
|
the call to fixup_unbounded when we optimize the RENDER operator
|
|
to XCopyArea as well.
|
|
|
|
2005-08-19 Carl Worth <cworth@cworth.org>
|
|
|
|
Fixes for a general problem of which bug #4094 was a specific
|
|
instance:
|
|
|
|
* src/cairo.c: (_cairo_set_error):
|
|
* src/cairo-font.c: (_cairo_scaled_font_set_error):
|
|
* src/cairo-pattern.c: (_cairo_pattern_set_error):
|
|
* src/cairo-surface.c: (_cairo_surface_set_error):
|
|
Don't change the status value if it already holds an error. This
|
|
avoids destroying "first error" information and also avoids
|
|
attempting to write read-only data, (eg. from nil objects).
|
|
|
|
* src/cairo-font.c:
|
|
(cairo_scaled_font_extents), (cairo_scaled_font_glyph_extents):
|
|
* src/cairo-pattern.c::
|
|
(cairo_pattern_create_rgb), (cairo_pattern_create_rgba):
|
|
* src/cairo-surface.c:
|
|
(cairo_surface_flush), (cairo_surface_mark_dirty_rectangle),
|
|
(cairo_surface_set_device_offset):
|
|
* src/cairo-win32-font.c: (cairo_win32_scaled_font_select_font):
|
|
* src/cairo.c: (cairo_save), (cairo_restore),
|
|
(cairo_set_operator), (cairo_set_source_rgb),
|
|
(cairo_set_source_rgba), (cairo_set_source_surface),
|
|
(cairo_set_source), (cairo_set_tolerance), (cairo_set_antialias),
|
|
(cairo_set_fill_rule), (cairo_set_line_width),
|
|
(cairo_set_line_cap), (cairo_set_line_join), (cairo_set_dash),
|
|
(cairo_set_miter_limit), (cairo_translate), (cairo_scale),
|
|
(cairo_rotate), (cairo_transform), (cairo_set_matrix),
|
|
(cairo_identity_matrix), (cairo_user_to_device),
|
|
(cairo_user_to_device_distance), (cairo_device_to_user),
|
|
(cairo_device_to_user_distance), (cairo_new_path), (cairo_move_to),
|
|
(cairo_line_to), (cairo_curve_to), (cairo_arc),
|
|
(cairo_arc_negative), (cairo_rel_move_to), (cairo_rel_line_to),
|
|
(cairo_rel_curve_to), (cairo_rectangle), (cairo_close_path),
|
|
(cairo_paint), (cairo_paint_with_alpha), (cairo_mask),
|
|
(cairo_mask_surface), (cairo_stroke_preserve),
|
|
(cairo_fill_preserve), (cairo_copy_page), (cairo_show_page),
|
|
(cairo_in_stroke), (cairo_in_fill), (cairo_stroke_extents),
|
|
(cairo_fill_extents), (cairo_clip_preserve), (cairo_reset_clip),
|
|
(cairo_select_font_face), (cairo_get_font_face),
|
|
(cairo_font_extents), (cairo_set_font_face), (cairo_set_font_size),
|
|
(cairo_set_font_matrix), (cairo_set_font_options),
|
|
(cairo_text_extents), (cairo_glyph_extents), (cairo_show_text),
|
|
(cairo_show_glyphs), (cairo_text_path), (cairo_glyph_path),
|
|
(cairo_append_path):
|
|
Don't set an error on the same object if it is in an error state
|
|
to begin with, just return immediately. This is intended to reduce
|
|
(eventual) error prints to the first cause of an error for any
|
|
given object, instead of a continual spew.
|
|
|
|
2005-08-19 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-ps-surface.c (cairo_ps_surface_set_dpi): Add this
|
|
missing fuction.
|
|
|
|
* src/cairo-pdf-surface.c (cairo_pdf_surface_create): Document
|
|
this funtion.
|
|
|
|
2005-08-19 Carl Worth <cworth@cworth.org>
|
|
|
|
Fix for bug #2729:
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_set_dash): Adjust negative
|
|
offsets up to their equivalent positive value. Add error checking
|
|
for dash values, (must each be non-negative and must not be all
|
|
zero).
|
|
|
|
* src/cairo.c (cairo_set_dash): Add documentation.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: (cairo_status_to_string): Add new
|
|
CAIRO_STATUS_INVALID_DASH.
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am: Add dash-offfset-negative test from Owen.
|
|
|
|
* doc/public/tmpl/cairo.sgml: churn
|
|
|
|
2005-08-19 Carl Worth <cworth@cworth.org>
|
|
|
|
Fix for bug #3915:
|
|
|
|
* src/cairo-pattern.c: (_cairo_pattern_nil_for_status): Add new
|
|
NULL_POINTER nil pattern.
|
|
|
|
* src/cairo-pattern.c: (cairo_pattern_create_for_surface): Check
|
|
for surface == NULL and return a nil pattern.
|
|
|
|
* test/nil-surface.c: (draw): Verify that the above fix works.
|
|
|
|
2005-08-18 Carl Worth <cworth@cworth.org>
|
|
|
|
Fix for bug #4088:
|
|
|
|
* src/cairo-pattern.c: (_cairo_pattern_nil_for_status):
|
|
New function to return the current nil pattern depending on the
|
|
status.
|
|
|
|
* src/cairo-pattern.c: (cairo_pattern_create_for_surface):
|
|
* src/cairo-pattern.c: (_cairo_pattern_init_for_surface): Add
|
|
missing early bailout on surface->status with error propagation to
|
|
the pattern.
|
|
|
|
Related cleanups for cairo_pattern_t:
|
|
|
|
* src/cairo-pattern.c: (_cairo_gradient_pattern_init_copy): Don't
|
|
check other->status since this is a static function.
|
|
|
|
* src/cairo-pattern.c: (_cairo_pattern_init_copy): Add missing
|
|
early bailout on other->status.
|
|
|
|
* src/cairo-pattern.c: (_cairo_pattern_fini): Cleanup identifier
|
|
names.
|
|
|
|
* src/cairo-pattern.c: (_cairo_pattern_create_solid),
|
|
(cairo_pattern_create_linear), (cairo_pattern_create_radial):
|
|
Track rename of nil patterns.
|
|
|
|
* src/cairo-pattern.c: (cairo_pattern_set_matrix),
|
|
(cairo_pattern_set_filter),
|
|
(cairo_pattern_set_extend): Don't call _cairo_error for
|
|
pre-existing errors.
|
|
|
|
* src/cairo-pattern.c: (_cairo_pattern_acquire_surface): Take care
|
|
to initialize some fields to that _cairo_pattern_release_surface
|
|
will work even after an error.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo.c: (cairo_get_source): Track rename of
|
|
cairo_solid_pattern_nil to cairo_pattern_nil.
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/nil-surface-ref.png:
|
|
* test/nil-surface.c: (draw), (main): New test to ensure that a
|
|
file-not-found error will propagate from a surface, through a
|
|
pattern, and onto a cairo_t.
|
|
|
|
2005-08-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.valgrind-suppressions: Suppress a pthread initialization
|
|
error now that tests are linked with -lpthread.
|
|
|
|
2005-08-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-pattern.c: Fix documentation comment to use & in
|
|
place of &.
|
|
|
|
2005-08-18 Owen Taylor <otaylor@redhat.com>
|
|
|
|
Reviewed by: krh
|
|
|
|
* configure.in: Fix tests to just disable FreeType if a too-old FreeType
|
|
is found, rather than erroring out. (#2298)
|
|
|
|
2005-08-18 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_show_glyphs): Fix offset
|
|
passed in for source patterns. (#2333, Tim Rowley)
|
|
|
|
* test/text-pattern.c: Fix font to Vera Sans rather than "Sans"
|
|
|
|
2005-08-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Update the roadmap. Remove difficulty rating from
|
|
completed tasks. Note that PostScript/PDF is (grudgingly) done as
|
|
far as 1.0 is concerned, but there is more work to completing this
|
|
that is slipped beyond 1.0. Note that the deadlock bug is fixed as
|
|
of 0.9.2. Update who is working on what for performance. Add some
|
|
new detail for post-1.0 PostScript/PDF work. Slip the overlapping
|
|
source/dest Render workaround past 1.0.
|
|
|
|
2005-08-18 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* test/text-pattern.c: Add a test for bug #2333 (Tim Rowley)
|
|
|
|
2005-08-17 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-gstate.c: Implement new equations for CLEAR and SOURCE
|
|
CLEAR: (mask IN clip) ? 0 : dest
|
|
SOURCE: (mask IN clip) ? src : dest
|
|
That behave more like what people expect.
|
|
|
|
* src/cairo-gstate.c (_cairo_operator_bounded): CLEAR and SOURCE are
|
|
now bounded.
|
|
|
|
* src/cairo-font.c (_cairo_ft_scaled_font_show_glyphs)
|
|
* src/cairo-surface.c (_cairo_surface_composite_trapezoids):
|
|
Assert that SOURCE and CLEAR aren't passed to these functions.
|
|
|
|
* src/cairo-surface.c (_cairo_surface_composite):
|
|
Assert that SOURCE and CLEAR aren't passed to these functions
|
|
when there is a mask.
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_composite)
|
|
* src/cairo-image-surface.c (_cairo_image_surface_composite):
|
|
Do fixups for SOURCE and CLEAR as well as unbounded operators,
|
|
since in the absence of a mask, we need SOURCE to work
|
|
correctly (don't care about CLEAR)
|
|
|
|
* src/cairo-ft-font.c (_transform_glyph_bitmap, _cairo_ft_font_show_glyphs)
|
|
Consistently use CLEAR/TRANSPARENT (source doesn't matter)
|
|
rather than SOURCE/TRANSPARENT when clearing rectangles.
|
|
|
|
* src/cairo-xlib-surface.c src/cairo-surface.c: Use
|
|
IN rather than SOURCE as an example of an unbounded operator in
|
|
docs.
|
|
|
|
* test/unbounded-operator.c: Remove CLEAR/SOURCE columns since
|
|
they are no longer unbounded.
|
|
|
|
* test/operator-clear.c test/operator-source Makefile.am: Add
|
|
targetted tests of CLEAR/SOURCE.
|
|
|
|
2005-08-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-quartz-surface.c
|
|
(_cairo_quartz_surface_acquire_source_image): Fix to not leak
|
|
surface->cgImage on out-of-memory (thanks to Josh Aas
|
|
<joshmoz@gmail.com>).
|
|
|
|
2005-08-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-fixed.c: (_cairo_fixed_integer_ceil): Fix to not
|
|
right-shift a negative number when called with an argument of 0.
|
|
|
|
2005-08-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c: (cairo_test_expecting): Disable
|
|
not-yet-implemented quartz stuff.
|
|
|
|
2005-08-18 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* doc/public/version.xml.in: Add an autoconf-generated version
|
|
file to advertise what cairo version the manual was generated
|
|
for. Idea taken from the GTK+ documentation.
|
|
|
|
* doc/public/cairo-docs.xml: Include the version number, along
|
|
with the title, in a bookinfo section.
|
|
|
|
* doc/public/Makefile.am: Add the version.xml.in to the dist.
|
|
|
|
* doc/public/.cvsignore: Ignore version.xml.
|
|
|
|
* configure.in: Generate doc/public/version.xml.
|
|
|
|
2005-08-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* Makefile.am: Clear setgid bit on regular files prior to tarring
|
|
up a release.
|
|
|
|
2005-08-18 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* configure.in: Fix typo in freetype configure check.
|
|
|
|
2005-08-17 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* configure.in: Try to use pkg-config to detect freetype2, then
|
|
fall back to the existing freetype-config based check.
|
|
|
|
2005-08-17 Carl Worth <cworth@cworth.org>
|
|
|
|
Fixes for bug #4110:
|
|
|
|
* src/cairo-ft-font.c (_cairo_ft_unscaled_font_init): Don't call
|
|
_cairo_ft_unscaled_font_init_key in the from_face case, just clear
|
|
filename and id instead. Initialize unscaled->base first so that
|
|
initialization order matches the structure declaration order.
|
|
|
|
* src/cairo-cache.c (_cairo_hash_string): Fix to accept a NULL
|
|
string and hash it identically to a zero-length string.
|
|
|
|
* test/Makefile.am:
|
|
* test/ft-font-create-for-ft-face: Add a test that calls
|
|
cairo_ft_font_create_for_ft_face to demonstrate bug #4110.
|
|
|
|
2005-08-16 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* test/filter-nearest-offset.c: (draw): Fix the filter-nearest-offset
|
|
test to actually test CAIRO_FILTER_NEAREST.
|
|
|
|
2005-08-16 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-region.c (_cairo_region_rectangle_extents)
|
|
(_cairo_region_create_from_rectangle) src/cairoint.h: Split out
|
|
a couple of useful utility functions.
|
|
|
|
* src/cairo-clip.c src/cairo-gstate.c: Use them.
|
|
|
|
* src/cairo-surface.c (_cairo_surface_fill_region): Move code to
|
|
fill a pixman_region16_t to here.
|
|
|
|
* src/cairo-surface.c (_cairo_surface_fill_rectangle)
|
|
* src/cairo-surface.c (_cairo_surface_fill_rectangles): Document.
|
|
|
|
* src/cairo-gstate.c (_cairo_surface_clip_and_composite_trapezoids):
|
|
Use _cairo_surface_fill_region().
|
|
|
|
* src/cairo-surface.c (_cairo_surface_composite_fixup_unbounded):
|
|
Add a return status, use regions to simplify.
|
|
|
|
* src/cairoint.h
|
|
* src/cairo-image-surface.c (_cairo_image_surface_composite)
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_composite)
|
|
(_show_glyphs_fixup_unbounded): Handle the return value from
|
|
_cairo_surface_composite_fixup_unbounded().
|
|
|
|
* src/cairo-surface.c src/cairoint.h
|
|
(_cairo_surface_composite_shape_fixup_unbounded): Add a variant
|
|
of _cairo_surface_composite_fixup_unbounded() to avoid creating
|
|
a dummy cairo_surface_attributes_t.
|
|
|
|
* src/cairo-xlib-surface (_show_glyphs_fixup_unbounded):
|
|
Use _cairo_surface_composite_shape_fixup_unbounded().
|
|
|
|
* src/cairo-image-surface.c (_cairo_image_surface_composite_trapezoids)
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_composite_trapezoids):
|
|
Call _cairo_surface_composite_shape_fixup_unbounded(), since the source
|
|
might still be restricted, even though the mask is unbounded.
|
|
|
|
* src/cairo-gstate.c (_cairo_surface_clip_and_composite_trapezoids):
|
|
Restore the rectangle optizations when drawing with unbounded
|
|
operators by adding a clear for the extra area after drawing
|
|
the rectangles.
|
|
|
|
2005-08-16 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* configure.in: Add a check for the MMX intrinsics used by pixman.
|
|
gcc >= 3.4 is required.
|
|
|
|
2005-08-16 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h (CAIRO_PRINTF_FORMAT): Rename cairo_printf_format
|
|
to CAIRO_PRINTF_FORMAT. Fix syntax error in the case of an empty
|
|
definition. (Thanks to Vladimir Vukicevic).
|
|
|
|
2005-08-14 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-ft-font.c (_cairo_ft_unscaled_font_lock_face): Zero
|
|
out 'entry', not 'unscaled' when evicting face from cache.
|
|
|
|
2005-08-13 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-ps-surface.c: (_ps_output_fill_rectangles): Fix a
|
|
mismatch between printf arguments and format string (thanks to
|
|
Adrian Johnson).
|
|
|
|
* src/cairoint.h (cairo_printf_format): Add macro to mark printf
|
|
like functions.
|
|
|
|
2005-08-13 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* Makefile.am (DIST_SUBDIRS): Change docREEL back to doc.
|
|
(Found by Kjartan Maraas)
|
|
|
|
2005-08-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* NEWS: Fix typo ('internal' should have been 'external').
|
|
|
|
2005-08-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.9.3 after tagging
|
|
RELEASE_0_9_2.
|
|
|
|
* Makefile.am (release-publish): Slight rewording of announcement
|
|
email.
|
|
|
|
2005-08-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* NEWS: Added notes for release 0.9.2.
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.9.2 and libtool
|
|
versioning to 3:1:1.
|
|
|
|
* RELEASING: Remove some more 'snapshot' language. Make it more
|
|
clear that the libtool versioning numbers need to be updated.
|
|
|
|
2005-08-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-pattern.c: Fix unterminated comment that eliminated
|
|
cairo_pattern_add_color_stop_rgba.
|
|
|
|
2005-08-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* NEWS: Add missing notes on soname and user-space locking for
|
|
cairo_set_source() to the 0.9.0 release notes.
|
|
|
|
* src/cairo-pattern.c: Document cairo_pattern_add_color_stop_rgb,
|
|
cairo_pattern_add_color_stop_rgba, cairo_pattern_set_matrix, and
|
|
cairo_pattern_get_matrix.
|
|
|
|
* src/cairo.c: Add note on user-space locking to the documentation
|
|
for cairo_set_source().
|
|
|
|
2005-08-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Turn the mutex code back on. It looks like the
|
|
deadlocks have disappeared as of the cairo_scaled_font_map patch
|
|
from two days ago.
|
|
|
|
* configure.in: Setup an automake conditional for the HAVE_PTHREAD
|
|
case.
|
|
|
|
* test/Makefile.am: Link all tests with -lpthread if available, so
|
|
that we can get some testing of cairo with mutexes turned on.
|
|
|
|
2005-08-13 Carl Worth <cworth@cworth.org>
|
|
|
|
Minor, cosmetic changes:
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_lock_face): Reowrd
|
|
comment to be more clear.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_scaled_font_create): Prefer
|
|
return of address of base field rather than cast.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_face_destroy): Whitespace
|
|
fix.
|
|
|
|
2005-08-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_map_create),
|
|
(_cairo_ft_unscaled_font_init_key), (_cairo_ft_unscaled_font_init),
|
|
(_cairo_unscaled_font_is_ft), (_cairo_ft_unscaled_font_fini),
|
|
(_cairo_ft_unscaled_font_keys_equal),
|
|
(_cairo_ft_unscaled_font_create_from_face),
|
|
(_cairo_ft_unscaled_font_destroy): Shuffle functions around to put
|
|
them in a sane order within the file. There should be no
|
|
functional change here.
|
|
|
|
2005-08-11 Carl Worth <cworth@cworth.org>
|
|
|
|
Reviewed by: keithp
|
|
|
|
* src/cairoint.h: Add hash_entry field to cairo_scaled_font_t so
|
|
that it can be hashed.
|
|
|
|
* src/cairo-font.c: (_cairo_scaled_font_map_lock),
|
|
(_cairo_scaled_font_map_unlock), (_cairo_scaled_font_map_destroy),
|
|
(_cairo_scaled_font_init_key), (_cairo_scaled_font_keys_equal),
|
|
(_cairo_scaled_font_init), (_cairo_scaled_font_fini),
|
|
(cairo_scaled_font_create), (cairo_scaled_font_reference),
|
|
(cairo_scaled_font_destroy), (_cairo_font_reset_static_data):
|
|
Convert the font_face/matrix/ctm/options => cairo_scaled_font_t
|
|
mapping from a two-layer cairo-cache.c implementation to a single
|
|
cairo-hash.c implementation backed by a simple array for the
|
|
secondary cache.
|
|
|
|
2005-08-13 Behdad Esfahbod <behdad@behdad.org>
|
|
|
|
* src/cairo-path-data.c (_cairo_path_data_append_to_context):
|
|
Move checks for invalid number of points before the calls that
|
|
use the points.
|
|
|
|
2005-08-13 Behdad Esfahbod <behdad@behdad.org>
|
|
|
|
* src/cairo-color.c: Fix conversion to short, to get a uniform
|
|
range even for 0xffff. In other words, a color component of
|
|
of (1.0 - epsilon) would convert to 0xffff, not 0xfffe.
|
|
|
|
2005-08-13 Behdad Esfahbod <behdad@behdad.org>
|
|
|
|
* RELEASING:
|
|
* Makefile.am: Generate sh1sum instead of md5sum. Use gpg to
|
|
sign it. You need gpg set up.
|
|
|
|
2005-08-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* RELEASING:
|
|
* Makefile.am: Move tagging from an instruction in RELEASING to
|
|
an automated step at the end of release-publish.
|
|
|
|
2005-08-13 Behdad Esfahbod <behdad@behdad.org>
|
|
|
|
* Makefile.am (release-publish): Check that the micro component
|
|
of the version number is even.
|
|
|
|
* RELEASING: Fixed the pattern to find all public header files.
|
|
|
|
2005-08-11 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-font.c (_cairo_toy_font_face_fini): Fix inverted sense
|
|
of assert statement which led to lots of unpleasant crashes.
|
|
|
|
2005-08-08 Carl Worth <cworth@cworth.org>
|
|
|
|
Reviewed by: keithp
|
|
|
|
* src/cairoint.h: Add hash_entry field to cairo_font_face_t so
|
|
that it can (optionally) be hashed.
|
|
|
|
* src/cairo-font.c: (_cairo_toy_font_face_hash_table_lock),
|
|
(_cairo_toy_font_face_hash_table_unlock),
|
|
(_cairo_toy_font_face_init_key), (_cairo_toy_font_face_init),
|
|
(_cairo_toy_font_face_fini), (_cairo_toy_font_face_keys_equal),
|
|
(_cairo_toy_font_face_create), (_cairo_toy_font_face_destroy),
|
|
(_cairo_toy_font_face_scaled_font_create),
|
|
(_cairo_font_reset_static_data): Complete the remainder of the
|
|
simple -> toy renaming. Convert the family/slant/weight ->
|
|
cairo_toy_font_face_t mapping to use cairo-hash.c rather
|
|
than cairo-cache.c.
|
|
|
|
2005-08-11 Carl Worth <cworth@cworth.org>
|
|
|
|
Reviewed by: keithp
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_init),
|
|
(_cairo_ft_unscaled_font_init_key),
|
|
(_cairo_ft_unscaled_font_keys_equal),
|
|
(_cairo_ft_unscaled_font_fini),
|
|
(_cairo_ft_unscaled_font_map_destroy),
|
|
(_cairo_ft_unscaled_font_map_lock),
|
|
(_cairo_ft_unscaled_font_map_unlock),
|
|
(_cairo_ft_unscaled_font_map_create),
|
|
(_cairo_ft_unscaled_font_create_for_pattern), (_has_unlocked_face),
|
|
(_cairo_ft_unscaled_font_lock_face),
|
|
(_cairo_ft_unscaled_font_destroy),
|
|
(_cairo_ft_scaled_font_create_toy),
|
|
(cairo_ft_font_face_create_for_pattern),
|
|
(_cairo_ft_font_reset_static_data):
|
|
Move implementation of filename/id => cairo_ft_unscaled_font_t
|
|
from cairo-cache.c to cairo-hash.c, with new
|
|
cairo_ft_unscaled_font_map.
|
|
|
|
* src/cairoint.h: Add cairo_unscaled_font->hash_entry so that
|
|
unscaled fonts can live in hash tables.
|
|
|
|
2005-08-08 Carl Worth <cworth@cworth.org>
|
|
|
|
Reviewed by: otaylor
|
|
|
|
* src/cairoint.h: Re-order cairo_scaled_font->font_face parameter
|
|
to maintain the font_face,font_matrix,ctm,options order that
|
|
prevails throughout the implementation. Add font_face parameter to
|
|
_cairo_scaled_font_init.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-atsui-font.c: (_cairo_atsui_font_create_toy):
|
|
* src/cairo-win32-font.c: (_cairo_win32_scaled_font_create_toy):
|
|
* src/cairo-ft-font.c: (_cairo_ft_scaled_font_create_toy):
|
|
Remove const qualifier from toy_face parameter to creat_toy, as
|
|
these functions may reference the font face. Track addition of
|
|
font_face parameter to _cairo_scaled_font_init.
|
|
|
|
* src/cairo-font.c: (_cairo_inner_font_cache_create_entry),
|
|
(_cairo_scaled_font_init): Implement font_face parameter to
|
|
_cairo_scaled_font_init, moving the reference of the font_face
|
|
from _cairo_inner_font_cache_create_entry.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_scaled_font_create): Add a
|
|
font_face parameter in addition to the unscaled_font parameter.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_face_scaled_font_create):
|
|
Track new font_face parameter to _cairo_ft_scaled_font_create.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_face_create),
|
|
(cairo_ft_scaled_font_lock_face): Whitespace touchup.
|
|
|
|
2005-08-10 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* test/clip-operator-ref.png: Update to match the output from
|
|
libpixman.
|
|
|
|
2005-08-10 Carl Worth <cworth@cworth.org>
|
|
|
|
Thanks to Olivier Andrieu:
|
|
|
|
* NEWS: Add mention of cairo_get_antialias. Fix to mention
|
|
cairo_surface_flush by its correct name, (rather than the
|
|
non-existent cairo_flush).
|
|
|
|
2005-08-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* doc/public/cairo-docs.xml: Fix id to be cairo rather than
|
|
libglade. (Thanks to Christian Biesinger).
|
|
|
|
2005-08-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: (cairo_version), (cairo_version_string):
|
|
Augment existing CAIRO_VERSION_MAJOR/MINOR/MICRO and
|
|
CAIRO_VERSION_STRING with CAIRO_VERSION_ENCODE and CAIRO_VERSION.
|
|
Add functions for run-time access:
|
|
|
|
cairo_version
|
|
cairo_version_string
|
|
|
|
2005-08-10 Carl Worth <cworth@cworth.org>
|
|
|
|
From Travis Spencer <tspencer@cs.pdx.edu>:
|
|
|
|
* src/cairo-xcb-surface.c:
|
|
(_cairo_xcb_surface_composite_trapezoids): Fix typo causing a
|
|
syntax error.
|
|
|
|
2005-08-10 Keith Packard <keithp@keithp.com>
|
|
|
|
* test/Makefile.am:
|
|
Place private include directives before CAIRO_CFLAGS in case
|
|
pixman remains installed in the system.
|
|
|
|
2005-08-10 Carl Worth <cworth@cworth.org>
|
|
|
|
From Keith Packard <keithp@keithp.com>,
|
|
|
|
Build pixman internally as a private part of cairo, with suitable
|
|
name changes to avoid any visible pixman symbols in the cairo
|
|
library:
|
|
|
|
* Makefile.am: Descend into pixman.
|
|
|
|
* cairo.pc.in: Drop libpixman from Requires.
|
|
|
|
* configure.in: Don't check for libpixman. Check version of
|
|
pkg-config and use Requires.private instead of Requires in
|
|
cairo.pc if possible. Generate pixman Makefiles.
|
|
|
|
* pixman/Makefile.am: Rip out release-publish target and
|
|
installation of libpixman.pc.
|
|
|
|
* pixman/src/Makefile.am: Add pixman-remap.h. Drop libpixman.la
|
|
target.
|
|
|
|
* pixman/src/icint.h: Fix to include "config.h" rather than
|
|
"../config.h"
|
|
|
|
* pixman/src/pixman-remap.h: This is the cpp magic to rename all
|
|
pixman functions from the various fb, Fb, INT_pixman, pixman,
|
|
Render, _Render, or no prefix to _cairo_pixman_ prefixes.
|
|
|
|
* pixman/src/pixman.h: Include pixman-remap.h to get all the
|
|
cairo-internalized names.
|
|
|
|
* src/Makefile.am:
|
|
* test/Makefile.am: Add -I$(top_srcdir)pixman/src to get at
|
|
pixman-remap.h.
|
|
|
|
2005-08-10 Vladimir Vukicevic <vladimir@pobox.com>
|
|
|
|
* src/cairo-glitz-surface.c: Additional fix for 0-width/0-height
|
|
glyphs.
|
|
|
|
2005-08-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* Makefile.am:
|
|
* RELEASING: Change release instructions to indicate new odd-micro
|
|
version for in-progress development, and even-micro for released
|
|
versions. Do a bit of snapshot->release renaming.
|
|
|
|
2005-08-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Change CAIRO_VERSION from 0.9.0-head to 0.9.1.
|
|
|
|
Patch from Behdad Esfahbod <behdad@behdad.org>:
|
|
|
|
* configure.in: Update to use AC_INIT and AM_INIT_AUTOMAKE in
|
|
recommended ways. Add support for substituting
|
|
CAIRO_VERSION_MAJOR/MINOR/MICRO into generated headers.
|
|
|
|
* src/cairo-features.h.in: Add CAIRO_VERSION_MAJOR/MINOR/MICRO and
|
|
CAIRO_VERSION_STRING which are generated by configure.
|
|
|
|
2005-08-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-path-data-private.h:
|
|
* src/cairoint.h: Add cairo_private to the few pieces of data that
|
|
were missing it.
|
|
|
|
2005-08-09 Vladimir Vukicevic <vladimir@pobox.com>
|
|
|
|
* src/cairo-glitz-surface.c: Don't crash on 0-width or 0-height
|
|
glyphs; also correctly initialize entry->key.base.memory with the
|
|
image cache image.
|
|
|
|
* src/cairo-xlib-surface.c (_xlib_glyphset_cache_create_entry):
|
|
Free allocated entry in case of error to avoid leaking memory.
|
|
|
|
2005-08-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-arc-private.h:
|
|
* src/cairo-ft-private.h:
|
|
* src/cairo-meta-surface-private.h:
|
|
* src/cairoint.h: Add cairo_private to several function prototypes
|
|
that were missing it.
|
|
|
|
2005-08-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Note that sane clipping is done now. Add release
|
|
versions for previously completed items.
|
|
|
|
* test/.cvsignore: Ignore unantialiased-shapes.
|
|
|
|
2005-07-29 T Rowley <tim.rowley@gmail.com>
|
|
|
|
* src/cairo-atsui-font.c (_cairo_atsui_font_create_toy):
|
|
Get cairo_toy_font_face_t type right.
|
|
|
|
2005-08-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Add -head to CAIRO_VERSION after tagging with
|
|
RELEASE_0_9_0.
|
|
|
|
2005-08-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* NEWS: Added notes for release 0.9.0.
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.9.0. Increment
|
|
LT_CURRENT to 2 to mark the beginning of proper soname management.
|
|
|
|
2005-08-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/Makefile.am (libcairo_la_SOURCES): Add missing cairo-debug.h
|
|
which was hold up make distcheck.
|
|
|
|
2005-08-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am (EXTRA_DIST): Fix typo that was holding up make
|
|
distcheck from working.
|
|
|
|
2005-08-08 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* src/cairo-path-data-private.h: Declare _cairo_path_nil as extern.
|
|
|
|
2005-08-08 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
reviewed by: cworth, otaylor
|
|
|
|
* src/cairo.c: (cairo_set_antialias), (cairo_get_antialias):
|
|
* src/cairo.h: Add a new API for disabling antialiasing of shapes
|
|
drawn by cairo. This is a hint and is not supported by all backends.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-gstate-private.h:
|
|
* src/cairo-gstate.c: (_cairo_gstate_init),
|
|
(_composite_traps_draw_func),
|
|
(_cairo_surface_clip_and_composite_trapezoids),
|
|
(_cairo_gstate_clip_and_composite_trapezoids),
|
|
(_cairo_gstate_clip), (_cairo_gstate_set_antialias),
|
|
(_cairo_gstate_get_antialias): Store the antialiasing mode in the
|
|
gstate and pass it to the backend for trapezoid rendering and for
|
|
clipping.
|
|
|
|
* src/cairo-clip-private.h:
|
|
* src/cairo-clip.c: (_cairo_clip_intersect_path),
|
|
(_cairo_clip_intersect_mask), (_cairo_clip_clip): Pass the
|
|
antialiasing parameter down to the backend where appropriate.
|
|
|
|
* src/cairo-surface.c: (_fallback_composite_trapezoids),
|
|
(_cairo_surface_composite_trapezoids), (_cairo_surface_reset_clip),
|
|
(_cairo_surface_intersect_clip_path),
|
|
(_cairo_surface_set_clip_path_recursive),
|
|
(_cairo_surface_set_clip_path): Pass the antialiasing parameter down
|
|
to the backend where appropriate.
|
|
|
|
* src/cairo-image-surface.c:
|
|
(_cairo_image_surface_composite_trapezoids): Add support for A1 format
|
|
trapezoid rendering, and remove the _create_mask_image function,
|
|
creating a temporary image from memory we allocate and clear.
|
|
|
|
* src/cairo-xcb-surface.c:
|
|
(_cairo_xcb_surface_composite_trapezoids): Support A1 masks to disable
|
|
antialiasing using the RENDER extension when requested.
|
|
|
|
* src/cairo-xlib-surface.c: (_create_trapezoid_mask),
|
|
(_cairo_xlib_surface_composite_trapezoids): Support A1 masks to disable
|
|
antialiasing using the RENDER extension when requested.
|
|
|
|
* src/cairo-meta-surface-private.h:
|
|
* src/cairo-meta-surface.c:
|
|
(_cairo_meta_surface_composite_trapezoids),
|
|
(_cairo_meta_surface_intersect_clip_path),
|
|
(_cairo_meta_surface_replay): Blindly pass through the antialising
|
|
parameter.
|
|
|
|
* src/cairo-glitz-surface.c:
|
|
(_cairo_glitz_surface_composite_trapezoids):
|
|
* src/cairo-pdf-surface.c:
|
|
(_cairo_pdf_surface_composite_trapezoids),
|
|
(_cairo_pdf_surface_intersect_clip_path):
|
|
* src/cairo-ps-surface.c: (_cairo_ps_surface_composite_trapezoids),
|
|
(_cairo_ps_surface_intersect_clip_path),
|
|
(_ps_output_composite_trapezoids),
|
|
(_ps_output_intersect_clip_path): Add the antialiasing parameter but
|
|
don't support it.
|
|
|
|
* test/Makefile.am:
|
|
* test/unantialiased-shapes-ref.png:
|
|
* test/unantialiased-shapes.c: (big_star_path), (draw), (main):
|
|
Add a test case and a reference image from the latest libpixman.
|
|
|
|
* doc/public/tmpl/cairo-font.sgml:
|
|
* doc/public/tmpl/cairo.sgml:
|
|
* doc/public/cairo-sections.txt: Add the new antialiasing disabling API to
|
|
the docs.
|
|
|
|
* TODO: Update progress on a parameter to disable antialiasing.
|
|
|
|
2005-08-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore: Ignore clip-operator and unbounded-operator.
|
|
|
|
2005-08-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* RELEASING: Fix gnome-announce-list address.
|
|
|
|
2005-08-08 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c (_xlib_glyphset_cache_destroy_entry):
|
|
Don't free the glyph if the entry doesn't have a glyph.
|
|
(Maybe #3909, Carlos Garnacho Parro)
|
|
|
|
2005-08-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c: (_cairo_operator_bounded): Add a return
|
|
value after ASSERT_NOT_REACHED to quiet an anxious compiler.
|
|
|
|
2005-08-08 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-gstate.c: (_cairo_surface_clip_and_composite_trapezoids):
|
|
Fix accidentally committed line.
|
|
|
|
2005-08-08 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-surface.c (_cairo_surface_set_clip_path): Update doc
|
|
comment.
|
|
|
|
2005-08-08 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-gstate.c (_cairo_operator_bounded): Add a function to test
|
|
whether a cairo_operator_t is bounded (does nothing for 0 src/mask)
|
|
|
|
* src/cairo-surface.c (_cairo_surface_composite_fixup_unbounded) cairoint.h:
|
|
Add a helper function to take clearing areas that are outside the source/mask
|
|
but are cleared by unbounded operations.
|
|
|
|
* src/cairo-image-surface.c (_cairo_image_surface_composite)
|
|
src/cairo-xlib-surface.c (_cairo_xlib_surface_composite): Use
|
|
_cairo_surface_composite_fixup_unbounded() as needed.
|
|
|
|
* src/cairo-image-surface.c src/cairint.h: Keep track of whether the surface
|
|
has a clip or not ... we need this for determining when we can bypass
|
|
an intermediate mask for composite_trapezoids().
|
|
|
|
* src/cairo-image-surface.c (_cairo_image_surface_composite_trapezoids):
|
|
Create an intermediate mask of the right size with pixman_add_trapezoids()
|
|
and composite that.
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_composite_trapezoids):
|
|
When rendering with an unbounded operator, create the intermediate mask
|
|
ourselves and render with ADD to that, then composite the result.
|
|
|
|
* src/cairo-ft-font.c (_cairo_ft_scaled_font_show_glyphs): Create an
|
|
intermediate surface the size of the extents, render the glyphs to that
|
|
then composite the results.
|
|
|
|
* src/cairo-xlib-surface.c (glyphset_cache_entry_t): Add the size of the glyph
|
|
|
|
* src/cairo-xlib-surface.c (_show_glyphs_fixup_unbounded): Compute the size
|
|
of the glyph mask, then use _cairo_surface_composite_fixup_unbounded().
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_show_glyphs32): Use the right
|
|
mask format. (Unrelated bugfix)
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_clip_and_composite): New function taking
|
|
a drawing function as a parameter to encapsulate shared logic between
|
|
compositing trapezoid, glyphs, and masks.
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_mask,
|
|
_cairo_surface_clip_and_composite_trapezoids, _cairo_gstate_show_glyphs):
|
|
Use _cairo_gstate_clip_and_composite(). Also fix extents computations for
|
|
unbounded operators.
|
|
|
|
* src/cairo-clip.c src/cairo-clip-private.h (_cairo_clip_combine_to_surface):
|
|
Add the destination as an extra parameter to allow combining to an intermediate
|
|
surface.
|
|
|
|
* tests/unbounded-operator.c tests/Makefile.am: Add a test for the
|
|
operation of the 6 unbounded operators against different shapes.
|
|
|
|
* tests/clip-operator.c tests/Makefile.am: Add a test that tests
|
|
surface clipping with different shapes against all the operators.
|
|
|
|
* test/composite-integer-translate-over-repeat.c (draw): Make use OVER
|
|
like the name and description. With fixed semantics, SOURCE does something
|
|
different.
|
|
|
|
2005-08-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* BUGS: Remove several bugs that have been fixed.
|
|
|
|
* ROADMAP: Slip group support off of the 1.0 roadmap. Update
|
|
status of clipping work which otaylor is working on.
|
|
|
|
* TODO: Update for progress on cairo_surface_mark_dirty
|
|
(committed), non-antialiased rendering (patch), cairo_arc_to
|
|
(patch), consistent error handling (committed), cairo_content_t
|
|
(committed). Remove details for some completed items.
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_set_font_face): Don't crash if
|
|
font_face is NULL, (this is a documented mechanism for returning
|
|
to the default font_face).
|
|
|
|
2005-08-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c (cairo_get_font_face): Fix to return
|
|
&_cairo_font_face_nil instead of NULL on error.
|
|
|
|
2005-08-06 Jeff Muizelaar <jeff@infidigm.net>
|
|
|
|
* test/a8-mask.c: (main): Give reason for failure.
|
|
|
|
2005-08-06 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-win32-font.c (_cairo_win32_scaled_font_show_glyphs):
|
|
Remove a non-sensical XXX that crept in at some point; for
|
|
a solid color, there is no difference between premultiplied
|
|
and non-premultiplied colors.
|
|
|
|
2005-08-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Add a hash_entry as the first member of
|
|
cairo_unscaled_font_t so that in can live in a hash table.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_init),
|
|
(_cairo_ft_unscaled_font_init_key),
|
|
(_cairo_ft_unscaled_font_keys_equal),
|
|
(_cairo_ft_unscaled_font_fini),
|
|
(_cairo_ft_unscaled_font_map_destroy),
|
|
(_cairo_ft_unscaled_font_map_lock),
|
|
(_cairo_ft_unscaled_font_map_unlock),
|
|
(_cairo_ft_unscaled_font_map_create),
|
|
(_cairo_ft_unscaled_font_create_for_pattern), (_has_unlocked_face),
|
|
(_cairo_ft_unscaled_font_lock_face),
|
|
(_cairo_ft_unscaled_font_destroy),
|
|
(_cairo_ft_scaled_font_create_toy),
|
|
(cairo_ft_font_face_create_for_pattern),
|
|
(_cairo_ft_font_reset_static_data): Rewrite the mapping from
|
|
filename/id -> cairo_ft_unscaled_font. The new version uses the
|
|
more appropriate cairo_hash_table_t rather than the awkward
|
|
cairo_cache_backend_t.
|
|
|
|
2005-08-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_scaled_font_create),
|
|
(_cairo_ft_scaled_font_create_toy),
|
|
(_cairo_ft_scaled_font_glyph_extents),
|
|
(_cairo_ft_font_face_scaled_font_create): Fix up some stale
|
|
comments. Rename _cairo_ft_scaled_font_create_for_unscaled to its
|
|
proper name of _cairo_ft_scaled_font_create (which is available
|
|
now that _cairo_ft_scaled_font_create_toy has its correct
|
|
name). Also prefer 'scaled_font' over 'f' as an identifier.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_init),
|
|
(_cairo_ft_unscaled_font_create_from_face),
|
|
(_cairo_ft_unscaled_font_create_from_filename): Unify
|
|
initialization for _cairo_ft_unscaled_font_create_from_face and
|
|
_cairo_ft_unscaled_font_create_from_filename through new
|
|
_cairo_ft_unscaled_font_init.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_face_create): Rename
|
|
_ft_font_face_backend to be preoperly namespaced as
|
|
_cairo_ft_font_face_backend.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_face_destroy),
|
|
(_cairo_ft_font_face_create): Rename cairo_ft_font_face->next_face
|
|
to next.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Include cairo-hash-private.h.
|
|
|
|
* src/Makefile.am (libcairo_la_SOURCES): Add cairo-hash.c and
|
|
cairo-hash-private.h since we're actually going to start using
|
|
them now.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_set_font_face): Simplify the
|
|
implementation by taking advantage of the fact that destroy and
|
|
reference are safe for NULL, and that reference returns its
|
|
argument.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_translate),
|
|
(_cairo_gstate_scale), (_cairo_gstate_rotate),
|
|
(_cairo_gstate_transform), (_cairo_gstate_set_matrix),
|
|
(_cairo_gstate_identity_matrix), (_cairo_gstate_unset_scaled_font),
|
|
(_cairo_gstate_set_font_size), (_cairo_gstate_set_font_matrix),
|
|
(_cairo_gstate_set_font_options),
|
|
(_cairo_gstate_ensure_scaled_font),
|
|
(_cairo_gstate_get_font_extents), (_cairo_gstate_text_to_glyphs),
|
|
(_cairo_gstate_set_font_face), (_cairo_gstate_glyph_extents),
|
|
(_cairo_gstate_show_glyphs), (_cairo_gstate_glyph_path):
|
|
Rename two functions:
|
|
|
|
_cairo_gstate_unset_font -> _cairo_gstate_unset_scaled_font
|
|
_cairo_gstate_ensure_font -> _cairo_gstate_ensure_scaled_font
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Entagle the cairo_unscaled_font_t typedef.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Rename font_face_backend->create_font to
|
|
scaled_font_create. Group the scaled_font prototypes together. A
|
|
little more simple -> toy renaming.
|
|
|
|
* src/cairo-font.c: (_cairo_toy_font_face_create_from_cache_key),
|
|
(_cairo_toy_font_face_destroy),
|
|
(_cairo_toy_font_face_create):
|
|
* src/cairo-gstate.c: (_cairo_gstate_select_font_face),
|
|
(_cairo_gstate_ensure_font_face):
|
|
A little more simple -> toy renaming.
|
|
|
|
* src/cairo-font.c: (_cairo_toy_font_face_scaled_font_create),
|
|
(_cairo_inner_font_cache_create_entry):
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_face_scaled_font_create):
|
|
* src/cairo-win32-font.c: (_cairo_win32_font_face_scaled_font_create):
|
|
Track rename of font_face_backend->scaled_font_create.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Rather gratuitous (though mostly harmless)
|
|
whitespace changes for font backend tables.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c: Document the implicit closing of sub-paths for
|
|
cairo_fill and cairo_fill_preserve.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Rename parameters to scalend_font_backend from
|
|
font to scaled_font.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Rename scaled_font_backend->destroy to the more
|
|
accurate fini, (since it frees only the dependent data within the
|
|
scaled_font and not the scaled_font itself).
|
|
|
|
* src/cairo-atsui-font.c: (_cairo_atsui_font_fini):
|
|
* src/cairo-font.c: (cairo_scaled_font_destroy):
|
|
* src/cairo-ft-font.c: (_cairo_ft_scaled_font_fini):
|
|
* src/cairo-win32-font.c: (_cairo_win32_scaled_font_fini):
|
|
Track rename of scaled_font_backend->fini.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Rename scaled_font_backend->create to
|
|
create_toy. Move declaration of cairo_simple_font_face_t from
|
|
cairo_font.c to cairoint.h and rename it
|
|
cairo_toy_font_face_t. Rework create_toy to accept a
|
|
cairo_toy_font_face_t rather than separate family, slant, and
|
|
weight.
|
|
|
|
* src/cairo-atsui-font.c: (_cairo_atsui_font_create_toy):
|
|
* src/cairo-ft-font.c: (_cairo_ft_scaled_font_create_toy):
|
|
* src/cairo-win32-font.c: (_cairo_win32_scaled_font_create_toy):
|
|
Track change in create_toy interface.
|
|
|
|
* src/cairo-font.c: (_cairo_toy_font_face_create_from_cache_key),
|
|
(_cairo_simple_font_cache_create_entry),
|
|
(_cairo_simple_font_face_destroy),
|
|
(_cairo_simple_font_face_create_font):
|
|
Partial rename of simple->toy. It's not complete as this is a step
|
|
in the process of merging in a large patch of mine which actually
|
|
removes most of the affected code.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore: ignore a8-mask
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/a8-mask.c (draw): Patch memory leaks.
|
|
|
|
2005-08-05 Jeff Muizelaar <jeff@infidigm.net>
|
|
|
|
* test/Makefile.am:
|
|
* test/a8-mask-ref.png:
|
|
* test/a8-mask.c: (draw), (main):
|
|
Add a test case for CAIRO_FORMAT_A8 masks that fails with
|
|
libpixman.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* autogen.sh (automake_min_vers): Bump automake_min_vers up to 1.7
|
|
since we clearly don't work with 1.4 anymore.
|
|
|
|
2005-08-05 Jeff Muizelaar <jeff@infidigm.net>
|
|
|
|
* test/xlib-surface.c: (do_test): use the newly added
|
|
buffer_diff_noalpha for comparing buffers of
|
|
CAIRO_FORMAT_RGB24.
|
|
|
|
2005-08-05 Jeff Muizelaar <jeff@infidigm.net>
|
|
|
|
* test/buffer-diff.c: (buffer_diff_core), (buffer_diff),
|
|
(buffer_diff_noalpha):
|
|
* test/buffer-diff.h: rewrite buffer_diff to be endian safe
|
|
and add a new fuction buffer_diff_noalpha
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* doc/public/cairo-sections.txt: Remove CAIRO_BEGIN_DECLS and
|
|
CAIRO_END_DECLS which don't belong here.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/surface-finish-twice.c (draw): Remove unused variable.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* doc/public/Makefile.am: Ignore cairo-clip-private.h.
|
|
|
|
* doc/public/cairo-docs.xml: Drop non-existent cairo-atsui.xml.
|
|
|
|
* src/cairo-font.c: Fix misnamed parameters in comment blocks.
|
|
|
|
* test/cairo-test.c: Include config.h so HAVE_UNISTD_H gets
|
|
picked up as necessary.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* doc/public/Makefile.am (IGNORE_HFILES): Ignore
|
|
cairo-clip-private.h.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* doc/public/cairo-sections.txt: Add some missing declarations to
|
|
the appropriate sections.
|
|
|
|
* doc/public/tmpl/cairo-font.sgml:
|
|
* doc/public/tmpl/cairo-surface.sgml:
|
|
* doc/public/tmpl/cairo-xlib.sgml:
|
|
* doc/public/tmpl/cairo.sgml: churn
|
|
|
|
* src/cairo-path-data-private.h: Rename cairo_path_nil to
|
|
_cairo_path_nil since it may be exported, and tag it cairo_private
|
|
to try to avoid exporting it. Qualify it as const well.
|
|
|
|
* src/cairo-path-data.c: (_cairo_path_data_create_real):
|
|
* src/cairo.c: (cairo_copy_path), (cairo_copy_path_flat):
|
|
Track new name of _cairo_path_nil and cast away the const as
|
|
required.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-arc.c:
|
|
* src/cairo-matrix.c: Remove include of math.h since cairoint.h
|
|
does it more carefully, (for annoying platforms for which just
|
|
including math.h without extra defines is not enough).
|
|
|
|
* src/cairo.c: Replace Cairo with cairo.
|
|
|
|
* test/buffer-diff.c: Include config.h so HAVE_UNISTD_H gets
|
|
picked up as necessary.
|
|
|
|
* test/cairo-test.c: Fix non-UTF-8 copyright symbol.
|
|
|
|
2005-08-05 Carl Worth <cworth@cworth.org>
|
|
|
|
Patch from John Ehresman <jpe@wingide.com> to aid win32
|
|
compilation:
|
|
|
|
* src/cairo-output-stream.c: Define snprintf as _snprintf when
|
|
under the influence of _MSC_VER.
|
|
|
|
* test/read-png.c: (read_png_argb32):
|
|
* src/cairo-wideint.h: Define int32_t and friends as __int32 and
|
|
friends when under the influence of _MSC_VER.
|
|
|
|
* test/buffer-diff.c:
|
|
* test/cairo-test.c: Make include of unistd.h conditional on
|
|
HAVE_UNISTD_H.
|
|
|
|
2005-08-05 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
Patch from Adrian Johnson <ajohnson@redneon.com>
|
|
|
|
* src/cairo-font-subset.c (cairo_pdf_ft_font_write_glyf_table)
|
|
(cairo_pdf_ft_font_remap_composite_glyph): Remap composite glyps
|
|
to use subset font glyph indices.
|
|
|
|
2005-08-05 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
Reviewed by: otaylor
|
|
|
|
* src/Makefile.am:
|
|
* src/cairo-clip-private.h:
|
|
* src/cairo-clip.c: New files. Move code for manipulating
|
|
cairo_clip_t out into cairo_clip_* functions and put them in
|
|
cairo-clip.c.
|
|
|
|
* src/cairo-gstate-private.h:
|
|
* src/cairo-gstate.c: Rewrite to use new cairo_clip_t functions
|
|
for manipulating the clip state, change the
|
|
clip_and_composite_trapezoids call tree to use cairo_clip_t
|
|
instead of cairo_gstate_t.
|
|
|
|
* src/cairo-meta-surface.c: Use new cairo_clip_t function to
|
|
maintain clip state while replaying.
|
|
|
|
* src/cairo-path-fill.c: (_cairo_filler_init),
|
|
(_cairo_filler_curve_to), (_cairo_path_fixed_fill_to_traps): Pass
|
|
fill rule and tolerance directly, to break gstate dependency.
|
|
|
|
* src/cairo-surface.c: (_cairo_surface_set_clip): New function.
|
|
Set the clip for a surface as specified by the cairo_clip_t.
|
|
|
|
* src/cairo-traps.c: (_cairo_traps_translate): Move
|
|
translate_traps() from cairo-gstate.c to here and rename it.
|
|
|
|
2005-08-04 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-font.c: (cairo_font_face_reference),
|
|
(_cairo_unscaled_font_reference), (cairo_scaled_font_reference):
|
|
* src/cairo-gstate.c: (_cairo_clip_path_reference):
|
|
* src/cairo-pattern.c: (cairo_pattern_reference):
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_document_reference):
|
|
* src/cairo-surface.c: (cairo_surface_reference):
|
|
* src/cairo.c: (cairo_reference):
|
|
* src/cairo.h:
|
|
* src/cairoint.h:
|
|
Change *_reference() functions to return the object being
|
|
referenced.
|
|
|
|
2005-07-29 T Rowley <tim.rowley@gmail.com>
|
|
|
|
Reviewed by: otaylor
|
|
|
|
* src/cairo-xlib-surface.c ( _categorize_composite_operation):
|
|
Check for render bug involving repeated patterns with a general
|
|
transform matrix.
|
|
|
|
2005-08-04 Carl Worth <cworth@cworth.org>
|
|
|
|
Originally 2005-07-13 Carl Worth <cworth@cworth.org>
|
|
|
|
Reviewed by: otaylor
|
|
|
|
* src/cairo-ft-private.h: Export opaque cairo_ft_unscaled_font_t
|
|
and change _cairo_ft_unscaled_font_[un]lock_face to accept
|
|
cairo_ft_unscaled_font_t rather than cairo_unscaled_font_t.
|
|
|
|
* src/cairo-font-subset.c: (_cairo_font_subset_create),
|
|
(cairo_pdf_ft_font_generate): Cast explicitly to
|
|
cairo_ft_unscaled_font_t to track change in prototype of
|
|
_cairo_ft_unscaled_font_[un]lock_face.
|
|
|
|
* src/cairo-ft-font.c: Lots of renaming to use consistent
|
|
namespacing:
|
|
|
|
ft_font_transform_t -> cairo_ft_font_transform_t
|
|
ft_font_face_t -> cairo_ft_font_face_t
|
|
ft_unscaled_font_t -> cairo_ft_unscaled_font_t
|
|
|
|
Add missing _cairo prefix to many functions.
|
|
|
|
Disambiguate _ft_scaled_font_create and
|
|
_cairo_ft_scaled_font_create by renaming the former to
|
|
_cairo_ft_scaled_font_create_for_unscaled.
|
|
|
|
2005-08-03 Carl Worth <cworth@cworth.org>
|
|
|
|
Fix for bug #3951:
|
|
|
|
* configure.in: Add new _CHECK_FUNCS_WITH_FLAGS to abstract out
|
|
the pain of temporarily setting flags for AC_CHECK_FUNCS. Use this
|
|
to check for the existence of FcFini.
|
|
|
|
* test/cairo-test.c: (cairo_test_expecting): Make call to FcFini
|
|
conditional on HAVE_FCFINI.
|
|
|
|
* test/text-cache-crash.c: (main): Remove stale comment about
|
|
cleaning up memory which is now handled by cairo-test.c.
|
|
|
|
2005-08-01 Owen Taylor <otaylor@redhat.com>
|
|
|
|
reviewed by: cworth
|
|
|
|
* src/cairo-gstate.c src/cairo-gstate-private.h: Store the
|
|
inverse CTM at the time of cairo_gstate_set_source() to
|
|
"lock" the user space matrix.
|
|
|
|
* src/cairo-gstate.c: Move the source pattern transformation
|
|
to the outside of _cairo_gstate_clip_and_composite_trapezoids()
|
|
instead of doing it at the leaves.
|
|
|
|
* test/source-surface-scale-paint.c: Change size of output
|
|
surface for aesthetics.
|
|
|
|
* test/source-surface-scale-paint-ref.png: Updated to correspond
|
|
to the current definition.
|
|
|
|
* test/Makefile.am (XFAIL_TESTS):
|
|
Remove source-surface-scale-paint.
|
|
|
|
2005-08-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-debug.h: New public header file.
|
|
|
|
* src/cairo-debug.c: (cairo_debug_reset_static_data): New function
|
|
to reset all static data (eg. caches) to their initial state.
|
|
|
|
* Makefile.am: Fix check-valgrind target to depend on the 'all'
|
|
target.
|
|
|
|
* configure.in: Add check for a new, proposed, XrmFinalize
|
|
function.
|
|
|
|
* src/Makefile.am: Add cairo-debug.c.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo-features.h.in: Move the definition of
|
|
CAIRO_BEGIN_DECLS to cairo-features.h so that it can be shared
|
|
between public header files, and so that it doesn't clutter
|
|
cairo.h
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-font.c: (_get_global_simple_cache),
|
|
(_get_outer_font_cache), (_get_inner_font_cache),
|
|
(_cairo_unlock_global_image_glyph_cache),
|
|
(_cairo_font_reset_static_data):
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_reset_static_data):
|
|
* src/cairo-xlib-screen.c: (_cairo_xlib_close_display),
|
|
(_cairo_xlib_screen_info_reset),
|
|
(_cairo_xlib_screen_reset_static_data):
|
|
* src/cairo-xlib-surface.c: (_unlock_xlib_glyphset_caches),
|
|
(_destroy_glyphset_cache_recurse),
|
|
(_cairo_xlib_surface_reset_static_data): Implement
|
|
reset_static_data in all modules as required.
|
|
|
|
* test/xlib-surface.c: (main):
|
|
* test/cairo-test.h:
|
|
* test/cairo-test.c: (cairo_test_for_target),
|
|
(cairo_test_expecting): Call cairo_debug_reset_static_data and
|
|
FcFini so that we can have all tests be valgrind-clean with
|
|
respect to memory leaks and still-reachable data.
|
|
|
|
2005-08-01 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo.h src/cairoint.h src/cairo-surface.c:
|
|
Add cairo_mark_dirty[_rectangle]() and cairo_flush() for
|
|
|
|
* src/cairo-win32-surface.c: Implement a cairo_flush()
|
|
that restores the original clip. Also restore the original
|
|
flush when a surface is finished.
|
|
|
|
* ROADMAP: Check off the item.
|
|
|
|
2005-07-31 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
reviewed by: keithp
|
|
|
|
* src/cairo-ft-font.c: (_ft_unscaled_font_set_scale): Support
|
|
versions of freetype without exact FT_Bitmap_Size.x/y_ppem
|
|
values by using the pixel width and height values instead.
|
|
|
|
* configure.in: Add a check for FT_Bitmap_Size.y_ppem.
|
|
|
|
2005-07-31 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* src/cairo-quartz-surface.c: (cairo_quartz_surface_create):
|
|
Cast away the const on the nil surface to avoid a compiler warning.
|
|
|
|
2005-07-31 Billy Biggs <vektor@dumbterm.net>
|
|
|
|
* src/cairo-atsui-font.c: (_cairo_atsui_font_create): Pass the
|
|
options down to the scaled font object to keep things compiling.
|
|
|
|
2005-07-30 Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo-wideint.c: (_cairo_int32x32_64_mul),
|
|
(_cairo_uint64_divrem), (_cairo_uint128_divrem):
|
|
* src/cairo-wideint.h:
|
|
|
|
Replace wide integer divide algorithms with
|
|
trivial bit-at-a-time code. Original code was
|
|
of unclear provenance, this new code is
|
|
completely different.
|
|
|
|
2005-07-29 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Remove completed 0.6 tasks. Add cairo_surface_flush to
|
|
the cairo_surface_mark_dirty task.
|
|
|
|
2005-07-29 T Rowley <tim.rowley@gmail.com>
|
|
|
|
* src/cairo-atsui-font.c ( _cairo_atsui_font_create):
|
|
src/cairo-quartz-surface.c (_cairo_quartz_surface_acquire_dest_image):
|
|
Minor updates to keep quartz backend limping along.
|
|
|
|
2005-07-29 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-font.c src/cairo-ft-font.c src/cairo-win32-font.c
|
|
src/cairoint.h: Move the font options into the base
|
|
cairo_scaled_font_t object so that we have them available
|
|
to use when we are removing a scaled font from the cache.
|
|
(http://bugzilla.gnome.org/show_bug.cgi?id=311299,
|
|
Ali Akcaagac, Behdad Esfahbod)
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_mask): Run the mask pattern
|
|
through the CTM in the same way as the source pattern. This fixes
|
|
the bug demonstrated by the mask-ctm and mask-surface-ctm tests so
|
|
they should no longer fail.
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/mask-ctm-ref.png:
|
|
* test/mask-ctm.c: (draw), (main):
|
|
* test/mask-surface-ctm-ref.png:
|
|
* test/mask-surface-ctm.c: (draw), (main): Add two new tests:
|
|
mask-ctm
|
|
mask-surface-ctm
|
|
demonstrating that masks are not currently being modified by the
|
|
CTM.
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* RELEASING: CC gnome-announce-list@gnome.org on cairo release
|
|
announcements.
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Add -head to CAIRO_VERSION after tagging with
|
|
SNAPSHOT_0_6_0.
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* NEWS: Added notes for snapshot 0.6.0
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.6.0
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ft-font.c: (_move_to), (_line_to), (_conic_to),
|
|
(_cubic_to): Remove const qualifiers that only make things happy
|
|
with a from-cvs version of freetype. Now we should be back to
|
|
being happy with a released version.
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-png.c (read_png): Add missing cast.
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am (EXTRA_DIST): Remove
|
|
text-antialias-subpixel-ref.png from the list since it doesn't
|
|
exist yet.
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* doc/public/tmpl/cairo.sgml: More doc/public/tmpl churn.
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am (EXTRA_DIST): Add
|
|
text-antialias-{gray|none|subpixel}-ref.png so they get
|
|
distributed.
|
|
|
|
2005-07-28 Dave Beckett <Dave.Beckett@bristol.ac.uk>
|
|
|
|
* test/cairo-test.c (cairo_test_create_surface_from_png): Use
|
|
cairo_surface_status(image) instead of testing for NULL from
|
|
cairo_image_surface_create_from_png to enable testing when srcdir
|
|
!= builddir again.
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Note that consistent error handling is done now.
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-image-surface.c: (cairo_image_surface_get_width),
|
|
(cairo_image_surface_get_height): Fix to call _cairo_error and
|
|
return 0 on surface-type mismatch.
|
|
|
|
2005-07-28 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* configure.in Makefile.am: Skip tests/ directory if
|
|
libpng was disabled. (#3423, reported by Steve Chaplin)
|
|
|
|
2005-07-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-png.c: (read_png),
|
|
(cairo_image_surface_create_from_png): Fix so that one of three
|
|
different error status values will be returned:
|
|
|
|
CAIRO_STATUS_NO_MEMORY
|
|
CAIRO_STATUS_FILE_NOT_FOUND
|
|
CAIRO_STATUS_READ_ERROR
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: (cairo_status_to_string): Add new
|
|
CAIRO_STATUS_FILE_NOT_FOUND.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-surface.c: Add new _cairo_surface_nil_read_error and
|
|
_cairo_surface_nil_file_not_found.
|
|
|
|
* test/create-from-png.c: (draw): Test the new FILE_NOT_FOUND
|
|
error.
|
|
|
|
2005-07-28 Stuart Parmenter <pavlov@pavlov.net>
|
|
|
|
* src/cairo-win32-font.c
|
|
* src/cairo-win32-surface.c
|
|
Use surface->base.status instead of just surface on
|
|
cairo_win32_surface_t *s
|
|
|
|
2005-07-28 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* configure.in: Disable PS surface build if no freetype.
|
|
|
|
2005-07-28 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-win32-font.c (_draw_glyphs_on_surface): Pass
|
|
-1 not 1 to RestoreDC to restore to the last SaveDC.
|
|
(#3905, Stuart Parmenter)
|
|
|
|
2005-07-16 Owen Taylor <otaylor@redhat.com>
|
|
|
|
Patch from Martin Kretzschmar <martink@gnome.org>, #3798
|
|
|
|
* src/cairo-xlib-surface.c (_get_image_surface): prevent
|
|
sign-extension of masks.*_mask on 64bit architectures.
|
|
|
|
* src/cairo-xcb-surface.c (_get_image_surface): ditto.
|
|
|
|
2005-07-28 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-image-surface.c (_cairo_image_surface_acquire_source,dest_image)
|
|
src/cairo-quartz-surface.c (_cairo_quartz_surface_acquire_dest_image)
|
|
src/cairo-xcb-surface.c (_cairo_xcb_surface_acquire_source,dest_image):
|
|
src/cairo-xlib-surface.c (_cairo_xlib_surface_acquire_source,dest_image):
|
|
Set image_extra to NULL to avoid purify warnings. (#3777, Stuart Parmenter)
|
|
|
|
2005-07-27 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-path-data-private.h:
|
|
* src/cairo-path-data.c:
|
|
* src/cairo-pattern.c:
|
|
* src/cairo-surface.c:
|
|
Remove all create_in_error functions as they were just muddling up
|
|
the memory management semantics:
|
|
|
|
_cairo_path_data_create_in_error
|
|
_cairo_pattern_create_in_error
|
|
_cairo_surface_create_in_error
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_mask),
|
|
(_composite_traps_intermediate_surface),
|
|
(_cairo_gstate_intersect_clip_mask), (_cairo_gstate_show_glyphs):
|
|
|
|
Don't bother with extra check of other->status to anticipate and
|
|
try to prevent cairo_surface_create_similar from returning through
|
|
cairo_surface_create_in_error.
|
|
|
|
* src/cairo-glitz-surface.c: (cairo_glitz_surface_create):
|
|
* src/cairo-image-surface.c: (cairo_image_surface_create),
|
|
(cairo_image_surface_create_for_data):
|
|
* src/cairo-png.c: (cairo_image_surface_create_from_png):
|
|
* src/cairo-surface.c: (_cairo_surface_create_similar_scratch),
|
|
(cairo_surface_create_similar),
|
|
(_cairo_surface_create_similar_solid):
|
|
* src/cairo-win32-surface.c: (_cairo_win32_surface_create_for_dc):
|
|
* src/cairo-xlib-surface.c: (cairo_xlib_surface_create):
|
|
* src/cairo.c: (cairo_get_source), (cairo_get_font_face):
|
|
(cairo_get_target), (cairo_copy_path), (cairo_copy_path_flat):
|
|
|
|
Just return &_cairo_surface|pattern|path_nil rather than
|
|
_cairo_surface|pattern|path_create_in_error.
|
|
|
|
* src/cairo-ft-font.c:
|
|
* src/cairo-glitz-surface.c:
|
|
* src/cairo-gstate.c:
|
|
* src/cairo-pattern.c:
|
|
* src/cairo-ps-surface.c:
|
|
* src/cairo-win32-font.c:
|
|
* src/cairo-win32-surface.c:
|
|
* src/cairo-xcb-surface.c:
|
|
* src/cairo-xlib-surface.c:
|
|
After checking surface->status from a cairo_<foo>_surface_create
|
|
function, just return CAIRO_STATUS_NO_MEMORY since that's the only
|
|
error we'll get from one of these create functions.
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_get_target):
|
|
Remove unnecessary check for gstate == NULL;
|
|
|
|
* src/cairo-pattern.c:
|
|
(_cairo_pattern_acquire_surface_for_gradient): Fix old check for
|
|
image == NULL instead of image->base.status.
|
|
|
|
* src/cairo-quartz-surface.c:
|
|
(_cairo_quartz_surface_acquire_source_image):
|
|
|
|
Add missing check of surface->image_base.status after creating
|
|
surface->image.
|
|
|
|
* src/cairo-xcb-surface.c: (_cairo_xcb_surface_create_similar):
|
|
* src/cairo-xlib-surface.c: (_cairo_xlib_surface_create_similar):
|
|
Add missing check of surface->base.status after creating surface.
|
|
|
|
2005-07-27 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-font.c src/cairoint.h: Define _cairo_font_face_nil.
|
|
(cairo_font_face_reference, cairo_font_face_destroy
|
|
cairo_font_face_set_user_data): Handle a nil font face.
|
|
(cairo_font_face_status): New function.
|
|
|
|
* src/cairo-font.c (_cairo_simple_font_face_create)
|
|
src/cairo-ft-font.c (cairo_ft_font_face_create_for_pattern):
|
|
src/cairo-ft-font.c (cairo_ft_font_face_create_for_ft_face):
|
|
src/cairo-win32-font.c (cairo_win32_font_face_create_for_logfontw):
|
|
Return _cairo_font_face_nil on out-of-memory.
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_select_font_face)
|
|
* src/cairo-gstate.c (_cairo_gstate_ensure_font_face): Check return
|
|
of _cairo_simple_font_face_create().
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_set_font_face): Error out
|
|
if font_face has a status.
|
|
|
|
* src/cairo-surface.c (cairo_surface_set_user_data): Handle a nil
|
|
surface.
|
|
|
|
2005-07-27 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* test/Makefile.am (XFAIL_TESTS): Remove
|
|
text-antialias-none which is now fixed.
|
|
|
|
* test/text-antialias-none.c (main): No longer xfail.
|
|
|
|
2005-07-27 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-win32-font.c (_win32_scaled_font_create):
|
|
* src/cairo-ft-font.c (_ft_scaled_font_create): Go back to
|
|
returning NULL.
|
|
|
|
* src/cairoint.h src/cairo-ft-font.c: Stop exporting
|
|
_cairo_scaled_font_nil, since we dont' need it publically
|
|
any more.
|
|
|
|
* src/cairo-surface.c (_cairo_surface_reset_clip): return
|
|
surface->status not status. (Fixes warning)
|
|
|
|
2005-07-26 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Add CAIRO_STATUS_INVALID_CONTENT,
|
|
CAIRO_STATUS_INVALID_FORMAT, and CAIRO_STATUS_INVALID_VISUAL.
|
|
|
|
Change functions to return type of void:
|
|
|
|
cairo_scaled_font_extents
|
|
cairo_surface_finish
|
|
|
|
Add new functions to query object status:
|
|
|
|
cairo_scaled_font_status
|
|
cairo_surface_status
|
|
|
|
* doc/public/tmpl/cairo.sgml:
|
|
* src/cairo-array.c:
|
|
* src/cairo-atsui-font.c:
|
|
* src/cairo-font.c:
|
|
* src/cairo-ft-font.c:
|
|
* src/cairo-glitz-surface.c:
|
|
* src/cairo-gstate.c:
|
|
* src/cairo-image-surface.c:
|
|
* src/cairo-meta-surface.c:
|
|
* src/cairo-path-data.c:
|
|
* src/cairo-pattern.c:
|
|
* src/cairo-pdf-surface.c:
|
|
* src/cairo-png.c:
|
|
* src/cairo-ps-surface.c:
|
|
* src/cairo-quartz-surface.c:
|
|
* src/cairo-surface.c:
|
|
* src/cairo-win32-font.c:
|
|
* src/cairo-win32-surface.c:
|
|
* src/cairo-xcb-surface.c:
|
|
* src/cairo-xlib-surface.c:
|
|
* src/cairo.c:
|
|
* src/cairoint.h: Implementation of new error handling scheme for
|
|
cairo_surface_t and cairo_scaled_font_t.
|
|
|
|
* test/surface-finish-twice.c: Track change in return value of
|
|
cairo_surface_finish.
|
|
|
|
2005-07-27 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_get_font_options):
|
|
Turn off antialiasing for rendering to alpha surfaces.
|
|
|
|
2005-07-27 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Note that the XFAIL tests all need to be fixed before
|
|
1.0.
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/text-antialias-gray-ref.png:
|
|
* test/text-antialias-gray.c: (draw), (main):
|
|
* test/text-antialias-none-ref.png:
|
|
* test/text-antialias-none.c: (draw), (main):
|
|
* test/text-antialias-subpixel.c: (draw), (main): Add three new
|
|
tests for testing the various antialiasing options for text
|
|
rendering.
|
|
|
|
2005-07-27 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-png.c: (cairo_image_surface_create_from_png_stream):
|
|
Fix typo that caused cairo_image_surface_create_from_png_stream to
|
|
segfault. Closes bug #3863 (thanks to Steve Chaplin).
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/create-from-png-stream-ref.png:
|
|
* test/create-from-png-stream.c:
|
|
* test/create-from-png.c: Add a test to actually call
|
|
cairo_image_surface_create_from_png_stream.
|
|
|
|
2005-07-27 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c (_xlib_glyphset_cache_create_entry): Deal
|
|
with glyphs with entry->im->image NULL. (This can happen if fonts
|
|
have size-zero bitmaps for some characters, for example)
|
|
(http://bugzilla.gnome.org/show_bug.cgi?id=311709, Sangu Kim)
|
|
|
|
2005-07-27 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-ft-font.c (_get_bitmap_surface): FreeType bitmaps may
|
|
only be padded out to 8-bit boundaries, not 32-bit boundaries.
|
|
(_render_glyph_bitmap): Fix sign error in using glyphslot->bitmap_left.
|
|
|
|
2005-07-27 David Reveman <davidr@novell.com>
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_screen_from_visual): Trivial
|
|
fix for typo that caused infinite loop when using non-default visuals.
|
|
|
|
2005-07-25 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-font.c:
|
|
* src/cairo-ft-font.c:
|
|
* src/cairo-glitz-surface.c:
|
|
* src/cairo-pdf-surface.c: Replace all occurences of refcount with
|
|
ref_count.
|
|
|
|
* doc/public/language-bindings.xml: Replace refcounted with
|
|
reference-counted.
|
|
|
|
2005-07-25 Owen Taylor <otaylor@redhat.com>
|
|
|
|
reviewed by: cworth
|
|
|
|
* src/cairo.[ch] src/cairo-gstate-private.h src/cairo-gstate.c
|
|
src/cairoint.c: Add cairo_{get,set}_font_options().
|
|
|
|
* doc/public/Makefile.am (IGNORE_HFILES): Add cairo-xlib-private.h
|
|
|
|
* doc/public/cairo-sections.txt: Update
|
|
|
|
2005-07-24 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-ft-font.c (_render_glyph_outline): Fix size of allocated buffer
|
|
for vertical subpixel rendering. (Reported by Fryderyk Dziarmagowski,
|
|
http://bugzilla.gnome.org/show_bug.cgi?id=310935)
|
|
(_get_pattern_load_flags): Fix a problem where we were OR'ing multiple
|
|
FT_LOAD_* flags together.
|
|
|
|
* src/cairo-xlib-screen.c (_cairo_xlib_init_screen_font_options): Fix
|
|
reversed check for subpixel or not.
|
|
|
|
2005-07-23 Malcolm Tredinnick <malcolm@commsecure.com.au>
|
|
|
|
* src/cairo-ft-font.c:
|
|
* src/cairo.h: Add some missing parameters for API docs.
|
|
|
|
2005-07-23 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-private.h src/cairo-xlib-screen.c: Switch to using
|
|
Screen * not screen number to match surface code.
|
|
|
|
* src/cairo-xlib-screen.c: Get the screen info for the right screen
|
|
for the surface.
|
|
|
|
2005-07-22 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-ft-font.c: Protect against division by zero in various places.
|
|
(http://bugzilla.gnome.org/show_bug.cgi?id=311299, reported by Ali Akcaagac)
|
|
|
|
2005-07-22 Owen Taylor <otaylor@redhat.com>
|
|
|
|
Patch from Tor Lillqvist <tml@novell.com>
|
|
|
|
* src/cairo-win32-font.c: Define TT_PRIM_CSPLINE if it wasn't in
|
|
the headers.
|
|
(_get_system_quality): Add missing variable smoothing_type.
|
|
|
|
2005-07-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Get the case right. It's cairo, not Cairo.
|
|
|
|
2005-07-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Note that sub-pixel text rendering is done now.
|
|
|
|
2005-07-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-ft-font.c: The FT_LOAD_TARGET_* flags aren't separate
|
|
bitfields, but rather an embedded subfield, so test with
|
|
FT_LOAD_TARGET_MODE (val->key.flags) == FT_RENDER_LCD, and similar.
|
|
|
|
2005-07-21 Keith Packard <keithp@keithp.com>
|
|
|
|
reviewed by: cworth, otaylor
|
|
|
|
* src/cairo-ft-font.c: (_ft_font_cache_create_entry),
|
|
(_ft_unscaled_font_set_scale), (_native_byte_order_lsb),
|
|
(_get_bitmap_surface), (_render_glyph_outline),
|
|
(_render_glyph_bitmap), (_get_pattern_load_flags),
|
|
(_get_options_load_flags):
|
|
* src/cairo-xlib-surface.c: (cairo_xlib_surface_set_size),
|
|
(_native_byte_order_lsb), (_xlib_glyphset_cache_create_entry),
|
|
(_xlib_glyphset_cache_destroy_entry), (_get_glyphset_cache),
|
|
(_select_text_mask_format), (_cairo_xlib_surface_show_glyphs32),
|
|
(_cairo_xlib_surface_show_glyphs16),
|
|
(_cairo_xlib_surface_show_glyphs8):
|
|
* src/cairoint.h:
|
|
|
|
Add ARGB glyph support.
|
|
|
|
Change Bi-level glyph support to use A1 format.
|
|
|
|
Support bit/byte swapping of glyph image data in
|
|
the Xlib backend.
|
|
|
|
2005-07-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ft.h:
|
|
* src/cairo-quartz.h: Whitespace fixes.
|
|
|
|
2005-07-21 David Reveman <davidr@novell.com>
|
|
|
|
* src/cairo-glitz-surface.c (_cairo_glitz_area_move_out): Check if
|
|
empty area.
|
|
|
|
2005-07-21 Keith Packard <keithp@keithp.com>
|
|
|
|
reviewed by: otaylor, cworth
|
|
|
|
* ROADMAP:
|
|
* src/cairo-xlib-surface.c: (cairo_xlib_surface_set_drawable):
|
|
* src/cairo-xlib.h:
|
|
Add cairo_xlib_surface_set_drawable which changes the
|
|
target drawable for an xlib cairo_t to another which
|
|
shares the same format, screen and display.
|
|
|
|
2005-07-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Note that cairo_font_options_t is done now.
|
|
|
|
2005-07-13 Owen Taylor <otaylor@redhat.com>
|
|
|
|
reviewed by: cworth
|
|
|
|
* src/cairo-font-options.c src/cairo.h src/cairoint.h
|
|
src/Makefile.am: Add an opaque cairo_font_options_t structure.
|
|
|
|
* src/cairo-font.c src/cairo.h src/cairoint.h: Add a
|
|
cairo_font_options_t object to cairo_scaled_font_create().
|
|
|
|
* src/cairo-surface.c src/cairoint.h: Add virtualized
|
|
cairo_surface_get_font_options() to get the font options for
|
|
a surface.
|
|
|
|
* src/cairo-gstate.c: Adapt to cairo_scaled_font_create() change.
|
|
|
|
* src/cairo-pdf-surface.c: Add an implementation of
|
|
get_font_options() that turns off metrics hinting.
|
|
|
|
* src/cairo-xlib-screen.c src/cairo-xlib-private.h: Add
|
|
a "screen info" structure that holds (for now) information
|
|
about the default font options for the screen.
|
|
|
|
* src/cairo-xlib-surface.c: Implement get_font_options()
|
|
|
|
* src/cairo-ft-font.c src/cairo-ft.h: Add functions to apply
|
|
a cairo_font_options_t to a FcPattern or get the load flags
|
|
for a cairo_font_options_t.
|
|
|
|
* src/cairo-ft-font.c: Adapt to font options additions.
|
|
Add support for non-antialiased rendering of scalable fonts.
|
|
Add support for turning off metrics hinting.
|
|
|
|
* src/cairo-win32-font.c: Adapt to font options additions.
|
|
|
|
* doc/public/Makefile.am doc/public/cairo-sections.txt: Update.
|
|
|
|
2005-07-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-glitz-surface.c:
|
|
(_cairo_glitz_pattern_release_surface),
|
|
(_cairo_glitz_pattern_acquire_surfaces),
|
|
(_cairo_glitz_surface_composite),
|
|
(_cairo_glitz_surface_composite_trapezoids),
|
|
(_cairo_glitz_surface_show_glyphs): Finally grepped through and
|
|
fixed up the last remaining calls to
|
|
cairo_pattern_release_surface.
|
|
|
|
2005-07-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xcb-surface.c: (_cairo_xcb_surface_composite),
|
|
(_cairo_xcb_surface_composite_trapezoids): Fix yet another file
|
|
that I missed when I made the cairo_pattern_release_surface
|
|
change. You would think that I would have grepped for all uses of
|
|
this function by now.
|
|
|
|
2005-07-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Mark cairo_xlib_surface_create as complete. Move
|
|
cairo_xlib_surface_set_drawable from 0.6 to 1.0 since it is an API
|
|
addition, not a change.
|
|
|
|
2005-07-20 Carl Worth <cworth@cworth.org>
|
|
|
|
reviewed by: keithp
|
|
|
|
* src/cairo.h (CAIRO_CONTENT_VALID): Fix macro to not consider
|
|
CAIRO_FORMAT_ARGB32 (==0) as a valid cairo_content_t.
|
|
|
|
2005-07-20 Keith Packard <keithp@keithp.com>
|
|
|
|
reviewed by: otaylor
|
|
|
|
* src/cairo-xlib-surface.c: (_cairo_xlib_surface_create_similar),
|
|
(_cairo_xlib_surface_same_screen),
|
|
(_cairo_xlib_surface_clone_similar), (_surfaces_compatible),
|
|
(_categorize_composite_operation),
|
|
(_cairo_xlib_surface_create_internal),
|
|
(_cairo_xlib_screen_from_visual), (cairo_xlib_surface_create),
|
|
(cairo_xlib_surface_create_for_bitmap),
|
|
(cairo_xlib_surface_create_with_xrender_format):
|
|
* src/cairo-xlib-xrender.h:
|
|
* src/cairo-xlib.h:
|
|
* test/cairo-test.c: (create_xlib_surface):
|
|
|
|
Add Screen* arguments to:
|
|
|
|
cairo_xlib_surface_create_with_xrender_format
|
|
cairo_xlib_surface_create_for_bitmap
|
|
|
|
Required to correctly identify when two Xlib surfaces are
|
|
compatible with Core and Render rendering requests.
|
|
|
|
cairo_xlib_surface_create can determine the screen given
|
|
the required Visual *
|
|
|
|
2005-07-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Move all API changes from 1.0 to 0.6. Other 1.0 API
|
|
issues are strictly additions.
|
|
|
|
2005-07-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.valgrind-suppressions: Add valgrind suppressions for
|
|
libpng/libz use of uninitialized data. There are clearly bugs here
|
|
that are not cairo's fault as zeroing the buffer before writing
|
|
the png image actually causes more errors(!). And, notably,
|
|
setting all the data to random bytes usually makes the errors go
|
|
away.
|
|
|
|
* test/Makefile.am: Change the check-valgrind target to include
|
|
the .valgrind-suppresions file and to tee output into
|
|
valgrind.log.
|
|
|
|
2005-07-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.valgrind-suppressions: Add valgrind suppressions for
|
|
libpng/libz use of uninitialized data. There are clearly bugs here
|
|
that are not cairo's fault as zeroing the buffer before writing
|
|
the png image actually causes more errors(!). And, notably,
|
|
setting all the data to random bytes usually makes the errors go
|
|
away.
|
|
|
|
* test/Makefile.am: Change the check-valgrind target to include
|
|
the .valgrind-suppresions file and to tee output into
|
|
valgrind.log.
|
|
|
|
2005-07-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Add -head to CAIRO_VERSION after tagging with
|
|
SNAPSHOT_0_5_2.
|
|
|
|
2005-07-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-quartz-surface.c:
|
|
(_cairo_quartz_surface_acquire_source_image),
|
|
(_cairo_quartz_surface_set_clip_region): Fix the quartz backend so
|
|
that it at least compiles again. This change is slipped in before
|
|
0.5.2 was pushed out and tagged.
|
|
|
|
2005-07-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* NEWS: Added notes for snapshot 0.5.2
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.5.2
|
|
|
|
2005-07-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/composite-integer-translate-over-repeat.c (draw): Fix leak
|
|
of pattern.
|
|
|
|
2005-07-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Note some progress.
|
|
|
|
* test/cairo-test.h:
|
|
* test/cairo-test.c: (cairo_test_create_surface_from_png),
|
|
(cairo_test_create_pattern_from_png): New helper function to help
|
|
create an image surface from a PNG file, while taking the srcdir
|
|
environment variable into consideration. Rename the pattern
|
|
creating helper function to match.
|
|
|
|
* test/composite-integer-translate-over.c: (draw):
|
|
* test/composite-integer-translate-source.c: (draw): Use new
|
|
cairo_test_create_surface_from_png so that non-srcdir builds work.
|
|
|
|
* test/mask.c: (set_image_pattern):
|
|
* test/trap-clip.c: (set_image_pattern): Track change in
|
|
cairo_test_create_pattern_from_png.
|
|
|
|
2005-07-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* BUGS: Add note that Xlib caches need to be cleand up on close
|
|
of display.
|
|
|
|
2005-07-15 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-font.c:
|
|
* src/cairo-surface.c: Remove cairo_private qualifier from .c
|
|
files, (we only need it in the .h files).
|
|
|
|
2005-07-15 Vladimir Vukicevic <vladimir@pobox.com>
|
|
|
|
* src/cairo-xlib-surface.c: (_cairo_xlib_surface_composite,
|
|
_recategorize_composite_repeat): Use XCopyArea when
|
|
possible, for optimization and bug workaround.
|
|
|
|
* test/composite-integer-translate-{source,over,over-repeat}.c:
|
|
Exercise XCopyArea, XRenderComposite, and XSetTile/XFillRectangle
|
|
paths for _cairo_xlib_surface_composite
|
|
|
|
2005-07-15 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am: Add new check-valgrind target for running the
|
|
test suite under the influence of valgrind.
|
|
|
|
* test/buffer-diff.c: (image_diff): Fix memory leak when reference
|
|
image is not found.
|
|
|
|
2005-07-15 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/mask.c: (set_gradient_pattern), (set_image_pattern),
|
|
(draw): Fix a few memory leaks (missing cairo_pattern_destroy in 3
|
|
places).
|
|
|
|
2005-07-15 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_mask): Fix memory leak,
|
|
(missing _cairo_pattern_fini).
|
|
|
|
2005-07-15 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c (cairo_test_for_target): Remove errant line of
|
|
code that was inadvertently committed recently.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/surface-finish-twice.c: (draw): Fix leak of surface.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_surface_finish),
|
|
(_cairo_pdf_document_finish): Call _cairo_array_fini on the
|
|
several array objects to patch memory leaks.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xlib-surface.c: (_cairo_xlib_surface_composite),
|
|
(_cairo_xlib_surface_composite_trapezoids),
|
|
(_cairo_xlib_surface_show_glyphs): Eek. Yet _more_ fixups for
|
|
_cairo_pattern_release_surface missed earlier.
|
|
|
|
2005-08-14 Stuart Parmenter <pavlov@pavlov.net>
|
|
|
|
* src/cairo-win32-surface.c: (_cairo_win32_surface_fill_rectangles):
|
|
blue and green values were swapped in the DO_SOURCE case.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c: (cairo_test_create_png_pattern): Rewrite to
|
|
use cairo_image_surface_create_from_png rather than custom
|
|
read_png_argb32. In addition to being simpler, this eliminates the
|
|
leak of the image data buffer.
|
|
|
|
* test/trap-clip.c: (set_gradient_pattern), (set_image_pattern):
|
|
Add calls to cairo_pattern_destroy to close two memory leaks.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-pattern.c: (_cairo_pattern_acquire_surfaces): Fix up
|
|
one more call to _cairo_pattern_release_surface missed in the
|
|
previous commit.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-pattern.c: (_cairo_pattern_release_surface): Fix to
|
|
accept a cairo_pattern_t rather than a cairo_surface_t as the
|
|
primary argument.
|
|
|
|
* src/cairo-image-surface.c: (_cairo_image_surface_composite),
|
|
(_cairo_image_surface_composite_trapezoids): Track change in
|
|
_cairo_pattern_release_surface and also pass the appropriate
|
|
pattern for each acquired surface. The previous backend mismatch
|
|
was causing memory leaks.
|
|
|
|
* src/cairo-xlib-surface.c: (_get_image_surface): Remove stale
|
|
comment.
|
|
|
|
* test/xlib-surface.c: (main): Add missing fclose to keep valgrind
|
|
happy about memory leaks.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c: (cairo_test_expecting),
|
|
(cairo_test_expect_failure), (cairo_test): Make the per-backend
|
|
test results print XFAIL rather than FAIL for expected failures.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c: (cairo_test_real): Fix comment describing
|
|
test result. It's not enough that all tested backends are
|
|
successful. We also require that at least one backend is actually
|
|
tested.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c: (cairo_test_for_target), (cairo_test_real):
|
|
* test/cairo-test.h: Don't consider a test to fail if it can't
|
|
create a surface at all (eg. no X server is available). Instead
|
|
mark this backend as untested and only consider the overall test a
|
|
success if all tested backend are successful.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ps-surface.c: (pattern_is_translucent): Add missing
|
|
(putatively unreachable) return value.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-image-surface.c:
|
|
(_cairo_image_surface_set_clip_region): Remove the copying of the
|
|
region. This was a workaround for a missing copy bug in libpixman
|
|
that has since been fixed. So now it was just a memory leak.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-png.c (read_png): Patch memory leak of png_info
|
|
object.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/create-for-png-ref.png:
|
|
* test/create-for-png.c:
|
|
* test/create-from-png.c: (draw): Rename create-for-png test to
|
|
create-from-png to match the naming of the
|
|
cairo_image_surface_create_from_png function.
|
|
|
|
2005-07-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c: (cleanup_xcb), (cleanup_xlib),
|
|
(cairo_test_for_target), (cairo_test_real): Patch a few memory
|
|
leaks.
|
|
|
|
2005-07-13 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-meta-surface.c: (_cairo_meta_surface_replay): Use
|
|
the _cairo_surface_*() functions when replaying.
|
|
|
|
* src/cairo-ps-surface.c: Fold the "locate fallbacks" pass into
|
|
the postscript output pass, and add a simple, first implementation
|
|
of image fallbacks.
|
|
|
|
2005-07-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-font.c: (_cairo_simple_font_face_create_font): Rename
|
|
CAIRO_FONT_BACKEND_DEFAULT to the more accurate
|
|
CAIRO_SCALED_FONT_BACKEND_DEFAULT.
|
|
|
|
2005-07-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ft-private.h:
|
|
* src/cairo-ft-font.c: (_cairo_unscaled_font_is_ft),
|
|
(_cairo_scaled_font_is_ft): New predicates to allow checking for
|
|
cairo_ft derivates of generic font type.
|
|
|
|
* src/cairo-ps-surface.c: (_cairo_ps_surface_get_font),
|
|
(_cairo_ps_surface_show_glyphs), (_ps_output_show_glyphs):
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_document_get_font),
|
|
(_cairo_pdf_surface_show_glyphs):
|
|
* src/cairo-font-subset.c: (_cairo_font_subset_create):
|
|
Add explicit checks for cairo_ft derivatives of generic fonts
|
|
rather than just blindly assuming that's what we get.
|
|
|
|
2005-07-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-hash-private.h:
|
|
* src/cairo-hash.c:
|
|
(_cairo_hash_table_create): Remove destroy notifier. This
|
|
simplifies the implementation a bit, and no anticipated use of
|
|
cairo_hash_table_t in cairo needs the destroy notifier. Most uses
|
|
will be hash-backed object create/destroy functions.
|
|
|
|
(_cairo_hash_table_destroy): Document that it is now a fatal
|
|
error to call _cairo_hash_table_destroy on a non-empty hash table.
|
|
|
|
(_cairo_hash_table_insert): Document that it is now a fatal
|
|
error to insert an entry with a key that matches an existing
|
|
entry.
|
|
|
|
(_cairo_hash_table_random_entry): Add predicate function so that
|
|
the user can select a random entry satisying the given predicate.
|
|
|
|
(_cairo_hash_table_remove): Change return type to void since
|
|
failure is really not possible here.
|
|
|
|
2005-07-11 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Add cache lock deadlock problem to roadmap for 0.5.2.
|
|
Fix typo (cairo_ft_options_t -> cairo_font_options_t).
|
|
Add note that glyph measurement performance needs to improve.
|
|
|
|
* src/cairoint.h: Disable mutex locks, (making the caches
|
|
non-thread-safe again, just like they were in the last snapshot
|
|
and before).
|
|
|
|
2005-07-11 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Note that the cairo_content_t work is done.
|
|
Note progress on cairo_meta_surface_t, ARGB text, and group
|
|
support.
|
|
Add recent API change proposals (cairo_ft_options_t,
|
|
cairo_xlib_surface_create needs to be screen aware, and
|
|
cairo_xlib_surface_set_drawable).
|
|
|
|
* src/cairo-arc.c (_arc_segments_needed): Note that this function
|
|
is computing an incorrect result.
|
|
|
|
2005-07-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Give enum tags an underscore prefix to match the
|
|
style of the struct tags. Add new cairo_content_t and change
|
|
cairo_surface_create_similar to accept a cairo_content_t rather
|
|
than a cairo_format_t.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-glitz-surface.c: (_cairo_glitz_surface_create_similar):
|
|
* src/cairo-image-surface.c: (_cairo_image_surface_create_similar):
|
|
* src/cairo-meta-surface.c: (_cairo_meta_surface_create_similar):
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_surface_create_similar):
|
|
* src/cairo-ps-surface.c: (_cairo_ps_surface_create_similar):
|
|
* src/cairo-quartz-surface.c: (_cairo_quartz_surface_create_similar):
|
|
* src/cairo-surface.c: (_cairo_surface_create_similar_scratch),
|
|
(cairo_surface_create_similar),
|
|
(_cairo_surface_create_similar_solid):
|
|
* src/cairo-win32-surface.c: (_cairo_win32_surface_create_similar),
|
|
(_cairo_win32_surface_get_subimage):
|
|
* src/cairo-xcb-surface.c: (_cairo_xcb_surface_create_similar),
|
|
(_cairo_xcb_surface_clone_similar):
|
|
* src/cairo-xlib-surface.c: (_cairo_xlib_surface_create_similar),
|
|
(_cairo_xlib_surface_clone_similar): Change surface backend
|
|
create_similar call to accept a cairo_content_t rather than a
|
|
cairo_format_t.
|
|
|
|
* src/cairo-glitz-surface.c: (_glitz_format_from_content),
|
|
(_cairo_glitz_surface_clone_similar),
|
|
(_cairo_glitz_pattern_acquire_surface),
|
|
(_cairo_glitz_surface_fill_rectangles),
|
|
(_cairo_glitz_surface_composite_trapezoids):
|
|
* src/cairo-gstate.c: (_cairo_gstate_mask),
|
|
(_composite_traps_intermediate_surface),
|
|
(_cairo_gstate_intersect_clip_mask), (_cairo_gstate_show_glyphs):
|
|
* src/cairo-image-surface.c: (cairo_image_surface_create),
|
|
(cairo_image_surface_create_for_data),
|
|
(_cairo_format_from_content), (_cairo_content_from_format):
|
|
* src/cairo-pattern.c: (_cairo_pattern_acquire_surface_for_solid):
|
|
* src/cairo-ps-surface.c: (emit_image):
|
|
* test/mask.c: (mask_polygon), (draw):
|
|
* test/pixman-rotate.c: (draw):
|
|
* test/source-clip.c: (draw): Fix all calls into create_similar to
|
|
pass a cairo_content_t rather than a cairo_format_t.
|
|
|
|
2005-07-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* CODING_STYLE: Add a missing word.
|
|
|
|
* ROADMAP: Note that the BadMatch bug has been resolved.
|
|
|
|
2005-07-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: (cairo_status_to_string): Remove
|
|
CAIRO_STATUS_NO_TARGET_SURFAC and add CAIRO_STATUS_INVALID_STATUS.
|
|
|
|
* src/cairo-gstate.c:
|
|
(_cairo_gstate_clip_and_composite_trapezoids),
|
|
(_cairo_gstate_copy_page), (_cairo_gstate_show_page): Don't check
|
|
for gstate->target == NULL anymore as the API now guarantees it
|
|
never occurs.
|
|
|
|
* src/cairo.c: (cairo_append_path): Check that path->status is a
|
|
valid status value and cause an INVALID_STATUS error otherwise.
|
|
|
|
* test/path-data.c: (main): Test the new
|
|
CAIRO_STATUS_INVALID_STATUS error case in cairo_append_path.
|
|
|
|
2005-07-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Require libpixman >= 0.1.5, (since 0.1.4 crashes
|
|
on some X servers).
|
|
|
|
2005-07-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ps-surface.c: Disable the compilation of the
|
|
_ps_locate_fallbacks code which, inaddition to being broken,
|
|
appears to not currently be used.
|
|
|
|
2005-07-04 David Reveman <davidr@novell.com>
|
|
|
|
* configure.in: Require glitz >= 0.4.4.
|
|
|
|
* src/cairo-glitz-surface.c: Use frame buffer objects instead of
|
|
pbuffers for accelerated offscreen drawing.
|
|
(_cairo_glitz_pattern_acquire_surface): Minor improvement to gradient
|
|
pattern creation.
|
|
|
|
2005-07-01 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-ps-surface.c: Rewrite postscript backend to generate
|
|
more interesting output than the current big-image implementation,
|
|
using meta surfaces for font subsetting and image fallbacks.
|
|
|
|
* src/cairo-meta-surface.c: Remove obsolete comment.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-output-stream.c: Make a couple of stylistic changes
|
|
and add _cairo_output_stream_write_hex_string.
|
|
|
|
* src/cairo-surface.c: Add _cairo_surface_intersect_clip_path so
|
|
we can replay path clipping.
|
|
|
|
2005-07-01 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-meta-surface-private.h:
|
|
* src/cairo-meta-surface.c: Add meta surface implementation.
|
|
|
|
* src/Makefile.am (libcairo_la_SOURCES): Add cairo-meta-surface.c
|
|
and cairo-meta-surface-private.h
|
|
|
|
2005-06-29 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-hash.c (_cairo_hash_table_resize): Remove debugging
|
|
printfs.
|
|
|
|
2005-06-29 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-hash-private.h:
|
|
* src/cairo-hash.c (_cairo_hash_table_random_entry): Add
|
|
_cairo_hash_table_random_entry.
|
|
|
|
* src/cairo-hash.c: (_destroy_entry): Fix to update live_entries.
|
|
|
|
* src/cairo-hash.c: (_cairo_hash_table_lookup_internal): style
|
|
changes.
|
|
|
|
* src/cairo-hash.c (_cairo_hash_table_resize): Add code to shrink
|
|
table as well as to grow it.
|
|
|
|
* src/cairo-hash.c (_cairo_hash_table_insert),
|
|
(_cairo_hash_table_remove): Call new version of resize so that
|
|
table will grow or shrink as needed on insert and remove.
|
|
|
|
2005-06-29 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-hash-private.h:
|
|
* src/cairo-hash.c: (_cairo_hash_table_create), (_destroy_entry),
|
|
(_cairo_hash_table_destroy), (_cairo_hash_table_lookup_internal),
|
|
(_cairo_hash_table_resize), (_cairo_hash_table_lookup),
|
|
(_cairo_hash_table_insert), (_cairo_hash_table_remove),
|
|
(_cairo_hash_table_foreach): Rewrite hash table to use a single
|
|
cairo_hash_entry_t* rather than void *key and void *value. This is
|
|
slightly more painful to use, but lends itself to a more
|
|
memory-efficient implementation. Add documentation.
|
|
|
|
2005-06-29 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-hash-private.h:
|
|
* src/cairo-hash.c: (_cairo_hash_table_create),
|
|
(_cairo_hash_table_destroy_entry), (_cairo_hash_table_destroy),
|
|
(_cairo_hash_table_lookup_internal), (_cairo_hash_table_resize),
|
|
(_cairo_hash_table_lookup), (_cairo_hash_table_insert),
|
|
(_cairo_hash_table_remove), (_cairo_hash_table_foreach): Rework
|
|
the cache code as a hast table with a much simpler interface, (no
|
|
object derviation is required to use it).
|
|
|
|
* src/cairoint.h: Remove extraneous prototype for non-existent
|
|
_cairo_cache_reference.
|
|
|
|
2005-06-28 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-pattern.c (cairo_pattern_create_rgb)
|
|
(cairo_pattern_create_rgba): New functions to create a
|
|
cairo_pattern_t corresponding to a solid color and a translucent
|
|
color respectively. Document a few pattern functions.
|
|
|
|
2005-06-28 T Rowley <tim.rowley@gmail.com>
|
|
|
|
reviewed by: otaylor
|
|
|
|
* src/cairo-win32-font.c (_cairo_win32_scaled_font_glyph_path):
|
|
Implement.
|
|
|
|
2005-06-28 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal): Also
|
|
flag older XFree86 servers as buggy-repeat.
|
|
|
|
2005-06-28 T Rowley <tim.rowley@gmail.com>
|
|
|
|
* src/cairo-atsui-font.c (_cairo_atsui_font_text_to_glyphs):
|
|
Prevent crash on empty string.
|
|
|
|
2005-06-25 Keith Packard <keithp@keithp.com>
|
|
|
|
reviewed by: cworth
|
|
|
|
* configure.in:
|
|
* src/cairo-cache.c: (_cairo_cache_shrink_to),
|
|
(_cairo_cache_lookup):
|
|
* src/cairo-font.c: (_lock_global_simple_cache),
|
|
(_unlock_global_simple_cache), (_lock_global_font_cache),
|
|
(_unlock_global_font_cache),
|
|
(_cairo_lock_global_image_glyph_cache),
|
|
(_cairo_unlock_global_image_glyph_cache),
|
|
(_cairo_get_global_image_glyph_cache):
|
|
* src/cairo-ft-font.c: (_lock_global_ft_cache),
|
|
(_unlock_global_ft_cache):
|
|
* src/cairo-xlib-surface.c: (_xlib_glyphset_cache_create_entry),
|
|
(_xlib_glyphset_cache_destroy_entry), (_lock_xlib_glyphset_caches),
|
|
(_unlock_xlib_glyphset_caches), (_get_glyphset_cache),
|
|
(_cairo_xlib_surface_show_glyphs):
|
|
* src/cairoint.h:
|
|
Provide locking macros, implement with pthreads.
|
|
|
|
Add _cairo_cache_shrink_to which reduces cache memory usage
|
|
to a specified level.
|
|
|
|
Change global glyph and xlib glyphset caches behaviour to only
|
|
shrink cache on unlock. This is done by telling the cache code to
|
|
never shrink (max_memory == 0), and then manually shrinking using
|
|
_cairo_cache_shrink_to from the unlock function.
|
|
|
|
Fix Carl's variable renaming mixing (cache = cache).
|
|
|
|
2005-06-24 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-ft-font.c (_transform_glyph_bitmap): Add mostly
|
|
useless (other than perhaps 90-degree rotation) code for
|
|
transforming bitmap glyphs.
|
|
|
|
2005-06-25 Carl Worth <cworth@cworth.org>
|
|
|
|
From: J. Ali Harlow" <ali@avrc.city.ac.uk>
|
|
Reviewed by: Vladimir Vukicevic <vladimirv@gmail.com>
|
|
|
|
* test/Makefile.am:
|
|
* src/cairo-win32-surface.c: (_cairo_win32_surface_create_for_dc),
|
|
(_cairo_win32_surface_create_similar),
|
|
(_cairo_win32_surface_create_dib),
|
|
(_cairo_win32_surface_composite), (categorize_solid_dest_operator),
|
|
(_cairo_win32_surface_set_clip_region): Update win32 backend to
|
|
match current API, so it actually builds once again.
|
|
|
|
2005-06-25 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-win32-surface.c: (_cairo_win32_surface_create_for_dc),
|
|
(_cairo_win32_surface_create_similar),
|
|
(_cairo_win32_surface_create_dib),
|
|
(_cairo_win32_surface_composite), (categorize_solid_dest_operator),
|
|
(_cairo_win32_surface_set_clip_region):
|
|
* test/Makefile.am:
|
|
|
|
2005-06-24 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_unscaled_font_create_glyph):
|
|
Remove stray character.
|
|
|
|
2005-06-24 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xlib-surface.c: (_xlib_glyphset_cache_create_entry),
|
|
(_glyphset_cache_entry_reference),
|
|
(_xlib_glyphset_cache_destroy_entry), (_get_glyphset_cache),
|
|
(_cairo_xlib_surface_show_glyphs32),
|
|
(_cairo_xlib_surface_show_glyphs16),
|
|
(_cairo_xlib_surface_show_glyphs8),
|
|
(_cairo_xlib_surface_show_glyphs): Prefer descriptive variable
|
|
names over single-character names. Remove unneeded XGlpyhInfo
|
|
field from glyphset_cache_entry_t.
|
|
|
|
2005-06-24 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-ft-font.c (_render_glyph_bitmap): Handle rendering
|
|
bitmap glyphslots as well as outline glyphslots.
|
|
|
|
* src/cairo-ft-font.c (_ft_unscaled_font_set_scale): When setting
|
|
the scale for a non-scalable font, use the nearest available
|
|
size (FreeType won't set the glyph metrics otherwise.)
|
|
|
|
2005-06-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Add ARGB text to 1.0 roadmap.
|
|
|
|
2005-05-17 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-png.c (write_png): Only unpremultiply ARGB32 data,
|
|
do a simpler conversion for RGB24 data (fixes #2297)
|
|
Call png_write_info() *before* we set up the write conversion...
|
|
it doesn't work after.
|
|
|
|
2005-06-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Add workaround for Render's overlapping source/dest bug
|
|
to the 0.5.2 roadmap.
|
|
|
|
2005-06-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Update ROADMAP with some comments on 0.5.2.
|
|
Add link to BadMatch bug.
|
|
|
|
* src/cairo.c: Add documentation for cairo_set_source_surface and
|
|
fix some typos in other documentation blocks.
|
|
|
|
2005-06-22 Øyvind Kolås <pippin@freedesktop.org>
|
|
|
|
* doc/public/language-bindings.xml: spelling and whitespace fix.
|
|
|
|
2005-06-21 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-pdf-surface.c: Split out font subsetting code from here,
|
|
|
|
* src/cairo-font-subset-private.h:
|
|
* src/cairo-font-subset.c: and put it here.
|
|
|
|
2005-06-21 T Rowley <tim.rowley@gmail.com>
|
|
|
|
* src/cairo-atsui-font.c: allow building against < 10.3 SDK.
|
|
|
|
2005-06-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Add -head to CAIRO_VERSION after tagging with
|
|
SNAPSHOT_0_5_1.
|
|
|
|
2005-06-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* Makefile.am: Force distcheck to enable gtk-doc.
|
|
|
|
2005-06-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* NEWS: Added notes for snapshot 0.5.1
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.5.1
|
|
|
|
2005-06-20 Owen Taylor <otaylor@redhat.com>
|
|
|
|
Workaround for https://bugs.freedesktop.org/show_bug.cgi?id=3566
|
|
|
|
* src/cairo-xlib-surface.c: Detect servers with a bug in
|
|
repeating surfaces by checking vendor string and version.
|
|
|
|
* src/cairo-xlib-surface.c: For such surfaces either fall back to
|
|
an implementation with the core protocol or fall back to the image
|
|
backend.
|
|
|
|
* src/cairo-xlib-surface.c: Save clip rects when setting a
|
|
clip region on a surface so that we set the right clip for the
|
|
surface's GC if we create it later.
|
|
|
|
2005-06-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-matrix.c: (_cairo_matrix_is_integer_translation):
|
|
Make out parameters optional. Style cleanup.
|
|
|
|
2005-06-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-pattern.c: (_cairo_pattern_is_opaque_solid): Abstract
|
|
CAIRO_ALPHA_IS_OPAQUE out for general internal use.
|
|
|
|
* src/cairo.c: (cairo_paint_with_alpha): Optimize to defer to
|
|
cairo_paint if the alpha value is actually opaque.
|
|
|
|
2005-06-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h:
|
|
* src/cairo-private.h:
|
|
* src/cairo.c: (_cairo_error), (cairo_create): Rip out
|
|
cairo_set_error_notfiy function as it is clear that it is not the
|
|
right approach.
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/error-notify.c: Remove error-notify test.
|
|
|
|
2005-06-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xcb-surface.c (_get_image_surface): Remove references
|
|
to repeat and matrix fields that no longer exist.
|
|
|
|
2005-06-17 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xcb-surface.c (_get_image_surface)
|
|
* src/cairo-xlib-surface.c (_get_image_surface): Fix
|
|
width/height typo.
|
|
|
|
2005-06-17 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-glitz-surface.c: (_cairo_glitz_surface_get_image):
|
|
* src/cairo-pattern.c: (cairo_pattern_create_for_surface):
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_surface_composite_pdf):
|
|
* src/cairo-surface.c: (_cairo_surface_init):
|
|
* src/cairo-xlib-surface.c: (_get_image_surface):
|
|
* src/cairoint.h: Remove matrix, filter and repeat from the
|
|
cairo_surface_t struct.
|
|
|
|
2005-06-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c: (cairo_reference), (cairo_destroy): cairo_reference
|
|
and cairo_destroy shouldn't behave differently when cr->status
|
|
indicates an error. Fix this bug that just slipped back in.
|
|
|
|
* src/cairo.c: (cairo_restore): Remove useless conditional return
|
|
at the end of a void function.
|
|
|
|
* src/cairo.c: (cairo_get_source), (cairo_get_font_face),
|
|
(cairo_text_extents), (cairo_show_text), (cairo_text_path):
|
|
Fix so that after calling _cairo_error the most that any cairo
|
|
entry function ever does is return a previously computed value.
|
|
|
|
2005-06-17 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* TODO: Remove the path clipping entry from the list.
|
|
|
|
2005-06-16 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-private.h: Reorder fields of cairo_private_t to match
|
|
initialization order.
|
|
|
|
* src/cairo.c: (_cairo_error): Call error_notify callback if set.
|
|
(cairo_create): Initialize error_notify callback to NULL.
|
|
(cairo_set_error_notify): New function to allow the user to set
|
|
an error notify callback.
|
|
|
|
* src/cairo.h: New cairo_set_error_notify prototye.
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/error-notify.c: (toggle_status), (do_test), (main): New
|
|
test for cairo_set_error_notify.
|
|
|
|
2005-06-15 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Add CAIRO_STATUS_DESTROYED to TODO list.
|
|
|
|
* ROADMAP: Note progress on consistent error handling.
|
|
|
|
* src/cairo-surface.c: Fix typo in documentation comment for
|
|
_cairo_surface_get_current_clip_serial.
|
|
|
|
2005-06-15 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* doc/public/Makefile.am (MKTMPL_OPTIONS): Remove --only-section-tmpl;
|
|
it doesn't really work currently :-(.
|
|
|
|
2005-06-15 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_clip_and_composite_trapezoids):
|
|
Use a clip region when rendering a non-solid pattern through
|
|
a rectangular path ... trapezoid rasterization is just too slow
|
|
to use that path when we aren't forced to do so.
|
|
|
|
2005-06-15 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c: Track removal of cairo_status_string.
|
|
(cairo_test_for_target): And add missing parenthesis.
|
|
|
|
2005-06-15 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Add cairo_finish to TODO list. Note that
|
|
cairo_satus_string has now been removed.
|
|
|
|
2005-06-15 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: Remove cairo_status_string function which can now
|
|
be replaced by:
|
|
|
|
cairo_status_to_string (cairo_status (cr));
|
|
|
|
This allows consistent handling of status values for things like
|
|
cairo_pattern_status where there is now
|
|
cairo_pattern_status_string function.
|
|
|
|
2005-06-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c: (_cairo_error): Add _cairo_error so we have a
|
|
single function which all errors can pass through. This allows the
|
|
user to set a breakpoint on error and will allow us to augment
|
|
error handling later as necessary.
|
|
|
|
* src/cairo.c: (cairo_create), (cairo_reference),
|
|
(cairo_destroy), (cairo_save), (cairo_restore),
|
|
(cairo_set_operator), (cairo_set_source_rgb),
|
|
(cairo_set_source_rgba), (cairo_set_source_surface),
|
|
(cairo_set_source), (cairo_get_source), (cairo_set_tolerance),
|
|
(cairo_set_fill_rule), (cairo_set_line_width),
|
|
(cairo_set_line_cap), (cairo_set_line_join), (cairo_set_dash),
|
|
(cairo_set_miter_limit), (cairo_translate), (cairo_scale),
|
|
(cairo_rotate), (cairo_transform), (cairo_set_matrix),
|
|
(cairo_identity_matrix), (cairo_user_to_device),
|
|
(cairo_user_to_device_distance), (cairo_device_to_user),
|
|
(cairo_device_to_user_distance), (cairo_new_path), (cairo_move_to),
|
|
(cairo_line_to), (cairo_curve_to), (cairo_arc),
|
|
(cairo_arc_negative), (cairo_rel_move_to), (cairo_rel_line_to),
|
|
(cairo_rel_curve_to), (cairo_rectangle), (cairo_close_path),
|
|
(cairo_paint), (cairo_paint_with_alpha), (cairo_mask),
|
|
(cairo_mask_surface), (cairo_stroke_preserve),
|
|
(cairo_fill_preserve), (cairo_copy_page), (cairo_show_page),
|
|
(cairo_in_stroke), (cairo_in_fill), (cairo_stroke_extents),
|
|
(cairo_fill_extents), (cairo_clip_preserve), (cairo_reset_clip),
|
|
(cairo_select_font_face), (cairo_get_font_face),
|
|
(cairo_font_extents), (cairo_set_font_face), (cairo_set_font_size),
|
|
(cairo_set_font_matrix), (cairo_get_font_matrix),
|
|
(cairo_text_extents), (cairo_glyph_extents), (cairo_show_text),
|
|
(cairo_show_glyphs), (cairo_text_path), (cairo_glyph_path),
|
|
(cairo_get_operator), (cairo_get_tolerance),
|
|
(cairo_get_current_point), (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_copy_path), (cairo_copy_path_flat),
|
|
(cairo_append_path), (cairo_status): Make all assignements to
|
|
cr->status go through the new _cairo_error function. Remove
|
|
CAIRO_CHECK_SANITY macro.
|
|
|
|
2005-06-15 Carl Worth <cworth@cworth.org>
|
|
|
|
* doc/public/cairo-sections.txt: Remove cairo-atsui section since
|
|
cairo-atsui.h is currently empty.
|
|
Add cairo_path_data_type_t and cairo_path_data_t.
|
|
|
|
* test/.cvsignore: Add pdf-clip and pdf-clip.pdf.
|
|
|
|
2005-06-14 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-gstate-private.h:
|
|
* src/cairo-gstate.c: (_cairo_gstate_init),
|
|
(_cairo_gstate_init_copy), (_cairo_gstate_fini),
|
|
(_cairo_gstate_set_clip), (_composite_trap_region),
|
|
(_cairo_gstate_fill), (_cairo_gstate_reset_clip),
|
|
(_cairo_gstate_intersect_clip_path), (_cairo_clip_path_reference),
|
|
(_cairo_clip_path_destroy), (_cairo_gstate_intersect_clip_region),
|
|
(_cairo_gstate_intersect_clip_mask), (_cairo_gstate_clip):
|
|
* src/cairo-pdf-surface.c:
|
|
(_cairo_pdf_surface_create_for_document),
|
|
(_cairo_pdf_path_move_to), (_cairo_pdf_path_line_to),
|
|
(_cairo_pdf_path_close_path), (_cairo_pdf_surface_fill_path),
|
|
(_cairo_pdf_surface_intersect_clip_path),
|
|
(_cairo_pdf_document_add_page):
|
|
* src/cairo-surface.c: (_cairo_surface_get_clip_mode),
|
|
(_cairo_surface_fill_path), (_cairo_surface_reset_clip),
|
|
(_cairo_surface_set_clip_path_recursive),
|
|
(_cairo_surface_set_clip_path):
|
|
* src/cairoint.h: Implement path clipping and refactor
|
|
_cairo_gstate_clip() out in three different functions
|
|
corresponding to the three different clipping modes.
|
|
|
|
* src/cairo-glitz-surface.c:
|
|
* src/cairo-ps-surface.c:
|
|
* src/cairo-win32-surface.c:
|
|
* src/cairo-xcb-surface.c:
|
|
* src/cairo-xlib-surface.c:
|
|
* src/cairo-image-surface.c:
|
|
* src/cairo-quartz-surface.c: Add NULL pointers for
|
|
intersect_clip_path.
|
|
|
|
* test/Makefile.am:
|
|
* test/pdf-clip.c: New test case to exercise PDF clipping code.
|
|
|
|
2005-06-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-glitz-surface.c: (_cairo_glitz_surface_create_similar),
|
|
(_cairo_glitz_surface_clone_similar),
|
|
(_cairo_glitz_pattern_acquire_surface),
|
|
(_cairo_glitz_surface_composite_trapezoids):
|
|
* src/cairo-image-surface.c: (_cairo_image_surface_create_similar):
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_surface_create_similar):
|
|
* src/cairo-ps-surface.c: (_cairo_ps_surface_create_similar):
|
|
* src/cairo-quartz-surface.c:
|
|
(_cairo_quartz_surface_create_similar):
|
|
* src/cairo-surface.c: (_cairo_surface_create_similar_scratch),
|
|
(_cairo_surface_create_similar_solid):
|
|
* src/cairo-win32-surface.c: (_cairo_win32_surface_create_similar),
|
|
(_cairo_win32_surface_get_subimage):
|
|
* src/cairo-xcb-surface.c: (_cairo_xcb_surface_create_similar),
|
|
(_cairo_xcb_surface_clone_similar):
|
|
* src/cairo-xlib-surface.c: (_cairo_xlib_surface_create_similar),
|
|
(_cairo_xlib_surface_clone_similar):
|
|
* src/cairoint.h: Remove Boolean 'drawable' parameter from the
|
|
create_similar surface backend function since nothing anywhere is
|
|
actually using this parameter.
|
|
|
|
2005-06-14 T Rowley <tim.rowley@gmail.com>
|
|
|
|
* src/cairo-win32-font.c: Correct extents for text with a general
|
|
tranform.
|
|
|
|
2005-06-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Remove comment suggesting ambiguity of whether
|
|
cairo_get_target references the surface, (we decided as part of
|
|
the API shakeup that cairo functions returning pointers to
|
|
internal objects do not automatically take a reference).
|
|
|
|
2005-06-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-pattern.c: (_cairo_pattern_create_in_error): Add new
|
|
_cairo_pattern_create_in_error.
|
|
|
|
* src/cairo.c: (cairo_get_source): Propagate error values from
|
|
cr->status to pattern->status.
|
|
|
|
2005-06-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c (_cairo_set_source_solid),
|
|
(cairo_set_source_surface), (cairo_mask_surface): No longer need
|
|
to check for NULL after creating a pattern.
|
|
|
|
* src/cairo.c (cairo_set_source), (cairo_mask): Propagate status
|
|
errors from pattern->status to cr->status.
|
|
|
|
Originally 2005-05-08 Owen Taylor <otaylor@redhat.com>:
|
|
|
|
* src/cairo-pattern.c src/cairoint.h: If allocation of pattern
|
|
objects fails, return special static nil pattern objects.
|
|
|
|
* src/cairo-pattern.c: If adding a color stop fails to allocate
|
|
memory, set pattern->status. (And fix a memory leak.) Make public
|
|
functions return when pattern->status is set, (and no longer
|
|
return a cairo_status_t).
|
|
|
|
* src/cairo-pattern.c src/cairo.h doc/public/cairo-sections.txt:
|
|
Add cairo_pattern_status()
|
|
|
|
* src/cairo-gstate.c: Check the status of gstate->source and
|
|
of mask patterns passed in.
|
|
|
|
2005-06-13 Carl Worth <cworth@cworth.org>
|
|
|
|
Originally 2005-05-08 Owen Taylor <otaylor@redhat.com>:
|
|
|
|
* src/cairo.c (cairo_create): If cairo_create() fails, return
|
|
a special static object, cairo_nil.
|
|
|
|
* src/cairo.c (cairo_reference): Don't return early if
|
|
cr->status is set. cr->status should not affect reference
|
|
counting.
|
|
|
|
* src/cairo.c: (cairo_reference), (cairo_destroy): Ignore any
|
|
magic object with a reference count of -1.
|
|
|
|
2005-06-13 Carl Worth <cworth@cworth.org>
|
|
|
|
Originally 2005-06-02 Carl Worth <cworth@cworth.org>:
|
|
|
|
* src/cairo.h: Add a status field to cairo_path_t.
|
|
|
|
* src/cairo.c:
|
|
(cairo_copy_path), (cairo_copy_path_flat): Add documentation for
|
|
the new approach for handling errors in these functions---always
|
|
returning a valid pointer with at least a status.
|
|
(cairo_append_path): Propagate path status errors to the
|
|
context. Add note to documentation on initializing path->status.
|
|
|
|
* src/cairo-path-data-private.h: Add missing cairo_private
|
|
qualifier to a couple functions.
|
|
|
|
* src/cairo-path-data.c: (_cairo_path_data_create_real): Track new
|
|
status field in cairo_path_t.
|
|
(cairo_path_destroy): Don't destroy cairo_path_nil. Add
|
|
documentation.
|
|
(_cairo_path_data_create):
|
|
(_cairo_path_data_create_flat):
|
|
(_cairo_path_data_append_to_context): Add documentation.
|
|
(_cairo_path_data_create_in_error): New function to create a
|
|
placeholder cairo_path_t just to propagate a cairo_status_t error.
|
|
|
|
2005-06-11 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-gstate.c: (_cairo_gstate_init,
|
|
_cairo_gstate_init_copy, _cairo_gstate_fini): Make these functions
|
|
static, which allows slightly less awkward error handling within
|
|
them.
|
|
|
|
2005-06-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Provide font-backend-specific macros for
|
|
FONT_FAMILY_DEFAULT. Change CAIRO_FT_FONT_FAMILY_DEFAULT from
|
|
"serif" to "" to allow the actual default to come from the
|
|
system/user configuration.
|
|
|
|
2005-06-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Pull the enum out from inside cairo_path_data_t and
|
|
give it a name of cairo_path_data_type_t. This allows C++ programs
|
|
to see the enum values. It also allows variables to be declared of
|
|
this type for manually constructing a cairo_path_t.
|
|
|
|
2005-06-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Add 'consistent error handling' to 1.0 roadmap. (This
|
|
isn't new, we just forgot to list it here before).
|
|
|
|
* TODO: Big cleanup to remove finished items. Also, split the file
|
|
up to separate TODO items that affect the API from items that do
|
|
not.
|
|
|
|
2005-06-10 Carl Worth <cworth@cworth.org>
|
|
|
|
Originally: 2005-06-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_surface_show_page):
|
|
* src/cairo-xcb-surface.c:
|
|
(_cairo_xcb_surface_acquire_source_image),
|
|
(_cairo_xcb_surface_acquire_dest_image):
|
|
* src/cairo-xlib-surface.c:
|
|
(_cairo_xlib_surface_acquire_source_image),
|
|
(_cairo_xlib_surface_acquire_dest_image): Rework occurrences
|
|
of 'if (status == CAIRO_STATUS_SUCCESS)' to use 'if (status)'
|
|
instead where trivial.
|
|
|
|
2005-06-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-font.c:
|
|
* src/cairo-ft-font.c:
|
|
* src/cairo-glitz-surface.c:
|
|
* src/cairo-gstate.c:
|
|
* src/cairo-image-surface.c:
|
|
* src/cairo-pattern.c:
|
|
* src/cairo-pdf-surface.c:
|
|
* src/cairo-png.c:
|
|
* src/cairo-surface.c:
|
|
* src/cairo-win32-font.c:
|
|
* src/cairo-win32-surface.c:
|
|
* src/cairo-xcb-surface.c:
|
|
* src/cairo-xlib-surface.c: Remove STATUS_OK macro which was not
|
|
being used universally.
|
|
|
|
2005-06-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Remove trailing comma from enum values which gcc
|
|
4.0 does not want to see (Luis Villa). Closes bug #3502.
|
|
|
|
2005-06-09 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* test/Makefile.am (INCLUDES): Add
|
|
-I$(top_builddir)/src for cairo-features.h (Tomasz Cholewo)
|
|
|
|
2005-06-07 Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_surface_show_glyphs):
|
|
Font matrix was output incorrectly; the implicit mirror-in-y
|
|
transformation was not computed correctly, missing a negation
|
|
of the 'xy' component.
|
|
|
|
2005-06-02 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_clip): When clipping, update
|
|
the clip surface to a new surface the size of the intersection of
|
|
the old clip surface and the extents of the new clip path.
|
|
|
|
2005-06-03 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-font.c: (cairo_font_face_reference),
|
|
(cairo_font_face_destroy), (_cairo_simple_font_face_destroy),
|
|
(_cairo_unscaled_font_reference), (_cairo_unscaled_font_destroy),
|
|
(cairo_scaled_font_reference), (cairo_scaled_font_destroy):
|
|
* src/cairo-ft-font.c: (_ft_font_cache_destroy_cache),
|
|
(_cairo_ft_unscaled_font_destroy), (_ft_font_face_destroy):
|
|
* src/cairo-glitz-surface.c: (_cairo_glitz_area_destroy):
|
|
* src/cairo-path-data.c: (cairo_path_destroy):
|
|
* src/cairo-pdf-surface.c: (cairo_pdf_font_destroy),
|
|
(cairo_pdf_ft_font_destroy):
|
|
* src/cairo-win32-font.c: (_cairo_win32_scaled_font_destroy):
|
|
Allow NULL as a valid value for several objects. That is, calling
|
|
reference or destroy on these objects will simply do nothing,
|
|
successfully.
|
|
|
|
* src/cairo-atsui-font.c: (_cairo_atsui_font_destroy_font): Remove
|
|
extra whitespace.
|
|
|
|
2005-06-03 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-cache.c: (_cairo_cache_init), (_cairo_cache_destroy):
|
|
Remove unused cache->refcount and _cairo_cache_reference().
|
|
|
|
* src/cairo-cache.c: (_cairo_cache_destroy): Remove gratuitous
|
|
nesting as recommended in CODING_STYLE.
|
|
|
|
2005-06-03 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-array.c: (_cairo_user_data_array_fini):
|
|
* src/cairo-font.c: (cairo_font_face_destroy):
|
|
* src/cairo-surface.c: (cairo_surface_destroy): Fix name of
|
|
_cairo_user_data_array_destroy to be _cairo_user_data_array_fini.
|
|
|
|
2005-06-03 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-glitz-surface.c:
|
|
(_cairo_glitz_glyph_cache_create_entry),
|
|
(_cairo_glitz_glyph_cache_destroy_entry),
|
|
(_cairo_glitz_glyph_cache_destroy_cache),
|
|
(_cairo_glitz_surface_show_glyphs): Rename functions to match the
|
|
naming scheme used by cairo-cache.c and all other users of
|
|
it. Though it's quite likely that glitz had this right and now
|
|
everything could be changed to match it instead. I'll save that
|
|
for some day when we're cleaning up the cache code.
|
|
|
|
2005-06-03 Carl Worth <cworth@cworth.org>
|
|
|
|
* CODING_STYLE: Fix spelling errors.
|
|
|
|
2005-06-03 Carl Worth <cworth@cworth.org>
|
|
|
|
* CODING_STYLE: Fix Freudian unwrapped line in paragraph
|
|
describing why long lines should be wrapped.
|
|
|
|
2005-06-03 Carl Worth <cworth@cworth.org>
|
|
|
|
* CODING_STYLE: Add CODING_STYLE document to standardize on some
|
|
style issues.
|
|
|
|
* src/cairo-atsui-font.c:
|
|
* src/cairo-cache.c:
|
|
* src/cairo-ft-font.c:
|
|
* src/cairo-glitz-surface.c:
|
|
* src/cairo-gstate.c:
|
|
* src/cairo-matrix.c:
|
|
* src/cairo-pattern.c:
|
|
* src/cairo-pdf-surface.c:
|
|
* src/cairo-spline.c:
|
|
* src/cairo-wideint.c:
|
|
* src/cairo-win32-font.c:
|
|
* src/cairo-xlib-surface.c: Standardize brace handling around all
|
|
else clauses according to new CODING_STYLE guidelines.
|
|
|
|
2005-06-03 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
Patch from Tomasz Cholewo <cholewo@ieee-cis.org>:
|
|
|
|
* src/cairo-pdf-surface.c: (cairo_pdf_ft_font_write_head_table),
|
|
(cairo_pdf_ft_font_generate): Store the index of the checksum
|
|
instead of a pointer to the location.
|
|
|
|
2005-06-03 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-gstate.c:
|
|
* src/cairo.c: (_cairo_set_source_solid), (cairo_set_source_rgb),
|
|
(cairo_set_source_rgba): Move internal convenience up from
|
|
_cairo_gstate_set_source_solid to _cairo_set_source_solid so that
|
|
all set_source functions flow through cairo_set_source.
|
|
|
|
2005-06-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_init): Remove obsolete
|
|
_cairo_gstate_set_target_surface, folding its contents into
|
|
_cairo_gstate_init, most of which disappears due to constant
|
|
folding. Ensure that gstate->next is initialized even if
|
|
_cairo_pattern_create_solid fails.
|
|
|
|
* src/cairo-xcb-surface.c: Remove unused
|
|
_cairo_xcb_surface_set_clip_region.
|
|
|
|
2005-06-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-font.c:
|
|
* src/cairo-ft-font.c:
|
|
* src/cairo-glitz-surface.c:
|
|
* src/cairo-gstate.c:
|
|
* src/cairo-image-surface.c:
|
|
* src/cairo-pattern.c:
|
|
* src/cairo-pdf-surface.c:
|
|
* src/cairo-png.c:
|
|
* src/cairo-surface.c:
|
|
* src/cairo-win32-font.c:
|
|
* src/cairo-win32-surface.c:
|
|
* src/cairo-xcb-surface.c:
|
|
* src/cairo-xlib-surface.c: Rename CAIRO_OK to STATUS_OK. No
|
|
intended changes in functionality.
|
|
|
|
2005-06-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate-private.h:
|
|
* src/cairo-gstate.c: Rename gstate->surface to gstate->target. No
|
|
intended changes in functionality.
|
|
|
|
2005-06-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate-private.h:
|
|
* src/cairo-gstate.c: (_cairo_gstate_init): Remove unused fields
|
|
from cairo_gstate_t, (font_family, font_slant,
|
|
font_weight). Reorder fields to match between declaration and
|
|
initialization and to put the most problematic fields (surface and
|
|
source) at the end. No intended changes in functionality.
|
|
|
|
2005-06-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am (XFAIL_TESTS): Add self-intersecting to the
|
|
list of expected failures.
|
|
|
|
2005-06-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/self-intersecting-ref.png:
|
|
* test/self-intersecting.c: (draw), (main): Add self-intersecting
|
|
test which demonstrates the long-standing bug with stroking
|
|
self-intersecting paths.
|
|
|
|
2005-06-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_get_clip_extents): Fix bug in
|
|
converting box to rectangle that left clip_rect.height
|
|
uninitialized, (leading to unpredictable, intermittent test
|
|
failures).
|
|
|
|
2005-05-31 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: (cairo_status_to_string), (cairo_status_string):
|
|
Add new function cairo_status_to_string an reimplement
|
|
cairo_status_string in terms of the new function.
|
|
|
|
2005-05-27 Olivier Andrieu <oliv__a@users.sourceforge.net>
|
|
|
|
* src/cairo-path-data.c (_cpdc_curve_to_flatten),
|
|
(_cpdp_curve_to_flatten) : Fix memory leak
|
|
|
|
2005-05-26 Keith Packard <keithp@keithp.com>
|
|
|
|
reviewed by: krh, otaylor, cworth
|
|
|
|
Replace nesting-only surface clipping with gstate contained
|
|
serial-number tracked clipping sets that are loaded into the surface
|
|
on demand just before each rendering operation. This permits
|
|
multiple cairo_t contexts to reference a surface without
|
|
regard to ordering of operations among the contexts.
|
|
|
|
Also in this patch is a change to the xlib surface that
|
|
creates two separate Pictures, one for source and one for
|
|
destination operands which separates the source clipping
|
|
from destination clipping. Cairo now specifies that sources
|
|
are never clipped by any clipping applied to them as destinations.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-gstate-private.h:
|
|
Move cairo_clip_t (renamed from cairo_clip_rec_t) from cairoint.h
|
|
to cairo-gstate-private.h. Eliminate stack of clip state
|
|
from surfaces. Add new surface clipping API.
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_init),
|
|
(_cairo_gstate_init_copy), (_cairo_gstate_fini),
|
|
(_cairo_gstate_has_surface_clip), (_cairo_gstate_set_clip),
|
|
(_cairo_gstate_get_clip_extents),
|
|
(_cairo_gstate_set_target_surface), (_cairo_gstate_paint),
|
|
(_cairo_gstate_combine_clip_surface),
|
|
(_cairo_gstate_intersect_clip), (_get_mask_extents),
|
|
(_cairo_gstate_mask), (_cairo_gstate_stroke),
|
|
(_clip_and_compute_extents_arbitrary), (_composite_trap_region),
|
|
(_cairo_gstate_fill), (_cairo_gstate_reset_clip),
|
|
(_cairo_gstate_clip), (_cairo_gstate_show_glyphs):
|
|
Manage clip objects entirely within the gstate, loading
|
|
the whole thing into the surface just before drawing.
|
|
|
|
* src/cairo-pattern.c:
|
|
(_cairo_pattern_acquire_surface_for_gradient),
|
|
(_cairo_pattern_acquire_surface_for_solid),
|
|
(_cairo_pattern_acquire_surface_for_surface),
|
|
(_cairo_pattern_acquire_surface), (_cairo_pattern_release_surface):
|
|
Source surfaces need not have clipping modified as the
|
|
surface interface now specifies that source surfaces are always
|
|
unclipped.
|
|
|
|
* src/cairo-surface.c: (_cairo_surface_init),
|
|
(cairo_surface_finish), (_cairo_surface_clone_similar),
|
|
(_cairo_surface_get_current_clip_serial),
|
|
(_cairo_surface_allocate_clip_serial), (_cairo_surface_reset_clip),
|
|
(_cairo_surface_can_clip_region), (_cairo_surface_set_clip_region),
|
|
(_cairo_surface_can_clip_path), (_cairo_surface_clip_path),
|
|
(_cairo_surface_get_extents):
|
|
Eliminate nested clipping contexts, leaving clip management
|
|
entirely to the gstate. Create new clip API for the gstate
|
|
which uses per-surface serial numbers to match gstate clipping
|
|
against current surface clipping values.
|
|
|
|
Surfaces no longer track clipping regions at all, so the
|
|
old _cairo_surface_get_clip_extents has been replaced with
|
|
_cairo_surface_get_extents. For PDF/PS surfaces, this
|
|
function is expected to return a rectangle covering the
|
|
entire fixed point coordinate space to leave rendering
|
|
unclipped by the surface.
|
|
|
|
* src/cairo-xcb-surface.c:
|
|
Region clipping capability is now signalled by a non-NULL
|
|
function pointer in set_clip_region.
|
|
|
|
* src/cairo-xlib-surface.c: (_cairo_xlib_surface_finish),
|
|
(_cairo_xlib_surface_ensure_src_picture),
|
|
(_cairo_xlib_surface_ensure_dst_picture),
|
|
(_cairo_xlib_surface_set_matrix), (_cairo_xlib_surface_set_filter),
|
|
(_cairo_xlib_surface_set_repeat),
|
|
(_cairo_xlib_surface_set_attributes),
|
|
(_cairo_xlib_surface_composite),
|
|
(_cairo_xlib_surface_fill_rectangles),
|
|
(_cairo_xlib_surface_composite_trapezoids),
|
|
(_cairo_xlib_surface_set_clip_region),
|
|
(_cairo_xlib_surface_create_internal),
|
|
(_cairo_xlib_surface_show_glyphs32),
|
|
(_cairo_xlib_surface_show_glyphs16),
|
|
(_cairo_xlib_surface_show_glyphs8),
|
|
(_cairo_xlib_surface_show_glyphs):
|
|
Each surface now contains two Pictures, one for source
|
|
and one for destination operands so that source operands
|
|
are never clipped by destination clipping.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: (cairo_status_string):
|
|
CAIRO_STATUS_BAD_NESTING removed
|
|
|
|
* test/Makefile.am:
|
|
* test/self-copy.c: (main):
|
|
self-copy now passes (Xlib only, until libpixman changes land)
|
|
|
|
2005-05-26 Olivier Andrieu <oliv__a@users.sourceforge.net>
|
|
|
|
* src/cairo.c: trivial doc fixes.
|
|
|
|
2005-05-24 Carl Worth <cworth@cworth.org>
|
|
|
|
* gtk-doc.make: Re-synch with latest from gtk-doc CVS tree.
|
|
|
|
* doc/public/Makefile.am (MKTMPL_OPTIONS): Add --only-section-tmpl
|
|
option so that changes to inline documentation does not lead to
|
|
churn in the .sgml template files.
|
|
|
|
* doc/public/tmpl/cairo-font.sgml:
|
|
* doc/public/tmpl/cairo-ft.sgml:
|
|
* doc/public/tmpl/cairo-glitz.sgml:
|
|
* doc/public/tmpl/cairo-matrix.sgml:
|
|
* doc/public/tmpl/cairo-pattern.sgml:
|
|
* doc/public/tmpl/cairo-pdf.sgml:
|
|
* doc/public/tmpl/cairo-png.sgml:
|
|
* doc/public/tmpl/cairo-ps.sgml:
|
|
* doc/public/tmpl/cairo-quartz.sgml:
|
|
* doc/public/tmpl/cairo-surface.sgml:
|
|
* doc/public/tmpl/cairo-xcb.sgml:
|
|
* doc/public/tmpl/cairo-xlib.sgml:
|
|
* doc/public/tmpl/cairo.sgml: Commit new templates now that
|
|
gtk-doc has ripped all the inline portions out.
|
|
|
|
* doc/public/tmpl/cairo-win32.sgml:
|
|
* doc/public/tmpl/cairo-xcb-xrender.sgml:
|
|
* doc/public/tmpl/cairo-xlib-xrender.sgml: New template files
|
|
added for new sections.
|
|
|
|
* doc/public/cairo-sections.txt: Update to match current API.
|
|
|
|
* src/cairo-xcb.h: Make parameter names match those in the .c file
|
|
and its documentation.
|
|
|
|
2005-05-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c (cairo_create): Protect less-than and greater-than
|
|
symbols in documentation string.
|
|
|
|
* TODO: Not that a patch has been submitted for consistent error
|
|
handling.
|
|
|
|
* src/cairo.c: Fix documentation string for cairo_create so that
|
|
it might actualyl appear in the manual.
|
|
|
|
2005-05-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Add -head to CAIRO_VERSION after tagging with
|
|
SNAPSHOT_0_5_0.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* PORTING_GUIDE: Added porting guide to help with transition to
|
|
cairo 0.5 API.
|
|
|
|
* NEWS: Added notes for snapshot 0.5.0
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.5.0
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xcb-surface.c: (_get_image_surface),
|
|
(_cairo_xcb_surface_create_internal): Bring up to date with
|
|
Keith's latest improvements to cairo-xlib-surface.c: Add some
|
|
comments about how and why masks are computed. Generalize
|
|
overflow detection in mask computation. Expand on pixman format
|
|
conversion comment. Fix the broken visual->format case.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
Two fixes from Kristian Høgsberg:
|
|
|
|
* src/cairo-output-stream.c: (_cairo_output_stream_create),
|
|
(_cairo_output_stream_destroy),
|
|
(_cairo_output_stream_create_for_file): Fix to close the file if
|
|
we opened it.
|
|
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_document_finish): Grab the
|
|
status from out of the stream _before_ we destroy the stream.
|
|
|
|
2005-05-17 Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo-xlib-surface.c: (_get_image_surface):
|
|
Add some comments about how and why masks are computed.
|
|
Generalize overflow detection in mask computation.
|
|
Expand on pixman format conversion comment.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xcb-surface.c:
|
|
* src/cairo-xlib-surface.c: Fix documentation to not mention
|
|
set_size for the _for_bitmap functions.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* util/cairo-api-update: Remove #ifdef munging since we once again
|
|
support either #if or #ifdef.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* RELEASING: Update instructions to match output of 'make
|
|
distcheck'
|
|
|
|
* src/Makefile.am:
|
|
* test/Makefile.am: Add private headers and flesh out CLEANFILES
|
|
so that 'make distcheck' actually passes.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Add a few more REPLACED_BY and DEPRECATED_BY
|
|
definitions.
|
|
|
|
* util/cairo-api-update: Add some helpful warnings.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/Makefile.am (libcairo_xlib_headers): Add
|
|
cairo-xlib-xrender.h which was missed from an earlier commit.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/Makefile.am:
|
|
* src/cairo-xcb.h:
|
|
* src/cairo-xcb-xrender.h:
|
|
* src/cairo-xcb-surface.c:
|
|
(cairo_xcb_surface_create),
|
|
(cairo_xcb_surface_create_for_bitmap),
|
|
(cairo_xcb_surface_create_with_xrender_format): Update cairo-xcb.h
|
|
to provide the same style of interface as cairo-xlib.h.
|
|
|
|
* test/cairo-test.c: Update to match new cairo_xcb_surface_t
|
|
create functions.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xlib-surface.c (_get_image_surface): Avoid shifting
|
|
32-bit quanity by 32 bits, which is undefined behavior.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
Rework of cairo_xlib_surface create functions by Keith Packard:
|
|
|
|
* src/cairo-xlib-xrender.h:
|
|
Add cairo_xlib_surface_create_with_render_format.
|
|
|
|
* src/cairo-xlib.h:
|
|
* src/cairo-xlib-surface.c:
|
|
(cairo_xlib_surface_create),
|
|
(cairo_xlib_surface_create_for_bitmap): Reduce Xlib constructors
|
|
down to two simple forms. Add width, height to constructors and
|
|
eliminate any synchronous size queries from the implementation.
|
|
|
|
* test/cairo-test.c: (create_xlib_surface):
|
|
* test/xlib-surface.c: (do_test): Update to match new
|
|
cairo_xlib_surface_t create functions.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-output-stream.c: Remove destroy_closure from
|
|
cairo_output_stream_t interface.
|
|
|
|
* src/cairo-pdf.h:
|
|
* src/cairo-pdf-surface.c: Remove destroy_closure argument from
|
|
cairo_pdf_surface_create_for_stream. Rename width,height to
|
|
width_in_points, height_in_points for better clarity.
|
|
|
|
* src/cairo-ps.h:
|
|
* src/cairo-ps-surface.c: Brush a bunch of dust off of the PS
|
|
backend and bring it up to date with the latest API conventions
|
|
from the PDF backend. These include: accepting a filename rather
|
|
than a FILE in the primary constructor, providing a stream-based
|
|
interface for more flexibility, and accepting a surface size in
|
|
device-space units (points) rather than inches.
|
|
|
|
* test/pdf-surface.c: (main): Make it a little more clear that the
|
|
width and height being passed around are in units of points.
|
|
|
|
* test/ps-surface.c: (main): Update to the latest cairo-ps.h
|
|
changes as described above. Notice how much more sane things
|
|
become now that the surface size is described in device-space
|
|
units.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/ps-surface.c: (draw), (main): Add simple test for ps
|
|
surface backend (modeled after pdf-surface.c).
|
|
|
|
* test/pdf-surface.c: (main): Add print message telling user to
|
|
examine resulting file.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/pdf-surface.c: (draw), (main): Update PDF test case to make
|
|
sure we're actually getting the right paper size, image scaling
|
|
etc. And it should now be easier to see if cairo is happy by manually
|
|
viewing the resulting PDF file.
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xlib-test.h: Fix to include cairo-xlib.h, (which also
|
|
fixes test/xlib-surface.c).
|
|
|
|
2005-05-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/pdf-surface.c: (main): Update to the latest PDF surface API
|
|
changes: use filename not FILE* and use surface dimension in
|
|
points, not inches.
|
|
|
|
2005-05-16 Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo-pattern.c: (_cairo_pattern_shader_init):
|
|
Initialize op->stops[0].scale = 0.
|
|
|
|
This scale value is used only when computing gradient values
|
|
before the defined range, in which case stop 0 is used for both
|
|
ends of the interpolation, making the value of 'scale' not
|
|
actually matter, except that valgrind notices we're using
|
|
an undefined value.
|
|
|
|
2005-05-16 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am: Remove quarter-over test name accidentally
|
|
added to Makefile.
|
|
|
|
2005-05-16 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-pdf-surface.c (cairo_pdf_surface_create):
|
|
* src/cairo-output-stream.c
|
|
(_cairo_output_stream_create_for_file): Take a filename instead of
|
|
a FILE pointer.
|
|
|
|
2005-05-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xcb.h:
|
|
* src/cairo-xcb-surface.c: (_cairo_xcb_surface_create_similar),
|
|
(_cairo_xcb_surface_finish), (_cairo_xcb_surface_get_size),
|
|
(_bits_per_pixel), (_bytes_per_line), (_get_image_surface),
|
|
(_draw_image_surface), (_cairo_xcb_surface_get_extents),
|
|
(_cairo_surface_is_xcb), (_cairo_xcb_surface_create_internal),
|
|
(cairo_xcb_surface_create_for_pixmap),
|
|
(cairo_xcb_surface_create_for_pixmap_with_visual),
|
|
(cairo_xcb_surface_create_for_window_with_visual),
|
|
(cairo_xcb_surface_set_size):
|
|
Brush the dust off the XCB backend and get it compiling and
|
|
working again. This patch makes the XCB surface API match that of
|
|
the Xlib surface API as of yesterday. But, it's already stale as
|
|
the Xlib API changed again. So we'll need one more revision of the
|
|
XCB backend before the next snapshot.
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/cairo-test.c: (create_xcb_surface), (cleanup_xcb):
|
|
* test/cairo-test.h: Add support for testing of the xcb backend as
|
|
well.
|
|
|
|
2005-05-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c: (cairo_test_real):
|
|
* test/pdf-surface.c: (main):
|
|
* test/xlib-surface.c: (do_test), (main): Cleanup output a bit,
|
|
move verbose messages to test-specific log file.
|
|
|
|
2005-05-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xlib-surface.c: (cairo_xlib_surface_create_with_visual):
|
|
Fix the last commit so it actually compiles now.
|
|
|
|
2005-05-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xlib-surface.c: (cairo_test_xlib_disable_render),
|
|
(cairo_xlib_surface_create_with_visual)
|
|
|
|
* test/.cvsignore: Fix a few documentation typos in the recent
|
|
xlib surface rework.
|
|
|
|
2005-05-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-atsui.h:
|
|
* src/cairo-ft.h:
|
|
* src/cairo-glitz.h:
|
|
* src/cairo-pdf.h:
|
|
* src/cairo-ps.h:
|
|
* src/cairo-quartz.h:
|
|
* src/cairo-win32.h:
|
|
* src/cairo-xcb.h:
|
|
* src/cairo-xlib.h: Add an #error if cairo-foo.h is included when
|
|
cairo was compiled without support for the foo backend.
|
|
|
|
2005-05-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/pdf-surface.c (main): Update for change in
|
|
cairo_pdf_surface_create which no longer accepts DPI values.
|
|
|
|
2005-05-13 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c src/cairo-xlib.h
|
|
doc/public/cairo-sections.txt: Drop the _for_pixmap() and
|
|
_for_window() out of the create functions and use some lazy
|
|
cleverness to sniff the information out as needed.
|
|
|
|
* src/cairo-xlib-surface.c src/cairo-xlib-test.h Makefile.am:
|
|
add cairo_test_xlib_disable_render() to turn off RENDER
|
|
for tests.
|
|
|
|
* test/xlib-surface.c: Test various different types of
|
|
Xlib surface creation.
|
|
|
|
* src/cairo-xlib.h: Remove left-over include of Xrender.h.
|
|
|
|
2005-05-13 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-pdf-surface.c (_cairo_pdf_document_open_stream): Make
|
|
this a varg function and use the new
|
|
_cairo_output_stream_vprintf() function to format extra dict
|
|
contents.
|
|
|
|
* src/cairo-output-stream.c (_cairo_output_stream_vprintf):
|
|
Reimplement the printf logic so we can special case formatting of
|
|
doubles to be locale independent and trim trailing zeros.
|
|
|
|
* src/cairo-pdf-surface.c: Rename
|
|
cairo_pdf_surface_create_for_callback() to
|
|
cairo_pdf_surface_create_for_stream(), and change PDF constructors
|
|
to take width and height as points and move PPI setting to
|
|
cairo_pdf_surface_set_ppi()
|
|
|
|
2005-05-13 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal): Fix
|
|
misplaced goto.
|
|
|
|
2005-05-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-image-surface.c: (_cairo_image_surface_create_with_masks):
|
|
Fix image->data to be unsigned
|
|
|
|
* src/cairo-glitz-surface.c: (_cairo_glitz_surface_get_image):
|
|
* src/cairo-image-surface.c:
|
|
(_cairo_image_surface_create_for_pixman_image),
|
|
* src/cairo-xlib-surface.c: (_get_image_surface),
|
|
(_draw_image_surface), (_xlib_glyphset_cache_create_entry):
|
|
Track change in signedness of data member/parameter.
|
|
|
|
2005-05-12 Carl Worth <cworth@cworth.org>
|
|
|
|
Update xcb backend to compile after recent API changes:
|
|
|
|
* src/cairo-xcb-surface.c: (_cairo_xcb_surface_finish):
|
|
Fix missing return value.
|
|
(_cairo_xcb_surface_acquire_source_image): Remove calls to
|
|
non-existent cairo_surface functions.
|
|
(_cairo_xcb_surface_set_matrix): Update for new matrix member names.
|
|
(_cairo_xcb_surface_get_extents): Fix typo.
|
|
|
|
2005-05-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/paint-with-alpha-ref.png:
|
|
* test/paint-with-alpha.c: (draw), (main): Add new test for bug in
|
|
cairo_paint_with_alpha not transforming the source.
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_mask): Use a transformed copy
|
|
of the source just like we do in all the other calls to
|
|
cairo_surface_composite. Fixes the bug tested by
|
|
test/paint-with-alpha.
|
|
|
|
2005-05-12 Keith Packard <keithp@keithp.com>
|
|
|
|
reviewed by: otaylor
|
|
|
|
* src/cairo-gstate.c: (_get_mask_extents):
|
|
_get_mask_extents creates a pixman region but
|
|
neglects to destroy it.
|
|
|
|
2005-05-11 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-win32-surface.c (categorize_solid_dest_operator):
|
|
Handle more cases by assuming no-super-luminescent colors.
|
|
|
|
2005-05-11 T Rowley <tim.rowley@gmail.com>
|
|
|
|
* src/cairo-atsui-font.c:
|
|
* src/cairo-atsui.h:
|
|
* src/cairo-quartz-surface.c: Revive quartz backend.
|
|
|
|
2005-05-11 David Reveman <davidr@novell.com>
|
|
|
|
* src/cairo-glitz-surface.c (_cairo_glitz_surface_fill_rectangles):
|
|
Set fill type repeat on source surface.
|
|
(_cairo_glitz_surface_show_glyphs): Add missing cairo operator to
|
|
glitz operator conversion.
|
|
(_cairo_glitz_surface_show_glyphs): Only render glyphs with non zero
|
|
size.
|
|
|
|
2005-05-11 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-surface.c (_fallback_fill_rectangles):
|
|
Fix bounding box computation.
|
|
|
|
* src/cairo-win32-surface.c: Patch from Tor Lillqvist
|
|
to make things compile and work again.
|
|
|
|
* test/cairo-test.c (create_win32_surface): Don't
|
|
#error because there is no win32 test, it isn't useful.
|
|
Just skip it.
|
|
|
|
* src/cairo-win32-font.c: Fix up matrix constness.
|
|
|
|
* test/Makefile.am (TESTS): Skip the pdf-surface test
|
|
if we don't have the PDF backend.
|
|
|
|
* src/cairo-win32-surface.c (categorize_solid_dest_operator):
|
|
Optimize fill_rectangles for all cases where the destination
|
|
ends up a solid color.
|
|
|
|
2005-05-11 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib-surface.c src/cairo-xlib.h: Remove leftover
|
|
cairo_xlib_surface_create().
|
|
|
|
2005-05-10 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo.c src/cairo-path-data.c src/cairo-path-data-private.h:
|
|
Pass the gstate to _cairo_path_data_create[_flat] and use
|
|
_cairo_gstate_backend_to_user() so as to properly handle
|
|
the surface device offset.
|
|
|
|
2005-05-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-arc.c (_cairo_arc_path_negative): Don't use return
|
|
when calling a void function (thanks to Damien Carbery
|
|
<damien.carbery@sun.com>). Closes bug #3134.
|
|
|
|
2005-05-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c:
|
|
* test/cairo-test.h: Removing mucking around with stderr and add a
|
|
cairo_test_log function instead.
|
|
|
|
* test/buffer-diff.c:
|
|
* test/create-for-png.c:
|
|
* test/pdf-surface.c:
|
|
* test/read-png.c:
|
|
* test/trap-clip.c:
|
|
* test/xmalloc.c: Switch all error messages from
|
|
fprintf(stderr,...) to cairo_test_log(...).
|
|
|
|
2005-05-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Fix URLs for glitz and xlibs, (thanks to Jason
|
|
Dorje Short <jdorje@users.sf.net>).
|
|
|
|
2005-05-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Update to current canonical URL for XCB.
|
|
|
|
2005-05-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-wideint.h: Don't guess and make our own definitions
|
|
for uint8_t, etc. Just error out if we can't find a suitable
|
|
header file.
|
|
|
|
* src/cairo-png.c: (unpremultiply_data), (premultiply_data):
|
|
* test/read-png.c: (premultiply_data): Fix to use fixed-size type
|
|
so that this code works when sizeof(unsigned long) != 32. Thanks
|
|
to Manish Singh.
|
|
|
|
2005-05-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_get_font_matrix):
|
|
* src/cairo.c: (cairo_get_font_matrix):
|
|
* src/cairo.h:
|
|
* src/cairoint.h: Fix cairo_get_font_matrix to actually use its
|
|
out-parameter. And change the return type to void.
|
|
|
|
2005-05-09 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-ft-font.c (_cairo_ft_unscaled_font_create_glyph):
|
|
Get the glyphslot point *after* we get the FT_Face. (Robert O'Callahan)
|
|
|
|
2005-05-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h (cairo_current_target_surface): Fix deprecation
|
|
macro to point to the right function, (thanks to John Ellson).
|
|
|
|
2005-05-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-font.c: (_cairo_simple_font_face_create_font),
|
|
(cairo_scaled_font_create), (_cairo_scaled_font_init):
|
|
* src/cairo-ft-font.c: (_ft_scaled_font_create),
|
|
(_cairo_ft_scaled_font_create), (_ft_font_face_create_font):
|
|
* src/cairo-gstate.c: (_cairo_gstate_transform),
|
|
(_cairo_gstate_set_matrix), (_cairo_gstate_set_font_matrix):
|
|
* src/cairo-image-surface.c: (_cairo_image_surface_set_matrix):
|
|
* src/cairo-matrix.c: (_cairo_matrix_get_affine),
|
|
(cairo_matrix_transform_distance), (cairo_matrix_transform_point),
|
|
(_cairo_matrix_transform_bounding_box),
|
|
(_cairo_matrix_compute_determinant),
|
|
(_cairo_matrix_compute_eigen_values),
|
|
(_cairo_matrix_compute_scale_factors),
|
|
(_cairo_matrix_is_integer_translation):
|
|
* src/cairo-pattern.c: (cairo_pattern_set_matrix),
|
|
(_cairo_pattern_transform):
|
|
* src/cairo.c: (cairo_transform), (cairo_set_matrix),
|
|
(cairo_set_font_matrix):
|
|
* src/cairo.h:
|
|
* src/cairoint.h: Push cairo_matrix_t const-correctness down
|
|
through the entire implmentation, (expanding on preliminary work
|
|
by Robert O'Callahan <rocallahan@novell.com>)
|
|
|
|
2005-05-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in:
|
|
* src/cairo-features.h.in: Change cairo-features again so that
|
|
either #if or #ifdef will work to test any feature.
|
|
|
|
2005-05-07 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* doc/public/language-bindings.xml doc/public/cairo-doc.xml
|
|
doc/public/Makefile.am: Document suggested conventions and
|
|
techniques for many aspects of creating a language binding
|
|
for Cairo.
|
|
|
|
2005-05-07 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* doc/public/cairo-sections.txt: Update.
|
|
|
|
2005-05-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h (cairo_set_alpha): Point to both
|
|
cairo_set_source_rgba and cairo_paint_with_alpha in deprecation of
|
|
cairo_set_alpha.
|
|
|
|
2005-05-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* util/cairo-api-update: Make idempotent substitutions that extend
|
|
old names:
|
|
|
|
cairo_select_font -> cairo_select_font_face
|
|
cairo_pattern_add_color_stop -> cairo_pattern_add_color_stop_rgba
|
|
|
|
by only substituting if the old name is not immediately followed
|
|
by an underscore.
|
|
|
|
Tweak the substitution slightly to allow the script to be run on
|
|
the cairo source itself, (eg. avoid changing the REPLACED_BY and
|
|
DEPRECATED_BY macros that must mention the old names).
|
|
|
|
2005-05-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in:
|
|
|
|
* src/cairo-features.h.in: Change definitions of everything in
|
|
cairo-features.h to prefer #if over #ifdef.
|
|
|
|
* src/cairo-atsui.h:
|
|
* src/cairo-cache.c:
|
|
* src/cairo-ft-private.h:
|
|
* src/cairo-ft.h:
|
|
* src/cairo-glitz.h:
|
|
* src/cairo-pdf.h:
|
|
* src/cairo-ps.h:
|
|
* src/cairo-quartz.h:
|
|
* src/cairo-win32.h:
|
|
* src/cairo-xcb.h:
|
|
* src/cairo-xlib.h:
|
|
* src/cairo.c:
|
|
* src/cairo.h:
|
|
* src/cairoint.h:
|
|
* test/cairo-test.c: Track #ifdef -> #if changes.
|
|
|
|
* util/cairo-api-update: Add support to automatically change all
|
|
#ifdef CAIRO_HAS to #if CAIRO_HAS.
|
|
|
|
2005-05-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c:
|
|
* src/cairo-pattern.c:
|
|
* src/cairo.c:
|
|
* src/cairo.h:
|
|
* src/cairoint.h: Remove deprecated cairo_get_rgb_color that was
|
|
accidentally missed in the recent purge of deprecated functions.
|
|
|
|
2005-05-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-xcb-surface.c (_render_operator):
|
|
* src/cairo-win32-surface.c (_cairo_win32_surface_composite)
|
|
(_cairo_win32_surface_fill_rectangles): Update to track new
|
|
CAIRO_OPERATOR names.
|
|
|
|
* test/select-font-no-show-text.c:
|
|
* src/cairo-surface.c (cairo_surface_set_user_data): Fix
|
|
documentation to refer to functions by their current names.
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_begin_group): Update to track
|
|
latest API (in currently unused function).
|
|
|
|
2005-05-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-glitz-surface.c (_cairo_glitz_surface_show_glyphs):
|
|
Fix return type from cairo_status_t to cairo_int_status_t.
|
|
|
|
2005-05-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Note that cairo_mask, and "just eliminate a bunch of
|
|
functions are now done".
|
|
|
|
* TODO: Note that all backwards-compatible and
|
|
backwards-incompatible cahnges for the API Shakeup are now
|
|
done. Sort "new functionality" of API Shakeup into its own
|
|
category.
|
|
|
|
2005-05-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* 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.
|
|
|
|
2005-05-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-glitz-surface.c: (_glitz_operator),
|
|
(_cairo_glitz_surface_fill_rectangles):
|
|
* src/cairo-gstate.c: (_cairo_gstate_mask):
|
|
* src/cairo-image-surface.c: (_pixman_operator),
|
|
(_cairo_image_surface_composite_trapezoids):
|
|
* src/cairo-ps-surface.c: (_cairo_ps_surface_erase),
|
|
(_cairo_ps_surface_copy_page):
|
|
* src/cairo-surface.c: (_cairo_surface_create_similar_solid):
|
|
* src/cairo-xlib-surface.c: (_render_operator):
|
|
* src/cairo.h:
|
|
* test/cairo-test.c: (cairo_test_for_target):
|
|
* test/mask.c: (mask_polygon), (draw):
|
|
|
|
Rename and re-order the cairo_operator_t enum to names that
|
|
abbreviate less and are easier to understand,
|
|
(eg. CAIRO_OPERATOR_DEST_OVER instead of
|
|
CAIRO_OPEERATOR_OVER_REVERSE).
|
|
|
|
2005-05-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c: (cairo_create), (cairo_save), (cairo_get_target):
|
|
* src/cairo.h:
|
|
* src/cairoint.h:
|
|
* src/cairo-gstate.c: (_cairo_gstate_create), (_cairo_gstate_init),
|
|
(_cairo_gstate_get_target):
|
|
* src/cairo-glitz.h:
|
|
* src/cairo-pdf.h:
|
|
* src/cairo-ps.h:
|
|
* src/cairo-quartz-surface.c:
|
|
* src/cairo-quartz.h:
|
|
* src/cairo-surface.c: (_cairo_surface_begin):
|
|
* src/cairo-win32.h:
|
|
* src/cairo-xcb.h:
|
|
* src/cairo-xlib.h: Remove cairo_set_target_surface and all other
|
|
backend-specific cairo_set_target functions. Require a
|
|
cairo_surface_t* to call cairo_create.
|
|
|
|
* test/cairo-test.c: (create_image_surface), (cleanup_image),
|
|
(create_glitz_surface), (cleanup_glitz), (create_quartz_surface),
|
|
(cleanup_quartz), (create_win32_surface), (cleanup_win32),
|
|
(create_xcb_surface), (cleanup_xcb), (create_xlib_surface),
|
|
(cleanup_xlib), (cairo_test_for_target), (cairo_test_real):
|
|
|
|
Port to use new cairo_create interface.
|
|
|
|
* test/clip-nesting.c: (draw):
|
|
* test/mask.c: (mask_polygon), (draw):
|
|
* test/path-data.c: (main):
|
|
* test/pdf-surface.c: (main):
|
|
* test/pixman-rotate.c: (draw):
|
|
* test/scale-source-surface-paint.c: (draw):
|
|
* test/self-copy.c: (draw):
|
|
* test/source-clip.c: (draw):
|
|
* test/source-surface-scale-paint.c: (draw):
|
|
* test/surface-pattern.c: (draw):
|
|
|
|
Rewrite all tests that were using cairo_set_target_surface to
|
|
instead create a temporary cairo_t, (eventually to be replaced
|
|
with cairo_begin_group).
|
|
|
|
2005-05-05 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo.[ch] doc/public/cairo-sections.txt: Add
|
|
cairo_paint_with_alpha().
|
|
|
|
* src/cairo-pattern.c (_cairo_pattern_acquire_surfaces): Fix
|
|
segfault when mask == NULL.
|
|
|
|
* test/mask.c test/mask-ref.png: Add testing of cairo_paint_with_alpha().
|
|
|
|
* test/coverage.c test/coverage-ref.png: Remove ... it's not testing
|
|
anything that mask doesn't test better.
|
|
|
|
2005-05-04 David Reveman <davidr@novell.com>
|
|
|
|
* src/cairo-glitz-surface.c: Add glyph caching to glitz backend.
|
|
|
|
2005-05-03 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
Fills as paths patch originally by Owen Taylor.
|
|
|
|
* src/cairo-path.c: (_cairo_path_fixed_rel_move_to),
|
|
(_cairo_path_fixed_line_to), (_cairo_path_fixed_rel_line_to),
|
|
(_cairo_path_fixed_curve_to), (_cairo_path_fixed_rel_curve_to):
|
|
Make sure we have a current point for the relative path operators.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-gstate.c: (_cairo_gstate_fill):
|
|
* src/cairo-surface.c: (_cairo_surface_fill_path): Add fill_path
|
|
backend method.
|
|
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_document_close_stream),
|
|
(emit_image_data), (emit_surface_pattern),
|
|
(_cairo_pdf_path_move_to), (_cairo_pdf_path_line_to),
|
|
(_cairo_pdf_path_curve_to), (_cairo_pdf_path_close_path),
|
|
(_cairo_pdf_surface_fill_path): Implement fill_path in the PDF
|
|
backend.
|
|
|
|
2005-05-03 Carl Worth <cworth@cworth.org>
|
|
|
|
Originally 2005-04-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: Remove cairo_show_surface. Add new
|
|
cairo_set_source_surface.
|
|
|
|
* src/cairo-gstate.c: Remove _cairo_gstate_show_surface.
|
|
|
|
* test/create-for-png.c: (draw):
|
|
* test/pixman-rotate.c: (draw):
|
|
* test/move-to-show-surface.c: (draw):
|
|
* test/translate-show-surface.c: (draw): Replace calls to
|
|
cairo_show_surface with cairo_set_source_surface; cairo_paint.
|
|
|
|
* test/cairo-test.c: (cairo_test_real): Fix messages to prefer -
|
|
over _.
|
|
|
|
* src/cairo-png.c: (cairo_surface_write_to_png): Fix
|
|
documentation.
|
|
|
|
* test/filter-nearest-offset-ref.png:
|
|
* test/filter-nearest-offset.c:
|
|
* test/scale-source-surface-paint-ref.png:
|
|
* test/scale-source-surface-paint.c:
|
|
* test/source-surface-scale-paint-ref.png:
|
|
* test/source-surface-scale-paint.c: Three new tests to exercise
|
|
set_source_surface more completely, (two of these are expected
|
|
failures dues to outstanding bugs).
|
|
|
|
2005-05-03 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Add suggestion for copy-on-write regions to fix clip
|
|
region problems.
|
|
|
|
* src/Makefile.am (install-data-local): Fix check for old headers
|
|
to respect DESTDIR, (to work better when cross-compiling, etc.).
|
|
Thanks to Luke-Jr <luke-jr@utopios.org>.
|
|
|
|
2005-05-02 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-ft-font.c (_cairo_ft_scaled_font_font_extents): Changes the
|
|
sign of extents->descent to match win32 backend and the conventional
|
|
convention.
|
|
|
|
* src/cairo.h: Document cairo_font_extents_t.
|
|
|
|
2005-04-28 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-surface.c src/cairoint.h: Add _cairo_surface_begin/end
|
|
to save and restore the clip state of a surface. Copy and store
|
|
clip regions set on a surface so that we can save and restore them.
|
|
|
|
* src/cairo.[ch]: Add a CAIRO_STATUS_BAD_NESTING error
|
|
for interleaved use of two cairo_t's on the same surface. Also,
|
|
add a skeleton doc comment for cairo_status_t.
|
|
|
|
* src/cairo.c src/cairo-gstate.c src/cairoint.h: Use
|
|
_cairo_surface_begin/end to replace
|
|
_cairo_gstate_restore_external_state.
|
|
|
|
* src/cairo-gstate.c: Use _cairo_surface_begin/end to save the
|
|
state of a surface when we start drawing at it and restore it
|
|
at the end. Check that the save level of the surface is what
|
|
we expect on drawing operations and fail with CAIRO_STATUS_BAD_NESTING
|
|
otherwise.
|
|
|
|
* src/cairo-pattern.c src/cairoint.h (_cairo_pattern_acquire_surface_for_surface)
|
|
(_cairo_pattern_release_surface): Surround use of pattern->surface
|
|
with _cairo_surface->begin/end so we don't clip surfaces used as
|
|
sources.
|
|
|
|
* test/clip-nesting.c test/Makefile.am: Test of destinatin
|
|
clipping with the nested creation of cairo_t's for the same
|
|
context.
|
|
|
|
* test/source-clip.c test/Makefile.am: Test that clipping on
|
|
a source as a destination doesn't affect use of it as a source.
|
|
|
|
* test/self-copy.c: XFAIL test for copying from a surface as
|
|
a source to itself as a destination with a clip.
|
|
|
|
2005-05-02 Keith Packard <keithp@keithp.com>
|
|
|
|
reviewed by: cworth
|
|
|
|
* src/cairo-path.c: (_cairo_path_fixed_rel_curve_to):
|
|
Use correct arguments to compute absolute positions.
|
|
|
|
* test/Makefile.am:
|
|
* test/rel-path-ref.png:
|
|
* test/rel-path.c: (draw), (main):
|
|
Test cairo_rel_move_to, cairo_rel_line_to and cairo_rel_curve_to
|
|
|
|
2005-05-02 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* test/Makefile.am (EXTRA_DIST): mask-ref.png, not
|
|
mask.png. (Pointed out by Carl)
|
|
|
|
2005-05-02 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo.[ch] src/cairo-gstate.c: Add cairo_mask()
|
|
and cairo_mask_surface().
|
|
|
|
* test/maks.c tests/Makefile.am tests/mask-ref.png: Add a
|
|
comprehensive tests for cairo_mask().
|
|
|
|
* docs/public/cairo-sections.txt: Updated
|
|
|
|
2005-05-02 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_glyph_path): Also call
|
|
_cairo_gstate_ensure_font() for this function.
|
|
|
|
2005-04-28 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* TODO, ROADMAP: Add a item about reworking cairo_format_t.
|
|
|
|
2005-04-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/cairo-test.c: (cairo_test_for_target): Replace annoying _
|
|
in output image filenames with - for better consistency.
|
|
|
|
2005-04-27 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo-test.c: (set_xlib_target), (cleanup_xlib_target):
|
|
Use 1 instead of 0 for width and height to avoid BadValue errors
|
|
from XCreatePixmap.
|
|
|
|
2005-04-27 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/buffer-diff.c: (xunlink), (buffer_diff), (image_diff):
|
|
* test/buffer-diff.h:
|
|
* test/cairo-test.c: (set_image_target), (cleanup_image_target),
|
|
(set_glitz_target), (cleanup_glitz_target), (set_quartz_target),
|
|
(cleanup_quartz_target), (set_win32_target),
|
|
(cleanup_win32_target), (set_xcb_target), (cleanup_xcb_target),
|
|
(set_xlib_target), (cleanup_xlib_target), (cairo_test_for_target),
|
|
(cairo_test_real), (cairo_test_expect_failure), (cairo_test):
|
|
* test/cairo-test.h:
|
|
* test/read-png.c: (read_png_argb32):
|
|
* test/xmalloc.h: Add support for testing multiple backends,
|
|
courtesy of cairo_surface_write_to_png. Currently, only image and
|
|
xlib backends are fullk hooked-up, but other backends should be
|
|
quite easy to add for anyone skilled in the appropriate art.
|
|
|
|
2005-04-27 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-traps.c src/cairoint.h (_cairo_traps_init_box):
|
|
New function to create a single trapezoid box.
|
|
|
|
* src/cairo.c src/cairo-gstate.c src/cairoint.h: Move
|
|
the implementation of cairo_paint() into cairo-gstate.c
|
|
for a better fix for the problem with backend/user coordinate
|
|
confusion. Also no longer clear the current path on
|
|
cairo_paint().
|
|
|
|
2005-04-26 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c (cairo_paint): Build rectangle with an identity
|
|
matrix in place so that the entire target surface will be filled
|
|
even when there is a transformation in place.
|
|
|
|
2005-04-26 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* doc/public/cairo-sections.txt: Updated.
|
|
|
|
* src/cairo-png.c src/cairo.h: Fix up some doc build issues.
|
|
|
|
2005-04-26 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/paint-ref.png:
|
|
* test/paint.c: (draw), (main): Add test to demonstrate bug in
|
|
cairo_paint when under a non-identity transformation.
|
|
|
|
2005-04-26 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP:
|
|
* TODO: Note that cairo_paint and cairo_clip/fill/stroke_preserve
|
|
are all done now.
|
|
|
|
2005-04-26 Carl Worth <cworth@cworth.org>
|
|
|
|
Originally: 2005-04-19 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Add cairo_stroke_preserve, cairo_fill_preserve,
|
|
and cairo_clip_preserve.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-gstate-private.h:
|
|
* src/cairo-gstate.c: Rip the path out of cairo_gstate_t.
|
|
|
|
* src/cairo-private.h: Add path to cairo_t.
|
|
|
|
* src/cairo.c: Bring in most of the path code that used to live in
|
|
cairo-gstate.c
|
|
|
|
* src/Makefile.am:
|
|
* src/cairo-arc-private.h:
|
|
* src/cairo-arc.c: Move arc generation code into its own file.
|
|
|
|
* src/cairo-path-data-private.h:
|
|
* src/cairo-path-data.c: Accept path+ctm_inverse+tolerance instead
|
|
of gstate. Absorb flattening and device space->user space
|
|
conversion that used to be in _cairo_gstate_intepret_path.
|
|
|
|
* src/cairo-path.c: Prefer cairo_fixed_t parameters over
|
|
ciaro_point_t for cross-file interfaces.
|
|
|
|
* src/cairo-ft-font.c: Track changes in _cairo_path_fixed
|
|
interfaces.
|
|
|
|
* test/fill-and-stroke.c: (draw): Port to use cairo_fill_preserve
|
|
rather than cairo_save/cairo_restore which no longer work for
|
|
saving the path.
|
|
|
|
* test/get-and-set.c: (settings_set), (settings_get),
|
|
(settings_equal): Remove get and set of current point since it is
|
|
no longer affected by cairo_save and cairo_restore. Add get and
|
|
set testing for cairo_matrix_t.
|
|
|
|
2005-04-26 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/cairo-test.h:
|
|
* test/pdf-surface.c: (main): Add very simple test to generate PDF
|
|
output, (no automated verification yet).
|
|
|
|
* test/cairo-test.c: (cairo_test):
|
|
* test/create-for-png.c: (draw):
|
|
* test/pixman-rotate.c: Track PNG interface changes, (no more
|
|
include of cairo-png.h, cairo_surface_write_png renamed to
|
|
cairo_surface_write_to_png).
|
|
|
|
2005-04-26 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-png.h: Prototypes moved to cairo.h, this file removed.
|
|
|
|
* src/cairo-png.c (cairo_surface_write_to_png_stream): Renamed
|
|
from cairo_surface_write_png_to_stream() for consistency.
|
|
(cairo_surface_write_to_png): Renamed from
|
|
cairo_surface_write_png() for consistency.
|
|
|
|
2005-04-25 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-png.c (cairo_surface_write_png): Factor out bulk of
|
|
the code into a new callback based function, write_png(). Call it
|
|
with a stdio write callback.
|
|
(cairo_surface_write_png_to_stream): New function to write a
|
|
surface to a PNG stream.
|
|
(cairo_image_surface_create_from_png): Likewise, move most of the
|
|
code to read_png(), clean up error handling and reduce this
|
|
function to calling read_png() with a stdio based read function.
|
|
(cairo_image_surface_create_from_png_stream): New function to
|
|
create an image surface from a PNG stream.
|
|
|
|
* src/cairo-image-surface.c (cairo_image_surface_get_width)
|
|
(cairo_image_surface_get_height): New functions to get widht and
|
|
height of an image surface.
|
|
|
|
* src/cairo.h: Add new prototype and error codes.
|
|
|
|
* test/create-for-png.c (draw): Adjust to new PNG API.
|
|
|
|
2005-04-25 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-win32-surface.c (cairo_win32_surface_create): Initialize
|
|
the saved_dc_bitmap field here as well ... not strictly needed,
|
|
but cleaner. (Reported by Peter Arsoff)
|
|
|
|
2005-04-23 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-gstate.c (_composite_trap_region): Finalize the
|
|
correct pattern.
|
|
|
|
2005-04-22 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-png.c (cairo_image_surface_create_for_png): Only check
|
|
PNG signature if we read all the bytes. Don't fclose() the FILE
|
|
argument (Steve Chaplin <stevech1097@yahoo.com.au>).
|
|
|
|
Rename to cairo_image_surface_create_for_png() to
|
|
cairo_image_surface_create_from_png() and change FILE arguments
|
|
for this function and cairo_surface_write_png() to be a filename
|
|
argument instead.
|
|
|
|
2005-04-21 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-surface.c (_cairo_surface_set_clip_region): Handle
|
|
backends that don't have a set_clip_region implementation (PDF).
|
|
|
|
2005-04-19 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c: (cairo_paint):
|
|
* src/cairo.h: Add new cairo_paint function.
|
|
|
|
* src/cairoint.h: Add new get_extents function to the surface
|
|
backend interface.
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_get_clip_extents): Add
|
|
function to query current clip_extents.
|
|
|
|
* src/cairo-glitz-surface.c: (_cairo_glitz_surface_get_extents):
|
|
* src/cairo-image-surface.c: (_cairo_image_surface_get_extents),
|
|
(_cairo_image_abstract_surface_get_extents):
|
|
* src/cairo-pdf-surface.c: (_cairo_pdf_surface_get_extents):
|
|
* src/cairo-ps-surface.c: (_cairo_ps_surface_get_extents):
|
|
* src/cairo-quartz-surface.c: (_cairo_quartz_surface_get_extents):
|
|
* src/cairo-win32-surface.c: (_cairo_win32_get_extents):
|
|
* src/cairo-xcb-surface.c: (_cairo_xcb_surface_get_extents):
|
|
* src/cairo-xlib-surface.c: (_cairo_xlib_surface_get_extents):
|
|
Implement the new get_extents function for each backend.
|
|
|
|
* src/cairo-surface.c: (_cairo_surface_init),
|
|
(_cairo_surface_set_clip_region),
|
|
(_cairo_surface_get_clip_extents): Save the clip extents from
|
|
set_clip_region and implement _cairo_surface_get_clip_extents.
|
|
|
|
* src/cairo-xlib-surface.c: (_cairo_xlib_surface_get_size),
|
|
(_get_image_surface): Abstract away the evil XGetGeometry
|
|
roundtrip in _cairo_xlib_surface_get_size.
|
|
|
|
* test/gradient-alpha.c: (draw):
|
|
* test/linear-gradient.c: (draw): Rewrite a couple of tests to
|
|
call cairo_paint.
|
|
|
|
2005-04-19 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Update API Shakeup chart to indicate that cairo_paint and
|
|
cairo_fill_preserve patches have been sent.
|
|
|
|
2005-04-19 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/surface-pattern-ref.png:
|
|
* test/surface-pattern.c: (draw), (main): Add a test of a
|
|
repeating surface pattern.
|
|
|
|
2005-04-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Mark a couple of items that are now complete.
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/fill-and-stroke-ref.png:
|
|
* test/fill-and-stroke.c: (draw), (main): Add test case that fills
|
|
and strokes the same shapes, (in preparation for testing
|
|
cairo_fill_preserve patch).
|
|
|
|
2005-04-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Update API Shakeup chart to indicate that cairo_set_source
|
|
is done.
|
|
|
|
2005-04-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: Rename, add, and delete:
|
|
|
|
cairo_set_pattern -> cairo_set_source
|
|
cairo_get_pattern -> cairo_get_source
|
|
cairo_set_rgb_color -> cairo_set_source_rgb
|
|
-> cairo_set_source_rgba
|
|
cairo_set_alpha ->
|
|
cairo_get_alpha ->
|
|
|
|
Note that we'll likely want to add cairo_set_source_surface.
|
|
|
|
* src/cairo-color.c: Add _cairo_stock_color helper function.
|
|
Improve some interfaces:
|
|
|
|
_cairo_color_init _cairo_color_init_rgb
|
|
_cairo_color_set_rgb -> _cairo_color_init_rgba
|
|
_cairo_color_set_alpha _cairo_color_multiply_alpha
|
|
|
|
_cairo_color_get_rgb -> _cairo_color_get_rbga
|
|
_cairo_color_get_rgba_premultiplied
|
|
|
|
* src/cairoint.h: Add cairo_stock_t and some helper macros:
|
|
|
|
CAIRO_COLOR_WHITE
|
|
CAIRO_COLOR_BLACK
|
|
CAIRO_COLOR_TRANSPARENT
|
|
|
|
Fix cairo_pattern_t by eliminating pattern->alpha.
|
|
Fix cairo_solid_pattern_t to use cairo_color_t rather than three
|
|
doubles.
|
|
|
|
* src/cairo-glitz-surface.c:
|
|
(_cairo_glitz_pattern_acquire_surface),
|
|
(_cairo_glitz_pattern_acquire_surfaces),
|
|
(_cairo_glitz_surface_composite_trapezoids): Track removal of
|
|
pattern->alpha, simplifying the code considerably
|
|
|
|
* src/cairo-gstate-private.h:
|
|
|
|
* src/cairo-gstate.c: Track _cairo_color interface changes. Remove
|
|
gstate->alpha. Propagate down set_source renamings.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo-pattern.c: Rename:
|
|
|
|
cairo_pattern_add_color_stop -> cairo_pattern_add_color_stop_rgba
|
|
|
|
and add:
|
|
|
|
cairo_pattern_add_color_stop_rgb
|
|
|
|
Remove pattern->alpha, simplifying the code considerably.
|
|
|
|
* src/cairo-pdf-surface.c:
|
|
* src/cairo-ps-surface.c: Track pattern and color interface
|
|
changes.
|
|
|
|
* src/cairo-surface.c: Add const where appropriate on
|
|
cairo_color_t*.
|
|
|
|
* src/cairo-xlib-surface.c: (_cairo_surface_is_xlib): Add private
|
|
type inspection predicate.
|
|
(cairo_xlib_surface_set_size): Add check for surface type
|
|
mismatch, (no useful error reporting yet, though).
|
|
|
|
* test/Makefile.am: Note coverage as en expected failure.
|
|
|
|
* test/cairo-test.c: (cairo_test_expect_failure): Improve line
|
|
wrap on expected failure messages.
|
|
|
|
* test/clip-twice.c:
|
|
* test/coverage.c:
|
|
* test/fill-rule.c:
|
|
* test/line-width.c:
|
|
* test/linear-gradient.c:
|
|
* test/pixman-rotate.c:
|
|
* test/set-source.c:
|
|
* test/text-rotate.c:
|
|
* test/trap-clip.c: Port all tests to new cairo_set_source
|
|
interfaces.
|
|
|
|
2005-04-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/gradient-alpha-ref.png:
|
|
* test/gradient-alpha.c: (draw): Make gradient change color in
|
|
addition to just changing alpha in order to highlight distinction
|
|
between interpolating in premultiplied vs. non-premultiplied
|
|
space.
|
|
|
|
2005-04-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am: Improve instructions for when to add a test to
|
|
the XFAIL list.
|
|
|
|
* test/cairo-test.c: (cairo_test_expect_failure):
|
|
* test/cairo-test.h:
|
|
* test/pixman-rotate.c: (main):
|
|
* test/text-rotate.c: (main): Print explanations for expected
|
|
failures.
|
|
|
|
2005-04-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/gradient-alpha-ref.png:
|
|
* test/gradient-alpha.c: (draw), (main): Add gradient-alpha test
|
|
in preparation for upcoming cairo_set_source patch.
|
|
|
|
2005-04-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/set-source-ref.png:
|
|
* test/set-source.c: (draw), (main): Add set-source test in
|
|
preparation for upcoming cairo_set_source patch.
|
|
|
|
2005-04-14 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-font.c (_cairo_simple_font_face_destroy): Remove
|
|
a stray free() (#3029, Carl Worth)
|
|
|
|
* test/select-font-no-show-text.c: Note that the bug is fixed.
|
|
|
|
2005-04-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-image-surface.c:
|
|
(_cairo_image_abstract_surface_finish): Set freed pointer to NULL.
|
|
|
|
* src/cairo-surface.c: (cairo_surface_finish): Fix to actually set
|
|
surface->finished when done. Closes bug #2950 as documented in
|
|
test/surface-finish-twice.c.
|
|
|
|
* test/surface-finish-twice.c: Note that this bug is fixed.
|
|
|
|
2005-04-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/surface-finish-twice.c: (draw), (main): Add new test to
|
|
exercise crash when calling cairo_surface_finish twice on the same
|
|
surface.
|
|
|
|
2005-04-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/select-font-no-show-text.c: (draw), (main): Add new
|
|
set-surface-no-show-text test.
|
|
|
|
* test/cairo-test.c: (cairo_test): Be sure to call cairo_destroy
|
|
even if the image size is 0,0 so that we can test bugs triggered
|
|
during cleanup.
|
|
|
|
2005-04-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/coverage-ref.png:
|
|
* test/coverage.c: (draw_funcs), (draw): Temporarily remove all
|
|
text from this test case until we come up with an approach for
|
|
drawing the same text with different freetype configurations.
|
|
|
|
2005-04-13 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-traps.c (_cairo_traps_extract_region): Work around
|
|
a pair of bugs elsewhere (denegerate trapezoids from tesellator,
|
|
pixman_region_union_rect() failing on width/height zero rectangles)
|
|
|
|
2005-04-13 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairoint.h src/cairo-traps.c: Add _cairo_traps_extract_region
|
|
for converting trapezoids into a pixman region.
|
|
|
|
* src/cairo-gstate.c (cairo_clip): Represent all rectangular
|
|
pixel-aligned regions as regions, not just single rectangles.
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_clip_and_composite_trapezoid):
|
|
Split into manageable pieces, optimize rectangular pixel-
|
|
aligned regions by using _cairo_surface_fill_rectangles()
|
|
or _cairo_surface_set_clip_region() as appropriate.
|
|
|
|
* tests/trap-clip.c tests/trap-clip-ref.png tests/Makefile.am:
|
|
Add a test for trapezoids clipping.
|
|
|
|
* doc/public/cairo-docs.xml: Add an index.
|
|
|
|
2005-04-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/translate-show-surface.c: Note that bug is now fixed.
|
|
|
|
2005-04-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* autogen.sh: Replace errant use of aclocal with $ACLOCAL, as
|
|
reported by Martin Hedenfalk. Closes bug #3000.
|
|
|
|
2005-04-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-pattern.c:
|
|
* src/cairo-surface.c: (_cairo_surface_init): Default to
|
|
CAIRO_FILTER_GOOD rather than CAIRO_FILTER_BEST.
|
|
|
|
* src/cairo-pattern.c:
|
|
(_cairo_pattern_acquire_surface_for_surface): Optimize to use
|
|
CAIRO_FILTER_NEAREST when the pattern matrix is an integer
|
|
translation.
|
|
|
|
2005-04-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-pattern.c:
|
|
(_cairo_pattern_acquire_surface_for_surface):
|
|
* src/cairo-surface.c: (_cairo_surface_init): Use
|
|
CAIRO_FILTER_BEST by default rather than CAIRO_FILTER_NEAREST.
|
|
|
|
2005-04-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_show_surface): Offset the src
|
|
pattern by (0,0)->CTM. This fixes test/translate-show-surface.
|
|
|
|
* src/cairo-glitz-surface.c
|
|
(_cairo_glitz_surface_composite_trapezoids): Use unsigned cahr* to
|
|
match new prototype for cairo_image_surface_create_for_data.
|
|
|
|
2005-04-11 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/translate-show-surface-ref.png:
|
|
* test/translate-show-surface.c: (draw), (main): Add new test
|
|
demonstrating bug in the sequence: cairo_translate;
|
|
cairo_show_surface.
|
|
|
|
2005-04-11 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c (cairo_select_font_face): Add deprecation alias from
|
|
cairo_scale_font to cairo_set_font_size.
|
|
|
|
2005-04-11 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c (cairo_select_font_face): Add deprecation alias from
|
|
cairo_select_font to cairo_select_font_face.
|
|
|
|
2005-04-11 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo.h doc/public/cairo-sections.txt
|
|
src/cairo-matrix.c: Update.
|
|
|
|
* doc/public/cairo-docs.xml: Include cairo-font.xml
|
|
|
|
2005-04-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo.h: Move include of pixman.h from cairo.h to cairoint.h
|
|
since libpixman isn't part of cairo's public interface.
|
|
|
|
* test/move-to-show-surface.c (draw): Use unsigned long rather
|
|
than uint32_t since we no longer have pixman.h setting that type
|
|
up for us.
|
|
|
|
* src/cairo-font.c (cairo_font_face_destroy): Remove unused
|
|
variable user_data_copy.
|
|
|
|
2005-04-08 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo.h src/cairo-font.c src/cairoint.h
|
|
doc/public/cairo-sections.txt:
|
|
Add cairo_font_face_set/get_user_data().
|
|
|
|
* src/cairo-array.c src/cairoint.h src/cairo-surface.c:
|
|
Refactor user data code from cairo-surface.c into
|
|
cairo_user_data_array_t.
|
|
|
|
* src/cairo-font.c (cairo_font_face_destroy,
|
|
(cairo_scaled_font_destroy, _cairo_unscaled_font_destroy):
|
|
Switch these types to be like cairo_surface_t where the
|
|
generic code frees the wrapper object.
|
|
|
|
* src/cairo-atsui-font.c src/cairo-ft-font.c
|
|
src/cairo-win32-font.c: Fix up for the above changes.
|
|
|
|
* src/cairo-ft-font.c (_cairo_ft_unscaled_font_destroy,
|
|
_ft_font_face_destroy): Implement a complicated mutual-referencing
|
|
scheme to make sure that a face from cairo_ft_font_face_create_for_ft_face()
|
|
is freed only when the FT_Face is no longer needed.
|
|
|
|
* src/cairo-ft-font.c (cairo_ft_font_face_create_for_ft_face):
|
|
Update the docs to describe how to figure out when the FT_Face
|
|
can be freed.
|
|
|
|
* src/cairo-ft-font.c: Fix refcount leaks when creating fonts.
|
|
|
|
* src/cairo-pdf-surface.c (cairo_pdf_ft_font_create): Remove
|
|
excess call to _cairo_unscaled_font_reference().
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_set_font_face): Remove
|
|
stray initialization of font matrix to the identity.
|
|
|
|
* src/cairo-array.c (_cairo_user_data_array_set_data) test/user-data.c:
|
|
Fix a bug when setting/unsetting a key with a free key slot before it,
|
|
add that to the test case.
|
|
|
|
* src/cairo-array.c (_cairo_user_data_array_set_data):
|
|
Don't append an element when user_data is NULL.
|
|
|
|
2005-04-08 Dave Beckett <Dave.Beckett@bristol.ac.uk>
|
|
|
|
* src/cairo-glitz-surface.c (_cairo_glitz_surface_set_matrix):
|
|
Update to track changes to cairo_matrix_t interface.
|
|
|
|
2005-04-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* ROADMAP: Add ROADMAP file with an initial stab at 1.0 items.
|
|
|
|
2005-04-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c:
|
|
(_cairo_gstate_transform), (_cairo_gstate_set_matrix),
|
|
(_cairo_gstate_interpret_path): Eliminate internal use of
|
|
deprecated cairo_matrix_copy.
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_get_matrix),
|
|
* src/cairo-matrix.c: (cairo_matrix_copy):
|
|
* src/cairo.c: (cairo_get_matrix):
|
|
* src/cairo.h:
|
|
* src/cairoint.h: Change cairo_get_matrix to accept a pointer to
|
|
the return value cairo_matrix_t rather than returning the value
|
|
directly.
|
|
|
|
2005-04-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-matrix.c (cairo_matrix_init_identity): Don't try to
|
|
return a value (even a void value) from a void function. Closes
|
|
bug #2931.
|
|
|
|
2005-04-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-wideint.h: Remove broken code for defining
|
|
uint64_t.
|
|
|
|
2005-04-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-surface.c: (_cairo_surface_release_source_image),
|
|
(_cairo_surface_release_dest_image),
|
|
(_cairo_surface_clone_similar), (_cairo_surface_composite),
|
|
(_cairo_surface_fill_rectangles),
|
|
(_cairo_surface_composite_trapezoids), (_cairo_surface_copy_page),
|
|
(_cairo_surface_show_page), (_cairo_surface_show_glyphs):
|
|
|
|
Change to allow NULL backend function pointers to indicate
|
|
unsupported functions.
|
|
|
|
* src/cairo-glitz-surface.c:
|
|
* src/cairo-image-surface.c:
|
|
* src/cairo-pdf-surface.c:
|
|
* src/cairo-ps-surface.c:
|
|
* src/cairo-quartz-surface.c:
|
|
* src/cairo-win32-surface.c:
|
|
* src/cairo-xcb-surface.c:
|
|
* src/cairo-xlib-surface.c: Eliminate stub functions and replace
|
|
with NULL in surface backend table.
|
|
|
|
2005-04-07 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo.[ch] src/cairoint.h src/cairo-gstate.c
|
|
docs/public/cairo-sections.txt:
|
|
cairo_select_font() => cairo_select_font_face()
|
|
cairo_scale_font() => cairo_set_font_size()
|
|
cairo_transform_font() => cairo_set_font_matrix()
|
|
Add cairo_get_font_matrix(). Make cairo_set_font_face()
|
|
not reset the font matrix. Default the font matrix
|
|
to SCALE(10). Document cairo_select_font_face().
|
|
|
|
* test/coverage.c (draw) test/text-cache-crash.c (draw)
|
|
test/text-rotate.c (draw): Use cairo_set_font_size().
|
|
|
|
* src/cairo-font.c src/cairo.h: Fix up some parameter
|
|
names for docs.
|
|
|
|
2005-04-07 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-win32-font.c: Fix various compilation errors.
|
|
|
|
2005-04-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c:
|
|
* src/cairo-png.c:
|
|
* src/cairo-win32-font.c:
|
|
* src/cairo-win32-surface.c:
|
|
* src/cairo-win32.h:
|
|
* src/cairoint.h: Minor changes to header file inclusion
|
|
recommended by Oleg Smolsky for better portability to MSVC.
|
|
|
|
2005-04-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-png.c (PNG_SIG_SIZE): Use a preprocessor macro to get
|
|
a literal value in the array size declaration, (for better
|
|
portability to lame compilers that can't deal with a const int
|
|
variable for the array size). Reported by Oleg Smolsky.
|
|
(PNG_SIG_SIZE): Fix typo.
|
|
|
|
2005-04-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in:
|
|
* src/cairo-wideint.h:
|
|
* src/cairoint.h: Use configure-time checks for stdint.h
|
|
vs. inttypes.h vs. sys/int_types.h rather than ad-hoc
|
|
system-specific macros. Also define these types manually none of
|
|
these header are available. (Thanks to Jason Dorje Short
|
|
<jdorje@users.sf.net>).
|
|
|
|
2005-04-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/imagediff.c (main): Fix to return non-zero status on error.
|
|
|
|
2005-04-06 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo.h src/cairo-gstate.c src/cairo-font.c: Add
|
|
a cairo_font_face_t type to hold a description of a font
|
|
face. Replace cairo_set_font() with cairo_set_font_face().
|
|
|
|
* src/cairoint.h src/cairo-font.c src/cairo-gstate.c: Add
|
|
"cairo_simple_font_face" for family/weight/slant and use
|
|
it to implement font naming for the toy API.
|
|
|
|
* src/cairo-ft.h src/cairo-ft-font.c cairo-win32.h
|
|
cairo-win32-font.c: Switch the FreeType and Win32 backends
|
|
over to using cairo_font_face_t.
|
|
|
|
* src/cairo.h src/cairo-font.c src/cairo-ft-font.c
|
|
src/cairo-win32-font.c: Pass in font matrix and CTM separately
|
|
rather than as a composite scale when creating fonts; allows
|
|
removing font_matrix argument to metrics functions.
|
|
|
|
* src/cairoint.h src/cairo-font.c src/cairo-ft-font.c
|
|
src/cairo-win32-font.c: Remove cairo_font_scale_t type,
|
|
just use cairo_matrix_t and ignore translations.
|
|
|
|
* src/cairo-ft.h src/cairo-ft-font.c: Remove
|
|
cairo_ft_font_get_pattern() -- it can't work for all FreeType
|
|
backend fonts and doesn't seem particularly useful.
|
|
|
|
* src/cairo.[ch]: Rename cairo_font_get_extents() to
|
|
cairo_font_extents()
|
|
|
|
* doc/public/cairo-sections.txt: Update, split font functions
|
|
into a separate section.
|
|
|
|
* src/cairo-ft-font.c (_ft_unscaled_font_get_for_pattern): Fix
|
|
locking order problem.
|
|
|
|
* src/cairo-font.c: Add caches for simple font faces and from
|
|
cairo_font_face_t to cairo_scaled_font_t.
|
|
|
|
* src/cairo.h src/cairoint.h src/cairo-font.c src/cairo-win32-font.c
|
|
src/cairo-ft-font.c src/cairo-gstate.c src/cairo-gstate-private.h:
|
|
Rename cairo_font_t to cairo_scaled_font_t.
|
|
|
|
2005-04-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Rework the cairo_matrix_t interface in several ways.
|
|
Expose a struct for cairo_matrix_t.
|
|
|
|
Add new function to return current matrix:
|
|
cairo_get_matrix
|
|
|
|
Deprecate the following functions (in documentation):
|
|
cairo_matrix_create
|
|
cairo_matrix_destroy
|
|
cairo_matrix_get_affine
|
|
|
|
Rename:
|
|
cairo_matrix_set_affine -> cairo_matrix_init
|
|
cairo_matrix_set_identity -> cairo_matrix_init_identity
|
|
|
|
Add other new matrix initialization functions:
|
|
cairo_matrix_init_translate
|
|
cairo_matrix_init_scale
|
|
cairo_matrix_init_rotate
|
|
|
|
Change return type of almost all cairo_matrix functions from
|
|
cairo_status_t to void.
|
|
|
|
* src/cairo-atsui-font.c:
|
|
* src/cairo-ft-font.c:
|
|
* src/cairo-gstate.c:
|
|
* src/cairo-image-surface.c:
|
|
* src/cairo-matrix.c:
|
|
* src/cairo-pattern.c:
|
|
* src/cairo-pdf-surface.c:
|
|
* src/cairo-pen.c:
|
|
* src/cairo-surface.c:
|
|
* src/cairo-win32-font.c:
|
|
* src/cairo-xlib-surface.c:
|
|
* src/cairo.c:
|
|
* src/cairoint.h: Track changes to cairo_matrix_t interface.
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/transforms-ref.png:
|
|
* test/transforms.c: Add a test case showing the same path drawn
|
|
under various transforms, (including skews set directly by
|
|
initializing a cairo_matrix_t).
|
|
|
|
2005-04-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Make handling of unsigned char* vs. char*
|
|
consistent. Change all parameters that are actual string data from
|
|
unsigned char* to char* (cairo_text_extents, cairo_show_text,
|
|
cairo_text_path). Change all data buffers from char* to unsigned
|
|
char* (cairo_write_func_t).
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_text_to_glyphs):
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_text_to_glyphs):
|
|
* src/cairo-font.c: (_cairo_font_text_to_glyphs):
|
|
* src/cairo-atsui-font.c: (_cairo_atsui_font_text_to_glyphs):
|
|
* src/cairoint.h:
|
|
* src/cairo.c: (cairo_text_extents), (cairo_show_text),
|
|
(cairo_text_path): Track changes from unsigned char* to
|
|
char*. Convert to unsigned only at the internal interface to
|
|
unicode processing.
|
|
|
|
* test/move-to-show-surface.c: (draw):
|
|
* src/cairo-output-stream.c: (_cairo_output_stream_printf),
|
|
(stdio_write): Track change from char* to unsigned char*.
|
|
|
|
2005-04-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-cache.c (_cairo_cache_init): Fix reversed arguments in
|
|
call to calloc.
|
|
|
|
2005-04-04 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h (cairo_set_target_image,
|
|
cairo_image_surface_create_for_data):
|
|
* src/cairo.c: (cairo_set_target_image): Change type of data
|
|
parameter from char* to unsigned char*.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_create_glyph):
|
|
* src/cairo-image-surface.c: (cairo_image_surface_create_for_data):
|
|
* src/cairo-pattern.c:
|
|
(_cairo_pattern_acquire_surface_for_gradient):
|
|
* test/buffer-diff.c: (buffer_diff):
|
|
* test/buffer-diff.h:
|
|
* test/write-png.c: (write_png_argb32):
|
|
* test/write-png.h: Propagate the unsigned char* change down the
|
|
stack.
|
|
|
|
* src/cairo-xlib-surface.c: (_get_image_surface): Add cast since
|
|
XImage uses char* rather than unsigned char*.
|
|
|
|
* src/cairo-png.c: (cairo_image_surface_create_for_png): Fix
|
|
memory leak of image data.
|
|
|
|
* test/cairo-test.c: (cairo_test), (cairo_test_create_png_pattern):
|
|
* test/cairo-test.h: Switch to use cairo_surface_write_png rather
|
|
than a custom write_png_argb32.
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/create-for-png-ref.png:
|
|
* test/create-for-png.c: (draw), (main): Add test to exercise the
|
|
cairo_image_surface_create_for_png function.
|
|
|
|
2005-04-04 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Remove items for PNG backend removal and trapezoid
|
|
reasterization re-implementation since they have been completed.
|
|
|
|
2005-04-04 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c:
|
|
* src/cairo.h: Drop cairo_default_matrix since it is now always
|
|
identical to cairo_identity_matrix.
|
|
|
|
* src/cairo-gstate-private.h:
|
|
* src/cairo-gstate.c: (_cairo_gstate_init),
|
|
(_cairo_gstate_set_target_surface): Remove gstate->pixels_per
|
|
inch. Change default matrix to always be the identity matrix.
|
|
|
|
* src/cairo-glitz-surface.c:
|
|
* src/cairo-image-surface.c:
|
|
* src/cairo-pdf-surface.c:
|
|
* src/cairo-ps-surface.c:
|
|
* src/cairo-quartz-surface.c:
|
|
* src/cairo-surface.c:
|
|
* src/cairo-win32-surface.c:
|
|
* src/cairo-xcb-surface.c:
|
|
* src/cairo-xlib-surface.c:
|
|
* src/cairoint.h: Drop pixels_per_inch function from surface
|
|
backend interface as it is no longer needed.
|
|
|
|
2005-04-02 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate.c: (_cairo_gstate_show_surface): Use the
|
|
current point to offset just the destination, not the source and
|
|
destination. With this fix, cairo_show_surface should work with
|
|
the current point at places other than the origin.
|
|
|
|
* test/Makefile.am: Move move-to-show-surface off the expected
|
|
failure list.
|
|
|
|
* test/move-to-show-surface.c: Add comment indicating that bug is
|
|
resolved.
|
|
|
|
* test/testsvg: Don't use diff to compare images, just imagediff.
|
|
|
|
2005-04-02 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: (cairo_set_target_image), (cairo_text_extents),
|
|
(cairo_show_text), (cairo_text_path):
|
|
* src/cairo-image-surface.c: (cairo_image_surface_create_for_data):
|
|
* src/cairo-gstate.c: (_cairo_gstate_text_to_glyphs):
|
|
* src/cairo-font.c: (_cairo_font_create): Style and indentation
|
|
fixes.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_create): Add (unsigned
|
|
char*) cast to quiet new gcc-4 warnings.
|
|
|
|
* src/cairo-ft-font.c: (_cairo_ft_font_glyph_extents): Initialize
|
|
variables to quiet new gcc-4 warnings.
|
|
|
|
* src/cairo-pdf-surface.c: (cairo_pdf_ft_font_write_generic_table),
|
|
(cairo_pdf_ft_font_write_glyf_table):
|
|
* src/cairo-png.c: (cairo_surface_write_png),
|
|
(cairo_image_surface_create_for_png):
|
|
* src/cairo-xlib-surface.c: (_get_image_surface):
|
|
* src/cairo-ps-surface.c: (_cairo_ps_surface_copy_page):
|
|
Use unsigned char* as expected by freetype, libpng, Xlib, and zlib.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-unicode.c: (_utf8_get_char), (_utf8_get_char_extended),
|
|
(_cairo_utf8_to_ucs4), (_cairo_utf8_to_utf16): Propagate unsigned
|
|
char* down from cairo_text_extents.
|
|
|
|
2005-04-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Update API shakeup chart.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c: (cairo_set_target_image_no_data): Add a standin for
|
|
the function that should be cairo_set_target_image which should
|
|
then have some other name. We can straighten that mess out when we
|
|
eliminate the set_target functions. Add deprecation alias for
|
|
cairo_current_pattern.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo-image-surface.c:
|
|
* src/cairo-surface.c: Deprecate cairo_surface_create_for_image in
|
|
favor of cairo_image_surface_create_for_data.
|
|
|
|
2005-03-31 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo.c (cairo_set_target_png): Remove this function now
|
|
that the PNG backend is gone.
|
|
|
|
2005-03-30 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Fix typo I had introduced into Jason's patch that
|
|
made configure fail.
|
|
|
|
2005-03-30 Carl Worth <cworth@cworth.org>
|
|
|
|
A few fixes courtesy of Jason Dorje Short <jdorje@users.sf.net>:
|
|
|
|
* configure.in: Disable PS backend if zlib is not found.
|
|
|
|
* src/cairo-win32-font.c: (_cairo_win32_font_glyph_path): Fix
|
|
mistyped parameter.
|
|
|
|
* src/cairo-win32-surface.c: (_cairo_win32_surface_finish): Fix
|
|
missing return value.
|
|
|
|
2005-03-30 T Rowley <tim.rowley@gmail.com>
|
|
|
|
* src/cairo-gstate.c (_cairo_gstate_stroke_extents): call
|
|
_cairo_pen_init so that the result takes into account the caps.
|
|
|
|
2005-03-29 T Rowley <tim.rowley@gmail.com>
|
|
|
|
* src/cairo-xlib.h: include Xlib.h to fix solaris build bustage.
|
|
|
|
2005-03-29 T Rowley <tim.rowley@gmail.com>
|
|
|
|
* src/cairo-wideint.h: add preprocessor tests for stdint.h/inttypes.h
|
|
|
|
* src/cairoint.h: add preprocessor tests for stdint.h/inttypes.h
|
|
|
|
2005-03-29 T Rowley <tim.rowley@gmail.com>
|
|
|
|
* configure.in: re-enable quartz backend
|
|
|
|
* src/cairo-quartz-surface.c: update to compilable/workable version
|
|
|
|
* src/cairo-atsui-font.c: update to compilable/workable version
|
|
|
|
2005-03-29 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am:
|
|
* test/*_*.c: More _/- renames in the test directory.
|
|
|
|
2005-03-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/Makefile.am:
|
|
* src/cairo_*.c: Renamed a bunch of files to use - rather than _
|
|
as a separator. Copy happened in the master repository to preserve
|
|
history, so this is just a big remove.
|
|
|
|
2005-03-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Sorted API shakeup chart.
|
|
|
|
2005-03-28 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo-png.c (cairo_image_surface_write_png)
|
|
(cairo_image_surface_create_from_png): New PNG utility functions.
|
|
|
|
* src/cairo_pdf_surface.c, src/cairo-pdf.h: Reverse the naming of
|
|
the pdf constructors so the callback based ones have the long
|
|
names.
|
|
|
|
2005-03-25 Jamey Sharp <jamey@minilop.net>
|
|
|
|
* src/cairo-xcb.h:
|
|
* src/cairo_xcb_surface.c:
|
|
Fix "implicit declaration" warning in cairo.c by moving
|
|
cairo_xcb_surface_create prototype into cairo-xcb.h.
|
|
|
|
2005-03-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-path-fixed-private.h:
|
|
* src/cairo_path.c: Clean up names of cairo_path internals.
|
|
|
|
2005-03-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_path_fill.c:
|
|
* src/cairo_path_stroke.c: Remove unneeded includes of
|
|
cairo-path-fixed-private.h.
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_glyph_path): Fix
|
|
indentation.
|
|
|
|
2005-03-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: More updates to the API Shakeup chart.
|
|
|
|
2005-03-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_path.c: (_cairo_path_fixed_init),
|
|
(_cairo_path_fixed_init_copy), (_cairo_path_fixed_fini),
|
|
(_cairo_path_fixed_move_to), (_cairo_path_fixed_rel_move_to),
|
|
(_cairo_path_fixed_line_to), (_cairo_path_fixed_rel_line_to),
|
|
(_cairo_path_fixed_curve_to), (_cairo_path_fixed_rel_curve_to),
|
|
(_cairo_path_fixed_close_path),
|
|
(_cairo_path_fixed_get_current_point), (_cairo_path_add),
|
|
(_cairo_path_add_op_buf), (_cairo_path_new_op_buf),
|
|
(_cairo_path_add_arg_buf), (_cairo_path_new_arg_buf),
|
|
(_cairo_path_fixed_interpret):
|
|
* src/cairo_path_bounds.c: (_cairo_path_fixed_bounds):
|
|
* src/cairo_path_fill.c: (_cairo_path_fixed_fill_to_traps):
|
|
* src/cairo_path_stroke.c: (_cairo_path_fixed_stroke_to_traps):
|
|
* src/cairoint.h: Rename cairo_path_real_t to cairo_path_fixed_t
|
|
and fix all _cairo_path functions to be named as _cairo_path_fixed
|
|
functions.
|
|
|
|
* src/cairo-gstate-private.h:
|
|
* src/cairo-path-fixed-private.h:
|
|
* src/cairo_font.c: (_cairo_font_glyph_path):
|
|
* src/cairo_ft_font.c: (_move_to), (_line_to), (_conic_to),
|
|
(_cubic_to), (_cairo_ft_font_glyph_path):
|
|
* src/cairo_gstate.c: (_cairo_gstate_init),
|
|
(_cairo_gstate_init_copy), (_cairo_gstate_fini),
|
|
(_cairo_gstate_new_path), (_cairo_gstate_move_to),
|
|
(_cairo_gstate_line_to), (_cairo_gstate_curve_to),
|
|
(_cairo_gstate_rel_move_to), (_cairo_gstate_rel_line_to),
|
|
(_cairo_gstate_rel_curve_to), (_cairo_gstate_close_path),
|
|
(_cairo_gstate_get_current_point), (_cairo_gstate_interpret_path),
|
|
(_cairo_gstate_stroke), (_cairo_gstate_in_stroke),
|
|
(_cairo_gstate_fill), (_cairo_gstate_in_fill),
|
|
(_cairo_gstate_stroke_extents), (_cairo_gstate_fill_extents),
|
|
(_cairo_gstate_clip), (_cairo_gstate_text_to_glyphs): Track name
|
|
change of cairo_path_real_t and _cairo_path_fixed functions.
|
|
|
|
2005-03-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-path-data-private.h: Remove CAIRO_BEGIN_DECLS and
|
|
CAIRO_END_DECLS as they are not needed for private headers.
|
|
|
|
* src/cairoint.h: Add ASSERT_NOT_REACHED macro.
|
|
|
|
* src/cairo.c: (cairo_get_path), (cairo_get_path_flat): Rewrite in
|
|
terms of cairo_copt_path and cairo_copy_path_flat in preparation
|
|
for removing cairo_gstate_interpret_path.
|
|
|
|
2005-03-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-gstate-private.h:
|
|
* src/cairo-path-fixed-private.h:
|
|
* src/cairo-private.h:
|
|
* src/cairoint.h: Begin the process of breaking up cairoint.h,
|
|
moving structure definitions of cairo_t, cairo_gstate_t, and
|
|
cairo_path_real_t into their own header files.
|
|
|
|
* src/cairo.c:
|
|
* src/cairo_gstate.c:
|
|
* src/cairo_path.c:
|
|
* src/cairo_path_fill.c:
|
|
* src/cairo_path_stroke.c:
|
|
* src/cairo_pen.c: Track changes to header files, reaching into
|
|
the new private headers where necessary.
|
|
|
|
2005-03-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c: (cairo_set_target_glitz), (cairo_set_target_pdf),
|
|
(cairo_set_target_pdf_as_file), (cairo_set_target_png),
|
|
(cairo_set_target_ps), (cairo_set_target_win32),
|
|
(cairo_set_target_xcb), (cairo_set_target_drawable): Move
|
|
surface-specific cairo_t functions to cairo.c.
|
|
|
|
* src/cairo_glitz_surface.c:
|
|
* src/cairo_pdf_surface.c:
|
|
* src/cairo_png_surface.c:
|
|
* src/cairo_ps_surface.c:
|
|
* src/cairo_win32_surface.c:
|
|
* src/cairo_xcb_surface.c:
|
|
* src/cairo_xlib_surface.c: Remove functions that have now moved
|
|
to cairo.c.
|
|
|
|
* test/.cvsignore: A few new files to ignore now with new
|
|
compilation mode using a libtool helper library.
|
|
|
|
2005-03-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Add backwards-compatibility for recently renamed
|
|
functions.
|
|
|
|
2005-03-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c:
|
|
* src/cairo_gstate.c: (_cairo_gstate_transform),
|
|
(_cairo_gstate_user_to_device),
|
|
(_cairo_gstate_user_to_device_distance),
|
|
(_cairo_gstate_device_to_user),
|
|
(_cairo_gstate_device_to_user_distance),
|
|
(_cairo_gstate_reset_clip):
|
|
* src/cairo_matrix.c:
|
|
* src/cairoint.h:
|
|
* src/cairo.h: Rename functions to eliminate abbreviations:
|
|
cairo_concat_matrix -> cairo_transform
|
|
cairo_transform_point -> cairo_user_to_device
|
|
cairo_transform_distance -> cairo_user_to_device_distance
|
|
cairo_inverse_transform_point -> cairo_device_to_user
|
|
cairo_inverse_transform_distance-> cairo_device_to_user_distance
|
|
cairo_init_clip -> cairo_reset_clip
|
|
|
|
2005-03-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Update API shakeup chart.
|
|
|
|
2005-03-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-path-data-private.h: * src/cairo.c: (cairo_copy_path),
|
|
(cairo_copy_path_flat),
|
|
(cairo_append_path): Rename cairo_copy_path_data,
|
|
cairop_copy_path_data_flat, and cairo_append_path_data to
|
|
cairo_copy_path, cairo_copy_path_flat, and cairo_append_path.
|
|
|
|
* src/cairo.h: Add new cairo_path_t, containing a
|
|
cairo_path_data_t array and an explicit length. Remove
|
|
CAIRO_PATH_END_PATH terminator from cairo_path_data_t.
|
|
|
|
* src/cairo_atsui_font.c: (_cairo_atsui_font_glyph_path):
|
|
* src/cairo_font.c: (_cairo_font_glyph_path):
|
|
* src/cairo_ft_font.c: (_move_to), (_line_to), (_conic_to),
|
|
(_cubic_to), (_cairo_ft_font_glyph_path):
|
|
* src/cairo_gstate.c: (_cairo_gstate_interpret_path):
|
|
* src/cairo_path.c: (_cairo_path_init), (_cairo_path_init_copy),
|
|
(_cairo_path_fini), (_cairo_path_move_to),
|
|
(_cairo_path_rel_move_to), (_cairo_path_line_to),
|
|
(_cairo_path_rel_line_to), (_cairo_path_curve_to),
|
|
(_cairo_path_rel_curve_to), (_cairo_path_close_path),
|
|
(_cairo_path_get_current_point), (_cairo_path_add),
|
|
(_cairo_path_add_op_buf), (_cairo_path_new_op_buf),
|
|
(_cairo_path_add_arg_buf), (_cairo_path_new_arg_buf),
|
|
(_cairo_path_interpret):
|
|
* src/cairo_path_bounds.c: (_cairo_path_bounds):
|
|
* src/cairo_path_data.c: (_cairo_path_data_count),
|
|
(_cairo_path_data_populate), (_cairo_path_data_create_real),
|
|
(cairo_path_destroy), (_cairo_path_data_append_to_context):
|
|
* src/cairo_path_fill.c: (_cairo_path_fill_to_traps):
|
|
* src/cairo_path_stroke.c: (_cairo_path_stroke_to_traps):
|
|
* src/cairoint.h:
|
|
* test/path_data.c: (munge_and_set_path), (draw), (main): Rename
|
|
the internal path object from cairo_path_t to cairo_path_real_t.
|
|
|
|
2005-03-18 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_pdf_surface.c (cairo_set_target_pdf_as_file)
|
|
(cairo_set_target_pdf): Remove return statements from these
|
|
functions (bug #2137).
|
|
|
|
2005-03-18 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/Makefile.am (libcairo_la_SOURCES): Remove unused
|
|
libcairo_freetype_sources (thanks to Damien Carbery). Closes bug
|
|
#2673.
|
|
|
|
2005-03-17 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_matrix.c (cairo_matrix_rotate): doc fix -
|
|
90 degrees is MI_PI/2 radians.
|
|
|
|
* src/cairo.c src/cairo_matrix.c src/cairo_ft_font.c
|
|
src/cairo_ps_surface.c src/cairo_quartz_surface.c
|
|
src/cairo_win32_font.c src/cairo_win32_surface.c
|
|
src/cairo_xlib_surface.c: Cairo is only capitalized
|
|
at the beginning of sentences.
|
|
|
|
2005-03-17 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
From Tor Lillqvist <tml@novell.com>:
|
|
|
|
* test/cairo_test.c (cairo_test): Open output PNG files in binary
|
|
mode.
|
|
|
|
2005-03-17 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo.h src/cairo_surface.c src/cairo-xlib.h
|
|
src/cairo_xlib_surface.c: Move cairo_xlib_surface_set_device_offset()
|
|
to a generic cairo_surface_set_device_offset().
|
|
|
|
* src/cairo_gstate.c: Take the surface's device offset into
|
|
account.
|
|
|
|
* doc/public/cairo-sections.txt: Update.
|
|
|
|
2005-03-17 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_matrix.c: Fix the docs to to correctly describe
|
|
the order of transformation for muliply/scale/rotate/translate.
|
|
(cairo_matrix_translate): Fix translate/rotate typo in the
|
|
parameter descriptions.
|
|
|
|
2005-03-17 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_output_stream.c: Forgot to add this file.
|
|
|
|
2005-03-16 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_surface.c (_destroy_user_data)
|
|
(cairo_surface_set_user_data): Dont call user data destroy
|
|
function if it's NULL.
|
|
|
|
* test/user_data.c: (main): Add test case for user data with NULL
|
|
destroy function.
|
|
|
|
2005-03-16 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/Makefile.am: Add cairo_output_stream.c
|
|
|
|
* src/cairo.h: Add new errors, CAIRO_STATUS_WRITE_ERROR and
|
|
CAIRO_STATUS_SURFACE_FINISHED, add cairo_surface_finish()
|
|
prototype, add cairo_write_func_t.
|
|
|
|
* src/cairo.c: Add strings for new errors, documentation fix.
|
|
|
|
* src/cairo_win32_surface.c:
|
|
* src/cairo_xcb_surface.c:
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairo_glitz_surface.c:
|
|
* src/cairo_image_surface.c:
|
|
* src/cairo_png_surface.c:
|
|
* src/cairo_ps_surface.c: Rename surface destroy functions to
|
|
finish and change them to not free the surface.
|
|
|
|
* src/cairo-pdf.h:
|
|
* src/cairo_pdf_surface.c: Change PDF surface constructors to take
|
|
a write function in the general case and add stdio convenience
|
|
constructors. Change destroy function to finish for
|
|
cairo_pdf_surface. Change implementation to use
|
|
cairo_output_stream_t functions for output.
|
|
|
|
* src/cairo_font.c: (_cairo_font_show_glyphs): Use
|
|
_cairo_surface_show_glyphs instead of calling function pointer
|
|
directly.
|
|
|
|
* src/cairoint.h: Add prototypes for cairo output stream
|
|
functions, rename destroy to finish in cairo_surface_backend_t and
|
|
add finished flag to cairo_surface_t.
|
|
|
|
* src/cairo_surface.c: Add cairo_surface_finish() and call it from
|
|
cairo_surface_destroy(). Check the finished flag in
|
|
cairo_surface_t in functions that change the surface.
|
|
|
|
2005-03-15 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-xlib.h src/cairo_xlib_surface.c: Rework set
|
|
of contructors for XLib surfaces. Add
|
|
cairo_xlib_surface_set_size().
|
|
|
|
* src/cairo-xlib.h src/cairo_xlib_surface.c: Add
|
|
cairo_xlib_surface_set_device_offset().
|
|
|
|
* src/cairo_xlib_surface.c (cairo_xlib_surface_set_clip_region):
|
|
Rewrite for clarity and efficiency.
|
|
|
|
* src/cairo_xlib_surface.c (_get_image_surface): Use a
|
|
temporary pixmap to avoid possible BadMatch when fetch
|
|
from windows.
|
|
|
|
* src/cairo.[ch] src/cairo-xlib.h: Fix some parameter names
|
|
for the docs.
|
|
|
|
* doc/public/cairo-sections.txt: Update
|
|
|
|
2005-03-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/path_data-ref.png: Add reference image.
|
|
|
|
2005-03-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am: Fixes to force tests to run against locally
|
|
compiled version (thanks to Manish Singh).
|
|
|
|
2005-03-11 Carl Worth <cworth@cworth.org>
|
|
|
|
* doc/public/cairo-sections.txt:
|
|
* doc/public/tmpl/cairo-surface.sgml:
|
|
* doc/public/tmpl/cairo.sgml: Added some documentation, so we get
|
|
some churn here.
|
|
|
|
* src/cairo.c:
|
|
* src/cairo.h: New functions: cairo_copy_path_data,
|
|
cairo_copy_path_data_flat, and cairo_append_path_data.
|
|
|
|
* src/Makefile.am:
|
|
* src/cairo-path-data-private.h:
|
|
* src/cairo_path_data.c: Add new implementation for
|
|
cairo_copy_path_data and cairo_append_path_data.
|
|
|
|
* test/Makefile.am:
|
|
* test/path_data.c: New test for new path_data functions.
|
|
|
|
2005-03-10 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_surface.c (_destroy_user_data): Add this function and
|
|
call it on surface destruction.
|
|
|
|
2005-03-10 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* test/user_data.c (main): Fix assert()'s using = instead of ==.
|
|
|
|
* test/cairo_test.c (cairo_test): Move xunlink call below the
|
|
xasprintf that builds the filename to unlink.
|
|
|
|
2005-03-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: API Shakeup status update.
|
|
|
|
2005-03-10 Carl Worth <cworth@cworth.org>
|
|
|
|
Originally: 2005-02-24 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_surface.c (cairo_surface_set_user_data)
|
|
(cairo_surface_get_user_data):
|
|
* src/cairo.h: Add const qualifier to cairo_user_data_key_t
|
|
arguments.
|
|
|
|
Originally: 2005-02-15 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_surface.c (cairo_surface_get_data, cairo_surface_set_data):
|
|
Add these two functions to set and get user data on an surface.
|
|
|
|
* src/cairo.h: Function prototypes for new functions.
|
|
|
|
* test/user_data.c: Test case for user data functions.
|
|
|
|
2005-03-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo_test.c (cairo_test): Move filename initialization up
|
|
to before first use.
|
|
|
|
* test/get_and_set.c:
|
|
* test/Makefile.am: Add test for the most trivial cairo_get and
|
|
cairo_set functions.
|
|
|
|
2005-03-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo_test.c: (cairo_test):
|
|
* test/cairo_test.h:
|
|
* test/clip_twice.c: (draw):
|
|
* test/coverage.c: (draw):
|
|
* test/fill_rule.c: (draw):
|
|
* test/leaky_polygon.c: (draw):
|
|
* test/line_width.c: (draw):
|
|
* test/linear_gradient.c: (draw):
|
|
* test/move_to_show_surface.c: (draw):
|
|
* test/pixman_rotate.c: (draw):
|
|
* test/text_cache_crash.c: (draw):
|
|
* test/text_rotate.c: (draw): Change the draw function under test
|
|
to return a cairo_test_status_t so that it can indicate test
|
|
failure even if there is no result image.
|
|
|
|
2005-03-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Update API Shakeup planning chart.
|
|
fix typos.
|
|
|
|
2005-03-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* doc/public/cairo-sections.txt:
|
|
* src/cairo.c: (cairo_get_pattern), (cairo_get_font),
|
|
(cairo_get_font_extents), (cairo_get_operator),
|
|
(cairo_get_rgb_color), (cairo_get_alpha), (cairo_get_tolerance),
|
|
(cairo_get_current_point), (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_surface), (cairo_get_path),
|
|
(cairo_get_path_flat):
|
|
* src/cairo.h:
|
|
* src/cairo_ft_font.c: (_conic_to):
|
|
* src/cairo_gstate.c: (_cairo_gstate_get_target_surface),
|
|
(_cairo_gstate_get_pattern), (_cairo_gstate_get_operator),
|
|
(_cairo_gstate_get_rgb_color), (_cairo_gstate_get_tolerance),
|
|
(_cairo_gstate_get_alpha), (_cairo_gstate_get_fill_rule),
|
|
(_cairo_gstate_get_line_width), (_cairo_gstate_get_line_cap),
|
|
(_cairo_gstate_get_line_join), (_cairo_gstate_get_miter_limit),
|
|
(_cairo_gstate_get_matrix), (_cairo_gstate_get_current_point),
|
|
(_cairo_gstate_show_surface), (_cairo_gstate_get_font),
|
|
(_cairo_gstate_get_font_transform), (_cairo_gstate_get_font_scale),
|
|
(_cairo_gstate_ensure_font), (_cairo_gstate_get_font_extents),
|
|
(_cairo_gstate_text_to_glyphs):
|
|
* src/cairo_path.c: (_cairo_path_get_current_point):
|
|
* src/cairoint.h:
|
|
* test/pixman_rotate.c: (draw):Rename all the cairo_current
|
|
functions to cairo_get functions instead. Add documentation for
|
|
all of these functions (and a few others as well).
|
|
|
|
Add support so that old binarys should still run and old source
|
|
should still compile, (though we'll rip that out again on the API
|
|
Shakeup flag day).
|
|
|
|
2005-03-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Add -head to CAIRO_VERSION after tagging with
|
|
SNAPSHOT_0_4_0.
|
|
|
|
2005-03-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* gtk-doc.make (dist-check-gtkdoc): Commit workaround to prevent
|
|
make distcheck from making bogus complaints that gtk-doc is not
|
|
enabled.
|
|
|
|
* test/cairo_test.c (cairo_test_create_png_pattern): Look for png
|
|
images in ${srcdir}/filename as well, so that make distcheck can
|
|
still find them.
|
|
|
|
* test/Makefile.am (EXTRA_DIST): Add romedalen.png to EXTRA_DIST
|
|
so the tests can pass from the tar file.
|
|
|
|
* doc/public/cairo-sections.txt: Fix typo: cairo-win3 ->
|
|
cairo-win32.
|
|
|
|
* doc/public/cairo-docs.xml: Add cairo-win32.xml to the list, so
|
|
it gets generated as well.
|
|
|
|
* NEWS (http): Add pointer to new win32 documentation.
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.4.0
|
|
|
|
* NEWS: Added notes for snapshot 0.4.0
|
|
|
|
2005-03-08 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo_test.c (xunlink): Shared function for checking unlink
|
|
errrors.
|
|
(cairo_test): Move all error messages to test-specific log files
|
|
for quieter test output.
|
|
|
|
* test/Makefile.am (XFAIL_TESTS): Make pixman_rotate an expected
|
|
failure.
|
|
|
|
* configure.in: Require libpixman >= 0.1.4.
|
|
|
|
2005-03-08 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_pdf_surface.c (_cairo_pdf_surface_composite): Return
|
|
CAIRO_STATUS_SUCCESS even if we don't implement masks yet, so we
|
|
don't set cr->status to CAIRO_INT_STATUS_UNSUPPORTED.
|
|
|
|
2005-03-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_traps.c: Disable the "new" intersection code so that
|
|
the incorrect fill problems (test/fill_rule) go away.
|
|
|
|
* configure.in: Make configure fail if no font backend is
|
|
available. Point the user at freetype and fontconfig.
|
|
|
|
2005-03-06 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_pattern.c (_cairo_image_data_set_linear): Comment
|
|
and clean up the gradient computation.
|
|
(_cairo_linear_pattern_classify): Determine if a linear
|
|
gradient is horizontal or vertical.
|
|
(_cairo_pattern_acquire_surface_for_gradient): Optimize
|
|
horizontal/vertical gradients with a repeating surface.
|
|
|
|
* test/linear_gradient.c: Test case for linear gradients
|
|
at angles and with a rotated pattern matrix.
|
|
|
|
2005-03-06 David Reveman <davidr@novell.com>
|
|
|
|
* src/cairo_glitz_surface.c (_cairo_glitz_pattern_acquire_surface):
|
|
Do not allow acceleration of gradients when color stops have different
|
|
alpha. Add note about the current state of glitz's gradient
|
|
acceleration. CAIRO_FILTER_GOOD and CAIRO_FILTER_BEST is ok.
|
|
(_cairo_glitz_surface_composite_trapezoids): Use unsigned short for
|
|
alpha.
|
|
|
|
2005-03-04 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_win32_font.c src/cairo_win32_surface.c: Update
|
|
for recent backend interface changes.
|
|
|
|
* configure.in: Reenable win32 backend by default.
|
|
|
|
2005-03-04 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_glitz_surface.c
|
|
(_cairo_glitz_pattern_acquire_surface): Fix accidental reversal of
|
|
condition in previous patch.
|
|
|
|
2005-03-04 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairoint.h src/cairo_pattern.c src/cairo_glitz_surface.c:
|
|
Add _cairo_pattern_is_opaque, use it rather than
|
|
pattern->alpha == 1.0.
|
|
|
|
2005-03-04 David Reveman <davidr@novell.com>
|
|
|
|
* configure.in: Enable xcb backend.
|
|
|
|
* src/cairo_xcb_surface.c: Update xcb backend.
|
|
|
|
* configure.in: Fixed variable assignments.
|
|
|
|
* src/cairo_glitz_surface.c: Add overall alpha acceleration
|
|
to a few cases not covered by _cairo_pattern_acquire_surfaces but
|
|
possible to accelerate by glitz.
|
|
|
|
* src/cairo_pattern.c:
|
|
(_cairo_pattern_acquire_surfaces): Add overall alpha acceleration
|
|
using mask surface.
|
|
|
|
* src/cairoint.h:
|
|
Add convenience function _cairo_pattern_acquire_surfaces.
|
|
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairo_surface.c:
|
|
* src/cairo_ps_surface.c:
|
|
* src/cairo_png_surface.c:
|
|
* src/cairo_pdf_surface.c:
|
|
* src/cairo_pattern.c:
|
|
* src/cairo_image_surface.c:
|
|
* src/cairo_gstate.c:
|
|
* src/cairo_glitz_surface.c:
|
|
* src/cairo_ft_font.c (_cairo_ft_font_show_glyphs): Mask to composite
|
|
operation is now passed as a pattern.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo_xlib_surface.c:
|
|
(_cairo_xlib_surface_set_matrix): Setting identity transform should
|
|
always be successful.
|
|
|
|
* src/cairo_surface.c:
|
|
* src/cairo_ps_surface.c:
|
|
* src/cairo_png_surface.c:
|
|
* src/cairo_pdf_surface.c:
|
|
* src/cairo_image_surface.c:
|
|
* src/cairo_glitz_surface.c: Removed surface backend functions
|
|
set_matrix, set_filter, set_repeat.
|
|
|
|
* configure.in: Enabled glitz backend.
|
|
|
|
* src/cairo_glitz_surface.c: Major update to glitz backend. The output
|
|
quality should now be just as good as the image and xlib backends.
|
|
|
|
* configure.in: Disabled win32 and quartz backends as they are now
|
|
temporarily out of sync.
|
|
|
|
* src/cairoint.h: Replaced old cairo_pattern_t struct with new
|
|
cairo_surface_t like structure of cairo_pattern_t.
|
|
Added new function prototypes for acquiring a source surface from
|
|
a pattern.
|
|
|
|
* src/cairo_xlib_surface.c:
|
|
(_cairo_xlib_surface_composite): Removed fast path that used XCopyArea.
|
|
|
|
* src/cairo_ps_surface.c:
|
|
* src/cairo_pdf_surface.c:
|
|
* src/cairo_image_surface.c:
|
|
* src/cairo_gstate.c: Switched to cairo_surface_t like structure
|
|
of cairo_pattern_t and new interface for acquiring a source
|
|
surface from a pattern.
|
|
|
|
* src/cairo_pattern.c: New implementations of many functions. This was
|
|
necessary because of switch to cairo_surface_t like structure of
|
|
cairo_pattern_t. Includes new interface for acquiring a source
|
|
surface for a pattern. Things that didn't belong in cairoint.h have
|
|
been moved here.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_show_surface): Inherit surface
|
|
attributes while surface attribute functions still exist.
|
|
|
|
2005-03-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Note that cairo_output_stream_t patch has been reviewed.
|
|
|
|
2005-03-01 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_show_surface): Fix
|
|
uninitialized value for status, (reported by Manish Singh).
|
|
|
|
2005-02-27 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_gstate.c (_cairo_rectangle_intersect): Fix this
|
|
function again. Problem with signed/unsigned types reported by
|
|
Jeff Muizelaar <jrmuizel@nit.ca>.
|
|
|
|
2005-02-27 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo.h (cairo_fill_rule_t): Remove newline in comment which
|
|
was confusing gtk-doc.
|
|
|
|
* src/cairo_image_surface.c (cairo_image_surface_create_for_data)
|
|
(cairo_image_surface_create): Document these functions.
|
|
|
|
2005-02-25 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Note that "user data" and "setters and getters" patches
|
|
have been reviewed. Remove a few more TODO notes:
|
|
cleanup cairo_snippets: DONE
|
|
cairo_surface_finish: Now in API Shakeup
|
|
snapping code: Decided against this
|
|
|
|
2005-02-25 Carl Worth <cworth@cworth.org>
|
|
|
|
From David Reveman:
|
|
|
|
* src/cairo_matrix.c (_cairo_matrix_is_integer_translation):
|
|
Rewrite to use cairo_bool_t for legibility.
|
|
|
|
2005-02-25 Carl Worth <cworth@cworth.org>
|
|
|
|
From David Reveman:
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_show_surface): Simplify code
|
|
to eliminate a goto.
|
|
|
|
2005-02-25 Carl Worth <cworth@cworth.org>
|
|
|
|
From David Reveman:
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_pattern_init_copy):
|
|
(_cairo_gstate_clip_and_composite_trapezoids)
|
|
(_cairo_gstate_clip_and_composite_trapezoids)
|
|
(_cairo_gstate_show_surface, _cairo_gstate_show_glyphs)
|
|
(_cairo_gstate_show_glyphs): Clean up the mess that was
|
|
the misnamed _cairo_gstate_create_pattern.
|
|
|
|
2005-02-25 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_pattern.c (_cairo_pattern_shader_init): Don't put an
|
|
off-by-one n_stops into cairo_shader_op_t.
|
|
(_cairo_shader_op_find_color_stops): Put search for two color
|
|
stops containing a given offset into its own function. Handle the
|
|
case of before first and after last stop by returning the nearest
|
|
stop twice.
|
|
(_cairo_pattern_calc_color_at_pixel): Handle case of no color
|
|
stops by returning a transparent pixel.
|
|
|
|
2005-02-24 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_win32_surface.c: Remove a left-over debug printf.
|
|
|
|
2005-02-24 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_pattern.c (cairo_pattern_add_color_stop): Fix memory
|
|
leak when realloc fails due to out-of-memory.
|
|
|
|
2005-02-24 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_win32_surface.[ch]: Instead of counting
|
|
on ordering deletion to work (apparently it didn't on
|
|
older Windows), save the initial bitmap created
|
|
with the DC and reselect that into the DC. (Based
|
|
on a patch by Hans Breuer)
|
|
|
|
2005-02-24 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/.cvsignore: Add pixman_rotate to ignore list.
|
|
|
|
2005-02-24 Carl Worth <cworth@cworth.org>
|
|
|
|
Fixes from David Reveman with minor cleanups by Carl Worth:
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_create): Handle new failure
|
|
possibility of _cairo_gstate_init.
|
|
(_cairo_gstate_init): Handle possible failure of
|
|
_cairo_pattern_create_solid.
|
|
(_cairo_gstate_set_pattern): Reference new pattern before
|
|
destroying existing pattern to handle the case where they are the
|
|
same.
|
|
(_cairo_gstate_set_rgb_color): Handle possible failure of
|
|
_cairo_pattern_create_solid.
|
|
|
|
2005-02-24 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.h: Fix typo (pointed out by Kristian Høgsberg).
|
|
|
|
2005-02-24 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_win32_surface.c (_cairo_win32_surface_destroy):
|
|
When we created a DC/bitmap pair, delete the DC before
|
|
the Bitmap so that the Bitmap will be released from the
|
|
DC and can be destroyed. (Reported by Hans Breuer)
|
|
|
|
* configure.in cairo.pc.in: Only require fontconfig
|
|
if building FreeType font backend.
|
|
|
|
* configure.in: Fix output when reporting Win32 font backend.
|
|
|
|
2005-02-24 Carl Worth c<worth@cworth.org>
|
|
|
|
* TODO: Remove many TODO items that have now been absorbed by the
|
|
API shakeup. Remove comparison with PostScript as there's nothing
|
|
interesting there left unimplemented, (and cairo is already
|
|
establishing its own conventions in naming and behavior that
|
|
deviate from PostScript).
|
|
|
|
* src/cairoint.h: Fix typo (pointed out by Mike Emmel)
|
|
|
|
2005-02-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Add entries from API Shakeup.
|
|
|
|
2005-02-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* README:
|
|
* src/cairo-features.h.in:
|
|
* src/cairo-glitz.h:
|
|
* src/cairo-pdf.h:
|
|
* src/cairo-png.h:
|
|
* src/cairo-ps.h:
|
|
* src/cairo-quartz.h:
|
|
* src/cairo-xcb.h:
|
|
* src/cairo-xlib.h:
|
|
* src/cairo.c:
|
|
* src/cairo.h:
|
|
* src/cairo_color.c:
|
|
* src/cairo_fixed.c:
|
|
* src/cairo_font.c:
|
|
* src/cairo_gstate.c:
|
|
* src/cairo_hull.c:
|
|
* src/cairo_image_surface.c:
|
|
* src/cairo_matrix.c:
|
|
* src/cairo_path.c:
|
|
* src/cairo_path_bounds.c:
|
|
* src/cairo_path_fill.c:
|
|
* src/cairo_path_stroke.c:
|
|
* src/cairo_pen.c:
|
|
* src/cairo_png_surface.c:
|
|
* src/cairo_polygon.c:
|
|
* src/cairo_ps_surface.c:
|
|
* src/cairo_slope.c:
|
|
* src/cairo_spline.c:
|
|
* src/cairo_surface.c:
|
|
* src/cairo_traps.c:
|
|
* src/cairo_xcb_surface.c:
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairoint.h: Switch from broken cworth@isi.edu address to
|
|
canonical cworth@cworth.org address.
|
|
|
|
2005-02-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/write_png.c:
|
|
* src/cairo-atsui.h:
|
|
* src/cairo_atsui_font.c: Convert to utf-8 encoding.
|
|
|
|
2005-02-22 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Temporarily disable XCB backend by default.
|
|
|
|
2005-02-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_pattern.c (cairo_pattern_reference):
|
|
* src/cairo.h: Revert accidental commit.
|
|
|
|
2005-02-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_surface.c (_fallback_composite_trapezoids): Fix y
|
|
offset to use dst_y instead of dst_x, (caught by David Reveman).
|
|
|
|
2005-02-20 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo-win32.h: Fix line endings (reported by
|
|
Hans Breuer)
|
|
|
|
2005-02-16 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
Patches from Mike Owens <etc@filespanker.com>:
|
|
|
|
* src/cairo_png_surface.c (_cairo_png_surface_copy_page): Free
|
|
rows if we fail early in this function.
|
|
|
|
* src/cairo_path.c (_cairo_path_init_copy): Clean up path if we
|
|
run out of memory.
|
|
|
|
2005-02-13 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_pdf_surface.c
|
|
(_cairo_pdf_surface_create_for_document): Initialize array element
|
|
size correctly.
|
|
|
|
2005-02-10 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
Patches from Owen Taylor:
|
|
|
|
* src/cairo_pdf_surface.c
|
|
(_cairo_pdf_surface_show_glyphs): Emit text as octal escapes,
|
|
to avoid problems with \, \r, ), etc.
|
|
(_cairo_pdf_document_write_fonts): Change /Flags to be 4 (symbolic),
|
|
not 32 (non-symbolic), otherwise acroread gets confuse.
|
|
(cairo_pdf_ft_font_write_cmap_table): Use a 1,0 cmap subtable,
|
|
not a 0,0, to conform to the PDF spec.
|
|
|
|
2005-02-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* autogen.sh (LC_NUMERIC): Use LC_NUMERIC=C so that decimal
|
|
separator works in version checks.
|
|
|
|
2005-02-12 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_clip_and_composite_trapezoids): Fix
|
|
x2/x1 typo.
|
|
|
|
2005-02-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo.c (cairo_text_extents): Return all-zero extents if
|
|
string is NULL.
|
|
|
|
2005-02-12 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_gstate.c
|
|
(_cairo_gstate_clip_and_composite_trapezoids): Make clipping fast
|
|
path fast. When we have a clipping region set, intersect it
|
|
against the drawing extents to determine the bounding box for the
|
|
visible drawing.
|
|
|
|
2005-02-10 Carl Worth <cworth@cworth.org>
|
|
|
|
* BUGS: Add bug for cairo_show_surface under non-default CTM.
|
|
|
|
2005-02-07 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* test/pixman_rotate.c, test/pixman_rotate-ref.png: New test case
|
|
which exposes off-by-one rotation error in pixman.
|
|
|
|
2005-02-06 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_gstate.c src/cairo.c: Allow cairo_set_font (cr, NULL)
|
|
to unset the current font and return the cairo_t to the the
|
|
"use the font from cairo_select_font() state".
|
|
|
|
2005-02-06 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_win32_font.c (_cairo_win32_font_text_to_glyphs):
|
|
Return the right status. (Reported by Hans Breuer.)
|
|
|
|
2005-02-06 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_win32_font.c (_cairo_win32_font_text_to_glyphs): Free
|
|
glyph_indices, not glyphs. (Reported by Hans Breuer.)
|
|
|
|
2005-02-05 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Add message stating why glitz backend is disabled.
|
|
|
|
2005-02-05 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_text_to_glyphs):
|
|
Don't free *glyphs when succeeding! (Reported by Øyvind Kolås)
|
|
|
|
* configure.in: Temporarily disable glitz by default.
|
|
|
|
2005-02-04 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/Makefile.am: Generate an error during make install if old
|
|
cairo headers are found in includedir, (rather than
|
|
includedir/cairo where the new ones are going).
|
|
|
|
2005-02-03 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_text_to_glyphs,
|
|
_cairo_ft_font_create_glyph): Fix missing cairo_ft_font_unlock_face().
|
|
|
|
* src/cairo_cache.c (_cairo_cache_random_entry): Fix problem
|
|
when no entry could be found.
|
|
|
|
2005-02-03 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_font.c src/cairo.h doc/public/cairo-sections.txt:
|
|
Add cairo_font_extents().
|
|
|
|
* src/cairo_win32_font.c src/cairo-win32.h doc/public/cairo-sections.txt:
|
|
Rename cairo_font_create_for_logfont() into
|
|
cairo_font_create_for_logfontw() to make clear what it takes.
|
|
Don't add cairo_font_create_for_logfonta() for now.
|
|
|
|
2005-02-02 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_win32_font.c doc/public/cairo-sections.txt
|
|
doc/public/Makefile.am: Add windows functions to the docs.
|
|
|
|
2005-02-02 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_win32_font.c (cairo_win32_font_select_font,
|
|
cairo_win32_release_font, cairo_win32_font_get_scale_factor):
|
|
Add some functions to select the font into a device context
|
|
with the intention to enable callers to use, e.g, Uniscribe.
|
|
|
|
* src/cairo_win32_font.c: Use 'hdc' not 'dc' for param/variable
|
|
name.
|
|
|
|
2005-02-02 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_win32_font.c (cairo_win32_font_select_font,
|
|
cairo_win32_release_font, cairo_win32_font_get_scale_factor):
|
|
Add some functions to select the font into a device context
|
|
with the intention to enable callers to use, e.g, Uniscribe.
|
|
|
|
* src/cairo_win32_font.c: Use 'hdc' not 'dc' for param/variable
|
|
name.
|
|
|
|
* src/cairo_win32_font.c (_cairo_win32_font_show_glyphs): Return
|
|
immediately if height or width is 0.
|
|
|
|
2005-02-02 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_win32_font.c: Mostly-functioning Win32 font backend;
|
|
no glyph paths yet.
|
|
|
|
* configure.in: Turn on building of the Win32 font backend.
|
|
|
|
* src/cairo-win32-private.h src/Makefile.am: Private header for
|
|
the Win32 backend.
|
|
|
|
* src/cairo-win32-private.h src/cairo_win32_surface.c:
|
|
Internally export _cairo_win32_print_gdi_error() for use
|
|
in the font code.
|
|
|
|
* src/cairo-win32-private.h src/cairo_win32_surface.c:
|
|
Add _cairo_win32_surface_create_dib to create a DIB surface.
|
|
|
|
src/cairo-win32-private.h src/cairo_win32_surface.c:
|
|
Add _cairo_surface_is_win32()
|
|
|
|
* configure.in: Check for vasnprintf.
|
|
|
|
* test/cairo_test.c (xasprintf): Add a simple fixed-buffer size
|
|
snprintf fallback in the absence of vasnprintf.
|
|
|
|
2005-02-01 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_pdf_surface.c (_cairo_pdf_surface_composite): Pretend
|
|
we support compositing of solid color or gradient patterns to
|
|
prevent image fallback.
|
|
(emit_pattern): New function, code factored out from
|
|
_cairo_pdf_surface_composite_trapezoids.
|
|
(_cairo_pdf_surface_show_glyphs): Use emit_pattern here so we get
|
|
pattern support for text.
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_get_unscaled_font): Fix typo.
|
|
|
|
2005-02-01 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_unicode.c src/cairoint.h src/Makefile.am: Add
|
|
_cairo_utf8_to_utf16(), _cairo_utf8_to_ucs4() based on code from GLib.
|
|
|
|
* src/cairo.[ch]: Add CAIRO_STATUS_INVALID_STRING
|
|
|
|
* src/cairo_ft_font.c: Use _cairo_utf8_to_ucs4().
|
|
|
|
* src/cairo.h: Add cairo_bool_t
|
|
|
|
* src/cairoint.h: Add TRUE/FALSE definitions.
|
|
|
|
* src/cairo.[ch] src/cairoint.h src/cairo_gstate.c: switch
|
|
cairo_in_stroke/cairo_in_fill and all the functions used to
|
|
implement them over to cairo_bool_t.
|
|
|
|
2005-01-31 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* configure.in src/cairo-features.h.in: Add a check for the
|
|
Windows platform and --enable-win32. Also add some (currently
|
|
always off) stubs for native Win32 fonts.
|
|
|
|
* configure.in: Make building the PDF backend conditional
|
|
on having FreeType.
|
|
|
|
* src/Makefile.am src/cairo_win32_surface.c src/cairo_win32_font.c
|
|
src/cairo-win32.h: Add a Win32 backend using GDI and software
|
|
fallbacks Font code is not yet there yet, but it works with the
|
|
fontconfig backend.
|
|
|
|
* src/cairo_gdip_font.cpp src/cairo_gdip_surface.cpp: Remove
|
|
remnants of a GDI+ based backend.
|
|
|
|
* src/cairoint.h: Prefer platform-specific font backends
|
|
to the fontconfig backend.
|
|
|
|
2005-01-31 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairoint.h src/cairo_image_surface.c
|
|
src/cairo_pdf_surface.c src/cairo_png_surface.c
|
|
src/cairo_surface.c src/cairo_xlib_surface.c: Replace
|
|
the get_image()/set_image() backend operations with
|
|
a more specific {acquire,release}_{source,dest}_image()
|
|
and clone_similar().
|
|
|
|
* src/cairoint.h src/cairo_pattern.c: Replace
|
|
_cairo_pattern_get_surface() with a
|
|
_cairo_pattern_begin_draw()/_cairo_pattern_end_draw() pair.
|
|
|
|
* src/cairo_image_surface.c: Save the format for which
|
|
an image is created so we can access it later. (Needed
|
|
for the _cairo_xlib_surface_clone_similar())
|
|
|
|
* src/cairoint.h src/cairo_image_surface.c:
|
|
Add _cairo_surface_is_image().
|
|
|
|
* src/cairoint.h: Add CAIRO_OK(status) to check
|
|
for CAIRO_STATUS_SUCCESS.
|
|
|
|
* src/cairo_xlib_surface.c: In the absence of of
|
|
RENDER, make cairo_xlib_surface_create_similar()
|
|
return an image surface.
|
|
|
|
* src/cairo_xlib_surface.c: Don't try to use RENDER
|
|
to composite glyphs in the absence of the RENDER
|
|
extension.
|
|
|
|
2005-01-30 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_ps_surface.c (_cairo_ps_surface_copy_page): Update
|
|
composite-over-white code to use a pattern, not a surface.
|
|
(to match _cairo_surface_composite API change.)
|
|
|
|
2005-01-30 Owen Taylor <otaylor@redhat.com>
|
|
|
|
Fixes from David Reveman:
|
|
|
|
* src/cairo_pattern.c (_cairo_pattern_save/restore_surface): Don't
|
|
save to surface part of the union when the pattern isn't a surface
|
|
pattern.
|
|
(_cairo_pattern_get_surface): Create the new surface at the width
|
|
and height of the source.
|
|
|
|
* src/Makefile.am (libcairo_ft_sources): Add cairo-ft-private.h
|
|
|
|
2005-01-28 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_png_surface.c (_cairo_png_surface_composite): Update
|
|
prototype to eliminate warning.
|
|
|
|
* src/cairo_pattern.c (_cairo_pattern_init_copy): Remember to
|
|
reference surfaces when copying patterns.
|
|
|
|
* src/cairo_gstate.c: (_cairo_rectangle_intersect),
|
|
(_cairo_gstate_clip_and_composite_trapezoids),
|
|
(_cairo_gstate_clip), (_cairo_gstate_show_glyphs): Don't call
|
|
_gstate_create_pattern for internally created patterns.
|
|
(_cairo_gstate_show_surface): Don't change the surface matrix
|
|
here, it's done later when we set it up as a pattern.
|
|
|
|
* test/Makefile.am: Correct clip_twice-ref.png filename.
|
|
|
|
* src/cairoint.h (MIN, MAX): Add these.
|
|
|
|
* src/cairo_gstate.c (_cairo_rectangle_intersect): Fix broken
|
|
intersection code.
|
|
|
|
2005-01-27 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_pattern.c (_cairo_pattern_get_surface): Make sure we
|
|
always return a surface similar to dst in the gradient case.
|
|
|
|
* src/cairo_pattern.c (_cairo_pattern_get_surface): Fold
|
|
_cairo_pattern_get_image into _cairo_pattern_get_surface and make
|
|
sure we always return a surface of the same type as dest.
|
|
|
|
* src/cairo_glitz_surface.c (_cairo_glitz_composite),
|
|
(_cairo_glitz_surface_composite_trapezoids): Use
|
|
_cairo_pattern_get_surface instead of _cairo_pattern_get_image.
|
|
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_show_glyphs),
|
|
(_cairo_xlib_surface_composite)
|
|
(_cairo_xlib_surface_composite_trapezoids): Remove use of
|
|
_cairo_xlib_surface_clone_similar since _cairo_pattern_get_surface
|
|
always gives us an xlib surface for the pattern. Clean up error
|
|
handling code in _cairo_xlib_surface_show_glyphs.
|
|
|
|
* src/cairo_image_surface.c (_cairo_image_surface_composite):
|
|
(_cairo_image_surface_composite_trapezoids): Add missing
|
|
cairo_surface_destroy and tidy up offset calculations as suggested
|
|
by Owen.
|
|
|
|
* src/cairoint.h (cairo_clip_rect_t):
|
|
* src/cairo_gstate.c (_cairo_gstate_clip_and_composite_trapezoids)
|
|
(_cairo_gstate_clip, _cairo_gstate_show_glyphs): Simplify code for
|
|
computing the extents of clipping area, by introducing a couple of
|
|
cairo_rectangle_t functions.
|
|
|
|
2005-01-27 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo.[ch] src/cairo_font.c src/cairo_ft_font.c
|
|
src/cairo_ps_surface.c src/cairo_xlib_surface.c: Move
|
|
docs from docs/reference, with a fair bit of addition
|
|
and rewriting.
|
|
|
|
* doc/reference/: Remove old-format docs.
|
|
|
|
* configure.in: Add a AC_PREREQ(2.54) (Jason Dorje Short)
|
|
|
|
2005-01-27 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* test/coverage-ref.png:
|
|
* test/clip_twice-ref.png:
|
|
Update these two once again, this time generated using
|
|
libpixman-0.1.3 without leaky circles.
|
|
|
|
2005-01-27 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* configure.in Makefile.am docs/Makefile.am docs/public/*:
|
|
Add framework for doing docs via gtk-doc.
|
|
|
|
* src/cairo.[ch] src/cairo-matrix.c: Add some inline docs
|
|
for arcs and matrices.
|
|
|
|
* gtk-doc.m4 acinclude.m4: Check in files from gtk-doc
|
|
to make the dependency on gtk-doc optional.
|
|
|
|
* autogen.sh (LANG): Add --enable-gtk-doc to the default
|
|
args.
|
|
|
|
2005-01-27 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* test/write_png.c (unpremultiply_data):
|
|
* test/read_png.c (premultiply_data):
|
|
Fix missing rounding in these two functions.
|
|
|
|
* test/coverage-ref.png:
|
|
* test/clip_twice-ref.png:
|
|
Update these to versions with properly rounded alpha values.
|
|
|
|
* test/Makefile.am: Move clip_twice out of XFAIL now that rounding
|
|
works.
|
|
|
|
* test/.cvsignore: Add new test cases.
|
|
|
|
2005-01-27 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
The overall idea of this rewrite is that we want to pass the
|
|
source pattern all the way down into the backends. The motivation
|
|
for this is that not all backends want a surface for the source
|
|
operand, and by passing the pattern down, backends can choose to
|
|
convert it to a surface if they need that.
|
|
|
|
The patch removes the create_surface function pointer from the
|
|
surface vtable and moves much of that code into a couple of helper
|
|
functions. The composite, compsite_trapezoids, and show_glyphs
|
|
backend functions are updated to take a cairo_pattern_t instead of
|
|
a surface as the source.
|
|
|
|
* src/cairo_font.c: (_cairo_font_show_glyphs):
|
|
* src/cairo_gstate.c: (_cairo_gstate_create_pattern),
|
|
(_cairo_gstate_clip_and_composite_trapezoids),
|
|
(_cairo_gstate_clip), (_cairo_gstate_show_surface),
|
|
(_cairo_gstate_show_glyphs):
|
|
Change these functions to not create a surface for the pattern and
|
|
just pass the pattern down to the backend functions.
|
|
|
|
* src/cairo_gstate.c: (translate_traps):
|
|
New function to translate a set of trapezoids.
|
|
|
|
* src/cairo_pattern.c:
|
|
(_cairo_pattern_init),
|
|
(_cairo_pattern_init_copy),
|
|
(_cairo_pattern_prepare_surface),
|
|
(_cairo_pattern_restore_surface):
|
|
Break out the code to adjust and restore surface transformation
|
|
and repeat settings into _cairo_pattern_prepare_surface and
|
|
_cairo_pattern_restore_surface.
|
|
|
|
* src/cairo_pattern.c: (_cairo_pattern_fini),
|
|
(_cairo_pattern_init_for_surface),
|
|
(cairo_pattern_create_for_surface):
|
|
Split cairo_pattern_create_for_surface into an init function and a
|
|
create function.
|
|
|
|
* src/cairo_pattern.c: (_cairo_pattern_get_image),
|
|
(_cairo_pattern_get_surface):
|
|
Utility functions to create a surface from a pattern.
|
|
|
|
* src/cairo_ft_font.c:
|
|
* src/cairo_image_surface.c:
|
|
* src/cairo_pdf_surface.c:
|
|
* src/cairo_png_surface.c:
|
|
* src/cairo_ps_surface.c:
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairo_glitz_surface.c:
|
|
Update these backends to work with the new pattern API. Glitz
|
|
work by David Reveman.
|
|
|
|
* src/cairo_surface.c: (_cairo_surface_composite),
|
|
(_cairo_surface_composite_trapezoids),
|
|
(_cairo_surface_set_clip_region):
|
|
Update these to pass through the new set of args.
|
|
|
|
* test/coverage-ref.png:
|
|
Update this reference image as we now render it correctly.
|
|
|
|
2005-01-26 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* test/clip_twice.c, test/clip_twice-ref.png: New test case to
|
|
verify that the clip surface is correctly updated when extending
|
|
an existing clip path.
|
|
|
|
* test/coverage.c (draw): Set alpha to 1 before setting clip mask.
|
|
|
|
* test/coverage-ref.png: Added the right reference PNG. Running
|
|
test against stock 0.3.0 gives the expected results.
|
|
|
|
* test/Makefile.am, test/coverage.c, test/coverage-ref.png: New
|
|
test case, covering various combinations of pattern types, drawing
|
|
operations and clipping. Currently fails, for some combinations,
|
|
coverage-ref.png is just a placeholder.
|
|
|
|
* test/romedalen.png: Added this PNG from cairo-snippets to use
|
|
for pattern fills.
|
|
|
|
* test/cairo_test.c, test/cairo_test.h: expose PNG loading to test
|
|
cases.
|
|
|
|
2005-01-26 Alexander Larsson <alexl@redhat.com>
|
|
|
|
* src/cairo_ft_font.c: (_ft_unscaled_font_set_scale):
|
|
Fix access to uninitialized data
|
|
|
|
* src/cairo_xlib_surface.c:
|
|
key must be first element in cache entry
|
|
|
|
2005-01-25 David Reveman <davidr@novell.com>
|
|
|
|
* AUTHORS: Update mail address.
|
|
|
|
* src/cairo_glitz_surface.c: Update mail address.
|
|
|
|
* configure.in: Require version 0.4.0 of glitz.
|
|
|
|
* src/cairo_glitz_surface.c: Track changes to glitz.
|
|
|
|
* src/cairo_xcb_surface.c: Add missing include directive so xcb
|
|
backend compile again.
|
|
|
|
2005-01-25 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/imagediff.c
|
|
* test/testsvg: Add new testsvg script and accompanying imagediff
|
|
program, (for interim SVG-based test suites while we wait for the
|
|
standard cairo test suite to mature).
|
|
|
|
* test/buffer_diff.c:
|
|
* test/cairo_test.c: Split buffer_diff out into its own file for
|
|
the purpose of imagediff.
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_show_glyphs): Fixed rounding
|
|
of glyph positioning.
|
|
|
|
2005-01-25 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_pdf_surface.c (_cairo_pdf_document_get_font): Chec
|
|
pdf_font for NULL, not font.
|
|
|
|
2005-01-25 Alexander Larsson <alexl@redhat.com>
|
|
|
|
* src/Makefile.am:
|
|
Fix typo that made cairo-ft.h not get installed
|
|
|
|
2005-01-24 Carl Worth <cworth@cworth.org>
|
|
|
|
* AUTHORS: Add Shawn T. Amundson, Calum Robinson, and Owen Taylor.
|
|
|
|
* src/Makefile.am: Conditionally install header files only for
|
|
backends that are compiled. Thanks to Shawn T. Amundson
|
|
<amundson@gtk.org>.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo_color.c (_cairo_color_get_rgb): Qualify color argument
|
|
as const. Closes bug #2336.
|
|
|
|
2005-01-23 Dave Beckett <Dave.Beckett@bristol.ac.uk>
|
|
|
|
* src/cairo_ft_font.c (_get_load_flags): Protect switch on
|
|
hintstyle with #ifdef FC_HINT_STYLE.
|
|
|
|
2005-01-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* RELEASING: Add instructions for handling the new "-head" suffix
|
|
of CAIRO_VERSION at release-time.
|
|
|
|
* configure.in: Append "-head" to CAIRO_VERSION to indicate state
|
|
between snapshots.
|
|
|
|
* src/cairo_gstate.c: Add missing prototype for _cairo_gstate_ensure_font.
|
|
(_cairo_gstate_current_font): Add missing declaration so things
|
|
compile again.
|
|
|
|
2005-01-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* Call _cairo_gstate_ensure_font(). Don't reference
|
|
the returned font.
|
|
|
|
2005-01-21 Owen Taylor <otaylor@redhat.com>
|
|
|
|
* src/cairo_ft_font.c (_get_load_flags): Make dependence
|
|
on FC_HINT_STYLE conditional. (reported by Abraham Egnor)
|
|
|
|
* src/cairo_ft_font.c: Use FT_LOAD_MONOCHROME if
|
|
FT_LOAD_TARGET_MONO isn't defined for compatibility
|
|
with older FreeType.
|
|
|
|
2005-01-16 Owen Taylor <otaylor@redhat.com>
|
|
|
|
Change cairo_font_t to refer to a font scaled to a particular
|
|
output device resolution.
|
|
|
|
* src/cairoint.h src/cairo_font.c src/cairo_ft_font.c
|
|
src/cairo_xlib_surface.c src/cairo_pdf_surface.c src/cairo_gstate.c
|
|
src/cairo.c: Switch many internal methods from handling
|
|
cairo_unscaled_font_t and cairo_font_scale_t pairs to handling
|
|
cairo_font_t.
|
|
|
|
* src/cairo-ft-private.h src/cairo_ft_fontc: Add some internal
|
|
interfaces for use by the FreeType backend.
|
|
|
|
* src/cairo_gstate.c: Clear the gstate's current font when
|
|
the transform or target surface changes.
|
|
|
|
* src/cairo.h src/cairo_ft_font.c: Rename cairo_ft_font_pattern
|
|
to cairo_ft_font_get_pattern().
|
|
|
|
* src/cairo.h src/cairo_ft_font.c: Make cairo_ft_font_create()
|
|
and cairo_ft_font_create_for_ft_face() take a font scale;
|
|
make the latter take load_flags for FT_Load_Glyph() as well.
|
|
Change cairo_ft_font_face() to Xft-style cairo_ft_font_lock_face,
|
|
cairo_ft_font_unlock_face.
|
|
|
|
* src/cairo_font.c: Remove the name/slant/weight=>unscaled font
|
|
cache, it didn't work with the new cairo_font_t setup. If it turns
|
|
out to be needed, it can be added back in some other form.
|
|
|
|
* src/cairoint.h src/cairo_font.c: Add a 'flags' field
|
|
to cairo_glyph_cache_key_t, we use it for load flags with
|
|
freetype backend.
|
|
|
|
* src/cairo_ft_font.c: Switch the caching to be from
|
|
resolved fontconfig pattern => file; keep only a fixed number
|
|
of FT_Face objects open at once, similar to FreeType.
|
|
|
|
* src/cairo_font.c (cairo_font_glyph_extents) src/cairo_gstate.c
|
|
src/cairoint.h: Add public cairo_font_glyph_extents, use it
|
|
to implement _cairo_gstate_glyph_extents().
|
|
|
|
* src/cairo_xlib_surface.c (_glyphset_cache_entry_reference):
|
|
Add refcounting for glyph cache elements; there was an
|
|
bug where elements got ejected from the cache and freed before
|
|
they could be used.
|
|
|
|
* src/cairoint.h src/cairo_cache.c (_cairo_cache_random_entry())
|
|
New function to return a random entry in the cache matching a predicate;
|
|
reuse the internals for the previous _random_live_entry().
|
|
|
|
* src/cairoint.h src/cairo_cache.c (_cairo_cache_lookup()): Add an
|
|
optional created_entry return value.
|
|
|
|
* src/cairo_ft_font.c src/cairo_xlib_surface.c: Adapt to
|
|
_cairo_cache_lookup() change.
|
|
|
|
* src/cairo_cache.c (_cairo_cache_lookup()): Support max_memory == 0
|
|
to indicate an unbounded cache.
|
|
|
|
* src/cairoint.h src/cairo_cache.c (_cairo_cache_remove()): Add a
|
|
function to manually remove entries from the cache.
|
|
|
|
* doc/reference: Update for changes, document cairo_matrix_t,
|
|
cairo_glyph_t, etc.
|
|
|
|
* src/cairo.h src/cairo-atsui.h src/cairo-ft.h src/cairo-glitz.h
|
|
src/cairo-pdf.h src/cairo-png.h src/cairo-ps.h src/cairo-quartz.h
|
|
src/cairo-xcb.h src/cairo-xlib.h: Add CAIRO_BEGIN/END_DECLS for
|
|
extern "C", use it on all public headers. Move header guards
|
|
outermost.
|
|
|
|
* src/cairo_quartz_surface.c: Fix encoding.
|
|
|
|
2005-01-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.3.0
|
|
|
|
* NEWS: Add notes for snapshot 0.3.0
|
|
|
|
* test/fill_rule-ref.png:
|
|
* test/leaky_polygon-ref.png:
|
|
* test/line_width-ref.png: Update reference images for new
|
|
rasterization in libpixman 0.1.3.
|
|
|
|
* Makefile.am (RELEASE_UPLOAD_DIR): Update since directory changed
|
|
after server compromise.
|
|
|
|
2005-01-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo_test.c: Add a bunch of missing include directives,
|
|
(now that cairo.h has been cleaned up).
|
|
|
|
2005-01-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo-atsui.h: Created new public header cairo-atsui.h.
|
|
|
|
Build fixes for Quartz backend courtesy of
|
|
Geoff Norton <gnorton@customerdna.com>:
|
|
|
|
* configure.in: Fix check for atsui font backend.
|
|
|
|
* src/Makefile.am: Add conditional compilation for
|
|
cairo_atsui_font.c and cairo_ft_font.c.
|
|
|
|
* src/cairo_quartz_surface.c: Add missing include of
|
|
cairo-quartz.h.
|
|
|
|
* src/cairo-quartz.h: Add include of Carbon/Carbon.h.
|
|
|
|
* src/cairo-features.h.in: Advertise availability of Quartz
|
|
surface.
|
|
|
|
* src/Makefile.am: Install cairo-quartz.h, and conditionally
|
|
compile cairo_quartz_surface.c.
|
|
|
|
* configure.in: Add autofoo checks to detect quartz
|
|
backend.
|
|
|
|
2005-01-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Track various renamings.
|
|
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairo_ps_surface.c:
|
|
* src/cairo_png_surface.c:
|
|
* src/cairo_pdf_surface.c:
|
|
* src/cairo_glitz_surface.c:
|
|
* src/cairo_ft_font.c: Insert new includes for backend-specific
|
|
header files.
|
|
|
|
* src/cairo_gdip_surface.cpp:
|
|
* src/cairo_gdip_font.cpp: Remove redundant include of
|
|
cairo-features.h.
|
|
|
|
* src/cairo.h (CAIRO_H): Rename header-exclusion macro from
|
|
_CAIRO_H_ to CAIRO_H.
|
|
Remove platform-specific grubbing for cairo-features.h and
|
|
pixman.h in odd places.
|
|
|
|
Remove all backend-specific prototypes, (as they are now in their
|
|
own header files).
|
|
|
|
* src/cairo.c (cairo_sane_state): Remove printf.
|
|
|
|
* src/cairo-features.h.in: Convert to utf-8. Use the proper name
|
|
for multiple-header exclusion (CAIRO_FEATURES_H). Track rename of
|
|
FREETYPE_FONT_FEATURE to FT_FONT_FEATURE.
|
|
|
|
* src/Makefile.am (cairoinclude_HEADERS): Split cairo.h up into
|
|
cairo.h, cairo-ft.h, cairo-glitz.h, cairo-pdf.h, cairo-png.h,
|
|
cairo-ps.h, cairo-xcb.h, cairo-xlib.h.
|
|
Update for rename of cairo_wideint.h to cairo-wideint.h.
|
|
|
|
* configure.in: Rename CAIRO_HAS_FREETYPE_FONT to
|
|
CAIRO_HAS_FT_FONT, (to match cairo_ft_font functions and
|
|
cairo-ft.h).
|
|
|
|
* cairo.pc.in (Cflags): Update for public header files now in
|
|
${includedir}/cairo.
|
|
|
|
2005-01-19 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_matrix.c (cairo_matrix_get_affine):
|
|
* src/cairo_gstate.c (_cairo_gstate_current_point):
|
|
* src/cairo_color.c (_cairo_color_get_rgb): Allow NULL values for
|
|
return pointers so that the user can easily get partial results
|
|
from cairo_matrix_get_affine, cairo_current_point, and
|
|
cairo_current_color_rgb as needed.
|
|
|
|
* src/cairo_ft_font.c (_utf8_to_ucs4): Fix int* vs. size_t*
|
|
confusion, (currently in favor of int* but only because that's
|
|
easier to implement). Thanks to John Ellson
|
|
<ellson@research.att.com>. Closes bug #2328.
|
|
|
|
2005-01-19 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_pdf_surface.c: Add byteswap macros missing for
|
|
bigendian architectures.
|
|
|
|
2005-01-19 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am (XFAIL_TESTS): Remove fill_rule and
|
|
leaky_polygon from expected failures list. Both of these bugs have
|
|
fixes, (fill_rule is fixed by reverting cairo_traps.c to 1.16, and
|
|
leaky_polygon is fixed in a newer libpixman).
|
|
|
|
* src/cairo_wideint.h: Remove const qualifiers from the header
|
|
file as well.
|
|
|
|
* src/cairo_wideint.c: Remove useless const qualifier from
|
|
functions returning simple values, (quiets the warning in
|
|
gcc4). Thanks to John Ellson <ellson@research.att.com>. Closes bug
|
|
#2299.
|
|
|
|
* BUGS: Add bugs on cairo_surface_create_for_image, bad names for
|
|
cairo_font_set_transform and cairo_font_current_transform,
|
|
segfault on AMD64.
|
|
|
|
2005-01-17 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_pdf_surface.c (_cairo_pdf_document_get_font): Fix
|
|
double free in error path.
|
|
(cairo_pdf_ft_font_create): Reference the unscaled font to keep
|
|
the FT_Face around.
|
|
(cairo_pdf_ft_font_generate): Initialize end to avoid compiler
|
|
warning; bail out if table write fails. Fixes from Owen.
|
|
|
|
2005-01-17 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_pdf_surface.c: Add preliminary text support, including
|
|
support for truetype font subsetting.
|
|
|
|
* src/cairoint.h: Change type of 'surface' argument in show_glyphs
|
|
to void * as it is for all other surface virtual functions.
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_show_glyphs):
|
|
Update accordingly.
|
|
|
|
* configure.in: Add check for endianess.
|
|
|
|
* src/cairo_array.c (_cairo_array_grow_by): Fix bug in array
|
|
growing loop.
|
|
(_cairo_array_append): Accept NULL for elements argument, in which
|
|
case we just allocate space in the array.
|
|
|
|
2005-01-17 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* test/Makefile.am (EXTRA_DIST): Take image_rotate-ref.png out of
|
|
EXTRA_DIST until we can actually render it correctly.
|
|
(XFAIL_TESTS): Update with new known bugs.
|
|
|
|
* src/cairo-features.h.in:
|
|
* src/cairo.h:
|
|
* src/cairoint.h:
|
|
* configure.in: Add font backend selection options.
|
|
|
|
2005-01-15 John Ellson <ellson@research.att.com>
|
|
|
|
reviewed by: Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo_gstate.c: (_cairo_gstate_glyph_extents):
|
|
Was using the wrong extents variable.
|
|
|
|
2005-01-13 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_xcb_surface.c: Replace struct cairo_surface_backend with
|
|
cairo_surface_backend_t.
|
|
|
|
2005-01-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/leaky_polygon.c:
|
|
* test/Makefile.am
|
|
* test/.cvsignore: Add leaky_polygon test for trapezoid
|
|
rasterization corner case.
|
|
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairo_glitz_surface.c:
|
|
* src/cairo_ft_font.c:
|
|
* src/cairo_font.c:
|
|
* src/cairoint.h:
|
|
* src/cairo.h: Replace all structure tags to have _ prefix.
|
|
struct cairo_foo -> struct _cairo_foo
|
|
Also, prefer cairo_foo_t over struct _cairo_foo in .c files.
|
|
|
|
2005-01-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/fill_rule.c: Add big_star_path which shows we still have
|
|
fill bugs, (even now that little_star_path is working).
|
|
|
|
* src/cairo.c (cairo_sane_state): A NULL cairo_t * is not sane.
|
|
|
|
* cairo.pc.in (Libs,Cflags): Add freetype flags so that things
|
|
work with freetype in a non-standard location, (a little extra
|
|
work here since freetype doesn't use pkg-config).
|
|
|
|
* TODO: Add several items culled from recent mailing list
|
|
discussions.
|
|
|
|
* BUGS: Add bugs on cache locking and surface pattern scaling.
|
|
|
|
2005-01-11 Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo_matrix.c: (_cairo_matrix_compute_scale_factors):
|
|
Scale factors shouldn't include mirroring.
|
|
|
|
* src/cairo_wideint.c: (_cairo_int32x32_64_mul),
|
|
(_cairo_int64x64_128_mul):
|
|
* src/cairo_wideint.h:
|
|
int32x32_64_mul and int64x64_128_mul are different from their
|
|
unsigned compatriots
|
|
|
|
2005-01-11 Øyvind Kolås <pippin@freedesktop.org>
|
|
|
|
* src/cairo_color.c: renamed CAIRO_COLOR_DEFAULT to CAIRO_COLOR_WHITE,
|
|
and made it white again.
|
|
|
|
2005-01-11 Øyvind Kolås <pippin@freedesktop.org>
|
|
|
|
* src/cairo_xlib_surface.c: (_cairo_xlib_surface_composite): removed
|
|
accidental addition of debug printf in previous commit.
|
|
|
|
2005-01-11 Øyvind Kolås <pippin@freedesktop.org>
|
|
|
|
* src/cairo_color.c:
|
|
* src/cairo_gstate.c: (_cairo_gstate_init):
|
|
Changed default paint color from opaque white to opaque black.
|
|
|
|
|
|
2005-01-11 Keith Packard <keithp@keithp.com>
|
|
|
|
* cairo.pc.in:
|
|
* configure.in:
|
|
* src/Makefile.am:
|
|
Fix math library detection to use autotools helper
|
|
|
|
* src/cairo_cache.c: (_cache_sane_state), (_cairo_cache_lookup):
|
|
Remove cache memory usage assertions as single objects can
|
|
be larger than the cache size
|
|
|
|
* src/cairo_ft_font.c: (_cairo_ft_font_compute_transform),
|
|
(_cairo_ft_font_install_transform), (_install_font_scale),
|
|
(_cairo_ft_font_font_extents), (_cairo_ft_font_glyph_extents),
|
|
(_cairo_ft_font_create_glyph):
|
|
Decompose font matrix transformations into a couple of
|
|
helper routines.
|
|
Return all metrics in font space.
|
|
|
|
* src/cairo_glitz_surface.c: (_glitz_format):
|
|
Eliminate compiler warning
|
|
|
|
* src/cairo_gstate.c: (_cairo_gstate_current_font_extents),
|
|
(_cairo_gstate_text_to_glyphs), (_cairo_gstate_glyph_extents):
|
|
Expect glyph metrics to be in font space. Compute text extents
|
|
by fetching one glyph metric at a time, transforming to user
|
|
space and computing the overall bounding box.
|
|
|
|
* src/cairo_matrix.c: (_cairo_matrix_set_rotate),
|
|
(_cairo_matrix_compute_scale_factors):
|
|
use 'sincos' where available.
|
|
Scale factors now ensure the non-scale transform is area preserving.
|
|
Scale factors requires another parameter to mark the fixed axis.
|
|
|
|
* src/cairo_wideint.c:
|
|
* src/cairo_wideint.h:
|
|
Change license to LGPL
|
|
Mark int32x32_64_mul as broken (which it still is)
|
|
|
|
* src/cairo_xlib_surface.c: (_cairo_xlib_surface_show_glyphs32),
|
|
(_cairo_xlib_surface_show_glyphs16),
|
|
(_cairo_xlib_surface_show_glyphs8):
|
|
Ensure each glyph is located as close to the specified position
|
|
as possible
|
|
|
|
* src/cairoint.h:
|
|
interface change to _cairo_matrix_compute_scale_factors
|
|
|
|
2005-01-07 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* configure.in: Add -lz to CAIRO_LIBS when compiling the PDF
|
|
backend.
|
|
|
|
* src/cairo_pdf_surface.c (emit_image_data): Don't use
|
|
compressBound, since it's only available in zlib 1.2 and newer.
|
|
|
|
2005-01-07 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Add Owen's new equation to fix clipping:
|
|
((src Op dest) In clip) Add (dest Out clip)
|
|
|
|
2005-01-06 Carl Worth <cworth@cworth.org>
|
|
|
|
* TODO: Added some TODO items from mailing list traffic.
|
|
Added cairo_show_surface_mask and note about clipping problems.
|
|
|
|
2005-01-05 Kristian Høgsberg <krh@redhat.com>
|
|
|
|
* src/cairo_pdf_surface.c: (emit_image_data): Implement image
|
|
compression (taken from cairo_ps_surface.c).
|
|
|
|
* src/cairo_pdf_surface.c: New PDF backend.
|
|
* src/cairo.h: Add PDF surface constructors.
|
|
* src/cairo_array.c: New file - generic array implementation.
|
|
* src/cairoint.h: Add cairo_array prototypes.
|
|
* src/Makefile.am (libcairo_la_SOURCES):
|
|
Add cairo_array.c and cairo_pdf_surface.c.
|
|
|
|
2004-12-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_traps.c: Remove unused CAIRO_TRAPS_GROWTH_INC.
|
|
|
|
* src/cairo_spline.c (_cairo_spline_add_point):
|
|
* src/cairo_polygon.c (_cairo_polygon_add_edge): Resize arrays by
|
|
doubling rather than by linear increments.
|
|
|
|
* BUGS: Add new bug exposed centi_unfinished.svg.
|
|
|
|
2004-12-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo_wideint.h: Rename __internal_linkage to cairo_private
|
|
and move it to the beginning of the line for function
|
|
declarations. Also, drop unneeded "extern" from function
|
|
declarations.
|
|
|
|
2004-12-21 Carl Worth <cworth@cworth.org>
|
|
|
|
With thanks to Kristian Høgsberg <krh@bitplanet.net>:
|
|
* src/cairoint.h:
|
|
* src/cairo_wideint.h: Tag a few private functions/data that were
|
|
missing __internal_linkage.
|
|
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairo_ft_font.c:
|
|
* src/cairo_font.c: Mark cache backends as static.
|
|
|
|
2004-12-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* autogen.sh (LANG): Change "head -1" to more standard "head -n
|
|
1".
|
|
|
|
2004-12-20 Alexander Larsson <alexl@redhat.com>
|
|
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_create_with_size):
|
|
Fix bug in earlier change.
|
|
|
|
2004-12-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairoint.h: Re-enabled __internal_linkage for all internal
|
|
functions. Now avoid the warning by moving the * from the return
|
|
type after the __internal_linkage macro. It looks awaful, but it
|
|
keeps the compiler quiet.
|
|
|
|
2004-12-20 Alexander Larsson <alexl@redhat.com>
|
|
|
|
* src/cairoint.h:
|
|
Add _cairo_gstate_restore_external_state, _cairo_fixed_integer_floor
|
|
and _cairo_fixed_integer_ceil.
|
|
|
|
* src/cairo.c: (cairo_restore):
|
|
Call _cairo_gstate_restore_external_state on restore.
|
|
|
|
* src/cairo_cache.c: (_cache_lookup):
|
|
Fix cache-misses.
|
|
|
|
* src/cairo_fixed.c: (_cairo_fixed_integer_floor),
|
|
(_cairo_fixed_integer_ceil):
|
|
Implement floor and ceil
|
|
|
|
* src/cairo_gstate.c:
|
|
(_cairo_gstate_restore_external_state):
|
|
Restore surface clip region on restroe.
|
|
|
|
(_calculate_region_for_intermediate_clip_surface),
|
|
(_cairo_gstate_clip_and_composite_trapezoids),
|
|
(_cairo_gstate_show_surface), (_cairo_gstate_show_glyphs):
|
|
Create intermediate clip surfaces of the minimal required
|
|
size.
|
|
|
|
2004-12-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* AUTHORS: Add Alexander Larsson to AUTHORS list.
|
|
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_create_with_size):
|
|
Split off from _cairo_xlib_surface_create to avoid roundtrip when
|
|
size is already known.
|
|
(cairo_xlib_surface_create): Simplified to just call XGetGeometry
|
|
that defer to _cairo_xlib_surface_create_with_size. Add comment
|
|
about remaining roundtrip and possible plans to eliminate it later
|
|
with a new interface requiring width/height.
|
|
Thanks to Alexander Larsson <alexl@redhat.com>.
|
|
|
|
* test/text_cache_crash.c (draw): Disabled test that was killing
|
|
my machine for some reason. Scary.
|
|
|
|
2004-12-20 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_image_surface.c
|
|
(_cairo_image_abstract_surface_create_pattern): Change return
|
|
value from cairo_status_t to cairo_int_status_t to match
|
|
definition in cairo_surface_backend_t.
|
|
|
|
* BUGS: Add bug about gcc 3.4 warning: '__visibility__' attribute
|
|
ignored on non-class types.
|
|
|
|
* src/cairoint.h: Remove __internal_linkage macro from all
|
|
functions returning pointers to shut up warning from gcc 3.4.
|
|
|
|
2004-12-17 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo_test.c (cairo_test): Fix to find reference images in
|
|
local directory when run directly, (rather than by "make check").
|
|
|
|
* BUGS: Add bug about invalidating font caches.
|
|
|
|
2004-12-02 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_clip): Revert the "return early"
|
|
change so that rectangular clipping works with backends that
|
|
don't support clipping regions.
|
|
|
|
2004-11-29 Carl Worth <cworth@cworth.org>
|
|
|
|
* COPYING: Fix typo: LPGL->LGPL.
|
|
|
|
* src/cairo_ps_surface.c (cairo_ps_surface_create): Remove
|
|
unintentional copyright statement from user-generated output
|
|
image.
|
|
|
|
2004-11-23 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/Makefile.am (XFAIL_TESTS): Note that text_cache_crash is
|
|
expected to fail.
|
|
|
|
* test/text_cache_crash.c (draw): Add test to demonstrate bug when
|
|
item is too big for cache.
|
|
|
|
* src/cairo_cache.c (_cache_sane_state): Really remove that
|
|
refcount assertion this time.
|
|
|
|
* test/text_cache_crash.c: Add note that bug has been fixed.
|
|
(main): Instrumentation code for testing cache destruction.
|
|
|
|
* test/cairo_test.c (cairo_test): Support tests that produce no
|
|
output, (don't check image if (width,height) == (0,0)).
|
|
|
|
* src/cairoint.h: Add #include <assert.h> here rather than in
|
|
multiple .c files.
|
|
|
|
* src/cairo_cache.c: Add const qualifier to static
|
|
cache_arrangements table.
|
|
(_cache_sane_state): Remove refcount assertion as it it false
|
|
during the cairo_cache_destroy.
|
|
(_cache_sane_state): #include <assert.h> moved up to cairoint.h
|
|
(_entry_destroy): Fix bug in assertion (used_memory >=
|
|
entry->memory), not >.
|
|
(_cairo_cache_destroy): Fix timing of refcount decrement so that
|
|
the destroy function actually works.
|
|
|
|
2004-11-14 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_select_font): Don't destroy a
|
|
NULL font.
|
|
|
|
2004-11-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_select_font): Unconditionally
|
|
destroy the old font, (otherwise, if the same font was selected
|
|
twice in a row, a reference was lost to it, leading to assertion
|
|
failures).
|
|
|
|
2004-11-12 Stuart Parmenter <pavlov@pavlov.net>
|
|
* src/cairo_gdip_font.cpp:
|
|
* src/cairo_gdip_surface.cpp: Added GDI+ backend to Cairo.
|
|
|
|
2004-11-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_font.c (_font_cache_hash, _font_cache_create_entry):
|
|
* src/cairo_ft_font.c (_cairo_ft_font_text_to_glyphs): Move
|
|
declarations above statements to satisfy pre-C99 compilers. Thanks
|
|
to Michael Johnson <ahze@ahze.net>.
|
|
|
|
2004-11-09 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/text_rotate.c (NUM_TEXT): Increase size and increase number
|
|
of different angles drawn.
|
|
(draw): Fix broken usage of extents (missing bearings), add
|
|
stroked bounding box (shifted out by 0.5 units to just abut the
|
|
text), and increase position adjustments to make room for this
|
|
larger box.
|
|
(draw): Move x_off, y_off calculation outside of loop to emphasize
|
|
loop-independence.
|
|
|
|
2004-11-08 Dave Beckett <Dave.Beckett@bristol.ac.uk>
|
|
|
|
* configure.in: require libpixman 0.1.2 since
|
|
src/cairo_glitz_surface.c depends on two new functions of 0.1.2 -
|
|
pixman_format_get_masks and pixman_image_get_format
|
|
|
|
2004-11-05 Graydon Hoare <graydon@redhat.com>
|
|
|
|
* src/cairo_ft_font.c: Change the signs of a variety of
|
|
metrics, which were backwards.
|
|
* src/cairo_gstate.c (_cairo_gstate_clip): Return early if we
|
|
found a rectangular clip at all, not just in error case.
|
|
* src/cairo_xlib_surface.c
|
|
(_xlib_glyphset_cache_create_entry): Give render glyphset entry the
|
|
negative bbox offsets it wants, not the bearings.
|
|
|
|
2004-11-04 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/text_cache_crash.c: Add new test demonstrating assertion
|
|
failure in cairo_cache_lookup.
|
|
|
|
* test/text_rotate.c: Add new test showing problems with rotated
|
|
text.
|
|
|
|
2004-11-04 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_glitz_surface.c (cairo_set_target_glitz):
|
|
cairo_glitz_surface_create now takes a reference to the glitz
|
|
surface, so it shouldn't be done here anymore.
|
|
Removed feature_mask from cairo_glitz_surface_t.
|
|
Removed support for CAIRO_OPERATOR_SATURATE.
|
|
(cairo_glitz_surface_create): Take a reference to the glitz
|
|
surface and no need to get surface features anymore.
|
|
Tracking changes to glitz.
|
|
|
|
* configure.in: Require version 0.3.0 of glitz.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_clip): Fixed return status.
|
|
|
|
2004-11-01 Olivier Andrieu <oliv__a@users.sourceforge.net>
|
|
|
|
* src/cairo.h: remove cairo_ft_font_destroy() prototype.
|
|
|
|
2004-10-28 Carl Worth <cworth@cworth.org>
|
|
|
|
* Makefile.am (release-verify-newer): Abort release-publish if
|
|
there's already a published tar file with the current version.
|
|
(release-publish): Add code to update the LATEST-package-version
|
|
file.
|
|
|
|
2004-10-27 Carl Worth <cworth@cworth.org>
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.2.0.
|
|
|
|
* NEWS: Add notes for snapshot 0.2.0.
|
|
Add note on reverted tessellation regression bugs.
|
|
|
|
* RELEASING: Update release instructions for new release-publish
|
|
target.
|
|
|
|
* Makefile.am: Add release-check and release-publish targets
|
|
copied from libpixman.
|
|
|
|
* test/Makefile.am (AM_LDFLAGS): Fix to always link tests against
|
|
locally built library, not installed version.
|
|
|
|
* test/fill_rule.c: Add new test for cairo_set_fill_rule. Also
|
|
demonstrate some of the current tessellation bugs with the version
|
|
of the code that is in CVS.
|
|
|
|
2004-10-26 Carl Worth <cworth@cworth.org>
|
|
|
|
* test/cairo_test.c (cairo_test): Find reference images in
|
|
${srcdir} so that make distcheck will work.
|
|
|
|
* test/Makefile.am (cairo_test_lib): Add header files so that make
|
|
distcheck is happy.
|
|
(INCLUDES): Add -D_GNU_SOURCE for asprintf. Someone motivated may
|
|
want to find a more portable approach.
|
|
(EXTRA_DIST): Add reference images for the sake of make distcheck.
|
|
|
|
* configure.in: Shell doesn't like whitespace around assignment
|
|
operator.
|
|
|
|
* test/README: Add paragraph on new features.
|
|
|
|
* test/.cvsignore:
|
|
* test/Makefile.am:
|
|
* test/README:
|
|
* test/cairo_test.c:
|
|
* test/cairo_test.h:
|
|
* test/line_width-ref.png:
|
|
* test/line_width.c:
|
|
* test/move_to_show_surface-ref.png:
|
|
* test/move_to_show_surface.c:
|
|
* test/read_png.c:
|
|
* test/read_png.h:
|
|
* test/write_png.c:
|
|
* test/write_png.h:
|
|
* test/xmalloc.c:
|
|
* test/xmalloc.h: Add initial regression test suite.
|
|
|
|
* configure.in: Don't AC_SUBST a dozen different FOO_CFLAGS and
|
|
FOO_LIBS. Instead, incrementally build up just CAIRO_CFLAGS and
|
|
CAIRO_LIBS.
|
|
|
|
* cairo.pc.in (Libs): Don't list flags that should get picked up
|
|
via dependency information through Requires.
|
|
|
|
* BUGS (font-size): Add description of move_to_show_surface.
|
|
|
|
2004-10-21 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_png_surface.c:
|
|
* src/cairo.c:
|
|
* src/cairo.h:
|
|
* src/cairo_cache.c:
|
|
* src/cairo_color.c:
|
|
* src/cairo_fixed.c:
|
|
* src/cairo_font.c:
|
|
* src/cairo_ft_font.c:
|
|
* src/cairo_glitz_surface.c:
|
|
* src/cairo_gstate.c:
|
|
* src/cairo_hull.c:
|
|
* src/cairo_image_surface.c:
|
|
* src/cairo_matrix.c:
|
|
* src/cairo_path.c:
|
|
* src/cairo_path_bounds.c:
|
|
* src/cairo_path_fill.c:
|
|
* src/cairo_path_stroke.c:
|
|
* src/cairo_pattern.c:
|
|
* src/cairo_pen.c:
|
|
* src/cairo_png_surface.c:
|
|
* src/cairo_polygon.c:
|
|
* src/cairo_ps_surface.c:
|
|
* src/cairo_slope.c:
|
|
* src/cairo_spline.c:
|
|
* src/cairo_surface.c:
|
|
* src/cairo_traps.c:
|
|
* src/cairo_xcb_surface.c:
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairoint.h: Convert all files to utf-8. Add copyright
|
|
information to cairo_png_surface.c.
|
|
|
|
* src/cairo_hull.c (_cairo_hull_vertex_compare): Fix comparison so
|
|
that it results in a stable sort. This should fix some rendering
|
|
bugs due to broken pens.
|
|
|
|
* TODO: Add items on custom caps and getting access to hidden
|
|
image data
|
|
|
|
* Makefile.am (EXTRA_DIST): Add COPYING-LGPL-2.1 and
|
|
COPYING-MPL-1.1 to the distribution.
|
|
|
|
2004-10-13 Carl Worth <cworth@cworth.org>
|
|
|
|
* autogen.sh: automake 1.4 seems to be sufficient. Don't require
|
|
1.6.
|
|
|
|
2004-10-12 Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo_traps.c: (_cairo_traps_init), (_cairo_traps_add_trap),
|
|
(_cairo_traps_extents):
|
|
* src/cairoint.h:
|
|
Compute extents of cairo_traps_t on the fly using approximate
|
|
method which is correct given the way cairo generates trapezoids.
|
|
|
|
* src/cairo_xlib_surface.c: (_cairo_xlib_surface_create_similar):
|
|
Avoid zero-dimensioned pixmaps
|
|
|
|
2004-10-12 Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_pen.c: Fix a few typos in pen vertex math description.
|
|
|
|
2004-10-12 Keith Packard <keithp@keithp.com>
|
|
|
|
reviewed by: Carl Worth <cworth@cworth.org>
|
|
|
|
* src/cairo_pen.c: (_cairo_pen_init), (_cairo_pen_vertices_needed):
|
|
Adapt function from Walter Brisken to compute pen ellipse major
|
|
axis length and use that to compute the required number of pen
|
|
vertices.
|
|
|
|
2004-10-07 Graydon Hoare <graydon@redhat.com>
|
|
|
|
* src/Makefile.am (libcairo_la_SOURCES): Add cairo_cache.c
|
|
|
|
* src/cairo.c
|
|
(cairo_text_extents)
|
|
(cairo_show_text)
|
|
(cairo_text_path): Rewrite using temporary glyph arrays
|
|
|
|
* src/cairo_cache.c: New file.
|
|
|
|
* src/cairo_font.c (_cairo_glyph_cache_create)
|
|
(_cairo_glyph_cache_destroy)
|
|
(_cairo_glyph_cache_reference)
|
|
(_cairo_glyph_cache_pop_last)
|
|
(_cairo_glyph_surface_init)
|
|
(_cairo_font_lookup_glyph): Remove old glyph cache code.
|
|
(_cairo_font_scale)
|
|
(_cairo_font_transform): Remove font-transforming code.
|
|
(_cairo_font_text_extents)
|
|
(_cairo_font_text_bbox)
|
|
(_cairo_font_show_text)
|
|
(_cairo_font_text_path): Remove text-API code.
|
|
(_cairo_font_cache_key_t): New structure type.
|
|
(_font_cache_hash)
|
|
(_font_cache_keys_equal)
|
|
(_font_cache_create_entry)
|
|
(_font_cache_destroy_entry)
|
|
(_font_cache_destroy_cache): New font cache code.
|
|
(_global_font_cache)
|
|
(_lock_global_font_cache)
|
|
(_unlock_global_font_cache)
|
|
(_get_global_font_cache): New global font cache.
|
|
(_cairo_font_text_to_glyphs)
|
|
(_cairo_glyph_cache_hash)
|
|
(_cairo_glyph_cache_keys_equal)
|
|
(_image_glyph_cache_create_entry)
|
|
(_image_glyph_cache_destroy_entry)
|
|
(_image_glyph_cache_destroy_cache): New glyph cache code.
|
|
(_global_image_glyph_cache)
|
|
(_cairo_lock_global_image_glyph_cache)
|
|
(_cairo_unlock_global_image_glyph_cache)
|
|
(_cairo_get_global_image_glyph_cache): New global glyph cache.
|
|
(_cairo_font_cache_backend): New structure.
|
|
(_cairo_image_cache_backend): Likewise.
|
|
(_cairo_font_create): Reimplement in terms of font cache.
|
|
(_cairo_font_init): Remove matrix and glyph cache related code.
|
|
(_cairo_font_copy): Likewise.
|
|
(_cairo_font_show_glyphs): Delegate to surface when possible.
|
|
(_cairo_font_glyph_extents)
|
|
(_cairo_font_glyph_bbox)
|
|
(_cairo_font_glyph_path)
|
|
(_cairo_font_font_extents)
|
|
(_cairo_font_show_glyphs): Rename to as cairo_unscaled_font_XXX,
|
|
and add scale parameter.
|
|
|
|
* src/cairo_ft_font.c
|
|
(ft_cache_t)
|
|
(ft_font_val_t)
|
|
(cairo_ft_cache_key_t)
|
|
(cairo_ft_cache_entry_t): New structure types.
|
|
(_create_from_face)
|
|
(_reference_font_val)
|
|
(_destroy_font_val)
|
|
(_create_from_library_and_pattern): New functions.
|
|
(_ft_font_cache_hash)
|
|
(_ft_font_cache_keys_equal)
|
|
(_ft_font_cache_create_entry)
|
|
(_ft_font_cache_destroy_entry)
|
|
(_ft_font_cache_destroy_cache): New ft font cache code.
|
|
(_global_ft_cache)
|
|
(_lock_global_ft_cache)
|
|
(_unlock_global_ft_cache)
|
|
(_get_global_ft_cache): New global ft font cache.
|
|
(_ft_font_cache_backend): New structure.
|
|
(_cairo_ft_font_create): Rewrite to use cache.
|
|
(_cairo_ft_font_destroy): Likewise.
|
|
(_cairo_ft_font_copy): Remove.
|
|
(_install_font_matrix): Rename as _install_font_scale.
|
|
(_utf8_to_glyphs): Rename as _cairo_ft_font_text_to_glyphs.
|
|
(_cairo_ft_font_text_to_glyphs): Use cache for metrics.
|
|
(_cairo_ft_font_extents): Accept size, use scaled metrics.
|
|
(_cairo_ft_font_glyph_extents)
|
|
(_cairo_ft_font_glyph_bbox)
|
|
(_cairo_ft_font_show_glyphs)
|
|
(_cairo_ft_font_glyph_path): Modify to use size, cache.
|
|
(_cairo_ft_font_text_extents)
|
|
(_cairo_ft_font_text_bbox)
|
|
(_cairo_ft_font_show_text)
|
|
(_cairo_ft_font_text_path): Remove text-API code.
|
|
(cairo_ft_font_create)
|
|
(cairo_ft_font_create_for_ft_face)
|
|
(cairo_ft_font_face)
|
|
(cairo_ft_font_pattern): Rewrite using ft_font_val_t.
|
|
|
|
* src/cairo_gstate.c (cairo_gstate_init_copy): Just reference font.
|
|
(_cairo_gstate_fini): Finalize font matrix.
|
|
(_cairo_gstate_default_matrix): Initialize font matrix.
|
|
(_cairo_gstate_clip): Re-enable clipping rectangle.
|
|
(_cairo_gstate_select_font)
|
|
(_cairo_gstate_set_font): Set font matrix to identity.
|
|
(_cairo_gstate_scale_font): Scale font matrix, not font.
|
|
(_cairo_gstate_transform_font): Transform font matrix, not font.
|
|
(_cairo_gstate_set_font_transform): Install as font matrix, not in font.
|
|
(_build_font_scale): New helper function.
|
|
(_cairo_gstate_text_to_glyphs): New function.
|
|
(_cairo_gstate_current_font_extents)
|
|
(_cairo_gstate_glyph_extents)
|
|
(_cairo_gstate_show_glyphs)
|
|
(_cairo_gstate_glyph_path): Rewrite using font matrix and size.
|
|
(_cairo_gstate_text_path
|
|
(_cairo_gstate_text_extents)
|
|
(_cairo_gstate_show_text): Remove text-API code.
|
|
|
|
* src/cairo_xlib_surface.c
|
|
(_cairo_xlib_surface_set_clip_region): Minor bug fix.
|
|
(_cairo_xlib_surface_show_glyphs): New function.
|
|
(_cairo_xlib_surface_backend): Add reference to new function.
|
|
(glyphset_cache_t)
|
|
(glyphset_cache_entry_t): New structure types.
|
|
(_next_xlib_glyph): New helper function.
|
|
(_xlib_glyphset_cache_create_value)
|
|
(_xlib_glyphset_cache_destroy_cache)
|
|
(_xlib_glyphset_cache_destroy_value)
|
|
(_xlib_glyphset_cache_backend): New glyphset cache code.
|
|
(_xlib_glyphset_caches)
|
|
(_lock_xlib_glyphset_caches)
|
|
(_unlock_xlib_glyphset_caches)
|
|
(_get_glyphset_cache): New global glyphset cache.
|
|
|
|
* src/cairo_glitz_surface.c (cairo_glitz_surface_backend):
|
|
Add NULL entry for show_glyphs.
|
|
|
|
* src/cairo_image_surface.c (cairo_image_surface_backend):
|
|
Add NULL entry for show_glyphs.
|
|
|
|
* src/cairo_ps_surface.c (cairo_ps_surface_backend):
|
|
Add NULL entry for show_glyphs.
|
|
|
|
* src/cairo_png_surface.c (cairo_png_surface_backend):
|
|
Add NULL entry for show_glyphs.
|
|
|
|
* src/cairo_xcb_surface.c (cairo_xcb_surface_backend):
|
|
Add NULL entry for show_glyphs.
|
|
|
|
* src/cairoint.h (cairo_cache_backend_t): New structure type.
|
|
(cairo_cache_entry_base_t)
|
|
(cairo_cache_arrangement_t)
|
|
(cairo_cache_t): New structure types.
|
|
(_cairo_cache_init)
|
|
(_cairo_cache_reference)
|
|
(_cairo_cache_destroy)
|
|
(_cairo_cache_lookup)
|
|
(_cairo_hash_string): New cache functions.
|
|
(CAIRO_IMAGE_GLYPH_CACHE_MEMORY_DEFAULT)
|
|
(CAIRO_XLIB_GLYPH_CACHE_MEMORY_DEFAULT)
|
|
(CAIRO_FONT_CACHE_NUM_FONTS_DEFAULT)
|
|
(CAIRO_FT_CACHE_NUM_FONTS_DEFAULT): New constants.
|
|
(cairo_font_scale_t)
|
|
(cairo_glyph_cache_key_t)
|
|
(cairo_image_glyph_cache_entry_t): New structure types.
|
|
(_cairo_lock_global_image_glyph_cache)
|
|
(_cairo_unlock_global_image_glyph_cache)
|
|
(_cairo_get_global_image_glyph_cache)
|
|
(_cairo_glyph_cache_hash)
|
|
(_cairo_glyph_cache_keys_equal): New functions for glyph caches.
|
|
(cairo_font_backend_t): Remove text-API calls, add scale params,
|
|
remove copy call.
|
|
(cairo_surface_backend_t): Add show_glyphs entry.
|
|
(cairo_glyph_surface_t)
|
|
(cairo_glyph_surface_node_t): Remove old glyph cache structures.
|
|
(cairo_unscaled_font_t): New structure type.
|
|
(cairo_font): Remove glyph cache member, add pointer to unscaled.
|
|
(cairo_gstate): Add font_matrix member, change to hold unscaled.
|
|
(_cairo_gstate_set_font_transform)
|
|
(_cairo_gstate_current_font_transform)
|
|
(_cairo_gstate_text_to_glyphs): New functions.
|
|
(_cairo_gstate_text_path
|
|
(_cairo_gstate_text_extents)
|
|
(_cairo_gstate_show_text)
|
|
(_cairo_font_text_extents)
|
|
(_cairo_font_text_bbox)
|
|
(_cairo_font_show_text)
|
|
(_cairo_font_text_path): Remove text-API code.
|
|
(_cairo_font_glyph_extents)
|
|
(_cairo_font_glyph_bbox)
|
|
(_cairo_font_glyph_path)
|
|
(_cairo_font_font_extents)
|
|
(_cairo_font_show_glyphs): Add scale parameter.
|
|
|
|
2004-10-04 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* configure.in: Require version 0.2.3 of glitz.
|
|
|
|
* src/cairo_glitz_surface.c: Do not use VBOs and PBOs for immediate
|
|
mode drawing.
|
|
|
|
2004-09-30 Jamey Sharp <jamey@minilop.net>
|
|
|
|
* src/cairo_xcb_surface.c:
|
|
Update for minor XCB API change.
|
|
|
|
2004-09-20 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_glitz_surface.c (_cairo_glitz_surface_create_similar):
|
|
Make sure that only offscreen formats are picked.
|
|
(_cairo_glitz_surface_create_similar): Only try to find offscreen
|
|
multi-sample format if offscreen multi-sampling is supported.
|
|
(_cairo_glitz_surface_create_similar): If we can't find a drawable
|
|
format try to pick a non-drawable format.
|
|
(_cairo_glitz_surface_composite): Mask clone should be in
|
|
CAIRO_FORMAT_A8 format.
|
|
|
|
2004-09-15 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_glitz_surface.c (_cairo_glitz_surface_set_image): Do
|
|
the scanline order conversion in cairo.
|
|
(_cairo_glitz_surface_create_pattern): Pre-multiply gradient colors.
|
|
(_cairo_glitz_surface_create_similar): Find similar formats
|
|
correctly.
|
|
|
|
2004-09-12 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_glitz_surface.c (_cairo_glitz_surface_create_pattern):
|
|
Pickup repeat setting when cloning surface.
|
|
(_cairo_glitz_surface_create_pattern): cairo_surface_set_repeat
|
|
likes to get a cairo_surface_t pointer not a cairo_glitz_surface_t
|
|
pointer.
|
|
(_cairo_glitz_surface_set_image): Get pixel masks from pixman image
|
|
format.
|
|
|
|
2004-09-11 Carl Worth <stacyworth@pippin.local>
|
|
|
|
* autogen.sh: Require automake 1.6 rather than 1.7 since it seems
|
|
to work just fine.
|
|
|
|
2004-09-11 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* configure.in: Require version 0.2.2 of glitz.
|
|
|
|
* src/cairo_glitz_surface.c (_cairo_glitz_surface_create_pattern):
|
|
0.5 should no longer be added to gradient stop coordinates.
|
|
|
|
* src/cairo.h: CAIRO_HAS_GL_SURFACE -> CAIRO_HAS_GLITZ_SURFACE.
|
|
cairo_set_target_gl -> cairo_set_target_glitz.
|
|
cairo_gl_surface_create -> cairo_glitz_surface_create.
|
|
|
|
* src/cairo-features.h.in: GL_SURFACE_FEATURE -> GLITZ_SURFACE_FEATURE.
|
|
|
|
* src/Makefile.am: CAIRO_HAS_GL_SURFACE -> CAIRO_HAS_GLITZ_SURFACE,
|
|
libcairo_gl_sources -> libcairo_glitz_sources, cairo_gl_surface.c ->
|
|
cairo_glitz_surface.c, GL_CFLAGS -> GLITZ_CFLAGS and
|
|
GL_LIBS -> GLITZ_LIBS.
|
|
|
|
* cairo.pc.in (Requires): GL_REQUIRES -> GLITZ_REQUIRES.
|
|
|
|
* configure.in: Replaced the gl backend with the new glitz backend.
|
|
Cairo now requires version 0.2.1 of glitz.
|
|
|
|
2004-09-04 Carl Worth <cworth@brudder.east.isi.edu>
|
|
|
|
* COPYING:
|
|
* COPYING-MPL-1.1:
|
|
* COPYING-LGPL-2.1:
|
|
* src/cairo-features.h.in:
|
|
* src/cairo.c:
|
|
* src/cairo.h:
|
|
* src/cairo_color.c:
|
|
* src/cairo_fixed.c:
|
|
* src/cairo_font.c:
|
|
* src/cairo_gstate.c:
|
|
* src/cairo_hull.c:
|
|
* src/cairo_image_surface.c:
|
|
* src/cairo_matrix.c:
|
|
* src/cairo_path.c:
|
|
* src/cairo_path_bounds.c:
|
|
* src/cairo_path_fill.c:
|
|
* src/cairo_path_stroke.c:
|
|
* src/cairo_pen.c:
|
|
* src/cairo_polygon.c:
|
|
* src/cairo_ps_surface.c:
|
|
* src/cairo_slope.c:
|
|
* src/cairo_spline.c:
|
|
* src/cairo_surface.c:
|
|
* src/cairo_xcb_surface.c:
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairoint.h: Add the MPL as a new license option, in addition
|
|
to the LGPL.
|
|
|
|
2004-08-14 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_image_surface.c
|
|
(_cairo_image_surface_set_clip_region): Make a copy of the region
|
|
since pixman is currently taking ownership of it (ugh). Thanks to
|
|
Vladimir Vukicevic <vladimir@pobox.com> and Peter Dennis Bartok
|
|
<peter@novonyx.com>.
|
|
|
|
* autogen.sh (LANG): Explicitly set LANG=C to fix the awk
|
|
string->number conversion for user with locales that don't match
|
|
ASCII digit conventions.
|
|
|
|
2004-08-03 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (extract_transformed_rectangle): Temporarily
|
|
disable rectangle-based clipping optimization as it's not working
|
|
(see cairo_snippets/xxx_clip_rectangle for a test case).
|
|
|
|
2004-08-02 Carl Worth <cworth@isi.edu>
|
|
|
|
* COPYING:
|
|
* src/cairo-features.h.in:
|
|
* src/cairo.c:
|
|
* src/cairo.h:
|
|
* src/cairo_color.c:
|
|
* src/cairo_fixed.c:
|
|
* src/cairo_font.c:
|
|
* src/cairo_gstate.c:
|
|
* src/cairo_hull.c:
|
|
* src/cairo_image_surface.c:
|
|
* src/cairo_matrix.c:
|
|
* src/cairo_path.c:
|
|
* src/cairo_path_bounds.c:
|
|
* src/cairo_path_fill.c:
|
|
* src/cairo_path_stroke.c:
|
|
* src/cairo_pen.c:
|
|
* src/cairo_polygon.c:
|
|
* src/cairo_ps_surface.c:
|
|
* src/cairo_slope.c:
|
|
* src/cairo_spline.c:
|
|
* src/cairo_surface.c:
|
|
* src/cairo_xcb_surface.c:
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairoint.h: Change from MIT license to LGPL.
|
|
Fix to explicitly refer to GNU Lesser Public License 2.1 rather
|
|
than the Library Public License version 2 or "any later version"
|
|
|
|
* src/cairo_pattern.c:
|
|
* src/cairo_gl_surface.c: Fix copyright attributions mistakenly
|
|
attributed to University of Southern California rather than to
|
|
David Reveman.
|
|
|
|
* BUGS: Note that cairo_clip is fixed now.
|
|
|
|
2004-08-01 Øyvind Kolås <oeyvindk@hig.no>
|
|
|
|
* src/cairo.h: replaced ct with cr in public headers to keep
|
|
usage consistent.
|
|
|
|
2004-07-24 Jamey Sharp <jamey@minilop.net>
|
|
|
|
* src/cairo_xcb_surface.c:
|
|
Updating for XCB API change around iterators.
|
|
|
|
2004-07-20 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_gl_surface.c (_cairo_gl_surface_get_image): Use new
|
|
pixel buffer interface.
|
|
(_cairo_gl_surface_set_image): Use new pixel buffer interface.
|
|
(_cairo_gl_surface_set_filter): Don't use convolution filter for
|
|
gaussian filter type as we have no software fall-back.
|
|
(_cairo_gl_surface_create_pattern): Color ranges now need a surface
|
|
reference.
|
|
Added new CAIRO_GL_SURFACE_IS_DRAWABLE macro.
|
|
|
|
2004-07-16 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_font.c (_cairo_font_copy): Fixed stupid typo.
|
|
Added decleration of _cairo_glyph_cache_destroy.
|
|
|
|
2004-07-15 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_font.c (_cairo_font_copy): Destroy glyph cache
|
|
created by font backend.
|
|
|
|
2004-07-11 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init_clip): Don't call
|
|
_cairo_surface_set_clip_region with a NULL surface.
|
|
|
|
2004-07-09 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_arc_dir): Fix numerical
|
|
problem that could lead to infinite loops.
|
|
|
|
2004-07-09 Dave Beckett <Dave.Beckett@bristol.ac.uk>
|
|
|
|
* autogen.sh: Require automake 1.7 (and thus aclocal 1.7) which
|
|
requires autoconf 2.54. Changed since newer libtools may fail to
|
|
work with older automake versions such as 1.4. I bet this will
|
|
annoy people with older tool chains :(
|
|
|
|
2004-07-05 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo.c (CAIRO_CHECK_SANITY): Remove errant semicolon from
|
|
macro definition.
|
|
|
|
2004-06-21 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* configure.in: Require glitz >= 0.1.5.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_clip_and_composite_trapezoids):
|
|
Use correct source offset when creating clip surface.
|
|
|
|
* src/cairo_gl_surface.c (_cairo_gl_surface_get_image): Use glitz's
|
|
new pixel interface.
|
|
(_cairo_gl_surface_set_image): Use glitz's new pixel interface.
|
|
(_cairo_gl_surface_create_similar): First try to create a drawable
|
|
surface and if that fails, create a read only surface.
|
|
(_cairo_gl_surface_create_similar): Glitz now handles inheritance of
|
|
anti-aliasing hints, so it can be removed from here.
|
|
(_cairo_gl_surface_create_pattern): Temporary fix for gradients.
|
|
|
|
2004-06-16 Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo_xcb_surface.c: (bytes_per_line),
|
|
(_cairo_xcb_surface_set_image):
|
|
Fix image data length computation (XCB doesn't do this part).
|
|
|
|
2004-06-11 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* configure.in: Require glitz 0.1.4.
|
|
|
|
* src/cairo_gl_surface.c: Added CAIRO_GL_SURFACE_MULTISAMPLE macro.
|
|
(_cairo_gl_extract_rectangle): Added _cairo_gl_extract_rectangle.
|
|
(_cairo_gl_surface_composite_trapezoids): Use fill_rectangles if
|
|
we can represent the traps as a rectangle. fill_trapezoids cannot be
|
|
used with software multi-sampling.
|
|
(CAIRO_GL_COMPOSITE_TRAPEZOIDS_SUPPORT): Glitz can no longer composite
|
|
trapezoids just by using offscreen drawing.
|
|
(_cairo_gl_surface_create_similar): Inherit anti-aliasing properties.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_create_pattern): Get solid color
|
|
from color stop components.
|
|
|
|
* src/cairoint.h: Removed cairo color from color stop.
|
|
|
|
* src/cairo_pattern.c: Added MULTIPLY_COLORCOMP macro.
|
|
(cairo_pattern_add_color_stop): Do not pre-multiply stop color.
|
|
(_cairo_pattern_calc_color_at_pixel): Multiply with alpha.
|
|
|
|
2004-05-28 Carl Worth <cworth@isi.edu>
|
|
|
|
* These two fixes are from David Reveman <c99drn@cs.umu.se>:
|
|
|
|
* src/cairo_surface.c (_cairo_surface_create_similar_scratch)
|
|
(_cairo_surface_create_similar_solid): Move NULL test from
|
|
create_similar_scratch to create_similar_solid.
|
|
|
|
* src/cairo_font.c (_cairo_glyph_surface_init): Fix for when
|
|
surface->backend != image->backend, but the backend does use
|
|
images for similar surfaces.
|
|
|
|
2004-05-28 Keith Packard <keithp@keithp.com>
|
|
|
|
* configure.in:
|
|
* src/Makefile.am:
|
|
Add WARN_CFLAGS, autodetection for 64/128 bit ints and
|
|
cairo_wideint.[ch]
|
|
|
|
* src/cairo_gstate.c: (_cairo_gstate_show_glyphs):
|
|
Check status return from _cairo_gstate_glyph_extents
|
|
|
|
* src/cairo_pattern.c: (_cairo_image_data_set_radial),
|
|
(_cairo_pattern_get_image):
|
|
* src/cairo_png_surface.c: (_cairo_png_surface_copy_page):
|
|
* src/cairo_surface.c: (_cairo_surface_composite):
|
|
Quiet compiler warnings about uninitialized variables
|
|
|
|
* src/cairo_traps.c: (_det16_32), (_det32_64),
|
|
(_fixed_16_16_to_fixed_32_32), (_line_segs_intersect_ceil):
|
|
Switch to alternate exact line intersection code.
|
|
|
|
* src/cairo_wideint.c: (_cairo_uint64_divrem),
|
|
(_cairo_uint32_to_uint64), (_cairo_int32_to_int64),
|
|
(_cairo_uint32s_to_uint64), (_cairo_uint64_add),
|
|
(_cairo_uint64_sub), (_cairo_uint32x32_64_mul),
|
|
(_cairo_uint64_mul), (_cairo_uint64_lsl), (_cairo_uint64_rsl),
|
|
(_cairo_uint64_rsa), (_cairo_uint64_lt), (_cairo_uint64_eq),
|
|
(_cairo_int64_lt), (_cairo_uint64_not), (_cairo_uint64_negate),
|
|
(_cairo_leading_zeros32), (_cairo_uint64x32_normalized_divrem),
|
|
(_cairo_int64_divrem), (_cairo_uint128_divrem),
|
|
(_cairo_uint32_to_uint128), (_cairo_int32_to_int128),
|
|
(_cairo_uint64_to_uint128), (_cairo_int64_to_int128),
|
|
(_cairo_uint128_add), (_cairo_uint128_sub), (uint64_lo),
|
|
(uint64_hi), (uint64_shift32), (_cairo_uint64x64_128_mul),
|
|
(_cairo_uint128_mul), (_cairo_uint128_lsl), (_cairo_uint128_rsl),
|
|
(_cairo_uint128_rsa), (_cairo_uint128_lt), (_cairo_int128_lt),
|
|
(_cairo_uint128_eq), (_cairo_uint128x64_normalized_divrem),
|
|
(_cairo_leading_zeros64), (_cairo_int128_negate),
|
|
(_cairo_int128_not), (_cairo_int128_divrem):
|
|
* src/cairo_wideint.h:
|
|
Add 64/128-bit wide integer arithmetic.
|
|
|
|
* src/cairoint.h:
|
|
Switch to stdint.h types (and new wide types).
|
|
|
|
2004-05-24 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo.c (cairo_restore): Moved CAIRO_CHECK_SANITY below
|
|
declarations.
|
|
(cairo_current_font): Moved CAIRO_CHECK_SANITY below declarations.
|
|
|
|
* src/cairoint.h: Added cairo_glyph_size_t, cairo_glyph_surface_t,
|
|
cairo_glyph_surface_node_t and cairo_glyph_cache_t.
|
|
Added font backend functions text_bbox, glyph_bbox and create_glyph.
|
|
Added source offset parameter to show_text and show_glyphs.
|
|
Added drawable parameter to backend function create_similar.
|
|
cairo_font_t now contains a glyph_cache pointer.
|
|
Added _cairo_font_text_bbox, _cairo_font_glyph_bbox,
|
|
_cairo_font_lookup_glyph and _cairo_surface_create_similar_scratch.
|
|
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_create_similar):
|
|
(_cairo_xlib_surface_clone_similar):
|
|
Added drawable parameter to backend function create_similar.
|
|
|
|
* src/cairo_xcb_surface.c (_cairo_xcb_surface_create_similar):
|
|
(_cairo_xcb_surface_clone_similar):
|
|
Added drawable parameter to backend function create_similar.
|
|
|
|
* src/cairo_surface.c: Added _cairo_surface_create_similar_scratch.
|
|
Added drawable parameter to backend function create_similar.
|
|
|
|
* src/cairo_ps_surface.c (_cairo_ps_surface_create_similar):
|
|
Added drawable parameter to backend function create_similar.
|
|
|
|
* src/cairo_png_surface.c (_cairo_png_surface_create_similar):
|
|
Added drawable parameter to backend function create_similar.
|
|
|
|
* src/cairo_image_surface.c (_cairo_image_surface_create_similar):
|
|
Added drawable parameter to backend function create_similar.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_show_text): Use new text
|
|
bounding box function. Pass pattern source offset to show_text.
|
|
(_cairo_gstate_show_glyphs): Use new text
|
|
bounding box function. Pass pattern source offset to show_glyps.
|
|
|
|
* src/cairo_gl_surface.c (_cairo_gl_surface_create_similar): Added
|
|
drawable parameter to backend function create_similar. Use glitz's
|
|
new create similar interface. Support for read-only surfaces.
|
|
(_cairo_gl_surface_clone_similar): Added drawable parameter to
|
|
backend function create_similar.
|
|
|
|
* src/cairo_ft_font.c: Use new glyph caching system. Added bounding box
|
|
font backend functions.
|
|
|
|
* src/cairo_font.c: Added glyph caching system. Added bounding box
|
|
font backend functions.
|
|
(_cairo_font_init): Create new glyph cache.
|
|
(_cairo_font_copy): Take a reference to other fonts glyph cache.
|
|
(_cairo_font_show_text):
|
|
(_cairo_font_show_glyphs): Handle source offset.
|
|
(cairo_font_destroy): Destroy glyph cache.
|
|
|
|
2004-05-20 Graydon Hoare <graydon@redhat.com>
|
|
|
|
* configure.in: Add sanity checking feature configury.
|
|
|
|
* src/cairo-features.h.in: Add sanity checking feature.
|
|
|
|
* src/cairo.c: Add sanity checking.
|
|
|
|
* src/cairoint.h: Add prototypes.
|
|
|
|
* src/cairo_fixed.c
|
|
(_cairo_fixed_is_integer):
|
|
(_cairo_fixed_integer_part): New functions.
|
|
|
|
* src/cairo_matrix.c
|
|
(_cairo_matrix_is_integer_translation): New function.
|
|
|
|
* src/cairo_gstate.c
|
|
(extract_transformed_rectangle): Use fixed functions.
|
|
(_cairo_gstate_clip): Arithmetic fixes.
|
|
(_cairo_gstate_clip_and_composite_trapezoids):
|
|
(_cairo_gstate_show_surface):
|
|
(_cairo_gstate_show_text):
|
|
(_cairo_gstate_show_glyphs): Corrections to clipping.
|
|
|
|
* src/cairo_xlib_surface.c
|
|
(_cairo_xlib_surface_composite): Add XCopyArea fast path.
|
|
(_cairo_xlib_surface_set_clip_region): Drive clip to drawable.
|
|
|
|
2004-05-17 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo.c (cairo_show_text): Do nothing when passed a NULL
|
|
string.
|
|
|
|
2004-05-11 Øyvind Kolås <oeyvindk@hig.no>
|
|
|
|
* src/cairoint.h : changed CAIRO_FILTER_DEFAULT to CAIRO_FILTER_BEST
|
|
to make gradients easier.
|
|
|
|
2004-05-11 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_pattern.c (_cairo_pattern_get_image): Removed
|
|
pattern_offset.
|
|
|
|
* src/cairo_surface.c (_cairo_surface_create_pattern): Removed
|
|
pattern_offset.
|
|
|
|
* src/cairo_gstate.c: Removed pattern_offset.
|
|
|
|
* src/cairoint.h: Removed pattern_offset.
|
|
|
|
2004-05-11 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in: Increment CAIRO_VERSION to 0.1.23.
|
|
|
|
* NEWS: Added notes for snapshot 0.1.23.
|
|
|
|
* RELEASING: Add reminder to mention incompatible API changes in
|
|
NEWS. Re-order steps to avoid clobbering pre-existing tar
|
|
files.
|
|
|
|
2004-05-11 Carl Worth <cworth@isi.edu>
|
|
|
|
* BUGS: Several people have reported that cairo_clip is not
|
|
working right now. And it's always been slow.
|
|
|
|
2004-05-11 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* configure.in: Require glitz 0.1.2.
|
|
|
|
* src/cairo_gl_surface.c: Added opacity attribute. Fixed broken
|
|
CAIRO_GL_COMPOSITE_TRAPEZOIDS_SUPPORT macro.
|
|
(_cairo_gl_surface_composite_trapezoids): Use polygon opacity.
|
|
(_cairo_gl_surface_create_pattern): Added surface pattern support.
|
|
(_cairo_gl_surface_create): Initialize opacity to 0xffff.
|
|
|
|
2004-05-07 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_ft_font.c (_utf8_to_ucs4): Bail on NULL utf8 string.
|
|
|
|
* src/cairo_spline.c (_cairo_spline_add_point): Don't add two
|
|
consecutive, identical points when decomposing the spline, (which
|
|
was leading to an infinte loop in the stroke algorithm when it
|
|
found a slope of (0,0)).
|
|
|
|
2004-05-04 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_png_surface.c (cairo_png_surface_create): Move all
|
|
libpng-related code into copy_page.
|
|
(unpremultiply_data): Add missing unpremultiply step.
|
|
(_cairo_png_surface_copy_page): Move PNG output to copy_page. Add
|
|
support for A8 and A1 images. Remove time from header (we may want
|
|
to add it again later, but for now it messes up my test suite).
|
|
(_cairo_png_surface_destroy): Call copy_page if it hasn't been
|
|
called already.
|
|
(_cairo_png_surface_show_page): Add implementation.
|
|
(_cairo_png_surface_copy_page): Don't close a file we didn't open.
|
|
|
|
2004-05-04 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_pattern.c (_cairo_image_data_set_radial): Corrected some
|
|
confusing comments about the math used for radial gradients.
|
|
|
|
2004-05-01 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_gl_surface.c (_cairo_gl_surface_create_pattern):
|
|
cairo_surface_t pointer to cairo_surface_set_matrix.
|
|
|
|
2004-04-29 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_set_pattern): Don't set
|
|
pattern_offset by the current point. Perhaps we can eliminate
|
|
pattern_offset altogether now?
|
|
|
|
2004-04-30 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairoint.h: Radial patterns only store radius per circle.
|
|
Only inverse CTM to _cairo_pattern_transform.
|
|
|
|
* src/cairo_pattern.c (cairo_pattern_create_radial): Only one radius
|
|
per circle now.
|
|
(_cairo_pattern_transform): A matrix multiplication with inverse CTM
|
|
is all that's needed here.
|
|
(_cairo_pattern_calc_color_at_pixel): Fixed extend type reflect.
|
|
(_cairo_image_data_set_linear): New linear gradient code.
|
|
Transformation of linear gradient is now handled correctly.
|
|
(_cairo_image_data_set_radial): New radial gradient code. Inner circle
|
|
is now used for creating radial gradients. Transformation of radial
|
|
gradient is now handled correctly.
|
|
(_cairo_pattern_get_image): Fixed handling of pattern offset.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_create_pattern): All pattern types
|
|
are transformed using inverse CTM.
|
|
|
|
* src/cairo_gl_surface.c (_cairo_gl_surface_create_pattern): Updated
|
|
to use glitz's new linear and radial gradients.
|
|
|
|
* configure.in: Require glitz 0.1.1.
|
|
|
|
2004-04-28 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_gl_surface.c: Added CAIRO_GL_MULTITEXTURE_SUPPORT and
|
|
CAIRO_GL_SURFACE_IS_SOLID macros.
|
|
(_cairo_gl_surface_get_image): Simpler way for calculating rowstride.
|
|
(_cairo_gl_surface_composite): Support compositing with mask surface
|
|
when mask is solid or multi-texturing is available.
|
|
|
|
2004-04-25 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_gl_surface.c (_cairo_gl_surface_set_clip_region):
|
|
Fixed conversion of pixman_box16_t to glitz_rectangle_t.
|
|
|
|
* src/cairoint.h: Added scale factor value to cairo_color_stop_t.
|
|
Added cairo_shader_function_t and cairo_shader_op_t.
|
|
|
|
* src/cairo_surface.c (_cairo_surface_create_pattern):
|
|
Fixed point updates.
|
|
|
|
* src/cairo_pattern.c (cairo_pattern_create_radial): Use absolute value
|
|
of radius parameters.
|
|
(cairo_pattern_add_color_stop): Precalculate scale factors and convert
|
|
offset to fixed point value.
|
|
(_cairo_image_data_set_radial):
|
|
(_cairo_image_data_set_linear): Initialize and use shading operator.
|
|
(_cairo_pattern_get_image): Fixed point updates.
|
|
(_cairo_pattern_shader_nearest):
|
|
(_cairo_pattern_shader_linear):
|
|
(_cairo_pattern_shader_gaussian):
|
|
(_cairo_pattern_calc_color_at_pixel):
|
|
Converted shading routines to use fixed point values and introduced
|
|
a shading operator structure for more efficient shading calculations.
|
|
Added _cairo_pattern_shader_init function.
|
|
|
|
* src/cairo_gl_surface.c (_cairo_gl_surface_composite):
|
|
(_cairo_gl_surface_fill_rectangles):
|
|
(_cairo_gl_surface_composite_trapezoids):
|
|
Make sure that target surface is OK.
|
|
(_cairo_gl_create_color_range): Initialize and use shading operator.
|
|
(_cairo_gl_surface_create_pattern):
|
|
(_cairo_gl_surface_set_clip_region): Fixed point updates.
|
|
|
|
2004-04-23 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo_surface.c (_cairo_surface_composite):
|
|
* src/cairo_gstate.c (_cairo_gstate_current_fill_rule): Fixed
|
|
several function prototype mismatches between internal header file
|
|
and implementation (thanks to Carlos Romero and gcc-3.4).
|
|
|
|
2004-04-22 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo_surface.c (_cairo_surface_create_pattern):
|
|
* src/cairo_pattern.c (_cairo_pattern_set_source_offset)
|
|
(_cairo_pattern_get_image):
|
|
* src/cairo_gstate.c (_cairo_gstate_create_pattern):
|
|
* src/cairo_gl_surface.c (_cairo_gl_surface_create_pattern): Fixed
|
|
pattern source offset.
|
|
|
|
2004-04-20 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairo_pattern.c (_cairo_image_data_set_linear): Use
|
|
CAIRO_MAXSHORT instead of INT_MAX.
|
|
|
|
* src/cairo_traps.c (_cairo_traps_extents): Use CAIRO_MAXSHORT and
|
|
CAIRO_MINSHORT instead of SHRT_MAX and SHRT_MIN.
|
|
|
|
* src/cairoint.h: including limits.h and defining CAIRO_MAXSHORT and
|
|
CAIRO_MINSHORT.
|
|
|
|
2004-04-16 Carl Worth <cworth@isi.edu>
|
|
|
|
* NEWS: Added notes for snapshot 0.1.22.
|
|
|
|
* configure.in: Now depends on libpixman 0.1.1.
|
|
Bump version to 0.1.22.
|
|
|
|
* src/cairo_image_surface.c (_create_pixman_format): Track pixman
|
|
fixes to PIXMAN_FORMAT_NAME_*.
|
|
|
|
* src/cairo_png_surface.c (cairo_png_surface_create): Explicitly
|
|
add cases for all enum values to eliminate compiler warnings.
|
|
|
|
* src/cairo.h: Remove proposal for surface_clip interface as
|
|
cairo_clip should be able to cover this case now.
|
|
|
|
* BUGS: Added bug concerning negative ref_counts.
|
|
|
|
2004-04-09 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* NEWS: Added notes for snapshot 0.1.21.
|
|
|
|
* configure.in: Bump version to 0.1.21.
|
|
|
|
* src/cairo_surface.c (_cairo_surface_create_pattern):
|
|
* src/cairo_pattern.c (_cairo_pattern_get_image): Fixed
|
|
incorrect rounding of pattern image size.
|
|
|
|
* AUTHORS: Added myself to the AUTHORS file.
|
|
|
|
* cairo.pc.in:
|
|
* src/Makefile.am:
|
|
* src/cairo-features.h.in:
|
|
* src/cairo.h:
|
|
* src/cairo_gl_surface.c (added): Added OpenGL surface backend.
|
|
|
|
* configure.in: Automatically detect available backends.
|
|
|
|
2004-04-06 Carl Worth <cworth@isi.edu>
|
|
|
|
* NEWS: Added notes for snapshot 0.1.20.
|
|
|
|
* RELEASING: Added new RELEASING file.
|
|
|
|
2004-04-04 David Reveman <c99drn@cs.umu.se>
|
|
|
|
* src/cairoint.h: Added create_pattern backend function and pattern
|
|
prototypes.
|
|
|
|
* src/cairo_xlib_surface.c: Added _cairo_xlib_surface_create_pattern.
|
|
|
|
* src/cairo_xcb_surface.c: Added _cairo_xcb_surface_create_pattern.
|
|
|
|
* src/cairo_traps.c: Added _cairo_trap_extents and
|
|
_cairo_traps_extents.
|
|
|
|
* src/cairo_surface.c: Added _cairo_surface_create_pattern.
|
|
|
|
* src/cairo_ps_surface.c: Added _cairo_ps_surface_create_pattern.
|
|
|
|
* src/cairo_png_surface.c: Added _cairo_png_surface_create_pattern.
|
|
|
|
* src/cairo_pattern.c (added): All functions needed for the new
|
|
pattern API.
|
|
|
|
* src/cairo_image_surface.c: Added
|
|
_cairo_image_abstract_surface_create_pattern.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init): Create solid pattern
|
|
and set alpha to 0.0.
|
|
(_cairo_gstate_init_copy): Increment pattern references.
|
|
(_cairo_gstate_fini): Destroy pattern.
|
|
(_cairo_gstate_set_pattern): Destroy current pattern,
|
|
increment references to the new pattern and update pattern
|
|
offset with the current point.
|
|
(_cairo_gstate_set_rgb_color): Destroy current pattern and
|
|
create a new solid pattern.
|
|
(_cairo_gstate_current_rgb_color): Get RGB from current pattern.
|
|
(_cairo_gstate_set_alpha): Set gstate->alpha without modifying
|
|
the current pattern.
|
|
(_cairo_gstate_stroke):
|
|
(_cairo_gstate_fill): Removed surface matrix computations as
|
|
they are now handled by _cairo_gstate_create_pattern.
|
|
(_cairo_gstate_clip_and_composite_trapezoids): Create a
|
|
possibly backend accelerated pattern source and use it for
|
|
compositing trapezoids.
|
|
(_cairo_gstate_clip): Allow backends to not support rectangular
|
|
clipping regions. Use solid pattern for creating clip surface.
|
|
(_cairo_gstate_show_surface): Use solid pattern for alpha mask.
|
|
(_cairo_gstate_show_text):
|
|
(_cairo_gstate_show_glyphs): Use current pattern when compositing
|
|
glyphs.
|
|
|
|
Added _cairo_gstate_current_pattern and _cairo_gstate_create_pattern,
|
|
_cairo_gstate_stroke_extents, _cairo_gstate_fill_extents.
|
|
Removed restore_text_rendering_context, setup_text_rendering_context,
|
|
_cairo_gstate_ensure_source.
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_show_glyphs): Advance
|
|
source offset.
|
|
|
|
* src/cairo.h: Added cairo_current_pattern,
|
|
cairo_pattern_create_for_surface, cairo_pattern_create_linear,
|
|
cairo_pattern_create_radial, cairo_pattern_reference,
|
|
cairo_pattern_destroy, cairo_pattern_add_color_stop,
|
|
cairo_pattern_set_matrix, cairo_pattern_get_matrix,
|
|
cairo_pattern_set_extend, cairo_pattern_get_extend,
|
|
cairo_pattern_set_filter, cairo_pattern_get_filter. cairo_set_pattern
|
|
now takes a cairo_pattern_t pointer instead of a cairo_surface_t
|
|
pointer. Added CAIRO_FILTER_GAUSSIAN filter type. Added cairo_extend_t
|
|
enum.
|
|
|
|
* src/cairo.c: _cairo_restrict_value declared not static as it's
|
|
used in cairo_pattern.c. Added rectangular extents functions
|
|
cairo_stroke_extents and cairo_fill_extents. cairo_set_pattern now
|
|
takes a cairo_pattern_t pointer instead of a cairo_surface_t
|
|
pointer. Added cairo_current_pattern function.
|
|
|
|
* src/Makefile.am (libcairo_la_LIBADD): Removed -lz and added PS_LIBS.
|
|
|
|
* configure.in: Bump version to 0.1.20. Includes new pattern
|
|
API. Removed an extra AC_SUBST(XRENDER_LIBS).
|
|
PS_SURFACE_LIBS -> PS_LIBS.
|
|
|
|
* cairo.pc.in: PS_SURFACE_LIBS -> PS_LIBS.
|
|
|
|
2004-04-02 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo.h: Move weight after slant to match the order in
|
|
cairo_select_font.
|
|
|
|
* TODO: Added notes on DPI for image-based backends and on
|
|
proposal for new cairo_text_glyphs function.
|
|
|
|
* BUGS: Added BUG about cairo_show_text not advancing the current
|
|
point.
|
|
|
|
2004-03-30 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/Makefile.am (libcairo_la_LIBADD): Add -lz.
|
|
|
|
2004-03-30 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in: Add checks for Xrender.h in xrender.pc is not
|
|
found. Remove AC_HELP_STRING to be compatible with older versions
|
|
of autoconf (thanks to Bill Spitzak <spitzak@d2.com>).
|
|
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_set_clip_region):
|
|
Add question on semantics with empty region. Fix missing return
|
|
value.
|
|
|
|
* src/cairo_image_surface.c
|
|
(_cairo_image_surface_set_clip_region): Export for internal use.
|
|
(_cairo_image_abstract_surface_set_clip_region): Add silly wrapper
|
|
to match the backend interface.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init_clip): Remove unused
|
|
variables.
|
|
|
|
* src/cairo.h: Add proposal for cairo_xlib_surface_set_size.
|
|
|
|
* BUGS: Added note about problem with cairo_scale_font.
|
|
|
|
2004-03-23 Olivier Andrieu <oliv__a@users.sourceforge.net>
|
|
|
|
* src/cairo_ps_surface.c (_cairo_ps_surface_set_clip_region)
|
|
* src/cairo_png_surface.c (_cairo_png_surface_set_clip_region):
|
|
Implement _set_clip_region by delegating it to the image backend.
|
|
|
|
* src/cairo_xcb_surface.c (_cairo_xcb_surface_set_clip_region):
|
|
Add a stub.
|
|
|
|
* src/cairo.h: Add missing (?) cairo_init_clip
|
|
|
|
2004-03-20 Dave Beckett <Dave.Beckett@bristol.ac.uk>
|
|
|
|
* configure.in: Move the PNG_CFLAGS/_LIBS substitutes outside
|
|
the conditional, to match what is already done for XCB.
|
|
Do the same for XRENDER_CFLAGS/LIBS.
|
|
|
|
* configure.in: Substitute PNG_CFLAGS, PNG_LIBS on
|
|
the configure path when use_png is not enabled to prevent
|
|
the substituions being undefined.
|
|
|
|
2004-03-19 Graydon Hoare <graydon@redhat.com>
|
|
|
|
* src/cairo.c (cairo_init_clip): Add.
|
|
* src/cairo_gstate.c:
|
|
Initialize, finalize and copy clip.region.
|
|
Detect rectangular clips and push down to backend.
|
|
|
|
* src/cairoint.h
|
|
(cairo_surface_backend_t): Add set_clip_region slot.
|
|
(cairo_clip_rec_t): Add region slot.
|
|
(_cairo_gstate_init_clip)
|
|
(_cairo_surface_set_clip_region): Prototype.
|
|
|
|
* src/cairo_surface.c
|
|
(_cairo_surface_set_clip_region): Add.
|
|
|
|
* src/cairo_xlib_surface.c
|
|
(_cairo_xlib_surface_set_clip_region): Add.
|
|
|
|
* src/cairo_image_surface.c
|
|
(_cairo_image_surface_set_clip_region): Add.
|
|
|
|
* src/cairo_ps_surface.c
|
|
(_cairo_ps_surface_set_clip_region): Stub, not implemented.
|
|
|
|
2004-03-16 Jamey Sharp <jamey@minilop.net>
|
|
|
|
* src/cairo.h:
|
|
* src/cairo_xcb_surface.c:
|
|
Updated for XCB typename renaming. The Xlib and XCB surfaces can
|
|
be compiled in the same library now.
|
|
|
|
* src/cairo_surface.c:
|
|
Initialize the surface's filter value.
|
|
|
|
2004-02-26 Carl Worth <cworth@isi.edu>
|
|
|
|
* AUTHORS: Add Jordi and Olivier to the AUTHORS file.
|
|
|
|
* src/cairo_ft_font.c (_utf8_to_ucs4): Fix broken return value for
|
|
nchars (thanks to Jordi Mas <jordi@ximian.com>).
|
|
|
|
2004-02-24 Olivier Andrieu <oliv__a@users.sourceforge.net>
|
|
|
|
* src/cairo.h:
|
|
* src/cairo-features.h.in:
|
|
* src/cairo_png_surface.c: Add PNG backend (cairo_set_target_png
|
|
and cairo_png_surface_create).
|
|
|
|
* cairo.pc.in:
|
|
* configure.in: autoconf support for the PNG backend. Bump version
|
|
to 0.1.19.
|
|
|
|
* src/Makefile.am: PNG backend support, removed references to
|
|
X_LIBS and X_CFLAGS.
|
|
|
|
2004-02-24 Carl Worth <cworth@isi.edu>
|
|
|
|
* AUTHORS: Add attribution for many people who have made generous
|
|
contributions to cairo. This list was generated by sifting through
|
|
the ChangeLog. Please let me know if I have missed anyone.
|
|
|
|
* NEWS: Add some historical notes on cairo development, prior to
|
|
when we began to maintain this NEWS file.
|
|
|
|
* README (http): Add pointer to cairographics.org. Fix to use
|
|
"cairo" rather than "Cairo" when not at the beginning of a
|
|
sentence.
|
|
|
|
* TODO: Remove cairo_current_path, cairo_current_path_flat,
|
|
cairo_text_extents, cairo_glyph_extents, cairo_text_path, and
|
|
cairo_glyph_path from the TODO list as they have all been
|
|
implemented now.
|
|
|
|
2004-02-17 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo.h: Add comment indication cairo_copy will be going
|
|
away at some point. Some indentation fixes.
|
|
|
|
* configure.in: Bump version to 0.1.18. Includes new functions
|
|
cairo_current_path, cairo_current_path_flat,
|
|
cairo_surface_get_filter. Support for XCB backend. Fixes for
|
|
building in cygwin. Adds cairo_surface_get_filter.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c (cairo_current_path):
|
|
(cairo_current_path_flat): Add new path query functions.
|
|
|
|
* src/cairo_gstate.c (_gpi_move_to):
|
|
(_gpi_line_to):
|
|
(_gpi_curve_to):
|
|
(_gpi_close_path):
|
|
(_cairo_gstate_interpret_path): Implement support for
|
|
cairo_current_path and cairo_current_path_flat. These functions
|
|
just provide an interface to _cairo_path_interpret and take care
|
|
of mapping from device space back to user space.
|
|
|
|
2004-02-13 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* TODO: Add some notes from JG's TODO list on the wiki:
|
|
http://cairographics.org/CairoToDoList. (Also testing automated
|
|
mailing to cairo-commit list).
|
|
|
|
2004-02-12 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo.h: Add typedefs for new callbacks to be used by
|
|
cairo_current_path: cairo_move_to_func, cairo_line_to_func,
|
|
cairo_curve_to_func, and cairo_close_path_func.
|
|
|
|
* src/cairoint.h: cairo_path.last_move_point and
|
|
cairo_path.current_point are now fixed-point not doubles for
|
|
consistency.
|
|
|
|
* src/cairo_path.c (_cairo_path_interpret): Now accept 4 explicit
|
|
function pointers rather than a structure. Eliminate unnecessary
|
|
done_path callback.
|
|
|
|
* src/cairo_path_bounds.c (_cairo_path_bounds):
|
|
* src/cairo_path_stroke.c (_cairo_path_stroke_to_traps):
|
|
* src/cairo_path_fill.c (_cairo_path_fill_to_traps): Track change
|
|
in _cairo_path_interpret. Code previously in done_path callback is
|
|
now here immediately after call to _cairo_path_interpret.
|
|
|
|
* src/cairo_path.c (_cairo_path_move_to):
|
|
(_cairo_path_rel_move_to):
|
|
(_cairo_path_line_to):
|
|
(_cairo_path_rel_line_to):
|
|
(_cairo_path_curve_to):
|
|
(_cairo_path_rel_curve_to):
|
|
(_cairo_path_current_point): Internal _cairo_path API modified to
|
|
accept fixed-point data everywhere. Much cleaner this way.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_move_to):
|
|
(_cairo_gstate_line_to):
|
|
(_cairo_gstate_curve_to):
|
|
(_cairo_gstate_rel_move_to):
|
|
(_cairo_gstate_rel_line_to):
|
|
(_cairo_gstate_rel_curve_to):
|
|
(_cairo_gstate_current_point):
|
|
(_cairo_gstate_show_text):
|
|
(_cairo_gstate_text_path): Have to convert doubles to fixed-point
|
|
to track changes in _cairo_path API.
|
|
|
|
* src/cairo_ft_font.c (_move_to, _line_to, _conic_to, _cubic_to):
|
|
Keep data in fixed-point rather than going through intermediate
|
|
doubles. Track changes in _cairo_path API.
|
|
|
|
* src/cairo_fixed.c (_cairo_fixed_from_26_6): New function to help
|
|
when working with freetype.
|
|
|
|
2004-02-02 Jamey Sharp <jamey@minilop.net>
|
|
|
|
* configure.in:
|
|
* src/Makefile.am:
|
|
* src/cairo-features.h.in:
|
|
* src/cairo.h:
|
|
* src/cairo_xcb_surface.c (added):
|
|
Ported the Xlib surface backend to XCB.
|
|
|
|
2004-02-02 Graydon Hoare <graydon@redhat.com>
|
|
|
|
* src/cairo_xlib_surface.c
|
|
(CAIRO_SURFACE_RENDER_HAS_FILTERS): New predicate.
|
|
(_cairo_xlib_surface_set_filter): Skip filterless servers.
|
|
(_cairo_xlib_surface_clone_similar): Fix typo.
|
|
|
|
2004-01-27 Graydon Hoare <graydon@redhat.com>
|
|
|
|
* src/cairoint.h (cairo_surface): New "filter" field.
|
|
* src/cairo_surface.c
|
|
(cairo_surface_get_filter): New function.
|
|
(cairo_surface_set_filter): Store filter in surface.
|
|
* src/cairo.h (cairo_surface_get_filter): Declare.
|
|
* src/cairo_xlib_surface.c
|
|
(_cairo_xlib_surface_clone_similar): Copy filter setting.
|
|
(_cairo_xlib_surface_set_filter): Use constants from Xrender.h
|
|
|
|
2004-01-24 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_path_stroke.c (_cairo_stroker_add_sub_edge): Fix to
|
|
use tessellate_polygon instead of tessellate_rectangle as the
|
|
matrix may have skewed the coordinates into a non-rectangular
|
|
shape.
|
|
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_set_filter): Add
|
|
missing break statements to switch.
|
|
|
|
2004-01-22 Richard D. Worth <richard@theworths.org>
|
|
|
|
* src/Makefile.am: Add '-no-undefined' to end of
|
|
libcairo_la_LDFLAGS to enable building shared library under
|
|
cygwin.
|
|
|
|
* src/cairo.h: Remove all 'extern ' and ' __external_linkage'
|
|
(macro for __declspec(dllexport) and __declspec(dllimport))
|
|
from function declarations. These are no longer needed for cygwin.
|
|
|
|
* src/cairo_traps.c: Changed type of _line_segs_intersect_ceil
|
|
from 'static cairo_fixed_t' to 'static int' to match definition.
|
|
This was necessary to compile under cygwin.
|
|
|
|
2003-12-17 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo.h: Remove trailing commas from enums, (some compilers
|
|
like to complain about them).
|
|
|
|
2003-12-16 Dave Beckett <Dave.Beckett@bristol.ac.uk>
|
|
|
|
* README: Do not require libpixregion, libic.
|
|
|
|
2003-12-16 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* NEWS: Add more notes culled from the ChangeLog.
|
|
|
|
2003-12-16 Carl Worth <cworth@isi.edu>
|
|
|
|
* NEWS: Begin maintaining NEWS file. Add notes on 0.1.17.
|
|
|
|
* configure.in: Bump version to 0.1.17 for new functions:
|
|
cairo_text_extents, cairo_glyph_extents, cairo_text_path,
|
|
cairo_glyph_path.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c (cairo_text_path):
|
|
(cairo_glyph_path): Re-enable cairo_text_path and cairo_glyph_path.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_glyph_path): Add missing
|
|
transformation.
|
|
|
|
* src/cairo_ft_font.c (_move_to):
|
|
(_line_to):
|
|
(_conic_to):
|
|
(_cubic_to):
|
|
(_cairo_ft_font_glyph_path): Initial implementation of glyph_path.
|
|
|
|
2003-12-16 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairoint.h: Move all current_point state fields from
|
|
cairo_gstate_t to cairo_path_t.
|
|
|
|
* src/cairo_path.c (_cairo_path_init):
|
|
(_cairo_path_init_copy):
|
|
(_cairo_path_fini):
|
|
(_cairo_path_move_to):
|
|
(_cairo_path_line_to):
|
|
(_cairo_path_curve_to):
|
|
(_cairo_path_close_path): Add current_point state.
|
|
(_cairo_path_current_point): New function.
|
|
(_cairo_path_rel_move_to):
|
|
(_cairo_path_rel_line_to):
|
|
(_cairo_path_rel_curve_to): New functions.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init):
|
|
(_cairo_gstate_new_path):
|
|
(_cairo_gstate_move_to):
|
|
(_cairo_gstate_line_to):
|
|
(_cairo_gstate_curve_to):
|
|
(_cairo_gstate_rel_move_to):
|
|
(_cairo_gstate_rel_line_to):
|
|
(_cairo_gstate_rel_curve_to):
|
|
(_cairo_gstate_close_path):
|
|
(_cairo_gstate_current_point): Eliminate current_point state.
|
|
(_cairo_gstate_show_text):
|
|
(_cairo_gstate_text_path): Use new _cairo_path_current_point.
|
|
|
|
2003-12-16 Carl Worth <cworth@isi.edu>
|
|
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_glyph_path):
|
|
(_cairo_ft_font_text_path): A couple of changes missed in the last
|
|
batch of commits (reordering so that path is final argument).
|
|
|
|
* src/cairoint.h: Change cairo_font_backend_t to use a void * for
|
|
the abstract font. Put create, copy, and destroy as the first
|
|
functions in the list. Fix text_path and glyph_path so that the
|
|
path to be returned is the last argument. Add x,y arguments to
|
|
text_path.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_text_path): Compute x,y now
|
|
needed by cairo_font_text_path.
|
|
(_cairo_gstate_glyph_path): Track change in
|
|
cairo_font_text/glyph_path (path argument is now last).
|
|
|
|
* src/cairo_ft_font.c: Switch to new macro-based mechanism for
|
|
including freetype headers.
|
|
(cairo_ft_font_face):
|
|
(cairo_ft_font_pattern): Minor cleanup.
|
|
(_cairo_ft_font_copy):
|
|
(_cairo_ft_font_destroy):
|
|
(_utf8_to_glyphs):
|
|
(_cairo_ft_font_font_extents):
|
|
(_cairo_ft_font_glyph_extents):
|
|
(_cairo_ft_font_text_extents):
|
|
(_cairo_ft_font_show_glyphs):
|
|
(_cairo_ft_font_show_text): Track changes to cairo_font_backend_t
|
|
interface.
|
|
|
|
* src/cairo_font.c (_cairo_font_text_path):
|
|
(_cairo_font_glyph_path): Track changes to cairo_font_backend_t
|
|
interface.
|
|
|
|
2003-12-16 Carl Worth <cworth@isi.edu>
|
|
|
|
* TODO: Change instances of Cairo to cairo where necessary. Add
|
|
note about broken dashing on splines.
|
|
|
|
2003-12-15 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_text_extents):
|
|
(_cairo_gstate_glyph_extents):
|
|
* src/cairo_ft_font.c (_cairo_ft_font_glyph_extents):
|
|
(_cairo_ft_font_glyph_extents):
|
|
* src/cairo.h: Rename cairo_text_exextents_t fields:
|
|
left_side_bearing -> x_bearing
|
|
ascent -> y_bearing
|
|
right_side_bearing (replaced by) width
|
|
descent (replaced by) height
|
|
|
|
2003-12-15 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_text_extents):
|
|
(_cairo_gstate_glyph_extents): Need to divide out the scale factor
|
|
to return user-space extents.
|
|
(_cairo_gstate_glyph_extents): Don't transform glyph locations as
|
|
they're not relevant to extents.
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_font_extents): Clean up
|
|
implementation.
|
|
(_cairo_ft_font_glyph_extents): Initial implementation. Thanks to
|
|
John Ellson <ellson@research.att.com> for most of the work on this
|
|
function.
|
|
(_cairo_ft_font_show_text): Clean to use num_glyphs not nglyphs.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c (cairo_text_extents):
|
|
(cairo_glyph_extents): Re-enable cairo_text/glyph_extents.
|
|
|
|
2003-12-15 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_matrix.c (_cairo_matrix_compute_scale_factors): Move
|
|
this function from cairo_ft_font.c (_get_scale_factors).
|
|
|
|
* src/cairo_ft_font.c (DOUBLE_TO_16_16): Fix minor errors in
|
|
fixed/floating-point conversion.
|
|
|
|
* src/cairoint.h: font->show_glyphs no longer accepts an offset
|
|
point.
|
|
|
|
* src/cairo_ft_font.c (_utf8_to_glyphs):
|
|
(_cairo_ft_font_text_extents):
|
|
(_cairo_ft_font_show_text):
|
|
(_cairo_ft_font_text_path): _utf8_to_glyphs now accepts a point by
|
|
which each glyph should be offset.
|
|
(cairo_ft_font_backend): Remove evil void * casts on function
|
|
pointers.
|
|
|
|
* src/cairo_font.c (_cairo_font_show_glyphs): Fix to not require a
|
|
current point.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_show_text):
|
|
(setup_text_rendering_context): Move initialization of current
|
|
device-space point from setup_text_rendering_context to
|
|
_cairo_gstate_show_text.
|
|
(_cairo_gstate_show_glyphs): Fix to not reference current point.
|
|
|
|
2003-12-12 Dave Beckett <Dave.Beckett@bristol.ac.uk>
|
|
|
|
* src/Makefile.am: Add compatibility defines FONTCONFIG_LIBS,
|
|
X_LIBS, XRENDER_LIBS to keep automake happy - they look like
|
|
automake variable names.
|
|
|
|
2003-12-12 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo_font.c (_cairo_font_create): Add comment about
|
|
building in a font.
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_create): Check for NULL
|
|
return value from cairo_ft_font_create.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo-features.h.in:
|
|
* src/Makefile.am (libcairo_ps_sources): Add conditionals for
|
|
ps_surface functions, etc.
|
|
|
|
* configure.in: Get rid of AC_PATH_XTRA. Instead, find X
|
|
includes/libraries only via pkg-config xrender.
|
|
Switch option from --without-x to --disable-xlib
|
|
Add option --disable-ps
|
|
|
|
* cairo.pc.in (Libs): Add -lz only if ps_surface backend is compiled.
|
|
|
|
* src/cairo.h (__external_linkage): Add missing definitions from
|
|
slim_import.h.
|
|
|
|
2003-12-11 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairoint.h: Rename surface->ic_image to
|
|
surface->pixman_image.
|
|
|
|
* src/cairo_image_surface.c
|
|
(_cairo_image_surface_create_for_pixman_image):
|
|
(_cairo_image_surface_create_with_masks):
|
|
(_create_pixman_format):
|
|
(cairo_image_surface_create):
|
|
(cairo_image_surface_create_for_data):
|
|
(_cairo_image_abstract_surface_destroy):
|
|
(_cairo_image_surface_set_matrix):
|
|
(_cairo_image_surface_set_filter):
|
|
(_cairo_image_surface_set_repeat):
|
|
(_pixman_operator):
|
|
(_cairo_image_surface_fill_rectangles):
|
|
(_cairo_image_surface_composite_trapezoids): Rename functions and
|
|
indentifiers with ic_ in the name that were missed by the recent
|
|
renaming. Fix indentation problems left by the recent renaming.
|
|
|
|
* Shift everything over from libic/libpixregion/slim to
|
|
libpixman. Many thanks to Dave Beckett
|
|
<dave.beckett@bristol.ac.uk> for all of the heavy lifting with
|
|
this renaming effort.
|
|
|
|
* src/cairoint.h (slim_hidden_proto1): Directly fold in slim stuff
|
|
rather than depending on it from an external package.
|
|
|
|
* src/cairo_ps_surface.c (_cairo_ps_surface_copy_page):
|
|
* src/cairo_image_surface.c: Switch from libic to libpixman.
|
|
|
|
* src/cairo.h: Include pixman.h not ic.h.
|
|
(__external_linkage): Directly fold in slim stuff rather than
|
|
depending on it from an external package.
|
|
|
|
* configure.in (PKG_CHECK_MODULES):
|
|
* cairo.pc.in (Requires): Look for libpixman instead of libic and
|
|
slim.
|
|
|
|
2003-12-11 Andrew Chant <andrew.chant@utoronto.ca>
|
|
|
|
* cairo_select_font:
|
|
_cairo_font_create:
|
|
_cairo_ft_font_create:
|
|
_cairo_gstate_select_font:
|
|
change char * family to const char * family
|
|
|
|
2003-12-11 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_set_image):
|
|
Replace mysterious image->depth == 32 ? 24 : image->depth with
|
|
simply image->depth.
|
|
|
|
2003-12-11 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* cairo.pc.in (Requires):
|
|
* configure.in: Add xrender to cairo.pc Renders line if needed.
|
|
|
|
2003-12-11 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo_ps_surface.c (_cairo_ps_surface_copy_page): Fix to use
|
|
shifts and masks for endianness-correct PS image
|
|
generation. Rename bgr to rgb now that the byte order issues are
|
|
clear.
|
|
|
|
2003-12-08 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_path_bounds.c (_cairo_path_bounder_move_to):
|
|
(_cairo_path_bounder_line_to):
|
|
(_cairo_path_bounder_curve_to):
|
|
(_cairo_path_bounder_close_path): Track change in
|
|
cairo_path_callbacks interface.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo_path_stroke.c:
|
|
* src/cairo_path_fill.c:
|
|
* src/cairo_path.c: Clean up cairo_path_callbacks to have move_to,
|
|
line_to, curve_to, abd close_path instead of add_edge, add_spline,
|
|
and done_sub_path. Much, much nicer.
|
|
|
|
* src/cairo_polygon.c (_cairo_polygon_move_to): Provide
|
|
cairo_polygon_move_to and cairo_polygon_line_to instead of
|
|
cairo_polygon_add_point.
|
|
|
|
* src/cairo_pen.c (_cairo_pen_stroke_spline_half): Track change in
|
|
cairo_polygon interface.
|
|
|
|
2003-12-08 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in: Bump version to 0.1.16 since it actually has a
|
|
hope of building, (due to fix for broken cairo-xlib.h includes).
|
|
|
|
2003-12-05 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo_xlib_surface.c: Don't include obsolete cairo-xlib.h.
|
|
|
|
* autogen.sh (AUTOCONF): Allow names of all autofoo programs to be
|
|
overridden via environment variables.
|
|
|
|
* configure.in: Bump version to 0.1.15 for new
|
|
CAIRO_HAS_XLIB_SURFACE macro.
|
|
|
|
* src/cairo.h: Add missing #include <cairo-features.h>
|
|
|
|
* Rename cairo-config.h to cairo-features.h.
|
|
|
|
* configure.in: Rename XLIB_BACKEND_DEFINE to
|
|
XLIB_SURFACE_FEATURE. Rename AM_CONDITIONAL HAVE_XLIB_BACKEND to
|
|
CAIRO_HAS_XLIB_SURFACE. Rename user-visibile macro
|
|
CAIRO_HAS_XLIB_BACKEND to CAIRO_HAS_XLIB_SURFACE.
|
|
|
|
2003-12-03 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* configure.in: Bumped version to 0.1.14 to indicate dropped
|
|
cairo-xlib.h and new cairo-config.h.
|
|
|
|
* New support for "./configure --without-x" to compile without the
|
|
xlib backend. Many thanks to Sasha V. <sasha@aftercode.net>.
|
|
|
|
* configure.in: We do three things here: Make the pkg-config check
|
|
for xrender conditional, set XLIB_BACKEND_DEFINE to either
|
|
CAIRO_HAS_XLIB_BACKEND or CAIRO_HAS_NO_XLIB_BACKEND to be
|
|
substituted into cairo-config.h, and set an AM_CONDITIONAL for
|
|
HAVE_XLIB_BACKEND to enable conditional compilation of
|
|
cairo_xlib_surface.c. Perhaps that could be simplified a tad, but
|
|
it's what we have working now. Also split up various
|
|
PKG_CHECK_MODULES into separate checks.
|
|
|
|
* src/cairo_gstate.c: Remove errant reference to
|
|
cairo_gstate_set_drawable.
|
|
|
|
* src/cairo.h: Move xlib-specific calls in from old cairo-xlib.h,
|
|
now guarded in #ifdef CAIRO_HAS_XLIB_BACKEND.
|
|
|
|
* src/Makefile.am (libcairo_xlib_sources): Make compilation of
|
|
cairo_xlib_surface.c conditional.
|
|
(INCLUDES, libcairo_la_LIBADD): Add the new variables from
|
|
splitting up the PKG_CHECK_MODULES calls.
|
|
|
|
2003-12-03 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* cairo.pc.in (Libs): Add -lz for the compress function used in
|
|
the PS backend.
|
|
|
|
2003-12-01 Keith Packard <keithp@keithp.com>
|
|
|
|
* TODO:
|
|
Add note about degenerate path caps being broken
|
|
|
|
2003-11-21 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo_polygon.c (_cairo_polygon_add_edge): Use 0 and 1 not
|
|
False and True, (to avoid false dependency on X headers).
|
|
|
|
* src/cairo_path_stroke.c (_compute_face): Use
|
|
cairo_point_double_t not XPointDouble, (to avoid false dependency
|
|
on X headers). Thanks to "Sasha V." <sasha@aftercode.net> for
|
|
pointing these out.
|
|
|
|
2003-11-18 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* configure.in: Bump version to 0.1.13 for new freetype header
|
|
compatibility.
|
|
Fix comments regarding freetype version checking.
|
|
|
|
2003-11-18 James Henstridge <james@daa.com.au>
|
|
|
|
* cairo.pc.in (Cflags): add FREETYPE_CFLAGS/LIBS to Libs/Cflags
|
|
rather than requiring "freetype2", which doesn't exist in anything
|
|
but the most recent version of freetype.
|
|
|
|
* configure.in (FREETYPE_LIBS): add freetype cflags/libs
|
|
substitutions.
|
|
|
|
2003-11-18 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo.h: Fix build for new freetype header include
|
|
mechanism, (thanks to Christof Petig <christof@petig-baender.de>)
|
|
|
|
2003-11-17 Carl Worth <cworth@isi.edu>
|
|
|
|
* Remove infinite looping when stroking with a line width at or
|
|
close to 0.0. Thanks to Rob Buis <buis@kde.org> and Noah Levitt
|
|
<nlevitt@columbia.edu> for providing in-the-wild examples of SVG
|
|
files with stroke-width:0 that demonstrated the problem,
|
|
(cowboy.svg and albania.svg).
|
|
|
|
* src/cairo_pen.c (_cairo_pen_stroke_spline): Do nothing if the
|
|
pen is a degenerate, single point. This happens when the line
|
|
width is a very small, non-zero value.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_stroke): Do nothing when asked
|
|
to stroke a path with a line_width of 0.0. Previously, this would
|
|
lead to an infinite loop.
|
|
|
|
* src/cairo.c (cairo_set_line_width): Force negative line width
|
|
to 0.0.
|
|
|
|
* TODO: Updated TODO list.
|
|
|
|
2003-11-10 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* configure.in: Fix typo (thanks to John Ellson
|
|
<ellson@research.att.com>)
|
|
|
|
* TODO: Add TODO items for intersection problem, programmatic
|
|
patterns, missing text functions.
|
|
|
|
2003-11-06 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in (CAIRO_VERSION): Bumped version to 0.1.12 for new
|
|
cairo_in_stroke and cairo_in_fill functions.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c (cairo_in_stroke):
|
|
(cairo_in_fill): Added new cairo_in_stroke and cairo_in_fill.
|
|
|
|
* src/cairo_traps.c (_cairo_trap_contains):
|
|
(_cairo_traps_contain): * src/cairo_gstate.c
|
|
(_cairo_gstate_in_stroke):
|
|
(_cairo_gstate_in_fill): New functions to support for
|
|
cairo_in_stroke and cairo_in_fill. Many thanks to Thomas Hunger
|
|
<info@teh-web.de> for the initial implementation which
|
|
demonstrated how easy this would be and pushed me to go and write
|
|
it already.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_clip_and_composite_trapezoids):
|
|
* src/cairo_traps.c (_line_segs_intersect_ceil):
|
|
* src/cairo_path.c (_cairo_path_move_to):
|
|
(_cairo_path_line_to):
|
|
(_cairo_path_curve_to): Fixed to use _cairo_fixed_from_double
|
|
instead of XDoubleToFixed.
|
|
|
|
2003-11-06 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo.c (cairo_current_font): Move declaration to beginning
|
|
of function to avoid requiring a C99-compatible compiler.
|
|
|
|
* src/cairo.h: Add comment pondering memory management semantics
|
|
of cairo_current_target_surface.
|
|
|
|
* src/cairo_pen.c (_cairo_pen_fini): NULL out pen->vertices after
|
|
free.
|
|
|
|
* src/cairo_image_surface.c
|
|
(_cairo_image_abstract_surface_destroy): NULL out durface->data
|
|
after free.
|
|
|
|
2003-11-04 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_set_target_surface): Enable
|
|
cairo_set_target_surface (cr, NULL) to work. This can be useful to
|
|
force the current target surface to be finalized.
|
|
|
|
* configure.in:
|
|
* cairo.pc.in (Requires): Add explicit fontconfig and freetype2
|
|
dependencies that were implicitly dropped along with Xft.
|
|
|
|
2003-11-04 Carl Worth <cworth@isi.edu>
|
|
|
|
* TODO: Note that cairo_show_page, cairo_copy_page, PostScript
|
|
backend, "real" text API, and text support for the image backend
|
|
have now all been implemented.
|
|
|
|
2003-11-04 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* configure.in:
|
|
* cairo.pc.in (Requires): cairo doesn't depend on Xft after the
|
|
recent text work.
|
|
|
|
2003-11-03 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in (CAIRO_VERSION): Bump version to 0.1.11 for new
|
|
cairo_copy_page.
|
|
|
|
* src/cairo_ps_surface.c (cairo_ps_surface_create): Now print
|
|
header at time of surface_create rather than in show_page.
|
|
(_cairo_ps_surface_destroy): Print document footer at time of
|
|
surface_destroy rather than in show_page.
|
|
(_cairo_ps_surface_erase): New function for sharing.
|
|
(_cairo_ps_surface_copy_page): Now keep proper page count.
|
|
(_cairo_ps_surface_show_page): Real work is now done in
|
|
copy_page. show_page is only distinct in that it erases the
|
|
surface afterwards.
|
|
|
|
* src/cairo.h:
|
|
* src/cairo.c (cairo_copy_page):
|
|
* src/cairo_gstate.c (_cairo_gstate_copy_page):
|
|
* src/cairo_surface.c (_cairo_surface_copy_page):
|
|
* src/cairo_image_surface.c (_cairo_image_surface_copy_page):
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_copy_page): Add
|
|
support for new cairo_copy_page function.
|
|
|
|
2003-11-03 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_ps_surface.c (cairo_set_target_ps): Add missing check
|
|
for out of memory.
|
|
|
|
* src/cairo_image_surface.c
|
|
(_cairo_image_surface_create_with_masks):
|
|
(_cairo_image_surface_create_with_masks):
|
|
(cairo_image_surface_create):
|
|
(cairo_image_surface_create):
|
|
(cairo_image_surface_create_for_data):
|
|
(cairo_image_surface_create_for_data): Add several missing checks
|
|
for out of memory.
|
|
|
|
2003-11-03 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo.h: Added __external_linkage to a few functions that
|
|
were missing it.
|
|
|
|
2003-11-01 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_ps_surface.c (_cairo_ps_surface_show_page): Fix
|
|
misplacement of PS origin, (was translating vertically by width
|
|
instead of height).
|
|
|
|
* configure.in (CAIRO_VERSION): Bumped version to 0.1.10 for new
|
|
functions cairo_set_target_ps, cairo_ps_surface_create, and
|
|
cairo_show_page.
|
|
|
|
* src/cairo_ps_surface.c: New file with preliminary support for
|
|
drawing to a PostScript file. Most of the ps_surface backend
|
|
functions are just tiny wrappers, deferring to image_surface
|
|
functions to do the real work. Then, in show_page, the image is
|
|
compressed and spit out into the file. Crude and effective.
|
|
|
|
* src/cairo.c (cairo_show_page):
|
|
* src/cairo_gstate.c (_cairo_gstate_show_page):
|
|
* src/cairo_image_surface (_cairo_image_surface_show_page):
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_show_page):
|
|
* src/cairo_surface.c (_cairo_surface_show_page): Implement new
|
|
support for cairo_show_page -- just a stub in the non-PS surfaces.
|
|
|
|
* src/cairo_image_surface.c (_cairo_image_surface_set_filter):
|
|
Export this function for internal use.
|
|
|
|
* src/cairo.h: Added cairo_set_target_ps, cairo_ps_surface_create,
|
|
and cairo_show_page. Noted plans for new cairo_surface_clip_begin,
|
|
perhaps moving some cairo_surface functions to cairo_set_pattern,
|
|
and possibly renaming cairo_matrix_t to cairo_transform_t.
|
|
|
|
* src/Makefile.am (libcairo_la_SOURCES): Added cairo_ps_surface.c.
|
|
|
|
2003-10-31 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_arc):
|
|
(_cairo_gstate_arc_negative): Do nothing when radius <= 0.0,
|
|
(which is much better than the current infinite loop).
|
|
|
|
2003-10-31 Carl Worth <cworth@isi.edu>
|
|
|
|
* Moved all libic-related drawing into cairo_image_surface.c.
|
|
Details below:
|
|
|
|
* src/cairo_xlib_surface.c: Add width, height, format to
|
|
cairo_xlib_surface_t.
|
|
(_cairo_xlib_surface_get_image):
|
|
(_cairo_xlib_surface_set_image): Implement new get_image/set_image
|
|
interface instead of pull_image/push_image.
|
|
(_cairo_xlib_surface_get_image): Fix memory leak that showed up
|
|
with non-Render servers.
|
|
(_cairo_xlib_surface_set_matrix): Implement set_matrix with new
|
|
interface.
|
|
(_render_operator): Translate from cairo_operator_t to
|
|
Render-defined operator values rather than assuming they are the
|
|
same.
|
|
|
|
* src/cairo_surface.c: Move all libic-related code into
|
|
cairo_image_surface.c. cairo_surface is now a thin wrapper around
|
|
concrete surface types, (with fallback code to cairo_image_surface
|
|
whenever a backend does not provide support for a particular
|
|
function). Remove checks for NULL backend functions.
|
|
(_cairo_surface_get_image):
|
|
(_cairo_surface_set_image): New interface to replace
|
|
pull_image/push_image. Now uses a cairo_image_surface rather than
|
|
an IcImage and now also passes it externally rather than storing
|
|
it in the surface.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_fini):
|
|
(_cairo_gstate_set_target_surface):
|
|
(_cairo_gstate_set_rgb_color): Avoid useless calls to
|
|
cairo_surface_destroy for NULL surfaces.
|
|
(_cairo_gstate_show_surface):
|
|
(_cairo_gstate_clip):
|
|
(_cairo_gstate_clip_and_composite_trapezoids):
|
|
(_cairo_gstate_begin_group): Add status checking for calls to
|
|
surface_create_similar, surface_fill_rectangles,
|
|
surface_composite, and surface_composite_trapezoids.
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_show_glyphs): Remove one
|
|
gratuitous level of nesting.
|
|
(_cairo_ft_font_show_glyphs): Bubble up NULL_MEMORY status.
|
|
|
|
* src/cairo.h: Portability improvements: Remove include of
|
|
X11/extensions/Xrender.h. Move include down near the freetype
|
|
include.
|
|
cairo_format_t: Eliminate Render-based values for this enum.
|
|
cairo_operator_t: Eliminate Render-based values. Drop
|
|
disjoint/conjoint operators.
|
|
cairo_filter_t: Eliminate libic-based values for this enum.
|
|
Add cairo_image_surface_create and cairo_image_surface_create_for_data.
|
|
|
|
* src/cairo.c (cairo_status_string): Add new CAIRO_STATUS_NULL_POINTER.
|
|
This can be returned only if the user passes a NULL object in to a
|
|
cairo function.
|
|
|
|
* src/cairoint.h: Move include of <X11/extensions/Xrender.h> from
|
|
cairo.h to here.
|
|
|
|
* src/Makefile.am (libcairo_la_SOURCES): Add
|
|
cairo_image_surface.c. Reformat line continuation characters.
|
|
|
|
* src/cairoint.h: Remove prototypes for obsolete functions:
|
|
_cairo_gstate_set_visual and _cairo_gstate_set_format.
|
|
|
|
2003-10-30 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_destroy): Fix
|
|
memory leaks of surface->gc and surface->ximage.
|
|
(_cairo_xlib_surface_composite):
|
|
(_cairo_xlib_surface_composite_trapezoids): Fix memory leaks of
|
|
cloned surfaces.
|
|
|
|
2003-10-30 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in (CAIRO_VERSION): Bumped version to 0.1.9 for change
|
|
in argument list of cairo_ft_font_create.
|
|
|
|
* src/cairo_ft_font.c: A set of changes to eliminate the static
|
|
FT_Library field, (which could introduce nasty problems with
|
|
respect to threading). With the new code, each font created with
|
|
the toy API will own its own FT_Library. Meanwhile,
|
|
cairo_ft_font_create now accepts an FT_Library parameter.
|
|
|
|
* src/cairo_ft_font.c: Add ft_library field so that fonts that own
|
|
their own FT_Library can also clean it up. Eliminate static
|
|
FT_Library and _init_cairo_ft_lib.
|
|
(cairo_ft_font_create): Now accepts an FT_Library argument.
|
|
(_cairo_ft_font_create): Create an FT_Library owned by this font,
|
|
(this only happens as part of the "toy API")
|
|
(_cairo_ft_font_destroy): Clean up ft_font->ft_library if
|
|
necessary.
|
|
(cairo_ft_font_create_for_ft_face): Initialize ft_library and
|
|
owns_ft_library.
|
|
|
|
* src/cairo.h: Add FT_Library parameter to cairo_ft_font_create.
|
|
|
|
2003-10-30 Carl Worth <cworth@isi.edu>
|
|
|
|
* cairo_font: A few cleanups to eliminate a memory leak.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init_copy):
|
|
(_cairo_gstate_fini):
|
|
(_cairo_gstate_select_font):
|
|
(_cairo_gstate_set_font): Replace calls to _cairo_font_fini with
|
|
cairo_font_destroy.
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_destroy): Rename
|
|
_cairo_ft_font_close to _cairo_ft_font_destroy.
|
|
|
|
* src/cairo_font.c: Eliminate unnecessary cairo_font_fini
|
|
function.
|
|
(cairo_font_destroy): Put reference decerement here where it
|
|
belongs.
|
|
|
|
* src/cairoint.h: Eliminate unnecessart family, slant, and weight
|
|
fields from cairo_font_t.
|
|
Rname font backend->close to backend->destroy.
|
|
|
|
2003-10-28 Carl Worth <cworth@isi.edu>
|
|
|
|
* README: Updated to match latest text from web page. Fixed stale
|
|
references to Xc and xrtest.
|
|
|
|
2003-10-28 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_xlib_surface.c (_cairo_xlib_surface_pixels_per_inch):
|
|
Implement new backend function.
|
|
|
|
* src/cairo_surface.c (_cairo_surface_pixels_per_inch): Add new
|
|
function to query surface pixels_per_inch.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init): Rename gstate->ppm to
|
|
gstate->pixels_per_inch. Swithc from default 3780 pixels per meter
|
|
to 96.0 pixels per inch which is slightly different.
|
|
|
|
2003-10-28 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_ensure_source):
|
|
(_cairo_gstate_clip_and_composite_trapezoids):
|
|
(_cairo_gstate_clip):
|
|
(_cairo_gstate_show_surface): Track changes to
|
|
_cairo_surface_create_similar_solid.
|
|
|
|
* src/cairo_surface.c (_cairo_surface_create_similar_solid): Now
|
|
that this function is internal, it can accept a cairo_color_t
|
|
which makes the interface much cleaner.
|
|
|
|
* src/cairo.h: Remove problematic function
|
|
cairo_surface_create_similar_solid from the public API.
|
|
|
|
2003-10-28 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_surface.c (_cairo_surface_composite):
|
|
(_cairo_surface_fill_rectangles):
|
|
(_cairo_surface_composite_trapezoids): Fix bug introduced in last
|
|
commit: must check for NULL backend function before calling
|
|
through it.
|
|
|
|
2003-10-27 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_surface.c (_cairo_surface_composite):
|
|
(_cairo_surface_fill_rectangles):
|
|
(_cairo_surface_composite_trapezoids): backend functions must not
|
|
be NULL. Track new cairo_int_status_t return value for backend
|
|
drawing functions.
|
|
|
|
* src/cairo_xlib_surface.c: Remove casts when initializing
|
|
cairo_xlib_surface_backend. Rename cairo_xlib_surface as
|
|
cairo_xlib_surface_t.
|
|
(_cairo_xlib_surface_create_similar):
|
|
(_cairo_xlib_surface_destroy):
|
|
(_cairo_xlib_surface_pull_image):
|
|
(_cairo_xlib_surface_push_image):
|
|
(_cairo_xlib_surface_set_matrix):
|
|
(_cairo_xlib_surface_set_filter):
|
|
(_cairo_xlib_surface_set_repeat):
|
|
(_cairo_xlib_surface_composite):
|
|
(_cairo_xlib_surface_fill_rectangles):
|
|
(_cairo_xlib_surface_composite_trapezoids): Track changes in
|
|
cairo_surface_backend API.
|
|
|
|
* src/cairoint.h: cairo_surface_backend now accepts a void * for
|
|
the virtual surface.
|
|
|
|
2003-10-27 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_create): Default to normal
|
|
slant/weight on out-of-range values.
|
|
Add missing include of fontconfig/fcfreetype.h.
|
|
|
|
2003-10-24 Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo_ft_font.c: (_cairo_ft_font_show_glyphs):
|
|
A HORRIBLE KLUDGE to repad glyph images from freetype to
|
|
meet libic requirements.
|
|
|
|
2003-10-24 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo_ft_font.c (_init_cairo_ft_lib): Fix missing void from
|
|
function prototype.
|
|
(_utf8_to_ucs4): Mark static.
|
|
|
|
* src/cairo_xlib_surface.c: Remove unused function
|
|
_cairo_xlib_surface_get_picture.
|
|
|
|
* src/cairo_ft_font.c (_cairo_ft_font_copy)
|
|
(_cairo_ft_font_glyph_extents, _cairo_ft_font_glyph_path):
|
|
Internal functions can't receive a NULL font pointer.
|
|
|
|
* src/cairo.c (cairo_text_extents, cairo_glyph_extents)
|
|
(cairo_text_path, cairo_glyph_path): Comment-out functions without
|
|
complete implementations to squelch compiler warnings.
|
|
|
|
* configure.in: Bump version to 0.1.8 for font API changes.
|
|
|
|
* src/cairo.c (cairo_current_font): Fix missing return value.
|
|
|
|
* src/cairoint.h: No need for CAIRO_INT_STATUS_NULL_POINTER
|
|
(CAIRO_FONT_BACKEND_DEFAULT): Move declaration of default font
|
|
backend up into cairoint.h
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init): Create a default font,
|
|
don't leave it NULL.
|
|
(_cairo_gstate_current_font): gstate->font must never be NULL.
|
|
(_cairo_gstate_current_font_extents): Can never be called with a
|
|
NULL gstate.
|
|
|
|
* src/cairo_font.c (_cairo_font_create): Rename
|
|
_cairo_font_create_font and move to top of file.
|
|
(_cairo_font_init, _cairo_font_scale, _cairo_font_transform)
|
|
(_cairo_font_text_extents, _cairo_font_glyph_extents)
|
|
(_cairo_font_show_text, _cairo_font_show_glyphs)
|
|
(_cairo_font_text_path, _cairo_font_glyph_path)
|
|
(_cairo_font_font_extents): These internal functions can never be
|
|
called with a NULL font.
|
|
|
|
2003-10-23 Graydon Hoare <graydon@redhat.com>
|
|
|
|
* src/cairo_ft_font.c: New file.
|
|
* src/Makefile.am: Add cairo_ft_font.c
|
|
* src/cairo.c:
|
|
* src/cairo.h:
|
|
* src/cairo_font.c:
|
|
* src/cairo_gstate.c:
|
|
* src/cairo_xlib_surface.c:
|
|
* src/cairoint.h: Change to virtual font interface.
|
|
|
|
2003-10-23 Carl Worth <cworth@isi.edu>
|
|
|
|
* TODO: Added notes on some missing functions. Update PostScript
|
|
comparison with respect ot new arc functions.
|
|
|
|
2003-10-23 Carl Worth <cworth@isi.edu>
|
|
|
|
* Many files: Fixed Copyright statements to read "University of
|
|
Southern California" rather than "USC, Information Sciences
|
|
Institute" as the university is the actual corporation.
|
|
|
|
2003-10-11 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo-xlib.h: Add extern "C" stuff. (Thanks to Soory Kuloor
|
|
for the reminder).
|
|
|
|
2003-10-09 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_font.c: Stub out NULL_POINTER errors as
|
|
CAIRO_STATUS_SUCCESS so that drawing to off-screen images still
|
|
works even though text does not yet.
|
|
|
|
2003-10-04 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_hull.c (_cairo_hull_compute): Add cairo_hull.c to
|
|
compute a convex hull, (using Graham scan algorithm).
|
|
|
|
* src/cairo_pen.c (_cairo_pen_add_points): Generate convex hull of
|
|
pen after adding new points.
|
|
|
|
* src/cairoint.h: Rename pen->vertex to pen->vertices
|
|
|
|
* Replaced "pt" with "point" in about a zillion places.
|
|
|
|
* src/cairo.c (cairo_destroy): Fix to continue with destroy even
|
|
in the face of non-zero status.
|
|
(cairo_set_target_surface):
|
|
(cairo_set_target_image): Don't do anything even if cr->status is
|
|
CAIRO_STATUS_NO_TARGET_SURFACE.
|
|
(cairo_status_string): Report "<unknown error status>" rather than
|
|
en empty string.
|
|
|
|
2003-10-01 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init_copy): Don't choke if
|
|
asked to copy a gstate with a NULL font.
|
|
|
|
* src/cairo_font.c (_cairo_font_init):
|
|
(_cairo_font_init_copy):
|
|
(_cairo_font_copy):
|
|
(_cairo_font_fini):
|
|
(_cairo_font_select):
|
|
(_cairo_font_scale):
|
|
(_cairo_font_transform):
|
|
(_cairo_font_text_extents):
|
|
(_cairo_font_show_text): Return immediately if passed a NULL pointer.
|
|
|
|
2003-09-30 Jamey Sharp <jamey@minilop.net>
|
|
|
|
* src/Makefile.am, src/cairo.c, src/cairo.h, src/cairo_font.c,
|
|
src/cairo_gstate.c, src/cairo_surface.c, src/cairoint.h:
|
|
Virtualized font and surface backends. All Xlib/Xft calls are in
|
|
cairo_xlib_surface.c/cairo-xlib.h now. Resolves a TODO item.
|
|
|
|
2003-09-30 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo.c (cairo_copy): Don't copy a gstate if src->status != 0.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init_copy): Be careful to
|
|
preserve gstate->next.
|
|
(_cairo_gstate_copy): New function to support cairo_copy.
|
|
|
|
* src/cairo.c (cairo_copy): Fixed horribly botched implementation
|
|
of cairo_copy.
|
|
|
|
* configure.in: Bumped version to 0.1.7 to indicate change in
|
|
cairo_copy.
|
|
|
|
* src/cairo.c (cairo_copy): Changed cairo_copy to copy graphics
|
|
state from one cairo_t to another rather than allocating a new
|
|
cairo_t.
|
|
|
|
* src/cairo_surface.c (cairo_surface_destroy):
|
|
(cairo_surface_create_similar_solid): Fix to delay XFreePixmap
|
|
until cairo_surface_destroy.
|
|
|
|
2003-09-29 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* TODO: Remove arc notes since arcs are done.
|
|
|
|
* src/cairo_surface.c (_cairo_surface_composite): Fix bug
|
|
(IcImageGetHeight instead of IcImageGetWidth) from Graydon Hoare
|
|
<graydon@redhat.com>.
|
|
|
|
2003-09-29 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in (CAIRO_VERSION): Bumpred version to 0.1.6 to
|
|
indicate new cairo_arc and cairo_arc_negative.
|
|
|
|
* src/cairo_gstate.c (_arc_error_normalized):
|
|
(_arc_max_angle_for_tolerance_normalized):
|
|
(_cairo_gstate_arc_segments_needed):
|
|
(_cairo_gstate_arc_segment):
|
|
(_cairo_gstate_arc_dir):
|
|
(_cairo_gstate_arc):
|
|
(_cairo_gstate_arc_negative): Several new functions to implement
|
|
arc support.
|
|
|
|
* src/cairo.h: Added cairo_arc and cairo_arc_negative.
|
|
|
|
* src/cairo.c (cairo_arc):
|
|
(cairo_arc_negative): Added new arc support.
|
|
|
|
2003-09-27 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairoint.h: Fixed several enum symbols that had been
|
|
mistakenly converted to lowercase at some point.
|
|
Consolidated cairo_path_direction_t and
|
|
cairo_pen_stroke_direction_t into cairo_direction_t.
|
|
Removed accidental addition of two _print_svg functions that had
|
|
been used for debugging temporarily.
|
|
|
|
2003-09-25 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in (CAIRO_VERSION): Bumped version to 0.1.5 to
|
|
indicate removal of cairo_path_t and related functions.
|
|
|
|
* src/cairo.h: Decided that we don't actually need any of the
|
|
cairo_path_t functionality exposed in the commit earlier
|
|
today. Ripped all of that back out.
|
|
|
|
* configure.in (CAIRO_VERSION): Bumped version to 0.1.4 for new
|
|
exposed cairo_path_t and related functions.
|
|
|
|
* src/cairo_path.c (cairo_path_create):
|
|
(_cairo_path_copy):
|
|
(cairo_path_destroy): New create/copy/destroy functions for paths.
|
|
(_cairo_path_init): Added current_pt state to cairo_path_t.
|
|
(cairo_path_rel_move_to):
|
|
(cairo_path_rel_line_to):
|
|
(cairo_path_rel_curve_to): Added relative path creation functions,
|
|
(relative stufff used to be done internally in cairo_gstate).
|
|
(_cairo_path_set_ctm_inverse):
|
|
(_cairo_path_transform): Added functions to transform all
|
|
coordinates in a path.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init): Moved all current_pt
|
|
state out of cairo_gstate and into cairo_path.
|
|
(_cairo_gstate_copy): Renamed _cairo_gstate_clone to
|
|
_cairo_gstate_copy for consitency with other functions, (though I
|
|
may reconsider and rename all of them to _clone).
|
|
(_cairo_gstate_current_path):
|
|
(_cairo_gstate_set_path): New functions for "user path" support.
|
|
|
|
* src/cairo.h: Expose new opaque cairo_path_t object along with
|
|
several new public functions: cairo_set_path, cairo_current_path,
|
|
cairo_path_create, cairo_path_destroy, cairo_path_move_to,
|
|
cairo_path_line_to, cairo_path_curve_to, cairo_path_rel_move_to,
|
|
cairo_path_rel_line_to, cairo_path_rel_curve_to,
|
|
cairo_path_close_path, cairo_path_current_point.
|
|
|
|
* src/cairo.c (cairo_set_path, cairo_current_path): Added
|
|
functions to get/set current path.
|
|
|
|
2003-09-16 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_surface.c (cairo_surface_create_similar_solid): Fixed
|
|
massive pixmap leak, (at least one pixmap for every set_rgb_color)
|
|
|
|
* configure.in (CAIRO_VERSION): Bumped to 0.1.3 for new functions:
|
|
cairo_reference and cairo_surface_reference.
|
|
|
|
* src/cairo_surface.c (cairo_surface_reference): Export
|
|
cairo_surface_reference.
|
|
|
|
* src/cairo.c (cairo_reference): Add new function to increase
|
|
reference count of cairo_t.
|
|
(cairo_create):
|
|
(cairo_copy):
|
|
(cairo_destroy): Make these functions aware of the new reference
|
|
count.
|
|
|
|
2003-09-15 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* configure.in: Require xrender >= 0.6.0
|
|
|
|
* src/cairo_surface.c (_cairo_x11_surface_put_image): Make static.
|
|
|
|
2003-09-15 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo.c (cairo_restore): Fix to catch invalid restore rather
|
|
than just catching the second invalid restore. Fix from Keith
|
|
Packard <keithp@keithp.com>.
|
|
|
|
2003-09-12 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo_surface.c (cairo_surface_create_similar_solid): Don't
|
|
try to create depth-32 pixmaps on non-Render servers.
|
|
(_cairo_surface_push_image): Fixed massive memory leak.
|
|
|
|
2003-09-09 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in (PKG_CHECK_MODULES): Updated calls to
|
|
slim_hidden_def to track changes in slim 0.2.0.
|
|
|
|
2003-09-05 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in (PKG_CHECK_MODULES): Require libic >= 0.1.1
|
|
|
|
* src/cairo_surface.c (_create_icformat_for_visual):
|
|
(_create_icformat_for_format): Updates for new libic interface.
|
|
(cairo_x11_surface_put_image): Rename cairo_surface_put_image to
|
|
cairo_x11_surface_put_image.
|
|
(_cairo_surface_pull_image):
|
|
(_cairo_surface_push_image): First real implementation of
|
|
push/pull_image, (thanks for help from Graydon Hoare
|
|
<graydon@redhat.com>). This provides support for running Cairo on
|
|
X servers that do not have the RENDER extension. (Note: This is
|
|
still woefully slow).
|
|
|
|
* src/cairo_path_stroke.c (_cairo_stroker_join): Switch to
|
|
_cairo_fixed functions.
|
|
|
|
* src/cairo_path_bounds.c (_cairo_path_bounds): Use cairo_fixed
|
|
rather than X macros.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_current_point): If not
|
|
explicitly set, current point is (0,0) in user space.
|
|
(_cairo_gstate_show_text): Fix to place text at user-space origin
|
|
if there is no current point.
|
|
(_cairo_gstate_show_surface): Optimize to pass NULL mask if alpha
|
|
== 1.0.
|
|
(_cairo_gstate_show_surface): Fixe to use current_point rather
|
|
than (0,0).
|
|
|
|
* src/cairo.h: Removed cairo_surface_put_image.
|
|
|
|
* src/Makefile.am (libcairo_la_SOURCES): Added cairo_fixed.c
|
|
|
|
2003-09-05 Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo_path_stroke.c: comment face computations, check for
|
|
reflecting transformation to select correct face orientations
|
|
|
|
* src/cairo_pen.c: check for reflecting transform when computing
|
|
pen to ensure consistent pen orientation
|
|
|
|
2003-09-05 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* configure.in: Bumped version to 0.1.2 for new cairo_copy
|
|
function.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init): Fixed uninitialized
|
|
current_pt values.
|
|
(_cairo_gstate_clone): Force gstate->next to NULL after cloning,
|
|
to prevent the clone from trashing the former stack.
|
|
|
|
* src/cairo.c (cairo_create): Folded _cairo_init into cairo_create.
|
|
(cairo_destroy): Folded _cairo_fini into cairo_dstroy.
|
|
(cairo_copy): Added new cairo_copy function.
|
|
|
|
2003-09-05 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_show_text): Fix crash due to
|
|
missing call to ensure_source.
|
|
|
|
2003-09-04 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairoint.h (DEPRECATE): Changed DEPRECATE mechanism to
|
|
preseve binary compatibility, but break source-level
|
|
compatibility.
|
|
|
|
2003-09-04 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_init): Combine gstate->pattern
|
|
and gstate->solid into a single gstate->source.
|
|
(_cairo_gstate_set_rgb_color): Defer creation of gstate->source
|
|
until the stroke or fill.
|
|
(_cairo_gstate_ensure_source): New function to combine duplicated
|
|
code.
|
|
(_cairo_gstate_stroke):
|
|
(_cairo_gstate_fill): Now must ensure that gstate->source has been
|
|
created.
|
|
|
|
* src/cairo.c (cairo_set_target_surface):
|
|
(cairo_set_target_drawable):
|
|
(cairo_set_target_image): These functions can now clear
|
|
status==CAIRO_STATUS_NO_TARGET_SURFACE. This is a clean solution
|
|
to the bug of a SEGV if cairo_stroke/cairo_fill are called before
|
|
cairo_set_target.
|
|
|
|
* BUGS: Removed two fixed bugs, (SEGV if cairo_set_rgb_color
|
|
called before cairo_set_target and SEGV if cairo_fill called
|
|
before cairo_set_rgb_color)
|
|
|
|
2003-09-04 Keith Packard <keithp@keithp.com>
|
|
|
|
* src/cairo_path_stroke.c: added comments describing miter
|
|
join code and miter limit computation. Replace XFoo with cairo_foo
|
|
for double and fixed
|
|
|
|
* src/cairoint.h: add cairo_fixed_to_double and cairo_double_to_fixed
|
|
Carl says he's got similar code, so he'll have to fix things if I
|
|
get this committed quickly enough.
|
|
|
|
2003-09-04 Carl Worth <cworth@isi.edu>
|
|
|
|
* util/cairo-api-update: Added script to update source code using
|
|
Cairo to the latest API.
|
|
|
|
* configure.in (CAIRO_VERSION): Bumped version to 0.1.1
|
|
|
|
* src/cairoint.h (DEPRECATE): Added magic DEPRECATE macro which
|
|
provides an asm-based alias for old function names. This works on
|
|
ELF systems with gcc version >= 2.
|
|
|
|
* src/cairo.h (cairo_get_status_string): Deprecated all
|
|
cairo_get_* names in favor of cairo_current_*. The deprecated
|
|
function names will trigger either a warning or a link error, but
|
|
in both cases with a useful message giving both the old and new
|
|
name of the function. Three of the function name changes are
|
|
different than the single word substituion:
|
|
cairo_get_current_color -> cairo_current_color
|
|
cairo_get_status -> cairo_status
|
|
cairo_get_status_string -> cairo_status_string
|
|
|
|
2003-09-03 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo.h: Change cairo_get_matrix interface to accept a
|
|
cairo_matrix_t* rather than 6 double*.
|
|
|
|
* src/cairo.c (cairo_get_matrix): Add implementation of cairo_get_matrix.
|
|
|
|
2003-08-29 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_surface.c (_cairo_surface_composite): Optimized case
|
|
where src is in memory, dst is on server, and mask is NULL. Will
|
|
now do a single XPutImage rather than the painful
|
|
GetImage/PutImage dance of the general code.
|
|
|
|
2003-08-28 Carl Worth <cworth at east.isi.edu>
|
|
|
|
* src/cairo_traps.c (_line_segs_intersect_ceil): One more
|
|
increment, (that still won't fix the bug). Added comment point to
|
|
Hobby's paper, (that will fix it).
|
|
|
|
* src/cairo_font.c (_cairo_font_resolve_xft_font): Fixed to use
|
|
fabs instead of abs when correcting for negative area expansion.
|
|
|
|
2003-08-28 Keith Packard <keithp@keithp.com
|
|
* src/cairo_font.c: font pixel size is always non-negative
|
|
|
|
2003-08-26 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairoint.h: Added missing underscores to several internal
|
|
functions.
|
|
* src/cairo_font.c:
|
|
* src/cairo_gstate.c:
|
|
* src/cairo_matrix.c:
|
|
* src/cairo_path_fill.c:
|
|
* src/cairo_path_stroke.c:
|
|
* src/cairo_pen.c:
|
|
* src/cairo_traps.c: Fixed to track newly added underscores.
|
|
|
|
* src/cairo.h: Some whitespace fixes.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_set_pattern): Fixed to anchor
|
|
pattern at current point instead of the origin.
|
|
(_cairo_gstate_stroke): Fixed to properly transform pattern.
|
|
(_cairo_gstate_fill): Fixed to properly transform pattern.
|
|
|
|
2003-07-31 Richard Henderson <rth@twiddle.net>
|
|
|
|
* src/cairo_color.c (CAIRO_COLOR_DEFAULT): Mark const.
|
|
* src/cairo_matrix.c (CAIRO_MATRIX_IDENTITY): Likewise.
|
|
* src/cairo_path.c (num_args): Likewise.
|
|
* src/cairo_path_bounds.c (_cairo_path_bounds): Likewise for cb.
|
|
|
|
2003-07-31 Richard Henderson <rth@twiddle.net>
|
|
|
|
* cairo.pc.in: Depend on slim.
|
|
* configure.in: Check for slim.
|
|
|
|
* src/cairo.h: Include slim_{export,import}.h as needed; mark all
|
|
symbols __external_linkage.
|
|
* src/cairoint.h: Include slim_internal.h; mark all symbols
|
|
__internal_linkage. Provide slim_hidden_proto symbols as needed.
|
|
* src/cairo.c, src/cairo_matrix.c, src/cairo_surface.c,
|
|
Provide slim_hidden_def symbols as needed.
|
|
* src/cairo_traps.c (cairo_traps_add_trap): Mark static.
|
|
(cairo_traps_add_trap_from_points): Likewise.
|
|
|
|
2003-07-30 Carl Worth <cworth@isi.edu>
|
|
|
|
* configure.in (LIBIC_REQUIRED): Fixed some typos in the libic
|
|
PKG_CHECK.
|
|
|
|
* src/cairoint.h:
|
|
* src/cairo.c: Fixed a disagreement over whether some internal
|
|
cairo_gstate_t functions had an '_' prefix or not.
|
|
|
|
* src/cairo_traps.c (_line_segs_intersect_ceil): Add one more
|
|
conditional intersect to push past some fill bugs.
|
|
|
|
* src/cairo_surface.c (cairo_surface_create_for_drawable):
|
|
(cairo_surface_create_for_image):
|
|
(cairo_surface_put_image):
|
|
(_cairo_surface_pull_image):
|
|
(_cairo_surface_push_image):
|
|
(cairo_surface_set_matrix):
|
|
(cairo_surface_get_matrix):
|
|
(cairo_surface_set_repeat):
|
|
(_cairo_surface_composite):
|
|
(_cairo_surface_fill_rectangle):
|
|
(_cairo_surface_fill_rectangles):
|
|
(_cairo_surface_composite_trapezoids): Absorb all functionality
|
|
previously in the Xc library.
|
|
|
|
* src/cairo_pen.c (_cairo_pen_init): Don't store floating point
|
|
theta in the pen. Instead, sort vertices by fixed point slope
|
|
comparisons.
|
|
(_cairo_pen_add_points): Fixed to remove duplicate pen vertices
|
|
appearing at beginning and end of vertex array.
|
|
(_pen_vertex_compare): New fixed-point "angle" comparison for pen
|
|
vertices. A bit trickier than before, but much more accurate.
|
|
|
|
* src/cairo_path_stroke.c (_cairo_stroker_face_clockwise): Share
|
|
clockwise calculation with other modules.
|
|
|
|
* src/cairo_path_bounds.c:
|
|
* src/cairo_path_fill.c:
|
|
* src/cairo_path_stroke.c:
|
|
* src/cairo_pen.c:
|
|
* src/cairo_polygon.c:
|
|
* src/cairo_spline.c:
|
|
* src/cairo_traps.c:
|
|
* src/cairo_path.c: Replaced all references to
|
|
XFixed, XPointFixed, XLineFixed, and XTrapezoid with new
|
|
cairo_fixed_t, cairo_point_t, cairo_line_t, and cairo_trapezoid_t.
|
|
|
|
* src/cairo_path.c: (_cairo_path_interpret): Made the path
|
|
interpreter callback names consistent, (eg. add_edge rather than
|
|
AddEdge).
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_text_extents): Now silently
|
|
exits for a non X surface, (avoids a crash until we can implement
|
|
the libic text backend).
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_end_group):
|
|
(_cairo_gstate_clip_and_composite_trapezoids):
|
|
(_cairo_gstate_show_surface): Replaced all XcCalls with
|
|
corresponding cairo_surface_calls.
|
|
|
|
* src/cairo_gstate.c (_cairo_gstate_transform_point):
|
|
(_cairo_gstate_transform_font):
|
|
(_cairo_gstate_text_extents): Renamed from the garbled names
|
|
(eg. cairo_gstateransform_point) leftover from the great renaming.
|
|
|
|
* src/cairo_color.c (_cairo_color_set_rgb): Reworked cairo_color_t
|
|
to eliminate reference to an XcColor object.
|
|
|
|
* src/cairo.h: Dropped include of <Xc.h>, added
|
|
<X11/extensions/Xrender.h>, <fontconfig/fontconfig.h>, and <ic.h>
|
|
|
|
* src/cairo.c (cairo_get_fill_rule): Added missing cairo_get_fill_rule.
|
|
|
|
* configure.in (PKG_CHECK_MODULES): Drops xc, add libic
|
|
|
|
* cairo.pc.in (Requires): Drop xc, add libic.
|
|
|
|
2003-07-25 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_traps.c (_line_segs_intersect_ceil): We don't need a
|
|
loop here, (just a conditional increment). This time, we've
|
|
actually done the error analysis to back this up.
|
|
|
|
2003-07-24 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_traps.c (cairo_traps_tessellate_polygon): Massive
|
|
cleanup of polygon tessellation, (it might actually be correct
|
|
now).
|
|
|
|
2003-07-23 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairoint.h: Introduced some cairo_fixed_*_t types. This is
|
|
the first baby step toward ripping X dependencies out of the Cairo
|
|
headers.
|
|
|
|
* src/cairo_traps.c (_compute_x): Converted from floating point to
|
|
fixed point.
|
|
(_line_seg_intersection_ceil): Now increments y value once if the
|
|
initial y value computed is less than the actual intersection
|
|
point.
|
|
|
|
* src/cairo_traps.c (_compare_cairo_edge_by_slope): Converted from
|
|
floating point to fixed point.
|
|
|
|
* src/cairo_pen.c (_slope_clockwise): Converted from floating
|
|
point to fixed point.
|
|
|
|
2003-07-19 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo_traps.c (cairo_traps_tessellate_polygon): Fixed some
|
|
sorting problems with two intersections very near the same
|
|
vertical position. (There are still some reamining problems
|
|
though).
|
|
(cairo_traps_tessellate_polygon): Better fix for the same
|
|
bug. Should cover all cases, (and it's moe efficient too).
|
|
|
|
2003-07-18 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/cairo.h: Fixed some inconsistent tag/typedef names that were
|
|
missed in the great renaming.
|
|
|
|
2003-07-18 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/cairo.h: Renamed everything from Xr* to cairo_*.
|
|
|
|
* util/xr2cairo: Added utility script xr2cairo to help users fix
|
|
their source code.
|
|
|
|
2003-07-03 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/xrmatrix.c (XrMatrixGetAffine): Added XrMatrixGetAffine
|
|
(from Soorya Kuloor)
|
|
|
|
* src/xr.c (XrGetAlpha): Added XrGetAlpha
|
|
(XrGetRGBColor): Added XrGetRGBColor
|
|
|
|
2003-06-12 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/xrgstate.c (_XrGStateScale): Scale by 0 now causes an
|
|
InvalidMatrix error.
|
|
|
|
2003-05-28 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/xrmatrix.c (XrMatrixMultiply): Eliminated
|
|
_XrMatrixMultiplyIntoRight and _XrMatrixMultiplyIntoLeft.
|
|
|
|
* src/xrgstate.c (_XrGStateClipAndCompositeTrapezoids): Fixed
|
|
missing translation of clip surface.
|
|
|
|
* src/Xr.h: Added XrSurfacePutImage
|
|
|
|
2003-05-16 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/xrint.h: Added ppm filed (pixels per meter) to both
|
|
XrSurface and XrGState.
|
|
|
|
* src/xrgstate.c (_XrGStateSetTargetSurface): Fixup CTM according
|
|
to change in surface->ppm.
|
|
(_XrGStateDefaultMatrix): Default matrix is no longer an identity
|
|
matrix, but rather a matrix that provides some relates user space
|
|
units to real-world dimensions in a meaningful way, (default 3780
|
|
user space units per meter). This conversion is not exact, but is
|
|
rather as close as possible while also guaranteeing that one user
|
|
space unit maps to an integer number of device pixels.
|
|
|
|
2003-05-15 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/xr.c (XrSetTargetDrawable): Moved implementation up from
|
|
_XrGStateSetTargetDrawable, (eg. all convenience functions should
|
|
be taken care of at the xr.c level ratehr than xrgstate.c)
|
|
|
|
* src/Xr.h: Added convenience function XrSetTargetImage
|
|
|
|
2003-05-14 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/xrfont.c (_XrFontResolveXftFont): Fixed fonts to pull
|
|
pixelsize out of the transformation matrix. Fonts are now properly
|
|
hinted regardless of scaling.
|
|
|
|
* src/Xr.h: Three new functions for manipulating surfaces:
|
|
XrSurfaceSetMatrix, XrSurfaceGetMatrix, XrSurfaceSetFilter.
|
|
|
|
* src/Xr.h: Removed broken XrShowImage* functions. Changed
|
|
XrShowSurface to not require X/Y but instead depend on the CTM for
|
|
translation, (or the surface transformation matrix). I'd like to
|
|
get rid of width/height as well but it turns out an XrSurface is
|
|
not aware of its dimensions.
|
|
|
|
* src/Xr.h: Added convenience function for building rectangular
|
|
paths: XrRectangle.
|
|
|
|
* src/Xr.h: Added functions for performing transformations with
|
|
the CTM and its inverse: XrTransformPoint, XrTransformDistance,
|
|
XrInverseTransformPoint, XrInverseTransformDistance.
|
|
|
|
* src/Xr.h: XrConcatMatrix and XrSetMatrix now accept a pointer to
|
|
an XrMatrix rather than 6 doubles.
|
|
|
|
* src/Xr.h: Now exporting opaque XrMatrix object with several
|
|
functions: XrMatrixCreate, XrMatrixDestroy, XrMatrixCopy,
|
|
XrMatrixSetIdentity, XrMatrixSetAffine, XrMatrixTranslate,
|
|
XrMatrixScale, XrMatrixRotate, XrMatrixInvert, XrMatrixMultiply,
|
|
XrMatrixTransformDistance, XrMatrixTransformPoint.
|
|
|
|
2003-05-12 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/Xr.h: Added XrSetPattern. See also XrSurfaceSetRepeat.
|
|
|
|
* src/xrpathbounds.c (_XrPathBounds): Moved path bound computation
|
|
to its own file.
|
|
|
|
* src/xrpathstroke.c (_XrPathStrokeToTraps): Moved path stroking
|
|
to its own file.
|
|
|
|
* src/xrpathfill.c (_XrPathFillToTraps): Moved path fililng to its
|
|
own file.
|
|
|
|
* src/xrgstate.c (_XrGStateStroke):
|
|
(_XrGStateFill):
|
|
(_XrGStateClipAndCompositeTrapezoids): Reorganized stroke and fill
|
|
code to go through the same path for clipping.
|
|
|
|
2003-05-02 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* src/Xr.h: Changed XrFormatRGB32 to XrFormatRGB24
|
|
|
|
* src/xrsurface.c (_XrFormatBPP, XrSurfaceCreateForImage)
|
|
(_XrFormatDepth): Fixed for change of XrFormatRGB32 to
|
|
XrFormatRGB24
|
|
|
|
2003-05-01 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/xrpath.c (_XrPathBounderInit):
|
|
(_XrPathBounderDeinit):
|
|
(_XrPathBounderAddPoint):
|
|
(_XrPathBounderAddEdge):
|
|
(_XrPathBounderAddSpline):
|
|
(_XrPathBounderDoneSubPath):
|
|
(_XrPathBounderDonePath):
|
|
(_XrPathBounds): New support for computing the bounding box of a
|
|
path. Currently used internally, (for computing the size of the
|
|
clip surface), and not exported publically.
|
|
|
|
* src/xrgstate.c (_XrGStateStroke): Implemented clip support for
|
|
strokes.
|
|
(_XrGStateClip): New _XrGStateClip function fills the current path
|
|
onto the gstate->clip surface.
|
|
|
|
* src/xr.c (XrClip): Added preliminary/experimental clip
|
|
functionality. The current implementation only clips stroked
|
|
elements, (not fills, images, or text). It's alway quite
|
|
inefficeient.
|
|
|
|
* src/xr.c (XrGetOperator):
|
|
(XrGetTolerance):
|
|
(XrGetLineWidth):
|
|
(XrGetLineCap):
|
|
(XrGetLineJoin):
|
|
(XrGetMiterLimit):
|
|
(XrGetCurrentPoint): Added several new query functions.
|
|
|
|
2003-04-26 Carl Worth <cworth@isi.edu>
|
|
|
|
* src/xrsurface.c (XrSurfaceDestroy): Fix memory leak of
|
|
surface->image_data.
|
|
|
|
2003-04-25 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* configure.in: Fixed libtool versioning
|
|
|
|
2003-04-17 Carl Worth <cworth@isi.edu>
|
|
|
|
* Switched from imake to autotools.
|
|
|
|
* src/xrint.h: XrSurface structure is now greatly simplified,
|
|
(details now handled by XcSurface).
|
|
|
|
* src/Xr.h: Eliminated Display * parameter so Xr can be used for
|
|
non-X drawing.
|
|
Removed XrPushGroup/XrPopGroup.
|
|
Replaced XrSetDrawable/XrSetVisual with XrSetTargetDrawable.
|
|
Added XrSetTargetSurface and several new XrSurfaceCreate
|
|
functions.
|
|
Added XrShowSurface, (functionality overlaps with XrShowImage --
|
|
need to fix this)
|
|
|
|
|
|
2003-02-14 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* xrgstate.c (_XrGStateShowImageTransform): Fixed transformed
|
|
images which were sometimes 1 pixel too tall/wide.
|
|
|
|
2003-02-06 Carl Worth <cworth@isi.edu>
|
|
|
|
* xrpen.c (_XrPenVerticesNeeded): Fixed to use determinant rather
|
|
than eigenvalues to compute maximal scaling of radius. Now avoids
|
|
embarrassing segfaults due to NaN from the eigenvalue computation.
|
|
|
|
2003-01-28 Carl Worth <cworth@isi.edu>
|
|
|
|
* xrtraps.c (_XrTrapsTessellateTriangle): Fixed to not re-order
|
|
the array provided as an argument. (Note: the rectangle and
|
|
polyghon tessellators still perform reordering).
|
|
|
|
* xrstroker.c (_XrStrokerJoin):
|
|
(_XrStrokerCap): Implemented round caps and joins.
|
|
(_XrStrokerDoneSubPath): Fixed initial cap, (was always being
|
|
drawn on the inside previously).
|
|
|
|
* xrpen.c (_XrPenInit): Fixed to keep pen vertex theta values all
|
|
in device space.
|
|
(_XrPenAddPoints): Removed the silly flags from the pen vertices,
|
|
(in favor of just using the FindActiveVertex functions)
|
|
(_XrPenFindActiveCWVertexIndex):
|
|
(_XrPenFindActiveCCWVertexIndex): Added functions needed for round
|
|
caps/joins.
|
|
|
|
* xrgstate.c (_XrGStateSetDash): Fixed to accept a NULL dash array
|
|
to revert to no dashing.
|
|
|
|
2003-01-28 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* xrtraps.c (_XrTrapsTessellateTriangle): Restored triangle
|
|
tessellation functionality, (I think it's correct this time).
|
|
|
|
* xrstroker.c (_XrStrokerJoin): Bevel joins now use triangle
|
|
tessellation rather than polygon tessellation.
|
|
|
|
2003-01-24 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* xrpolygon.c (_XrPolygonAddEdge): Fixed to handle multiple
|
|
sub-polygons.
|
|
|
|
* xrstroker.c (_XrStrokerJoin): Fixed handling of miter limit.
|
|
|
|
* local.def: Added local.def for building outside the xc tree.
|
|
|
|
2002-12-03 Carl Worth <cworth@isi.edu>
|
|
|
|
* xrstroker.c (_XrStrokerJoin):
|
|
(_XrStrokerCap): Fixed to track change in winding rule parameter
|
|
to XrTrapsTessellatePolygon, (otherwise self-intersecting splines
|
|
suddenly had holes).
|
|
|
|
* xrpen.c (_XrPenStrokeSpline): Fixed to track change in winding
|
|
rule parameter to XrTrapsTessellatePolygon.
|
|
|
|
2002-11-11 Carl Worth <cworth@isi.edu>
|
|
|
|
* xrtransform.c (_XrTransformBoundingBox): Added support for
|
|
transforming a bounding box, (an axis-aligned rectangle prior to
|
|
transformation). The ShowImage support needs this.
|
|
(_XrTransformComputeInverse): Now catches error case for
|
|
non-invertible matrix.
|
|
|
|
* xrsurface.c (_XrSurfaceSetTransform): Fixed ordering of matrix
|
|
for call to RenderSetPictureTransform
|
|
|
|
* xrgstate.c (_XrGStateSetMatrix):
|
|
(_XrGStateIdentityMatrix): Support for new Xr matrix functions.
|
|
(_XrGStateShowImage):
|
|
(_XrGStateShowImageTransform): Fixed transformation of images.
|
|
|
|
* xr.c (XrSetMatrix):
|
|
(XrDefaultMatrix):
|
|
(XrIdentityMatrix): Added 3 matrix manipulation functions.
|
|
|
|
2002-11-04 Carl Worth <cworth@isi.edu>
|
|
|
|
* xrsurface.c (_XrSurfaceDereference):
|
|
(_XrSurfaceDereferenceDestroy): Fixed bug in reference counting
|
|
logic.
|
|
(_XrSurfaceSetDrawableWH): XrSurface now keeps track of its width/height.
|
|
(_XrSurfaceGetDrawable):
|
|
(_XrSurfaceGetWidth):
|
|
(_XrSurfaceGetHeight):
|
|
(_XrSurfaceGetDepth): New accessor functions.
|
|
|
|
* xrgstate.c (_XrGStateBeginGroup):
|
|
(_XrGStateEndGroup): Preliminary group support. Not too efficient
|
|
since it always composite's a full-size picture from child group
|
|
to parent picture, (even if only a small portion has
|
|
non-transparent pixels).
|
|
(_XrGStateShowImageTransform): Fixed show image to use current
|
|
alpha value.
|
|
|
|
* xrfont.c (_XrFontResolveXftFont): Fixed memory leak
|
|
(FcPatternDestroy). There's still some meory
|
|
leaking/left-reachable in Xft/fontconfig that I need to track
|
|
down.
|
|
|
|
* xr.c (XrPushGroup):
|
|
(XrPopGroup): Added preliminary group support. I think I like
|
|
having this in the API as it takes several burdens away from the
|
|
user, (plus it matches the PDF model). Things to do still: think
|
|
about the names of these functions. Re-read the PDF semantics to
|
|
see if we're missing anything.
|
|
|
|
2002-11-02 Carl Worth <cworth@isi.edu>
|
|
|
|
* xrsurface.c (_XrSurfaceSetImage): Fixed leak of the image
|
|
pixmap.
|
|
|
|
2002-11-01 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* xrsurface.c (_XrSurfaceSetImage): Prelimary image
|
|
support. Really only works with ARGB32. I still need to think
|
|
about what formats will be supported.
|
|
(_XrSurfaceSetTransform): Partial support for transformed
|
|
surfaces.
|
|
(_XrSurfaceGetXcSurface): Moved all creation/destruction of the
|
|
XcSurface into this function so that it is only lazily created
|
|
when needed.
|
|
|
|
* xrgstate.c (_XrGStateSetCurrentPt): gstate now can throw errors
|
|
when an operation needs current point, but it doesn't exist yet.
|
|
(_XrGStateShowImage, _XrGStateShowImageTransform): Preliminary
|
|
image support, (currently it only scales according to the CTM. The
|
|
matrix passed with the image doesn't do anything yet.)
|
|
|
|
* xrfont.c (_XrFontInitCopy): Removed bogus out of memory errors.
|
|
|
|
* xr.c (XrShowImage, XrShowImageTransform): Added very preliminary
|
|
image support. Things don't work completely yet and all the
|
|
interfaces are likely to change.
|
|
(XrGetStatusString): Added function to map status values to strings.
|
|
|
|
2002-10-31 Carl Worth <cworth@isi.edu>
|
|
|
|
* xrfont.c (_XrFontInit):
|
|
(_XrFontInitCopy):
|
|
(_XrFontDeinit):
|
|
(_XrFontSelect):
|
|
(_XrFontResolveXftFont): Updated by ripping all font support from
|
|
Xc and just putting a couple of calls to Xft and fontconfig right
|
|
here in xrfont.
|
|
|
|
* xr.c (XrTextExtents): Added XrTextExtents.
|
|
|
|
2002-10-29 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* xrgstate.c (_XrGStateSelectFont, _XrGStateScaleFont)
|
|
(_XrGStateTransformFont, _XrGStateShowText): Added basic font
|
|
support.
|
|
|
|
* xr.c (XrSelectFont, XrScaleFont, XrTransformFont): Added basic
|
|
font support.
|
|
|
|
2002-10-28 Carl Worth <cworth@east.isi.edu>
|
|
|
|
* xrstate.c (_XrStatePop): Added error case for XrRestore without
|
|
matching XrSave.
|
|
|
|
* xrsurface.c (_XrSurfaceInit, _XrSurfaceReference)
|
|
(_XrSurfaceDereference): Added reference counting to XrSurface to
|
|
patch a memory leak.
|
|
|
|
2002-10-26 Carl Worth <cworth@isi.edu>
|
|
|
|
* xrtransform.c (_XrTransformDistance):
|
|
(_XrTransformPoint): changed to use individual X/Y arguments
|
|
rather tha an XPointDouble. This improves readability since
|
|
_XrTransformDistance is now always called with arguments of dx/dy
|
|
rather than pt.x/pt.y.
|
|
|
|
* xrpath.c (_XrPathMoveTo):
|
|
(_XrPathLineTo):
|
|
(_XrPathCurveTo):
|
|
(_XrPathClosePath): replaced public _XrPathAdd with explicit named
|
|
functions. This cleans up the implementation since _XrPathAdd,
|
|
which is unsafe with respect to argument consistency, is now
|
|
private. Also, since the _XrGState now maintains the current
|
|
point, I dropped all relative path operators from the XrPath data
|
|
structures.
|
|
|
|
* xrgstate.c (_XrGStateMoveTo):
|
|
(_XrGStateLineTo):
|
|
(_XrGStateCurveTo):
|
|
(_XrGStateRelMoveTo):
|
|
(_XrGStateRelLineTo):
|
|
(_XrGStateRelCurveTo): Replaces _XrGStateAddPathOp and
|
|
_XrGStateAddUnaryPathOp with explicit named functions for each
|
|
operator type. This change introduces the current point state into
|
|
the XrGState structure rather than postponing its calculation
|
|
until path interpretation.
|
|
|
|
* xrgstate.c (_XrGStateSetDrawable):
|
|
(_XrGStateSetVisual):
|
|
(_XrGStateSetFormat):
|
|
(_XrGStateSetOperator):
|
|
(_XrGStateSetRGBColor):
|
|
(_XrGStateSetTolerance):
|
|
(_XrGStateSetAlpha):
|
|
(_XrGStateSetFillRule):
|
|
(_XrGStateSetLineWidth):
|
|
(_XrGStateSetLineCap):
|
|
(_XrGStateSetLineJoin):
|
|
(_XrGStateSetMiterLimit):
|
|
(_XrGStateTranslate):
|
|
(_XrGStateScale):
|
|
(_XrGStateRotate):
|
|
(_XrGStateConcatMatrix):
|
|
(_XrGStateNewPath): : Added XrStatus return values to many
|
|
functions -- just for consistency, these functions can not return
|
|
errors in any case.
|
|
|
|
* xr.c (XrShowText): Started to ass XrShowText, (still not functional)
|
|
|
|
2002-10-24 Carl Worth <cworth@isi.edu>
|
|
|
|
* xr.c (XrSetFillRule): Added support to set fill rule.
|
|
|
|
2002-10-23 Carl Worth <cworth@isi.edu>
|
|
|
|
* xrtraps.c (_XrTrapsTessellatePolygon): Fix for polygon with
|
|
multiple sub-polygons that are disjoint in Y.
|
|
|
|
2002-07-16 Carl Worth <cworth@isi.edu>
|
|
|
|
* Xr.h: Renamed xrpicture.c to xrsurface.c as part of the move.
|
|
Added XrSetFormat, XrSetOperator, XrSetLineCap, XrSetLineJoin, and
|
|
XrSetMiterLimit, (although the line style drawing code is not all
|
|
in place yet).
|
|
|
|
* xrpath.c (XrPathLineTo): Changed LineTo semantics to be the same
|
|
as MoveTo if there was no previous MoveTo.
|
|
|
|
* xrtraps.c: Added tessellation code, (lifted from
|
|
XRenderCompositeDoublePoly which can now disappear).
|
|
|
|
* xrgstate.c: Changed stroke code to incrementally build a list of
|
|
trapezoids rather than forming one giant polygonal outline and
|
|
rendering that. This should be more efficient.
|
|
(_XrGStateFillPath): Now uses Xr's own tessellation along with
|
|
XcCompositeTrapezoids.
|
|
|
|
* Xr.h: Moved all of Xr away from Xrender to the new Xc library.
|
|
|
|
* xrsurface.c: Renamed from xrpicture.c, (part of the move from
|
|
XRender to Xc).
|
|
|
|
* Started keeping a ChangeLog ;-)
|
|
|
|
|
|
|