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 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Wt examples: /home/koen/project/wt/public-git/wt/examples/treeview-dragdrop/TreeViewDragDrop.C Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<h1>/home/koen/project/wt/public-git/wt/examples/treeview-dragdrop/TreeViewDragDrop.C</h1><a href="TreeViewDragDrop_8C.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment"> * Copyright (C) 2008 Emweb bvba, Kessel-Lo, Belgium.</span>
<a name="l00003"></a>00003 <span class="comment"> *</span>
<a name="l00004"></a>00004 <span class="comment"> * See the LICENSE file for terms of use.</span>
<a name="l00005"></a>00005 <span class="comment"> */</span>
<a name="l00006"></a>00006 <span class="preprocessor">#include <fstream></span>
<a name="l00007"></a>00007
<a name="l00008"></a>00008 <span class="preprocessor">#include <Wt/WApplication></span>
<a name="l00009"></a>00009 <span class="preprocessor">#include <Wt/WComboBox></span>
<a name="l00010"></a>00010 <span class="preprocessor">#include <Wt/WContainerWidget></span>
<a name="l00011"></a>00011 <span class="preprocessor">#include <Wt/WDatePicker></span>
<a name="l00012"></a>00012 <span class="preprocessor">#include <Wt/WDateValidator></span>
<a name="l00013"></a>00013 <span class="preprocessor">#include <Wt/WDialog></span>
<a name="l00014"></a>00014 <span class="preprocessor">#include <Wt/WIntValidator></span>
<a name="l00015"></a>00015 <span class="preprocessor">#include <Wt/WItemDelegate></span>
<a name="l00016"></a>00016 <span class="preprocessor">#include <Wt/WLabel></span>
<a name="l00017"></a>00017 <span class="preprocessor">#include <Wt/WLineEdit></span>
<a name="l00018"></a>00018 <span class="preprocessor">#include <Wt/WMessageBox></span>
<a name="l00019"></a>00019 <span class="preprocessor">#include <Wt/WPushButton></span>
<a name="l00020"></a>00020 <span class="preprocessor">#include <Wt/WRegExpValidator></span>
<a name="l00021"></a>00021 <span class="preprocessor">#include <Wt/WGridLayout></span>
<a name="l00022"></a>00022 <span class="preprocessor">#include <Wt/WPopupMenu></span>
<a name="l00023"></a>00023 <span class="preprocessor">#include <Wt/WSortFilterProxyModel></span>
<a name="l00024"></a>00024 <span class="preprocessor">#include <Wt/WStandardItem></span>
<a name="l00025"></a>00025 <span class="preprocessor">#include <Wt/WStandardItemModel></span>
<a name="l00026"></a>00026 <span class="preprocessor">#include <Wt/WTreeView></span>
<a name="l00027"></a>00027 <span class="preprocessor">#include <Wt/WText></span>
<a name="l00028"></a>00028 <span class="preprocessor">#include <Wt/WVBoxLayout></span>
<a name="l00029"></a>00029
<a name="l00030"></a>00030 <span class="preprocessor">#include <Wt/Chart/WPieChart></span>
<a name="l00031"></a>00031
<a name="l00032"></a>00032 <span class="preprocessor">#include "<a class="code" href="treeview-dragdrop_2CsvUtil_8h.html">CsvUtil.h</a>"</span>
<a name="l00033"></a>00033 <span class="preprocessor">#include "<a class="code" href="FolderView_8h.html">FolderView.h</a>"</span>
<a name="l00034"></a>00034
<a name="l00035"></a>00035 <span class="keyword">using namespace </span>Wt;
<a name="l00036"></a>00036
<a name="l00041"></a>00041
<a name="l00049"></a><a class="code" href="classFileModel.html">00049</a> <span class="keyword">class </span><a class="code" href="classFileModel.html" title="A specialized standard item model which report a specific drag and drop mime type...">FileModel</a> : <span class="keyword">public</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html">WStandardItemModel</a>
<a name="l00050"></a>00050 {
<a name="l00051"></a>00051 <span class="keyword">public</span>:
<a name="l00054"></a><a class="code" href="classFileModel.html#d4119fe945be59b73258454065b70a44">00054</a> <a class="code" href="classFileModel.html#d4119fe945be59b73258454065b70a44" title="Constructor.">FileModel</a>(<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WObject.html">WObject</a> *<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WObject.html#2af8f7ec8d3807d434e1f70d1245c6b4">parent</a>)
<a name="l00055"></a>00055 : <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html">WStandardItemModel</a>(parent) { }
<a name="l00056"></a>00056
<a name="l00059"></a><a class="code" href="classFileModel.html#1d1b5545d4f6763071536ec8ce6bc2e6">00059</a> <span class="keyword">virtual</span> std::string <a class="code" href="classFileModel.html#1d1b5545d4f6763071536ec8ce6bc2e6" title="Return the mime type.">mimeType</a>()<span class="keyword"> const </span>{
<a name="l00060"></a>00060 <span class="keywordflow">return</span> <a class="code" href="classFolderView.html#f50f30fffaedf2e6e4b1e0d65acc9df0" title="Constant that indicates the mime type for a selection of files.">FolderView::FileSelectionMimeType</a>;
<a name="l00061"></a>00061 }
<a name="l00062"></a>00062
<a name="l00064"></a><a class="code" href="group__treeviewdragdrop.html#gf69754b77374aac3aa0eed57360fbb7f">00064</a> <span class="keyword">static</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WString.html">WString</a> <a class="code" href="group__treeviewdragdrop.html#gf69754b77374aac3aa0eed57360fbb7f" title="Date display format.">dateDisplayFormat</a>;
<a name="l00065"></a>00065
<a name="l00067"></a><a class="code" href="group__treeviewdragdrop.html#g7bb540f8c352707933d4bd36c8282aba">00067</a> <span class="keyword">static</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WString.html">WString</a> <a class="code" href="group__treeviewdragdrop.html#g7bb540f8c352707933d4bd36c8282aba" title="Date edit format.">dateEditFormat</a>;
<a name="l00068"></a>00068 };
<a name="l00069"></a>00069
<a name="l00070"></a>00070 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WString.html">WString</a> <a class="code" href="group__treeviewdragdrop.html#gf69754b77374aac3aa0eed57360fbb7f" title="Date display format.">FileModel::dateDisplayFormat</a>(WString::fromUTF8(<span class="stringliteral">"MMM dd, yyyy"</span>));
<a name="l00071"></a>00071 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WString.html">WString</a> <a class="code" href="group__treeviewdragdrop.html#g7bb540f8c352707933d4bd36c8282aba" title="Date edit format.">FileModel::dateEditFormat</a>(WString::fromUTF8(<span class="stringliteral">"dd-MM-yyyy"</span>));
<a name="l00072"></a>00072
<a name="l00076"></a><a class="code" href="classFileEditDialog.html">00076</a> <span class="keyword">class </span><a class="code" href="classFileEditDialog.html" title="A dialog for editing a &#39;file&#39;.">FileEditDialog</a> : <span class="keyword">public</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDialog.html">WDialog</a>
<a name="l00077"></a>00077 {
<a name="l00078"></a>00078 <span class="keyword">public</span>:
<a name="l00079"></a><a class="code" href="classFileEditDialog.html#a115f117a2c3d074a2c471049d29af83">00079</a> <a class="code" href="classFileEditDialog.html#a115f117a2c3d074a2c471049d29af83">FileEditDialog</a>(<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html">WAbstractItemModel</a> *model, <span class="keyword">const</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WModelIndex.html">WModelIndex</a>& item)
<a name="l00080"></a>00080 : <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDialog.html">WDialog</a>(<span class="stringliteral">"Edit..."</span>),
<a name="l00081"></a>00081 <a class="code" href="classFileEditDialog.html#6b753d0d0ce374018cf55664caf7a471">model_</a>(model),
<a name="l00082"></a>00082 <a class="code" href="classFileEditDialog.html#373d25cfaf212d465426b18df5bbf0a0">item_</a>(item)
<a name="l00083"></a>00083 {
<a name="l00084"></a>00084 <span class="keywordtype">int</span> modelRow = <a class="code" href="classFileEditDialog.html#373d25cfaf212d465426b18df5bbf0a0">item_</a>.<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WModelIndex.html#a4f1385223391c46ee200a57672f6046">row</a>();
<a name="l00085"></a>00085
<a name="l00086"></a>00086 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WCompositeWidget.html#976e94e38c7a9cc0f212e13a9792912e">resize</a>(300, WLength::Auto);
<a name="l00087"></a>00087
<a name="l00088"></a>00088 <span class="comment">/*</span>
<a name="l00089"></a>00089 <span class="comment"> * Create the form widgets, and load them with data from the model.</span>
<a name="l00090"></a>00090 <span class="comment"> */</span>
<a name="l00091"></a>00091
<a name="l00092"></a>00092 <span class="comment">// name</span>
<a name="l00093"></a>00093 <a class="code" href="classFileEditDialog.html#6235fcd68d1c01e76bbca0e520195deb">nameEdit_</a> = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLineEdit.html">WLineEdit</a>(asString(<a class="code" href="classFileEditDialog.html#6b753d0d0ce374018cf55664caf7a471">model_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#9112b74d160f916ef75fb6c1c09dd8fe">data</a>(modelRow, 1)));
<a name="l00094"></a>00094
<a name="l00095"></a>00095 <span class="comment">// type</span>
<a name="l00096"></a>00096 <a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a> = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WComboBox.html">WComboBox</a>();
<a name="l00097"></a>00097 <a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WComboBox.html#9b2308a7d962ceb17c1ee32627b106d4">addItem</a>(<span class="stringliteral">"Document"</span>);
<a name="l00098"></a>00098 <a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WComboBox.html#9b2308a7d962ceb17c1ee32627b106d4">addItem</a>(<span class="stringliteral">"Spreadsheet"</span>);
<a name="l00099"></a>00099 <a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WComboBox.html#9b2308a7d962ceb17c1ee32627b106d4">addItem</a>(<span class="stringliteral">"Presentation"</span>);
<a name="l00100"></a>00100 <a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WComboBox.html#903e2d98c6860fe09198bdb43f0566bd">setCurrentIndex</a>
<a name="l00101"></a>00101 (<a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WComboBox.html#98d44c32191d2cc80be14da1bf6acb3a">findText</a>(asString(<a class="code" href="classFileEditDialog.html#6b753d0d0ce374018cf55664caf7a471">model_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#9112b74d160f916ef75fb6c1c09dd8fe">data</a>(modelRow, 2))));
<a name="l00102"></a>00102
<a name="l00103"></a>00103 <span class="comment">// size</span>
<a name="l00104"></a>00104 <a class="code" href="classFileEditDialog.html#83d6bb7ac66a916d969f3b1cd688907c">sizeEdit_</a> = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLineEdit.html">WLineEdit</a>(asString(<a class="code" href="classFileEditDialog.html#6b753d0d0ce374018cf55664caf7a471">model_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#9112b74d160f916ef75fb6c1c09dd8fe">data</a>(modelRow, 3)));
<a name="l00105"></a>00105 <a class="code" href="classFileEditDialog.html#83d6bb7ac66a916d969f3b1cd688907c">sizeEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WFormWidget.html#a773d16013d6959149ce5081e84b259c">setValidator</a>
<a name="l00106"></a>00106 (<span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WIntValidator.html">WIntValidator</a>(0, std::numeric_limits<int>::max(), <span class="keyword">this</span>));
<a name="l00107"></a>00107
<a name="l00108"></a>00108 <span class="comment">// created</span>
<a name="l00109"></a>00109 <a class="code" href="classFileEditDialog.html#8950574d6b4abe9c3687db44582ac952">createdPicker_</a> = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html">WDatePicker</a>();
<a name="l00110"></a>00110 <a class="code" href="classFileEditDialog.html#8950574d6b4abe9c3687db44582ac952">createdPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#50e3f4c7c700e0628fccebe0cb5d8268">lineEdit</a>()-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WFormWidget.html#4643be79e2c92bc448ce46e7d314335b">validator</a>()-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WValidator.html#6f7993c51a0088b927d7c9aa516efabb">setMandatory</a>(<span class="keyword">true</span>);
<a name="l00111"></a>00111 <a class="code" href="classFileEditDialog.html#8950574d6b4abe9c3687db44582ac952">createdPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#4eea10671eea698aea906802b7f67fde">setFormat</a>(<a class="code" href="group__treeviewdragdrop.html#g7bb540f8c352707933d4bd36c8282aba" title="Date edit format.">FileModel::dateEditFormat</a>);
<a name="l00112"></a>00112 <a class="code" href="classFileEditDialog.html#8950574d6b4abe9c3687db44582ac952">createdPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#dc47d5a1b0faf43dfed193f22f93c559">setDate</a>(boost::any_cast<WDate>(<a class="code" href="classFileEditDialog.html#6b753d0d0ce374018cf55664caf7a471">model_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#9112b74d160f916ef75fb6c1c09dd8fe">data</a>(modelRow, 4)));
<a name="l00113"></a>00113
<a name="l00114"></a>00114 <span class="comment">// modified</span>
<a name="l00115"></a>00115 <a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">modifiedPicker_</a> = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html">WDatePicker</a>();
<a name="l00116"></a>00116 <a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">modifiedPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#50e3f4c7c700e0628fccebe0cb5d8268">lineEdit</a>()-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WFormWidget.html#4643be79e2c92bc448ce46e7d314335b">validator</a>()-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WValidator.html#6f7993c51a0088b927d7c9aa516efabb">setMandatory</a>(<span class="keyword">true</span>);
<a name="l00117"></a>00117 <a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">modifiedPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#4eea10671eea698aea906802b7f67fde">setFormat</a>(<a class="code" href="group__treeviewdragdrop.html#g7bb540f8c352707933d4bd36c8282aba" title="Date edit format.">FileModel::dateEditFormat</a>);
<a name="l00118"></a>00118 <a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">modifiedPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#dc47d5a1b0faf43dfed193f22f93c559">setDate</a>(boost::any_cast<WDate>(<a class="code" href="classFileEditDialog.html#6b753d0d0ce374018cf55664caf7a471">model_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#9112b74d160f916ef75fb6c1c09dd8fe">data</a>(modelRow, 5)));
<a name="l00119"></a>00119
<a name="l00120"></a>00120 <span class="comment">/*</span>
<a name="l00121"></a>00121 <span class="comment"> * Use a grid layout for the labels and fields</span>
<a name="l00122"></a>00122 <span class="comment"> */</span>
<a name="l00123"></a>00123 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html">WGridLayout</a> *layout = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html">WGridLayout</a>();
<a name="l00124"></a>00124
<a name="l00125"></a>00125 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html">WLabel</a> *l;
<a name="l00126"></a>00126 <span class="keywordtype">int</span> row = 0;
<a name="l00127"></a>00127
<a name="l00128"></a>00128 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(l = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html">WLabel</a>(<span class="stringliteral">"Name:"</span>), row, 0);
<a name="l00129"></a>00129 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classFileEditDialog.html#6235fcd68d1c01e76bbca0e520195deb">nameEdit_</a>, row, 1);
<a name="l00130"></a>00130 l-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html#f468c613eab7d184c68fd6ae20978de5">setBuddy</a>(<a class="code" href="classFileEditDialog.html#6235fcd68d1c01e76bbca0e520195deb">nameEdit_</a>);
<a name="l00131"></a>00131 ++row;
<a name="l00132"></a>00132
<a name="l00133"></a>00133 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(l = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html">WLabel</a>(<span class="stringliteral">"Type:"</span>), row, 0);
<a name="l00134"></a>00134 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a>, row, 1, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#b8f772c69bc8180c31f9e4f4593b143f58fe5182bd266132c59718c6d30945a9">AlignTop</a>);
<a name="l00135"></a>00135 l-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html#f468c613eab7d184c68fd6ae20978de5">setBuddy</a>(<a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a>);
<a name="l00136"></a>00136 ++row;
<a name="l00137"></a>00137
<a name="l00138"></a>00138 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(l = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html">WLabel</a>(<span class="stringliteral">"Size:"</span>), row, 0);
<a name="l00139"></a>00139 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classFileEditDialog.html#83d6bb7ac66a916d969f3b1cd688907c">sizeEdit_</a>, row, 1);
<a name="l00140"></a>00140 l-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html#f468c613eab7d184c68fd6ae20978de5">setBuddy</a>(<a class="code" href="classFileEditDialog.html#83d6bb7ac66a916d969f3b1cd688907c">sizeEdit_</a>);
<a name="l00141"></a>00141 ++row;
<a name="l00142"></a>00142
<a name="l00143"></a>00143 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(l = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html">WLabel</a>(<span class="stringliteral">"Created:"</span>), row, 0);
<a name="l00144"></a>00144 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classFileEditDialog.html#8950574d6b4abe9c3687db44582ac952">createdPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#50e3f4c7c700e0628fccebe0cb5d8268">lineEdit</a>(), row, 1);
<a name="l00145"></a>00145 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classFileEditDialog.html#8950574d6b4abe9c3687db44582ac952">createdPicker_</a>, row, 2);
<a name="l00146"></a>00146 l-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html#f468c613eab7d184c68fd6ae20978de5">setBuddy</a>(<a class="code" href="classFileEditDialog.html#8950574d6b4abe9c3687db44582ac952">createdPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#50e3f4c7c700e0628fccebe0cb5d8268">lineEdit</a>());
<a name="l00147"></a>00147 ++row;
<a name="l00148"></a>00148
<a name="l00149"></a>00149 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(l = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html">WLabel</a>(<span class="stringliteral">"Modified:"</span>), row, 0);
<a name="l00150"></a>00150 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">modifiedPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#50e3f4c7c700e0628fccebe0cb5d8268">lineEdit</a>(), row, 1);
<a name="l00151"></a>00151 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">modifiedPicker_</a>, row, 2);
<a name="l00152"></a>00152 l-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLabel.html#f468c613eab7d184c68fd6ae20978de5">setBuddy</a>(<a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">modifiedPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#50e3f4c7c700e0628fccebe0cb5d8268">lineEdit</a>());
<a name="l00153"></a>00153 ++row;
<a name="l00154"></a>00154
<a name="l00155"></a>00155 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPushButton.html">WPushButton</a> *b;
<a name="l00156"></a>00156 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WContainerWidget.html">WContainerWidget</a> *buttons = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WContainerWidget.html">WContainerWidget</a>();
<a name="l00157"></a>00157 buttons-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WContainerWidget.html#2cfe66d9b62940f889e99538a9f478d2">addWidget</a>(b = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPushButton.html">WPushButton</a>(<span class="stringliteral">"Save"</span>));
<a name="l00158"></a>00158 b-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WInteractWidget.html#e11e050cce0d4a8f742afa3ef92bfe8c">clicked</a>().connect(SLOT(<span class="keyword">this</span>, WDialog::accept));
<a name="l00159"></a>00159 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDialog.html#10f2f5df7ee5762845bf7ba334f170ae">contents</a>()-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WInteractWidget.html#38f06d1ad95e7599b055f49931236c10">enterPressed</a>().<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1EventSignal.html#6efcb92576b5aa846a3354dd26918a9f">connect</a>(SLOT(<span class="keyword">this</span>, WDialog::accept));
<a name="l00160"></a>00160 buttons-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WContainerWidget.html#2cfe66d9b62940f889e99538a9f478d2">addWidget</a>(b = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPushButton.html">WPushButton</a>(<span class="stringliteral">"Cancel"</span>));
<a name="l00161"></a>00161 b-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WInteractWidget.html#e11e050cce0d4a8f742afa3ef92bfe8c">clicked</a>().connect(SLOT(<span class="keyword">this</span>, WDialog::reject));
<a name="l00162"></a>00162
<a name="l00163"></a>00163 <span class="comment">/*</span>
<a name="l00164"></a>00164 <span class="comment"> * Focus the form widget that corresonds to the selected item.</span>
<a name="l00165"></a>00165 <span class="comment"> */</span>
<a name="l00166"></a>00166 <span class="keywordflow">switch</span> (item.<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WModelIndex.html#0e6568dd7113662c3c378e2084729581">column</a>()) {
<a name="l00167"></a>00167 <span class="keywordflow">case</span> 2:
<a name="l00168"></a>00168 <a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WFormWidget.html#fe33f5c3658ddbd08fec9f6c203c578b">setFocus</a>(); <span class="keywordflow">break</span>;
<a name="l00169"></a>00169 <span class="keywordflow">case</span> 3:
<a name="l00170"></a>00170 <a class="code" href="classFileEditDialog.html#83d6bb7ac66a916d969f3b1cd688907c">sizeEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WFormWidget.html#fe33f5c3658ddbd08fec9f6c203c578b">setFocus</a>(); <span class="keywordflow">break</span>;
<a name="l00171"></a>00171 <span class="keywordflow">case</span> 4:
<a name="l00172"></a>00172 <a class="code" href="classFileEditDialog.html#8950574d6b4abe9c3687db44582ac952">createdPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#50e3f4c7c700e0628fccebe0cb5d8268">lineEdit</a>()-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WFormWidget.html#fe33f5c3658ddbd08fec9f6c203c578b">setFocus</a>(); <span class="keywordflow">break</span>;
<a name="l00173"></a>00173 <span class="keywordflow">case</span> 5:
<a name="l00174"></a>00174 <a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">modifiedPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#50e3f4c7c700e0628fccebe0cb5d8268">lineEdit</a>()-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WFormWidget.html#fe33f5c3658ddbd08fec9f6c203c578b">setFocus</a>(); <span class="keywordflow">break</span>;
<a name="l00175"></a>00175 <span class="keywordflow">default</span>:
<a name="l00176"></a>00176 <a class="code" href="classFileEditDialog.html#6235fcd68d1c01e76bbca0e520195deb">nameEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WFormWidget.html#fe33f5c3658ddbd08fec9f6c203c578b">setFocus</a>(); <span class="keywordflow">break</span>;
<a name="l00177"></a>00177 }
<a name="l00178"></a>00178
<a name="l00179"></a>00179 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(buttons, row, 0, 0, 3, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#b8f772c69bc8180c31f9e4f4593b143f121104cdbb5db77c7d038813a93998e5">AlignCenter</a>);
<a name="l00180"></a>00180 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#4605de0523f5613096b6cbd983123c8b">setColumnStretch</a>(1, 1);
<a name="l00181"></a>00181
<a name="l00182"></a>00182 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDialog.html#10f2f5df7ee5762845bf7ba334f170ae">contents</a>()-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WContainerWidget.html#1c84e0ffe330d4798f0ce217f75be08c">setLayout</a>(layout, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#b8f772c69bc8180c31f9e4f4593b143f58fe5182bd266132c59718c6d30945a9">AlignTop</a> | <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#b8f772c69bc8180c31f9e4f4593b143f18cdf9d975a5a41afa182aabfde0de88">AlignJustify</a>);
<a name="l00183"></a>00183
<a name="l00184"></a>00184 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDialog.html#e7f3991e5adf17ec4e9e93fd8a3a2f79">finished</a>().connect(SLOT(<span class="keyword">this</span>, <a class="code" href="classFileEditDialog.html#301f7cef04b5cbd1a5f3f5ce5c2cee9a">FileEditDialog::handleFinish</a>));
<a name="l00185"></a>00185
<a name="l00186"></a>00186 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WWidget.html#52dcef5a385ddfa0a8c3e6c20000f181">show</a>();
<a name="l00187"></a>00187 }
<a name="l00188"></a>00188
<a name="l00189"></a>00189 <span class="keyword">private</span>:
<a name="l00190"></a><a class="code" href="classFileEditDialog.html#6b753d0d0ce374018cf55664caf7a471">00190</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html">WAbstractItemModel</a> *<a class="code" href="classFileEditDialog.html#6b753d0d0ce374018cf55664caf7a471">model_</a>;
<a name="l00191"></a><a class="code" href="classFileEditDialog.html#373d25cfaf212d465426b18df5bbf0a0">00191</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WModelIndex.html">WModelIndex</a> <a class="code" href="classFileEditDialog.html#373d25cfaf212d465426b18df5bbf0a0">item_</a>;
<a name="l00192"></a>00192
<a name="l00193"></a><a class="code" href="classFileEditDialog.html#83d6bb7ac66a916d969f3b1cd688907c">00193</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLineEdit.html">WLineEdit</a> *<a class="code" href="classFileEditDialog.html#6235fcd68d1c01e76bbca0e520195deb">nameEdit_</a>, *<a class="code" href="classFileEditDialog.html#83d6bb7ac66a916d969f3b1cd688907c">sizeEdit_</a>;
<a name="l00194"></a><a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">00194</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WComboBox.html">WComboBox</a> *<a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a>;
<a name="l00195"></a><a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">00195</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html">WDatePicker</a> *<a class="code" href="classFileEditDialog.html#8950574d6b4abe9c3687db44582ac952">createdPicker_</a>, *<a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">modifiedPicker_</a>;
<a name="l00196"></a>00196
<a name="l00197"></a><a class="code" href="classFileEditDialog.html#301f7cef04b5cbd1a5f3f5ce5c2cee9a">00197</a> <span class="keywordtype">void</span> <a class="code" href="classFileEditDialog.html#301f7cef04b5cbd1a5f3f5ce5c2cee9a">handleFinish</a>(<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDialog.html#6f4bab24bf9e39be422bb6d9637268e6">DialogCode</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDialog.html#469ba179a2d620e2f7f6e0142f891c27">result</a>)
<a name="l00198"></a>00198 {
<a name="l00199"></a>00199 <span class="keywordflow">if</span> (result == WDialog::Accepted) {
<a name="l00200"></a>00200 <span class="comment">/*</span>
<a name="l00201"></a>00201 <span class="comment"> * Update the model with data from the edit widgets.</span>
<a name="l00202"></a>00202 <span class="comment"> *</span>
<a name="l00203"></a>00203 <span class="comment"> * You will want to do some validation here...</span>
<a name="l00204"></a>00204 <span class="comment"> *</span>
<a name="l00205"></a>00205 <span class="comment"> * Note that we directly update the source model to avoid</span>
<a name="l00206"></a>00206 <span class="comment"> * problems caused by the dynamic sorting of the proxy model,</span>
<a name="l00207"></a>00207 <span class="comment"> * which reorders row numbers, and would cause us to switch to editing</span>
<a name="l00208"></a>00208 <span class="comment"> * the wrong data.</span>
<a name="l00209"></a>00209 <span class="comment"> */</span>
<a name="l00210"></a>00210 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html">WAbstractItemModel</a> *m = <a class="code" href="classFileEditDialog.html#6b753d0d0ce374018cf55664caf7a471">model_</a>;
<a name="l00211"></a>00211 <span class="keywordtype">int</span> modelRow = <a class="code" href="classFileEditDialog.html#373d25cfaf212d465426b18df5bbf0a0">item_</a>.<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WModelIndex.html#a4f1385223391c46ee200a57672f6046">row</a>();
<a name="l00212"></a>00212
<a name="l00213"></a>00213 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractProxyModel.html">WAbstractProxyModel</a> *proxyModel = <span class="keyword">dynamic_cast<</span><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractProxyModel.html">WAbstractProxyModel</a> *<span class="keyword">></span>(m);
<a name="l00214"></a>00214 <span class="keywordflow">if</span> (proxyModel) {
<a name="l00215"></a>00215 m = proxyModel-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractProxyModel.html#553fbfaa929ade5275a57186eaf7f2bf">sourceModel</a>();
<a name="l00216"></a>00216 modelRow = proxyModel-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractProxyModel.html#c36b0ee3110073578da8b999d1882bf7">mapToSource</a>(<a class="code" href="classFileEditDialog.html#373d25cfaf212d465426b18df5bbf0a0">item_</a>).<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WModelIndex.html#a4f1385223391c46ee200a57672f6046">row</a>();
<a name="l00217"></a>00217 }
<a name="l00218"></a>00218
<a name="l00219"></a>00219 m-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#70856db8c322be8c7f397a932165a943">setData</a>(modelRow, 1, boost::any(<a class="code" href="classFileEditDialog.html#6235fcd68d1c01e76bbca0e520195deb">nameEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLineEdit.html#c74b58779cb635898cac13e81d8b0c7a">text</a>()));
<a name="l00220"></a>00220 m-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#70856db8c322be8c7f397a932165a943">setData</a>(modelRow, 2, boost::any(<a class="code" href="classFileEditDialog.html#956d2a65bc1e5c6683b98bf96c61ad20">typeEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WComboBox.html#ec0856e1bacf24fded9621054a0c357c">currentText</a>()));
<a name="l00221"></a>00221 m-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#70856db8c322be8c7f397a932165a943">setData</a>(modelRow, 3, boost::any(boost::lexical_cast<int>
<a name="l00222"></a>00222 (<a class="code" href="classFileEditDialog.html#83d6bb7ac66a916d969f3b1cd688907c">sizeEdit_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WLineEdit.html#c74b58779cb635898cac13e81d8b0c7a">text</a>().<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WString.html#159d088da6e8f2be1035b2341889254c">toUTF8</a>())));
<a name="l00223"></a>00223 m-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#70856db8c322be8c7f397a932165a943">setData</a>(modelRow, 4, boost::any(<a class="code" href="classFileEditDialog.html#8950574d6b4abe9c3687db44582ac952">createdPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#bfeb0d23dece4cf7fa7e9b65c0376f73">date</a>()));
<a name="l00224"></a>00224 m-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#70856db8c322be8c7f397a932165a943">setData</a>(modelRow, 5, boost::any(<a class="code" href="classFileEditDialog.html#8bcaf0a8a9d414797b9c6a9895891054">modifiedPicker_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDatePicker.html#bfeb0d23dece4cf7fa7e9b65c0376f73">date</a>()));
<a name="l00225"></a>00225 }
<a name="l00226"></a>00226
<a name="l00227"></a>00227 <span class="keyword">delete</span> <span class="keyword">this</span>;
<a name="l00228"></a>00228 }
<a name="l00229"></a>00229
<a name="l00230"></a>00230 };
<a name="l00231"></a>00231
<a name="l00235"></a><a class="code" href="classTreeViewDragDrop.html">00235</a> <span class="keyword">class </span><a class="code" href="classTreeViewDragDrop.html" title="Main application class.">TreeViewDragDrop</a> : <span class="keyword">public</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html">WApplication</a>
<a name="l00236"></a>00236 {
<a name="l00237"></a>00237 <span class="keyword">public</span>:
<a name="l00240"></a><a class="code" href="classTreeViewDragDrop.html#c45351bd9b49bb4734dfc060f0ffba2d">00240</a> <a class="code" href="classTreeViewDragDrop.html#c45351bd9b49bb4734dfc060f0ffba2d" title="Constructor.">TreeViewDragDrop</a>(<span class="keyword">const</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WEnvironment.html">WEnvironment</a> &env)
<a name="l00241"></a>00241 : <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html">WApplication</a>(env),
<a name="l00242"></a>00242 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>(0),
<a name="l00243"></a>00243 <a class="code" href="classTreeViewDragDrop.html#0f9c6ce8eb2765dbb97a213d618162c8" title="Message box to confirm the poup menu action.">popupActionBox_</a>(0)
<a name="l00244"></a>00244 {
<a name="l00245"></a>00245 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html#a316b2b30a6191085f265974b66e55bb">setCssTheme</a>(<span class="stringliteral">"polished"</span>);
<a name="l00246"></a>00246
<a name="l00247"></a>00247 <span class="comment">/*</span>
<a name="l00248"></a>00248 <span class="comment"> * Create the data models.</span>
<a name="l00249"></a>00249 <span class="comment"> */</span>
<a name="l00250"></a>00250 <a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128" title="The folder model (used by folderView_).">folderModel_</a> = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html">WStandardItemModel</a>(0, 1, <span class="keyword">this</span>);
<a name="l00251"></a>00251 <a class="code" href="classTreeViewDragDrop.html#fed9370b8ffa1178307e66965fbfdef6" title="Populate the folders model.">populateFolders</a>();
<a name="l00252"></a>00252
<a name="l00253"></a>00253 <a class="code" href="classTreeViewDragDrop.html#a37c4c6162e2c924585943ebe782a820" title="The file model (used by fileView_).">fileModel_</a> = <span class="keyword">new</span> <a class="code" href="classFileModel.html" title="A specialized standard item model which report a specific drag and drop mime type...">FileModel</a>(<span class="keyword">this</span>);
<a name="l00254"></a>00254 <a class="code" href="classTreeViewDragDrop.html#e4512c07f7d7206d9dfd5a0520f5e623" title="Populate the files model.">populateFiles</a>();
<a name="l00255"></a>00255
<a name="l00256"></a>00256 <a class="code" href="classTreeViewDragDrop.html#19119108885a86409206046fa915d2b5" title="The sort filter proxy model that adapts fileModel_.">fileFilterModel_</a> = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WSortFilterProxyModel.html">WSortFilterProxyModel</a>(<span class="keyword">this</span>);
<a name="l00257"></a>00257 <a class="code" href="classTreeViewDragDrop.html#19119108885a86409206046fa915d2b5" title="The sort filter proxy model that adapts fileModel_.">fileFilterModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WSortFilterProxyModel.html#805bcc6964e8c0194638c05f30d2a8cb">setSourceModel</a>(<a class="code" href="classTreeViewDragDrop.html#a37c4c6162e2c924585943ebe782a820" title="The file model (used by fileView_).">fileModel_</a>);
<a name="l00258"></a>00258 <a class="code" href="classTreeViewDragDrop.html#19119108885a86409206046fa915d2b5" title="The sort filter proxy model that adapts fileModel_.">fileFilterModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WSortFilterProxyModel.html#4dfdc62d591249454cbb38e5099f19b4">setDynamicSortFilter</a>(<span class="keyword">true</span>);
<a name="l00259"></a>00259 <a class="code" href="classTreeViewDragDrop.html#19119108885a86409206046fa915d2b5" title="The sort filter proxy model that adapts fileModel_.">fileFilterModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WSortFilterProxyModel.html#af272fe23196b67a409e7d0de03fd8d5">setFilterKeyColumn</a>(0);
<a name="l00260"></a>00260 <a class="code" href="classTreeViewDragDrop.html#19119108885a86409206046fa915d2b5" title="The sort filter proxy model that adapts fileModel_.">fileFilterModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WSortFilterProxyModel.html#0ca42014aa2f383154409032c9a3c8d3">setFilterRole</a>(<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/group__modelview.html#gg0ae864e12320f9f89172735e075ed0689b7eae9fc07ea4fd8afe7bc97954162c">UserRole</a>);
<a name="l00261"></a>00261
<a name="l00262"></a>00262 <span class="comment">/*</span>
<a name="l00263"></a>00263 <span class="comment"> * Setup the user interface.</span>
<a name="l00264"></a>00264 <span class="comment"> */</span>
<a name="l00265"></a>00265 <a class="code" href="classTreeViewDragDrop.html#4f0c1c90a10f77bf01a3491a44d95510" title="Setup the user interface.">createUI</a>();
<a name="l00266"></a>00266 }
<a name="l00267"></a>00267
<a name="l00268"></a><a class="code" href="classTreeViewDragDrop.html#4fbf9013946ad4ddd9ca2d16113921eb">00268</a> <span class="keyword">virtual</span> <a class="code" href="classTreeViewDragDrop.html#4fbf9013946ad4ddd9ca2d16113921eb">~TreeViewDragDrop</a>() {
<a name="l00269"></a>00269 <span class="keyword">delete</span> <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>;
<a name="l00270"></a>00270 <span class="keyword">delete</span> <a class="code" href="classTreeViewDragDrop.html#0f9c6ce8eb2765dbb97a213d618162c8" title="Message box to confirm the poup menu action.">popupActionBox_</a>;
<a name="l00271"></a>00271 }
<a name="l00272"></a>00272
<a name="l00273"></a>00273 <span class="keyword">private</span>:
<a name="l00275"></a><a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128">00275</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html">WStandardItemModel</a> *<a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128" title="The folder model (used by folderView_).">folderModel_</a>;
<a name="l00276"></a>00276
<a name="l00278"></a><a class="code" href="classTreeViewDragDrop.html#a37c4c6162e2c924585943ebe782a820">00278</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html">WStandardItemModel</a> *<a class="code" href="classTreeViewDragDrop.html#a37c4c6162e2c924585943ebe782a820" title="The file model (used by fileView_).">fileModel_</a>;
<a name="l00279"></a>00279
<a name="l00281"></a><a class="code" href="classTreeViewDragDrop.html#19119108885a86409206046fa915d2b5">00281</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WSortFilterProxyModel.html">WSortFilterProxyModel</a> *<a class="code" href="classTreeViewDragDrop.html#19119108885a86409206046fa915d2b5" title="The sort filter proxy model that adapts fileModel_.">fileFilterModel_</a>;
<a name="l00282"></a>00282
<a name="l00284"></a><a class="code" href="classTreeViewDragDrop.html#1aad35507448e8a8a59a0961d2c8ae5c">00284</a> std::map<std::string, WString> <a class="code" href="classTreeViewDragDrop.html#1aad35507448e8a8a59a0961d2c8ae5c" title="Maps folder id&#39;s to folder descriptions.">folderNameMap_</a>;
<a name="l00285"></a>00285
<a name="l00287"></a><a class="code" href="classTreeViewDragDrop.html#ed25ae86735ea2e25de9eeafa2f9f0ea">00287</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html">WTreeView</a> *<a class="code" href="classTreeViewDragDrop.html#ed25ae86735ea2e25de9eeafa2f9f0ea" title="The folder view.">folderView_</a>;
<a name="l00288"></a>00288
<a name="l00290"></a><a class="code" href="classTreeViewDragDrop.html#aa5edb1943fdf3283d54cd917695689d">00290</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html">WTreeView</a> *<a class="code" href="classTreeViewDragDrop.html#aa5edb1943fdf3283d54cd917695689d" title="The file view.">fileView_</a>;
<a name="l00291"></a>00291
<a name="l00293"></a><a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a">00293</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html">WPopupMenu</a> *<a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>;
<a name="l00294"></a>00294
<a name="l00296"></a><a class="code" href="classTreeViewDragDrop.html#0f9c6ce8eb2765dbb97a213d618162c8">00296</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WMessageBox.html">WMessageBox</a> *<a class="code" href="classTreeViewDragDrop.html#0f9c6ce8eb2765dbb97a213d618162c8" title="Message box to confirm the poup menu action.">popupActionBox_</a>;
<a name="l00297"></a>00297
<a name="l00300"></a><a class="code" href="classTreeViewDragDrop.html#4f0c1c90a10f77bf01a3491a44d95510">00300</a> <span class="keywordtype">void</span> <a class="code" href="classTreeViewDragDrop.html#4f0c1c90a10f77bf01a3491a44d95510" title="Setup the user interface.">createUI</a>() {
<a name="l00301"></a>00301 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WContainerWidget.html">WContainerWidget</a> *w = <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html#17e118a04d962459484a12989a80bc05">root</a>();
<a name="l00302"></a>00302 w-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WWebWidget.html#6fd43dced1a62f7e79bc3522eeb16216">setStyleClass</a>(<span class="stringliteral">"maindiv"</span>);
<a name="l00303"></a>00303
<a name="l00304"></a>00304 <span class="comment">/*</span>
<a name="l00305"></a>00305 <span class="comment"> * The main layout is a 3x2 grid layout.</span>
<a name="l00306"></a>00306 <span class="comment"> */</span>
<a name="l00307"></a>00307 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html">WGridLayout</a> *layout = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html">WGridLayout</a>();
<a name="l00308"></a>00308 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classTreeViewDragDrop.html#844146104eb081558c89126418f57965" title="Creates a title widget.">createTitle</a>(<span class="stringliteral">"Folders"</span>), 0, 0);
<a name="l00309"></a>00309 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classTreeViewDragDrop.html#844146104eb081558c89126418f57965" title="Creates a title widget.">createTitle</a>(<span class="stringliteral">"Files"</span>), 0, 1);
<a name="l00310"></a>00310 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classTreeViewDragDrop.html#57c9da1b5ea0cfafeb0b331077e7aeaa" title="Creates the folder WTreeView.">folderView</a>(), 1, 0);
<a name="l00311"></a>00311 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#180c33a8f9e21a7b58f12e055fdb469e">setColumnResizable</a>(0);
<a name="l00312"></a>00312
<a name="l00313"></a>00313 <span class="comment">// select the first folder</span>
<a name="l00314"></a>00314 <a class="code" href="classTreeViewDragDrop.html#ed25ae86735ea2e25de9eeafa2f9f0ea" title="The folder view.">folderView_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#4423d5412ff1b4bc67f0a8f443f12136">select</a>(<a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128" title="The folder model (used by folderView_).">folderModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#83f37bf04b8574b328c139b02523b8cb">index</a>(0, 0, <a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128" title="The folder model (used by folderView_).">folderModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#83f37bf04b8574b328c139b02523b8cb">index</a>(0, 0)));
<a name="l00315"></a>00315
<a name="l00316"></a>00316 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WVBoxLayout.html">WVBoxLayout</a> *vbox = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WVBoxLayout.html">WVBoxLayout</a>();
<a name="l00317"></a>00317 vbox-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WBoxLayout.html#7c1ec58e25d0b7add93f5f4342844db6">addWidget</a>(<a class="code" href="classTreeViewDragDrop.html#85b80186868309ecab25d2b564cb499b" title="Creates the file table view (also a WTreeView).">fileView</a>(), 1);
<a name="l00318"></a>00318 vbox-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WBoxLayout.html#7c1ec58e25d0b7add93f5f4342844db6">addWidget</a>(<a class="code" href="classTreeViewDragDrop.html#1c221a8239b067f782ce1f5f79bb0a9a" title="Creates the chart.">pieChart</a>(), 1);
<a name="l00319"></a>00319 vbox-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WBoxLayout.html#00bdfb4d442bd8e8ad9c33b72692763f">setResizable</a>(0);
<a name="l00320"></a>00320
<a name="l00321"></a>00321 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#8e0ae47aa0e7283ce3d4be05249c05eb">addLayout</a>(vbox, 1, 1);
<a name="l00322"></a>00322
<a name="l00323"></a>00323 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#6e64afee237de5665fcd014f407130b2">addWidget</a>(<a class="code" href="classTreeViewDragDrop.html#eb1dbfae32f6693fc46560341705f7a3" title="Creates the hints text.">aboutDisplay</a>(), 2, 0, 1, 2, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#b8f772c69bc8180c31f9e4f4593b143f58fe5182bd266132c59718c6d30945a9">AlignTop</a>);
<a name="l00324"></a>00324
<a name="l00325"></a>00325 <span class="comment">/*</span>
<a name="l00326"></a>00326 <span class="comment"> * Let row 1 and column 1 take the excess space.</span>
<a name="l00327"></a>00327 <span class="comment"> */</span>
<a name="l00328"></a>00328 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#d8d1199b57063fb7286be6dab13c998c">setRowStretch</a>(1, 1);
<a name="l00329"></a>00329 layout-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WGridLayout.html#4605de0523f5613096b6cbd983123c8b">setColumnStretch</a>(1, 1);
<a name="l00330"></a>00330
<a name="l00331"></a>00331 w-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WContainerWidget.html#1c84e0ffe330d4798f0ce217f75be08c">setLayout</a>(layout);
<a name="l00332"></a>00332 }
<a name="l00333"></a>00333
<a name="l00336"></a><a class="code" href="classTreeViewDragDrop.html#844146104eb081558c89126418f57965">00336</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WText.html">WText</a> *<a class="code" href="classTreeViewDragDrop.html#844146104eb081558c89126418f57965" title="Creates a title widget.">createTitle</a>(<span class="keyword">const</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WString.html">WString</a>& <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html#86aefff2a3438fecdfde3e0e7dd6e5da">title</a>) {
<a name="l00337"></a>00337 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WText.html">WText</a> *result = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WText.html">WText</a>(title);
<a name="l00338"></a>00338 result-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WWebWidget.html#73c0244d363cd2f8bd4814fe1ebee2b1">setInline</a>(<span class="keyword">false</span>);
<a name="l00339"></a>00339 result-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WWebWidget.html#6fd43dced1a62f7e79bc3522eeb16216">setStyleClass</a>(<span class="stringliteral">"title"</span>);
<a name="l00340"></a>00340
<a name="l00341"></a>00341 <span class="keywordflow">return</span> result;
<a name="l00342"></a>00342 }
<a name="l00343"></a>00343
<a name="l00346"></a><a class="code" href="classTreeViewDragDrop.html#57c9da1b5ea0cfafeb0b331077e7aeaa">00346</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html">WTreeView</a> *<a class="code" href="classTreeViewDragDrop.html#57c9da1b5ea0cfafeb0b331077e7aeaa" title="Creates the folder WTreeView.">folderView</a>() {
<a name="l00347"></a>00347 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html">WTreeView</a> *treeView = <span class="keyword">new</span> <a class="code" href="classFolderView.html" title="A specialized treeview that supports a custom drop event.">FolderView</a>();
<a name="l00348"></a>00348
<a name="l00349"></a>00349 <span class="comment">/*</span>
<a name="l00350"></a>00350 <span class="comment"> * To support right-click, we need to disable the built-in browser</span>
<a name="l00351"></a>00351 <span class="comment"> * context menu.</span>
<a name="l00352"></a>00352 <span class="comment"> *</span>
<a name="l00353"></a>00353 <span class="comment"> * Note that disabling the context menu and catching the</span>
<a name="l00354"></a>00354 <span class="comment"> * right-click does not work reliably on all browsers.</span>
<a name="l00355"></a>00355 <span class="comment"> */</span>
<a name="l00356"></a>00356 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WCompositeWidget.html#874b7a77d0785623f5059ad4dfe93266">setAttributeValue</a>
<a name="l00357"></a>00357 (<span class="stringliteral">"oncontextmenu"</span>,
<a name="l00358"></a>00358 <span class="stringliteral">"event.cancelBubble = true; event.returnValue = false; return false;"</span>);
<a name="l00359"></a>00359 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#390300f766472476e6a0df5aefaa2ef0">setModel</a>(<a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128" title="The folder model (used by folderView_).">folderModel_</a>);
<a name="l00360"></a>00360 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#482314306c8404d7ed941fd986e32623">resize</a>(200, WLength::Auto);
<a name="l00361"></a>00361 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#f6fcd9761e2f7a3b497d3563c849d320">setSelectionMode</a>(<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#74b3f7eb1689a3cbf0ea514ffd20bccc4fd3c5ba6ce5289a1e732d85f002882a">SingleSelection</a>);
<a name="l00362"></a>00362 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#dd40d3e05352ae094f6fe2b9c879c2c7">expandToDepth</a>(1);
<a name="l00363"></a>00363 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#9ed7710caa82e030db59020f4add4025">selectionChanged</a>().<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1Signal.html#6fc9536d2e7f59684ec32f3734b01f38">connect</a>(SLOT(<span class="keyword">this</span>,
<a name="l00364"></a>00364 <a class="code" href="classTreeViewDragDrop.html#07188816373ee97848dff41b21f68f21" title="Change the filter on the file view when the selected folder changes.">TreeViewDragDrop::folderChanged</a>));
<a name="l00365"></a>00365
<a name="l00366"></a>00366 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#0231396a3e026781c600645c24fff616">mouseWentUp</a>().connect(SLOT(<span class="keyword">this</span>, <a class="code" href="classTreeViewDragDrop.html#a9b567b2caea51f6348c784591dc27af" title="Show a popup for a folder item.">TreeViewDragDrop::showPopup</a>));
<a name="l00367"></a>00367
<a name="l00368"></a>00368 <a class="code" href="classTreeViewDragDrop.html#ed25ae86735ea2e25de9eeafa2f9f0ea" title="The folder view.">folderView_</a> = treeView;
<a name="l00369"></a>00369
<a name="l00370"></a>00370 <span class="keywordflow">return</span> treeView;
<a name="l00371"></a>00371 }
<a name="l00372"></a>00372
<a name="l00375"></a><a class="code" href="classTreeViewDragDrop.html#85b80186868309ecab25d2b564cb499b">00375</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html">WTreeView</a> *<a class="code" href="classTreeViewDragDrop.html#85b80186868309ecab25d2b564cb499b" title="Creates the file table view (also a WTreeView).">fileView</a>() {
<a name="l00376"></a>00376 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html">WTreeView</a> *treeView = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html">WTreeView</a>();
<a name="l00377"></a>00377
<a name="l00378"></a>00378 <span class="comment">// Hide the tree-like decoration on the first column, to make it</span>
<a name="l00379"></a>00379 <span class="comment">// resemble a plain table</span>
<a name="l00380"></a>00380 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#ef8576ebdf2089edc259362a15e2f750">setRootIsDecorated</a>(<span class="keyword">false</span>);
<a name="l00381"></a>00381 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#48f74194ae6bd63c08a6ff76ecb3e39c">setAlternatingRowColors</a>(<span class="keyword">true</span>);
<a name="l00382"></a>00382
<a name="l00383"></a>00383 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#390300f766472476e6a0df5aefaa2ef0">setModel</a>(<a class="code" href="classTreeViewDragDrop.html#19119108885a86409206046fa915d2b5" title="The sort filter proxy model that adapts fileModel_.">fileFilterModel_</a>);
<a name="l00384"></a>00384 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#f6fcd9761e2f7a3b497d3563c849d320">setSelectionMode</a>(<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#74b3f7eb1689a3cbf0ea514ffd20bccc7784d55577e92022399052c3d4d69954">ExtendedSelection</a>);
<a name="l00385"></a>00385 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#0ca99b835708d990b90000917045738e">setDragEnabled</a>(<span class="keyword">true</span>);
<a name="l00386"></a>00386
<a name="l00387"></a>00387 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#33ba5111945bc0ec4745a536d52adec5">setColumnWidth</a>(0, 100);
<a name="l00388"></a>00388 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#33ba5111945bc0ec4745a536d52adec5">setColumnWidth</a>(1, 150);
<a name="l00389"></a>00389 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#33ba5111945bc0ec4745a536d52adec5">setColumnWidth</a>(2, 100);
<a name="l00390"></a>00390 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#33ba5111945bc0ec4745a536d52adec5">setColumnWidth</a>(3, 60);
<a name="l00391"></a>00391 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#33ba5111945bc0ec4745a536d52adec5">setColumnWidth</a>(4, 100);
<a name="l00392"></a>00392 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#33ba5111945bc0ec4745a536d52adec5">setColumnWidth</a>(5, 100);
<a name="l00393"></a>00393
<a name="l00394"></a>00394 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WItemDelegate.html">WItemDelegate</a> *delegate = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WItemDelegate.html">WItemDelegate</a>(<span class="keyword">this</span>);
<a name="l00395"></a>00395 delegate-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WItemDelegate.html#d886d265dc00b95d9fb90c022a6322f9">setTextFormat</a>(<a class="code" href="group__treeviewdragdrop.html#gf69754b77374aac3aa0eed57360fbb7f" title="Date display format.">FileModel::dateDisplayFormat</a>);
<a name="l00396"></a>00396 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#574bc36ec752012ba4a613e0e11e064e">setItemDelegateForColumn</a>(4, delegate);
<a name="l00397"></a>00397 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#574bc36ec752012ba4a613e0e11e064e">setItemDelegateForColumn</a>(5, delegate);
<a name="l00398"></a>00398
<a name="l00399"></a>00399 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#c3362a9f4ee26be8603a53661a5dcf32">setColumnAlignment</a>(3, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#b8f772c69bc8180c31f9e4f4593b143fb250310385383f0b2f68d4e0ad5567e1">AlignRight</a>);
<a name="l00400"></a>00400 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#c3362a9f4ee26be8603a53661a5dcf32">setColumnAlignment</a>(4, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#b8f772c69bc8180c31f9e4f4593b143fb250310385383f0b2f68d4e0ad5567e1">AlignRight</a>);
<a name="l00401"></a>00401 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WTreeView.html#c3362a9f4ee26be8603a53661a5dcf32">setColumnAlignment</a>(5, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#b8f772c69bc8180c31f9e4f4593b143fb250310385383f0b2f68d4e0ad5567e1">AlignRight</a>);
<a name="l00402"></a>00402
<a name="l00403"></a>00403 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#f782069e7307d3a4ce2395336f338c4e">sortByColumn</a>(1, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/group__modelview.html#gg4173856040cf108a9c7360927a43ebacc2e51e9fbb9a1250c908443700e03d3e">AscendingOrder</a>);
<a name="l00404"></a>00404
<a name="l00405"></a>00405 treeView-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#14ac099f58621d66834aa5674ea8ecb5">doubleClicked</a>().connect(SLOT(<span class="keyword">this</span>, <a class="code" href="classTreeViewDragDrop.html#21bbc7e94625cf982d29e2694a07c9d4" title="Edit a particular row.">TreeViewDragDrop::editFile</a>));
<a name="l00406"></a>00406
<a name="l00407"></a>00407 <a class="code" href="classTreeViewDragDrop.html#aa5edb1943fdf3283d54cd917695689d" title="The file view.">fileView_</a> = treeView;
<a name="l00408"></a>00408
<a name="l00409"></a>00409 <span class="keywordflow">return</span> treeView;
<a name="l00410"></a>00410 }
<a name="l00411"></a>00411
<a name="l00414"></a><a class="code" href="classTreeViewDragDrop.html#21bbc7e94625cf982d29e2694a07c9d4">00414</a> <span class="keywordtype">void</span> <a class="code" href="classTreeViewDragDrop.html#21bbc7e94625cf982d29e2694a07c9d4" title="Edit a particular row.">editFile</a>(<span class="keyword">const</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WModelIndex.html">WModelIndex</a>& item) {
<a name="l00415"></a>00415 <span class="keyword">new</span> <a class="code" href="classFileEditDialog.html" title="A dialog for editing a &#39;file&#39;.">FileEditDialog</a>(<a class="code" href="classTreeViewDragDrop.html#aa5edb1943fdf3283d54cd917695689d" title="The file view.">fileView_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#bd583faed8e2fc3936d1b5545c4bbf84">model</a>(), item);
<a name="l00416"></a>00416 }
<a name="l00417"></a>00417
<a name="l00420"></a><a class="code" href="classTreeViewDragDrop.html#1c221a8239b067f782ce1f5f79bb0a9a">00420</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WWidget.html">WWidget</a> *<a class="code" href="classTreeViewDragDrop.html#1c221a8239b067f782ce1f5f79bb0a9a" title="Creates the chart.">pieChart</a>() {
<a name="l00421"></a>00421 <span class="keyword">using namespace </span>Chart;
<a name="l00422"></a>00422
<a name="l00423"></a>00423 WPieChart *chart = <span class="keyword">new</span> WPieChart();
<a name="l00424"></a>00424 chart->setModel(<a class="code" href="classTreeViewDragDrop.html#19119108885a86409206046fa915d2b5" title="The sort filter proxy model that adapts fileModel_.">fileFilterModel_</a>);
<a name="l00425"></a>00425 chart->setTitle(<span class="stringliteral">"File sizes"</span>);
<a name="l00426"></a>00426
<a name="l00427"></a>00427 chart->setLabelsColumn(1); <span class="comment">// Name</span>
<a name="l00428"></a>00428 chart->setDataColumn(3); <span class="comment">// Size</span>
<a name="l00429"></a>00429
<a name="l00430"></a>00430 chart->setPerspectiveEnabled(<span class="keyword">true</span>, 0.2);
<a name="l00431"></a>00431 chart->setDisplayLabels(<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/group__charts.html#gg9345394a8eeda6800d8a24c5df44d98388861128e109b6a63e76a311dc57e408">Outside</a> | <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/group__charts.html#gg9345394a8eeda6800d8a24c5df44d98360df9add81425373c20fafe8c4e40b0e">TextLabel</a>);
<a name="l00432"></a>00432 chart->setStyleClass(<span class="stringliteral">"about"</span>);
<a name="l00433"></a>00433
<a name="l00434"></a>00434 <span class="keywordflow">return</span> chart;
<a name="l00435"></a>00435 }
<a name="l00436"></a>00436
<a name="l00439"></a><a class="code" href="classTreeViewDragDrop.html#eb1dbfae32f6693fc46560341705f7a3">00439</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WWidget.html">WWidget</a> *<a class="code" href="classTreeViewDragDrop.html#eb1dbfae32f6693fc46560341705f7a3" title="Creates the hints text.">aboutDisplay</a>() {
<a name="l00440"></a>00440 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WText.html">WText</a> *result = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WText.html">WText</a>(WString::tr(<span class="stringliteral">"about-text"</span>));
<a name="l00441"></a>00441 result-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WWebWidget.html#6fd43dced1a62f7e79bc3522eeb16216">setStyleClass</a>(<span class="stringliteral">"about"</span>);
<a name="l00442"></a>00442 <span class="keywordflow">return</span> result;
<a name="l00443"></a>00443 }
<a name="l00444"></a>00444
<a name="l00448"></a><a class="code" href="classTreeViewDragDrop.html#07188816373ee97848dff41b21f68f21">00448</a> <span class="keywordtype">void</span> <a class="code" href="classTreeViewDragDrop.html#07188816373ee97848dff41b21f68f21" title="Change the filter on the file view when the selected folder changes.">folderChanged</a>() {
<a name="l00449"></a>00449 <span class="keywordflow">if</span> (<a class="code" href="classTreeViewDragDrop.html#ed25ae86735ea2e25de9eeafa2f9f0ea" title="The folder view.">folderView_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#fde08bb75862592d81dc93f30ed7dcd6">selectedIndexes</a>().empty())
<a name="l00450"></a>00450 <span class="keywordflow">return</span>;
<a name="l00451"></a>00451
<a name="l00452"></a>00452 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WModelIndex.html">WModelIndex</a> selected = *<a class="code" href="classTreeViewDragDrop.html#ed25ae86735ea2e25de9eeafa2f9f0ea" title="The folder view.">folderView_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#fde08bb75862592d81dc93f30ed7dcd6">selectedIndexes</a>().begin();
<a name="l00453"></a>00453 boost::any d = selected.<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WModelIndex.html#7f05920329ca4b7fdbb10931afdb634e">data</a>(<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/group__modelview.html#gg0ae864e12320f9f89172735e075ed0689b7eae9fc07ea4fd8afe7bc97954162c">UserRole</a>);
<a name="l00454"></a>00454 <span class="keywordflow">if</span> (!d.empty()) {
<a name="l00455"></a>00455 std::string folder = boost::any_cast<std::string>(d);
<a name="l00456"></a>00456
<a name="l00457"></a>00457 <span class="comment">// For simplicity, we assume here that the folder-id does not</span>
<a name="l00458"></a>00458 <span class="comment">// contain special regexp characters, otherwise these need to be</span>
<a name="l00459"></a>00459 <span class="comment">// escaped -- or use the \Q \E qutoing escape regular expression</span>
<a name="l00460"></a>00460 <span class="comment">// syntax (and escape \E)</span>
<a name="l00461"></a>00461 <a class="code" href="classTreeViewDragDrop.html#19119108885a86409206046fa915d2b5" title="The sort filter proxy model that adapts fileModel_.">fileFilterModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WSortFilterProxyModel.html#1c9dce68769668570bb5bccc3e0a9969">setFilterRegExp</a>(folder);
<a name="l00462"></a>00462 }
<a name="l00463"></a>00463 }
<a name="l00464"></a>00464
<a name="l00467"></a><a class="code" href="classTreeViewDragDrop.html#a9b567b2caea51f6348c784591dc27af">00467</a> <span class="keywordtype">void</span> <a class="code" href="classTreeViewDragDrop.html#a9b567b2caea51f6348c784591dc27af" title="Show a popup for a folder item.">showPopup</a>(<span class="keyword">const</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WModelIndex.html">WModelIndex</a>& item, <span class="keyword">const</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WMouseEvent.html">WMouseEvent</a>& event) {
<a name="l00468"></a>00468 <span class="keywordflow">if</span> (event.<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WMouseEvent.html#3cb45d106522eaa8b597b2e274053e90">button</a>() == WMouseEvent::RightButton) {
<a name="l00469"></a>00469 <span class="comment">// Select the item, it was not yet selected.</span>
<a name="l00470"></a>00470 <span class="keywordflow">if</span> (!<a class="code" href="classTreeViewDragDrop.html#ed25ae86735ea2e25de9eeafa2f9f0ea" title="The folder view.">folderView_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#413bb7cc395201066236bbe69df38b0d">isSelected</a>(item))
<a name="l00471"></a>00471 <a class="code" href="classTreeViewDragDrop.html#ed25ae86735ea2e25de9eeafa2f9f0ea" title="The folder view.">folderView_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemView.html#4423d5412ff1b4bc67f0a8f443f12136">select</a>(item);
<a name="l00472"></a>00472
<a name="l00473"></a>00473 <span class="keyword">delete</span> <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>;
<a name="l00474"></a>00474
<a name="l00475"></a>00475 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a> = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html">WPopupMenu</a>();
<a name="l00476"></a>00476 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#6109cb59b9a36024e9691efe15392770">addItem</a>(<span class="stringliteral">"icons/folder_new.gif"</span>, <span class="stringliteral">"Create a New Folder"</span>);
<a name="l00477"></a>00477 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#6109cb59b9a36024e9691efe15392770">addItem</a>(<span class="stringliteral">"Rename this Folder"</span>)-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenuItem.html#8f1b98cf1c4362bcda671bbf833cbb7b">setCheckable</a>(<span class="keyword">true</span>);
<a name="l00478"></a>00478 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#6109cb59b9a36024e9691efe15392770">addItem</a>(<span class="stringliteral">"Delete this Folder"</span>);
<a name="l00479"></a>00479 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#8f4135e800cafc0366aab88fd31848e8">addSeparator</a>();
<a name="l00480"></a>00480 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#6109cb59b9a36024e9691efe15392770">addItem</a>(<span class="stringliteral">"Folder Details"</span>);
<a name="l00481"></a>00481 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#8f4135e800cafc0366aab88fd31848e8">addSeparator</a>();
<a name="l00482"></a>00482 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#6109cb59b9a36024e9691efe15392770">addItem</a>(<span class="stringliteral">"Application Inventory"</span>);
<a name="l00483"></a>00483 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#6109cb59b9a36024e9691efe15392770">addItem</a>(<span class="stringliteral">"Hardware Inventory"</span>);
<a name="l00484"></a>00484 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#8f4135e800cafc0366aab88fd31848e8">addSeparator</a>();
<a name="l00485"></a>00485
<a name="l00486"></a>00486 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html">WPopupMenu</a> *subMenu = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html">WPopupMenu</a>();
<a name="l00487"></a>00487 subMenu-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#6109cb59b9a36024e9691efe15392770">addItem</a>(<span class="stringliteral">"Sub Item 1"</span>);
<a name="l00488"></a>00488 subMenu-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#6109cb59b9a36024e9691efe15392770">addItem</a>(<span class="stringliteral">"Sub Item 2"</span>);
<a name="l00489"></a>00489 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#50eaba20dd39974f03e891bd2a74c4fd">addMenu</a>(<span class="stringliteral">"File Deployments"</span>, subMenu);
<a name="l00490"></a>00490
<a name="l00491"></a>00491 <span class="comment">/*</span>
<a name="l00492"></a>00492 <span class="comment"> * This is one method of executing a popup, which does not block a</span>
<a name="l00493"></a>00493 <span class="comment"> * thread for a reentrant event loop, and thus scales.</span>
<a name="l00494"></a>00494 <span class="comment"> *</span>
<a name="l00495"></a>00495 <span class="comment"> * Alternatively you could call WPopupMenu::exec(), which returns</span>
<a name="l00496"></a>00496 <span class="comment"> * the result, but while waiting for it, blocks the thread.</span>
<a name="l00497"></a>00497 <span class="comment"> */</span>
<a name="l00498"></a>00498 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#6e8aadc13b909ea3bad826515560d504">aboutToHide</a>().<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1Signal.html#6fc9536d2e7f59684ec32f3734b01f38">connect</a>(SLOT(<span class="keyword">this</span>, <a class="code" href="classTreeViewDragDrop.html#cbeddd767d044a549a980c64db83ab22" title="Process the result of the popup menu.">TreeViewDragDrop::popupAction</a>));
<a name="l00499"></a>00499 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#9da2dff4c6de6845a5a15b1a7c22572c">popup</a>(event);
<a name="l00500"></a>00500 }
<a name="l00501"></a>00501 }
<a name="l00502"></a>00502
<a name="l00505"></a><a class="code" href="classTreeViewDragDrop.html#cbeddd767d044a549a980c64db83ab22">00505</a> <span class="keywordtype">void</span> <a class="code" href="classTreeViewDragDrop.html#cbeddd767d044a549a980c64db83ab22" title="Process the result of the popup menu.">popupAction</a>() {
<a name="l00506"></a>00506 <span class="keywordflow">if</span> (<a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#9cc90b57b1e6bf95c64b0bd542b372e8">result</a>()) {
<a name="l00507"></a>00507 <span class="comment">/*</span>
<a name="l00508"></a>00508 <span class="comment"> * You could also bind extra data to an item using setData() and</span>
<a name="l00509"></a>00509 <span class="comment"> * check here for the action asked. For now, we just use the text.</span>
<a name="l00510"></a>00510 <span class="comment"> */</span>
<a name="l00511"></a>00511 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WString.html">WString</a> text = <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenu.html#9cc90b57b1e6bf95c64b0bd542b372e8">result</a>()-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WPopupMenuItem.html#3c450003749c0d1f933c12dd202c111e">text</a>();
<a name="l00512"></a>00512 <span class="keyword">delete</span> <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>;
<a name="l00513"></a>00513 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a> = 0;
<a name="l00514"></a>00514
<a name="l00515"></a>00515 <a class="code" href="classTreeViewDragDrop.html#0f9c6ce8eb2765dbb97a213d618162c8" title="Message box to confirm the poup menu action.">popupActionBox_</a> = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WMessageBox.html">WMessageBox</a>(<span class="stringliteral">"Sorry."</span>,<span class="stringliteral">"Action '"</span> + text
<a name="l00516"></a>00516 + <span class="stringliteral">"' is not implemented."</span>, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#aa26ad9f143951595691fbd604567f5f2ad77ae37661ce098ec3134ae56af58d">NoIcon</a>, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#270a5e1af09979a6559f0f39e3d93062f92b793210df9123b9be1ee11dd0d36d">Ok</a>);
<a name="l00517"></a>00517 <a class="code" href="classTreeViewDragDrop.html#0f9c6ce8eb2765dbb97a213d618162c8" title="Message box to confirm the poup menu action.">popupActionBox_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WMessageBox.html#e9d2caaa82244b2b195e9d3e011bc740">buttonClicked</a>()
<a name="l00518"></a>00518 .connect(SLOT(<span class="keyword">this</span>, <a class="code" href="classTreeViewDragDrop.html#e673eec6def5902878d44858a252f661" title="Process the result of the message box.">TreeViewDragDrop::dialogDone</a>));
<a name="l00519"></a>00519 <a class="code" href="classTreeViewDragDrop.html#0f9c6ce8eb2765dbb97a213d618162c8" title="Message box to confirm the poup menu action.">popupActionBox_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WMessageBox.html#cacb6ec745e3fab2833f712994bce9db">show</a>();
<a name="l00520"></a>00520 } <span class="keywordflow">else</span> {
<a name="l00521"></a>00521 <span class="keyword">delete</span> <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a>;
<a name="l00522"></a>00522 <a class="code" href="classTreeViewDragDrop.html#3fd09573ea89f5b8cadd2eb357af8b3a" title="Popup menu on the folder view.">popup_</a> = 0;
<a name="l00523"></a>00523 }
<a name="l00524"></a>00524 }
<a name="l00525"></a>00525
<a name="l00528"></a><a class="code" href="classTreeViewDragDrop.html#e673eec6def5902878d44858a252f661">00528</a> <span class="keywordtype">void</span> <a class="code" href="classTreeViewDragDrop.html#e673eec6def5902878d44858a252f661" title="Process the result of the message box.">dialogDone</a>() {
<a name="l00529"></a>00529 <span class="keyword">delete</span> <a class="code" href="classTreeViewDragDrop.html#0f9c6ce8eb2765dbb97a213d618162c8" title="Message box to confirm the poup menu action.">popupActionBox_</a>;
<a name="l00530"></a>00530 <a class="code" href="classTreeViewDragDrop.html#0f9c6ce8eb2765dbb97a213d618162c8" title="Message box to confirm the poup menu action.">popupActionBox_</a> = 0;
<a name="l00531"></a>00531 }
<a name="l00532"></a>00532
<a name="l00540"></a><a class="code" href="classTreeViewDragDrop.html#e4512c07f7d7206d9dfd5a0520f5e623">00540</a> <span class="keywordtype">void</span> <a class="code" href="classTreeViewDragDrop.html#e4512c07f7d7206d9dfd5a0520f5e623" title="Populate the files model.">populateFiles</a>() {
<a name="l00541"></a>00541 <a class="code" href="classTreeViewDragDrop.html#a37c4c6162e2c924585943ebe782a820" title="The file model (used by fileView_).">fileModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html#5fdc79e8100020d98a77ad3543019477">invisibleRootItem</a>()-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#f93e0c455c2272dd950dce0644504b15">setRowCount</a>(0);
<a name="l00542"></a>00542
<a name="l00543"></a>00543 std::ifstream f(<span class="stringliteral">"data/files.csv"</span>);
<a name="l00544"></a>00544 <a class="code" href="group__chartsexample.html#g1ce51cd14c57073cb7839d5e05b59c65" title="Utility function that reads a model from a CSV file.">readFromCsv</a>(f, <a class="code" href="classTreeViewDragDrop.html#a37c4c6162e2c924585943ebe782a820" title="The file model (used by fileView_).">fileModel_</a>);
<a name="l00545"></a>00545
<a name="l00546"></a>00546 <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < <a class="code" href="classTreeViewDragDrop.html#a37c4c6162e2c924585943ebe782a820" title="The file model (used by fileView_).">fileModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#b0709a8f71fd5df882f29bb29fd055f0">rowCount</a>(); ++i) {
<a name="l00547"></a>00547 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html">WStandardItem</a> *item = <a class="code" href="classTreeViewDragDrop.html#a37c4c6162e2c924585943ebe782a820" title="The file model (used by fileView_).">fileModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html#32d755ace793c2110b0fa5d650a0d577">item</a>(i, 0);
<a name="l00548"></a>00548 item-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#edf80dfed644a525e5d726a4b6e74b94">setFlags</a>(item-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#81bc3d55f8117f5c80edcb3c9c6b871a">flags</a>() | <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/group__modelview.html#gg1d77c4de293aebfacbdde124de06b8b02b0edddfd15d67a84723c9043479ced1">ItemIsDragEnabled</a>);
<a name="l00549"></a>00549 item-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#6ef82d367150a352795bdb2f780db14a">setIcon</a>(<span class="stringliteral">"icons/file.gif"</span>);
<a name="l00550"></a>00550
<a name="l00551"></a>00551 std::string folderId = item-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#5cd26b1515b25d32b2872210918d7e68">text</a>().<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WString.html#159d088da6e8f2be1035b2341889254c">toUTF8</a>();
<a name="l00552"></a>00552
<a name="l00553"></a>00553 item-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#fbe54e68e576c4902c9085f8966c93ef">setData</a>(boost::any(folderId), <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/group__modelview.html#gg0ae864e12320f9f89172735e075ed0689b7eae9fc07ea4fd8afe7bc97954162c">UserRole</a>);
<a name="l00554"></a>00554 item-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#7922bbfa1b9236f2c3f20ed8082bc2e3">setText</a>(<a class="code" href="classTreeViewDragDrop.html#1aad35507448e8a8a59a0961d2c8ae5c" title="Maps folder id&#39;s to folder descriptions.">folderNameMap_</a>[folderId]);
<a name="l00555"></a>00555
<a name="l00556"></a>00556 <a class="code" href="classTreeViewDragDrop.html#a4863b443e2681dcb0d6dbb276042631" title="Convert a string to a date.">convertToDate</a>(<a class="code" href="classTreeViewDragDrop.html#a37c4c6162e2c924585943ebe782a820" title="The file model (used by fileView_).">fileModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html#32d755ace793c2110b0fa5d650a0d577">item</a>(i, 4));
<a name="l00557"></a>00557 <a class="code" href="classTreeViewDragDrop.html#a4863b443e2681dcb0d6dbb276042631" title="Convert a string to a date.">convertToDate</a>(<a class="code" href="classTreeViewDragDrop.html#a37c4c6162e2c924585943ebe782a820" title="The file model (used by fileView_).">fileModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html#32d755ace793c2110b0fa5d650a0d577">item</a>(i, 5));
<a name="l00558"></a>00558 }
<a name="l00559"></a>00559 }
<a name="l00560"></a>00560
<a name="l00563"></a><a class="code" href="classTreeViewDragDrop.html#a4863b443e2681dcb0d6dbb276042631">00563</a> <span class="keywordtype">void</span> <a class="code" href="classTreeViewDragDrop.html#a4863b443e2681dcb0d6dbb276042631" title="Convert a string to a date.">convertToDate</a>(<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html">WStandardItem</a> *item) {
<a name="l00564"></a>00564 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WDate.html">WDate</a> d = WDate::fromString(item-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#5cd26b1515b25d32b2872210918d7e68">text</a>(), <a class="code" href="group__treeviewdragdrop.html#g7bb540f8c352707933d4bd36c8282aba" title="Date edit format.">FileModel::dateEditFormat</a>);
<a name="l00565"></a>00565 item-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#fbe54e68e576c4902c9085f8966c93ef">setData</a>(boost::any(d), <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/group__modelview.html#gg0ae864e12320f9f89172735e075ed0685ed17aded8a0e3b712698cf85a218f1f">DisplayRole</a>);
<a name="l00566"></a>00566 }
<a name="l00567"></a>00567
<a name="l00570"></a><a class="code" href="classTreeViewDragDrop.html#fed9370b8ffa1178307e66965fbfdef6">00570</a> <span class="keywordtype">void</span> <a class="code" href="classTreeViewDragDrop.html#fed9370b8ffa1178307e66965fbfdef6" title="Populate the folders model.">populateFolders</a>() {
<a name="l00571"></a>00571 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html">WStandardItem</a> *level1, *level2;
<a name="l00572"></a>00572
<a name="l00573"></a>00573 <a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128" title="The folder model (used by folderView_).">folderModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html#96216a68e34ebba32606a51c53054bf9">appendRow</a>(level1 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"San Fransisco"</span>));
<a name="l00574"></a>00574 level1-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#bd54c7797f40c036b38300ba9cdf69b5">appendRow</a>(level2 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"Investors"</span>, <span class="stringliteral">"sf-investors"</span>));
<a name="l00575"></a>00575 level1-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#bd54c7797f40c036b38300ba9cdf69b5">appendRow</a>(level2 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"Fellows"</span>, <span class="stringliteral">"sf-fellows"</span>));
<a name="l00576"></a>00576
<a name="l00577"></a>00577 <a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128" title="The folder model (used by folderView_).">folderModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html#96216a68e34ebba32606a51c53054bf9">appendRow</a>(level1 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"Sophia Antipolis"</span>));
<a name="l00578"></a>00578 level1-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#bd54c7797f40c036b38300ba9cdf69b5">appendRow</a>(level2 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"R&D"</span>, <span class="stringliteral">"sa-r_d"</span>));
<a name="l00579"></a>00579 level1-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#bd54c7797f40c036b38300ba9cdf69b5">appendRow</a>(level2 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"Services"</span>, <span class="stringliteral">"sa-services"</span>));
<a name="l00580"></a>00580 level1-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#bd54c7797f40c036b38300ba9cdf69b5">appendRow</a>(level2 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"Support"</span>, <span class="stringliteral">"sa-support"</span>));
<a name="l00581"></a>00581 level1-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#bd54c7797f40c036b38300ba9cdf69b5">appendRow</a>(level2 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"Billing"</span>, <span class="stringliteral">"sa-billing"</span>));
<a name="l00582"></a>00582
<a name="l00583"></a>00583 <a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128" title="The folder model (used by folderView_).">folderModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html#96216a68e34ebba32606a51c53054bf9">appendRow</a>(level1 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"New York"</span>));
<a name="l00584"></a>00584 level1-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#bd54c7797f40c036b38300ba9cdf69b5">appendRow</a>(level2 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"Marketing"</span>, <span class="stringliteral">"ny-marketing"</span>));
<a name="l00585"></a>00585 level1-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#bd54c7797f40c036b38300ba9cdf69b5">appendRow</a>(level2 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"Sales"</span>, <span class="stringliteral">"ny-sales"</span>));
<a name="l00586"></a>00586 level1-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#bd54c7797f40c036b38300ba9cdf69b5">appendRow</a>(level2 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"Advisors"</span>, <span class="stringliteral">"ny-advisors"</span>));
<a name="l00587"></a>00587
<a name="l00588"></a>00588 <a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128" title="The folder model (used by folderView_).">folderModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItemModel.html#96216a68e34ebba32606a51c53054bf9">appendRow</a>(level1 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>
<a name="l00589"></a>00589 (WString::fromUTF8(<span class="stringliteral">"Frankfürt"</span>)));
<a name="l00590"></a>00590 level1-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#bd54c7797f40c036b38300ba9cdf69b5">appendRow</a>(level2 = <a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="stringliteral">"Sales"</span>, <span class="stringliteral">"frank-sales"</span>));
<a name="l00591"></a>00591
<a name="l00592"></a>00592 <a class="code" href="classTreeViewDragDrop.html#8ca159dd6adba348b44caacd40ddd128" title="The folder model (used by folderView_).">folderModel_</a>-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WAbstractItemModel.html#57f5d417f933440db0d38ece7dd370f4">setHeaderData</a>(0, <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/namespaceWt.html#2a8d45559e16a0185bf61bfad0a67912c2ebf22b096a22b18eef23e736aa2e28">Horizontal</a>,
<a name="l00593"></a>00593 boost::any(std::string(<span class="stringliteral">"SandBox"</span>)));
<a name="l00594"></a>00594 }
<a name="l00595"></a>00595
<a name="l00600"></a><a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b">00600</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html">WStandardItem</a> *<a class="code" href="classTreeViewDragDrop.html#3a35c22db2a87fdaf0663258d89b133b" title="Create a folder item.">createFolderItem</a>(<span class="keyword">const</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WString.html">WString</a>& location,
<a name="l00601"></a>00601 <span class="keyword">const</span> std::string& folderId = std::string())
<a name="l00602"></a>00602 {
<a name="l00603"></a>00603 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html">WStandardItem</a> *result = <span class="keyword">new</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html">WStandardItem</a>(location);
<a name="l00604"></a>00604
<a name="l00605"></a>00605 <span class="keywordflow">if</span> (!folderId.empty()) {
<a name="l00606"></a>00606 result-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#fbe54e68e576c4902c9085f8966c93ef">setData</a>(boost::any(folderId));
<a name="l00607"></a>00607 result-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#edf80dfed644a525e5d726a4b6e74b94">setFlags</a>(result-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#81bc3d55f8117f5c80edcb3c9c6b871a">flags</a>() | <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/group__modelview.html#gg1d77c4de293aebfacbdde124de06b8b095d23063251001545d4bfab1308879a3">ItemIsDropEnabled</a>);
<a name="l00608"></a>00608 <a class="code" href="classTreeViewDragDrop.html#1aad35507448e8a8a59a0961d2c8ae5c" title="Maps folder id&#39;s to folder descriptions.">folderNameMap_</a>[folderId] = location;
<a name="l00609"></a>00609 } <span class="keywordflow">else</span>
<a name="l00610"></a>00610 result-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#edf80dfed644a525e5d726a4b6e74b94">setFlags</a>(result-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#81bc3d55f8117f5c80edcb3c9c6b871a">flags</a>().clear(<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/group__modelview.html#gg1d77c4de293aebfacbdde124de06b8b077f858c86a06358abdcc64e4f9d03e40">ItemIsSelectable</a>));
<a name="l00611"></a>00611
<a name="l00612"></a>00612 result-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WStandardItem.html#6ef82d367150a352795bdb2f780db14a">setIcon</a>(<span class="stringliteral">"icons/folder.gif"</span>);
<a name="l00613"></a>00613
<a name="l00614"></a>00614 <span class="keywordflow">return</span> result;
<a name="l00615"></a>00615 }
<a name="l00616"></a>00616
<a name="l00617"></a>00617 };
<a name="l00618"></a>00618
<a name="l00619"></a><a class="code" href="group__treeviewdragdrop.html#gcb337c09cd35644b56da8b0e5bb17b9c">00619</a> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html">WApplication</a> *<a class="code" href="ComposeExample_8C.html#cb337c09cd35644b56da8b0e5bb17b9c">createApplication</a>(<span class="keyword">const</span> <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WEnvironment.html">WEnvironment</a>& env)
<a name="l00620"></a>00620 {
<a name="l00621"></a>00621 <a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html">WApplication</a> *app = <span class="keyword">new</span> <a class="code" href="classTreeViewDragDrop.html" title="Main application class.">TreeViewDragDrop</a>(env);
<a name="l00622"></a>00622 app-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html#63d991e268c9af8898329217a1242563">setTwoPhaseRenderingThreshold</a>(0);
<a name="l00623"></a>00623 app-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html#71a3f7da5abb9a76df94fab69ba61670">setTitle</a>(<span class="stringliteral">"WTreeView Drag & Drop"</span>);
<a name="l00624"></a>00624 app-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html#f377d541443b4bcea5fcc40be7c70173">useStyleSheet</a>(<span class="stringliteral">"styles.css"</span>);
<a name="l00625"></a>00625 app-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html#5386565e35a58c94ccbbfab48f2212a4">messageResourceBundle</a>().<a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WMessageResourceBundle.html#01368946b2a2aaceab3a64cddb1cb1e2">use</a>(<span class="stringliteral">"about"</span>);
<a name="l00626"></a>00626 app-><a class="codeRef" doxygen="wt.tags:../../reference/html/" href="../../reference/html/classWt_1_1WApplication.html#02b9d8aa1b6c2d0dc9edc1b9c63f86dc">refresh</a>();
<a name="l00627"></a>00627
<a name="l00628"></a>00628 <span class="keywordflow">return</span> app;
<a name="l00629"></a>00629 }
<a name="l00630"></a>00630
<a name="l00631"></a><a class="code" href="group__treeviewdragdrop.html#g3c04138a5bfe5d72780bb7e82a18e627">00631</a> <span class="keywordtype">int</span> <a class="code" href="ComposeExample_8C.html#3c04138a5bfe5d72780bb7e82a18e627">main</a>(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)
<a name="l00632"></a>00632 {
<a name="l00633"></a>00633 <span class="keywordflow">return</span> WRun(argc, argv, &<a class="code" href="ComposeExample_8C.html#cb337c09cd35644b56da8b0e5bb17b9c">createApplication</a>);
<a name="l00634"></a>00634 }
<a name="l00635"></a>00635
</pre></div></div>
<hr size="1"><address style="align: right;"><small>
Generated on Fri Mar 26 17:12:12 2010 for <a href="http://www.webtoolkit.eu/wt/">Wt</a> by <a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6</small></address>
</body>
</html>
|