diff --git a/src/board/UBBoardController.cpp b/src/board/UBBoardController.cpp index 0d3da7e9..ac5e2398 100644 --- a/src/board/UBBoardController.cpp +++ b/src/board/UBBoardController.cpp @@ -543,7 +543,7 @@ void UBBoardController::duplicateScene() duplicateScene(mActiveSceneIndex); } -UBGraphicsItem *UBBoardController::duplicateItem(UBItem *item, bool bAsync) +UBGraphicsItem *UBBoardController::duplicateItem(UBItem *item) { if (!item) return NULL; @@ -602,11 +602,8 @@ UBGraphicsItem *UBBoardController::duplicateItem(UBItem *item, bool bAsync) if (mitem) { sourceUrl = mitem->mediaFileUrl(); - if (bAsync) - { - downloadURL(sourceUrl, srcFile, itemPos, QSize(itemSize.width(), itemSize.height()), false, false); - return NULL; // async operation - } + downloadURL(sourceUrl, srcFile, itemPos, QSize(itemSize.width(), itemSize.height()), false, false); + return NULL; // async operation } }break; @@ -643,8 +640,8 @@ UBGraphicsItem *UBBoardController::duplicateItem(UBItem *item, bool bAsync) mActiveScene->setURStackEnable(false); foreach(QGraphicsItem* pIt, children){ UBItem* pItem = dynamic_cast(pIt); - if(pItem){ // we diong sync duplication of all childs. - QGraphicsItem * itemToGroup = dynamic_cast(duplicateItem(pItem, false)); + if(pItem){ + QGraphicsItem * itemToGroup = dynamic_cast(duplicateItem(pItem)); if (itemToGroup) duplicatedItems.append(itemToGroup); } diff --git a/src/board/UBBoardController.h b/src/board/UBBoardController.h index ce4fb7d2..8ab9b27e 100644 --- a/src/board/UBBoardController.h +++ b/src/board/UBBoardController.h @@ -149,7 +149,7 @@ class UBBoardController : public UBDocumentContainer void setBoxing(QRect displayRect); void setToolbarTexts(); static QUrl expandWidgetToTempDir(const QByteArray& pZipedData, const QString& pExtension = QString("wgt")); - + void setPageSize(QSize newSize); UBBoardPaletteManager *paletteManager() { @@ -168,7 +168,7 @@ class UBBoardController : public UBDocumentContainer void moveSceneToIndex(int source, int target); void duplicateScene(int index); - UBGraphicsItem *duplicateItem(UBItem *item, bool bAsync = true); + UBGraphicsItem *duplicateItem(UBItem *item); void deleteScene(int index); bool cacheIsVisible() {return mCacheWidgetIsEnabled;} diff --git a/src/core/UBMimeData.cpp b/src/core/UBMimeData.cpp index c5c5dab5..b62ffa84 100644 --- a/src/core/UBMimeData.cpp +++ b/src/core/UBMimeData.cpp @@ -61,8 +61,5 @@ UBMimeDataGraphicsItem::UBMimeDataGraphicsItem(QList pItems) UBMimeDataGraphicsItem::~UBMimeDataGraphicsItem() { - foreach(UBItem* item, mItems){ - delete item; - item = 0; - } +// Explanation: selected items are owned by the scene and handled by this class }