Differences and similarities between gtk_menu_set_active, gtk_menu_shell_activate_item and gtk_menu_shell_select_item



I've scoured the docs but I can't figure this one out.
gtk_menu_set_active sets the active item in a menu, whatever that
means. gtk_menu_shell_activate_item activates an item in a
GtkMenuShell which presumedly is the same thing as setting the active
item, isn't it? gtk_menu_shell_select_item *selects* an item. And now
it gets confusing, how can the selected item be different from the
active item? It seems to me that selecting an item is, in the context
of menus, synonymous with activating an item.

Only gtk_menu_shell_select_item seem to work as it should. It visibly
selects the item. gtk_menu_set_active_item doesn't seem to do anything
at all. Except for setting the "active_item" attribute which doesn't
seem to have any effect on any code. gtk_menu_shell_activate_item seem
to select an item and then closes the menu. Even if you specify
force_deactivate = FALSE. The docstring for gtk_menu_set_active_item
says that that method is and should only be used by GtkOptionMenu.
Which is a lie because the method is used by GtkComboBox too.

So it seems to me that gtk_menu_set_active_item should be deprecated
because it doesn't do anything and even if it did, either
gtk_menu_shell_activate_item or gtk_menu_shell_select_item does it
better.


-- 
mvh Björn


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]