diff options
author | Behdad Esfahbod <behdad@behdad.org> | 2007-04-20 00:08:44 -0400 |
---|---|---|
committer | Behdad Esfahbod <behdad@behdad.org> | 2007-04-20 00:52:03 -0400 |
commit | 4b569f13d758015f33ad258a70ad4f472da771ed (patch) | |
tree | 8329505784893a9ba22967a81bc9c7f26552b51a /boilerplate | |
parent | 0a03d66fffe7388d8fb4ffdb7bb5501a214c6342 (diff) |
[boilerplate] Strip win32 boilerplate into cairo-boilerplate-win32*
Diffstat (limited to 'boilerplate')
-rw-r--r-- | boilerplate/Makefile.am | 5 | ||||
-rw-r--r-- | boilerplate/cairo-boilerplate-win32-private.h | 38 | ||||
-rw-r--r-- | boilerplate/cairo-boilerplate-win32.c | 51 | ||||
-rw-r--r-- | boilerplate/cairo-boilerplate.c | 31 |
4 files changed, 99 insertions, 26 deletions
diff --git a/boilerplate/Makefile.am b/boilerplate/Makefile.am index 4b0e899e3..b588a200a 100644 --- a/boilerplate/Makefile.am +++ b/boilerplate/Makefile.am @@ -56,6 +56,11 @@ libcairoboilerplate_la_SOURCES += cairo-boilerplate-svg.c libcairoboilerplate_la_SOURCES += cairo-boilerplate-svg-private.h endif +if CAIRO_HAS_WIN32_SURFACE +libcairoboilerplate_la_SOURCES += cairo-boilerplate-win32.c +libcairoboilerplate_la_SOURCES += cairo-boilerplate-win32-private.h +endif + if CAIRO_HAS_XCB_SURFACE libcairoboilerplate_la_SOURCES += cairo-boilerplate-xcb.c libcairoboilerplate_la_SOURCES += cairo-boilerplate-xcb-private.h diff --git a/boilerplate/cairo-boilerplate-win32-private.h b/boilerplate/cairo-boilerplate-win32-private.h new file mode 100644 index 000000000..7a6b0c16d --- /dev/null +++ b/boilerplate/cairo-boilerplate-win32-private.h @@ -0,0 +1,38 @@ +/* -*- Mode: c; c-basic-offset: 4; indent-tabs-mode: t; tab-width: 8; -*- */ +/* + * Copyright © 2004,2006 Red Hat, Inc. + * + * Permission to use, copy, modify, distribute, and sell this software + * and its documentation for any purpose is hereby granted without + * fee, provided that the above copyright notice appear in all copies + * and that both that copyright notice and this permission notice + * appear in supporting documentation, and that the name of + * Red Hat, Inc. not be used in advertising or publicity pertaining to + * distribution of the software without specific, written prior + * permission. Red Hat, Inc. makes no representations about the + * suitability of this software for any purpose. It is provided "as + * is" without express or implied warranty. + * + * RED HAT, INC. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS + * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS, IN NO EVENT SHALL RED HAT, INC. BE LIABLE FOR ANY SPECIAL, + * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER + * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR + * IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * Author: Carl D. Worth <cworth@cworth.org> + */ + +#ifndef _CAIRO_BOILERPLATE_WIN32_PRIVATE_H_ +#define _CAIRO_BOILERPLATE_WIN32_PRIVATE_H_ + +cairo_surface_t * +_cairo_boilerplate_win32_create_surface (const char *name, + cairo_content_t content, + int width, + int height, + cairo_boilerplate_mode_t mode, + void **closure); + +#endif diff --git a/boilerplate/cairo-boilerplate-win32.c b/boilerplate/cairo-boilerplate-win32.c new file mode 100644 index 000000000..3b95378d6 --- /dev/null +++ b/boilerplate/cairo-boilerplate-win32.c @@ -0,0 +1,51 @@ +/* -*- Mode: c; c-basic-offset: 4; indent-tabs-mode: t; tab-width: 8; -*- */ +/* + * Copyright © 2004,2006 Red Hat, Inc. + * + * Permission to use, copy, modify, distribute, and sell this software + * and its documentation for any purpose is hereby granted without + * fee, provided that the above copyright notice appear in all copies + * and that both that copyright notice and this permission notice + * appear in supporting documentation, and that the name of + * Red Hat, Inc. not be used in advertising or publicity pertaining to + * distribution of the software without specific, written prior + * permission. Red Hat, Inc. makes no representations about the + * suitability of this software for any purpose. It is provided "as + * is" without express or implied warranty. + * + * RED HAT, INC. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS + * SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND + * FITNESS, IN NO EVENT SHALL RED HAT, INC. BE LIABLE FOR ANY SPECIAL, + * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER + * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR + * IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * Author: Carl D. Worth <cworth@cworth.org> + */ + +#include "cairo-boilerplate.h" +#include "cairo-boilerplate-win32-private.h" + +#include <cairo-win32.h> + +cairo_surface_t * +_cairo_boilerplate_win32_create_surface (const char *name, + cairo_content_t content, + int width, + int height, + cairo_boilerplate_mode_t mode, + void **closure) +{ + cairo_format_t format; + + if (content == CAIRO_CONTENT_COLOR) + format = CAIRO_FORMAT_RGB24; + else if (content == CAIRO_CONTENT_COLOR_ALPHA) + format = CAIRO_FORMAT_ARGB32; + else + return NULL; + + *closure = NULL; + return cairo_win32_surface_create_with_dib (format, width, height); +} diff --git a/boilerplate/cairo-boilerplate.c b/boilerplate/cairo-boilerplate.c index 5b7b4320c..e1d4bb2f1 100644 --- a/boilerplate/cairo-boilerplate.c +++ b/boilerplate/cairo-boilerplate.c @@ -65,12 +65,15 @@ #if CAIRO_HAS_SVG_SURFACE #include "cairo-boilerplate-svg-private.h" #endif -#if CAIRO_HAS_XLIB_XRENDER_SURFACE -#include "cairo-boilerplate-xlib-private.h" +#if CAIRO_HAS_WIN32_SURFACE +#include "cairo-boilerplate-win32-private.h" #endif #if CAIRO_HAS_XCB_SURFACE #include "cairo-boilerplate-xcb-private.h" #endif +#if CAIRO_HAS_XLIB_XRENDER_SURFACE +#include "cairo-boilerplate-xlib-private.h" +#endif /* This is copied from cairoint.h. That makes it painful to keep in * sync, but the slim stuff makes cairoint.h "hard" to include when @@ -275,30 +278,6 @@ _cairo_boilerplate_test_paginated_cleanup (void *closure) #endif -#if CAIRO_HAS_WIN32_SURFACE -#include "cairo-win32.h" -static cairo_surface_t * -_cairo_boilerplate_win32_create_surface (const char *name, - cairo_content_t content, - int width, - int height, - cairo_boilerplate_mode_t mode, - void **closure) -{ - cairo_format_t format; - - if (content == CAIRO_CONTENT_COLOR) - format = CAIRO_FORMAT_RGB24; - else if (content == CAIRO_CONTENT_COLOR_ALPHA) - format = CAIRO_FORMAT_ARGB32; - else - return NULL; - - *closure = NULL; - return cairo_win32_surface_create_with_dib (format, width, height); -} -#endif - static cairo_boilerplate_target_t targets[] = { /* I'm uncompromising about leaving the image backend as 0 |