[gimp: 23/27] app: Emit the GimpImage::exported signal when image is exported
- From: Martin Nordholts <martinn src gnome org>
- To: svn-commits-list gnome org
- Subject: [gimp: 23/27] app: Emit the GimpImage::exported signal when image is exported
- Date: Sat, 16 May 2009 07:26:17 -0400 (EDT)
commit c23370c3af216080437859391bc303a588f562f3
Author: Martin Nordholts <martinn src gnome org>
Date: Sat May 16 11:28:53 2009 +0200
app: Emit the GimpImage::exported signal when image is exported
---
app/actions/file-commands.c | 4 ++--
app/dialogs/file-save-dialog.c | 4 +++-
app/dialogs/file-save-dialog.h | 1 +
app/file/file-save.c | 6 +++++-
app/file/file-save.h | 1 +
app/widgets/gimpdnd-xds.c | 13 +++++++++----
6 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/app/actions/file-commands.c b/app/actions/file-commands.c
index 0193b49..a6d623d 100644
--- a/app/actions/file-commands.c
+++ b/app/actions/file-commands.c
@@ -251,7 +251,7 @@ file_save_cmd_callback (GtkAction *action,
gimp, image, uri,
save_proc,
GIMP_RUN_WITH_LAST_VALS,
- TRUE, TRUE);
+ TRUE, FALSE, TRUE);
break;
}
@@ -302,7 +302,7 @@ file_save_cmd_callback (GtkAction *action,
gimp, image, uri,
export_proc,
GIMP_RUN_WITH_LAST_VALS,
- FALSE, TRUE);
+ FALSE, TRUE, TRUE);
}
}
break;
diff --git a/app/dialogs/file-save-dialog.c b/app/dialogs/file-save-dialog.c
index 4b85a88..1bc0abc 100644
--- a/app/dialogs/file-save-dialog.c
+++ b/app/dialogs/file-save-dialog.c
@@ -190,6 +190,7 @@ file_save_dialog_response (GtkWidget *save_dialog,
save_proc,
GIMP_RUN_INTERACTIVE,
! dialog->save_a_copy && ! dialog->export,
+ dialog->export,
FALSE))
{
/* Save was successful, now store the URI in a couple of
@@ -648,6 +649,7 @@ file_save_dialog_save_image (GimpProgress *progress,
GimpPlugInProcedure *save_proc,
GimpRunMode run_mode,
gboolean change_saved_state,
+ gboolean export,
gboolean verbose_cancel)
{
GimpPDBStatusType status;
@@ -663,7 +665,7 @@ file_save_dialog_save_image (GimpProgress *progress,
}
status = file_save (gimp, image, progress, uri,
- save_proc, run_mode, change_saved_state, &error);
+ save_proc, run_mode, change_saved_state, export, &error);
switch (status)
{
diff --git a/app/dialogs/file-save-dialog.h b/app/dialogs/file-save-dialog.h
index a2ec5ed..abf1b07 100644
--- a/app/dialogs/file-save-dialog.h
+++ b/app/dialogs/file-save-dialog.h
@@ -29,6 +29,7 @@ gboolean file_save_dialog_save_image (GimpProgress *progress_and_handl
GimpPlugInProcedure *write_proc,
GimpRunMode run_mode,
gboolean save_a_copy,
+ gboolean export,
gboolean verbose_cancel);
diff --git a/app/file/file-save.c b/app/file/file-save.c
index c62b717..1704056 100644
--- a/app/file/file-save.c
+++ b/app/file/file-save.c
@@ -74,6 +74,7 @@ file_save (Gimp *gimp,
GimpPlugInProcedure *file_proc,
GimpRunMode run_mode,
gboolean change_saved_state,
+ gboolean export,
GError **error)
{
GimpDrawable *drawable;
@@ -162,7 +163,10 @@ file_save (Gimp *gimp,
gimp_image_clean_all (image);
}
- gimp_image_saved (image, uri);
+ if (! export)
+ gimp_image_saved (image, uri);
+ else
+ gimp_image_exported (image, uri);
documents = GIMP_DOCUMENT_LIST (image->gimp->documents);
imagefile = gimp_document_list_add_uri (documents,
diff --git a/app/file/file-save.h b/app/file/file-save.h
index 5fdd025..9596a72 100644
--- a/app/file/file-save.h
+++ b/app/file/file-save.h
@@ -28,6 +28,7 @@ GimpPDBStatusType file_save (Gimp *gimp,
GimpPlugInProcedure *file_proc,
GimpRunMode run_mode,
gboolean change_saved_state,
+ gboolean export,
GError **error);
diff --git a/app/widgets/gimpdnd-xds.c b/app/widgets/gimpdnd-xds.c
index 88183fc..1b4c433 100644
--- a/app/widgets/gimpdnd-xds.c
+++ b/app/widgets/gimpdnd-xds.c
@@ -120,7 +120,8 @@ gimp_dnd_xds_save_image (GdkDragContext *context,
gint length;
guchar *data;
gchar *uri;
- GError *error = NULL;
+ gboolean export = FALSE;
+ GError *error = NULL;
g_return_if_fail (GDK_IS_DRAG_CONTEXT (context));
g_return_if_fail (GIMP_IS_IMAGE (image));
@@ -142,8 +143,12 @@ gimp_dnd_xds_save_image (GdkDragContext *context,
proc = file_procedure_find (image->gimp->plug_in_manager->save_procs, uri,
NULL);
if (! proc)
- proc = file_procedure_find (image->gimp->plug_in_manager->export_procs, uri,
- NULL);
+ {
+ proc = file_procedure_find (image->gimp->plug_in_manager->export_procs, uri,
+ NULL);
+
+ export = TRUE;
+ }
if (proc)
{
@@ -157,7 +162,7 @@ gimp_dnd_xds_save_image (GdkDragContext *context,
{
if (file_save (image->gimp,
image, NULL,
- uri, proc, GIMP_RUN_INTERACTIVE, TRUE,
+ uri, proc, GIMP_RUN_INTERACTIVE, TRUE, export,
&error) == GIMP_PDB_SUCCESS)
{
gtk_selection_data_set (selection,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]