GitLab repository storage has been migrated to hashed layout. Please contact Infrastructure team if you notice any issues with repositories or hooks.

gtkprintcontext.h 2.51 KB
Newer Older
Cody Russell's avatar
Cody Russell committed
1
/* GTK - The GIMP Toolkit
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
 * gtkprintcontext.h: Print Context
 * Copyright (C) 2006, Red Hat, Inc.
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the
 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 * Boston, MA 02111-1307, USA.
 */

21 22 23 24
#if defined(GTK_DISABLE_SINGLE_INCLUDES) && !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
#error "Only <gtk/gtk.h> can be included directly."
#endif

25 26 27
#ifndef __GTK_PRINT_CONTEXT_H__
#define __GTK_PRINT_CONTEXT_H__

28

29
#include <pango/pango.h>
30
#include <gtk/gtkpagesetup.h>
31

32

33 34 35 36 37 38 39 40 41 42 43 44
G_BEGIN_DECLS

typedef struct _GtkPrintContext GtkPrintContext;

#define GTK_TYPE_PRINT_CONTEXT    (gtk_print_context_get_type ())
#define GTK_PRINT_CONTEXT(obj)    (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_PRINT_CONTEXT, GtkPrintContext))
#define GTK_IS_PRINT_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_PRINT_CONTEXT))

GType          gtk_print_context_get_type (void) G_GNUC_CONST;


/* Rendering */
45
cairo_t      *gtk_print_context_get_cairo_context    (GtkPrintContext *context);
46

47 48 49 50 51
GtkPageSetup *gtk_print_context_get_page_setup       (GtkPrintContext *context);
gdouble       gtk_print_context_get_width            (GtkPrintContext *context);
gdouble       gtk_print_context_get_height           (GtkPrintContext *context);
gdouble       gtk_print_context_get_dpi_x            (GtkPrintContext *context);
gdouble       gtk_print_context_get_dpi_y            (GtkPrintContext *context);
52 53

/* Fonts */
54 55 56
PangoFontMap *gtk_print_context_get_pango_fontmap    (GtkPrintContext *context);
PangoContext *gtk_print_context_create_pango_context (GtkPrintContext *context);
PangoLayout  *gtk_print_context_create_pango_layout  (GtkPrintContext *context);
57

58 59 60 61 62
/* Needed for preview implementations */
void         gtk_print_context_set_cairo_context     (GtkPrintContext *context,
						      cairo_t         *cr,
						      double           dpi_x,
						      double           dpi_y);
63 64 65 66

G_END_DECLS

#endif /* __GTK_PRINT_CONTEXT_H__ */