Commit graph

41 commits

Author SHA1 Message Date
Behdad Esfahbod
731925f00a Fix doc syntax. 2006-07-06 23:05:13 -04:00
Carl Worth
b129f747c5 Change {x,y}_device_offset values to a device_transform matrix.
This is a step toward allowing device scaling in addition to device offsets.
So far, the scale values are still always 1.0 so only the translation is
actually being used. But most of the code is in place for doing scaling as
well and it just needs to be hooked up.

There are some fragile parts in this code, all of which involve using the
translation without the scale, (so grep for device_transform.x0 or
device_transform->x0). Some of these are likely bugs that will hopefully
be obvious once we start using the scale. Others are OK if only because
we 'know' that we aren't ever setting device scaling on a surface that
has a device offset (we only set device scaling on surfaces we create
internally and we don't export device scaling to the user).

All of these fragile parts in the code have been marked with comments of
the form: XXX: FRAGILE.
2006-06-10 00:12:51 -07:00
Carl Worth
ef10a0403a Remove initial, final, and duplicate blank lines.
This patch was produced by running git-stripspace on all *.[ch] files
within cairo. Note that this script would have also created all the changes
from the previous commits to remove trailing whitespace.
2006-06-06 15:50:33 -07:00
Carl Worth
5278de0997 Remove all remaining trailing whitespace.
This patch was produced with the following (GNU) sed script:

	sed -i -r -e 's/[ \t]+$//'

run on all *.[ch] files within cairo.

Note that the above script would have also created all the changes
from the previous commits to remove trailing whitespace.
2006-06-06 15:41:31 -07:00
Carl Worth
4670366ede Remove trailing whitespace from lines that look like comments.
This patch was produced with the following (GNU) sed script:

	sed -i -r -e '/^[ \t]*\/?\*/ s/[ \t]+$//'

run on all *.[ch] files within cairo, (though I manually excluded
src/cairo-atsui-font.c which has a code line that appears as a comment
to this script).
2006-06-06 15:35:48 -07:00
Carl Worth
80b8deb1e4 Remove extraneous whitespace from "blank" lines.
This patch was produced with the following (GNU) sed script:

	sed -i -r -e 's/^[ \t]+$//'

run on all *.[ch] files within cairo.
2006-06-06 15:25:49 -07:00
Carl Worth
9737b4de39 2005-10-10 David Reveman <davidr@novell.com>
Throw away old gradient code from within cairo-pattern.c in favor of using new support in pixman for gradients.
Update reference images for all tests involving gradients since the gradient output has changed slightly.
2006-01-04 17:59:03 +00:00
Carl Worth
b1a38efd34 Fix for bug #4401 as reported by Tim Mooney:
Don't bother checking for sincos function.
Don't use sincos function since it is apparently buggy on some platforms, (Tru64 at least).
2005-09-12 11:11:33 +00:00
Owen Taylor
099060f925 Some fixes for warnings from sparse (Part of #4208, Kjartan Maraas)
Use NULL, not 0.
Fix C99'ism of mixed code and declarations.
2005-08-23 05:18:48 +00:00
Bertram Felgenhauer
23baafbaa8 remove. 2005-08-22 16:52:40 +00:00
Bertram Felgenhauer
c0905759b0 use new function. strip comment of derivation for major axis length.
use _cairo_matrix_get_affine to retrieve matrix entries.
new function split out of cairo-pen.c. UTF8-ify the comment that explains the calculation.
2005-08-22 16:48:28 +00:00
Carl Worth
a2dc18fd0c 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).
Replace Cairo with cairo.
Include config.h so HAVE_UNISTD_H gets picked up as necessary.
Fix non-UTF-8 copyright symbol.
2005-08-05 10:05:29 +00:00
Carl Worth
1ce9be9541 Make out parameters optional. Style cleanup. 2005-06-20 12:54:15 +00:00
Carl Worth
36beed9bf1 Add CODING_STYLE document to standardize on some style issues.
Standardize brace handling around all else clauses according to new CODING_STYLE guidelines.
2005-06-03 14:51:57 +00:00
Carl Worth
14c690472c 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 09:12:52 +00:00
Carl Worth
d7fe527e0f 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.
Deal with all of the removals.
2005-05-06 13:32:53 +00:00
Owen Taylor
cf9ea30078 src/cairo.h doc/public/cairo-sections.txt src/cairo-matrix.c: Update.
Include cairo-font.xml
2005-04-11 09:18:51 +00:00
Carl Worth
30f0d517aa Eliminate internal use of deprecated cairo_matrix_copy.
Change cairo_get_matrix to accept a pointer to the return value cairo_matrix_t rather than returning the value directly.
2005-04-08 10:03:17 +00:00
Carl Worth
745627ff1b Don't try to return a value (even a void value) from a void function. Closes bug #2931. 2005-04-08 04:43:06 +00:00
Carl Worth
d135938efd 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.
Track changes to cairo_matrix_t interface.
Add a test case showing the same path drawn under various transforms, (including skews set directly by initializing a cairo_matrix_t).
2005-04-07 10:01:49 +00:00
Carl Worth
b381eb8045 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-20 23:23:19 +00:00
Owen Taylor
2ad590a0ee 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 13:27:26 +00:00
Owen Taylor
0b09748296 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 11:24:00 +00:00
Carl Worth
f343b0b44a From David Reveman:
Rewrite to use cairo_bool_t for legibility.
2005-02-25 13:31:00 +00:00
Carl Worth
dcfb0d8a2b Switch from broken cworth@isi.edu address to canonical cworth@cworth.org address. 2005-02-22 11:35:03 +00:00
Owen Taylor
0f5b7d82de 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.
Add --enable-gtk-doc to the default args.
2005-01-27 11:35:25 +00:00
Carl Worth
68d5ba661d 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. 2005-01-19 12:12:42 +00:00
Keith Packard
72832b9760 Scale factors shouldn't include mirroring.
int32x32_64_mul and int64x64_128_mul are different from their unsigned compatriots
2005-01-11 14:52:16 +00:00
Keith Packard
ad2225c6f4 Fix math library detection to use autotools helper
Remove cache memory usage assertions as single objects can be larger than the cache size
Decompose font matrix transformations into a couple of helper routines. Return all metrics in font space.
Eliminate compiler warning
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.
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.
Change license to LGPL Mark int32x32_64_mul as broken (which it still is)
Ensure each glyph is located as close to the specified position as possible
interface change to _cairo_matrix_compute_scale_factors
2005-01-11 10:03:01 +00:00
Carl Worth
bf8374dba2 Convert all files to utf-8. Add copyright information to cairo_png_surface.c. 2004-10-21 18:40:50 +00:00
Carl Worth
0f3ce6a240 Add the MPL as a new license option, in addition to the LGPL. 2004-09-04 06:38:34 +00:00
Carl Worth
e5afa03605 Fix to explicitly refer to GNU Lesser Public License 2.1 rather than the Library Public License version 2 or 'any later version' 2004-08-02 17:04:00 +00:00
Carl Worth
d5e92dd1c8 Change from MIT license to LGPL. 2004-08-02 13:13:28 +00:00
Graydon Hoare
23026d5ab6 Add sanity checking feature configury.
Add sanity checking feature.
Add sanity checking.
Add prototypes.
New functions.
New function.
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.
Add XCopyArea fast path. (_cairo_xlib_surface_set_clip_region): Drive clip to drawable.
2004-05-20 16:42:56 +00:00
Carl Worth
9d4fe7e369 Move this function from cairo_ft_font.c (_get_scale_factors). 2003-12-15 18:02:03 +00:00
Carl Worth
2c9d1913cc Fixed copyright attribution to refer to "University of Southern California 2003-10-23 07:47:29 +00:00
Carl Worth
e540d4c44f Updated calls to slim_hidden_def to track changes in slim 0.2.0 2003-09-09 17:38:10 +00:00
Carl Worth
4d399b9aca Added missing underscores to several internal functions. 2003-08-26 07:40:17 +00:00
Richard Henderson
83d5f0352c Mark const.
Likewise.
Likewise.
Likewise for cb.
2003-07-31 22:49:09 +00:00
Richard Henderson
9289e8a77a Depend on slim.
Check for slim.
Include slim_{export,import}.h as needed; mark all symbols __external_linkage.
Include slim_internal.h; mark all symbols __internal_linkage. Provide slim_hidden_proto symbols as needed.
Provide slim_hidden_def symbols as needed.
Mark static. (cairo_traps_add_trap_from_points): Likewise.
2003-07-31 22:41:44 +00:00
Carl Worth
dc1e96ae35 Renamed everything from Xr* to cairo_* 2003-07-18 11:34:19 +00:00