mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#5019 Add an enable separate results button to each intersection
This commit is contained in:
@@ -146,12 +146,23 @@ void RimIntersection::fieldChangedByUi( const caf::PdmFieldHandle* changedField,
|
||||
const QVariant& oldValue,
|
||||
const QVariant& newValue )
|
||||
{
|
||||
if ( changedField == &m_isActive || changedField == &type || changedField == &direction || changedField == &wellPath ||
|
||||
changedField == &simulationWell || changedField == &m_branchIndex || changedField == &m_extentLength ||
|
||||
changedField == &m_lengthUp || changedField == &m_lengthDown || changedField == &m_showInactiveCells )
|
||||
// clang-format off
|
||||
if ( changedField == &m_isActive ||
|
||||
changedField == &type ||
|
||||
changedField == &direction ||
|
||||
changedField == &wellPath ||
|
||||
changedField == &simulationWell ||
|
||||
changedField == &m_branchIndex ||
|
||||
changedField == &m_extentLength ||
|
||||
changedField == &m_lengthUp ||
|
||||
changedField == &m_lengthDown ||
|
||||
changedField == &m_showInactiveCells ||
|
||||
changedField == &m_useSeparateDataSource ||
|
||||
changedField == &m_separateDataSource )
|
||||
{
|
||||
rebuildGeometryAndScheduleCreateDisplayModel();
|
||||
}
|
||||
// clang-format on
|
||||
|
||||
if ( changedField == &simulationWell || changedField == &m_isActive || changedField == &type )
|
||||
{
|
||||
@@ -931,4 +942,3 @@ double RimIntersection::azimuthInRadians( cvf::Vec3d vec )
|
||||
{
|
||||
return cvf::GeometryTools::getAngle( -cvf::Vec3d::Z_AXIS, cvf::Vec3d::Y_AXIS, vec );
|
||||
}
|
||||
|
||||
|
||||
@@ -42,6 +42,7 @@ RimIntersectionHandle::RimIntersectionHandle()
|
||||
CAF_PDM_InitField( &m_isActive, "Active", true, "Active", "", "", "" );
|
||||
m_isActive.uiCapability()->setUiHidden( true );
|
||||
CAF_PDM_InitField( &m_showInactiveCells, "ShowInactiveCells", false, "Show Inactive Cells", "", "", "" );
|
||||
CAF_PDM_InitField( &m_useSeparateDataSource, "UseSeparateIntersectionDataSource", true, "Enable", "", "", "" );
|
||||
CAF_PDM_InitFieldNoDefault( &m_separateDataSource, "SeparateIntersectionDataSource", "Source", "", "", "" );
|
||||
}
|
||||
|
||||
@@ -97,6 +98,8 @@ RimIntersectionResultDefinition* RimIntersectionHandle::activeSeparateResultDefi
|
||||
{
|
||||
updateDefaultSeparateDataSource();
|
||||
|
||||
if ( !m_useSeparateDataSource ) return nullptr;
|
||||
|
||||
if ( !m_separateDataSource ) return nullptr;
|
||||
|
||||
if ( !m_separateDataSource->isActive() ) return nullptr;
|
||||
@@ -125,8 +128,6 @@ QList<caf::PdmOptionItemInfo>
|
||||
std::vector<RimIntersectionResultDefinition*> iResDefs =
|
||||
view->separateIntersectionResultsCollection()->intersectionResultsDefinitions();
|
||||
|
||||
options.push_back( caf::PdmOptionItemInfo( "None", nullptr ) );
|
||||
|
||||
for ( auto iresdef : iResDefs )
|
||||
{
|
||||
options.push_back( caf::PdmOptionItemInfo( iresdef->autoName(), iresdef ) );
|
||||
@@ -170,9 +171,12 @@ void RimIntersectionHandle::defineSeparateDataSourceUi( QString uiConfigName, ca
|
||||
inactiveText = " (Inactive)";
|
||||
}
|
||||
|
||||
caf::PdmUiGroup* separateResultsGroup = uiOrdering.addNewGroup( "Separate Data Source Reference" + inactiveText );
|
||||
caf::PdmUiGroup* separateResultsGroup = uiOrdering.addNewGroup( "Separate Result Reference" + inactiveText );
|
||||
separateResultsGroup->setCollapsedByDefault( true );
|
||||
separateResultsGroup->add( &m_useSeparateDataSource );
|
||||
separateResultsGroup->add( &m_separateDataSource );
|
||||
m_separateDataSource.uiCapability()->setUiReadOnly( !m_useSeparateDataSource() );
|
||||
|
||||
m_separateDataSource.uiCapability()->setUiName( "Source" + inactiveText );
|
||||
}
|
||||
|
||||
|
||||
@@ -57,5 +57,6 @@ protected:
|
||||
caf::PdmField<QString> m_name;
|
||||
caf::PdmField<bool> m_isActive;
|
||||
caf::PdmField<bool> m_showInactiveCells;
|
||||
caf::PdmField<bool> m_useSeparateDataSource;
|
||||
caf::PdmPtrField<RimIntersectionResultDefinition*> m_separateDataSource;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user