mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#1840 Summary case: Simplified code based on user input
This commit is contained in:
@@ -54,11 +54,6 @@ void RicDeleteSummaryCaseCollectionFeature::deleteSummaryCaseCollection(RimSumma
|
|||||||
}
|
}
|
||||||
|
|
||||||
summaryPlotColl->updateConnectedEditors();
|
summaryPlotColl->updateConnectedEditors();
|
||||||
|
|
||||||
/*RimSummaryCaseMainCollection* summaryCaseMainCollection = nullptr;
|
|
||||||
caseCollection->firstAncestorOrThisOfTypeAsserted(summaryCaseMainCollection);
|
|
||||||
summaryCaseMainCollection->removeCaseCollection(caseCollection);
|
|
||||||
delete caseCollection;*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@@ -79,22 +74,49 @@ void RicDeleteSummaryCaseCollectionFeature::onActionTriggered(bool isChecked)
|
|||||||
{
|
{
|
||||||
std::vector<RimSummaryCaseCollection*> selection;
|
std::vector<RimSummaryCaseCollection*> selection;
|
||||||
caf::SelectionManager::instance()->objectsByType(&selection);
|
caf::SelectionManager::instance()->objectsByType(&selection);
|
||||||
|
if (selection.size() == 0) return;
|
||||||
|
|
||||||
bool userConfirmedClosingOfGroup = askUserWhereToPutTheSummaryCases(selection);
|
QMessageBox msgBox;
|
||||||
|
msgBox.setIcon(QMessageBox::Question);
|
||||||
|
|
||||||
if (userConfirmedClosingOfGroup)
|
QString questionText;
|
||||||
|
questionText = QString("Do you also want to close the summary cases in the group?");
|
||||||
|
|
||||||
|
msgBox.setText(questionText);
|
||||||
|
msgBox.setStandardButtons(QMessageBox::Yes | QMessageBox::No | QMessageBox::Cancel);
|
||||||
|
|
||||||
|
int ret = msgBox.exec();
|
||||||
|
|
||||||
|
if (ret == QMessageBox::Cancel)
|
||||||
{
|
{
|
||||||
RimSummaryCaseMainCollection* summaryCaseMainCollection = nullptr;
|
return;
|
||||||
selection[0]->firstAncestorOrThisOfTypeAsserted(summaryCaseMainCollection);
|
|
||||||
|
|
||||||
for (RimSummaryCaseCollection* caseCollection : selection)
|
|
||||||
{
|
|
||||||
summaryCaseMainCollection->removeCaseCollection(caseCollection);
|
|
||||||
delete caseCollection;
|
|
||||||
}
|
|
||||||
|
|
||||||
summaryCaseMainCollection->updateConnectedEditors();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ret == QMessageBox::Yes)
|
||||||
|
{
|
||||||
|
for (RimSummaryCaseCollection* summaryCaseCollection : selection)
|
||||||
|
{
|
||||||
|
RicDeleteSummaryCaseCollectionFeature::deleteSummaryCaseCollection(summaryCaseCollection);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (ret == QMessageBox::No)
|
||||||
|
{
|
||||||
|
for (RimSummaryCaseCollection* summaryCaseCollection : selection)
|
||||||
|
{
|
||||||
|
RicDeleteSummaryCaseCollectionFeature::moveAllCasesToMainSummaryCollection(summaryCaseCollection);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
RimSummaryCaseMainCollection* summaryCaseMainCollection = nullptr;
|
||||||
|
selection[0]->firstAncestorOrThisOfTypeAsserted(summaryCaseMainCollection);
|
||||||
|
|
||||||
|
for (RimSummaryCaseCollection* caseCollection : selection)
|
||||||
|
{
|
||||||
|
summaryCaseMainCollection->removeCaseCollection(caseCollection);
|
||||||
|
delete caseCollection;
|
||||||
|
}
|
||||||
|
|
||||||
|
summaryCaseMainCollection->updateConnectedEditors();
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@@ -109,45 +131,7 @@ void RicDeleteSummaryCaseCollectionFeature::setupActionLook(QAction* actionToSet
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
bool RicDeleteSummaryCaseCollectionFeature::askUserWhereToPutTheSummaryCases(std::vector<RimSummaryCaseCollection*> selectedSummaryCases)
|
void RicDeleteSummaryCaseCollectionFeature::moveAllCasesToMainSummaryCollection(RimSummaryCaseCollection* summaryCaseCollection)
|
||||||
{
|
|
||||||
QMessageBox msgBox;
|
|
||||||
msgBox.setIcon(QMessageBox::Question);
|
|
||||||
|
|
||||||
QString questionText;
|
|
||||||
questionText = QString("Do you also want to close the summary cases in the group?");
|
|
||||||
|
|
||||||
msgBox.setText(questionText);
|
|
||||||
msgBox.setStandardButtons(QMessageBox::Yes | QMessageBox::No | QMessageBox::Cancel);
|
|
||||||
|
|
||||||
int ret = msgBox.exec();
|
|
||||||
|
|
||||||
if (ret == QMessageBox::Yes)
|
|
||||||
{
|
|
||||||
for (RimSummaryCaseCollection* summaryCaseCollection : selectedSummaryCases)
|
|
||||||
{
|
|
||||||
RicDeleteSummaryCaseCollectionFeature::deleteSummaryCaseCollection(summaryCaseCollection);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else if (ret == QMessageBox::No)
|
|
||||||
{
|
|
||||||
for (RimSummaryCaseCollection* summaryCaseCollection : selectedSummaryCases)
|
|
||||||
{
|
|
||||||
RicDeleteSummaryCaseCollectionFeature::moveSummaryCasesFromSummaryCollectionToMainSummaryCollection(summaryCaseCollection);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
///
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
void RicDeleteSummaryCaseCollectionFeature::moveSummaryCasesFromSummaryCollectionToMainSummaryCollection(RimSummaryCaseCollection* summaryCaseCollection)
|
|
||||||
{
|
{
|
||||||
std::vector<RimSummaryCase*> summaryCases = summaryCaseCollection->allSummaryCases();
|
std::vector<RimSummaryCase*> summaryCases = summaryCaseCollection->allSummaryCases();
|
||||||
if (summaryCases.size() < 0) return;
|
if (summaryCases.size() < 0) return;
|
||||||
|
|||||||
@@ -31,16 +31,11 @@ class RicDeleteSummaryCaseCollectionFeature : public caf::CmdFeature
|
|||||||
{
|
{
|
||||||
CAF_CMD_HEADER_INIT;
|
CAF_CMD_HEADER_INIT;
|
||||||
|
|
||||||
public:
|
|
||||||
static void deleteSummaryCaseCollection(RimSummaryCaseCollection* caseCollection);
|
|
||||||
static void moveSummaryCasesFromSummaryCollectionToMainSummaryCollection(RimSummaryCaseCollection* summaryCaseCollection);
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool askUserWhereToPutTheSummaryCases(std::vector<RimSummaryCaseCollection*> selectedSummaryCases);
|
|
||||||
|
|
||||||
protected:
|
|
||||||
// Overrides
|
|
||||||
virtual bool isCommandEnabled() override;
|
virtual bool isCommandEnabled() override;
|
||||||
virtual void onActionTriggered(bool isChecked) override;
|
virtual void onActionTriggered(bool isChecked) override;
|
||||||
virtual void setupActionLook(QAction* actionToSetup) override;
|
virtual void setupActionLook(QAction* actionToSetup) override;
|
||||||
|
|
||||||
|
static void deleteSummaryCaseCollection(RimSummaryCaseCollection* caseCollection);
|
||||||
|
static void moveAllCasesToMainSummaryCollection(RimSummaryCaseCollection* summaryCaseCollection);
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user