Fix broken and missing DataView interface items for Phoenix
[wxWidgets.git] / src / gtk1 / cursor.cpp
index bd1e6ca2bd6535d3f8820d88c665900fc46870e7..b3e56ef837faa34edf977a4c29c987c257e0ca84 100644 (file)
@@ -31,19 +31,23 @@ extern bool g_isIdle;
 // wxCursor
 //-----------------------------------------------------------------------------
 
 // wxCursor
 //-----------------------------------------------------------------------------
 
-class wxCursorRefData: public wxObjectRefData
+class wxCursorRefData : public wxGDIRefData
 {
 {
-  public:
-
+public:
     wxCursorRefData();
     virtual ~wxCursorRefData();
 
     GdkCursor *m_cursor;
     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()
 {
 };
 
 wxCursorRefData::wxCursorRefData()
 {
-    m_cursor = (GdkCursor *) NULL;
+    m_cursor = NULL;
 }
 
 wxCursorRefData::~wxCursorRefData()
 }
 
 wxCursorRefData::~wxCursorRefData()
@@ -62,7 +66,7 @@ wxCursor::wxCursor()
 
 }
 
 
 }
 
-wxCursor::wxCursor( int cursorId )
+void wxCursor::InitFromStock( wxStockCursor cursorId )
 {
     m_refData = new wxCursorRefData();
 
 {
     m_refData = new wxCursorRefData();
 
@@ -316,14 +320,22 @@ wxCursor::~wxCursor()
 {
 }
 
 {
 }
 
-bool wxCursor::IsOk() const
+GdkCursor *wxCursor::GetCursor() const
 {
 {
-    return (m_refData != NULL);
+    return M_CURSORDATA->m_cursor;
 }
 
 }
 
-GdkCursor *wxCursor::GetCursor() const
+wxGDIRefData *wxCursor::CreateGDIRefData() const
 {
 {
-    return M_CURSORDATA->m_cursor;
+    return new wxCursorRefData;
+}
+
+wxGDIRefData *
+wxCursor::CloneGDIRefData(const wxGDIRefData * WXUNUSED(data)) const
+{
+    wxFAIL_MSG( wxS("Cloning cursors is not implemented in wxGTK.") );
+
+    return new wxCursorRefData;
 }
 
 //-----------------------------------------------------------------------------
 }
 
 //-----------------------------------------------------------------------------
@@ -362,7 +374,7 @@ void wxBeginBusyCursor( const wxCursor *WXUNUSED(cursor) )
     if (gs_busyCount++ > 0)
         return;
 
     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;
                   wxT("forgot to call wxEndBusyCursor, will leak memory") );
 
     gs_savedCursor = g_globalCursor;