static GtkWidget * create_menubar(void) { GtkItemFactory *ifactory; GtkAccelGroup *ag; #ifdef HAVE_GTK_2 ag = gtk_accel_group_new(); #else ag = gtk_accel_group_get_default(); #endif ifactory = gtk_item_factory_new(GTK_TYPE_MENU_BAR, "<Main>", ag); gtk_item_factory_create_items(ifactory, sizeof(ife) / sizeof(GtkItemFactoryEntry), ife, NULL); gtk_widget_show(ifactory->widget); auto_next = gtk_item_factory_get_widget(ifactory, "/Options/Auto next"); gtk_check_menu_item_set_state(GTK_CHECK_MENU_ITEM(auto_next), TRUE); ttshow = gtk_item_factory_get_widget(ifactory, "/Options/Show tooltips"); gtk_check_menu_item_set_state(GTK_CHECK_MENU_ITEM(ttshow), TRUE); return ifactory->widget; }
GtkWidget * add_menu_check_button (GtkWidget * menu, gchar * label, gboolean state, GtkSignalFunc func, gpointer data) { GtkWidget *check; check = gtk_check_menu_item_new_with_label (label); gtk_signal_connect (GTK_OBJECT (check), "activate", func, data); gtk_menu_append (GTK_MENU (menu), check); gtk_check_menu_item_set_state (GTK_CHECK_MENU_ITEM (check), state); gtk_check_menu_item_set_show_toggle (GTK_CHECK_MENU_ITEM (check), TRUE); gtk_widget_show (check); return check; }
void wxMenuItem::Check( bool check ) { wxCHECK_RET( m_menuItem, wxT("invalid menu item") ); if (check == m_isChecked) return; wxMenuItemBase::Check( check ); switch ( GetKind() ) { case wxITEM_CHECK: case wxITEM_RADIO: gtk_check_menu_item_set_state( (GtkCheckMenuItem*)m_menuItem, (gint)check ); break; default: wxFAIL_MSG( wxT("can't check this item") ); } }