From ddbed9f4d0e8f66ce82aa7789eb27131e3122e40 Mon Sep 17 00:00:00 2001 From: Robert Roebling Date: Tue, 20 Jun 2000 10:02:18 +0000 Subject: [PATCH] Corrected wxWindow::SetCursor(). git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_2_BRANCH@7611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/gtk/window.cpp | 11 ++++++++++- src/gtk1/window.cpp | 11 ++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index 68807f1da0..31056af60b 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -2935,7 +2935,16 @@ bool wxWindow::SetCursor( const wxCursor &cursor ) { wxCHECK_MSG( (m_widget != NULL), FALSE, wxT("invalid window") ); - return wxWindowBase::SetCursor( cursor ); + if (cursor == m_cursor) + return FALSE; + + if (g_isIdle) + wxapp_install_idle_handler(); + + if (cursor == wxNullCursor) + return wxWindowBase::SetCursor( *wxSTANDARD_CURSOR ); + else + return wxWindowBase::SetCursor( cursor ); } void wxWindow::WarpPointer( int x, int y ) diff --git a/src/gtk1/window.cpp b/src/gtk1/window.cpp index 68807f1da0..31056af60b 100644 --- a/src/gtk1/window.cpp +++ b/src/gtk1/window.cpp @@ -2935,7 +2935,16 @@ bool wxWindow::SetCursor( const wxCursor &cursor ) { wxCHECK_MSG( (m_widget != NULL), FALSE, wxT("invalid window") ); - return wxWindowBase::SetCursor( cursor ); + if (cursor == m_cursor) + return FALSE; + + if (g_isIdle) + wxapp_install_idle_handler(); + + if (cursor == wxNullCursor) + return wxWindowBase::SetCursor( *wxSTANDARD_CURSOR ); + else + return wxWindowBase::SetCursor( cursor ); } void wxWindow::WarpPointer( int x, int y )