Author: akv
Date: 2013-05-06 09:42:18 +0200 (Mon, 06 May 2013)
New Revision: 4387

Modified:
   branches/4175-enfuse/plugins/output-pngfile/output-pngfile.c
Log:
Allowing PNG to be exported quick - will reduce the exporttime and is good for 
thumbnailgeneration for Enfusing.

Modified: branches/4175-enfuse/plugins/output-pngfile/output-pngfile.c
===================================================================
--- branches/4175-enfuse/plugins/output-pngfile/output-pngfile.c        
2013-05-05 12:40:12 UTC (rev 4386)
+++ branches/4175-enfuse/plugins/output-pngfile/output-pngfile.c        
2013-05-06 07:42:18 UTC (rev 4387)
@@ -41,6 +41,7 @@
        RSColorSpace *color_space;
        gboolean save16bit;
        gboolean copy_metadata;
+       gboolean quick;
 };
 
 struct _RSPngfileClass {
@@ -54,7 +55,8 @@
        PROP_FILENAME,
        PROP_16BIT,
        PROP_METADATA,
-       PROP_COLORSPACE
+       PROP_COLORSPACE,
+       PROP_QUICK
 };
 
 static void get_property (GObject *object, guint property_id, GValue *value, 
GParamSpec *pspec);
@@ -96,6 +98,11 @@
                        "copy-metadata", "Copy Metadata", _("Copy Exif metadata 
to XMP"),
                        TRUE, G_PARAM_READWRITE)
        );
+       g_object_class_install_property(object_class,
+               PROP_QUICK, g_param_spec_boolean(
+                       "quick", "Quick", _("Quick export"),
+                       TRUE, G_PARAM_READWRITE)
+       );
 
        output_class->execute = execute;
        output_class->extension = "png";
@@ -109,6 +116,7 @@
        pngfile->color_space = rs_color_space_new_singleton("RSSrgb");
        pngfile->save16bit = FALSE;
        pngfile->copy_metadata = TRUE;
+       pngfile->quick = FALSE;
 }
 
 static void
@@ -130,6 +138,9 @@
                case PROP_METADATA:
                        g_value_set_boolean(value, pngfile->copy_metadata);
                        break;
+               case PROP_QUICK:
+                       g_value_set_boolean(value, pngfile->quick);
+                       break;
                default:
                        G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, 
pspec);
        }
@@ -156,6 +167,9 @@
                case PROP_METADATA:
                        pngfile->copy_metadata = g_value_get_boolean(value);
                        break;
+               case PROP_QUICK:
+                       pngfile->quick = g_value_get_boolean(value);
+                       break;
                default:
                        G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, 
pspec);
        }
@@ -205,7 +219,7 @@
 
        RSFilterResponse *response;
        RSFilterRequest *request = rs_filter_request_new();
-       rs_filter_request_set_quick(RS_FILTER_REQUEST(request), FALSE);
+       rs_filter_request_set_quick(RS_FILTER_REQUEST(request), pngfile->quick);
        rs_filter_param_set_object(RS_FILTER_PARAM(request), "colorspace", 
pngfile->color_space);
 
        if (pngfile->save16bit)


_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit

Reply via email to