From 8a1d1c47ee7a434c2584e208e8c4aba11b531fe8 Mon Sep 17 00:00:00 2001
From: "Joachim Wuttke (h)" <j.wuttke@fz-juelich.de>
Date: Fri, 10 Nov 2023 08:32:04 +0100
Subject: [PATCH] flags EPresentationType { MASK_EDITOR, MASK_PRESENTER } fully
 replaced

---
 GUI/Model/Data/MaskEditorFlags.h    |  4 ----
 GUI/View/Mask/MaskEditorCanvas.cpp  | 10 ++++------
 GUI/View/Mask/MaskEditorCanvas.h    |  2 +-
 GUI/View/Mask/MaskEditorToolbar.cpp |  4 ++--
 GUI/View/Mask/MaskEditorToolbar.h   |  2 +-
 5 files changed, 8 insertions(+), 14 deletions(-)

diff --git a/GUI/Model/Data/MaskEditorFlags.h b/GUI/Model/Data/MaskEditorFlags.h
index 174ee7c6398..1eee998a400 100644
--- a/GUI/Model/Data/MaskEditorFlags.h
+++ b/GUI/Model/Data/MaskEditorFlags.h
@@ -40,14 +40,10 @@ public:
 
     enum EMaskValue { MASK_OFF, MASK_ON };
     Q_DECLARE_FLAGS(MaskValue, EMaskValue)
-
-    enum EPresentationType { MASK_EDITOR, MASK_PRESENTER };
-    Q_DECLARE_FLAGS(PresentationType, EPresentationType)
 };
 
 Q_DECLARE_OPERATORS_FOR_FLAGS(MaskEditorFlags::Activity)
 Q_DECLARE_OPERATORS_FOR_FLAGS(MaskEditorFlags::Stacking)
 Q_DECLARE_OPERATORS_FOR_FLAGS(MaskEditorFlags::MaskValue)
-Q_DECLARE_OPERATORS_FOR_FLAGS(MaskEditorFlags::PresentationType)
 
 #endif // BORNAGAIN_GUI_MODEL_DATA_MASKEDITORFLAGS_H
diff --git a/GUI/View/Mask/MaskEditorCanvas.cpp b/GUI/View/Mask/MaskEditorCanvas.cpp
index b2a6acd569a..6a345b76782 100644
--- a/GUI/View/Mask/MaskEditorCanvas.cpp
+++ b/GUI/View/Mask/MaskEditorCanvas.cpp
@@ -76,16 +76,14 @@ MaskGraphicsScene* MaskEditorCanvas::getScene()
     return m_scene;
 }
 
-void MaskEditorCanvas::onPresentationChange(MaskEditorFlags::PresentationType presentationType)
+void MaskEditorCanvas::onPresentationChange(bool pixelized)
 {
     m_scene->clearSelection(); // important to avoid crash (unsubscribe while calling subscribers)
-    m_resultsPresenter->updatePresenter(presentationType != MaskEditorFlags::MASK_EDITOR);
+    m_resultsPresenter->updatePresenter(pixelized);
 
-    if (auto* container = m_data2DItem->maskContainerItem()) {
-        bool tempVisible = presentationType == MaskEditorFlags::MASK_EDITOR;
+    if (auto* container = m_data2DItem->maskContainerItem())
         for (MaskItem* mask : container->maskItems())
-            mask->setIsVisible(tempVisible && mask->wasVisible());
-    }
+            mask->setIsVisible(!pixelized && mask->wasVisible());
 }
 
 //! Saves plot into project directory.
diff --git a/GUI/View/Mask/MaskEditorCanvas.h b/GUI/View/Mask/MaskEditorCanvas.h
index 1565a0f7944..76f9533950c 100644
--- a/GUI/View/Mask/MaskEditorCanvas.h
+++ b/GUI/View/Mask/MaskEditorCanvas.h
@@ -46,7 +46,7 @@ signals:
     void deleteSelectedRequest();
 
 public slots:
-    void onPresentationChange(MaskEditorFlags::PresentationType presentationType);
+    void onPresentationChange(bool pixelized);
     void onSavePlotRequest();
     void onResetViewRequest();
 
diff --git a/GUI/View/Mask/MaskEditorToolbar.cpp b/GUI/View/Mask/MaskEditorToolbar.cpp
index 182e78a9779..9bb56e84b31 100644
--- a/GUI/View/Mask/MaskEditorToolbar.cpp
+++ b/GUI/View/Mask/MaskEditorToolbar.cpp
@@ -154,9 +154,9 @@ MaskEditorToolbar::MaskEditorToolbar(MaskEditorActions* editorActions, QWidget*
     addWidget(presentationButton);
 
     connect(presentationButton, &QToolButton::pressed,
-            [this]() { emit presentationTypeRequest(MaskEditorFlags::MASK_PRESENTER); });
+            [this]() { emit presentationTypeRequest(true); });
     connect(presentationButton, &QToolButton::released,
-            [this]() { emit presentationTypeRequest(MaskEditorFlags::MASK_EDITOR); });
+            [this]() { emit presentationTypeRequest(false); });
 
     auto* propertyPanelButton = new QToolButton(this);
     propertyPanelButton->setIcon(QIcon(":/Mask/images/maskeditor_toolpanel.svg"));
diff --git a/GUI/View/Mask/MaskEditorToolbar.h b/GUI/View/Mask/MaskEditorToolbar.h
index a7fa65e33c3..827688f0508 100644
--- a/GUI/View/Mask/MaskEditorToolbar.h
+++ b/GUI/View/Mask/MaskEditorToolbar.h
@@ -30,7 +30,7 @@ public:
 
 signals:
     void activityModeChanged(MaskEditorFlags::Activity);
-    void presentationTypeRequest(MaskEditorFlags::PresentationType);
+    void presentationTypeRequest(bool);
     void maskValueChanged(MaskEditorFlags::MaskValue);
 
 public slots:
-- 
GitLab