summaryrefslogtreecommitdiff
path: root/linux/gtkmisc.cpp
diff options
context:
space:
mode:
authorleo2001-01-07 14:53:18 +0000
committerleo2001-01-07 14:53:18 +0000
commitd3453f15e6d7ae9c3d74766e856f927267870bcf (patch)
tree9c691e78223382eec9d4e08cddcac4472ba74d1b /linux/gtkmisc.cpp
parent674f6ff65189c34ba11c3c4408bf7f72021c2975 (diff)
Added icons to the menus
git-svn-id: http://svn.leocad.org/trunk@209 c7d43263-9d01-0410-8a33-9dba5d9f93d6
Diffstat (limited to 'linux/gtkmisc.cpp')
-rwxr-xr-xlinux/gtkmisc.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/linux/gtkmisc.cpp b/linux/gtkmisc.cpp
index 436f4e3..c0e9bf3 100755
--- a/linux/gtkmisc.cpp
+++ b/linux/gtkmisc.cpp
@@ -7,6 +7,8 @@
#include "gtkmisc.h"
#include "globals.h"
#include "project.h"
+#include "pixmenu.h"
+#include "gtktools.h"
// =============================================================================
// Pixmap functions
@@ -157,6 +159,38 @@ GtkWidget* create_menu_item (GtkWidget *menu, gchar *label, GtkAccelGroup *menu_
return item;
}
+GtkWidget* create_pixmap_menu_item (GtkWidget *menu, gchar *label, gchar **pixmap, GtkAccelGroup *menu_accel,
+ GtkSignalFunc func, GtkObject *window, int id, const char* data)
+{
+ GtkWidget *item, *accel_label, *pixmap_widget;
+ guint tmp_key;
+
+ item = gtk_pixmap_menu_item_new ();
+
+ accel_label = gtk_accel_label_new (label);
+ gtk_misc_set_alignment (GTK_MISC (accel_label), 0.0, 0.5);
+
+ gtk_container_add (GTK_CONTAINER (item), accel_label);
+ gtk_accel_label_set_accel_widget (GTK_ACCEL_LABEL (accel_label), item);
+ gtk_widget_show (accel_label);
+
+ pixmap_widget = new_pixmap (GTK_WIDGET (window), pixmap);
+ gtk_widget_show (pixmap_widget);
+ gtk_pixmap_menu_item_set_pixmap (GTK_PIXMAP_MENU_ITEM (item), pixmap_widget);
+
+ tmp_key = gtk_label_parse_uline (GTK_LABEL (accel_label), label);
+ gtk_widget_add_accelerator (item, "activate_item", menu_accel, tmp_key, 0, (GtkAccelFlags)0);
+
+ gtk_widget_show (item);
+ gtk_container_add (GTK_CONTAINER (menu), item);
+ gtk_signal_connect (GTK_OBJECT (item), "activate", GTK_SIGNAL_FUNC (func), GINT_TO_POINTER (id));
+
+ if (data != NULL)
+ gtk_object_set_data (window, data, item);
+
+ return item;
+}
+
GtkWidget* create_check_menu_item (GtkWidget *menu, gchar *label, GtkAccelGroup *menu_accel,
GtkSignalFunc func, GtkObject *window, int id, const char* data)
{