[gimp] app: Gather save dialog uri defaults in one place
- From: Martin Nordholts <martinn src gnome org>
- To: svn-commits-list gnome org
- Subject: [gimp] app: Gather save dialog uri defaults in one place
- Date: Fri, 1 May 2009 06:24:23 -0400 (EDT)
commit a93346d0a0511d71288ce61e2a847e80d4503224
Author: Martin Nordholts <martinn src gnome org>
Date: Fri May 1 12:22:41 2009 +0200
app: Gather save dialog uri defaults in one place
Gather save dialog uri defaults in one place. Move the small bits of
it from file_save_dialog_new() to gimp_file_dialog_set_save_image()
where the rest is.
---
app/actions/file-commands.c | 15 ++++++++++-----
app/dialogs/file-save-dialog.c | 9 ---------
app/widgets/gimpfiledialog.c | 5 +++++
app/widgets/gimpfiledialog.h | 1 +
4 files changed, 16 insertions(+), 14 deletions(-)
diff --git a/app/actions/file-commands.c b/app/actions/file-commands.c
index ce293c0..6fd74ac 100644
--- a/app/actions/file-commands.c
+++ b/app/actions/file-commands.c
@@ -71,7 +71,8 @@ static void file_open_dialog_show (Gimp *gimp,
GimpImage *image,
const gchar *uri,
gboolean open_as_layers);
-static void file_save_dialog_show (GimpImage *image,
+static void file_save_dialog_show (Gimp *gimp,
+ GimpImage *image,
GtkWidget *parent,
const gchar *title,
gboolean save_a_copy,
@@ -205,12 +206,14 @@ file_save_cmd_callback (GtkAction *action,
gint value,
gpointer data)
{
+ Gimp *gimp;
GimpDisplay *display;
GimpImage *image;
GtkWidget *widget;
GimpSaveMode save_mode;
const gchar *uri;
gboolean saved = FALSE;
+ return_if_no_gimp (gimp, data);
return_if_no_display (display, data);
return_if_no_widget (widget, data);
@@ -263,13 +266,13 @@ file_save_cmd_callback (GtkAction *action,
}
case GIMP_SAVE_MODE_SAVE_AS:
- file_save_dialog_show (display->image, widget,
+ file_save_dialog_show (gimp, display->image, widget,
_("Save Image"), FALSE,
save_mode == GIMP_SAVE_MODE_SAVE_AND_CLOSE);
break;
case GIMP_SAVE_MODE_SAVE_A_COPY:
- file_save_dialog_show (display->image, widget,
+ file_save_dialog_show (gimp, display->image, widget,
_("Save a Copy of the Image"), TRUE,
FALSE);
break;
@@ -460,7 +463,8 @@ file_open_dialog_show (Gimp *gimp,
}
static void
-file_save_dialog_show (GimpImage *image,
+file_save_dialog_show (Gimp *gimp,
+ GimpImage *image,
GtkWidget *parent,
const gchar *title,
gboolean save_a_copy,
@@ -496,7 +500,8 @@ file_save_dialog_show (GimpImage *image,
gtk_window_set_title (GTK_WINDOW (dialog), title);
gimp_file_dialog_set_save_image (GIMP_FILE_DIALOG (dialog),
- image, save_a_copy, close_after_saving);
+ gimp, image, save_a_copy,
+ close_after_saving);
gtk_window_present (GTK_WINDOW (dialog));
}
diff --git a/app/dialogs/file-save-dialog.c b/app/dialogs/file-save-dialog.c
index b49af68..35cc8a4 100644
--- a/app/dialogs/file-save-dialog.c
+++ b/app/dialogs/file-save-dialog.c
@@ -82,7 +82,6 @@ file_save_dialog_new (Gimp *gimp)
{
GtkWidget *dialog;
GimpFileDialogState *state;
- const gchar *uri;
g_return_val_if_fail (GIMP_IS_GIMP (gimp), NULL);
@@ -97,14 +96,6 @@ file_save_dialog_new (Gimp *gimp)
if (state)
gimp_file_dialog_set_state (GIMP_FILE_DIALOG (dialog), state);
- uri = g_object_get_data (G_OBJECT (gimp), GIMP_FILE_SAVE_LAST_URI_KEY);
-
- if (uri)
- {
- gtk_file_chooser_set_uri (GTK_FILE_CHOOSER (dialog), uri);
- gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER (dialog), "");
- }
-
g_signal_connect (dialog, "response",
G_CALLBACK (file_save_dialog_response),
gimp);
diff --git a/app/widgets/gimpfiledialog.c b/app/widgets/gimpfiledialog.c
index 4df5eaa..7f0645c 100644
--- a/app/widgets/gimpfiledialog.c
+++ b/app/widgets/gimpfiledialog.c
@@ -454,6 +454,7 @@ gimp_file_dialog_set_open_image (GimpFileDialog *dialog,
void
gimp_file_dialog_set_save_image (GimpFileDialog *dialog,
+ Gimp *gimp,
GimpImage *image,
gboolean save_a_copy,
gboolean close_after_saving)
@@ -536,6 +537,10 @@ gimp_file_dialog_set_save_image (GimpFileDialog *dialog,
if (folder)
gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (dialog), folder);
+ else
+ gtk_file_chooser_set_uri (GTK_FILE_CHOOSER (dialog),
+ g_object_get_data (G_OBJECT (gimp),
+ GIMP_FILE_SAVE_LAST_URI_KEY));
}
g_free (dirname);
diff --git a/app/widgets/gimpfiledialog.h b/app/widgets/gimpfiledialog.h
index 6b94bf8..391bdaf 100644
--- a/app/widgets/gimpfiledialog.h
+++ b/app/widgets/gimpfiledialog.h
@@ -82,6 +82,7 @@ void gimp_file_dialog_set_open_image (GimpFileDialog *dialog,
GimpImage *image,
gboolean open_as_layers);
void gimp_file_dialog_set_save_image (GimpFileDialog *dialog,
+ Gimp *gimp,
GimpImage *image,
gboolean save_a_copy,
gboolean close_after_saving);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]