]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/cursor.cpp
Always send an erase event to satisfy some users...
[wxWidgets.git] / src / msw / cursor.cpp
index 19063594b34d66d48bd2ec42f717ce10cad5da51..09ab2ba32e6e7a8356dbe72eb43d6785d2d2bf75 100644 (file)
@@ -52,7 +52,7 @@
 // wxWin macros
 // ----------------------------------------------------------------------------
 
 // wxWin macros
 // ----------------------------------------------------------------------------
 
-IMPLEMENT_DYNAMIC_CLASS(wxCursor, wxCursorBase)
+IMPLEMENT_DYNAMIC_CLASS(wxCursor, wxGDIObject)
 
 // ----------------------------------------------------------------------------
 // globals
 
 // ----------------------------------------------------------------------------
 // globals
@@ -96,7 +96,7 @@ wxCursorRefData::wxCursorRefData()
   m_width = 32;
   m_height = 32;
 
   m_width = 32;
   m_height = 32;
 
-  m_destroyCursor = FALSE;
+  m_destroyCursor = TRUE;
 }
 
 void wxCursorRefData::Free()
 }
 
 void wxCursorRefData::Free()
@@ -145,7 +145,6 @@ wxCursor::wxCursor(const wxString& cursor_file,
 #else
         refData->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), cursor_file);
 #endif
 #else
         refData->m_hCursor = (WXHCURSOR) LoadCursor(wxGetInstance(), cursor_file);
 #endif
-        refData->m_destroyCursor = FALSE;
     }
     else if (flags == wxBITMAP_TYPE_CUR)
     {
     }
     else if (flags == wxBITMAP_TYPE_CUR)
     {
@@ -316,6 +315,10 @@ wxCursor::wxCursor(int cursor_type)
       refData->m_hCursor = (WXHCURSOR) LoadCursor((HINSTANCE) NULL, IDC_ARROW);
       break;
   }
       refData->m_hCursor = (WXHCURSOR) LoadCursor((HINSTANCE) NULL, IDC_ARROW);
       break;
   }
+
+  // no need to destroy the stock cursors
+  // TODO: check this
+  //m_refData->m_destroyCursor = FALSE;
 #endif
 }
 
 #endif
 }