@ -543,7 +543,7 @@ void UBBoardController::duplicateScene()
duplicateScene ( mActiveSceneIndex ) ;
duplicateScene ( mActiveSceneIndex ) ;
}
}
UBGraphicsItem * UBBoardController : : duplicateItem ( UBItem * item , bool bAsync )
UBGraphicsItem * UBBoardController : : duplicateItem ( UBItem * item )
{
{
if ( ! item )
if ( ! item )
return NULL ;
return NULL ;
@ -602,12 +602,9 @@ UBGraphicsItem *UBBoardController::duplicateItem(UBItem *item, bool bAsync)
if ( mitem )
if ( mitem )
{
{
sourceUrl = mitem - > mediaFileUrl ( ) ;
sourceUrl = mitem - > mediaFileUrl ( ) ;
if ( bAsync )
{
downloadURL ( sourceUrl , srcFile , itemPos , QSize ( itemSize . width ( ) , itemSize . height ( ) ) , false , false ) ;
downloadURL ( sourceUrl , srcFile , itemPos , QSize ( itemSize . width ( ) , itemSize . height ( ) ) , false , false ) ;
return NULL ; // async operation
return NULL ; // async operation
}
}
}
} break ;
} break ;
case UBMimeType : : VectorImage :
case UBMimeType : : VectorImage :
@ -643,8 +640,8 @@ UBGraphicsItem *UBBoardController::duplicateItem(UBItem *item, bool bAsync)
mActiveScene - > setURStackEnable ( false ) ;
mActiveScene - > setURStackEnable ( false ) ;
foreach ( QGraphicsItem * pIt , children ) {
foreach ( QGraphicsItem * pIt , children ) {
UBItem * pItem = dynamic_cast < UBItem * > ( pIt ) ;
UBItem * pItem = dynamic_cast < UBItem * > ( pIt ) ;
if ( pItem ) { // we diong sync duplication of all childs.
if ( pItem ) {
QGraphicsItem * itemToGroup = dynamic_cast < QGraphicsItem * > ( duplicateItem ( pItem , false ) ) ;
QGraphicsItem * itemToGroup = dynamic_cast < QGraphicsItem * > ( duplicateItem ( pItem ) ) ;
if ( itemToGroup )
if ( itemToGroup )
duplicatedItems . append ( itemToGroup ) ;
duplicatedItems . append ( itemToGroup ) ;
}
}