Author: post
Date: 2012-01-31 21:26:50 +0100 (Tue, 31 Jan 2012)
New Revision: 4121
Modified:
trunk/src/rs-store.c
trunk/src/ui.xml
Log:
Add simple rightclick menu to iconview.
Modified: trunk/src/rs-store.c
===================================================================
--- trunk/src/rs-store.c 2012-01-31 18:32:47 UTC (rev 4120)
+++ trunk/src/rs-store.c 2012-01-31 20:26:50 UTC (rev 4121)
@@ -175,6 +175,7 @@
void store_get_fullname(GtkListStore *store, GtkTreeIter *iter, gchar
**fullname);
void store_set_members(GtkListStore *store, GtkTreeIter *iter, GList *members);
void got_metadata(RSMetadata *metadata, gpointer user_data);
+static gboolean button(GtkWidget *widget, GdkEventButton *event, RSStore
*store);
/**
* Class initializer
@@ -324,6 +325,8 @@
#error You need to update this switch statement
#endif
}
+ g_signal_connect_after (G_OBJECT (store->iconview[n]),
"button_press_event", G_CALLBACK (button), store->store);
+ gtk_widget_set_events(GTK_WIDGET(store->iconview[n]),
GDK_BUTTON_PRESS_MASK);
gtk_label_set_markup(GTK_LABEL(store->label[n]), label_text[n]);
gtk_misc_set_alignment(GTK_MISC(store->label[n]), 0.0, 0.5);
@@ -370,6 +373,28 @@
}
static gboolean
+button(GtkWidget *widget, GdkEventButton *event, RSStore *store)
+{
+ GtkUIManager *ui_manager = gui_get_uimanager();
+
+ if (event->button == 3)
+ {
+ if (! ((event->state & GDK_CONTROL_MASK) || ((event->state &
GDK_SHIFT_MASK))))
+ {
+ event->button = 1;
+ GdkEvent *copy = gdk_event_copy(event);
+ gdk_event_put(copy);
+ GTK_CATCHUP();
+ gdk_event_free(copy);
+ }
+ GtkWidget *menu = gtk_ui_manager_get_widget (ui_manager,
"/IconviewPopup");
+ gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, 0,
GDK_CURRENT_TIME);
+ return FALSE;
+ }
+ return FALSE;
+}
+
+static gboolean
scroll_event(GtkWidget *widget, GdkEventScroll *event, gpointer user_data)
{
gboolean handled = FALSE;
Modified: trunk/src/ui.xml
===================================================================
--- trunk/src/ui.xml 2012-01-31 18:32:47 UTC (rev 4120)
+++ trunk/src/ui.xml 2012-01-31 20:26:50 UTC (rev 4121)
@@ -125,4 +125,25 @@
<menuitem action="ExposureMask" />
<menuitem action="Split" />
</popup>
+ <popup name="IconviewPopup" action="IconviewPopup">
+ <separator />
+<!--
+ <menuitem action="RenamePhoto" />
+ <menuitem action="AutoRename" />
+ <menuitem action="CopyPhoto" />
+ <separator /> -->
+ <menuitem action="PasteSettings" />
+ <menuitem action="FlagPhoto" />
+ <menu action="PriorityMenu">
+ <menuitem action="Priority1" />
+ <menuitem action="Priority2" />
+ <menuitem action="Priority3" />
+ <menuitem action="RemovePriority" />
+ </menu>
+ <menu action="WhiteBalanceMenu">
+ <menuitem action="CameraWB" />
+ <menuitem action="AutoWB" />
+ </menu>
+ <menuitem action="TagPhoto" />
+ </popup>
</ui>
_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit