From 7af55910b730b516698ca9f8c5a5d39c425e6805 Mon Sep 17 00:00:00 2001
From: Joachim Wuttke <j.wuttke@fz-juelich.de>
Date: Fri, 26 Jul 2024 12:19:14 +0200
Subject: [PATCH] ParticleLayoutItem::m_interference now PolyPtr; rm 'using'

---
 GUI/Model/Sample/InterferenceCatalog.h  |  2 --
 GUI/Model/Sample/ParticleLayoutItem.cpp |  5 -----
 GUI/Model/Sample/ParticleLayoutItem.h   | 14 ++++++++++----
 3 files changed, 10 insertions(+), 11 deletions(-)

diff --git a/GUI/Model/Sample/InterferenceCatalog.h b/GUI/Model/Sample/InterferenceCatalog.h
index cda030d4795..5237d1d77df 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 41dcb934544..dee3a350744 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 07cc8b420c3..13978a8797d 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;
 };
-- 
GitLab