Ejemplo n.º 1
0
static void
zoom_one_button_clicked (GtkWidget         *button,
			 SoliPrintPreview *preview)
{
	set_zoom_factor (preview, 1);
	gtk_widget_grab_focus (GTK_WIDGET (preview->layout));
}
Ejemplo n.º 2
0
static void
preview_ready (GtkPrintOperationPreview *gtk_preview,
	       GtkPrintContext          *context,
	       SoliPrintPreview        *preview)
{
	init_last_page_label (preview);
	goto_page (preview, 0);

	set_zoom_factor (preview, 1.0);

	/* let the default gtklayout handler clear the background */
	g_signal_connect_after (preview->layout,
				"draw",
				G_CALLBACK (preview_draw),
				preview);

	gtk_widget_queue_draw (GTK_WIDGET (preview->layout));
}
Ejemplo n.º 3
0
static void
set_zoom_fit_to_size (SoliPrintPreview *preview)
{
	GtkAdjustment *hadj, *vadj;
	gdouble width, height;
	gdouble paper_width, paper_height;
	gdouble zoomx, zoomy;

	get_adjustments (preview, &hadj, &vadj);

	width = gtk_adjustment_get_page_size (hadj);
	height = gtk_adjustment_get_page_size (vadj);

	width /= preview->n_columns;

	paper_width = get_paper_width (preview);
	paper_height = get_paper_height (preview);

	zoomx = MAX (1, width - 2 * PAGE_PAD) / paper_width;
	zoomy = MAX (1, height - 2 * PAGE_PAD) / paper_height;

	set_zoom_factor (preview, zoomx <= zoomy ? zoomx : zoomy);
}
Ejemplo n.º 4
0
static void
zoom_out (SoliPrintPreview *preview)
{
	set_zoom_factor (preview, preview->scale * ZOOM_OUT_FACTOR);
}
Ejemplo n.º 5
0
static void
zoom_in (GeditPrintPreview *preview)
{
	set_zoom_factor (preview, preview->scale * ZOOM_IN_FACTOR);
}