From 675d84727b4d0e6b6a4e7c95556dc5c4c4394ccf Mon Sep 17 00:00:00 2001 From: Mikhail Svechnikov <m.svechnikov@fz-juelich.de> Date: Wed, 5 Jul 2023 11:58:00 +0200 Subject: [PATCH] keep selection model in MaskContainerItem --- GUI/Model/Data/MaskItems.cpp | 6 ++++++ GUI/Model/Data/MaskItems.h | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/GUI/Model/Data/MaskItems.cpp b/GUI/Model/Data/MaskItems.cpp index a623b84c4d9..f777c129dbe 100644 --- a/GUI/Model/Data/MaskItems.cpp +++ b/GUI/Model/Data/MaskItems.cpp @@ -49,6 +49,7 @@ const QString Mask("Mask"); MaskContainerItem::MaskContainerItem() : MaskItemObject() , m_model(new MaskContainerModel(this)) + , m_selectionModel(new QItemSelectionModel(m_model.get())) { } @@ -129,6 +130,11 @@ MaskContainerModel* MaskContainerItem::model() return m_model.get(); } +QItemSelectionModel* MaskContainerItem::selectionModel() +{ + return m_selectionModel.get(); +} + void MaskContainerItem::updateMaskNames() { const auto reg = QRegularExpression("[0-9]"); diff --git a/GUI/Model/Data/MaskItems.h b/GUI/Model/Data/MaskItems.h index dbb1d8b0003..9ab8aab319a 100644 --- a/GUI/Model/Data/MaskItems.h +++ b/GUI/Model/Data/MaskItems.h @@ -20,6 +20,7 @@ #include "GUI/Model/Data/MaskItemCatalog.h" #include "GUI/Model/Descriptor/SelectionProperty.h" #include <QAbstractListModel> +#include <QItemSelectionModel> class IShape2D; class MessageService; @@ -253,6 +254,9 @@ public: //! Return the corresponding MaskContainerModel MaskContainerModel* model(); + //! Return the corresponding QItemSelectionModel + QItemSelectionModel* selectionModel(); + //! Update numbers in mask names void updateMaskNames(); @@ -262,6 +266,7 @@ public: protected: SelectionVector<MaskItemCatalog> m_maskItems; std::unique_ptr<MaskContainerModel> m_model; + std::unique_ptr<QItemSelectionModel> m_selectionModel; }; //! Provides interfaces to a MaskContainerItem, allowing its contents to be displayed and modified -- GitLab