* 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.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __GTK_PRINT_CONTEXT_H__
#define __GTK_PRINT_CONTEXT_H__
-#include <glib-object.h>
-#include <pango/pango-layout.h>
-#include "gtkenums.h"
-#include "gtkpagesetup.h"
+
+#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
+#error "Only <gtk/gtk.h> can be included directly."
+#endif
+
+#include <pango/pango.h>
+#include <gtk/gtkpagesetup.h>
+
G_BEGIN_DECLS
/* Rendering */
-cairo_t * gtk_print_context_get_cairo (GtkPrintContext *context);
+cairo_t *gtk_print_context_get_cairo_context (GtkPrintContext *context);
-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);
+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);
+gboolean gtk_print_context_get_hard_margins (GtkPrintContext *context,
+ gdouble *top,
+ gdouble *bottom,
+ gdouble *left,
+ gdouble *right);
/* Fonts */
-PangoFontMap *gtk_print_context_get_fontmap (GtkPrintContext *context);
-PangoContext *gtk_print_context_create_context (GtkPrintContext *context);
-PangoLayout * gtk_print_context_create_layout (GtkPrintContext *context);
+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);
+/* Needed for preview implementations */
+void gtk_print_context_set_cairo_context (GtkPrintContext *context,
+ cairo_t *cr,
+ double dpi_x,
+ double dpi_y);
G_END_DECLS