From db08061f98a564ddf4a7c7e04c8fdef7f9d3ee74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Erik=20Jensen?= Date: Thu, 28 Jun 2018 10:45:51 +0200 Subject: [PATCH] Ensemble calc. Show only valid ensembles in drop downs --- .../Summary/RimDerivedEnsembleCaseCollection.cpp | 9 ++++++++- .../Summary/RimDerivedEnsembleCaseCollection.h | 1 + 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ApplicationCode/ProjectDataModel/Summary/RimDerivedEnsembleCaseCollection.cpp b/ApplicationCode/ProjectDataModel/Summary/RimDerivedEnsembleCaseCollection.cpp index 0ca1e24e29..e096f24021 100644 --- a/ApplicationCode/ProjectDataModel/Summary/RimDerivedEnsembleCaseCollection.cpp +++ b/ApplicationCode/ProjectDataModel/Summary/RimDerivedEnsembleCaseCollection.cpp @@ -447,7 +447,14 @@ std::vector RimDerivedEnsembleCaseCollection::allEnse for (auto group : project->summaryGroups()) { - if (group->isEnsemble()) ensembles.push_back(group); + if (group == this) continue; + + if (!group->isEnsemble()) continue; + + auto derivedEnsemble = dynamic_cast(group); + if (derivedEnsemble && !derivedEnsemble->isValid()) continue; + + ensembles.push_back(group); } return ensembles; } diff --git a/ApplicationCode/ProjectDataModel/Summary/RimDerivedEnsembleCaseCollection.h b/ApplicationCode/ProjectDataModel/Summary/RimDerivedEnsembleCaseCollection.h index 6e76f8c019..6681dd0fda 100644 --- a/ApplicationCode/ProjectDataModel/Summary/RimDerivedEnsembleCaseCollection.h +++ b/ApplicationCode/ProjectDataModel/Summary/RimDerivedEnsembleCaseCollection.h @@ -47,6 +47,7 @@ public: RimSummaryCaseCollection* ensemble1() const { return m_ensemble1; } RimSummaryCaseCollection* ensemble2() const { return m_ensemble2; } DerivedEnsembleOperator op() const { return m_operator(); } + bool isValid() const { return m_ensemble1 != nullptr && m_ensemble2 != nullptr; } void setEnsemble1(RimSummaryCaseCollection* ensemble); void setEnsemble2(RimSummaryCaseCollection* ensemble);