Memory Management : Adjustment and fixes

Add release of several static singleton objects
Fix several minor memory leaks
This commit is contained in:
Magne Sjaastad
2022-03-03 10:15:32 +01:00
parent 7a2a297648
commit 0e57cfe201
36 changed files with 441 additions and 141 deletions

View File

@@ -70,7 +70,7 @@ void RicEditSummaryCurveCalculationFeature::onActionTriggered( bool isChecked )
}
}
RicSummaryCurveCalculatorDialog* dialog = RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog();
RicSummaryCurveCalculatorDialog* dialog = RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog( true );
dialog->setCalculationAndUpdateUi( calculation );
dialog->show();
dialog->raise();

View File

@@ -50,7 +50,7 @@ RicEditSummaryPlotFeature::RicEditSummaryPlotFeature()
//--------------------------------------------------------------------------------------------------
void RicEditSummaryPlotFeature::closeDialogAndResetTargetPlot()
{
auto dialog = RicEditSummaryPlotFeature::curveCreatorDialog();
auto dialog = RicEditSummaryPlotFeature::curveCreatorDialog( false );
if ( dialog )
{
@@ -65,13 +65,13 @@ void RicEditSummaryPlotFeature::closeDialogAndResetTargetPlot()
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RicSummaryPlotEditorDialog* RicEditSummaryPlotFeature::curveCreatorDialog()
RicSummaryPlotEditorDialog* RicEditSummaryPlotFeature::curveCreatorDialog( bool createIfNotPresent )
{
RiuPlotMainWindow* mainPlotWindow = RiaGuiApplication::instance()->mainPlotWindow();
if ( mainPlotWindow )
{
return mainPlotWindow->summaryCurveCreatorDialog();
return mainPlotWindow->summaryCurveCreatorDialog( createIfNotPresent );
}
return nullptr;
@@ -82,7 +82,7 @@ RicSummaryPlotEditorDialog* RicEditSummaryPlotFeature::curveCreatorDialog()
//--------------------------------------------------------------------------------------------------
void RicEditSummaryPlotFeature::editSummaryPlot( RimSummaryPlot* plot )
{
auto dialog = RicEditSummaryPlotFeature::curveCreatorDialog();
auto dialog = RicEditSummaryPlotFeature::curveCreatorDialog( true );
if ( !dialog->isVisible() )
{

View File

@@ -34,7 +34,7 @@ class RicEditSummaryPlotFeature : public caf::CmdFeature
public:
void closeDialogAndResetTargetPlot();
static RicSummaryPlotEditorDialog* curveCreatorDialog();
static RicSummaryPlotEditorDialog* curveCreatorDialog( bool createIfNotPresent );
static void editSummaryPlot( RimSummaryPlot* plot );
protected:

View File

@@ -123,7 +123,7 @@ void RicNewSummaryPlotFeature::onActionTriggered( bool isChecked )
}
}
auto dialog = RicEditSummaryPlotFeature::curveCreatorDialog();
auto dialog = RicEditSummaryPlotFeature::curveCreatorDialog( true );
if ( !dialog->isVisible() )
{

View File

@@ -34,13 +34,13 @@ CAF_CMD_SOURCE_INIT( RicShowSummaryCurveCalculatorFeature, "RicShowSummaryCurveC
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RicSummaryCurveCalculatorDialog* RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog()
RicSummaryCurveCalculatorDialog* RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog( bool createIfNotPresent )
{
RiuPlotMainWindow* mainPlotWindow = RiaGuiApplication::instance()->mainPlotWindow();
if ( mainPlotWindow )
{
return mainPlotWindow->summaryCurveCalculatorDialog();
return mainPlotWindow->summaryCurveCalculatorDialog( createIfNotPresent );
}
return nullptr;
@@ -51,9 +51,8 @@ RicSummaryCurveCalculatorDialog* RicShowSummaryCurveCalculatorFeature::curveCalc
//--------------------------------------------------------------------------------------------------
void RicShowSummaryCurveCalculatorFeature::hideCurveCalculatorDialog()
{
auto dialog = RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog();
dialog->hide();
auto dialog = RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog( false );
if ( dialog ) dialog->hide();
}
//--------------------------------------------------------------------------------------------------
@@ -74,7 +73,7 @@ bool RicShowSummaryCurveCalculatorFeature::isCommandEnabled()
//--------------------------------------------------------------------------------------------------
void RicShowSummaryCurveCalculatorFeature::onActionTriggered( bool isChecked )
{
RicSummaryCurveCalculatorDialog* dialog = RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog();
RicSummaryCurveCalculatorDialog* dialog = RicShowSummaryCurveCalculatorFeature::curveCalculatorDialog( true );
RimProject* proj = RimProject::current();
RimSummaryCalculationCollection* calcColl = proj->calculationCollection();

View File

@@ -30,7 +30,7 @@ class RicShowSummaryCurveCalculatorFeature : public caf::CmdFeature
CAF_CMD_HEADER_INIT;
public:
static RicSummaryCurveCalculatorDialog* curveCalculatorDialog();
static RicSummaryCurveCalculatorDialog* curveCalculatorDialog( bool createIfNotPresent );
static void hideCurveCalculatorDialog();
protected:

View File

@@ -55,6 +55,7 @@ RicSummaryPlotEditorDialog::RicSummaryPlotEditorDialog( QWidget* parent )
RicSummaryPlotEditorDialog::~RicSummaryPlotEditorDialog()
{
m_curveCreatorSplitterUi->setPdmObject( nullptr );
delete m_curveCreatorSplitterUi;
}
//--------------------------------------------------------------------------------------------------