Merge pull request #5021 from OPM/improve-default-flow-diag-plots

#5020 Flow Diag : Improve default initialization of plots
This commit is contained in:
Magne Sjaastad 2019-11-08 15:25:35 +01:00 committed by GitHub
commit 585a496db7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 51 additions and 11 deletions

View File

@ -144,14 +144,6 @@ void RimFlowPlotCollection::addFlowCharacteristicsPlotToStoredPlots( RimFlowChar
//--------------------------------------------------------------------------------------------------
RimWellAllocationPlot* RimFlowPlotCollection::defaultWellAllocPlot()
{
if ( !m_defaultWellAllocPlot() )
{
m_defaultWellAllocPlot = new RimWellAllocationPlot;
m_defaultWellAllocPlot->setDescription( "Default Flow Diagnostics Plot" );
}
this->updateConnectedEditors();
return m_defaultWellAllocPlot();
}
@ -160,12 +152,32 @@ RimWellAllocationPlot* RimFlowPlotCollection::defaultWellAllocPlot()
//--------------------------------------------------------------------------------------------------
RimFlowCharacteristicsPlot* RimFlowPlotCollection::defaultFlowCharacteristicsPlot()
{
return m_flowCharacteristicsPlot();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimFlowPlotCollection::ensureDefaultPlotsAreCreated()
{
bool isUpdateRequired = false;
if ( !m_flowCharacteristicsPlot() )
{
m_flowCharacteristicsPlot = new RimFlowCharacteristicsPlot;
isUpdateRequired = true;
}
this->updateConnectedEditors();
if ( !m_defaultWellAllocPlot() )
{
m_defaultWellAllocPlot = new RimWellAllocationPlot;
m_defaultWellAllocPlot->setDescription( "Default Flow Diagnostics Plot" );
return m_flowCharacteristicsPlot();
isUpdateRequired = true;
}
if ( isUpdateRequired )
{
this->updateConnectedEditors();
}
}

View File

@ -46,6 +46,8 @@ public:
RimWellAllocationPlot* defaultWellAllocPlot();
RimFlowCharacteristicsPlot* defaultFlowCharacteristicsPlot();
void ensureDefaultPlotsAreCreated();
private:
caf::PdmChildField<RimFlowCharacteristicsPlot*> m_flowCharacteristicsPlot;
caf::PdmChildField<RimWellAllocationPlot*> m_defaultWellAllocPlot;

View File

@ -127,6 +127,8 @@ RimWellAllocationPlot::RimWellAllocationPlot()
{RimWellLogPlot::CONNECTION_NUMBER, RimWellLogPlot::TRUE_VERTICAL_DEPTH, RimWellLogPlot::PSEUDO_LENGTH} );
m_accumulatedWellFlowPlot->setCommonDataSourceEnabled( false );
m_showWindow = false;
}
//--------------------------------------------------------------------------------------------------
@ -168,6 +170,8 @@ void RimWellAllocationPlot::setFromSimulationWell( RimSimWellInView* simWell )
m_flowDiagSolution = m_case->defaultFlowDiagSolution();
}
m_showWindow = true;
onLoadDataAndUpdate();
}
@ -647,6 +651,11 @@ QList<caf::PdmOptionItemInfo>
{
options.push_back( caf::PdmOptionItemInfo( timeStepNames[i], i ) );
}
if ( options.size() == 0 )
{
options.push_front( caf::PdmOptionItemInfo( "None", -1 ) );
}
}
else if ( fieldNeedingOptions == &m_case )
{

View File

@ -299,3 +299,11 @@ void RimMainPlotCollection::deleteAllCachedData()
m_rftPlotCollection()->deleteAllExtractors();
m_pltPlotCollection()->deleteAllExtractors();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimMainPlotCollection::ensureDefaultFlowPlotsAreCreated()
{
m_flowPlotCollection()->ensureDefaultPlotsAreCreated();
}

View File

@ -67,6 +67,8 @@ public:
void updatePlotsWithCompletions();
void deleteAllCachedData();
void ensureDefaultFlowPlotsAreCreated();
private:
// Overridden PDM methods
caf::PdmFieldHandle* objectToggleField() override;

View File

@ -24,6 +24,7 @@
#include "RiaSummaryTools.h"
#include "RimEnsembleCurveSetCollection.h"
#include "RimMainPlotCollection.h"
#include "RimProject.h"
#include "RimSummaryCaseMainCollection.h"
#include "RimSummaryCurveCollection.h"
@ -98,7 +99,8 @@ QString RiuPlotMainWindow::mainWindowName()
//--------------------------------------------------------------------------------------------------
void RiuPlotMainWindow::initializeGuiNewProjectLoaded()
{
setPdmRoot( RiaApplication::instance()->project() );
auto project = RiaApplication::instance()->project();
setPdmRoot( project );
restoreTreeViewState();
if ( m_pdmUiPropertyView && m_pdmUiPropertyView->currentObject() )
@ -140,6 +142,11 @@ void RiuPlotMainWindow::initializeGuiNewProjectLoaded()
}
refreshToolbars();
if ( project && project->mainPlotCollection() )
{
project->mainPlotCollection()->ensureDefaultFlowPlotsAreCreated();
}
}
//--------------------------------------------------------------------------------------------------