mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#3254 MSW perforations export. Add MSW options to perforations collection class
This commit is contained in:
parent
43d90aa2e4
commit
f3e1dbe838
@ -25,6 +25,7 @@
|
||||
#include "RimEclipseCase.h"
|
||||
#include "RimPerforationInterval.h"
|
||||
#include "RimProject.h"
|
||||
#include "RimMswCompletionParameters.h"
|
||||
|
||||
#include "RigWellPath.h"
|
||||
|
||||
@ -47,6 +48,11 @@ RimPerforationCollection::RimPerforationCollection()
|
||||
|
||||
CAF_PDM_InitFieldNoDefault(&m_perforations, "Perforations", "Perforations", "", "", "");
|
||||
m_perforations.uiCapability()->setUiHidden(true);
|
||||
|
||||
CAF_PDM_InitFieldNoDefault(&m_mswParameters, "MswParameters", "Multi Segment Well Parameters", "", "", "");
|
||||
m_mswParameters = new RimMswCompletionParameters;
|
||||
m_mswParameters.uiCapability()->setUiTreeHidden(true);
|
||||
m_mswParameters.uiCapability()->setUiTreeChildrenHidden(true);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -57,6 +63,32 @@ RimPerforationCollection::~RimPerforationCollection()
|
||||
m_perforations.deleteAllChildObjects();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
const RimMswCompletionParameters* RimPerforationCollection::mswParameters() const
|
||||
{
|
||||
return m_mswParameters;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimPerforationCollection::setUnitSystemSpecificDefaults()
|
||||
{
|
||||
m_mswParameters->setUnitSystemSpecificDefaults();
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimPerforationCollection::defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering)
|
||||
{
|
||||
caf::PdmUiGroup* mswGroup = uiOrdering.addNewGroup("Multi Segment Well Options");
|
||||
m_mswParameters->uiOrdering(uiConfigName, *mswGroup);
|
||||
uiOrdering.skipRemainingFields(true);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
@ -22,10 +22,12 @@
|
||||
#include "RimCheckableNamedObject.h"
|
||||
|
||||
#include "cafPdmObject.h"
|
||||
#include "cafPdmChildField.h"
|
||||
#include "cafPdmChildArrayField.h"
|
||||
#include "cafPdmField.h"
|
||||
|
||||
class RimPerforationInterval;
|
||||
class RimMswCompletionParameters;
|
||||
|
||||
//==================================================================================================
|
||||
//
|
||||
@ -40,13 +42,18 @@ public:
|
||||
RimPerforationCollection();
|
||||
~RimPerforationCollection();
|
||||
|
||||
const RimMswCompletionParameters* mswParameters() const;
|
||||
void setUnitSystemSpecificDefaults();
|
||||
void appendPerforation(RimPerforationInterval* perforation);
|
||||
std::vector<const RimPerforationInterval*> perforations() const;
|
||||
|
||||
private:
|
||||
void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering) override;
|
||||
void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue);
|
||||
|
||||
friend class RiuEditPerforationCollectionWidget;
|
||||
|
||||
private:
|
||||
caf::PdmChildArrayField<RimPerforationInterval*> m_perforations;
|
||||
caf::PdmChildField<RimMswCompletionParameters*> m_mswParameters;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user