From: Robin Dunn Date: Mon, 28 Feb 2005 18:43:15 +0000 (+0000) Subject: Added wx.PrintData.Get/SetPrivData X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/a62e4b56c4ca6fe0137ec40a4221d8f4ad1e5084 Added wx.PrintData.Get/SetPrivData git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/wxPython/src/_printfw.i b/wxPython/src/_printfw.i index 64ff548e78..bed5888379 100644 --- a/wxPython/src/_printfw.i +++ b/wxPython/src/_printfw.i @@ -100,6 +100,33 @@ public: %pythoncode { def __nonzero__(self): return self.Ok() } + //char* GetPrivData() const; + //int GetPrivDataLen() const; + //void SetPrivData( char *privData, int len ); + + %extend { + PyObject* GetPrivData() { + PyObject* data; + bool blocked = wxPyBeginBlockThreads(); + data = PyString_FromStringAndSize(self->GetPrivData(), + self->GetPrivDataLen()); + wxPyEndBlockThreads(blocked); + return data; + } + + void SetPrivData(PyObject* data) { + if (! PyString_Check(data)) { + wxPyBLOCK_THREADS(PyErr_SetString(PyExc_TypeError, + "Expected string object")); + return /* NULL */ ; + } + + bool blocked = wxPyBeginBlockThreads(); + self->SetPrivData(PyString_AS_STRING(data), PyString_GET_SIZE(data)); + wxPyEndBlockThreads(blocked); + } + } + // NOTE: These are now inside of #if WXWIN_COMPATIBILITY_2_4, so be // prepared to remove them...