diff --git a/include/wx/cocoa/window.h b/include/wx/cocoa/window.h index b30b23ac1d..730790e563 100644 --- a/include/wx/cocoa/window.h +++ b/include/wx/cocoa/window.h @@ -142,6 +142,8 @@ public: virtual void SetFocus(); // Warp the pointer the given position virtual void WarpPointer(int x_pos, int y_pos) ; + // Change the window's cursor + virtual bool SetCursor( const wxCursor &cursor ); // Send the window a refresh event virtual void Refresh(bool eraseBack = true, const wxRect *rect = NULL); // Set/get the window's font diff --git a/src/cocoa/window.mm b/src/cocoa/window.mm index 69689cbf72..23fee50c2a 100644 --- a/src/cocoa/window.mm +++ b/src/cocoa/window.mm @@ -669,6 +669,15 @@ bool wxWindowCocoa::Cocoa_resetCursorRects() return true; } +bool wxWindowCocoa::SetCursor(const wxCursor &cursor) +{ + if(!wxWindowBase::SetCursor(cursor)) + return false; + // Invalidate the cursor rects so the cursor will change + [[GetNSView() window] invalidateCursorRectsForView:GetNSView()]; + return true; +} + bool wxWindowCocoa::Cocoa_viewDidMoveToWindow() { wxLogTrace(wxTRACE_COCOA,wxT("wxWindow=%p::viewDidMoveToWindow"),this);