diff --git a/SCHNApps/Plugins/surface_import/src/surface_import.cpp b/SCHNApps/Plugins/surface_import/src/surface_import.cpp index f6d2ee6bcbee90df8dd1bd84ff3a4256600da77a..77fe8d13b0c3d002488acad17553cbda33b3de2b 100644 --- a/SCHNApps/Plugins/surface_import/src/surface_import.cpp +++ b/SCHNApps/Plugins/surface_import/src/surface_import.cpp @@ -38,8 +38,6 @@ MapHandlerGen* Surface_Import_Plugin::importMeshFromFile(const QString& nameOfFi QFileInfo fi(fileName); if(fi.exists()) { - pythonRecording("importMeshFromFile", fi.baseName(), fileName); - MapHandlerGen* mhg = m_schnapps->addMap(fi.baseName(), 2); if(mhg) { @@ -60,6 +58,7 @@ MapHandlerGen* Surface_Import_Plugin::importMeshFromFile(const QString& nameOfFi mhg->registerAttribute(orbit, QString::fromStdString(names[i]), QString::fromStdString(types[i])); } } + pythonRecording("importMeshFromFile", mhg->getName(), fileName); return mhg; } else diff --git a/SCHNApps/src/schnapps.cpp b/SCHNApps/src/schnapps.cpp index 48247d408b70bdb42af600feee703b9b8ce7e476..e8239eaa02f4d094b524927f551efd7186e64ceb 100644 --- a/SCHNApps/src/schnapps.cpp +++ b/SCHNApps/src/schnapps.cpp @@ -727,25 +727,33 @@ MapHandlerGen* SCHNApps::duplicateMap(const QString& name, bool properties) MapHandlerGen* SCHNApps::addMap(const QString& name, unsigned int dim) { + QString finalName = name; if (m_maps.contains(name)) - return NULL; + { + int i = 1; + do + { + finalName = name + QString("_") + QString::number(i); + ++i; + } while (m_maps.contains(finalName)); + } MapHandlerGen* mh = NULL; switch(dim) { case 2 : { PFP2::MAP* map = new PFP2::MAP(); - mh = new MapHandler(name, this, map); + mh = new MapHandler(finalName, this, map); break; } case 3 : { PFP3::MAP* map = new PFP3::MAP(); - mh = new MapHandler(name, this, map); + mh = new MapHandler(finalName, this, map); break; } } - m_maps.insert(name, mh); + m_maps.insert(finalName, mh); DEBUG_EMIT("mapAdded"); emit(mapAdded(mh));