diff --git a/src/domain/UBGraphicsItemDelegate.cpp b/src/domain/UBGraphicsItemDelegate.cpp index 4556cb0c..e279cfbe 100644 --- a/src/domain/UBGraphicsItemDelegate.cpp +++ b/src/domain/UBGraphicsItemDelegate.cpp @@ -419,9 +419,6 @@ bool UBGraphicsItemDelegate::isLocked() void UBGraphicsItemDelegate::duplicate() { // TODO UB 4.x .. rewrite .. .this is absurde ... we know what we are duplicating - - UBApplication::boardController->copy(); - UBApplication::boardController->paste(); UBApplication::boardController->duplicateItem(dynamic_cast(delegated())); } diff --git a/src/domain/UBGraphicsStrokesGroup.cpp b/src/domain/UBGraphicsStrokesGroup.cpp index bff2dd5e..92cd1bf4 100644 --- a/src/domain/UBGraphicsStrokesGroup.cpp +++ b/src/domain/UBGraphicsStrokesGroup.cpp @@ -1,5 +1,7 @@ #include "UBGraphicsStrokesGroup.h" +#include "domain/UBGraphicsPolygonItem.h" + #include "core/memcheck.h" UBGraphicsStrokesGroup::UBGraphicsStrokesGroup(QGraphicsItem *parent):QGraphicsItemGroup(parent) @@ -63,6 +65,15 @@ UBItem* UBGraphicsStrokesGroup::deepCopy() const { UBGraphicsStrokesGroup* copy = new UBGraphicsStrokesGroup(); + + QList chl = childItems(); + + foreach(QGraphicsItem *child, chl) + { + UBGraphicsPolygonItem *polygon = dynamic_cast(child); + if (polygon) + copy->addToGroup(dynamic_cast(polygon->deepCopy())); + } copyItemParameters(copy); return copy;