- GtkWidget *menuItem = (GtkWidget*) NULL;
-
- if (item->IsSeparator())
- menuItem = gtk_menu_item_new();
- else if (item->IsSubMenu())
- menuItem = gtk_menu_item_new_with_label(item->GetText().mbc_str());
- else
- menuItem = item->IsCheckable() ? gtk_check_menu_item_new_with_label(item->GetText().mbc_str())
- : gtk_menu_item_new_with_label(item->GetText().mbc_str());
-
- if (!item->IsSeparator())
- {
- gtk_signal_connect( GTK_OBJECT(menuItem), "select",
- GTK_SIGNAL_FUNC(gtk_menu_hilight_callback),
- (gpointer*)this );
-
- gtk_signal_connect( GTK_OBJECT(menuItem), "deselect",
- GTK_SIGNAL_FUNC(gtk_menu_nolight_callback),
- (gpointer*)this );
-
- if (!item->IsSubMenu())
- {
- gtk_signal_connect( GTK_OBJECT(menuItem), "activate",
- GTK_SIGNAL_FUNC(gtk_menu_clicked_callback),
- (gpointer*)this );
- }
- }
-
- gtk_menu_append( GTK_MENU(m_menu), menuItem );
- gtk_widget_show( menuItem );
-
- item->SetMenuItem(menuItem);