Fault result: Added custom result to fault result project model

This commit is contained in:
Magne Sjaastad 2014-07-30 14:26:39 +02:00
parent 0d6c6f2785
commit 710b9392ec
4 changed files with 77 additions and 1 deletions

View File

@ -40,6 +40,7 @@
#include "RimOilField.h"
#include "RimAnalysisModels.h"
#include "RimFaultCollection.h"
#include "RimFaultResultSlot.h"
#include "cafCeetronNavigation.h"
#include "cafCadNavigation.h"
@ -649,6 +650,9 @@ bool RiaApplication::openEclipseCase(const QString& caseName, const QString& cas
riv->cellResult()->setResultVariable(RimDefines::undefinedResultName());
}
riv->cellFaultResult()->customResultSlot()->setResultVariable(RimDefines::undefinedResultName());
RimUiTreeModelPdm* uiModel = RiuMainWindow::instance()->uiPdmModel();
uiModel->updateUiSubTree(analysisModels);

View File

@ -18,6 +18,11 @@
#include "RimFaultResultSlot.h"
#include "RimReservoirView.h"
#include "RimResultSlot.h"
#include "RiuMainWindow.h"
#include "RimUiTreeModelPdm.h"
namespace caf
{
@ -42,6 +47,10 @@ RimFaultResultSlot::RimFaultResultSlot()
CAF_PDM_InitField(&visualizationMode, "VisualizationMode", caf::AppEnum<RimFaultResultSlot::FaultVisualizationMode>(RimFaultResultSlot::CELL_RESULT_MAPPING), "Fault Color Mapping", "", "", "");
CAF_PDM_InitFieldNoDefault(&customResultSlot, "CustomResultSlot", "Custom Cell Result", ":/CellResult.png", "", "");
customResultSlot = new RimResultSlot();
updateVisibility();
}
//--------------------------------------------------------------------------------------------------
@ -51,3 +60,49 @@ RimFaultResultSlot::~RimFaultResultSlot()
{
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimFaultResultSlot::setReservoirView(RimReservoirView* ownerReservoirView)
{
customResultSlot->setReservoirView(ownerReservoirView);
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimFaultResultSlot::fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue)
{
if (changedField == &visualizationMode)
{
updateVisibility();
RiuMainWindow::instance()->uiPdmModel()->updateUiSubTree(this);
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimFaultResultSlot::initAfterRead()
{
updateVisibility();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimFaultResultSlot::updateVisibility()
{
if (this->visualizationMode() == FAULT_COLOR || this->visualizationMode() == CELL_RESULT_MAPPING)
{
this->customResultSlot.setUiHidden(true);
this->customResultSlot.setUiChildrenHidden(true);
}
else
{
this->customResultSlot.setUiHidden(false);
this->customResultSlot.setUiChildrenHidden(false);
}
}

View File

@ -22,6 +22,9 @@
#include "cafPdmField.h"
#include "cafPdmObject.h"
class RimResultSlot;
class RimReservoirView;
//==================================================================================================
///
///
@ -41,6 +44,17 @@ public:
RimFaultResultSlot();
virtual ~RimFaultResultSlot();
void setReservoirView(RimReservoirView* ownerReservoirView);
caf::PdmField<RimResultSlot*> customResultSlot;
protected:
virtual void initAfterRead();
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue);
private:
void updateVisibility();
private:
caf::PdmField< caf::AppEnum< FaultVisualizationMode > > visualizationMode;
};

View File

@ -167,6 +167,8 @@ RimReservoirView::RimReservoirView()
this->cellEdgeResult()->legendConfig()->setPosition(cvf::Vec2ui(10, 320));
this->cellEdgeResult()->legendConfig()->setColorRangeMode(RimLegendConfig::PINK_WHITE);
this->cellFaultResult()->setReservoirView(this);
m_reservoirGridPartManager = new RivReservoirViewPartMgr(this);
m_pipesPartManager = new RivReservoirPipesPartMgr(this);
@ -180,6 +182,7 @@ RimReservoirView::RimReservoirView()
//--------------------------------------------------------------------------------------------------
RimReservoirView::~RimReservoirView()
{
delete this->cellFaultResult();
delete this->cellResult();
delete this->cellEdgeResult();
delete this->overlayInfoConfig();
@ -969,11 +972,11 @@ void RimReservoirView::loadDataAndUpdate()
//--------------------------------------------------------------------------------------------------
void RimReservoirView::initAfterRead()
{
this->cellFaultResult()->setReservoirView(this);
this->cellResult()->setReservoirView(this);
this->cellEdgeResult()->setReservoirView(this);
this->rangeFilterCollection()->setReservoirView(this);
this->propertyFilterCollection()->setReservoirView(this);
}
//--------------------------------------------------------------------------------------------------