Mercurial > geeqie
diff src/utilops.c @ 1211:e2bbe90b0dcd
most of the metadata options now works
author | nadvornik |
---|---|
date | Sun, 21 Dec 2008 21:20:36 +0000 |
parents | 3ff2aa99108b |
children | 584eae03d747 |
line wrap: on
line diff
--- a/src/utilops.c Sun Dec 21 16:26:03 2008 +0000 +++ b/src/utilops.c Sun Dec 21 21:20:36 2008 +0000 @@ -402,7 +402,7 @@ } } -static GtkWidget *file_util_dialog_add_list(GtkWidget *box, GList *list, gint full_paths) +static GtkWidget *file_util_dialog_add_list(GtkWidget *box, GList *list, gint full_paths, gboolean with_sidecars) { GtkWidget *scrolled; GtkWidget *view; @@ -443,7 +443,7 @@ GtkTreeIter iter; gchar *sidecars; - sidecars = file_data_sc_list_to_string(fd); + sidecars = with_sidecars ? file_data_sc_list_to_string(fd) : NULL; gtk_list_store_append(store, &iter); gtk_list_store_set(store, &iter, @@ -1303,8 +1303,8 @@ box = pref_group_new(box, TRUE, ud->messages.desc_flist, GTK_ORIENTATION_HORIZONTAL); - ud->listview = file_util_dialog_add_list(box, ud->flist, FALSE); - file_util_dialog_add_list_column(ud->listview, _("Sidecars"), FALSE, UTILITY_COLUMN_SIDECARS); + ud->listview = file_util_dialog_add_list(box, ud->flist, FALSE, ud->with_sidecars); + if (ud->with_sidecars) file_util_dialog_add_list_column(ud->listview, _("Sidecars"), FALSE, UTILITY_COLUMN_SIDECARS); selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(ud->listview)); gtk_tree_selection_set_mode(selection, GTK_SELECTION_SINGLE); @@ -1395,7 +1395,7 @@ box = pref_group_new(box, TRUE, ud->messages.desc_flist, GTK_ORIENTATION_HORIZONTAL); - ud->listview = file_util_dialog_add_list(box, ud->flist, FALSE); + ud->listview = file_util_dialog_add_list(box, ud->flist, FALSE, ud->with_sidecars); file_util_dialog_add_list_column(ud->listview, _("Sidecars"), FALSE, UTILITY_COLUMN_SIDECARS); file_util_dialog_add_list_column(ud->listview, _("New name"), FALSE, UTILITY_COLUMN_DEST_NAME); @@ -1548,6 +1548,12 @@ break; case UTILITY_PHASE_CANCEL: case UTILITY_PHASE_DONE: + + /* FIXME: put it here for now */ + if (ud->type == UTILITY_TYPE_WRITE_METADATA) + { + metadata_write_queue_remove_list(ud->flist); + } if (ud->with_sidecars) file_data_sc_free_ci_list(ud->flist); else @@ -2051,7 +2057,7 @@ box = pref_group_new(box, TRUE, _("Subfolders:"), GTK_ORIENTATION_VERTICAL); rlist = filelist_sort_path(rlist); - file_util_dialog_add_list(box, rlist, FALSE); + file_util_dialog_add_list(box, rlist, FALSE, FALSE); gtk_widget_show(gd->dialog); } @@ -2261,7 +2267,8 @@ void file_util_write_metadata(FileData *source_fd, GList *source_list, GtkWidget *parent) { - file_util_write_metadata_full(source_fd, source_list, parent, UTILITY_PHASE_START); + file_util_write_metadata_full(source_fd, source_list, parent, + (options->metadata.save_in_image_file && options->metadata.confirm_write) ? UTILITY_PHASE_START : UTILITY_PHASE_ENTERING); } void file_util_copy(FileData *source_fd, GList *source_list, const gchar *dest_path, GtkWidget *parent)