1 /////////////////////////////////////////////////////////////////////////////
2 // Name:        wx/gtk/cursor.h
3 // Purpose:
4 // Author:      Robert Roebling
5 // Copyright:   (c) 1998 Robert Roebling
6 // Licence:     wxWindows licence
7 /////////////////////////////////////////////////////////////////////////////
8 
9 #ifndef _WX_GTK_CURSOR_H_
10 #define _WX_GTK_CURSOR_H_
11 
12 #include "wx/gdiobj.h"
13 #include "wx/gdicmn.h"
14 
15 class WXDLLIMPEXP_FWD_CORE wxColour;
16 class WXDLLIMPEXP_FWD_CORE wxImage;
17 
18 //-----------------------------------------------------------------------------
19 // wxCursor
20 //-----------------------------------------------------------------------------
21 
22 class WXDLLIMPEXP_CORE wxCursor : public wxGDIObject
23 {
24 public:
25     wxCursor();
wxCursor(wxStockCursor id)26     wxCursor(wxStockCursor id) { InitFromStock(id); }
27 #if WXWIN_COMPATIBILITY_2_8
wxCursor(int id)28     wxCursor(int id) { InitFromStock((wxStockCursor)id); }
29 #endif
30 #if wxUSE_IMAGE
31     wxCursor( const wxImage & image );
32     wxCursor(const wxString& name,
33              wxBitmapType type = wxCURSOR_DEFAULT_TYPE,
34              int hotSpotX = 0, int hotSpotY = 0);
35 #endif
36     wxCursor( const char bits[], int width, int height,
37               int hotSpotX = -1, int hotSpotY = -1,
38               const char maskBits[] = NULL,
39               const wxColour* fg = NULL, const wxColour* bg = NULL);
40     virtual ~wxCursor();
41 
42     // implementation
43 
44     GdkCursor *GetCursor() const;
45 
46 protected:
47     void InitFromStock(wxStockCursor);
48 #if wxUSE_IMAGE
49     void InitFromImage(const wxImage& image);
50 #endif
51 
52     virtual wxGDIRefData *CreateGDIRefData() const;
53     virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const;
54 
55 private:
56     DECLARE_DYNAMIC_CLASS(wxCursor)
57 };
58 
59 #endif // _WX_GTK_CURSOR_H_
60