]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/contrib/ogl/oglhelpers.h
Detect Apple bug that prevents the joystick code compiling for OS X 10.1
[wxWidgets.git] / wxPython / contrib / ogl / oglhelpers.h
index 19404c2826b3a78308986cd76dd049c7eaf46675..a4c12d68ff86b0d6a83e369f49d9df0dec752f7b 100644 (file)
@@ -54,8 +54,7 @@
     DEC_PYCALLBACK__WXCP2DBL2INT    (OnSizingEndDragLeft);  \
     DEC_PYCALLBACK__2DBL            (OnBeginSize);          \
     DEC_PYCALLBACK__2DBL            (OnEndSize);            \
     DEC_PYCALLBACK__WXCP2DBL2INT    (OnSizingEndDragLeft);  \
     DEC_PYCALLBACK__2DBL            (OnBeginSize);          \
     DEC_PYCALLBACK__2DBL            (OnEndSize);            \
-                                                            \
-    PYPRIVATE;
+    PYPRIVATE
 
 
 #define WXSHAPE_IMP_CALLBACKS(CLASS, PARENT)       \
 
 
 #define WXSHAPE_IMP_CALLBACKS(CLASS, PARENT)       \
@@ -87,7 +86,7 @@
     IMP_PYCALLBACK__WXCP2DBL2INT    (CLASS, PARENT,  OnSizingBeginDragLeft);\
     IMP_PYCALLBACK__WXCP2DBL2INT    (CLASS, PARENT,  OnSizingEndDragLeft);  \
     IMP_PYCALLBACK__2DBL            (CLASS, PARENT,  OnBeginSize);          \
     IMP_PYCALLBACK__WXCP2DBL2INT    (CLASS, PARENT,  OnSizingBeginDragLeft);\
     IMP_PYCALLBACK__WXCP2DBL2INT    (CLASS, PARENT,  OnSizingEndDragLeft);  \
     IMP_PYCALLBACK__2DBL            (CLASS, PARENT,  OnBeginSize);          \
-    IMP_PYCALLBACK__2DBL            (CLASS, PARENT,  OnEndSize);            \
+    IMP_PYCALLBACK__2DBL            (CLASS, PARENT,  OnEndSize)
 
 
     //  This one may be difficult...
 
 
     //  This one may be difficult...
 
 
 //---------------------------------------------------------------------------
 
 
 //---------------------------------------------------------------------------
-// These are prototypes of some helper functions found in oglhelpers.cpp
+// These are prototypes of some helper functions found in ogl.i
 
 
-wxList* wxPy_wxListHelper(PyObject* pyList, char* className);
+wxList* wxPy_wxListHelper(PyObject* pyList, const wxChar* className);
 wxList* wxPy_wxRealPoint_ListHelper(PyObject* pyList);
 wxList* wxPy_wxRealPoint_ListHelper(PyObject* pyList);
-
+PyObject* wxPyMake_wxShapeEvtHandler(wxShapeEvtHandler* source);
+PyObject* wxPy_ConvertShapeList(wxListBase* list);
+PyObject* wxPy_ConvertRealPointList(wxListBase* list);
 
 
 //---------------------------------------------------------------------------
 
 
 //---------------------------------------------------------------------------
