gtk_menu: update the menu

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

 



Hi GTK list,

I have a question about the gtk_menu wigdet.

Application:
My GTK 2.2 application build a menu from a sting, in the string every item is separated by "\t".
So the string can look like: "item 1\titem 2\titem3\n".
This string can change when I am running the app, and that must be made visual in the menu.


Problem: If the string changes (it contains other items) I can not see it in the menu.

Question:
What is the best way to make new string entrys visual in the menu?
I this possible anyway?, Or must I use an other widget (like gtk_list).
Or perhaps there I must use an Update-function in my code to update the menu.


Solutions for my problem are more then welcome! :-)
Regards
Maarten.

This is how I am creating the menu from the string: 'strings':

GtkWidget * create_option_menu (gchar * strings)
{
   GtkWidget *menu;
   GtkWidget *option_menu;
   GtkWidget *menu_item;
   gchar *p;

menu = gtk_menu_new ();
p = strtok (strings, "\t"); while (p != NULL) {
menu_item = gtk_menu_item_new_with_label (p);
gtk_widget_show (menu_item);
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);
g_signal_connect_swapped (G_OBJECT (menu_item), "activate", G_CALLBACK (menu_item_select), (gpointer) g_strdup (p));
p = strtok (NULL, "\t"); } option_menu = gtk_option_menu_new ();
gtk_option_menu_set_menu (GTK_OPTION_MENU (option_menu), menu);
return option_menu;
}



I use strtok to separate the entrys from the string.




[Index of Archives]     [Touch Screen Library]     [GIMP Users]     [Gnome]     [KDE]     [Yosemite News]     [Steve's Art]

  Powered by Linux