1/* viewer-cairo.h: Common headers for Cairo-based viewers
2 *
3 * Copyright (C) 1999,2004,2005 Red Hat, Inc.
4 * Copyright (C) 2001 Sun Microsystems
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Library General Public License for more details.
15 *
16 * You should have received a copy of the GNU Library General Public
17 * License along with this library; if not, write to the
18 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19 * Boston, MA 02111-1307, USA.
20 */
21#ifndef VIEWER_CAIRO_H
22#define VIEWER_CAIRO_H
23
24#include <cairo.h>
25
26#include "viewer.h"
27
28typedef struct _CairoViewerIface CairoViewerIface;
29
30struct _CairoViewerIface
31{
32 const PangoViewer *backend_class;
33
34 cairo_surface_t * (*create_surface) (gpointer instance,
35 gpointer surface,
36 int width,
37 int height);
38
39 void (*paint_background) (gpointer instance,
40 cairo_t *cr);
41};
42
43gpointer cairo_viewer_iface_create (const CairoViewerIface **iface_out);
44
45void cairo_viewer_add_options (GOptionGroup *group);
46
47#endif /* VIEWER_CAIRO_H */
48

source code of gtk/subprojects/pango/utils/viewer-cairo.h