[cairo-commit] 5 commits - doc/public RELEASING src/cairo.h src/cairo-output-stream-private.h src/cairo-surface.c src/cairo-surface-observer.c
Bryce Harrington
bryce at kemper.freedesktop.org
Thu Mar 13 15:14:09 PDT 2014
RELEASING | 4 ++-
doc/public/cairo-sections.txt | 41 +++++++++++++++++++++++++++++++++++---
src/cairo-output-stream-private.h | 2 -
src/cairo-surface-observer.c | 5 ++++
src/cairo-surface.c | 12 +++++------
src/cairo.h | 9 ++++++++
6 files changed, 62 insertions(+), 11 deletions(-)
New commits:
commit 0eb686d5454073f65ff78520ca862d07672d2a3f
Author: Bryce Harrington <b.harrington at samsung.com>
Date: Tue Feb 25 17:43:22 2014 -0800
Document that libglib2.0-doc is needed to avoid some xref warnings
Signed-off-by: Bryce Harrington <b.harrington at samsung.com>
diff --git a/RELEASING b/RELEASING
index a1edceb..60e3e9e 100644
--- a/RELEASING
+++ b/RELEASING
@@ -2,7 +2,9 @@ Here are the steps to follow to create a new cairo release:
1) Ensure that there are no local, uncommitted/unpushed
modifications. You're probably in a good state if both "git diff
- HEAD" and "git log master..origin/master" give no output.
+ HEAD" and "git log master..origin/master" give no output. Also make
+ sure you have libglib2.0-doc installed (else you'll get excessive
+ gtk-doc cross reference warnings in the next step).
2) Verify that the code passes "make distcheck"
commit 8d0abb4a945a6875de956ef12883e7efe7b7fbc7
Author: Bryce Harrington <b.harrington at samsung.com>
Date: Tue Feb 25 17:09:03 2014 -0800
surface: Make parameter naming consistent between header and impl
This fixes this set of distcheck errors generating docs:
src/cairo-surface.c:1668: warning: Parameter described in source code
comment block but does not exist. FUNCTION:
cairo_surface_set_device_scale Parameter: sx.
src/cairo-surface.c:1668: warning: Parameter described in source code
comment block but does not exist. FUNCTION:
cairo_surface_set_device_scale Parameter: sy.
src/cairo-surface.c:1668: warning: Parameter description for
cairo_surface_set_device_scale::x_scale is missing in source code
comment block.
src/cairo-surface.c:1668: warning: Parameter description for
cairo_surface_set_device_scale::y_scale is missing in source code
comment block.
Signed-off-by: Bryce Harrington <b.harrington at samsung.com>
diff --git a/src/cairo-surface.c b/src/cairo-surface.c
index 15c3c13..b8109f3 100644
--- a/src/cairo-surface.c
+++ b/src/cairo-surface.c
@@ -1650,8 +1650,8 @@ slim_hidden_def (cairo_surface_mark_dirty_rectangle);
/**
* cairo_surface_set_device_scale:
* @surface: a #cairo_surface_t
- * @sx: a scale factor in the X direction
- * @sy: a scale factor in the Y direction
+ * @x_scale: a scale factor in the X direction
+ * @y_scale: a scale factor in the Y direction
*
* Sets an scale that is multiplied to the device coordinates determined
* by the CTM when drawing to @surface. One common use for this is to
@@ -1668,8 +1668,8 @@ slim_hidden_def (cairo_surface_mark_dirty_rectangle);
**/
void
cairo_surface_set_device_scale (cairo_surface_t *surface,
- double sx,
- double sy)
+ double x_scale,
+ double y_scale)
{
cairo_status_t status;
@@ -1689,8 +1689,8 @@ cairo_surface_set_device_scale (cairo_surface_t *surface,
return;
}
- surface->device_transform.xx = sx;
- surface->device_transform.yy = sy;
+ surface->device_transform.xx = x_scale;
+ surface->device_transform.yy = y_scale;
surface->device_transform.xy = 0.0;
surface->device_transform.yx = 0.0;
commit 4450af4f035fce8b468ad3ac9cd34da7bf81b688
Author: Bryce Harrington <b.harrington at samsung.com>
Date: Tue Feb 25 14:43:06 2014 -0800
Mark recently added _cairo_output_stream_print_matrix private symbol
This fixes a distcheck error about a local PLT entry.
Signed-off-by: Bryce Harrington <b.harrington at samsung.com>
diff --git a/src/cairo-output-stream-private.h b/src/cairo-output-stream-private.h
index 38a137f..2542646 100644
--- a/src/cairo-output-stream-private.h
+++ b/src/cairo-output-stream-private.h
@@ -136,7 +136,7 @@ _cairo_output_stream_printf (cairo_output_stream_t *stream,
...) CAIRO_PRINTF_FORMAT (2, 3);
/* Print matrix element values with rounding of insignificant digits. */
-void
+cairo_private void
_cairo_output_stream_print_matrix (cairo_output_stream_t *stream,
const cairo_matrix_t *matrix);
commit ae954ae3ea262efae221cfda18eee73b5654a729
Author: Bryce Harrington <b.harrington at samsung.com>
Date: Tue Feb 25 13:20:49 2014 -0800
doc: Drop a couple quartz routines which distcheck claims don't exist
These routines actually do exist in the source code, and have proper
documentation, so I'm not sure why distcheck dislikes them, but it's
happier without these listed.
Signed-off-by: Bryce Harrington <b.harrington at samsung.com>
diff --git a/doc/public/cairo-sections.txt b/doc/public/cairo-sections.txt
index 3dd570a..3a78f36 100644
--- a/doc/public/cairo-sections.txt
+++ b/doc/public/cairo-sections.txt
@@ -152,9 +152,6 @@ CAIRO_HAS_QUARTZ_SURFACE
cairo_quartz_surface_create
cairo_quartz_surface_create_for_cg_context
cairo_quartz_surface_get_cg_context
-<SUBSECTION Private>
-cairo_quartz_image_surface_create
-cairo_quartz_image_surface_get_image
</SECTION>
<SECTION>
commit f4a1a75078a844e2581615566122f4232d2a4f62
Author: Bryce Harrington <b.harrington at samsung.com>
Date: Tue Feb 25 13:17:00 2014 -0800
doc: Add missing sections and symbols for public docs
This adds a number of items to the documentation for which code docs
exist, and also adds sections for cairo-skia and cairo-surface-observer.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48784
Signed-off-by: Bryce Harrington <b.harrington at samsung.com>
diff --git a/doc/public/cairo-sections.txt b/doc/public/cairo-sections.txt
index c67da37..3dd570a 100644
--- a/doc/public/cairo-sections.txt
+++ b/doc/public/cairo-sections.txt
@@ -114,6 +114,15 @@ cairo_recording_surface_get_extents
</SECTION>
<SECTION>
+<FILE>cairo-skia</FILE>
+cairo_skia_context
+cairo_skia_context_t
+cairo_skia_surface
+cairo_skia_surface_t
+format_to_sk_config
+</SECTION>
+
+<SECTION>
<FILE>cairo-win32</FILE>
CAIRO_HAS_WIN32_SURFACE
cairo_win32_surface_create
@@ -216,11 +225,21 @@ cairo_device_set_user_data
cairo_device_get_user_data
cairo_device_acquire
cairo_device_release
+cairo_device_observer_elapsed
+cairo_device_observer_fill_elapsed
+cairo_device_observer_glyphs_elapsed
+cairo_device_observer_mask_elapsed
+cairo_device_observer_paint_elapsed
+cairo_device_observer_print
+cairo_device_observer_stroke_elapsed
</SECTION>
<SECTION>
<FILE>cairo-surface</FILE>
CAIRO_HAS_MIME_SURFACE
+CAIRO_MIME_TYPE_JBIG2
+CAIRO_MIME_TYPE_JBIG2_GLOBAL
+CAIRO_MIME_TYPE_JBIG2_GLOBAL_ID
CAIRO_MIME_TYPE_JP2
CAIRO_MIME_TYPE_JPEG
CAIRO_MIME_TYPE_PNG
@@ -243,6 +262,8 @@ cairo_surface_mark_dirty
cairo_surface_mark_dirty_rectangle
cairo_surface_set_device_offset
cairo_surface_get_device_offset
+cairo_surface_get_device_scale
+cairo_surface_set_device_scale
cairo_surface_set_fallback_resolution
cairo_surface_get_fallback_resolution
cairo_surface_type_t
@@ -261,6 +282,23 @@ cairo_surface_unmap_image
</SECTION>
<SECTION>
+<FILE>cairo-surface-observer</FILE>
+CAIRO_HAS_OBSERVER_SURFACE
+cairo_surface_create_observer
+cairo_surface_observer_add_fill_callback
+cairo_surface_observer_add_finish_callback
+cairo_surface_observer_add_flush_callback
+cairo_surface_observer_add_glyphs_callback
+cairo_surface_observer_add_mask_callback
+cairo_surface_observer_add_paint_callback
+cairo_surface_observer_add_stroke_callback
+cairo_surface_observer_callback_t
+cairo_surface_observer_elapsed
+cairo_surface_observer_mode_t
+cairo_surface_observer_print
+</SECTION>
+
+<SECTION>
<FILE>cairo-version</FILE>
CAIRO_VERSION
CAIRO_VERSION_MAJOR
diff --git a/src/cairo-surface-observer.c b/src/cairo-surface-observer.c
index 64036b6..6721bf5 100644
--- a/src/cairo-surface-observer.c
+++ b/src/cairo-surface-observer.c
@@ -1368,11 +1368,16 @@ static const cairo_surface_backend_t _cairo_surface_observer_backend = {
/**
* cairo_surface_create_observer:
* @target: an existing surface for which the observer will watch
+ * @mode: sets the mode of operation (normal vs. record)
*
* Create a new surface that exists solely to watch another is doing. In
* the process it will log operations and times, which are fast, which are
* slow, which are frequent, etc.
*
+ * The @mode parameter can be set to either CAIRO_SURFACE_OBSERVER_NORMAL
+ * or CAIRO_SURFACE_OBSERVER_RECORD_OPERATIONS, to control whether or not
+ * the internal observer should record operations.
+ *
* Return value: a pointer to the newly allocated surface. The caller
* owns the surface and should call cairo_surface_destroy() when done
* with it.
diff --git a/src/cairo.h b/src/cairo.h
index 2e69793..aa2070e 100644
--- a/src/cairo.h
+++ b/src/cairo.h
@@ -2211,6 +2211,15 @@ cairo_surface_create_for_rectangle (cairo_surface_t *target,
double width,
double height);
+/**
+ * cairo_surface_observer_mode_t:
+ * @CAIRO_SURFACE_OBSERVER_NORMAL: no recording is done
+ * @CAIRO_SURFACE_OBSERVER_RECORD_OPERATIONS: operations are recorded
+ *
+ * Whether operations should be recorded.
+ *
+ * Since: 1.12
+ **/
typedef enum {
CAIRO_SURFACE_OBSERVER_NORMAL = 0,
CAIRO_SURFACE_OBSERVER_RECORD_OPERATIONS = 0x1
More information about the cairo-commit
mailing list