static int FindMenuItemRecursive( const wxMenu *menu, const wxString &menuString, const wxString &itemString )
{
- if (wxMenuItem::GetLabelText(wxConvertMnemonicsFromGTK(menu->GetTitle())) == wxMenuItem::GetLabelText(menuString))
+ if (wxMenuItem::GetLabelText(menu->GetTitle()) == wxMenuItem::GetLabelText(menuString))
{
int res = menu->FindItem( itemString );
if (res != wxNOT_FOUND)
wxMenu* menu = node->GetData();
- return wxConvertMnemonicsFromGTK(menu->GetTitle());
+ return menu->GetTitle();
}
void wxMenuBar::SetMenuLabel( size_t pos, const wxString& label )
wxMenu::~wxMenu()
{
+ // Destroying a menu generates a "hide" signal even if it's not shown
+ // currently, so disconnect it to avoid dummy wxEVT_MENU_CLOSE events
+ // generation.
+ g_signal_handlers_disconnect_by_func(m_menu, (gpointer)menu_hide, this);
+
// see wxMenu::Init
g_object_unref(m_menu);
return wxWindow::GTKGetLayout(m_owner);
}
+wxString wxMenu::GetTitle() const
+{
+ return wxConvertMnemonicsFromGTK(wxMenuBase::GetTitle());
+}
+
bool wxMenu::GtkAppend(wxMenuItem *mitem, int pos)
{
GtkWidget *menuItem;