X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b7cacb43db1e69b87b257a67912b4d52995b070a..2032371b3b1fa438e441ac3e5e63b792f64015a7:/src/gtk1/cursor.cpp diff --git a/src/gtk1/cursor.cpp b/src/gtk1/cursor.cpp index 4f4ab1af4a..b3e56ef837 100644 --- a/src/gtk1/cursor.cpp +++ b/src/gtk1/cursor.cpp @@ -31,19 +31,23 @@ extern bool g_isIdle; // wxCursor //----------------------------------------------------------------------------- -class wxCursorRefData: public wxObjectRefData +class wxCursorRefData : public wxGDIRefData { - public: - +public: wxCursorRefData(); virtual ~wxCursorRefData(); GdkCursor *m_cursor; + +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() { - m_cursor = (GdkCursor *) NULL; + m_cursor = NULL; } wxCursorRefData::~wxCursorRefData() @@ -62,7 +66,7 @@ wxCursor::wxCursor() } -wxCursor::wxCursor( int cursorId ) +void wxCursor::InitFromStock( wxStockCursor cursorId ) { m_refData = new wxCursorRefData(); @@ -316,24 +320,22 @@ wxCursor::~wxCursor() { } -bool wxCursor::operator == ( const wxCursor& cursor ) const +GdkCursor *wxCursor::GetCursor() const { - return m_refData == cursor.m_refData; + return M_CURSORDATA->m_cursor; } -bool wxCursor::operator != ( const wxCursor& cursor ) const +wxGDIRefData *wxCursor::CreateGDIRefData() const { - return m_refData != cursor.m_refData; + return new wxCursorRefData; } -bool wxCursor::IsOk() const +wxGDIRefData * +wxCursor::CloneGDIRefData(const wxGDIRefData * WXUNUSED(data)) const { - return (m_refData != NULL); -} + wxFAIL_MSG( wxS("Cloning cursors is not implemented in wxGTK.") ); -GdkCursor *wxCursor::GetCursor() const -{ - return M_CURSORDATA->m_cursor; + return new wxCursorRefData; } //----------------------------------------------------------------------------- @@ -372,7 +374,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;