X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/bff4ec6360d28f3309e5199685950b43ab5e079a..49a63afbad7646668df343d29edd88458bc7e0a9:/include/wx/msw/cursor.h?ds=sidebyside diff --git a/include/wx/msw/cursor.h b/include/wx/msw/cursor.h index 9b98d72390..19423ecffe 100644 --- a/include/wx/msw/cursor.h +++ b/include/wx/msw/cursor.h @@ -12,70 +12,34 @@ #ifndef _WX_CURSOR_H_ #define _WX_CURSOR_H_ -#include +#include "wx/msw/gdiimage.h" -#ifdef __GNUG__ - #pragma interface "cursor.h" -#endif - -// compatible (even if incorrect) behaviour by default: derive wxCursor from -// wxBitmap -#ifndef wxICON_IS_BITMAP - #define wxICON_IS_BITMAP 1 -#endif - -#if wxICON_IS_BITMAP - #include "wx/bitmap.h" - - #define wxCursorRefDataBase wxBitmapRefData - #define wxCursorBase wxBitmap -#else - #include "wx/msw/gdiimage.h" - - #define wxCursorRefDataBase wxGDIImageRefData - #define wxCursorBase wxGDIImage -#endif - -class WXDLLEXPORT wxCursorRefData : public wxCursorRefDataBase -{ -public: - wxCursorRefData(); - virtual ~wxCursorRefData() { Free(); } - - virtual void Free(); - - // for compatibility -public: - bool m_destroyCursor; -}; +class WXDLLIMPEXP_FWD_CORE wxImage; // Cursor -class WXDLLEXPORT wxCursor : public wxCursorBase +class WXDLLIMPEXP_CORE wxCursor : public wxGDIImage { public: + // constructors wxCursor(); - - // Copy constructors - wxCursor(const wxCursor& cursor) { Ref(cursor); } - wxCursor(const wxImage & image) ; - wxCursor(const char bits[], int width, int height, - int hotSpotX = -1, int hotSpotY = -1, - const char maskBits[] = NULL); + wxCursor(const wxImage& image); wxCursor(const wxString& name, - long flags = wxBITMAP_TYPE_CUR_RESOURCE, + wxBitmapType type = wxCURSOR_DEFAULT_TYPE, int hotSpotX = 0, int hotSpotY = 0); - wxCursor(int cursor_type); + wxCursor(wxStockCursor id) { InitFromStock(id); } +#if WXWIN_COMPATIBILITY_2_8 + wxCursor(int id) { InitFromStock((wxStockCursor)id); } +#endif virtual ~wxCursor(); - wxCursor& operator = (const wxCursor& cursor) { if (*this == cursor) return (*this); Ref(cursor); return *this; } - bool operator == (const wxCursor& cursor) const { return m_refData == cursor.m_refData; } - bool operator != (const wxCursor& cursor) const { return m_refData != cursor.m_refData; } - + // implementation only void SetHCURSOR(WXHCURSOR cursor) { SetHandle((WXHANDLE)cursor); } WXHCURSOR GetHCURSOR() const { return (WXHCURSOR)GetHandle(); } protected: - virtual wxGDIImageRefData *CreateData() const { return new wxCursorRefData; } + void InitFromStock(wxStockCursor); + + virtual wxGDIImageRefData *CreateData() const; private: DECLARE_DYNAMIC_CLASS(wxCursor)