Commit graph

2630 commits

Author SHA1 Message Date
Carl Worth
f1db013547 Fix typo that was resulting in device glyph_extents of INT16_MAX in some cases. 2006-10-05 12:31:50 -07:00
Behdad Esfahbod
2041db9196 [Makefile.am] Pass srcdir down to the tests 2006-10-05 11:53:06 -04:00
Carl Worth
bda77f505c perf: Bail if cairo_status returns non-success at the end of a test. 2006-10-04 17:14:12 -07:00
Carl Worth
d15b8f2d6e perf: Add linear and radial gradients to the coverage 2006-10-04 17:14:12 -07:00
Carl Worth
933d845728 Shorten test names in output (drop unneeded _source and _surface) 2006-10-04 17:14:12 -07:00
Carl Worth
fb61fe82d3 perf: Add stroke and fill tests 2006-10-04 17:14:12 -07:00
Carl Worth
d52256df7c perf: Move iteration over sources and operators from paint to new cairo-perf-cover
This will finally allow us to very easily add lots of other
tests that will similarly involve iterating over the various
sources and operators of interest.
2006-10-04 17:14:12 -07:00
Carl Worth
ad02773e9b Remove unused variable 2006-10-04 17:14:12 -07:00
Carl Worth
783b69a8d3 Rename the create_for_status pattern to create_in_error. 2006-10-04 17:14:12 -07:00
Carl Worth
01502471e3 Add new _cairo_pattern_create_for_status so that patterns properly propagate errors.
In particular, many possible error values on a surface provided
to cairo_pattern_create_for_surface were previously being swallowed
and a nil pattern was returned that erroneously reported
CAIRO_STATUS_NO_MEMORY.
2006-10-04 17:14:12 -07:00
Carl Worth
c9c259903d Cast to squelch warning message 2006-10-04 17:14:12 -07:00
Carl Worth
4d2b54a271 Fix cairo_image_surface_create to report INVALID_FORMAT errors.
This adds a new nil cairo_image_surface to hold CAIRO_STATUS_INVALID_FORMAT.
Previously the detected error was being lost and a nil surface was
returned that erroneously reported CAIRO_STATUS_NO_MEMORY.
2006-10-04 17:14:12 -07:00
Carl Worth
7d5fb687af perf/paint: Test image surface as well as similar surface sources 2006-10-04 17:14:12 -07:00
Carl Worth
94759a14da perf/paint: Use loops for sources and operators rather than open coding.
This looks a bit more complicated for now, but will
scaled much better to provide complete coverage as
we extend the cases covered.
2006-10-04 17:14:11 -07:00
Carl Worth
37bc39d82c perf/paint: Dramatically simplify now that we don't need one callback per run.
This commit begins to show the benefits of the reorganization
from the last few commits. Specifically, we don't need a callback
for every run anymore, and now that the cairo_t* is available to
the paint entry function and the size changes only on the outer
loop, (rather than inside cairo_perf_run), there's no need for
the ugly, static cache for the source surface.
2006-10-04 17:14:11 -07:00
Carl Worth
d0aae4dbcf perf: Make cairo_t* available to perf functions 2006-10-04 17:14:11 -07:00
Carl Worth
4406ab1b9e perf: Move the per-size loop from cairo_perf_run to main
The motivation here is to have the cairo_t context available
to the perf funcs before they call into cairo_perf_run, (so
that they can do one-time setup of source etc. for several
runs).
2006-10-04 17:14:11 -07:00
Carl Worth
251bed8640 perf/paint: Make all sizes use a consistent number of iterations
This effectively reverts the change made in:

	3c407aa80a

The justification is that we want to be able to see the
trends of increasing the image size while keeping the test
the same. But changing the number of iterations in a size-
specific way interferes with that. Also, the standard deviation
is almost always better this way, (though it now varies more
by size).

And as a bonus, the total time required to run the suite is now
less.
2006-10-04 17:14:11 -07:00
Behdad Esfahbod
1e0e207509 [check-headers.sh] Don't use '\>' regexp syntax 2006-10-02 14:35:35 -04:00
Carl Worth
3b58d92f5a Add missing 'Since: 1.4' tags to documentation of 'clip getter' functions.
The following documented symbols were missing this tag:

	cairo_clip_extents
	cairo_copy_clip_rectangles
	CAIRO_STATUS_INVALID_INDEX
	cairo_rectangle_t
	cairo_rectangle_list_t
