X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/923d28da0eed674dfd7f4a497568ac14a29f0189..12bb29f5432174ecbd65549bda832d70d34a98ae:/src/x11/cursor.cpp diff --git a/src/x11/cursor.cpp b/src/x11/cursor.cpp index 3aff9bfa0e..c314e4f387 100644 --- a/src/x11/cursor.cpp +++ b/src/x11/cursor.cpp @@ -18,10 +18,10 @@ #include "wx/app.h" #include "wx/utils.h" #include "wx/icon.h" + #include "wx/gdicmn.h" + #include "wx/image.h" #endif -#include "wx/gdicmn.h" - #include "wx/x11/private.h" #if !wxUSE_NANOX @@ -32,15 +32,20 @@ // wxCursor //----------------------------------------------------------------------------- -class wxCursorRefData: public wxObjectRefData +class wxCursorRefData: public wxGDIRefData { public: wxCursorRefData(); - ~wxCursorRefData(); + virtual ~wxCursorRefData(); WXCursor m_cursor; WXDisplay *m_display; + +private: + // There is no way to copy m_cursor so we can't implement a copy ctor + // properly. + wxDECLARE_NO_COPY_CLASS(wxCursorRefData); }; wxCursorRefData::wxCursorRefData() @@ -66,7 +71,7 @@ wxCursor::wxCursor() } -wxCursor::wxCursor( int cursorId ) +void wxCursor::InitFromStock( wxStockCursor cursorId ) { m_refData = new wxCursorRefData(); @@ -124,15 +129,15 @@ wxCursor::wxCursor( int cursorId ) #endif } -wxCursor::wxCursor(const char bits[], int width, int height, - int hotSpotX, int hotSpotY, - const char maskBits[], wxColour *fg, wxColour *bg) +wxCursor::wxCursor(const wxString& WXUNUSED(name), + wxBitmapType WXUNUSED(type), + int WXUNUSED(hotSpotX), int WXUNUSED(hotSpotY)) { - wxFAIL_MSG( wxT("wxCursor creation from bits not yet implemented") ); + wxFAIL_MSG( wxT("wxCursor creation from file not yet implemented") ); } #if wxUSE_IMAGE -wxCursor::wxCursor( const wxImage & image ) +wxCursor::wxCursor( const wxImage & WXUNUSED(image) ) { wxFAIL_MSG( wxT("wxCursor creation from wxImage not yet implemented") ); } @@ -142,19 +147,17 @@ wxCursor::~wxCursor() { } -bool wxCursor::operator == ( const wxCursor& cursor ) const +wxGDIRefData *wxCursor::CreateGDIRefData() const { - return m_refData == cursor.m_refData; + return new wxCursorRefData; } -bool wxCursor::operator != ( const wxCursor& cursor ) const +wxGDIRefData * +wxCursor::CloneGDIRefData(const wxGDIRefData * WXUNUSED(data)) const { - return m_refData != cursor.m_refData; -} + wxFAIL_MSG( wxS("Cloning cursors is not implemented in wxX11.") ); -bool wxCursor::Ok() const -{ - return (m_refData != NULL); + return new wxCursorRefData; } WXCursor wxCursor::GetCursor() const @@ -198,7 +201,7 @@ void wxBeginBusyCursor( const wxCursor *WXUNUSED(cursor) ) if (gs_busyCount++ > 0) return; - wxASSERT_MSG( !gs_savedCursor.Ok(), + wxASSERT_MSG( !gs_savedCursor.IsOk(), wxT("forgot to call wxEndBusyCursor, will leak memory") ); gs_savedCursor = g_globalCursor;