1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>wxWidgets: wxCustomDataObject Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="extra_stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="page_container">
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0" style="width: 100%;">
<tbody>
<tr>
<td id="projectlogo">
<a href="http://www.wxwidgets.org/" target="_new">
<img alt="wxWidgets" src="logo.png"/>
</a>
</td>
<td style="padding-left: 0.5em; text-align: right;">
<span id="projectnumber">Version: 3.0.2</span>
</td>
</tr>
</tbody>
</table>
</div>
<!-- Generated by Doxygen 1.8.2 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="modules.html"><span>Categories</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class List</span></a></li>
<li><a href="classes.html"><span>Class Index</span></a></li>
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class Members</span></a></li>
</ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<a href="classwx_custom_data_object-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">wxCustomDataObject Class Reference<div class="ingroups"><a class="el" href="group__group__class__dnd.html">Clipboard and Drag & Drop</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include <wx/dataobj.h></code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for wxCustomDataObject:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="classwx_custom_data_object__inherit__graph.png" border="0" usemap="#wx_custom_data_object_inherit__map" alt="Inheritance graph"/></div>
<map name="wx_custom_data_object_inherit__map" id="wx_custom_data_object_inherit__map">
<area shape="rect" id="node2" href="classwx_data_object_simple.html" title="This is the simplest possible implementation of the wxDataObject class." alt="" coords="8,83,149,111"/><area shape="rect" id="node4" href="classwx_data_object.html" title="A wxDataObject represents data that can be copied to or from the clipboard, or dragged and dropped..." alt="" coords="28,6,129,34"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classwx_custom_data_object.html" title="wxCustomDataObject is a specialization of wxDataObjectSimple for some application-specific data in ar...">wxCustomDataObject</a> is a specialization of <a class="el" href="classwx_data_object_simple.html" title="This is the simplest possible implementation of the wxDataObject class.">wxDataObjectSimple</a> for some application-specific data in arbitrary (either custom or one of the standard ones). </p>
<p>The only restriction is that it is supposed that this data can be copied bitwise (i.e. with <code>memcpy()</code>), so it would be a bad idea to make it contain a C++ object (though C struct is fine).</p>
<p>By default, <a class="el" href="classwx_custom_data_object.html" title="wxCustomDataObject is a specialization of wxDataObjectSimple for some application-specific data in ar...">wxCustomDataObject</a> stores the data inside in a buffer. To put the data into the buffer you may use either <a class="el" href="classwx_custom_data_object.html#a5a0cdd8e3a80d0bd7853b86e662650b4" title="Set the data.">SetData()</a> or <a class="el" href="classwx_custom_data_object.html#a133a6a8044d298b68b50945c422ae4a8" title="Like SetData(), but doesn't copy the data - instead the object takes ownership of the pointer...">TakeData()</a> depending on whether you want the object to make a copy of data or not.</p>
<p>This class may be used as is, but if you don't want store the data inside the object but provide it on demand instead, you should override <a class="el" href="classwx_custom_data_object.html#adce7c255d4b86568add6ceffbb96fcbd" title="Returns the data size in bytes.">GetSize()</a>, <a class="el" href="classwx_custom_data_object.html#a47064b9dcd307e4e3b253551f38c57f0" title="Returns a pointer to the data.">GetData()</a> and <a class="el" href="classwx_custom_data_object.html#a5a0cdd8e3a80d0bd7853b86e662650b4" title="Set the data.">SetData()</a> (or may be only the first two or only the last one if you only allow reading/writing the data).</p>
<h2></h2>
<div><span class="lib">Library:</span>  <span class="lib_text"><a class="el" href="page_libs.html#page_libs_wxcore">wxCore</a></span></div><div><span class="category">Category:</span>  <span class="category_text"><a class="el" href="group__group__class__dnd.html">Clipboard and Drag & Drop</a></span></div><dl class="section see"><dt>See Also</dt><dd><a class="el" href="classwx_data_object.html" title="A wxDataObject represents data that can be copied to or from the clipboard, or dragged and dropped...">wxDataObject</a> </dd></dl>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a667ea5eae3e91095d79cb6fe9e548695"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_custom_data_object.html#a667ea5eae3e91095d79cb6fe9e548695">wxCustomDataObject</a> (const <a class="el" href="classwx_data_format.html">wxDataFormat</a> &format=<a class="el" href="dataobj_8h.html#ad7c90f2b8a468a3999d0df90fa82e5aa">wxFormatInvalid</a>)</td></tr>
<tr class="memdesc:a667ea5eae3e91095d79cb6fe9e548695"><td class="mdescLeft"> </td><td class="mdescRight">The constructor accepts a <em>format</em> argument which specifies the (single) format supported by this object. <a href="#a667ea5eae3e91095d79cb6fe9e548695"></a><br/></td></tr>
<tr class="separator:a667ea5eae3e91095d79cb6fe9e548695"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a042c4d25874ae1bdf71ce21dea4989d4"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_custom_data_object.html#a042c4d25874ae1bdf71ce21dea4989d4">~wxCustomDataObject</a> ()</td></tr>
<tr class="memdesc:a042c4d25874ae1bdf71ce21dea4989d4"><td class="mdescLeft"> </td><td class="mdescRight">The destructor will free the data held by the object. <a href="#a042c4d25874ae1bdf71ce21dea4989d4"></a><br/></td></tr>
<tr class="separator:a042c4d25874ae1bdf71ce21dea4989d4"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a6d9480a051d902ef368f41fecbc886f6"><td class="memItemLeft" align="right" valign="top">virtual void * </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_custom_data_object.html#a6d9480a051d902ef368f41fecbc886f6">Alloc</a> (size_t size)</td></tr>
<tr class="memdesc:a6d9480a051d902ef368f41fecbc886f6"><td class="mdescLeft"> </td><td class="mdescRight">This function is called to allocate <em>size</em> bytes of memory from <a class="el" href="classwx_custom_data_object.html#a5a0cdd8e3a80d0bd7853b86e662650b4" title="Set the data.">SetData()</a>. <a href="#a6d9480a051d902ef368f41fecbc886f6"></a><br/></td></tr>
<tr class="separator:a6d9480a051d902ef368f41fecbc886f6"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a4978a39c76eaba4fc880aea751139b1c"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_custom_data_object.html#a4978a39c76eaba4fc880aea751139b1c">Free</a> ()</td></tr>
<tr class="memdesc:a4978a39c76eaba4fc880aea751139b1c"><td class="mdescLeft"> </td><td class="mdescRight">This function is called when the data is freed, you may override it to anything you want (or may be nothing at all). <a href="#a4978a39c76eaba4fc880aea751139b1c"></a><br/></td></tr>
<tr class="separator:a4978a39c76eaba4fc880aea751139b1c"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a47064b9dcd307e4e3b253551f38c57f0"><td class="memItemLeft" align="right" valign="top">virtual void * </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_custom_data_object.html#a47064b9dcd307e4e3b253551f38c57f0">GetData</a> () const </td></tr>
<tr class="memdesc:a47064b9dcd307e4e3b253551f38c57f0"><td class="mdescLeft"> </td><td class="mdescRight">Returns a pointer to the data. <a href="#a47064b9dcd307e4e3b253551f38c57f0"></a><br/></td></tr>
<tr class="separator:a47064b9dcd307e4e3b253551f38c57f0"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:adce7c255d4b86568add6ceffbb96fcbd"><td class="memItemLeft" align="right" valign="top">virtual size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_custom_data_object.html#adce7c255d4b86568add6ceffbb96fcbd">GetSize</a> () const </td></tr>
<tr class="memdesc:adce7c255d4b86568add6ceffbb96fcbd"><td class="mdescLeft"> </td><td class="mdescRight">Returns the data size in bytes. <a href="#adce7c255d4b86568add6ceffbb96fcbd"></a><br/></td></tr>
<tr class="separator:adce7c255d4b86568add6ceffbb96fcbd"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a5a0cdd8e3a80d0bd7853b86e662650b4"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_custom_data_object.html#a5a0cdd8e3a80d0bd7853b86e662650b4">SetData</a> (size_t size, const void *data)</td></tr>
<tr class="memdesc:a5a0cdd8e3a80d0bd7853b86e662650b4"><td class="mdescLeft"> </td><td class="mdescRight">Set the data. <a href="#a5a0cdd8e3a80d0bd7853b86e662650b4"></a><br/></td></tr>
<tr class="separator:a5a0cdd8e3a80d0bd7853b86e662650b4"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a133a6a8044d298b68b50945c422ae4a8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_custom_data_object.html#a133a6a8044d298b68b50945c422ae4a8">TakeData</a> (size_t size, void *data)</td></tr>
<tr class="memdesc:a133a6a8044d298b68b50945c422ae4a8"><td class="mdescLeft"> </td><td class="mdescRight">Like <a class="el" href="classwx_custom_data_object.html#a5a0cdd8e3a80d0bd7853b86e662650b4" title="Set the data.">SetData()</a>, but doesn't copy the data - instead the object takes ownership of the pointer. <a href="#a133a6a8044d298b68b50945c422ae4a8"></a><br/></td></tr>
<tr class="separator:a133a6a8044d298b68b50945c422ae4a8"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_methods_classwx_data_object_simple"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classwx_data_object_simple')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classwx_data_object_simple.html">wxDataObjectSimple</a></td></tr>
<tr class="memitem:ad246b285dd2f414f4b13a4d794bf602d inherit pub_methods_classwx_data_object_simple"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object_simple.html#ad246b285dd2f414f4b13a4d794bf602d">wxDataObjectSimple</a> (const <a class="el" href="classwx_data_format.html">wxDataFormat</a> &format=<a class="el" href="dataobj_8h.html#ad7c90f2b8a468a3999d0df90fa82e5aa">wxFormatInvalid</a>)</td></tr>
<tr class="memdesc:ad246b285dd2f414f4b13a4d794bf602d inherit pub_methods_classwx_data_object_simple"><td class="mdescLeft"> </td><td class="mdescRight">Constructor accepts the supported format (none by default) which may also be set later with <a class="el" href="classwx_data_object_simple.html#adf9d889c7fcc7e05cb6253b3b1e3cb0f" title="Sets the supported format.">SetFormat()</a>. <a href="#ad246b285dd2f414f4b13a4d794bf602d"></a><br/></td></tr>
<tr class="separator:ad246b285dd2f414f4b13a4d794bf602d inherit pub_methods_classwx_data_object_simple"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a20585d2b354e24e5f7b0f4f559f50594 inherit pub_methods_classwx_data_object_simple"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object_simple.html#a20585d2b354e24e5f7b0f4f559f50594">GetDataHere</a> (void *buf) const </td></tr>
<tr class="memdesc:a20585d2b354e24e5f7b0f4f559f50594 inherit pub_methods_classwx_data_object_simple"><td class="mdescLeft"> </td><td class="mdescRight">Copy the data to the buffer, return <span class="literal">true</span> on success. <a href="#a20585d2b354e24e5f7b0f4f559f50594"></a><br/></td></tr>
<tr class="separator:a20585d2b354e24e5f7b0f4f559f50594 inherit pub_methods_classwx_data_object_simple"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aac4311ab34deb1028d471c6a435574ff inherit pub_methods_classwx_data_object_simple"><td class="memItemLeft" align="right" valign="top">virtual size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object_simple.html#aac4311ab34deb1028d471c6a435574ff">GetDataSize</a> () const </td></tr>
<tr class="memdesc:aac4311ab34deb1028d471c6a435574ff inherit pub_methods_classwx_data_object_simple"><td class="mdescLeft"> </td><td class="mdescRight">Gets the size of our data. <a href="#aac4311ab34deb1028d471c6a435574ff"></a><br/></td></tr>
<tr class="separator:aac4311ab34deb1028d471c6a435574ff inherit pub_methods_classwx_data_object_simple"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abd9099ed166b9fc902106f06db8a8338 inherit pub_methods_classwx_data_object_simple"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classwx_data_format.html">wxDataFormat</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object_simple.html#abd9099ed166b9fc902106f06db8a8338">GetFormat</a> () const </td></tr>
<tr class="memdesc:abd9099ed166b9fc902106f06db8a8338 inherit pub_methods_classwx_data_object_simple"><td class="mdescLeft"> </td><td class="mdescRight">Returns the (one and only one) format supported by this object. <a href="#abd9099ed166b9fc902106f06db8a8338"></a><br/></td></tr>
<tr class="separator:abd9099ed166b9fc902106f06db8a8338 inherit pub_methods_classwx_data_object_simple"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:adf9d889c7fcc7e05cb6253b3b1e3cb0f inherit pub_methods_classwx_data_object_simple"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object_simple.html#adf9d889c7fcc7e05cb6253b3b1e3cb0f">SetFormat</a> (const <a class="el" href="classwx_data_format.html">wxDataFormat</a> &format)</td></tr>
<tr class="memdesc:adf9d889c7fcc7e05cb6253b3b1e3cb0f inherit pub_methods_classwx_data_object_simple"><td class="mdescLeft"> </td><td class="mdescRight">Sets the supported format. <a href="#adf9d889c7fcc7e05cb6253b3b1e3cb0f"></a><br/></td></tr>
<tr class="separator:adf9d889c7fcc7e05cb6253b3b1e3cb0f inherit pub_methods_classwx_data_object_simple"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_methods_classwx_data_object"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classwx_data_object')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classwx_data_object.html">wxDataObject</a></td></tr>
<tr class="memitem:aa910d21b55e45638567f770aa71a44da inherit pub_methods_classwx_data_object"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object.html#aa910d21b55e45638567f770aa71a44da">wxDataObject</a> ()</td></tr>
<tr class="memdesc:aa910d21b55e45638567f770aa71a44da inherit pub_methods_classwx_data_object"><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#aa910d21b55e45638567f770aa71a44da"></a><br/></td></tr>
<tr class="separator:aa910d21b55e45638567f770aa71a44da inherit pub_methods_classwx_data_object"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a392665fe790cd29de240223b5bd2936c inherit pub_methods_classwx_data_object"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object.html#a392665fe790cd29de240223b5bd2936c">~wxDataObject</a> ()</td></tr>
<tr class="memdesc:a392665fe790cd29de240223b5bd2936c inherit pub_methods_classwx_data_object"><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#a392665fe790cd29de240223b5bd2936c"></a><br/></td></tr>
<tr class="separator:a392665fe790cd29de240223b5bd2936c inherit pub_methods_classwx_data_object"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a71abcc4eb2229e936ea53ebdefa53bef inherit pub_methods_classwx_data_object"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object.html#a71abcc4eb2229e936ea53ebdefa53bef">GetAllFormats</a> (<a class="el" href="classwx_data_format.html">wxDataFormat</a> *formats, <a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692ef">Direction</a> dir=<a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692efac7de2bf89290f75553da7f3cb8fa5397">Get</a>) const =0</td></tr>
<tr class="memdesc:a71abcc4eb2229e936ea53ebdefa53bef inherit pub_methods_classwx_data_object"><td class="mdescLeft"> </td><td class="mdescRight">Copies all formats supported in the given direction <em>dir</em> to the array pointed to by <em>formats</em>. <a href="#a71abcc4eb2229e936ea53ebdefa53bef"></a><br/></td></tr>
<tr class="separator:a71abcc4eb2229e936ea53ebdefa53bef inherit pub_methods_classwx_data_object"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aa48761390b25d797d4cad393db752568 inherit pub_methods_classwx_data_object"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object.html#aa48761390b25d797d4cad393db752568">GetDataHere</a> (const <a class="el" href="classwx_data_format.html">wxDataFormat</a> &format, void *buf) const =0</td></tr>
<tr class="memdesc:aa48761390b25d797d4cad393db752568 inherit pub_methods_classwx_data_object"><td class="mdescLeft"> </td><td class="mdescRight">The method will write the data of the format <em>format</em> to the buffer <em>buf</em>. <a href="#aa48761390b25d797d4cad393db752568"></a><br/></td></tr>
<tr class="separator:aa48761390b25d797d4cad393db752568 inherit pub_methods_classwx_data_object"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a10674c65e59f08ba318f942e410b8627 inherit pub_methods_classwx_data_object"><td class="memItemLeft" align="right" valign="top">virtual size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object.html#a10674c65e59f08ba318f942e410b8627">GetDataSize</a> (const <a class="el" href="classwx_data_format.html">wxDataFormat</a> &format) const =0</td></tr>
<tr class="memdesc:a10674c65e59f08ba318f942e410b8627 inherit pub_methods_classwx_data_object"><td class="mdescLeft"> </td><td class="mdescRight">Returns the data size of the given format <em>format</em>. <a href="#a10674c65e59f08ba318f942e410b8627"></a><br/></td></tr>
<tr class="separator:a10674c65e59f08ba318f942e410b8627 inherit pub_methods_classwx_data_object"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a3f82815810bf4dcc34e1a5783c9b8a62 inherit pub_methods_classwx_data_object"><td class="memItemLeft" align="right" valign="top">virtual size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object.html#a3f82815810bf4dcc34e1a5783c9b8a62">GetFormatCount</a> (<a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692ef">Direction</a> dir=<a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692efac7de2bf89290f75553da7f3cb8fa5397">Get</a>) const =0</td></tr>
<tr class="memdesc:a3f82815810bf4dcc34e1a5783c9b8a62 inherit pub_methods_classwx_data_object"><td class="mdescLeft"> </td><td class="mdescRight">Returns the number of available formats for rendering or setting the data. <a href="#a3f82815810bf4dcc34e1a5783c9b8a62"></a><br/></td></tr>
<tr class="separator:a3f82815810bf4dcc34e1a5783c9b8a62 inherit pub_methods_classwx_data_object"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a47570ed6123bbebec195a2b7f843103c inherit pub_methods_classwx_data_object"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classwx_data_format.html">wxDataFormat</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object.html#a47570ed6123bbebec195a2b7f843103c">GetPreferredFormat</a> (<a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692ef">Direction</a> dir=<a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692efac7de2bf89290f75553da7f3cb8fa5397">Get</a>) const =0</td></tr>
<tr class="memdesc:a47570ed6123bbebec195a2b7f843103c inherit pub_methods_classwx_data_object"><td class="mdescLeft"> </td><td class="mdescRight">Returns the preferred format for either rendering the data (if <em>dir</em> is <code>Get</code>, its default value) or for setting it. <a href="#a47570ed6123bbebec195a2b7f843103c"></a><br/></td></tr>
<tr class="separator:a47570ed6123bbebec195a2b7f843103c inherit pub_methods_classwx_data_object"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab73fa5f1cb933c67df20ddb1fad99071 inherit pub_methods_classwx_data_object"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object.html#ab73fa5f1cb933c67df20ddb1fad99071">SetData</a> (const <a class="el" href="classwx_data_format.html">wxDataFormat</a> &format, size_t len, const void *buf)</td></tr>
<tr class="memdesc:ab73fa5f1cb933c67df20ddb1fad99071 inherit pub_methods_classwx_data_object"><td class="mdescLeft"> </td><td class="mdescRight">Set the data in the format <em>format</em> of the length <em>len</em> provided in the buffer <em>buf</em>. <a href="#ab73fa5f1cb933c67df20ddb1fad99071"></a><br/></td></tr>
<tr class="separator:ab73fa5f1cb933c67df20ddb1fad99071 inherit pub_methods_classwx_data_object"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aaedc05373d1e6822c9795f57d8200b72 inherit pub_methods_classwx_data_object"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object.html#aaedc05373d1e6822c9795f57d8200b72">IsSupported</a> (const <a class="el" href="classwx_data_format.html">wxDataFormat</a> &format, <a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692ef">Direction</a> dir=<a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692efac7de2bf89290f75553da7f3cb8fa5397">Get</a>) const </td></tr>
<tr class="memdesc:aaedc05373d1e6822c9795f57d8200b72 inherit pub_methods_classwx_data_object"><td class="mdescLeft"> </td><td class="mdescRight">Returns true if this format is supported. <a href="#aaedc05373d1e6822c9795f57d8200b72"></a><br/></td></tr>
<tr class="separator:aaedc05373d1e6822c9795f57d8200b72 inherit pub_methods_classwx_data_object"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_classwx_data_object"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classwx_data_object')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="classwx_data_object.html">wxDataObject</a></td></tr>
<tr class="memitem:a7623fd02a6bef5dba7c96ff0a1a692ef inherit pub_types_classwx_data_object"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692ef">Direction</a> { <br/>
  <a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692efac7de2bf89290f75553da7f3cb8fa5397">Get</a> = 0x01,
