Author: abrander
Date: 2010-02-13 01:42:29 +0100 (Sat, 13 Feb 2010)
New Revision: 3196

Modified:
   trunk/src/rs-actions.c
   trunk/src/rs-save-dialog.c
Log:
Only show file chooser if needed in RSSaveDialog.

Modified: trunk/src/rs-actions.c
===================================================================
--- trunk/src/rs-actions.c      2010-02-13 00:41:04 UTC (rev 3195)
+++ trunk/src/rs-actions.c      2010-02-13 00:42:29 UTC (rev 3196)
@@ -225,7 +225,7 @@
        {
                RSSaveDialog *dialog = rs_save_dialog_new();
                rs_save_dialog_set_photo(dialog, rs->photo, 
rs->current_setting);
-               gtk_widget_show_all(GTK_WIDGET(dialog));
+               gtk_widget_show(GTK_WIDGET(dialog));
        }
        else
                gui_status_notify(_("Export failed"));

Modified: trunk/src/rs-save-dialog.c
===================================================================
--- trunk/src/rs-save-dialog.c  2010-02-13 00:41:04 UTC (rev 3195)
+++ trunk/src/rs-save-dialog.c  2010-02-13 00:42:29 UTC (rev 3196)
@@ -126,12 +126,13 @@
 
        /* Pack everything nicely */
        gtk_container_add(GTK_CONTAINER(window), dialog->vbox);
+       gtk_box_pack_start(GTK_BOX(dialog->vbox), 
gui_confbox_get_widget(dialog->type_box), FALSE, TRUE, 0);
        gtk_box_pack_start(GTK_BOX(dialog->vbox), dialog->chooser, TRUE, TRUE, 
0);
-       gtk_box_pack_start(GTK_BOX(dialog->vbox), 
gui_confbox_get_widget(dialog->type_box), FALSE, TRUE, 0);
        gtk_box_pack_start(GTK_BOX(dialog->vbox), dialog->pref_bin, FALSE, 
TRUE, 0);
        gtk_box_pack_start(GTK_BOX(dialog->vbox), size_pref_new(dialog), FALSE, 
TRUE, 0);
        gtk_box_pack_start(GTK_BOX(dialog->vbox), button_box, FALSE, TRUE, 0);
 
+       gtk_widget_show_all(dialog->vbox);
        /* Set default action */
        GTK_WIDGET_SET_FLAGS(button_save, GTK_CAN_DEFAULT);
     gtk_window_set_default(window, button_save);
@@ -242,6 +243,11 @@
                gtk_widget_destroy(dialog->file_pref);
        dialog->file_pref = rs_output_get_parameter_widget(dialog->output, 
"save-as");
 
+       if (g_object_class_find_property(G_OBJECT_GET_CLASS(dialog->output), 
"filename"))
+               gtk_widget_show(dialog->chooser);
+       else
+               gtk_widget_hide(dialog->chooser);
+
        gtk_container_add(GTK_CONTAINER(dialog->pref_bin), dialog->file_pref);
        gtk_widget_show_all(dialog->file_pref);
 }
@@ -293,8 +299,9 @@
                "height", dialog->save_height,
                "settings", dialog->photo->settings[dialog->snapshot],
                NULL);
-       
-       g_object_set(dialog->output, "filename", 
gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog->chooser)), NULL);
+
+       if (g_object_class_find_property(G_OBJECT_GET_CLASS(dialog->output), 
"filename"))
+               g_object_set(dialog->output, "filename", 
gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog->chooser)), NULL);
        rs_output_execute(dialog->output, dialog->fend);
        rs_job_update_progress(slot, 0.75);
 


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

Reply via email to