Make SetCursor work.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Elliott
2007-08-19 04:01:13 +00:00
parent ea29564c40
commit 6ebbf01f47

View File

@@ -839,7 +839,15 @@ bool wxWindowCocoa::SetCursor(const wxCursor &cursor)
{
if(!wxWindowBase::SetCursor(cursor))
return false;
// Set up the cursor rect so that invalidateCursorRectsForView: will destroy it.
// If we don't do this then Cocoa thinks (rightly) that we don't have any cursor
// rects and thus won't ever call resetCursorRects.
[GetNSView() addCursorRect: [GetNSView() visibleRect] cursor: m_cursor.GetNSCursor()];
// Invalidate the cursor rects so the cursor will change
// Note that it is not enough to remove the old one (if any) and add the new one.
// For the rects to work properly, Cocoa itself must call resetCursorRects.
[[GetNSView() window] invalidateCursorRectsForView:GetNSView()];
return true;
}