MCPcopy Create free account
hub / github.com/MITK/MITK / mimeDataFromModelIndexList

Method mimeDataFromModelIndexList

Modules/QtWidgets/src/QmitkDataStorageTreeModel.cpp:382–425  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

380}
381
382QMimeData *QmitkDataStorageTreeModel::mimeDataFromModelIndexList(const QModelIndexList &indexes)
383{
384 QMimeData *ret = new QMimeData;
385
386 QString treeItemAddresses("");
387 QString dataNodeAddresses("");
388
389 QByteArray baTreeItemPtrs;
390 QByteArray baDataNodePtrs;
391
392 QDataStream dsTreeItemPtrs(&baTreeItemPtrs, QIODevice::WriteOnly);
393 QDataStream dsDataNodePtrs(&baDataNodePtrs, QIODevice::WriteOnly);
394
395 for (int i = 0; i < indexes.size(); i++)
396 {
397 TreeItem *treeItem = static_cast<TreeItem *>(indexes.at(i).internalPointer());
398
399 dsTreeItemPtrs << reinterpret_cast<quintptr>(treeItem);
400 dsDataNodePtrs << reinterpret_cast<quintptr>(treeItem->GetDataNode().GetPointer());
401
402 // --------------- deprecated -----------------
403 unsigned long long treeItemAddress = reinterpret_cast<unsigned long long>(treeItem);
404 unsigned long long dataNodeAddress = reinterpret_cast<unsigned long long>(treeItem->GetDataNode().GetPointer());
405 QTextStream(&treeItemAddresses) << treeItemAddress;
406 QTextStream(&dataNodeAddresses) << dataNodeAddress;
407
408 if (i != indexes.size() - 1)
409 {
410 QTextStream(&treeItemAddresses) << ",";
411 QTextStream(&dataNodeAddresses) << ",";
412 }
413 // -------------- end deprecated -------------
414 }
415
416 // ------------------ deprecated -----------------
417 ret->setData("application/x-qabstractitemmodeldatalist", QByteArray(treeItemAddresses.toLatin1()));
418 ret->setData("application/x-mitk-datanodes", QByteArray(dataNodeAddresses.toLatin1()));
419 // --------------- end deprecated -----------------
420
421 ret->setData(QmitkMimeTypes::DataStorageTreeItemPtrs, baTreeItemPtrs);
422 ret->setData(QmitkMimeTypes::DataNodePtrs, baDataNodePtrs);
423
424 return ret;
425}
426
427QVariant QmitkDataStorageTreeModel::data(const QModelIndex &index, int role) const
428{

Callers

nothing calls this directly

Calls 6

QTextStreamClass · 0.85
atMethod · 0.80
GetPointerMethod · 0.80
sizeMethod · 0.45
GetDataNodeMethod · 0.45
setDataMethod · 0.45

Tested by

no test coverage detected