@@ -108,12 +109,14 @@ wxList* wxPy_wxRealPoint_ListHelper(PyObject* pyList);
 // virtual callbacks into Python callbacks.
 
 class wxPyShapeCanvas : public wxShapeCanvas {
 // virtual callbacks into Python callbacks.
 
 class wxPyShapeCanvas : public wxShapeCanvas {
+    DECLARE_DYNAMIC_CLASS(wxPyShapeCanvas);
 public:
     wxPyShapeCanvas(wxWindow* parent = NULL, wxWindowID id = -1,
                     const wxPoint& pos = wxDefaultPosition,
                     const wxSize& size = wxDefaultSize,
 public:
     wxPyShapeCanvas(wxWindow* parent = NULL, wxWindowID id = -1,
                     const wxPoint& pos = wxDefaultPosition,
                     const wxSize& size = wxDefaultSize,
-                    long style = wxBORDER)
-        : wxShapeCanvas(parent, id, pos, size, style) {}
+                    long style = wxBORDER,
+                    const wxString& name = wxT("shapeCanvas"))
+        : wxShapeCanvas(parent, id, pos, size, style, name) {}
 
     DEC_PYCALLBACK__2DBLINT(OnBeginDragLeft);
     DEC_PYCALLBACK__2DBLINT(OnBeginDragRight);
 
     DEC_PYCALLBACK__2DBLINT(OnBeginDragLeft);
     DEC_PYCALLBACK__2DBLINT(OnBeginDragRight);
@@ -130,6 +133,7 @@ public:
 
 
 class wxPyShapeEvtHandler : public wxShapeEvtHandler {
 
 
 class wxPyShapeEvtHandler : public wxShapeEvtHandler {
+    DECLARE_DYNAMIC_CLASS(wxPyShapeEvtHandler);
 public:
     wxPyShapeEvtHandler(wxShapeEvtHandler *prev = NULL, wxShape *shape = NULL)
         : wxShapeEvtHandler(prev, shape) {}
 public:
     wxPyShapeEvtHandler(wxShapeEvtHandler *prev = NULL, wxShape *shape = NULL)
         : wxShapeEvtHandler(prev, shape) {}
@@ -139,16 +143,24 @@ public:
 
 
 class wxPyShape : public wxShape {
 
 
 class wxPyShape : public wxShape {
+    DECLARE_ABSTRACT_CLASS(wxPyShape);
 public:
     wxPyShape(wxPyShapeCanvas *can = NULL)
         : wxShape(can) {}
 
 public:
     wxPyShape(wxPyShapeCanvas *can = NULL)
         : wxShape(can) {}
 
+    virtual void GetBoundingBoxMin(double *width, double *height)
+    {
+        if (width) *width = 0.0;
+        if (height) *height = 0.0;
+    }
+
     WXSHAPE_DEC_CALLBACKS();
 
 };
 
 
 class wxPyRectangleShape : public wxRectangleShape {
     WXSHAPE_DEC_CALLBACKS();
 
 };
 
 
 class wxPyRectangleShape : public wxRectangleShape {
+    DECLARE_DYNAMIC_CLASS(wxPyRectangleShape);
 public:
     wxPyRectangleShape(double width = 0.0, double height = 0.0)
         : wxRectangleShape(width, height) {}
 public:
     wxPyRectangleShape(double width = 0.0, double height = 0.0)
         : wxRectangleShape(width, height) {}
@@ -157,6 +169,7 @@ public:
 };
 
 class wxPyControlPoint : public wxControlPoint {
 };
 
 class wxPyControlPoint : public wxControlPoint {
+    DECLARE_DYNAMIC_CLASS(wxPyControlPoint);
 public:
     wxPyControlPoint(wxPyShapeCanvas *the_canvas = NULL,
                      wxPyShape *object = NULL,
 public:
     wxPyControlPoint(wxPyShapeCanvas *the_canvas = NULL,
                      wxPyShape *object = NULL,
@@ -171,6 +184,7 @@ public:
 
 
 class wxPyBitmapShape : public wxBitmapShape {
 
 
 class wxPyBitmapShape : public wxBitmapShape {
+    DECLARE_DYNAMIC_CLASS(wxPyBitmapShape);
 public:
     wxPyBitmapShape() : wxBitmapShape() {}
 
 public:
     wxPyBitmapShape() : wxBitmapShape() {}
 
@@ -180,6 +194,7 @@ public:
 
 
 class wxPyDrawnShape : public wxDrawnShape {
 
 
 class wxPyDrawnShape : public wxDrawnShape {
+    DECLARE_DYNAMIC_CLASS(wxPyDrawnShape);
 public:
     wxPyDrawnShape() : wxDrawnShape() {}
 
 public:
     wxPyDrawnShape() : wxDrawnShape() {}
 
@@ -188,6 +203,7 @@ public:
 
 
 class wxPyCompositeShape : public wxCompositeShape {
 
 
 class wxPyCompositeShape : public wxCompositeShape {
+    DECLARE_DYNAMIC_CLASS(wxPyCompositeShape);
 public:
     wxPyCompositeShape() : wxCompositeShape() {}
 
 public:
     wxPyCompositeShape() : wxCompositeShape() {}
 
@@ -196,6 +212,7 @@ public:
 
 
 class wxPyDividedShape : public wxDividedShape {
 
 
 class wxPyDividedShape : public wxDividedShape {
+    DECLARE_DYNAMIC_CLASS(wxPyDividedShape);
 public:
     wxPyDividedShape(double width = 0.0, double height = 0.0)
         : wxDividedShape(width, height) {}
 public:
     wxPyDividedShape(double width = 0.0, double height = 0.0)
         : wxDividedShape(width, height) {}
@@ -205,6 +222,7 @@ public:
 
 
 class wxPyDivisionShape : public wxDivisionShape {
 
 
 class wxPyDivisionShape : public wxDivisionShape {
+    DECLARE_DYNAMIC_CLASS(wxPyDivisionShape);
 public:
     wxPyDivisionShape() : wxDivisionShape() {}
 
 public:
     wxPyDivisionShape() : wxDivisionShape() {}
 
@@ -213,6 +231,7 @@ public:
 
 
 class wxPyEllipseShape : public wxEllipseShape {
 
 
 class wxPyEllipseShape : public wxEllipseShape {
+    DECLARE_DYNAMIC_CLASS(wxPyEllipseShape);
 public:
     wxPyEllipseShape(double width = 0.0, double height = 0.0)
         : wxEllipseShape(width, height) {}
 public:
     wxPyEllipseShape(double width = 0.0, double height = 0.0)
         : wxEllipseShape(width, height) {}
@@ -222,6 +241,7 @@ public:
 
 
 class wxPyCircleShape : public wxCircleShape {
 
 
 class wxPyCircleShape : public wxCircleShape {
+    DECLARE_DYNAMIC_CLASS(wxPyCircleShape);
 public:
     wxPyCircleShape(double width = 0.0)
         : wxCircleShape(width) {}
 public:
     wxPyCircleShape(double width = 0.0)
         : wxCircleShape(width) {}
@@ -231,6 +251,7 @@ public:
 
 
 class wxPyLineShape : public wxLineShape {
 
 
 class wxPyLineShape : public wxLineShape {
+    DECLARE_DYNAMIC_CLASS(wxPyLineShape);
 public:
     wxPyLineShape() : wxLineShape() {}
 
 public:
     wxPyLineShape() : wxLineShape() {}
 
@@ -239,6 +260,7 @@ public:
 
 
 class wxPyPolygonShape : public wxPolygonShape {
 
 
 class wxPyPolygonShape : public wxPolygonShape {
+    DECLARE_DYNAMIC_CLASS(wxPyPolygonShape);
 public:
     wxPyPolygonShape() : wxPolygonShape() {}
 
 public:
     wxPyPolygonShape() : wxPolygonShape() {}
 
@@ -247,6 +269,7 @@ public:
 
 
 class wxPyTextShape : public wxTextShape {
 
 
 class wxPyTextShape : public wxTextShape {
+    DECLARE_DYNAMIC_CLASS(wxPyTextShape);
 public:
     wxPyTextShape(double width = 0.0, double height = 0.0)
         : wxTextShape(width, height) {}
 public:
     wxPyTextShape(double width = 0.0, double height = 0.0)
         : wxTextShape(width, height) {}
@@ -260,3 +283,4 @@ public:
 //---------------------------------------------------------------------------
 #endif
 
 //---------------------------------------------------------------------------
 #endif
 
+