[cairo-commit] cairo/src Makefile.am, 1.35, 1.36 cairo-features.h.in, 1.14, 1.15 cairo-win32.h, NONE, 1.1 cairo_surface.c, 1.39, 1.40 cairo_win32_font.c, NONE, 1.1 cairo_win32_surface.c, NONE, 1.1 cairoint.h, 1.92, 1.93

Owen Taylor commit at pdx.freedesktop.org
Mon Jan 31 16:11:39 PST 2005


Committed by: otaylor

Update of /cvs/cairo/cairo/src
In directory gabe:/tmp/cvs-serv18870/src

Modified Files:
	Makefile.am cairo-features.h.in cairo_surface.c cairoint.h 
Added Files:
	cairo-win32.h cairo_win32_font.c cairo_win32_surface.c 
Log Message:
2005-01-31  Owen Taylor  <otaylor at redhat.com>

        * configure.in src/cairo-features.h.in: Add a check for the
        Windows platform and --enable-win32. Also add some (currently
        always off) stubs for native Win32 fonts.

        * configure.in: Make building the PDF backend conditional
        on having FreeType.

        * src/Makefile.am src/cairo_win32_surface.c src/cairo_win32_font.c
        src/cairo-win32.h: Add a Win32 backend using GDI and software
        fallbacks Font code is not yet there yet, but it works with the
        fontconfig backend.

        * src/cairo_gdip_font.cpp src/cairo_gdip_surface.cpp: Remove
        remnants of a GDI+ based backend.

        * src/cairoint.h: Prefer platform-specific font backends
        to the fontconfig backend.


Index: Makefile.am
===================================================================
RCS file: /cvs/cairo/cairo/src/Makefile.am,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -d -r1.35 -r1.36
--- Makefile.am	30 Jan 2005 19:28:14 -0000	1.35
+++ Makefile.am	1 Feb 2005 00:11:37 -0000	1.36
@@ -29,6 +29,15 @@
 libcairo_xcb_sources = cairo_xcb_surface.c
 endif
 
+libcairo_win32_sources =
+if CAIRO_HAS_WIN32_SURFACE
+libcairo_win32_headers = cairo-win32.h
+libcairo_win32_sources += cairo_win32_surface.c
+endif
+if CAIRO_HAS_WIN32_FONT
+libcairo_win32_sources += cairo_win32_font.c
+endif
+
 if CAIRO_HAS_GLITZ_SURFACE
 libcairo_glitz_headers = cairo-glitz.h
 libcairo_glitz_sources = cairo_glitz_surface.c
@@ -62,6 +71,7 @@
 	$(libcairo_png_headers)		\
 	$(libcairo_ps_headers)		\
 	$(libcairo_quartz_headers)	\
+	$(libcairo_win32_headers)	\
 	$(libcairo_xcb_headers)		\
 	$(libcairo_xlib_headers)
 
@@ -101,6 +111,8 @@
 	$(libcairo_quartz_sources)\
 	$(libcairo_xcb_sources) \
 	$(libcairo_glitz_sources)\
+	$(libcairo_win32_sources)\
+	$(libcairo_freetype_sources)  \
 	cairoint.h
 
 libcairo_la_LDFLAGS = -version-info @VERSION_INFO@ -no-undefined

Index: cairo-features.h.in
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo-features.h.in,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -d -r1.14 -r1.15
--- cairo-features.h.in	21 Jan 2005 04:36:25 -0000	1.14
+++ cairo-features.h.in	1 Feb 2005 00:11:37 -0000	1.15
@@ -49,10 +49,14 @@
 
 #define @XCB_SURFACE_FEATURE@
 
+#define @WIN32_SURFACE_FEATURE@
+
 #define @GLITZ_SURFACE_FEATURE@
 
 #define @FT_FONT_FEATURE@
 
+#define @WIN32_FONT_FEATURE@
+
 #define @ATSUI_FONT_FEATURE@
 
 #define @SANITY_CHECKING_FEATURE@

--- NEW FILE: cairo-win32.h ---
(This appears to be a binary file; contents omitted.)

Index: cairo_surface.c
===================================================================
RCS file: /cvs/cairo/cairo/src/cairo_surface.c,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -d -r1.39 -r1.40
--- cairo_surface.c	31 Jan 2005 16:50:22 -0000	1.39
+++ cairo_surface.c	1 Feb 2005 00:11:37 -0000	1.40
@@ -394,7 +394,7 @@
 _fallback_cleanup (fallback_state_t *state)
 {
     _cairo_surface_release_dest_image (state->dst, &state->extents,
-				       state->image, &state->image_rect, &state->image_extra);
+				       state->image, &state->image_rect, state->image_extra);
 }
 
 static cairo_status_t

--- NEW FILE: cairo_win32_font.c ---
(This appears to be a binary file; contents omitted.)

--- NEW FILE: cairo_win32_surface.c ---
(This appears to be a binary file; contents omitted.)

Index: cairoint.h
===================================================================
RCS file: /cvs/cairo/cairo/src/cairoint.h,v
retrieving revision 1.92
retrieving revision 1.93
diff -u -d -r1.92 -r1.93
--- cairoint.h	31 Jan 2005 16:50:22 -0000	1.92
+++ cairoint.h	1 Feb 2005 00:11:37 -0000	1.93
@@ -522,6 +522,12 @@
 
 #endif
 
+#ifdef CAIRO_HAS_WIN32_FONT
+
+extern const cairo_private struct _cairo_font_backend cairo_win32_font_backend;
+
+#endif
+
 #ifdef CAIRO_HAS_ATSUI_FONT
 
 extern const cairo_private struct _cairo_font_backend cairo_atsui_font_backend;
@@ -787,19 +793,21 @@
 #define CAIRO_FONT_SLANT_DEFAULT   CAIRO_FONT_SLANT_NORMAL
 #define CAIRO_FONT_WEIGHT_DEFAULT  CAIRO_FONT_WEIGHT_NORMAL
 
-#ifdef CAIRO_HAS_FT_FONT 
-
-#define CAIRO_FONT_FAMILY_DEFAULT  "serif"
+#if defined (CAIRO_HAS_WIN32_FONT)
 
-/* XXX: Platform-specific. Other platforms may want a different default */
-#define CAIRO_FONT_BACKEND_DEFAULT &cairo_ft_font_backend
+#define CAIRO_FONT_FAMILY_DEFAULT "Arial"
+#define CAIRO_FONT_BACKEND_DEFAULT &cairo_win32_font_backend
 
-#elif defined(CAIRO_HAS_ATSUI_FONT)
+#elif defined (CAIRO_HAS_ATSUI_FONT)
 
 #define CAIRO_FONT_FAMILY_DEFAULT  "Monaco"
-
 #define CAIRO_FONT_BACKEND_DEFAULT &cairo_atsui_font_backend
 
+#elif defined (CAIRO_HAS_FT_FONT)
+
+#define CAIRO_FONT_FAMILY_DEFAULT  "serif"
+#define CAIRO_FONT_BACKEND_DEFAULT &cairo_ft_font_backend
+
 #endif
 
 #define CAIRO_GSTATE_OPERATOR_DEFAULT	CAIRO_OPERATOR_OVER




More information about the cairo-commit mailing list