From 1232807ad10de92eb1808a19b26974f132b43920 Mon Sep 17 00:00:00 2001 From: Claudio Valerio Date: Thu, 23 Aug 2012 12:33:26 +0200 Subject: [PATCH] fixed issue with dnd on mac from teacher guide to board --- src/board/UBBoardController.cpp | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/src/board/UBBoardController.cpp b/src/board/UBBoardController.cpp index a1fbd435..2474e755 100644 --- a/src/board/UBBoardController.cpp +++ b/src/board/UBBoardController.cpp @@ -957,6 +957,9 @@ UBItem *UBBoardController::downloadFinished(bool pSuccess, QUrl sourceUrl, QStri // In some cases "image/jpeg;charset=" is retourned by the drag-n-drop. That is // why we will check if an ; exists and take the first part (the standard allows this kind of mimetype) + if(mimeType.isEmpty()) + mimeType = UBFileSystemUtils::mimeTypeFromFileName(sourceUrl.toString()); + int position=mimeType.indexOf(";"); if(position != -1) mimeType=mimeType.left(position); @@ -977,9 +980,18 @@ UBItem *UBBoardController::downloadFinished(bool pSuccess, QUrl sourceUrl, QStri qDebug() << "accepting mime type" << mimeType << "as raster image"; - QImage img; - img.loadFromData(pData); - QPixmap pix = QPixmap::fromImage(img); + + QPixmap pix; + if(pData.length() == 0){ + pix.load(sourceUrl.toString()); + } + else{ + QImage img; + img.loadFromData(pData); + pix = QPixmap::fromImage(img); + } + + UBGraphicsPixmapItem* pixItem = mActiveScene->addPixmap(pix, NULL, pPos, 1.); pixItem->setSourceUrl(sourceUrl);