X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fd3f2efe791cf99c2e4944cd615f02a5502ed93e..c437fde9f90fc7dfcac79053d214fc9146d7be21:/wxPython/src/drawlist.cpp diff --git a/wxPython/src/drawlist.cpp b/wxPython/src/drawlist.cpp index b0516571e9..c89342ac84 100644 --- a/wxPython/src/drawlist.cpp +++ b/wxPython/src/drawlist.cpp @@ -30,7 +30,7 @@ void wxPyDrawList_SetAPIPtr() PyObject* wxPyDrawXXXList(wxDC& dc, wxPyDrawListOp_t doDraw, PyObject* pyCoords, PyObject* pyPens, PyObject* pyBrushes) { - wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); bool isFastSeq = PyList_Check(pyCoords) || PyTuple_Check(pyCoords); bool isFastPens = PyList_Check(pyPens) || PyTuple_Check(pyPens); @@ -138,7 +138,7 @@ PyObject* wxPyDrawXXXList(wxDC& dc, wxPyDrawListOp_t doDraw, exit: - wxPyEndBlockThreads(); + wxPyEndBlockThreads(blocked); return retval; } @@ -150,10 +150,10 @@ bool wxPyDrawXXXPoint(wxDC& dc, PyObject* coords) if (! wxPy2int_seq_helper(coords, &x, &y)) { PyErr_SetString(PyExc_TypeError, "Expected a sequence of (x,y) sequences."); - return False; + return false; } dc.DrawPoint(x, y); - return True; + return true; } bool wxPyDrawXXXLine(wxDC& dc, PyObject* coords) @@ -162,10 +162,10 @@ bool wxPyDrawXXXLine(wxDC& dc, PyObject* coords) if (! wxPy4int_seq_helper(coords, &x1, &y1, &x2, &y2)) { PyErr_SetString(PyExc_TypeError, "Expected a sequence of (x1,y1, x1,y2) sequences."); - return False; + return false; } dc.DrawLine(x1,y1, x2,y2); - return True; + return true; } bool wxPyDrawXXXRectangle(wxDC& dc, PyObject* coords) @@ -174,10 +174,10 @@ bool wxPyDrawXXXRectangle(wxDC& dc, PyObject* coords) if (! wxPy4int_seq_helper(coords, &x, &y, &w, &h)) { PyErr_SetString(PyExc_TypeError, "Expected a sequence of (x,y, w,h) sequences."); - return False; + return false; } dc.DrawRectangle(x, y, w, h); - return True; + return true; } bool wxPyDrawXXXEllipse(wxDC& dc, PyObject* coords) @@ -186,10 +186,10 @@ bool wxPyDrawXXXEllipse(wxDC& dc, PyObject* coords) if (! wxPy4int_seq_helper(coords, &x, &y, &w, &h)) { PyErr_SetString(PyExc_TypeError, "Expected a sequence of (x,y, w,h) sequences."); - return False; + return false; } dc.DrawEllipse(x, y, w, h); - return True; + return true; } @@ -201,10 +201,11 @@ bool wxPyDrawXXXPolygon(wxDC& dc, PyObject* coords) points = wxPoint_LIST_helper(coords, &numPoints); if (! points) { PyErr_SetString(PyExc_TypeError, "Expected a sequence of sequences of (x,y) sequences."); - return False; + return false; } dc.DrawPolygon(numPoints, points); - return True; + delete [] points; + return true; } @@ -214,7 +215,7 @@ bool wxPyDrawXXXPolygon(wxDC& dc, PyObject* coords) PyObject* wxPyDrawTextList(wxDC& dc, PyObject* textList, PyObject* pyPoints, PyObject* foregroundList, PyObject* backgroundList) { - wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); bool isFastSeq = PyList_Check(pyPoints) || PyTuple_Check(pyPoints); bool isFastText = PyList_Check(textList) || PyTuple_Check(textList); @@ -257,7 +258,7 @@ PyObject* wxPyDrawTextList(wxDC& dc, PyObject* textList, PyObject* pyPoints, PyO else { obj = PySequence_GetItem(textList, i); } - if (! PyString_Check(obj) ) { + if (! PyString_Check(obj) && !PyUnicode_Check(obj) ) { Py_DECREF(obj); goto err1; } @@ -353,7 +354,7 @@ PyObject* wxPyDrawTextList(wxDC& dc, PyObject* textList, PyObject* pyPoints, PyO goto exit; exit: - wxPyEndBlockThreads(); + wxPyEndBlockThreads(blocked); return retval; }