X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d3c7fc996a73e9f6a83067bc28a3c5581a3fee65..7b0ccb8a603b4f97740acc65d9429bb58f7ba1bd:/src/motif/cursor.cpp diff --git a/src/motif/cursor.cpp b/src/motif/cursor.cpp index a40c79befa..134c7e9596 100644 --- a/src/motif/cursor.cpp +++ b/src/motif/cursor.cpp @@ -49,15 +49,16 @@ WX_DECLARE_LIST(wxXCursor, wxXCursorList); #include "wx/listimpl.cpp" WX_DEFINE_LIST(wxXCursorList) -class WXDLLEXPORT wxCursorRefData: public wxObjectRefData +class WXDLLEXPORT wxCursorRefData: public wxGDIRefData { - friend class WXDLLEXPORT wxCursor; public: wxCursorRefData(); virtual ~wxCursorRefData(); wxXCursorList m_cursors; // wxXCursor objects, one per display wxStockCursor m_cursorId; // wxWidgets standard cursor id + + friend class wxCursor; }; #define M_CURSORDATA ((wxCursorRefData *)m_refData) @@ -259,7 +260,7 @@ wxCursor::wxCursor(const wxString& name, long flags, int hotSpotX, int hotSpotY) int screen_num = DefaultScreen (dpy); int value = XReadBitmapFile (dpy, RootWindow (dpy, screen_num), - wxConstCast(name.c_str(), char), + name.mb_str(), &w, &h, &pixmap, &hotX, &hotY); if (value == BitmapSuccess) @@ -293,9 +294,14 @@ wxCursor::~wxCursor() { } -bool wxCursor::Ok() const +wxGDIRefData *wxCursor::CreateGDIRefData() const +{ + return new wxCursorRefData; +} + +wxGDIRefData *wxCursor::CloneGDIRefData(const wxGDIRefData *data) const { - return m_refData != NULL; + return new wxCursorRefData(*wx_static_cast(const wxCursorRefData *, data)); } // Motif-specific: create/get a cursor for the current display