2006-09-29 17:47:01 -07:00
Carl Worth
9cacced88f Add documentation for cairo_rectangle_list_destroy 2006-09-29 17:44:34 -07:00
Alfred Peng
34d11aa3c4 Use pixman_private consistently as prefix not suffix 2006-09-29 17:17:27 -07:00
Alfred Peng
c1495742f7 Add Sun Pro C definition of pixman_private 2006-09-29 17:16:47 -07:00
Carl Worth
28cc64aa20 Fix dependency of 'make doc' so that necessary header files are built first. 2006-09-29 17:08:53 -07:00
Carl Worth
deef1a6675 Rename docs-publish target to doc-publish in order to be consistent with the doc target. 2006-09-29 16:59:27 -07:00
Carl Worth
e6575fb3c7 Fix Makefile bug preventing 'make doc' from succeeding 2006-09-29 16:58:51 -07:00
Carl Worth
beb778f482 Use consistent wording to document cairo_in_fill, cairo_in_stroke, cairo_fill_extents, and cairo_stroke_extents. 2006-09-29 16:56:36 -07:00
Carl Worth
516ca57dd8 tmpl: obnoxious churn 2006-09-29 16:55:22 -07:00
Carl Worth
b99d41a0b0 Fix typo in documentation of cairo_in_fill (thanks to Jonathan Watt) and clarify a bit. 2006-09-29 16:46:39 -07:00
Carl Worth
3c19a6413c perf: Rework the suite to allow multiple performance tests to be defined in one file. 2006-09-29 16:42:44 -07:00
Vladimir Vukicevic
cd6b44e9c9 [test] Fix composite-integer-translate-over test
This test wasn't translating by an integer, but instead by 5.5.  Fixed
test and reference image.
2006-09-29 14:44:00 -07:00
Vladimir Vukicevic
b05400b559 [nquartz] Return correct values from operation setup function
Leftovers from an old half-completed patch that was breaking the world.
This fixes the world, or at least one tiny part of it.
2006-09-28 14:58:49 -07:00
Robert O'Callahan
17eeacfba8 Remove redundant call to _cairo_surface_get_extents
We called it just above with the same parameters.
2006-09-26 15:48:06 -07:00
Carl Worth
e4dc73ab1c Rename test from stale path-data name to copy-path 2006-09-26 15:48:06 -07:00
Carl Worth
5f833c134b Fix cairo_copy_path and cairo_copy_path_flat to propagate errors.
One of these functions was already documented to be doing this, and
the other one should have been. Now the documentation and behavior
for both are consistent, (and the path-data test case verifies this).
2006-09-26 15:48:06 -07:00
Kristian Høgsberg
f9165638bf Compute right index when looking up left side bearing.
When looking up the short entries in the second part of
the hmtx table, compute the size of the first part correctly.

Fix from Adrian, see:

  https://bugs.freedesktop.org/show_bug.cgi?id=8180#c12
2006-09-26 17:33:29 -04:00
Behdad Esfahbod
7c3062240a [configure] Print out whether SVG and PDF surfaces can be tested 2006-09-26 13:54:28 -04:00
Robert O'Callahan
191e108b93 Add clip getters API + tests
Add new public API methods:

void cairo_clip_extents (cairo_t *cr,                                               double *x1, double *y1,
    double *x2, double *y2);
cairo_rectangle_list_t *cairo_copy_clip_rectangles (cairo_t *);
void cairo_rectangle_list_destroy (cairo_rectangle_list_t *);

Also add 'get-clip' and 'get-path-extents' tests.
2006-09-25 23:22:45 -07:00
Robert O'Callahan
a8ca155f83 Fix stroke/fill extents bounding boxes
Correctly return the transformed bounding box for stroke/fill extents,
instead of just transforming the two corners separately.
2006-09-25 23:16:54 -07:00
Robert O'Callahan
37fa632e59 Fix _cairo_matrix_transform_bounding_box to return tightness info
Add return is_tight value to the internal function, indicating whether
the transformed bounds still remain axis-aligned.
2006-09-25 23:14:43 -07:00
Carl Worth
de1915ffd2 ROADMAP: Add a couple of URLs for user-font API discussion 2006-09-25 10:44:08 -07:00
Carl Worth
b146255fa4 ROADMAP: Add infinite-join bug (#8379) to the list for 1.4 2006-09-21 15:30:23 -07:00
Vladimir Vukicevic
303b529195 dash and pattern getter functions
Adds API functions for inspecting the current dash state, as well as
the contents of pattern objects:

  cairo_get_dash
  cairo_get_dash_count
  cairo_pattern_get_rgba
  cairo_pattern_get_surface
  cairo_pattern_get_color_stop_rgba
  cairo_pattern_get_color_stop_count
  cairo_pattern_get_linear_points
  cairo_pattern_get_radial_circles
2006-09-19 12:19:21 -07:00
Vladimir Vukicevic
a56b962428 Add win32 output files to gitignore 2006-09-19 12:19:21 -07:00
Vladimir Vukicevic
8a9b99e596 [perf] Change perf output format, report times in ms, add a few paint tests
This changes the perf test output format to be a little more human friendly,
reporting times in ms instead of seconds.  It also adds a test number
that could be used in the future for specifying an explicit test to run
(test number, target surface, test name, and size uniquiely identify
a test).

Also adds a few paint tests.
2006-09-19 12:19:20 -07:00
Vladimir Vukicevic
e42905b01b [win32,perf] Fix cairo-perf-win32
Make cairo-perf work on win32
2006-09-19 12:19:20 -07:00
Carl Worth
82b710ebc2 Add missing pixman_private to _FbOnes when a function.
This was thanks to a report from crucible (run #2113) since it tested
with older versions of gcc (3.3.6) than most of the cairo developers
use, (so we had been getting the _FbOnes macro not the function).
2006-09-19 10:13:36 -07:00
Behdad Esfahbod
42a0c6bd59 check-def.sh: Only allow _cairo_.*_test_.* symbols, not all _cairo.* ones 2006-09-19 13:05:29 -04:00
Behdad Esfahbod
ae355453d8 cairo-nquartz.h: Add missing cairo_public decorators. 2006-09-18 13:32:41 -04:00
Behdad Esfahbod
6c01b2ffb3 cairo-directfb.h: Add missing cairo_public decorators 2006-09-18 13:32:19 -04:00