%module oglshapes
%{
-#include "export.h"
+#include "wxPython.h"
#include "oglhelpers.h"
%}
%pragma(python) code = "import wx"
//---------------------------------------------------------------------------
+
+enum {
+ oglMETAFLAGS_OUTLINE,
+ oglMETAFLAGS_ATTACHMENTS
+};
+
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
~wxPseudoMetaFile();
void Draw(wxDC& dc, double xoffset, double yoffset);
-
+#ifdef wxUSE_PROLOGIO
void WriteAttributes(wxExpr *clause, int whichAngle);
void ReadAttributes(wxExpr *clause, int whichAngle);
+#endif
void Clear();
void Copy(wxPseudoMetaFile& copy);
void Scale(double sx, double sy);
void ScaleTo(double w, double h);
void Translate(double x, double y);
void Rotate(double x, double y, double theta);
- bool LoadFromMetaFile(char* filename, double *width, double *height);
+ bool LoadFromMetaFile(const wxString& filename, double *width, double *height);
void GetBounds(double *minX, double *minY, double *maxX, double *maxY);
void CalculateSize(wxPyDrawnShape* shape);
//---------------------------------------------------------------------------
%{
- WXSHAPE_IMP_CALLBACKS(wxPyRectangleShape, wxRectangleShape);
+// Using this macro can sometimes provoke an Internal Compiler Error in MSVC
+// 6, so instead I'l just expand it out by hand...
+// WXSHAPE_IMP_CALLBACKS(wxPyRectangleShape, wxRectangleShape);
+
+ IMP_PYCALLBACK__ (wxPyRectangleShape, wxRectangleShape, OnDelete);
+ IMP_PYCALLBACK__DC (wxPyRectangleShape, wxRectangleShape, OnDraw);
+ IMP_PYCALLBACK__DC (wxPyRectangleShape, wxRectangleShape, OnDrawContents);
+ IMP_PYCALLBACK__DCBOOL (wxPyRectangleShape, wxRectangleShape, OnDrawBranches);
+ IMP_PYCALLBACK__DC (wxPyRectangleShape, wxRectangleShape, OnMoveLinks);
+ IMP_PYCALLBACK__DC (wxPyRectangleShape, wxRectangleShape, OnErase);
+ IMP_PYCALLBACK__DC (wxPyRectangleShape, wxRectangleShape, OnEraseContents);
+ IMP_PYCALLBACK__DC (wxPyRectangleShape, wxRectangleShape, OnHighlight);
+ IMP_PYCALLBACK__2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnLeftClick);
+ IMP_PYCALLBACK__2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnLeftDoubleClick);
+ IMP_PYCALLBACK__2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnRightClick);
+ IMP_PYCALLBACK__2DBL (wxPyRectangleShape, wxRectangleShape, OnSize);
+ IMP_PYCALLBACK_BOOL_DC4DBLBOOL (wxPyRectangleShape, wxRectangleShape, OnMovePre);
+ IMP_PYCALLBACK__DC4DBLBOOL (wxPyRectangleShape, wxRectangleShape, OnMovePost);
+ IMP_PYCALLBACK__BOOL2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnDragLeft);
+ IMP_PYCALLBACK__2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnBeginDragLeft);
+ IMP_PYCALLBACK__2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnEndDragLeft);
+ IMP_PYCALLBACK__BOOL2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnDragRight);
+ IMP_PYCALLBACK__2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnBeginDragRight);
+ IMP_PYCALLBACK__2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnEndDragRight);
+ IMP_PYCALLBACK__DC4DBL (wxPyRectangleShape, wxRectangleShape, OnDrawOutline);
+ IMP_PYCALLBACK__DC (wxPyRectangleShape, wxRectangleShape, OnDrawControlPoints);
+ IMP_PYCALLBACK__DC (wxPyRectangleShape, wxRectangleShape, OnEraseControlPoints);
+ IMP_PYCALLBACK__DCBOOL (wxPyRectangleShape, wxRectangleShape, OnMoveLink);
+ IMP_PYCALLBACK__WXCPBOOL2DBL2INT(wxPyRectangleShape, wxRectangleShape, OnSizingDragLeft);
+ IMP_PYCALLBACK__WXCP2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnSizingBeginDragLeft);
+ IMP_PYCALLBACK__WXCP2DBL2INT (wxPyRectangleShape, wxRectangleShape, OnSizingEndDragLeft);
+ IMP_PYCALLBACK__2DBL (wxPyRectangleShape, wxRectangleShape, OnBeginSize);
+ IMP_PYCALLBACK__2DBL (wxPyRectangleShape, wxRectangleShape, OnEndSize)
+
%}
class wxPyRectangleShape : public wxPyShape {
wxPseudoMetaFile& GetMetaFile();
double GetRotation();
- bool LoadFromMetaFile(char * filename);
+ bool LoadFromMetaFile(const wxString& filename);
void Rotate(double x, double y, double theta);
void SetClippingRect(const wxRect& rect);
void SetDrawnBackgroundColour(const wxColour& colour);