X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/823fb291ae04c8236e4ef129209f488812d638fb..b7c746d017c42dfc5c44adff78b57b18aee90fbc:/src/gtk/notebook.cpp diff --git a/src/gtk/notebook.cpp b/src/gtk/notebook.cpp index be9cc04945..c063436f1f 100644 --- a/src/gtk/notebook.cpp +++ b/src/gtk/notebook.cpp @@ -101,9 +101,9 @@ static void gtk_notebook_page_changing_callback( GtkNotebook *widget, } extern "C" { -static void gtk_notebook_page_changed_callback( GtkNotebook *widget, +static void gtk_notebook_page_changed_callback( GtkNotebook * WXUNUSED(widget), GtkNotebookPage *WXUNUSED(gpage), - guint page, + guint WXUNUSED(page), wxNotebook *notebook ) { int old = notebook->m_oldSelection; @@ -169,9 +169,9 @@ static void wxInsertChildInNotebook(wxWindow* parent, wxWindow* child) // wxNotebook //----------------------------------------------------------------------------- -IMPLEMENT_DYNAMIC_CLASS(wxNotebook,wxControl) +IMPLEMENT_DYNAMIC_CLASS(wxNotebook,wxBookCtrlBase) -BEGIN_EVENT_TABLE(wxNotebook, wxControl) +BEGIN_EVENT_TABLE(wxNotebook, wxBookCtrlBase) EVT_NAVIGATION_KEY(wxNotebook::OnNavigationKey) END_EVENT_TABLE() @@ -294,26 +294,22 @@ int wxNotebook::DoSetSelection( size_t page, int flags ) if ( !(flags & SetSelection_SendEvent) ) { - g_signal_handlers_disconnect_by_func (m_widget, - (gpointer) gtk_notebook_page_changing_callback, - this); + g_signal_handlers_block_by_func(m_widget, + (gpointer)gtk_notebook_page_changing_callback, this); - g_signal_handlers_disconnect_by_func (m_widget, - (gpointer) gtk_notebook_page_changed_callback, - this); + g_signal_handlers_block_by_func(m_widget, + (gpointer)gtk_notebook_page_changed_callback, this); } gtk_notebook_set_current_page( GTK_NOTEBOOK(m_widget), page ); if ( !(flags & SetSelection_SendEvent) ) { - // reconnect to signals + g_signal_handlers_unblock_by_func(m_widget, + (gpointer)gtk_notebook_page_changing_callback, this); - g_signal_connect (m_widget, "switch_page", - G_CALLBACK (gtk_notebook_page_changing_callback), this); - - g_signal_connect_after (m_widget, "switch_page", - G_CALLBACK (gtk_notebook_page_changed_callback), this); + g_signal_handlers_unblock_by_func(m_widget, + (gpointer)gtk_notebook_page_changed_callback, this); } wxNotebookPage *client = GetPage(page);