diff src/bar_sort.c @ 138:71e1ebee420e

replaced gchar* path with FileData *fd
author nadvornik
date Tue, 11 Sep 2007 20:06:29 +0000
parents f63ecca6c087
children f6e307c7bad6
line wrap: on
line diff
--- a/src/bar_sort.c	Thu Aug 23 20:45:59 2007 +0000
+++ b/src/bar_sort.c	Tue Sep 11 20:06:29 2007 +0000
@@ -82,7 +82,7 @@
 static gint bar_sort_selection_state = BAR_SORT_SELECTION_IMAGE;
 
 
-static void bar_sort_undo_set(SortData *sd, GList *src_list, const gchar *src, const gchar *dest);
+static void bar_sort_undo_set(SortData *sd, GList *src_list, FileData *src, const gchar *dest);
 static void bar_sort_add_close(SortData *sd);
 
 
@@ -122,7 +122,7 @@
 		g_free(name);
 		}
 
-	path_list_free(list);
+	string_list_free(list);
 }
 
 static void bar_sort_mode_sync(SortData *sd, SortModeType mode)
@@ -170,13 +170,13 @@
 }
 
 /* this takes control of src_list */
-static void bar_sort_undo_set(SortData *sd, GList *src_list, const gchar *src, const gchar *dest)
+static void bar_sort_undo_set(SortData *sd, GList *src_list, FileData *src, const gchar *dest)
 {
-	path_list_free(sd->undo_src_list);
-	sd->undo_src_list = src_list;
+	string_list_free(sd->undo_src_list);
+	sd->undo_src_list = filelist_to_path_list(src_list);
 
 	g_free(sd->undo_src);
-	sd->undo_src = g_strdup(src);
+	sd->undo_src = src ? g_strdup(src->path) : NULL;
 	g_free(sd->undo_dest);
 	sd->undo_dest = g_strdup(dest);
 
@@ -200,14 +200,14 @@
 			GList *list;
 			gchar *src_dir;
 
-			list = g_list_append(NULL, g_strdup(sd->undo_dest));
+			list = g_list_append(NULL, file_data_new_simple(sd->undo_dest));
 			src_dir = remove_level_from_path(sd->undo_src);
 			file_util_move_simple(list, src_dir);
 			g_free(src_dir);
 			}
 			break;
 		case BAR_SORT_COPY:
-			file_util_delete(sd->undo_dest, NULL, button);
+			file_util_delete(file_data_new_simple(sd->undo_dest), NULL, button);
 			break;
 		case BAR_SORT_LINK:
 			if (!unlink_file(sd->undo_dest))
@@ -225,7 +225,7 @@
 
 	if (isfile(sd->undo_src))
 		{
-		layout_image_set_path(sd->lw, sd->undo_src);
+		layout_image_set_fd(sd->lw, file_data_new_simple(sd->undo_src));
 		}
 
 	bar_sort_undo_set(sd, NULL, NULL, NULL);
@@ -242,7 +242,7 @@
 
 		source = work->data;
 		work = work->next;
-		collect_manager_remove(source, sd->undo_dest);
+		collect_manager_remove(file_data_new_simple(source), sd->undo_dest);
 		}
 
 	bar_sort_undo_set(sd, NULL, NULL, NULL);
@@ -262,17 +262,17 @@
 		}
 }
 
-static void bar_sort_bookmark_select_folder(SortData *sd, const gchar *source, const gchar *path)
+static void bar_sort_bookmark_select_folder(SortData *sd, FileData *source, const gchar *path)
 {
 	GList *list;
 	gchar *dest_path;
 
 	if (!isdir(path)) return;
 
-	dest_path = concat_dir_and_file(path, filename_from_path(source));
+	dest_path = concat_dir_and_file(path, source->name);
 	bar_sort_undo_set(sd, NULL, source, dest_path);
 
-	list = g_list_append(NULL, g_strdup(source));
+	list = g_list_append(NULL, file_data_ref(source));
 
 	switch (sd->action)
 		{
@@ -286,7 +286,7 @@
 			list = NULL;
 			break;
 		case BAR_SORT_LINK:
-			if (symlink_utf8(source, dest_path))
+			if (symlink_utf8(source->path, dest_path))
 				{
 				layout_image_next(sd->lw);
 				}
@@ -306,14 +306,14 @@
 	g_free(dest_path);
 }
 
-static void bar_sort_bookmark_select_collection(SortData *sd, const gchar *source, const gchar *path)
+static void bar_sort_bookmark_select_collection(SortData *sd, FileData *source, const gchar *path)
 {
 	GList *list = NULL;
 
 	switch (sd->selection)
 		{
 		case BAR_SORT_SELECTION_IMAGE:
-			list = g_list_append(NULL, g_strdup(source));
+			list = g_list_append(NULL, file_data_ref(source));
 			break;
 		case BAR_SORT_SELECTION_SELECTED:
 			list = layout_selection_list(sd->lw);
@@ -330,20 +330,20 @@
 
 	while (list)
 		{
-		gchar *image_path;
+		FileData *image_fd;
 
-		image_path = list->data;
+		image_fd = list->data;
 		list = list->next;
-		collect_manager_add(image_path, path);
+		collect_manager_add(image_fd, path);
 		}
 }
 
 static void bar_sort_bookmark_select(const gchar *path, gpointer data)
 {
 	SortData *sd = data;
-	const gchar *source;
+	FileData *source;
 
-	source = layout_image_get_path(sd->lw);
+	source = layout_image_get_fd(sd->lw);
 	if (!path || !source) return;
 
 	if (sd->mode == BAR_SORT_MODE_FOLDER)