Made the wxInputStream typemap useable outside the core wxc module
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -326,8 +326,15 @@ PyObject* __wxSetDictionary(PyObject* /* self */, PyObject* args)
|
|||||||
#define wxPlatform "__WXMAC__"
|
#define wxPlatform "__WXMAC__"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef __WXDEBUG__
|
||||||
|
int wxdebug = 1;
|
||||||
|
#else
|
||||||
|
int wxdebug = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
PyDict_SetItemString(wxPython_dict, "wxPlatform", PyString_FromString(wxPlatform));
|
PyDict_SetItemString(wxPython_dict, "wxPlatform", PyString_FromString(wxPlatform));
|
||||||
PyDict_SetItemString(wxPython_dict, "wxUSE_UNICODE", PyInt_FromLong(wxUSE_UNICODE));
|
PyDict_SetItemString(wxPython_dict, "wxUSE_UNICODE", PyInt_FromLong(wxUSE_UNICODE));
|
||||||
|
PyDict_SetItemString(wxPython_dict, "__WXDEBUG__", PyInt_FromLong(wxdebug));
|
||||||
|
|
||||||
Py_INCREF(Py_None);
|
Py_INCREF(Py_None);
|
||||||
return Py_None;
|
return Py_None;
|
||||||
@@ -826,6 +833,11 @@ wxPyCBInputStream* wxPyCBInputStream::create(PyObject *py, bool block) {
|
|||||||
return new wxPyCBInputStream(read, seek, tell, block);
|
return new wxPyCBInputStream(read, seek, tell, block);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
wxPyCBInputStream* wxPyCBInputStream_create(PyObject *py, bool block) {
|
||||||
|
return wxPyCBInputStream::create(py, block);
|
||||||
|
}
|
||||||
|
|
||||||
PyObject* wxPyCBInputStream::getMethod(PyObject* py, char* name) {
|
PyObject* wxPyCBInputStream::getMethod(PyObject* py, char* name) {
|
||||||
if (!PyObject_HasAttrString(py, name))
|
if (!PyObject_HasAttrString(py, name))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@@ -210,10 +210,12 @@ public:
|
|||||||
class wxPyClientData;
|
class wxPyClientData;
|
||||||
class wxPyUserData;
|
class wxPyUserData;
|
||||||
class wxPyOORClientData;
|
class wxPyOORClientData;
|
||||||
|
class wxPyCBInputStream;
|
||||||
|
|
||||||
void wxPyClientData_dtor(wxPyClientData* self);
|
void wxPyClientData_dtor(wxPyClientData* self);
|
||||||
void wxPyUserData_dtor(wxPyUserData* self);
|
void wxPyUserData_dtor(wxPyUserData* self);
|
||||||
void wxPyOORClientData_dtor(wxPyOORClientData* self);
|
void wxPyOORClientData_dtor(wxPyOORClientData* self);
|
||||||
|
wxPyCBInputStream* wxPyCBInputStream_create(PyObject *py, bool block);
|
||||||
|
|
||||||
|
|
||||||
//---------------------------------------------------------------------------
|
//---------------------------------------------------------------------------
|
||||||
@@ -285,6 +287,9 @@ struct wxPyCoreAPI {
|
|||||||
void (*p_wxPyClientData_dtor)(wxPyClientData*);
|
void (*p_wxPyClientData_dtor)(wxPyClientData*);
|
||||||
void (*p_wxPyUserData_dtor)(wxPyUserData*);
|
void (*p_wxPyUserData_dtor)(wxPyUserData*);
|
||||||
void (*p_wxPyOORClientData_dtor)(wxPyOORClientData*);
|
void (*p_wxPyOORClientData_dtor)(wxPyOORClientData*);
|
||||||
|
|
||||||
|
wxPyCBInputStream* (*p_wxPyCBInputStream_create)(PyObject *py, bool block);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef wxPyUSE_EXPORT
|
#ifdef wxPyUSE_EXPORT
|
||||||
|
@@ -39,7 +39,7 @@
|
|||||||
$target = temp->m_wxis;
|
$target = temp->m_wxis;
|
||||||
created = FALSE;
|
created = FALSE;
|
||||||
} else {
|
} else {
|
||||||
$target = wxPyCBInputStream::create($source, FALSE);
|
$target = wxPyCBInputStream_create($source, FALSE);
|
||||||
if ($target == NULL) {
|
if ($target == NULL) {
|
||||||
PyErr_SetString(PyExc_TypeError,"Expected _wxInputStream_p or Python file-like object.");
|
PyErr_SetString(PyExc_TypeError,"Expected _wxInputStream_p or Python file-like object.");
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@@ -207,7 +207,9 @@ static wxPyCoreAPI API = {
|
|||||||
|
|
||||||
wxPyClientData_dtor,
|
wxPyClientData_dtor,
|
||||||
wxPyUserData_dtor,
|
wxPyUserData_dtor,
|
||||||
wxPyOORClientData_dtor
|
wxPyOORClientData_dtor,
|
||||||
|
|
||||||
|
wxPyCBInputStream_create
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@@ -90,6 +90,9 @@ static void wxPyCoreAPI_IMPORT() {
|
|||||||
#define wxPyUserData_dtor(a) (wxPyCoreAPIPtr->p_wxPyUserData_dtor(a))
|
#define wxPyUserData_dtor(a) (wxPyCoreAPIPtr->p_wxPyUserData_dtor(a))
|
||||||
#define wxPyOORClientData_dtor(a) (wxPyCoreAPIPtr->p_wxPyOORClientData_dtor(a))
|
#define wxPyOORClientData_dtor(a) (wxPyCoreAPIPtr->p_wxPyOORClientData_dtor(a))
|
||||||
|
|
||||||
|
#define wxPyCBInputStream_create(a, b) (wxPyCoreAPIPtr->p_wxPyCBInputStream_create(a, b))
|
||||||
|
|
||||||
|
|
||||||
// This one is special. It's the first function called in SWIG generated
|
// This one is special. It's the first function called in SWIG generated
|
||||||
// modules, so we'll use it to also import the API.
|
// modules, so we'll use it to also import the API.
|
||||||
#define SWIG_newvarlink() (wxPyCoreAPI_IMPORT(), wxPyCoreAPIPtr->p_SWIG_newvarlink())
|
#define SWIG_newvarlink() (wxPyCoreAPI_IMPORT(), wxPyCoreAPIPtr->p_SWIG_newvarlink())
|
||||||
|
Reference in New Issue
Block a user