X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d14a1e28567de23c586bc80017073d0c39f8d18f..110da5b02e6d10ed8a94934934f87882ba33d2e1:/wxPython/contrib/ogl/ogl.i diff --git a/wxPython/contrib/ogl/ogl.i b/wxPython/contrib/ogl/ogl.i index 2bf13628ec..fff16bd5a4 100644 --- a/wxPython/contrib/ogl/ogl.i +++ b/wxPython/contrib/ogl/ogl.i @@ -10,23 +10,34 @@ // Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// +%define DOCSTRING +"The Object Graphics Library provides for simple drawing and manipulation +of 2D objects. (This version is deprecated, please use wx.lib.ogl instead.)" +%enddef -%module ogl +%module(package="wx", docstring=DOCSTRING) ogl %{ #include "wx/wxPython/wxPython.h" #include "wx/wxPython/pyclasses.h" #include "oglhelpers.h" - - static const wxString wxPyEmptyString(wxT("")); %} //--------------------------------------------------------------------------- %import windows.i +%pythoncode { wx = _core } +%pythoncode { __docfilter__ = wx.__DocFilter(globals()) } + +%pythoncode { + import warnings + warnings.warn("This module is deprecated. Please use the wx.lib.ogl package instead.", + DeprecationWarning, stacklevel=2) +} + -%pythoncode { wx = core } +MAKE_CONST_WXSTRING_NOSWIG(EmptyString); %include _ogl_rename.i @@ -146,7 +157,10 @@ enum { //--------------------------------------------------------------------------- +MustHaveApp(wxOGLInitialize); void wxOGLInitialize(); + +MustHaveApp(wxOGLCleanUp); void wxOGLCleanUp(); @@ -157,17 +171,17 @@ void wxOGLCleanUp(); // work for any class for the VERY generic cases, but beyond that the helper // needs to know more about the type. wxList* wxPy_wxListHelper(PyObject* pyList, const wxChar* className) { - wxPyBeginBlockThreads(); + bool blocked = wxPyBeginBlockThreads(); if (!PyList_Check(pyList)) { PyErr_SetString(PyExc_TypeError, "Expected a list object."); - wxPyEndBlockThreads(); + wxPyEndBlockThreads(blocked); return NULL; } int count = PyList_Size(pyList); wxList* list = new wxList; if (! list) { PyErr_SetString(PyExc_MemoryError, "Unable to allocate wxList object"); - wxPyEndBlockThreads(); + wxPyEndBlockThreads(blocked); return NULL; } for (int x=0; xAppend(wxo); } - wxPyEndBlockThreads(); + wxPyEndBlockThreads(blocked); return list; } //--------------------------------------------------------------------------- wxList* wxPy_wxRealPoint_ListHelper(PyObject* pyList) { - wxPyBeginBlockThreads(); + bool blocked = wxPyBeginBlockThreads(); if (!PyList_Check(pyList)) { PyErr_SetString(PyExc_TypeError, "Expected a list object."); - wxPyEndBlockThreads(); + wxPyEndBlockThreads(blocked); return NULL; } int count = PyList_Size(pyList); wxList* list = new wxList; if (! list) { PyErr_SetString(PyExc_MemoryError, "Unable to allocate wxList object"); - wxPyEndBlockThreads(); + wxPyEndBlockThreads(blocked); return NULL; } for (int x=0; xAppend((wxObject*) new wxRealPoint(*wxo)); } } - wxPyEndBlockThreads(); + wxPyEndBlockThreads(blocked); return list; } @@ -255,6 +269,27 @@ PyObject* wxPyMake_wxShapeEvtHandler(wxShapeEvtHandler* source) { //--------------------------------------------------------------------------- +PyObject* wxPy_ConvertRealPointList(wxListBase* listbase) { + wxList* list = (wxList*)listbase; + PyObject* pyList; + PyObject* pyObj; + wxObject* wxObj; + wxNode* node = list->GetFirst(); + + bool blocked = wxPyBeginBlockThreads(); + pyList = PyList_New(0); + while (node) { + wxObj = node->GetData(); + pyObj = wxPyConstructObject(wxObj, wxT("wxRealPoint"), 0); + PyList_Append(pyList, pyObj); + node = node->GetNext(); + } + wxPyEndBlockThreads(blocked); + return pyList; +} + +//--------------------------------------------------------------------------- + PyObject* wxPy_ConvertShapeList(wxListBase* listbase) { wxList* list = (wxList*)listbase; PyObject* pyList; @@ -262,7 +297,7 @@ PyObject* wxPy_ConvertShapeList(wxListBase* listbase) { wxObject* wxObj; wxNode* node = list->GetFirst(); - wxPyBeginBlockThreads(); + bool blocked = wxPyBeginBlockThreads(); pyList = PyList_New(0); while (node) { wxObj = node->GetData(); @@ -270,7 +305,7 @@ PyObject* wxPy_ConvertShapeList(wxListBase* listbase) { PyList_Append(pyList, pyObj); node = node->GetNext(); } - wxPyEndBlockThreads(); + wxPyEndBlockThreads(blocked); return pyList; }