| 506 | } |
| 507 | |
| 508 | bool UBWidgetUniboardAPI::ProcessDropEvent(QGraphicsSceneDragDropEvent *event) |
| 509 | { |
| 510 | if (!mProcessFileDrop) { |
| 511 | return false; |
| 512 | } |
| 513 | |
| 514 | const QMimeData *pMimeData = event->mimeData(); |
| 515 | |
| 516 | QString destFileName; |
| 517 | QString contentType; |
| 518 | bool downloaded = false; |
| 519 | |
| 520 | Qt::DropActions dropActions = event->possibleActions(); |
| 521 | Qt::MouseButtons dropMouseButtons = event->buttons(); |
| 522 | Qt::KeyboardModifiers dropModifiers = event->modifiers(); |
| 523 | QMimeData *dropMimeData = new QMimeData; |
| 524 | qDebug() << event->possibleActions(); |
| 525 | |
| 526 | |
| 527 | if (pMimeData->hasHtml()) { //Dropping element from web browser |
| 528 | QString qsHtml = pMimeData->html(); |
| 529 | QString url = UBApplication::urlFromHtml(qsHtml); |
| 530 | |
| 531 | if(!url.isEmpty()) { |
| 532 | QString str = "test string"; |
| 533 | |
| 534 | QMimeData mimeData; |
| 535 | mimeData.setData(tMimeText, str.toLatin1()); |
| 536 | |
| 537 | sDownloadFileDesc desc; |
| 538 | desc.dest = sDownloadFileDesc::graphicsWidget; |
| 539 | desc.modal = true; |
| 540 | desc.srcUrl = url; |
| 541 | desc.currentSize = 0; |
| 542 | desc.name = QFileInfo(url).fileName(); |
| 543 | desc.totalSize = 0; // The total size will be retrieved during the download |
| 544 | |
| 545 | desc.dropPoint = event->pos().toPoint(); //Passing pure event point. No modifications |
| 546 | desc.dropActions = dropActions; |
| 547 | desc.dropMouseButtons = dropMouseButtons; |
| 548 | desc.dropModifiers = dropModifiers; |
| 549 | |
| 550 | registerIDWidget(UBDownloadManager::downloadManager()->addFileToDownload(desc)); |
| 551 | |
| 552 | } |
| 553 | |
| 554 | } else if (pMimeData->hasUrls()) { //Local file processing |
| 555 | QUrl curUrl = pMimeData->urls().constFirst(); |
| 556 | QString sUrl = curUrl.toString(); |
| 557 | |
| 558 | if (sUrl.startsWith("file://") || sUrl.startsWith("/")) { |
| 559 | QString fileName = curUrl.toLocalFile(); |
| 560 | QString extention = UBFileSystemUtils::extension(fileName); |
| 561 | contentType = UBFileSystemUtils::mimeTypeFromFileName(fileName); |
| 562 | |
| 563 | if (supportedTypeHeader(contentType)) { |
| 564 | destFileName = getObjDir() + QUuid::createUuid().toString() + "." + extention; |
| 565 |
no test coverage detected