Fixes for common dialogs

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Webster
2002-08-05 03:12:36 +00:00
parent d9cf726bf3
commit 760a4fb945

View File

@@ -14,17 +14,14 @@
#include "wx/bitmap.h" #include "wx/bitmap.h"
class WXDLLEXPORT wxCursorRefData: public wxBitmapRefData class WXDLLEXPORT wxCursorRefData: public wxGDIImageRefData
{ {
friend class WXDLLEXPORT wxBitmap;
friend class WXDLLEXPORT wxCursor;
public: public:
wxCursorRefData(); wxCursorRefData();
~wxCursorRefData(); ~wxCursorRefData() { Free(); }
virtual void Free(void);
protected: bool m_bDestroyCursor;
bool m_destroyCursor; }; // end of CLASS wxCursorRefData
};
#define M_CURSORDATA ((wxCursorRefData *)m_refData) #define M_CURSORDATA ((wxCursorRefData *)m_refData)
#define M_CURSORHANDLERDATA ((wxCursorRefData *)bitmap->m_refData) #define M_CURSORHANDLERDATA ((wxCursorRefData *)bitmap->m_refData)
@@ -32,33 +29,47 @@ protected:
// Cursor // Cursor
class WXDLLEXPORT wxCursor: public wxBitmap class WXDLLEXPORT wxCursor: public wxBitmap
{ {
DECLARE_DYNAMIC_CLASS(wxCursor)
public: public:
wxCursor(); wxCursor();
// Copy constructors // Copy constructors
inline wxCursor(const wxCursor& cursor) { Ref(cursor); } wxCursor(const wxCursor& rCursor) { Ref(rCursor); }
wxCursor(const wxImage& rImage); wxCursor(const wxImage& rImage);
wxCursor(const char bits[], int width, int height, int hotSpotX = -1, int hotSpotY = -1, wxCursor( const char acBits[]
const char maskBits[] = NULL); ,int nWidth
wxCursor(const wxString& name, long flags = wxBITMAP_TYPE_CUR_RESOURCE, ,int nHeight
int hotSpotX = 0, int hotSpotY = 0); ,int nHotSpotX = -1
wxCursor(int cursor_type); ,int nHotSpotY = -1
~wxCursor(); ,const char zMaskBits[] = NULL
);
wxCursor( const wxString& rsName
,long lFlags = wxBITMAP_TYPE_CUR_RESOURCE
,int nHotSpotX = 0
,int nHotSpotY = 0
);
wxCursor(int nCursorType);
inline ~wxCursor() { }
virtual bool Ok() const { return (m_refData != NULL) ; } inline wxCursor& operator = (const wxCursor& rCursor)
{
if (*this == rCursor)
return (*this);
Ref(rCursor);
return *this;
}
inline bool operator == (const wxCursor& rCursor) { return m_refData == rCursor.m_refData; }
inline bool operator != (const wxCursor& rCursor) { return m_refData != rCursor.m_refData; }
inline wxCursor& operator = (const wxCursor& cursor) { if (*this == cursor) return (*this); Ref(cursor); return *this; } inline WXHCURSOR GetHCURSOR(void) const { return (M_CURSORDATA ? M_CURSORDATA->m_hCursor : 0); }
inline bool operator == (const wxCursor& cursor) { return m_refData == cursor.m_refData; } inline void SetHCURSOR(WXHCURSOR hCursor) { SetHandle((WXHANDLE)hCursor); }
inline bool operator != (const wxCursor& cursor) { return m_refData != cursor.m_refData; }
void SetHCURSOR(WXHCURSOR cursor); protected:
inline WXHCURSOR GetHCURSOR() const { return (M_CURSORDATA ? M_CURSORDATA->m_hCursor : 0); } inline virtual wxGDIImageRefData* CreateData(void) const { return (new wxCursorRefData); }
bool FreeResource(bool force = FALSE); private:
}; DECLARE_DYNAMIC_CLASS(wxCursor)
}; // end of CLASS wxCursor
#endif #endif
// _WX_CURSOR_H_ // _WX_CURSOR_H_