.. wxPython Phoenix documentation

   This file was generated by Phoenix's sphinx generator and associated
   tools, do not edit by hand.

   Copyright: (c) 2011-2020 by Total Control Software
   License:   wxWindows License

.. include:: headings.inc



.. _wx.DataObjectSimple:

==========================================================================================================================================
|phoenix_title|  **wx.DataObjectSimple**
==========================================================================================================================================

This is the simplest possible implementation of the :ref:`wx.DataObject`  class. 
         

The data object of (a class derived from) this class only supports **one format**, so the number of virtual functions to be implemented is reduced. 

Notice that this is still an abstract base class and cannot be used directly, it must be derived. The objects supporting rendering the data must override :meth:`~wx.DataObjectSimple.GetDataSize`  and :meth:`~wx.DataObjectSimple.GetDataHere`  while the objects which may be set must override :meth:`~wx.DataObjectSimple.SetData`. Of course, the objects supporting both operations must override all three methods. 





|

|class_hierarchy| Class Hierarchy
=================================

.. raw:: html

   <div id="toggleBlock" onclick="return toggleVisibility(this)" class="closed" style="cursor:pointer;">
   <img id="toggleBlock-trigger" src="_static/images/closed.png"/>
   Inheritance diagram for class <strong>DataObjectSimple</strong>:
   </div>
   <div id="toggleBlock-summary" style="display:block;"></div>
   <div id="toggleBlock-content" style="display:none;">
   <p class="graphviz">
   <center><img src="_static/images/inheritance/wx.DataObjectSimple_inheritance.svg" alt="Inheritance diagram of DataObjectSimple" usemap="#dummy" class="inheritance"/></center>
   <script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
   <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.DataObjectSimple.html" title="This is the simplest possible implementation of the wx.DataObject  class." alt="" coords="5,82,188,111"/> <area shape="rect" id="node2" href="wx.DataObject.html" title="A wx.DataObject  represents data that can be copied to or from the clipboard, or dragged and dropped." alt="" coords="30,5,163,34"/> </map> 
   </p>
   </div>

|


|sub_classes| Known Subclasses
==============================

:ref:`wx.BitmapDataObject`, :ref:`wx.CustomDataObject`, :ref:`wx.FileDataObject`, :ref:`wx.HTMLDataObject`, :ref:`wx.richtext.RichTextBufferDataObject`, :ref:`wx.TextDataObject`

|


|method_summary| Methods Summary
================================

================================================================================ ================================================================================
:meth:`~wx.DataObjectSimple.__init__`                                            Constructor accepts the supported format (none by default) which may also be set later with :meth:`~DataObjectSimple.SetFormat` .
:meth:`~wx.DataObjectSimple.GetAllFormats`                                       Returns a list of wx.DataFormat objects which this data object
:meth:`~wx.DataObjectSimple.GetDataHere`                                         Copies this data object's data bytes to the given buffer
:meth:`~wx.DataObjectSimple.GetDataSize`                                         Gets the size of our data.
:meth:`~wx.DataObjectSimple.GetFormat`                                           Returns the (one and only one) format supported by this object.
:meth:`~wx.DataObjectSimple.SetData`                                             Copies data from the provided buffer to this data object.
:meth:`~wx.DataObjectSimple.SetFormat`                                           Sets the supported format.
================================================================================ ================================================================================


|


|property_summary| Properties Summary
=====================================

================================================================================ ================================================================================
:attr:`~wx.DataObjectSimple.AllFormats`                                          See :meth:`~wx.DataObjectSimple.GetAllFormats`
:attr:`~wx.DataObjectSimple.DataHere`                                            See :meth:`~wx.DataObjectSimple.GetDataHere`
:attr:`~wx.DataObjectSimple.DataSize`                                            See :meth:`~wx.DataObjectSimple.GetDataSize`
:attr:`~wx.DataObjectSimple.Format`                                              See :meth:`~wx.DataObjectSimple.GetFormat` and :meth:`~wx.DataObjectSimple.SetFormat`
================================================================================ ================================================================================


|


|api| Class API
===============


.. class:: wx.DataObjectSimple(DataObject)

   **Possible constructors**::

       DataObjectSimple(format: DataFormat=FormatInvalid) -> None
       
       DataObjectSimple(formatName: str) -> None
       
   
   This is the simplest possible implementation of the DataObject
   class.



   .. method:: __init__(self, *args, **kw)



      |overload| **Overloaded Implementations:**

      :html:`<hr class="overloadsep" /><br />`

      
      **__init__** `(self, format: DataFormat=FormatInvalid)`
      
      Constructor accepts the supported format (none by default) which may also be set later with :meth:`SetFormat` . 
                       
      
      
      :param `format`: 
      :type `format`: wx.DataFormat
      
      
      
      
      :rtype: `None`     
      
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`

      
      **__init__** `(self, formatName: str)`
      
      
      
      :rtype: `None`     
      
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`






   .. method:: GetAllFormats(self, dir=DataObject.Get)

                              Returns a list of wx.DataFormat objects which this data object
                              supports transferring in the given direction.  





   .. method:: GetDataHere(self, buf: PyBuffer)

      Copies this data object's data bytes to the given buffer 

      :rtype: `bool`








   .. method:: GetDataSize(self)

      Gets the size of our data. 
                 

      Must be implemented in the derived class if the object supports rendering its data. 
                 

      :rtype: `int`








   .. method:: GetFormat(self)

      Returns the (one and only one) format supported by this object. 
                 

      It is assumed that the format is supported in both directions. 
                 

      :rtype: :ref:`wx.DataFormat`








   .. method:: SetData(self, *args, **kw)



      |overload| **Overloaded Implementations:**

      :html:`<hr class="overloadsep" /><br />`

      
      **SetData** `(self, buf: PyBuffer)`
      
      Copies data from the provided buffer to this data object. 
      
      :rtype: `bool`
      
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`

      
      **SetData** `(self, format: DataFormat, buf: PyBuffer)`
      
      
      
      :rtype: `bool`
      
      
      
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`






   .. method:: SetFormat(self, format : DataFormat)

      Sets the supported format. 
                 


      :param `format`: 
      :type `format`: wx.DataFormat




      :rtype: `None`     








   .. attribute:: AllFormats

      See :meth:`~wx.DataObjectSimple.GetAllFormats`


   .. attribute:: DataHere

      See :meth:`~wx.DataObjectSimple.GetDataHere`


   .. attribute:: DataSize

      See :meth:`~wx.DataObjectSimple.GetDataSize`


   .. attribute:: Format

      See :meth:`~wx.DataObjectSimple.GetFormat` and :meth:`~wx.DataObjectSimple.SetFormat`