Jean-Marie Aubry wrote:
>
> Hi all,
>
> Is it currently possible to use the options menus defined in glade? I
> can't see how to connect my handler to the `activate' signal. Actually,
> the widget properties editor just shows the button properties, not the
> ones for the menu.
This is covered in the FAQ:
3.6 How do I get a GtkOptionMenu to call a function when it changes?
Glade doesn't support this at present, but you can set it up manually.
When you create the window, get the option menu and connect to the "deactivate"
signal emitted by its menu:
window1 = create_window1 ();
option_menu = lookup_widget (window1, "optionmenu1");
gtk_signal_connect (GTK_OBJECT (GTK_OPTION_MENU (option_menu)->menu),
"deactivate", GTK_SIGNAL_FUNC (on_option_selected),
NULL);
Then add a handler to callbacks.c. You can get the index of the selected item
just like the previous answer:
static void
on_option_selected (GtkMenuShell *menu_shell,
gpointer data)
{
GtkWidget *active_item;
gint item_index;
active_item = gtk_menu_get_active (GTK_MENU (menu_shell));
item_index = g_list_index (menu_shell->children, active_item);
g_print ("In on_option_selected active: %i\n", item_index);
}
Damon
+---------------------------------------------------------------------+
To unsubscribe from this list, send a message to [EMAIL PROTECTED]
with the line "unsubscribe glade-devel" in the body of the message.