]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/cursor.h
activating DrawRectangle optimization
[wxWidgets.git] / include / wx / gtk / cursor.h
index 655103113a1a7e350b93cc6d3466cc621d9a06c1..533dc498478bbf7b825800cd4da4b1f588fc5dc6 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        cursor.h
+// Name:        wx/gtk/cursor.h
 // Purpose:
 // Author:      Robert Roebling
 // Id:          $Id$
 // Purpose:
 // Author:      Robert Roebling
 // Id:          $Id$
@@ -7,51 +7,54 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
+#ifndef _WX_GTK_CURSOR_H_
+#define _WX_GTK_CURSOR_H_
 
 
-#ifndef __GTKCURSORH__
-#define __GTKCURSORH__
-
-#if defined(__GNUG__) && !defined(__APPLE__)
-#pragma interface
-#endif
-
-#include "wx/defs.h"
-#include "wx/object.h"
+#include "wx/gdiobj.h"
 #include "wx/gdicmn.h"
 
 #include "wx/gdicmn.h"
 
-#if wxUSE_IMAGE
-#include "wx/image.h"
-#endif
+class WXDLLIMPEXP_FWD_CORE wxColour;
+class WXDLLIMPEXP_FWD_CORE wxImage;
 
 //-----------------------------------------------------------------------------
 // wxCursor
 //-----------------------------------------------------------------------------
 
 
 //-----------------------------------------------------------------------------
 // wxCursor
 //-----------------------------------------------------------------------------
 
-class wxCursor: public wxObject
+class WXDLLIMPEXP_CORE wxCursor : public wxGDIObject
 {
 public:
 {
 public:
-
     wxCursor();
     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 );
 #if wxUSE_IMAGE
     wxCursor( const wxImage & image );
+    wxCursor(const wxString& name,
+             wxBitmapType type = wxCURSOR_DEFAULT_TYPE,
+             int hotSpotX = 0, int hotSpotY = 0);
 #endif
 #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;
 
 
     // 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)
 };
 
 private:
     DECLARE_DYNAMIC_CLASS(wxCursor)
 };
 
-#endif // __GTKCURSORH__
+#endif // _WX_GTK_CURSOR_H_