\section{\class{wxTextDataObject}}\label{wxtextdataobject} wxTextDataObject is a specialization of wxDataObject for text data. It can be used without change to paste data into the \helpref{wxClipboard}{wxclipboard} or a \helpref{wxDropSource}{wxdropsource}. A user may wish to derive a new class from this class for providing text on-demand in order to minimize memory consumption when offering data in several formats, such as plain text and RTF. In order to offer text data on-demand \helpref{GetSize}{wxtextdataobjectgetsize} and \helpref{WriteData}{wxtextdataobjectwritedata} will have to be overridden. \wxheading{Derived from} \helpref{wxDataObject}{wxdataobject} \wxheading{See also} \helpref{wxDataObject}{wxdataobject} \latexignore{\rtfignore{\wxheading{Members}}} \membersection{wxTextDataObject::wxTextDataObject}\label{wxtextdataobjectwxtextdataobject} \func{}{wxTextDataObject}{\void} Default constructor. Call \helpref{SetText}{wxtextdataobjectsettext} later or override \helpref{WriteData}{wxtextdataobjectwritedata} and \helpref{GetSize}{wxtextdataobjectgetsize} for providing data on-demand. \func{}{wxTextDataObject}{\param{const wxString\& }{strText}} Constructor, passing text. \membersection{wxTextDataObject::GetSize}\label{wxtextdataobjectgetsize} \constfunc{virtual size\_t}{GetSize}{\void} Returns the data size. By default, returns the size of the text data set in the constructor or using \helpref{SetText}{wxtextdataobjectsettext}. This can be overridden to provide text size data on-demand. It is recommended to return the text length plus 1 for a trailing zero, but this is not strictly required. \membersection{wxTextDataObject::GetText}\label{wxtextdataobjectgettext} \constfunc{virtual wxString}{GetText}{\void} Returns the text associated with the data object. You may wish to override this method when offering data on-demand, but this is not required by wxWindows' internals. Use this method to get data in text form from the \helpref{wxClipboard}{wxclipboard}. \membersection{wxTextDataObject::SetText}\label{wxtextdataobjectsettext} \func{virtual void}{SetText}{\param{const wxString\& }{strText}} Sets the text associated with the data object. This method is called internally when retrieving data from the \helpref{wxClipboard}{wxclipboard} and may be used to paste data to the clipboard directly (instead of on-demand). \membersection{wxTextDataObject::WriteData}\label{wxtextdataobjectwritedata} \constfunc{virtual void}{WriteData}{\param{void}{*dest} } Write the data owned by this class to {\it dest}. By default, this calls \helpref{WriteString}{wxtextdataobjectwritestring} with the string set in the constructor or using \helpref{SetText}{wxtextdataobjectsettext}. This can be overridden to provide text data on-demand; in this case \helpref{WriteString}{wxtextdataobjectwritestring} must be called from within the overriding WriteData() method. \membersection{wxTextDataObject::WriteString}\label{wxtextdataobjectwritestring} \constfunc{void}{WriteString}{\param{const wxString\& }{str}\param{void}{*dest} } Writes the the string {\it str} to {\it dest}. This method must be called from \helpref{WriteData}{wxtextdataobjectwritedata}.