X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/23f8f9853ea023c98713e4e9d32a9ed5261b9402..5f2502393e042e6e2c871ff94b7ccaf7a78b264d:/wxPython/src/_dataobj.i diff --git a/wxPython/src/_dataobj.i b/wxPython/src/_dataobj.i index e2d83d1eb3..a0c3428c20 100644 --- a/wxPython/src/_dataobj.i +++ b/wxPython/src/_dataobj.i @@ -122,6 +122,9 @@ standard format).", ""); DocDeclStr( void , SetId(const wxString& format), "Sets the format to be the custom format identified by the given name.", ""); + + %property(Id, GetId, SetId, doc="See `GetId` and `SetId`"); + %property(Type, GetType, SetType, doc="See `GetType` and `SetType`"); }; @@ -230,26 +233,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 +299,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)); } @@ -315,6 +313,11 @@ in the given direction.", ""); } } + %property(AllFormats, GetAllFormats, doc="See `GetAllFormats`"); + %property(DataHere, GetDataHere, doc="See `GetDataHere`"); + %property(DataSize, GetDataSize, doc="See `GetDataSize`"); + %property(FormatCount, GetFormatCount, doc="See `GetFormatCount`"); + %property(PreferredFormat, GetPreferredFormat, doc="See `GetPreferredFormat`"); }; @@ -354,16 +357,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 +383,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)); } @@ -402,6 +405,7 @@ derived class if the object supports setting its data. } } + %property(Format, GetFormat, SetFormat, doc="See `GetFormat` and `SetFormat`"); }; @@ -415,7 +419,7 @@ public: DEC_PYCALLBACK_SIZET__const(GetDataSize); bool GetDataHere(void *buf) const; - bool SetData(size_t len, const void *buf) const; + bool SetData(size_t len, const void *buf); PYPRIVATE; }; @@ -428,7 +432,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("()")); @@ -443,11 +447,11 @@ bool wxPyDataObjectSimple::GetDataHere(void *buf) const { return rval; } -bool wxPyDataObjectSimple::SetData(size_t len, const void *buf) const{ +bool wxPyDataObjectSimple::SetData(size_t len, const void *buf) { // 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 +525,23 @@ 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.", ""); + + %property(ReceivedFormat, GetReceivedFormat, doc="See `GetReceivedFormat`"); }; //--------------------------------------------------------------------------- @@ -572,6 +585,8 @@ text into the member variable. If you want to process the text on the fly you may wish to override this function (via `wx.PyTextDataObject`.)", ""); + %property(Text, GetText, SetText, doc="See `GetText` and `SetText`"); + %property(TextLength, GetTextLength, doc="See `GetTextLength`"); }; @@ -646,6 +661,7 @@ internals. Use this method to get data in bitmap form from the when the data object receives data. Usually there will be no reason to override this function.", ""); + %property(Bitmap, GetBitmap, SetBitmap, doc="See `GetBitmap` and `SetBitmap`"); }; @@ -665,7 +681,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 +697,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)); @@ -735,6 +751,7 @@ public: void , AddFile(const wxString &filename), "Adds a file to the list of files represented by this data object.", ""); + %property(Filenames, GetFilenames, doc="See `GetFilenames`"); }; //--------------------------------------------------------------------------- @@ -758,13 +775,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,18 +801,22 @@ 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; } } + + %property(Data, GetData, SetData, doc="See `GetData` and `SetData`"); + %property(Size, GetSize, doc="See `GetSize`"); + }; @@ -804,9 +825,9 @@ 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(); + wxURLDataObject(const wxString& url = wxPyEmptyString); DocDeclStr( wxString , GetURL(), @@ -816,6 +837,7 @@ public: void , SetURL(const wxString& url), "Set the URL.", ""); + %property(URL, GetURL, SetURL, doc="See `GetURL` and `SetURL`"); }; //---------------------------------------------------------------------------