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);
exit:
- wxPyEndBlockThreads();
+ wxPyEndBlockThreads(blocked);
return retval;
}
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)
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)
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)
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;
}
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;
}
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);
else {
obj = PySequence_GetItem(textList, i);
}
- if (! PyString_Check(obj) ) {
+ if (! PyString_Check(obj) && !PyUnicode_Check(obj) ) {
Py_DECREF(obj);
goto err1;
}
else {
obj = PySequence_GetItem(foregroundList, i);
}
- if (! wxPyConvertSwigPtr(obj, (void **) &color, wxT("wxColour_p"))) {
+ if (! wxPyConvertSwigPtr(obj, (void **) &color, wxT("wxColour"))) {
if (!isFastForeground)
Py_DECREF(obj);
goto err2;
goto exit;
exit:
- wxPyEndBlockThreads();
+ wxPyEndBlockThreads(blocked);
return retval;
}