]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/_dataobj.i
add some properties
[wxWidgets.git] / wxPython / src / _dataobj.i
index 24296df053c135aee3ed051c073cad2544307e06..a0c3428c20b11e66e21897c120ff2df8e8fc4a21 100644 (file)
@@ -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,14 +233,11 @@ 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];
@@ -262,12 +262,11 @@ in the given direction.", "");
     // True if data copied successfully, False otherwise
     // virtual bool GetDataHere(const wxDataFormat& format, void *buf) const;
 
-    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...");
     %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);            
@@ -314,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`");
 
 };
 
@@ -353,12 +357,12 @@ 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();            
@@ -379,12 +383,12 @@ 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;
             wxPyBlock_t blocked = wxPyBeginBlockThreads();
@@ -401,6 +405,7 @@ derived class if the object supports setting its data.
         }
     }
     
+    %property(Format, GetFormat, SetFormat, doc="See `GetFormat` and `SetFormat`");
 };
 
 
@@ -414,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;
 };
 
@@ -442,7 +447,7 @@ 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;
@@ -520,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`");
 };
 
 //---------------------------------------------------------------------------
@@ -571,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`");
 };
 
 
@@ -645,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`");
 };
 
 
@@ -734,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`");
 };
 
 //---------------------------------------------------------------------------
@@ -757,10 +775,10 @@ 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;
             wxPyBlock_t blocked = wxPyBeginBlockThreads();
@@ -783,10 +801,10 @@ 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;
             wxPyBlock_t blocked = wxPyBeginBlockThreads();
@@ -795,6 +813,10 @@ public:
             return obj;
         }
     }
+
+    %property(Data, GetData, SetData, doc="See `GetData` and `SetData`");
+    %property(Size, GetSize, doc="See `GetSize`");
+
 };
 
 
@@ -803,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(),
@@ -815,6 +837,7 @@ public:
         void , SetURL(const wxString& url),
         "Set the URL.", "");
     
+    %property(URL, GetURL, SetURL, doc="See `GetURL` and `SetURL`");
 };
 
 //---------------------------------------------------------------------------