X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/23f8f9853ea023c98713e4e9d32a9ed5261b9402..7e664d85e6512d807ce2eb186ed9e0bbd60d6e8b:/wxPython/src/_dataobj.i diff --git a/wxPython/src/_dataobj.i b/wxPython/src/_dataobj.i index e2d83d1eb3..8f5f8f0e27 100644 --- a/wxPython/src/_dataobj.i +++ b/wxPython/src/_dataobj.i @@ -230,26 +230,22 @@ data.", ""); - // return all formats in the provided array (of size GetFormatCount()) - //virtual void GetAllFormats(wxDataFormat *formats, - // Direction dir = Get) const; - DocAStr(GetAllFormats, - "GetAllFormats(self, int dir=Get) -> [formats]", - "Returns a list of all the wx.DataFormats that this dataobject supports -in the given direction.", ""); %extend { + DocAStr(GetAllFormats, + "GetAllFormats(self, int dir=Get) -> [formats]", + "Returns a list of all the wx.DataFormats that this dataobject supports +in the given direction.", ""); PyObject* GetAllFormats(Direction dir = Get) { size_t count = self->GetFormatCount(dir); wxDataFormat* formats = new wxDataFormat[count]; self->GetAllFormats(formats, dir); - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); PyObject* list = PyList_New(count); for (size_t i=0; i String", - "Get the data bytes in the specified format, returns None on failure. -", " -:todo: This should use the python buffer interface isntead..."); %extend { + DocAStr(GetDataHere, + "GetDataHere(self, DataFormat format) -> String", + "Get the data bytes in the specified format, returns None on failure.", " +:todo: This should use the python buffer interface isntead..."); PyObject* GetDataHere(const wxDataFormat& format) { PyObject* rval = NULL; size_t size = self->GetDataSize(format); - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); if (size) { char* buf = new char[size]; if (self->GetDataHere(format, buf)) @@ -301,7 +296,7 @@ in the given direction.", ""); %extend { bool SetData(const wxDataFormat& format, PyObject* data) { bool rval; - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); if (PyString_Check(data)) { rval = self->SetData(format, PyString_Size(data), PyString_AsString(data)); } @@ -354,16 +349,16 @@ assumed that the format is supported in both directions.", ""); - DocAStr(GetDataHere, - "GetDataHere(self) -> String", - "Returns the data bytes from the data object as a string, returns None + %extend { + DocAStr(GetDataHere, + "GetDataHere(self) -> String", + "Returns the data bytes from the data object as a string, returns None on failure. Must be implemented in the derived class if the object supports rendering its data.", ""); - %extend { PyObject* GetDataHere() { PyObject* rval = NULL; size_t size = self->GetDataSize(); - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); if (size) { char* buf = new char[size]; if (self->GetDataHere(buf)) @@ -380,15 +375,15 @@ supports rendering its data.", ""); } - DocAStr(SetData, - "SetData(self, String data) -> bool", - "Copy the data value to the data object. Must be implemented in the + %extend { + DocAStr(SetData, + "SetData(self, String data) -> bool", + "Copy the data value to the data object. Must be implemented in the derived class if the object supports setting its data. ", ""); - %extend { bool SetData(PyObject* data) { bool rval; - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); if (PyString_Check(data)) { rval = self->SetData(PyString_Size(data), PyString_AsString(data)); } @@ -428,7 +423,7 @@ bool wxPyDataObjectSimple::GetDataHere(void *buf) const { // C++ version. bool rval = false; - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); if (wxPyCBH_findCallback(m_myInst, "GetDataHere")) { PyObject* ro; ro = wxPyCBH_callCallbackObj(m_myInst, Py_BuildValue("()")); @@ -447,7 +442,7 @@ bool wxPyDataObjectSimple::SetData(size_t len, const void *buf) const{ // For this one we simply need to make a string from buf and len // and send it to the Python method. bool rval = false; - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); if (wxPyCBH_findCallback(m_myInst, "SetData")) { PyObject* data = PyString_FromStringAndSize((char*)buf, len); rval = wxPyCBH_callCallback(m_myInst, Py_BuildValue("(O)", data)); @@ -521,14 +516,22 @@ class wxDataObjectComposite : public wxDataObject { public: wxDataObjectComposite(); - %apply SWIGTYPE *DISOWN { wxDataObjectSimple *dataObject }; + %disownarg( wxDataObjectSimple *dataObject ); DocDeclStr( void , Add(wxDataObjectSimple *dataObject, bool preferred = false), "Adds the dataObject to the list of supported objects and it becomes the preferred object if preferred is True.", ""); - %clear wxDataObjectSimple *dataObject; + %cleardisown( wxDataObjectSimple *dataObject ); + + DocDeclStr( + wxDataFormat , GetReceivedFormat() const, + "Report the format passed to the `SetData` method. This should be the +format of the data object within the composite that recieved data from +the clipboard or the DnD operation. You can use this method to find +out what kind of data object was recieved.", ""); + }; //--------------------------------------------------------------------------- @@ -665,7 +668,7 @@ public: wxBitmap wxPyBitmapDataObject::GetBitmap() const { wxBitmap* rval = &wxNullBitmap; - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); if (wxPyCBH_findCallback(m_myInst, "GetBitmap")) { PyObject* ro; wxBitmap* ptr; @@ -681,7 +684,7 @@ wxBitmap wxPyBitmapDataObject::GetBitmap() const { } void wxPyBitmapDataObject::SetBitmap(const wxBitmap& bitmap) { - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); if (wxPyCBH_findCallback(m_myInst, "SetBitmap")) { PyObject* bo = wxPyConstructObject((void*)&bitmap, wxT("wxBitmap"), false); wxPyCBH_callCallback(m_myInst, Py_BuildValue("(O)", bo)); @@ -758,13 +761,13 @@ public: wxCustomDataObject(); - DocAStr(SetData, - "SetData(self, String data) -> bool", - "Copy the data value to the data object.", ""); %extend { + DocAStr(SetData, + "SetData(self, String data) -> bool", + "Copy the data value to the data object.", ""); bool SetData(PyObject* data) { bool rval; - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); if (PyString_Check(data)) { rval = self->SetData(PyString_Size(data), PyString_AsString(data)); } @@ -784,13 +787,13 @@ public: "Get the size of the data.", ""); - DocAStr(GetData, - "GetData(self) -> String", - "Returns the data bytes from the data object as a string.", ""); %extend { + DocAStr(GetData, + "GetData(self) -> String", + "Returns the data bytes from the data object as a string.", ""); PyObject* GetData() { PyObject* obj; - bool blocked = wxPyBeginBlockThreads(); + wxPyBlock_t blocked = wxPyBeginBlockThreads(); obj = PyString_FromStringAndSize((char*)self->GetData(), self->GetSize()); wxPyEndBlockThreads(blocked); return obj; @@ -804,7 +807,7 @@ public: DocStr(wxURLDataObject, "This data object holds a URL in a format that is compatible with some browsers such that it is able to be dragged to or from them.", ""); -class wxURLDataObject : public wxDataObjectComposite { +class wxURLDataObject : public wxDataObject/*Composite*/ { public: wxURLDataObject();