[Xfce4-commits] r26194 - xarchiver/trunk/src

Giuseppe Torelli colossus at xfce.org
Thu Oct 25 12:07:32 CEST 2007


Author: colossus
Date: 2007-10-25 10:07:32 +0000 (Thu, 25 Oct 2007)
New Revision: 26194

Modified:
   xarchiver/trunk/src/archive.c
   xarchiver/trunk/src/archive.h
   xarchiver/trunk/src/interface.c
   xarchiver/trunk/src/window.c
Log:
Initial code for arrow buttons.


Modified: xarchiver/trunk/src/archive.c
===================================================================
--- xarchiver/trunk/src/archive.c	2007-10-25 06:15:10 UTC (rev 26193)
+++ xarchiver/trunk/src/archive.c	2007-10-25 10:07:32 UTC (rev 26194)
@@ -450,6 +450,7 @@
 	{
 		entry = archive->root_entry->child;
 		gtk_entry_set_text(GTK_ENTRY(location_entry),"\0");
+		//gtk_widget_set_sensitive(back_button,FALSE);
 		gtk_widget_set_sensitive(up_button,FALSE);
 		gtk_widget_set_sensitive(home_button,FALSE);
 	}

Modified: xarchiver/trunk/src/archive.h
===================================================================
--- xarchiver/trunk/src/archive.h	2007-10-25 06:15:10 UTC (rev 26193)
+++ xarchiver/trunk/src/archive.h	2007-10-25 10:07:32 UTC (rev 26194)
@@ -70,6 +70,8 @@
 	XArchiveStatus status;
 	XEntry *root_entry;
 	XEntry *entry;
+	GList *history;
+	GList *present;
 	gchar *path;
 	gchar *escaped_path;
 	gchar *tmp;

Modified: xarchiver/trunk/src/interface.c
===================================================================
--- xarchiver/trunk/src/interface.c	2007-10-25 06:15:10 UTC (rev 26193)
+++ xarchiver/trunk/src/interface.c	2007-10-25 10:07:32 UTC (rev 26194)
@@ -919,6 +919,12 @@
 			xa_update_window_with_archive_entries(archive[idx],NULL);
 		break;
 
+		/* Back */
+		case 1:
+			archive[idx]->present = archive[idx]->present->prev;
+			xa_update_window_with_archive_entries(archive[idx],archive[idx]->present->data);
+		break;
+
 		/* Up */
 		case 2:
 			new_entry = xa_find_entry_from_path(archive[idx]->root_entry,gtk_entry_get_text(GTK_ENTRY(location_entry)));
@@ -930,5 +936,11 @@
 			}
 			xa_update_window_with_archive_entries(archive[idx],new_entry->prev);
 		break;
+		
+		/* Forward */
+		case 3:
+			archive[idx]->present = archive[idx]->present->next;
+			xa_update_window_with_archive_entries(archive[idx],archive[idx]->present->data);
+		break;
 	}
 }

Modified: xarchiver/trunk/src/window.c
===================================================================
--- xarchiver/trunk/src/window.c	2007-10-25 06:15:10 UTC (rev 26193)
+++ xarchiver/trunk/src/window.c	2007-10-25 10:07:32 UTC (rev 26194)
@@ -2054,5 +2054,15 @@
 		gtk_widget_set_sensitive(up_button,TRUE);
 		gtk_widget_set_sensitive(home_button,TRUE);
 	}
+	if (archive[idx]->location_entry_path != NULL)
+	{
+		archive[idx]->history = g_list_append(archive[idx]->history,xa_find_entry_from_path(archive[idx]->root_entry,archive[idx]->location_entry_path));
+		archive[idx]->present = g_list_last(archive[idx]->history);
+	}
+	else
+	{
+		archive[idx]->history = g_list_append(archive[idx]->history,archive[idx]->root_entry);
+		archive[idx]->present = g_list_last(archive[idx]->history);
+	}
 	xa_update_window_with_archive_entries(archive[idx],entry);
 }



More information about the Xfce4-commits mailing list