/////////////////////////////////////////////////////////////////////////////
-// Name: cursor.h
+// Name: wx/gtk/cursor.h
// Purpose:
// Author: Robert Roebling
// Id: $Id$
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
+#ifndef _WX_GTK_CURSOR_H_
+#define _WX_GTK_CURSOR_H_
-#ifndef __GTKCURSORH__
-#define __GTKCURSORH__
-
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface
-#endif
-
-#include "wx/defs.h"
-#include "wx/object.h"
+#include "wx/gdiobj.h"
#include "wx/gdicmn.h"
-#if wxUSE_IMAGE
-#include "wx/image.h"
-#endif
+class WXDLLIMPEXP_FWD_CORE wxColour;
+class WXDLLIMPEXP_FWD_CORE wxImage;
//-----------------------------------------------------------------------------
// wxCursor
//-----------------------------------------------------------------------------
-class wxCursor: public wxObject
+class WXDLLIMPEXP_CORE wxCursor : public wxGDIObject
{
public:
-
wxCursor();
- wxCursor( int cursorId );
- wxCursor( const wxCursor &cursor );
+ wxCursor(wxStockCursor id) { InitFromStock(id); }
+#if WXWIN_COMPATIBILITY_2_8
+ wxCursor(int id) { InitFromStock((wxStockCursor)id); }
+#endif
#if wxUSE_IMAGE
wxCursor( const wxImage & image );
+ wxCursor(const wxString& name,
+ wxBitmapType type = wxCURSOR_DEFAULT_TYPE,
+ int hotSpotX = 0, int hotSpotY = 0);
#endif
- wxCursor( const char bits[], int width, int height,
- int hotSpotX=-1, int hotSpotY=-1,
- const char maskBits[]=0, wxColour *fg=0, wxColour *bg=0 );
- ~wxCursor();
- wxCursor& operator = ( const wxCursor& cursor );
- bool operator == ( const wxCursor& cursor ) const;
- bool operator != ( const wxCursor& cursor ) const;
- bool Ok() const;
+ wxCursor( const char bits[], int width, int height,
+ int hotSpotX = -1, int hotSpotY = -1,
+ const char maskBits[] = NULL,
+ const wxColour* fg = NULL, const wxColour* bg = NULL);
+ virtual ~wxCursor();
// implementation
GdkCursor *GetCursor() const;
+protected:
+ void InitFromStock(wxStockCursor);
+#if wxUSE_IMAGE
+ void InitFromImage(const wxImage& image);
+#endif
+
+ virtual wxGDIRefData *CreateGDIRefData() const;
+ virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const;
+
private:
DECLARE_DYNAMIC_CLASS(wxCursor)
};
-#endif // __GTKCURSORH__
+#endif // _WX_GTK_CURSOR_H_