[cairo-commit] src/cairo-pdf-surface.c

Carl Worth cworth at kemper.freedesktop.org
Fri Apr 14 16:54:55 PDT 2006


 src/cairo-pdf-surface.c |   39 +++++++++++++++++++++++++++++++++++----
 1 files changed, 35 insertions(+), 4 deletions(-)

New commits:
diff-tree c7fd35fac2bc7c93e85ccbe50b20529ae4d9479d (from 0e44e798b5f6fd58cc586e40f926d363cd8fff50)
Author: Carl Worth <cworth at cworth.org>
Date:   Fri Apr 14 16:50:16 2006 -0700

    Add tests for PAGINATED_MODE_ANALYZE to PDF (no real analysis yet)

diff --git a/src/cairo-pdf-surface.c b/src/cairo-pdf-surface.c
index 291d3d1..8c867ec 100644
--- a/src/cairo-pdf-surface.c
+++ b/src/cairo-pdf-surface.c
@@ -2043,6 +2043,13 @@ _cairo_pdf_surface_paint (void			*abstra
 			  cairo_operator_t	 op,
 			  cairo_pattern_t	*source)
 {
+    cairo_pdf_surface_t *surface = abstract_surface;
+
+    if (surface->paginated_mode == CAIRO_PAGINATED_MODE_ANALYZE)
+	return CAIRO_INT_STATUS_UNSUPPORTED;
+
+    ASSERT_NOT_REACHED;
+
     return CAIRO_INT_STATUS_UNSUPPORTED;
 }
 
@@ -2052,6 +2059,13 @@ _cairo_pdf_surface_mask	(void			*abstrac
 			 cairo_pattern_t	*source,
 			 cairo_pattern_t	*mask)
 {
+    cairo_pdf_surface_t *surface = abstract_surface;
+
+    if (surface->paginated_mode == CAIRO_PAGINATED_MODE_ANALYZE)
+	return CAIRO_INT_STATUS_UNSUPPORTED;
+
+    ASSERT_NOT_REACHED;
+
     return CAIRO_INT_STATUS_UNSUPPORTED;
 }
 
@@ -2066,13 +2080,20 @@ _cairo_pdf_surface_stroke (void			*abstr
 			   double		 tolerance,
 			   cairo_antialias_t	 antialias)
 {
+    cairo_pdf_surface_t *surface = abstract_surface;
+
+    if (surface->paginated_mode == CAIRO_PAGINATED_MODE_ANALYZE)
+	return CAIRO_INT_STATUS_UNSUPPORTED;
+
+    ASSERT_NOT_REACHED;
+
     return CAIRO_INT_STATUS_UNSUPPORTED;
 }
 
 static cairo_int_status_t
 _cairo_pdf_surface_fill (void			*abstract_surface,
 			 cairo_operator_t	 op,
-			 cairo_pattern_t	*pattern,
+			 cairo_pattern_t	*source,
 			 cairo_path_fixed_t	*path,
 			 cairo_fill_rule_t	 fill_rule,
 			 double			 tolerance,
@@ -2084,10 +2105,13 @@ _cairo_pdf_surface_fill (void			*abstrac
     cairo_status_t status;
     pdf_path_info_t info;
 
-    /* XXX: Temporarily disabling all "native" PDF output. */
-    return CAIRO_INT_STATUS_UNSUPPORTED;
+    /* XXX: Temporarily disabling all "native" PDF output---will be
+     * switching to real analysis shortly. */
+    if (surface->paginated_mode == CAIRO_PAGINATED_MODE_ANALYZE)
+	return CAIRO_INT_STATUS_UNSUPPORTED;
+    ASSERT_NOT_REACHED;
 
-    status = emit_pattern (surface, pattern);
+    status = emit_pattern (surface, source);
     if (status)
 	return status;
 
@@ -2133,6 +2157,13 @@ _cairo_pdf_surface_show_glyphs (void			*
 				int			 num_glyphs,
 				cairo_scaled_font_t	*scaled_font)
 {
+    cairo_pdf_surface_t *surface = abstract_surface;
+
+    if (surface->paginated_mode == CAIRO_PAGINATED_MODE_ANALYZE)
+	return CAIRO_INT_STATUS_UNSUPPORTED;
+
+    ASSERT_NOT_REACHED;
+
     return CAIRO_INT_STATUS_UNSUPPORTED;
 }
 


More information about the cairo-commit mailing list