diff --git a/GUI/Model/Sample/InterferenceCatalog.h b/GUI/Model/Sample/InterferenceCatalog.h index cda030d479503fa16c37dce15a6162735c2802f6..5237d1d77df724b98191ee66740add10d7b08862 100644 --- a/GUI/Model/Sample/InterferenceCatalog.h +++ b/GUI/Model/Sample/InterferenceCatalog.h @@ -22,8 +22,6 @@ class InterferenceItem; class InterferenceCatalog { public: - using BaseItem = InterferenceItem; - // Do not change the numbering! It is serialized! enum class Type : uint8_t { None = 0, diff --git a/GUI/Model/Sample/ParticleLayoutItem.cpp b/GUI/Model/Sample/ParticleLayoutItem.cpp index 41dcb9345440bd2db1850f5e46f17c24e1efaa9c..dee3a350744e1db33504df92c4735d6cf7394ed6 100644 --- a/GUI/Model/Sample/ParticleLayoutItem.cpp +++ b/GUI/Model/Sample/ParticleLayoutItem.cpp @@ -90,11 +90,6 @@ void ParticleLayoutItem::removeItemWithParticle(ItemWithParticles* particle) m_particles.delete_element(particle); } -const PolyItem<InterferenceCatalog>& ParticleLayoutItem::interferenceSelection() const -{ - return m_interference; -} - bool ParticleLayoutItem::totalDensityIsDefinedByInterference() const { return dynamic_cast<const Interference2DAbstractLatticeItem*>(m_interference.certainItem()) diff --git a/GUI/Model/Sample/ParticleLayoutItem.h b/GUI/Model/Sample/ParticleLayoutItem.h index 07cc8b420c3ecc57189517e76d814f199d61d35a..13978a8797d4cc83e2dfa2434c0c125f7b80b261 100644 --- a/GUI/Model/Sample/ParticleLayoutItem.h +++ b/GUI/Model/Sample/ParticleLayoutItem.h @@ -17,7 +17,7 @@ #include "Base/Type/OwningVector.h" #include "GUI/Model/Descriptor/DoubleProperty.h" -#include "GUI/Model/Descriptor/PolyItem.h" +#include "GUI/Model/Descriptor/PolyPtr.h" #include "GUI/Model/Sample/InterferenceCatalog.h" #include "GUI/Model/Sample/InterferenceItems.h" #include "GUI/Model/Sample/Item3D.h" @@ -53,8 +53,14 @@ public: void addItemWithParticleSelection(ItemWithParticles* particle); void removeItemWithParticle(ItemWithParticles* particle); - PolyItem<InterferenceCatalog>& interferenceSelection() { return m_interference; } - const PolyItem<InterferenceCatalog>& interferenceSelection() const; + PolyPtr<InterferenceItem, InterferenceCatalog>& interferenceSelection() + { + return m_interference; + } + const PolyPtr<InterferenceItem, InterferenceCatalog>& interferenceSelection() const + { + return m_interference; + } void setInterference(InterferenceItem* i) { m_interference.setCertainItem(i); } void removeInterference() { m_interference.setCertainItem(nullptr); } @@ -72,7 +78,7 @@ public: private: DoubleProperty m_own_density; - PolyItem<InterferenceCatalog> m_interference; + PolyPtr<InterferenceItem, InterferenceCatalog> m_interference; OwningVector<ItemWithParticles> m_particles; const MaterialsSet* m_materials; };