Many changes:

- Introduced GTKGetWindow() which returns all GdkWindows associated with the
  given wxWindow
- Renamed IsOwnGtkWindow() to GTKIsOwnWindow() to avoid confusion with the old
  virtual function (the new one is non-virtual and is implemented in terms of
  GTKGetWindow())
- Refactored/simplified event handlers code in gtk/window.cpp
- Fixed some header guards names (__GTKFOO__ -> _WX_GTK_FOO_H_)
- Added GTKUpdateCursor() which sets the current cursor for all windows
  returned by GTKGetWindow()
- Factored out code from many different classes in wxControl::OnInternalIdle()
  which now updates the cursor, checks for internal focus and sends update UI
  events


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2006-08-25 12:59:28 +00:00
parent d5eb08546f
commit ef5c70f96f
32 changed files with 276 additions and 395 deletions

View File

@@ -1325,21 +1325,23 @@ GtkWidget* wxComboBox::GetConnectWidget()
return GTK_WIDGET( entry );
}
bool wxComboBox::IsOwnGtkWindow( GdkWindow *window )
GdkWindow *wxComboBox::GTKGetWindow(wxArrayGdkWindows& windows) const
{
GtkEntry *entry = NULL;
#ifdef __WXGTK24__
if (!gtk_check_version(2,4,0))
{
entry = GTK_ENTRY( GTK_BIN(m_widget)->child );
return (window == entry->text_area);
wxUnusedVar(windows);
return GTK_ENTRY(GTK_BIN(m_widget)->child)->text_area;
}
else
#endif
#endif // GTK+ 2.4
{
entry = GTK_ENTRY( GTK_COMBO(m_widget)->entry );
return ( (window == entry->text_area) ||
(window == GTK_COMBO(m_widget)->button->window ) );
windows.push_back(GTK_ENTRY(GTK_COMBO(m_widget)->entry)->text_area);
windows.push_back(GTK_COMBO(m_widget)->button->window);
// indicate that we return multiple windows in the windows array
return NULL;
}
}