diff --git a/src/blackgui/components/simulatorselector.cpp b/src/blackgui/components/simulatorselector.cpp index 6636003cb..dc949cecb 100644 --- a/src/blackgui/components/simulatorselector.cpp +++ b/src/blackgui/components/simulatorselector.cpp @@ -97,6 +97,12 @@ namespace BlackGui if (simulator.p3d()) { this->ui->rb_P3D->setChecked(simulator.p3d()); return; } } + void CSimulatorSelector::setToLastSelection() + { + const CSimulatorInfo sim = this->m_currentSimulator.get(); + this->setValue(sim); + } + void CSimulatorSelector::setAll() { // checkboxes diff --git a/src/blackgui/components/simulatorselector.h b/src/blackgui/components/simulatorselector.h index 2d097de27..bfb752b0f 100644 --- a/src/blackgui/components/simulatorselector.h +++ b/src/blackgui/components/simulatorselector.h @@ -12,6 +12,7 @@ #include "blackgui/blackguiexport.h" #include "blackmisc/simulation/simulatorinfo.h" +#include "blackmisc/simulation/data/modelcaches.h" #include #include @@ -58,6 +59,9 @@ namespace BlackGui //! Set the value void setValue(const BlackMisc::Simulation::CSimulatorInfo &simulator); + //! Set to last selection + void setToLastSelection(); + //! Set all, only making sense with checkboxes void setAll(); @@ -85,6 +89,7 @@ namespace BlackGui QScopedPointer ui; Mode m_mode = CheckBoxes; bool m_noSelectionMeansAll = false; //!< for filters, no selection means all + BlackMisc::CDataReadOnly m_currentSimulator { this }; //!< current simulator }; } // ns } // ns