#2105 Curve Calculator : Do not show calculator dialog modal

This commit is contained in:
Magne Sjaastad 2017-11-13 21:40:26 +01:00
parent 560dd4025a
commit cfaf27d4bf
6 changed files with 47 additions and 22 deletions

View File

@ -18,8 +18,9 @@
#include "RicEditSummaryCurveCalculationFeature.h"
#include "RicSummaryCurveCalculatorDialog.h"
#include "RicShowSummaryCurveCalculatorFeature.h"
#include "RicSummaryCurveCalculator.h"
#include "RicSummaryCurveCalculatorDialog.h"
#include "RimSummaryPlot.h"
#include "RimSummaryCurve.h"
@ -67,12 +68,10 @@ void RicEditSummaryCurveCalculationFeature::onActionTriggered(bool isChecked)
calculation = reader != nullptr ? reader->findCalculationByName(selectedAddress) : nullptr;
}
RicSummaryCurveCalculatorDialog dlg(nullptr);
RicSummaryCurveCalculator* calculator = dlg.calculator();
calculator->setCurrentCalculation(calculation);
calculator->updateConnectedEditors();
dlg.exec();
RicSummaryCurveCalculatorDialog* dialog = RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog();
dialog->setCalculationAndUpdateUi(calculation);
dialog->show();
dialog->raise();
}
//--------------------------------------------------------------------------------------------------

View File

@ -20,17 +20,31 @@
#include "RicSummaryCurveCalculatorDialog.h"
#include "RimSummaryPlot.h"
#include "cafPdmObject.h"
#include "cafSelectionManager.h"
#include "cafSelectionManagerTools.h"
#include <QAction>
CAF_CMD_SOURCE_INIT(RicShowSummaryCurveCalculatorFeature, "RicShowSummaryCurveCalculatorFeature");
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RicSummaryCurveCalculatorDialog* RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog()
{
static RicSummaryCurveCalculatorDialog* singleton = new RicSummaryCurveCalculatorDialog(nullptr);
return singleton;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RicShowSummaryCurveCalculatorFeature::hideCurveCalculatorDialog()
{
auto dialog = RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog();
dialog->hide();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@ -44,8 +58,12 @@ bool RicShowSummaryCurveCalculatorFeature::isCommandEnabled()
//--------------------------------------------------------------------------------------------------
void RicShowSummaryCurveCalculatorFeature::onActionTriggered(bool isChecked)
{
RicSummaryCurveCalculatorDialog dlg(nullptr);
dlg.exec();
RicSummaryCurveCalculatorDialog* dialog = RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog();
dialog->setCalculationAndUpdateUi(nullptr);
dialog->show();
dialog->raise();
}
//--------------------------------------------------------------------------------------------------

View File

@ -20,9 +20,7 @@
#include "cafCmdFeature.h"
class RimSummaryPlot;
class RimSummaryPlotCollection;
class RimSummaryCase;
class RicSummaryCurveCalculatorDialog;
//==================================================================================================
///
@ -31,6 +29,10 @@ class RicShowSummaryCurveCalculatorFeature : public caf::CmdFeature
{
CAF_CMD_HEADER_INIT;
public:
static RicSummaryCurveCalculatorDialog* curveCalculatorDialog();
static void hideCurveCalculatorDialog();
protected:
virtual bool isCommandEnabled() override;
virtual void onActionTriggered( bool isChecked ) override;

View File

@ -17,6 +17,7 @@
/////////////////////////////////////////////////////////////////////////////////
#include "RicSummaryCurveCalculatorDialog.h"
#include "RicSummaryCurveCalculator.h"
#include "RicSummaryCurveCalculatorEditor.h"
@ -45,9 +46,11 @@ RicSummaryCurveCalculatorDialog::~RicSummaryCurveCalculatorDialog()
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RicSummaryCurveCalculator* RicSummaryCurveCalculatorDialog::calculator() const
void RicSummaryCurveCalculatorDialog::setCalculationAndUpdateUi(RimSummaryCalculation* calculation)
{
return m_summaryCalcEditor->calculator();
m_summaryCalcEditor->calculator()->setCurrentCalculation(calculation);
m_summaryCalcEditor->updateUi();
}
//--------------------------------------------------------------------------------------------------

View File

@ -22,7 +22,7 @@
#include <memory>
class RicSummaryCurveCalculatorEditor;
class RicSummaryCurveCalculator;
class RimSummaryCalculation;
//==================================================================================================
///
@ -34,7 +34,7 @@ public:
RicSummaryCurveCalculatorDialog(QWidget* parent);
~RicSummaryCurveCalculatorDialog();
RicSummaryCurveCalculator* calculator() const;
void setCalculationAndUpdateUi(RimSummaryCalculation* calculation);
private:
void setUp();

View File

@ -62,6 +62,7 @@
#include "ExportCommands/RicSnapshotAllViewsToFileFeature.h"
#include "SummaryPlotCommands/RicEditSummaryPlotFeature.h"
#include "SummaryPlotCommands/RicShowSummaryCurveCalculatorFeature.h"
#include "cvfTimer.h"
@ -196,6 +197,8 @@ void RiuMainWindow::cleanupGuiCaseClose()
{
editSumCurves->closeDialogAndResetTargetPlot();
}
RicShowSummaryCurveCalculatorFeature::hideCurveCalculatorDialog();
}
//--------------------------------------------------------------------------------------------------