void ItemTreeViewImpl::pasteItems() { if(!copiedItemList.empty()){ ItemPtr parentItem; if(selectedItemList.empty()){ parentItem = rootItem; } else if(selectedItemList.size() == 1){ parentItem = selectedItemList.front(); } if(parentItem){ for(size_t i=0; i < copiedItemList.size(); ++i){ ItemPtr org = copiedItemList[i]; ItemPtr duplicated = org->duplicateAll(); if(duplicated){ copiedItemList[i] = duplicated; } parentItem->addChildItem(org, true); // paste the original items } } } }