Commit ec7f0b29 authored by shibakaneki's avatar shibakaneki

Fixed the stroke issue in feature 862

parent c8a914c1
...@@ -54,6 +54,8 @@ ...@@ -54,6 +54,8 @@
#include "domain/UBGraphicsGroupContainerItem.h" #include "domain/UBGraphicsGroupContainerItem.h"
#include "domain/UBItem.h" #include "domain/UBItem.h"
#include "board/UBFeaturesController.h" #include "board/UBFeaturesController.h"
#include "domain/UBGraphicsStrokesGroup.h"
#include "gui/UBFeaturesWidget.h" #include "gui/UBFeaturesWidget.h"
#include "tools/UBToolsManager.h" #include "tools/UBToolsManager.h"
...@@ -536,6 +538,8 @@ void UBBoardController::duplicateItem(UBItem *item) ...@@ -536,6 +538,8 @@ void UBBoardController::duplicateItem(UBItem *item)
if (!item) if (!item)
return; return;
mLastCreatedItem = NULL;
QUrl sourceUrl; QUrl sourceUrl;
QByteArray pData; QByteArray pData;
...@@ -612,9 +616,8 @@ void UBBoardController::duplicateItem(UBItem *item) ...@@ -612,9 +616,8 @@ void UBBoardController::duplicateItem(UBItem *item)
UBItem* pItem = dynamic_cast<UBItem*>(pIt); UBItem* pItem = dynamic_cast<UBItem*>(pIt);
if(NULL != pItem){ if(NULL != pItem){
duplicateItem(pItem); // The duplication already copies the item parameters duplicateItem(pItem); // The duplication already copies the item parameters
QGraphicsItem* pDuplicatedItem = dynamic_cast<QGraphicsItem*>((mActiveScene->children().last())); if(NULL != mLastCreatedItem){
if(NULL != pDuplicatedItem){ mLastCreatedItem->setSelected(true);
pDuplicatedItem->setSelected(true);
} }
} }
} }
...@@ -630,8 +633,10 @@ void UBBoardController::duplicateItem(UBItem *item) ...@@ -630,8 +633,10 @@ void UBBoardController::duplicateItem(UBItem *item)
QGraphicsItem *gitem = dynamic_cast<QGraphicsItem*>(item->deepCopy()); QGraphicsItem *gitem = dynamic_cast<QGraphicsItem*>(item->deepCopy());
if (gitem) if (gitem)
{ {
qDebug() << "Adding a stroke: " << gitem;
mActiveScene->addItem(gitem); mActiveScene->addItem(gitem);
gitem->setPos(itemPos); gitem->setPos(itemPos);
mLastCreatedItem = gitem;
} }
return; return;
}break; }break;
...@@ -646,6 +651,7 @@ void UBBoardController::duplicateItem(UBItem *item) ...@@ -646,6 +651,7 @@ void UBBoardController::duplicateItem(UBItem *item)
QGraphicsItem *createdGitem = dynamic_cast<QGraphicsItem*>(createdItem); QGraphicsItem *createdGitem = dynamic_cast<QGraphicsItem*>(createdItem);
if (createdGitem) if (createdGitem)
createdGitem->setPos(itemPos); createdGitem->setPos(itemPos);
mLastCreatedItem = dynamic_cast<QGraphicsItem*>(createdItem);
} }
} }
......
...@@ -279,6 +279,7 @@ class UBBoardController : public UBDocumentContainer ...@@ -279,6 +279,7 @@ class UBBoardController : public UBDocumentContainer
bool mCleanupDone; bool mCleanupDone;
QMap<QAction*, QPair<QString, QString> > mActionTexts; QMap<QAction*, QPair<QString, QString> > mActionTexts;
bool mCacheWidgetIsEnabled; bool mCacheWidgetIsEnabled;
QGraphicsItem* mLastCreatedItem;
private slots: private slots:
void stylusToolDoubleClicked(int tool); void stylusToolDoubleClicked(int tool);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment