From fba8dd39307b922bb440f2755e3901b80d0c3889 Mon Sep 17 00:00:00 2001 From: Aaron Spike Date: Tue, 13 Jun 2006 01:43:48 +0000 Subject: patch [ 1503865 ] Siox performance patch (bzr r1208) --- src/ui/dialog/tracedialog.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'src/ui') diff --git a/src/ui/dialog/tracedialog.cpp b/src/ui/dialog/tracedialog.cpp index b79d0f0e6..967ed4327 100644 --- a/src/ui/dialog/tracedialog.cpp +++ b/src/ui/dialog/tracedialog.cpp @@ -232,20 +232,19 @@ void TraceDialogImpl::potraceProcess(bool do_i_trace) pte.setMultiScanSmooth(do_i_smooth); //##### Get intermediate bitmap image - GdkPixbuf *pixbuf = tracer.getSelectedImage(); + Glib::RefPtr pixbuf = tracer.getSelectedImage(); if (pixbuf) { - GdkPixbuf *preview = pte.preview(pixbuf); + Glib::RefPtr preview = pte.preview(pixbuf); if (preview) { - Glib::RefPtr thePreview = Glib::wrap(preview); - int width = thePreview->get_width(); - int height = thePreview->get_height(); + int width = preview->get_width(); + int height = preview->get_height(); double scaleFactor = 100.0 / (double)height; int newWidth = (int) (((double)width) * scaleFactor); int newHeight = (int) (((double)height) * scaleFactor); Glib::RefPtr scaledPreview = - thePreview->scale_simple(newWidth, newHeight, + preview->scale_simple(newWidth, newHeight, Gdk::INTERP_NEAREST); //g_object_unref(preview); potracePreviewImage.set(scaledPreview); -- cgit v1.2.3