X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3b59cdbfaf7df79499424c92ff6177736429ff8a..39a16cb41d0f31923a88b0e50761fb7d4a14729a:/src/gtk1/menu.cpp diff --git a/src/gtk1/menu.cpp b/src/gtk1/menu.cpp index daff7c92be..e30e13f7b8 100644 --- a/src/gtk1/menu.cpp +++ b/src/gtk1/menu.cpp @@ -78,7 +78,7 @@ wxMenuBar::wxMenuBar( long style ) } PostCreation(); - + ApplyWidgetStyle(); } @@ -110,7 +110,7 @@ wxMenuBar::wxMenuBar() m_widget = GTK_WIDGET(m_menubar); PostCreation(); - + ApplyWidgetStyle(); } @@ -351,20 +351,25 @@ wxMenu *wxMenuBar::Remove(size_t pos) if ( !menu ) return (wxMenu*) NULL; +/* GtkMenuShell *menu_shell = GTK_MENU_SHELL(m_factory->widget); + printf( "factory entries before %d\n", (int)g_slist_length(m_factory->items) ); printf( "menu shell entries before %d\n", (int)g_list_length( menu_shell->children ) ); - +*/ + // unparent calls unref() and that would delete the widget so we raise // the ref count to 2 artificially before invoking unparent. gtk_widget_ref( menu->m_menu ); gtk_widget_unparent( menu->m_menu ); - + gtk_widget_destroy( menu->m_owner ); - + +/* printf( "factory entries after %d\n", (int)g_slist_length(m_factory->items) ); printf( "menu shell entries after %d\n", (int)g_list_length( menu_shell->children ) ); - +*/ + return menu; } @@ -484,7 +489,7 @@ void wxMenuBar::SetLabelTop( size_t pos, const wxString& label ) static void gtk_menu_clicked_callback( GtkWidget *widget, wxMenu *menu ) { if (g_isIdle) wxapp_install_idle_handler(); - + int id = menu->FindMenuIdByMenuItem(widget); /* should find it for normal (not popup) menu */