[Goodies-commits] r3200 - ristretto/trunk/src
Stephan Arts
stephan at xfce.org
Mon Sep 10 22:47:29 CEST 2007
Author: stephan
Date: 2007-09-10 20:47:29 +0000 (Mon, 10 Sep 2007)
New Revision: 3200
Modified:
ristretto/trunk/src/main.c
ristretto/trunk/src/navigator.c
ristretto/trunk/src/navigator.h
ristretto/trunk/src/thumbnail_viewer.c
Log:
Adding close button
Modified: ristretto/trunk/src/main.c
===================================================================
--- ristretto/trunk/src/main.c 2007-09-10 19:29:22 UTC (rev 3199)
+++ ristretto/trunk/src/main.c 2007-09-10 20:47:29 UTC (rev 3200)
@@ -63,6 +63,8 @@
cb_rstto_clear_recent(GtkWidget *widget, GtkRecentManager *manager);
static gboolean
rstto_clear_recent(GtkRecentManager *manager);
+static void
+cb_rstto_close_current(GtkWidget *item, RsttoNavigator *navigator);
static void
cb_rstto_help_about(GtkToolItem *item, GtkWindow *);
@@ -180,7 +182,7 @@
GtkWidget *menu_item_open_dir = gtk_menu_item_new_with_mnemonic(_("O_pen Folder"));
GtkWidget *menu_item_recently = gtk_menu_item_new_with_mnemonic(_("_Recently used"));
GtkWidget *menu_item_separator = gtk_separator_menu_item_new();
- /* GtkWidget *menu_item_close = gtk_image_menu_item_new_from_stock(GTK_STOCK_CLOSE, accel_group); */
+ GtkWidget *menu_item_close = gtk_image_menu_item_new_from_stock(GTK_STOCK_CLOSE, accel_group);
GtkWidget *menu_item_quit = gtk_image_menu_item_new_from_stock(GTK_STOCK_QUIT, accel_group);
GtkWidget *menu_file = gtk_menu_new();
@@ -189,7 +191,7 @@
gtk_menu_shell_append(GTK_MENU_SHELL(menu_file), menu_item_open_dir);
gtk_menu_shell_append(GTK_MENU_SHELL(menu_file), menu_item_recently);
gtk_menu_shell_append(GTK_MENU_SHELL(menu_file), menu_item_separator);
- /* gtk_menu_shell_append(GTK_MENU_SHELL(menu_file), menu_item_close);*/
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu_file), menu_item_close);
gtk_menu_shell_append(GTK_MENU_SHELL(menu_file), menu_item_quit);
GtkWidget *recent_chooser_menu = gtk_recent_chooser_menu_new_for_manager(GTK_RECENT_MANAGER(recent_manager));
@@ -362,6 +364,7 @@
g_signal_connect(G_OBJECT(menu_item_open), "activate", G_CALLBACK(cb_rstto_open), navigator);
g_signal_connect(G_OBJECT(menu_item_open_dir), "activate", G_CALLBACK(cb_rstto_open_dir), navigator);
g_signal_connect(G_OBJECT(menu_item_help_about), "activate", G_CALLBACK(cb_rstto_help_about), window);
+ g_signal_connect(G_OBJECT(menu_item_close), "activate", G_CALLBACK(cb_rstto_close_current), navigator);
g_signal_connect(G_OBJECT(recent_chooser_menu), "item-activated", G_CALLBACK(cb_rstto_open_recent), navigator);
@@ -1052,3 +1055,11 @@
GList *list = g_list_prepend(NULL, info->path);
thunar_vfs_mime_handler_exec(THUNAR_VFS_MIME_HANDLER(app), NULL, list, NULL);
}
+
+static void
+cb_rstto_close_current(GtkWidget *item, RsttoNavigator *navigator)
+{
+ RsttoNavigatorEntry *entry = rstto_navigator_get_file(navigator);
+ rstto_navigator_remove(navigator, entry);
+ rstto_navigator_entry_free(entry);
+}
Modified: ristretto/trunk/src/navigator.c
===================================================================
--- ristretto/trunk/src/navigator.c 2007-09-10 19:29:22 UTC (rev 3199)
+++ ristretto/trunk/src/navigator.c 2007-09-10 20:47:29 UTC (rev 3200)
@@ -339,6 +339,20 @@
}
void
+rstto_navigator_remove (RsttoNavigator *navigator, RsttoNavigatorEntry *entry)
+{
+ if(navigator->file_iter)
+ {
+ if(navigator->file_iter->data == entry)
+ {
+ rstto_navigator_jump_forward(navigator);
+ }
+ }
+ navigator->file_list = g_list_remove(navigator->file_list, entry);
+ g_signal_emit(G_OBJECT(navigator), rstto_navigator_signals[RSTTO_NAVIGATOR_SIGNAL_REORDERED], 0, NULL);
+}
+
+void
rstto_navigator_clear (RsttoNavigator *navigator)
{
if(navigator->file_list)
Modified: ristretto/trunk/src/navigator.h
===================================================================
--- ristretto/trunk/src/navigator.h 2007-09-10 19:29:22 UTC (rev 3199)
+++ ristretto/trunk/src/navigator.h 2007-09-10 20:47:29 UTC (rev 3200)
@@ -88,6 +88,8 @@
void
rstto_navigator_add (RsttoNavigator *navigator, RsttoNavigatorEntry *entry);
+void
+rstto_navigator_remove (RsttoNavigator *navigator, RsttoNavigatorEntry *entry);
gint
rstto_navigator_get_n_files (RsttoNavigator *navigator);
RsttoNavigatorEntry *
Modified: ristretto/trunk/src/thumbnail_viewer.c
===================================================================
--- ristretto/trunk/src/thumbnail_viewer.c 2007-09-10 19:29:22 UTC (rev 3199)
+++ ristretto/trunk/src/thumbnail_viewer.c 2007-09-10 20:47:29 UTC (rev 3200)
@@ -385,6 +385,10 @@
static void
cb_rstto_thumbnailer_nav_reordered (RsttoNavigator *nav, RsttoThumbnailViewer *viewer)
{
+ if (GTK_WIDGET_REALIZED(viewer))
+ {
+ rstto_thumbnail_viewer_paint(viewer);
+ }
}
static gboolean
More information about the Goodies-commits
mailing list