Carl Worth
8d09247fcd
Two more instances of copy-and-reference in a single step.
2005-11-07 10:29:37 +00:00
Carl Worth
66e69f18ec
Perform copy and reference in a single step.
...
Remove unnecessary checks for NULL before _destroy() functions. Reset pointers to NULL after _destroy().
2005-11-07 10:26:18 +00:00
Carl Worth
36523b9656
Reorder function bodies to match to match the order of the fields in the structure definition.
2005-11-07 10:17:37 +00:00
Carl Worth
9796a54fa1
Style fix: test-and-bail rather than making the working body conditional.
...
Allow destroy to work on a NULL object.
2005-11-07 10:02:06 +00:00
Carl Worth
201d4e2ce7
Add functions to initialize and copy cairo_stroke_style_t objects.
...
Use new _cairo_stroke_style functions rather than direct modification.
Add missing prototype for _cairo_font_options_init_copy.
2005-11-07 09:49:51 +00:00
Carl Worth
a9e2cf8d9b
Remove unused prototypes for _cairo_gstate_begin_group and _cairo_gstate_end_group.
2005-11-07 09:33:38 +00:00
Carl Worth
ed160b63a1
Add documentation for _cairo_gstate_create, _cairo_gstate_init_copy, and _cairo_gstate_clone.
2005-11-07 09:30:38 +00:00
Carl Worth
fe324c4415
Add a function for copying font options rather than just using direct structure copying.
2005-11-07 09:26:47 +00:00
Carl Worth
f79d48640f
Add missing declarations for status variables. Thanks to Mikael Hallendal for pointing this out.
2005-11-05 22:43:06 +00:00
Carl Worth
9341c254a0
Rename old, rarely used _cairo_array_append to _cairo_array_append_multiple. Add much more common _cairo_array_append. Fix both to return a cairo_status_t. Remove undocumented code to allow a non-copying append when elements is NULL, (let's not encourage unintialized data, shall we?)
...
Cleanup to not rely on undocumented copy-avoidance in _cairo_array_append.
Track change in number of arguments and return value of _cairo_array_append.
2005-11-04 16:13:30 +00:00
Carl Worth
feef096e25
Add documentation for all _cairo_array interface functions.
2005-11-04 15:15:30 +00:00
Carl Worth
39eca22bfe
Rework support in the surface backend for the five basic drawing operations (paint, mask, stroke, fill, and show_glyphs). Now, all 5 operations have backend functions, and all use a consistent convention for argument naming and ordering. The old fill_path has been replaced with a new fill. The old show_glyphs function was recently renamed to old_show_glyphs and has not yet been ported to the new show_glyphs, (so all backends have a NULL show_glyphs function). In fact, of the 5 new backend functions, fill is the only one that has an implementation in any backend. As part of this cleanup a new cairo_stroke_style_t object is introduced to capture the many settings unique to the stroke operation, (line_width, line_cap, line_join, miter_limit, dash, num_dashes, and dash_offset).
...
Track changes in surface backend from fill_path to fill.
Track the new canonical argument naming and ordering for the 5 drawing operations.
Move various stroke style settings into new cairo_stroke_style_t.
Drop NULL fill_path backend function which no longer exists.
2005-11-04 11:16:38 +00:00
Carl Worth
719334c52c
Rename surface->backend->show_glyphs to surface->backend->old_show_glyphs.
...
Move show_glyphs fallback from gstate to surface where it belongs.
Reviewed by: keithp
2005-11-01 16:40:37 +00:00
Keith Packard
a3ae0aecc4
Clean up argument order for _fallback_stroke to match other functions
2005-11-01 10:33:34 +00:00
Carl Worth
a7228cc37a
Originally 2005-10-28 Keith Packard <keithp@keithp.com>:
...
Remove pen_regular field from the gstate.
Move stroke fallback from gstate to surface where it belongs.
Eliminate dependence on cairo_gstate_t object.
Fix to include just cairo-clip-private.h rather than cairo-gstate.private.h.
2005-10-31 16:55:21 +00:00
Tor Lillqvist
3cae05c4c5
Call _cairo_scaled_glyph_set_path().
2005-10-31 11:10:13 +00:00
Keith Packard
1a25220634
Use _cairo_pattern_get_extents in _fallback_paint to bound paint operators.
2005-10-28 21:00:42 +00:00
Keith Packard
83ff8ea194
Bound mask fallback operation by transformed mask and source. This should speed up any applications calling cairo_mask with a bounded source or mask operand.
2005-10-28 20:49:59 +00:00
Keith Packard
93cbc71a79
Split _cairo_operator_bounded into two separate functions _cairo_operator_bounded_by_mask and _cairo_operator_bound_by_source to distinguish between how operators use source and mask operands.
2005-10-28 20:41:22 +00:00
Carl Worth
1540504bd6
Fix leak of pattern (missing _cairo_pattern_fini).
...
Move mask fallback from gstate to surface where it belongs.
Temporarily export some previously private cairo_gstate functions, (soon to become private cairo_fallback functions).
2005-10-27 17:16:46 +00:00
Carl Worth
ce7b19fc34
Move paint fallback from gstate to surface where it belongs.
...
Add clip pointer to surface.
2005-10-27 15:06:53 +00:00
Carl Worth
e406f4b0f0
Add explicit NULLs for unimplmented backend functions to better document what might be improved here.
2005-10-25 16:02:08 +00:00
Carl Worth
8471ad29ab
Add critical bug #4863 to the 1.0.4 roadmap.
2005-10-25 15:57:28 +00:00
Carl Worth
09114cc627
Add mention of suspected bug in PS backend.
2005-10-25 15:55:57 +00:00
Carl Worth
16d79e2129
Mark the composite-integer-translate-source test as now passing for the PS backend (6 to go).
...
Use fallbacks for any operation using a pattern other than a solid pattern, since it's the only type that will actually emit anything right now.
Add comments indicating these functions are not yet implemented.
2005-10-18 16:09:21 +00:00
Carl Worth
85abc42302
Mark the operator-source and trap-clip tests as now passing for the PS backend (7 to go).
...
Replace the surface->fallback_region with a page-level surface->fallback Boolean instead, since that's all it was being used as anyway.
Do nothing in the ps_output->fallback case.
Do nothing in the ! ps_output->fallback case.
Reviewed by: keithp
2005-10-18 15:58:32 +00:00
Carl Worth
c88dbd077a
Added list of 9 remaining PS backend test suite failures to the 1.2.0 roadmap.
2005-10-18 12:41:01 +00:00
Carl Worth
d93767c6ee
Add reference images for antialiasing modes which are basically not applicable to the PS output.
2005-10-18 12:04:41 +00:00
Carl Worth
99d02f2adc
Add verified image for PS output for dash-offset-negative.
2005-10-13 21:04:28 +00:00
Carl Worth
4f97b2edb5
New function to create a snapshot copy of a pattern.
...
Port code to use _init_pattern_with_snapshot rather than _cairo_pattern_init_copy for all source and mask patterns.
New function to create a snapshot copy of a surface (still preliminary---no support for meta-surfaces or any other surface for which acquire_source_surface will fail).
Add new surface->is_snapshot and initialize to FALSE.
Assert that none of these surface-modifying functions are ever called with a snapshot surface.
Reviewed by: keithp, otaylor
2005-10-13 21:00:52 +00:00
Carl Worth
9d27993ced
Add comment for obviously broken function.
2005-10-13 20:15:29 +00:00
Carl Worth
31a561e2c2
Push fill_path fallbacks down from gstate into the surface where all the other fallbacks are.
...
Add _cairo_surface_is_meta.
Add antialias to the fill_path meta-surface command.
Add an antialias parameter to the backend fill_path function.
Fix test description.
Reviewed by: keithp
2005-10-13 16:55:14 +00:00
Carl Worth
097f240c6d
Fix indentation.
2005-10-13 07:33:07 +00:00
Carl Worth
d31d5db04f
Increment libtool versioning to 5:0:3 in anticipation of 1.2.0 which will add interfaces. The motivation for this is to make the 1.1.1 release install a library which will be considered newer than 1.0.2.
...
Add a release-verify-soname-major check to verify that the soname major number is always 2 as part of the release-publish target.
Reviewed by: otaylor
2005-10-13 07:30:15 +00:00
Tor Lillqvist
cd859a23d0
Intersect clip region with target surface so we don't waste time and memory.
...
Reviewed by: cworth
2005-10-12 15:05:09 +00:00
Carl Worth
1fa004f2a6
Add extend-reflect to the 1.2.0 roadmap. Mark dashed splines and clip-all as fixed.
...
Mark extend-reflect as an expected failure.
2005-10-12 14:23:11 +00:00
Carl Worth
7dcbcdf75c
Add a couple of tests to improve our coverage (clipping under both fill rules).
2005-10-12 13:37:00 +00:00
Carl Worth
990dfde447
Add return value at ASSERT_NOT_REACHED.
2005-10-12 13:33:38 +00:00
Carl Worth
67d20cd4b2
Doc churn
2005-10-12 13:24:35 +00:00
Kristian Høgsberg
d794c624cc
Implement non-uniformly spaced color stops for PDF gradients. Patch from Jens Taprogge ( #4722 ).
2005-10-11 13:20:44 +00:00
Billy Biggs
f1044bb3c7
Call it CAIRO_EXTEND_PAD instead of CAIRO_EXTEND_NEAREST.
...
Update everybody to use _PAD instead of _NEAREST.
2005-10-10 12:45:15 +00:00
Kristian Høgsberg
f39816e016
Transform source pattern for _cairo_surface_fill_path() also ( #4673 ).
...
Use cairo_fill_preserve() instead of cairo_save()/cairo_restore().
Add missing return values.
2005-10-10 09:36:39 +00:00
Billy Biggs
7fdf45ce61
Add documentation for the extend modes.
...
Document the extend functions for patterns.
Remove some redundancy in the documentation.
2005-10-10 09:16:21 +00:00
Keith Packard
935764d91c
Switch fallback from list of rects to region. Check operator and patterns for non-ps drawing ability. Operators can sometimes be always opaque, independent of the pattern, sometimes always translucent, independent of the pattern and sometimes depend on whether is translucent.
...
reviewed by: cworth
2005-10-09 20:40:12 +00:00
Keith Packard
a0e970fad2
Add const to _cairo_surface_is_image parameter
2005-10-09 20:31:44 +00:00
Carl Worth
2a3593e35c
Doc SGML churn
2005-10-09 20:01:42 +00:00
Billy Biggs
b207dfe822
Add a new test to start investigating bug 4183.
...
The new test.
Ignore the new test.
2005-10-09 14:51:55 +00:00
Billy Biggs
bb86d6664d
Make space for the new bits needed by expand.
2005-10-09 14:29:54 +00:00
Keith Packard
eeb56e713b
The comment said 'blend over white', the code did 'blend under garbage'. I made the code look like the comment. More tests pass now. mmm.
...
reviewed by: cworth
2005-10-09 14:28:15 +00:00
Carl Worth
951c7a6592
Make surface image data static to work around a bug in cairo-meta-surface.c (not copying source surface pattern data).
2005-10-09 13:33:21 +00:00