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

Method dropMimeData

Modules/QtWidgets/src/QmitkRenderWindowDataStorageTreeModel.cpp:320–361  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

318}
319
320bool QmitkRenderWindowDataStorageTreeModel::dropMimeData(const QMimeData* data, Qt::DropAction action, int /*row*/, int /*column*/, const QModelIndex& parent)
321{
322 auto baseRenderer = m_BaseRenderer.Lock();
323
324 if (baseRenderer.IsNull())
325 {
326 return false;
327 }
328
329 if (action == Qt::IgnoreAction)
330 {
331 return true;
332 }
333
334 if (!data->hasFormat(QmitkMimeTypes::DataNodePtrs))
335 {
336 return false;
337 }
338
339 if (!parent.isValid())
340 {
341 return false;
342 }
343
344 int layer = -1;
345 auto dataNode = this->data(parent, QmitkDataNodeRawPointerRole).value<mitk::DataNode*>();
346 if (nullptr != dataNode)
347 {
348 dataNode->GetIntProperty("layer", layer, baseRenderer);
349 }
350
351 auto dataNodeList = QmitkMimeTypes::ToDataNodePtrList(data);
352 for (const auto& dataNode : std::as_const(dataNodeList))
353 {
354 m_RenderWindowLayerController->MoveNodeToPosition(dataNode, layer, baseRenderer);
355 }
356
357 ResetTree();
358 UpdateModelData();
359 AdjustLayerProperty();
360 return true;
361}
362
363void QmitkRenderWindowDataStorageTreeModel::SetControlledRenderer(mitk::RenderWindowLayerUtilities::RendererVector controlledRenderer)
364{

Callers

nothing calls this directly

Calls 5

dataMethod · 0.95
MoveNodeToPositionMethod · 0.80
LockMethod · 0.45
IsNullMethod · 0.45
GetIntPropertyMethod · 0.45

Tested by

no test coverage detected