friend class wxCursor;
- DECLARE_NO_ASSIGN_CLASS(wxCursorRefData)
+ wxDECLARE_NO_ASSIGN_CLASS(wxCursorRefData);
};
-#define M_CURSORDATA wx_static_cast(wxCursorRefData*, m_refData)
+#define M_CURSORDATA static_cast<wxCursorRefData*>(m_refData)
#if wxOSX_USE_COCOA_OR_CARBON
{0x000A, 0x0006}
},
+{
+{0x07E0, 0x07E0, 0x07E0, 0x07E0, 0x0810, 0x1088, 0x1088, 0x1088,
+0x1388, 0x1008, 0x1008, 0x0810, 0x07E0, 0x07E0, 0x07E0, 0x07E0},
+{0x07E0, 0x07E0, 0x07E0, 0x07E0, 0x0FF0, 0x1FF8, 0x1FF8, 0x1FF8,
+0x1FF8, 0x1FF8, 0x1FF8, 0x0FF0, 0x07E0, 0x07E0, 0x07E0, 0x07E0},
+{0x0008, 0x0008}
+},
+
};
#endif
#endif
}
-wxCursorRefData::wxCursorRefData(const wxCursorRefData& cursor)
+wxCursorRefData::wxCursorRefData(const wxCursorRefData& cursor) : wxGDIRefData()
{
- // FIXME: need to copy the cursor
m_hCursor = NULL;
#if wxOSX_USE_COCOA
- wxUnusedVar(cursor);
+ m_hCursor = (WX_NSCursor) wxMacCocoaRetain(cursor.m_hCursor);
#elif wxOSX_USE_CARBON
+ // FIXME: need to copy the cursor
m_disposeHandle = false;
m_releaseHandle = false;
m_isColorCursor = cursor.m_isColorCursor;
{
}
-wxCursor::wxCursor(const char WXUNUSED(bits)[], int WXUNUSED(width), int WXUNUSED(height),
- int WXUNUSED(hotSpotX), int WXUNUSED(hotSpotY), const char WXUNUSED(maskBits)[])
-{
-}
-
wxCursor::wxCursor( const wxImage &image )
{
#if wxUSE_IMAGE
#endif
}
-wxCursor::wxCursor(const char* const* bits)
-{
- (void) CreateFromXpm(bits);
-}
-
wxGDIRefData *wxCursor::CreateGDIRefData() const
{
return new wxCursorRefData;
wxGDIRefData *wxCursor::CloneGDIRefData(const wxGDIRefData *data) const
{
- return new wxCursorRefData(*wx_static_cast(const wxCursorRefData *, data));
-}
-
-bool wxCursor::CreateFromXpm(const char* const* bits)
-{
-#if wxUSE_IMAGE
- wxCHECK_MSG( bits != NULL, false, wxT("invalid cursor data") );
- wxXPMDecoder decoder;
- wxImage img = decoder.ReadData(bits);
- wxCHECK_MSG( img.Ok(), false, wxT("invalid cursor data") );
- CreateFromImage( img ) ;
- return true;
-#else
- return false;
-#endif
+ return new wxCursorRefData(*static_cast<const wxCursorRefData *>(data));
}
WXHCURSOR wxCursor::GetHCURSOR() const
#if wxUSE_IMAGE
wxImage image ;
image.LoadFile( cursor_file, flags ) ;
- if ( image.Ok() )
+ if ( image.IsOk() )
{
image.SetOption( wxIMAGE_OPTION_CUR_HOTSPOT_X, hotSpotX ) ;
image.SetOption( wxIMAGE_OPTION_CUR_HOTSPOT_Y, hotSpotY ) ;
}
// Cursors by stock number
-wxCursor::wxCursor(wxStockCursor cursor_type)
+void wxCursor::InitFromStock(wxStockCursor cursor_type)
{
m_refData = new wxCursorRefData;
#if wxOSX_USE_COCOA
M_CURSORDATA->m_hCursor = wxGetStockCursor(kwxCursorRoller);
break;
+ case wxCURSOR_OPEN_HAND:
+ M_CURSORDATA->m_themeCursor = kThemeOpenHandCursor;
+ break;
+
+ case wxCURSOR_CLOSED_HAND:
+ M_CURSORDATA->m_themeCursor = kThemeClosedHandCursor;
+ break;
+
case wxCURSOR_CHAR:
case wxCURSOR_ARROW:
case wxCURSOR_LEFT_BUTTON: