filter objects to exclude duplicates during copy

This commit is contained in:
Sergo 2016-06-09 00:09:06 -04:00 committed by wmayer
parent dc17dbf510
commit 8902e18da6

View File

@ -1318,10 +1318,12 @@ void MainWindow::dragEnterEvent (QDragEnterEvent * e)
QMimeData * MainWindow::createMimeDataFromSelection () const
{
std::vector<SelectionSingleton::SelObj> selobj = Selection().getCompleteSelection();
std::set<App::DocumentObject*> unique_objs;
std::map< App::Document*, std::vector<App::DocumentObject*> > objs;
for (std::vector<SelectionSingleton::SelObj>::iterator it = selobj.begin(); it != selobj.end(); ++it) {
if (it->pObject && it->pObject->getDocument()) {
objs[it->pObject->getDocument()].push_back(it->pObject);
if (unique_objs.insert(it->pObject).second)
objs[it->pObject->getDocument()].push_back(it->pObject);
}
}