mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Snapshot : Set fields read only based on state of other fields
This commit is contained in:
@@ -74,7 +74,6 @@ RimMultiSnapshotDefinition::RimMultiSnapshotDefinition()
|
|||||||
CAF_PDM_InitFieldNoDefault(&additionalCases, "AdditionalCases", "Case List", "", "", "");
|
CAF_PDM_InitFieldNoDefault(&additionalCases, "AdditionalCases", "Case List", "", "", "");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@@ -241,3 +240,57 @@ QList<caf::PdmOptionItemInfo> RimMultiSnapshotDefinition::toOptionList(const QSt
|
|||||||
}
|
}
|
||||||
return optionList;
|
return optionList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RimMultiSnapshotDefinition::defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering)
|
||||||
|
{
|
||||||
|
if (!isActive())
|
||||||
|
{
|
||||||
|
view.uiCapability()->setUiReadOnly(true);
|
||||||
|
eclipseResultType.uiCapability()->setUiReadOnly(true);
|
||||||
|
selectedEclipseResults.uiCapability()->setUiReadOnly(true);
|
||||||
|
timeStepStart.uiCapability()->setUiReadOnly(true);
|
||||||
|
timeStepEnd.uiCapability()->setUiReadOnly(true);
|
||||||
|
sliceDirection.uiCapability()->setUiReadOnly(true);
|
||||||
|
startSliceIndex.uiCapability()->setUiReadOnly(true);
|
||||||
|
endSliceIndex.uiCapability()->setUiReadOnly(true);
|
||||||
|
additionalCases.uiCapability()->setUiReadOnly(true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
view.uiCapability()->setUiReadOnly(false);
|
||||||
|
|
||||||
|
if (!view())
|
||||||
|
{
|
||||||
|
eclipseResultType.uiCapability()->setUiReadOnly(true);
|
||||||
|
selectedEclipseResults.uiCapability()->setUiReadOnly(true);
|
||||||
|
timeStepStart.uiCapability()->setUiReadOnly(true);
|
||||||
|
timeStepEnd.uiCapability()->setUiReadOnly(true);
|
||||||
|
sliceDirection.uiCapability()->setUiReadOnly(true);
|
||||||
|
startSliceIndex.uiCapability()->setUiReadOnly(true);
|
||||||
|
endSliceIndex.uiCapability()->setUiReadOnly(true);
|
||||||
|
additionalCases.uiCapability()->setUiReadOnly(true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
eclipseResultType.uiCapability()->setUiReadOnly(false);
|
||||||
|
selectedEclipseResults.uiCapability()->setUiReadOnly(false);
|
||||||
|
timeStepStart.uiCapability()->setUiReadOnly(false);
|
||||||
|
timeStepEnd.uiCapability()->setUiReadOnly(false);
|
||||||
|
sliceDirection.uiCapability()->setUiReadOnly(false);
|
||||||
|
|
||||||
|
additionalCases.uiCapability()->setUiReadOnly(false);
|
||||||
|
|
||||||
|
bool rangeReadOnly = false;
|
||||||
|
if (sliceDirection() == NO_RANGEFILTER)
|
||||||
|
{
|
||||||
|
rangeReadOnly = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
startSliceIndex.uiCapability()->setUiReadOnly(rangeReadOnly);
|
||||||
|
endSliceIndex.uiCapability()->setUiReadOnly(rangeReadOnly);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -40,13 +40,13 @@ public:
|
|||||||
RimMultiSnapshotDefinition();
|
RimMultiSnapshotDefinition();
|
||||||
virtual ~RimMultiSnapshotDefinition();
|
virtual ~RimMultiSnapshotDefinition();
|
||||||
|
|
||||||
|
caf::PdmField<bool> isActive;
|
||||||
|
|
||||||
caf::PdmPtrField<RimView*> view;
|
caf::PdmPtrField<RimView*> view;
|
||||||
|
|
||||||
caf::PdmField< caf::AppEnum< RimDefines::ResultCatType > > eclipseResultType;
|
caf::PdmField< caf::AppEnum< RimDefines::ResultCatType > > eclipseResultType;
|
||||||
caf::PdmField< std::vector<QString> > selectedEclipseResults;
|
caf::PdmField< std::vector<QString> > selectedEclipseResults;
|
||||||
|
|
||||||
caf::PdmField<bool> isActive;
|
|
||||||
|
|
||||||
caf::PdmField<int> timeStepStart;
|
caf::PdmField<int> timeStepStart;
|
||||||
caf::PdmField<int> timeStepEnd;
|
caf::PdmField<int> timeStepEnd;
|
||||||
|
|
||||||
@@ -64,6 +64,9 @@ public:
|
|||||||
|
|
||||||
caf::PdmPtrArrayField<RimCase*> additionalCases;
|
caf::PdmPtrArrayField<RimCase*> additionalCases;
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual void defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual QList<caf::PdmOptionItemInfo> calculateValueOptions(const caf::PdmFieldHandle* fieldNeedingOptions, bool * useOptionsOnly) override;
|
virtual QList<caf::PdmOptionItemInfo> calculateValueOptions(const caf::PdmFieldHandle* fieldNeedingOptions, bool * useOptionsOnly) override;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user