<br/>
  <a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692efa2ab9d7f173f2d17dc8ee7324ed3410b6">Set</a> = 0x02,
<br/>
  <a class="el" href="classwx_data_object.html#a7623fd02a6bef5dba7c96ff0a1a692efa1f94b69e55238c5470f85e252b5fd8df">Both</a> = 0x03
<br/>
}</td></tr>
<tr class="separator:a7623fd02a6bef5dba7c96ff0a1a692ef inherit pub_types_classwx_data_object"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<h2 class="groupheader">Constructor & Destructor Documentation</h2>
<a class="anchor" id="a667ea5eae3e91095d79cb6fe9e548695"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">wxCustomDataObject::wxCustomDataObject </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classwx_data_format.html">wxDataFormat</a> & </td>
<td class="paramname"><em>format</em> = <code><a class="el" href="dataobj_8h.html#ad7c90f2b8a468a3999d0df90fa82e5aa">wxFormatInvalid</a></code></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>The constructor accepts a <em>format</em> argument which specifies the (single) format supported by this object. </p>
<p>If it isn't set here, <a class="el" href="classwx_data_object_simple.html#adf9d889c7fcc7e05cb6253b3b1e3cb0f" title="Sets the supported format.">wxDataObjectSimple::SetFormat()</a> should be used. </p>
</div>
</div>
<a class="anchor" id="a042c4d25874ae1bdf71ce21dea4989d4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual wxCustomDataObject::~wxCustomDataObject </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>The destructor will free the data held by the object. </p>
<p>Notice that although it calls the virtual <a class="el" href="classwx_custom_data_object.html#a4978a39c76eaba4fc880aea751139b1c" title="This function is called when the data is freed, you may override it to anything you want (or may be n...">Free()</a> function, the base class version will always be called (C++ doesn't allow calling virtual functions from constructors or destructors), so if you override <a class="el" href="classwx_custom_data_object.html#a4978a39c76eaba4fc880aea751139b1c" title="This function is called when the data is freed, you may override it to anything you want (or may be n...">Free()</a>, you should override the destructor in your class as well (which would probably just call the derived class' version of <a class="el" href="classwx_custom_data_object.html#a4978a39c76eaba4fc880aea751139b1c" title="This function is called when the data is freed, you may override it to anything you want (or may be n...">Free()</a>). </p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a6d9480a051d902ef368f41fecbc886f6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void* wxCustomDataObject::Alloc </td>
<td>(</td>
<td class="paramtype">size_t </td>
<td class="paramname"><em>size</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This function is called to allocate <em>size</em> bytes of memory from <a class="el" href="classwx_custom_data_object.html#a5a0cdd8e3a80d0bd7853b86e662650b4" title="Set the data.">SetData()</a>. </p>
<p>The default version just uses the operator new. </p>
</div>
</div>
<a class="anchor" id="a4978a39c76eaba4fc880aea751139b1c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void wxCustomDataObject::Free </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This function is called when the data is freed, you may override it to anything you want (or may be nothing at all). </p>
<p>The default version calls operator delete[] on the data. </p>
</div>
</div>
<a class="anchor" id="a47064b9dcd307e4e3b253551f38c57f0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void* wxCustomDataObject::GetData </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a pointer to the data. </p>
</div>
</div>
<a class="anchor" id="adce7c255d4b86568add6ceffbb96fcbd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual size_t wxCustomDataObject::GetSize </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the data size in bytes. </p>
</div>
</div>
<a class="anchor" id="a5a0cdd8e3a80d0bd7853b86e662650b4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual bool wxCustomDataObject::SetData </td>
<td>(</td>
<td class="paramtype">size_t </td>
<td class="paramname"><em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void * </td>
<td class="paramname"><em>data</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the data. </p>
<p>The data object will make an internal copy. </p>
<p>Reimplemented from <a class="el" href="classwx_data_object_simple.html#a064b6e42ceb86247318e7ab62bb47442">wxDataObjectSimple</a>.</p>
</div>
</div>
<a class="anchor" id="a133a6a8044d298b68b50945c422ae4a8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void wxCustomDataObject::TakeData </td>
<td>(</td>
<td class="paramtype">size_t </td>
<td class="paramname"><em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void * </td>
<td class="paramname"><em>data</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Like <a class="el" href="classwx_custom_data_object.html#a5a0cdd8e3a80d0bd7853b86e662650b4" title="Set the data.">SetData()</a>, but doesn't copy the data - instead the object takes ownership of the pointer. </p>
</div>
</div>
</div><!-- contents -->
<address class="footer">
<small>
Generated on Thu Nov 27 2014 13:46:45 for wxWidgets by <a href="http://www.doxygen.org/index.html" target="_new">Doxygen</a> 1.8.2
</small>
</address>
<script src="wxwidgets.js" type="text/javascript"></script>
</div><!-- #page_container -->
</body>
</html>
|