make sure update UI handlers are called for accelerators, #10130
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@56616 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1040,6 +1040,18 @@ wxString wxMenuItem::GetItemLabel() const
|
|||||||
// wxMenu
|
// wxMenu
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#if GTK_CHECK_VERSION(2,4,0)
|
||||||
|
// "can_activate_accel" from menu item
|
||||||
|
extern "C" {
|
||||||
|
static gboolean can_activate_accel(GtkWidget*, guint, wxMenu* menu)
|
||||||
|
{
|
||||||
|
menu->UpdateUI();
|
||||||
|
// always allow our "activate" handler to be called
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxMenu,wxEvtHandler)
|
IMPLEMENT_DYNAMIC_CLASS(wxMenu,wxEvtHandler)
|
||||||
|
|
||||||
void wxMenu::Init()
|
void wxMenu::Init()
|
||||||
@@ -1265,6 +1277,13 @@ bool wxMenu::GtkAppend(wxMenuItem *mitem, int pos)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
#if GTK_CHECK_VERSION(2,4,0)
|
||||||
|
if (gtk_check_version(2,4,0) == NULL)
|
||||||
|
{
|
||||||
|
g_signal_connect(menuItem, "can_activate_accel",
|
||||||
|
G_CALLBACK(can_activate_accel), this);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
g_signal_connect (menuItem, "activate",
|
g_signal_connect (menuItem, "activate",
|
||||||
G_CALLBACK (gtk_menu_clicked_callback),
|
G_CALLBACK (gtk_menu_clicked_callback),
|
||||||
this);
|
this);
|
||||||
|
Reference in New Issue
Block a user