mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#4371 Store Sector Model settings in Project Dialog Data
This commit is contained in:
parent
8ce9f63487
commit
f567be6d96
@ -28,11 +28,13 @@
|
||||
#include "RifReaderEclipseOutput.h"
|
||||
|
||||
#include "Rim3dView.h"
|
||||
#include "RimDialogData.h"
|
||||
#include "RimEclipseCase.h"
|
||||
#include "RimEclipseCellColors.h"
|
||||
#include "RimEclipseView.h"
|
||||
#include "RimFaultInView.h"
|
||||
#include "RimFaultInViewCollection.h"
|
||||
#include "RimProject.h"
|
||||
|
||||
#include "RigEclipseCaseData.h"
|
||||
#include "RigMainGrid.h"
|
||||
@ -66,22 +68,20 @@ void RicExportEclipseSectorModelFeature::openDialogAndExecuteCommand(RimEclipseV
|
||||
cvf::Vec3i min, max;
|
||||
std::tie(min, max) = getVisibleCellRange(view, cellVisibility);
|
||||
|
||||
RicExportEclipseSectorModelUi exportSettings(caseData, min, max);
|
||||
RicExportEclipseSectorModelUi* exportSettings = RiaApplication::instance()->project()->dialogData()->exportSectorModelUi();
|
||||
exportSettings->setCaseData(caseData, min, max);
|
||||
|
||||
caf::PdmSettings::readFieldsFromApplicationStore(&exportSettings);
|
||||
exportSettings.applyBoundaryDefaults();
|
||||
exportSettings.removeInvalidKeywords();
|
||||
exportSettings->applyBoundaryDefaults();
|
||||
exportSettings->removeInvalidKeywords();
|
||||
|
||||
RiuPropertyViewTabWidget propertyDialog(Riu3DMainWindowTools::mainWindowWidget(), &exportSettings, "Export Eclipse Sector Model", exportSettings.tabNames());
|
||||
RiuPropertyViewTabWidget propertyDialog(Riu3DMainWindowTools::mainWindowWidget(), exportSettings, "Export Eclipse Sector Model", exportSettings->tabNames());
|
||||
|
||||
RicExportFeatureImpl::configureForExport(propertyDialog.dialogButtonBox());
|
||||
|
||||
if (propertyDialog.exec() == QDialog::Accepted)
|
||||
{
|
||||
executeCommand(view, exportSettings, "ExportInputGrid");
|
||||
executeCommand(view, *exportSettings, "ExportInputGrid");
|
||||
}
|
||||
|
||||
caf::PdmSettings::writeFieldsToApplicationStore(&exportSettings);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
@ -69,12 +69,7 @@ void RicExportEclipseSectorModelUi::GridBoxSelectionEnum::setUp()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
RicExportEclipseSectorModelUi::RicExportEclipseSectorModelUi(RigEclipseCaseData* caseData /*= nullptr*/,
|
||||
const cvf::Vec3i& visibleMin /*= cvf::Vec3i::ZERO*/,
|
||||
const cvf::Vec3i& visibleMax /*= cvf::Vec3i::ZERO*/)
|
||||
: m_caseData(caseData)
|
||||
, m_visibleMin(visibleMin)
|
||||
, m_visibleMax(visibleMax)
|
||||
RicExportEclipseSectorModelUi::RicExportEclipseSectorModelUi()
|
||||
{
|
||||
CAF_PDM_InitObject("Export Visible Cells as Eclipse Input Grid", "", "", "");
|
||||
|
||||
@ -87,16 +82,16 @@ RicExportEclipseSectorModelUi::RicExportEclipseSectorModelUi(RigEclipseCaseData*
|
||||
CAF_PDM_InitFieldNoDefault(&exportGridBox, "GridBoxSelection", "Cells to Export", "", "", "");
|
||||
|
||||
QString minIJKLabel = "Min I, J, K";
|
||||
CAF_PDM_InitField(&minI, "MinI", m_visibleMin.x() + 1, minIJKLabel, "", "", "");
|
||||
CAF_PDM_InitField(&minJ, "MinJ", m_visibleMin.y() + 1, "", "", "", "");
|
||||
CAF_PDM_InitField(&minI, "MinI", std::numeric_limits<int>::max(), minIJKLabel, "", "", "");
|
||||
CAF_PDM_InitField(&minJ, "MinJ", std::numeric_limits<int>::max(), "", "", "", "");
|
||||
minJ.uiCapability()->setUiLabelPosition(caf::PdmUiItemInfo::HIDDEN);
|
||||
CAF_PDM_InitField(&minK, "MinK", m_visibleMin.z() + 1, "", "", "", "");
|
||||
CAF_PDM_InitField(&minK, "MinK", std::numeric_limits<int>::max(), "", "", "", "");
|
||||
minK.uiCapability()->setUiLabelPosition(caf::PdmUiItemInfo::HIDDEN);
|
||||
QString maxIJKLabel = "Max I, J, K";
|
||||
CAF_PDM_InitField(&maxI, "MaxI", m_visibleMax.x() + 1, maxIJKLabel, "", "", "");
|
||||
CAF_PDM_InitField(&maxJ, "MaxJ", m_visibleMax.y() + 1, "", "", "", "");
|
||||
CAF_PDM_InitField(&maxI, "MaxI", -std::numeric_limits<int>::max(), maxIJKLabel, "", "", "");
|
||||
CAF_PDM_InitField(&maxJ, "MaxJ", -std::numeric_limits<int>::max(), "", "", "", "");
|
||||
maxJ.uiCapability()->setUiLabelPosition(caf::PdmUiItemInfo::HIDDEN);
|
||||
CAF_PDM_InitField(&maxK, "MaxK", m_visibleMax.z() + 1, "", "", "", "");
|
||||
CAF_PDM_InitField(&maxK, "MaxK", -std::numeric_limits<int>::max(), "", "", "", "");
|
||||
maxK.uiCapability()->setUiLabelPosition(caf::PdmUiItemInfo::HIDDEN);
|
||||
|
||||
CAF_PDM_InitFieldNoDefault(&exportFaults, "ExportFaults", "Export Fault Data", "", "", "");
|
||||
@ -120,13 +115,6 @@ RicExportEclipseSectorModelUi::RicExportEclipseSectorModelUi(RigEclipseCaseData*
|
||||
exportParametersFilename = defaultResultsFileName();
|
||||
exportFaultsFilename = defaultFaultsFileName();
|
||||
|
||||
for (QString keyword : mainKeywords())
|
||||
{
|
||||
if (caseData && caseData->results(RiaDefines::MATRIX_MODEL)->hasResultEntry(RigEclipseResultAddress(RiaDefines::STATIC_NATIVE, keyword)))
|
||||
{
|
||||
selectedKeywords.v().push_back(keyword);
|
||||
}
|
||||
}
|
||||
m_tabNames << "Grid Data";
|
||||
m_tabNames << "Parameters";
|
||||
}
|
||||
@ -146,6 +134,57 @@ const QStringList& RicExportEclipseSectorModelUi::tabNames() const
|
||||
return m_tabNames;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RicExportEclipseSectorModelUi::setCaseData(RigEclipseCaseData* caseData /*= nullptr*/,
|
||||
const cvf::Vec3i& visibleMin /*= cvf::Vec3i::ZERO*/,
|
||||
const cvf::Vec3i& visibleMax /*= cvf::Vec3i::ZERO*/)
|
||||
{
|
||||
m_caseData = caseData;
|
||||
m_visibleMin = visibleMin;
|
||||
m_visibleMax = visibleMax;
|
||||
|
||||
if (minI == std::numeric_limits<int>::max())
|
||||
minI = m_visibleMin.x() + 1;
|
||||
if (minJ == std::numeric_limits<int>::max())
|
||||
minJ = m_visibleMin.y() + 1;
|
||||
if (minK == std::numeric_limits<int>::max())
|
||||
minK = m_visibleMin.z() + 1;
|
||||
|
||||
if (maxI == -std::numeric_limits<int>::max())
|
||||
maxI = m_visibleMax.x() + 1;
|
||||
if (maxJ == std::numeric_limits<int>::max())
|
||||
maxJ = m_visibleMax.y() + 1;
|
||||
if (maxK == std::numeric_limits<int>::max())
|
||||
maxK = m_visibleMax.z() + 1;
|
||||
|
||||
if (selectedKeywords.v().empty())
|
||||
{
|
||||
for (QString keyword : mainKeywords())
|
||||
{
|
||||
if (caseData && caseData->results(RiaDefines::MATRIX_MODEL)
|
||||
->hasResultEntry(RigEclipseResultAddress(RiaDefines::STATIC_NATIVE, keyword)))
|
||||
{
|
||||
selectedKeywords.v().push_back(keyword);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
std::vector<QString> validSelectedKeywords;
|
||||
for (QString keyword : selectedKeywords())
|
||||
{
|
||||
if (caseData && caseData->results(RiaDefines::MATRIX_MODEL)
|
||||
->hasResultEntry(RigEclipseResultAddress(RiaDefines::STATIC_NATIVE, keyword)))
|
||||
{
|
||||
validSelectedKeywords.push_back(keyword);
|
||||
}
|
||||
}
|
||||
selectedKeywords.v() = validSelectedKeywords;
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
@ -60,12 +60,14 @@ class RicExportEclipseSectorModelUi : public caf::PdmObject
|
||||
typedef caf::AppEnum<GridBoxSelection> GridBoxSelectionEnum;
|
||||
|
||||
public:
|
||||
RicExportEclipseSectorModelUi(RigEclipseCaseData* caseData = nullptr,
|
||||
const cvf::Vec3i& visibleMin = cvf::Vec3i::ZERO,
|
||||
const cvf::Vec3i& visibleMax = cvf::Vec3i::ZERO);
|
||||
RicExportEclipseSectorModelUi();
|
||||
~RicExportEclipseSectorModelUi() override;
|
||||
const QStringList& tabNames() const;
|
||||
|
||||
void setCaseData(RigEclipseCaseData* caseData = nullptr,
|
||||
const cvf::Vec3i& visibleMin = cvf::Vec3i::ZERO,
|
||||
const cvf::Vec3i& visibleMax = cvf::Vec3i::ZERO);
|
||||
|
||||
cvf::Vec3i min() const;
|
||||
cvf::Vec3i max() const;
|
||||
void setMin(const cvf::Vec3i& min);
|
||||
|
@ -21,6 +21,7 @@
|
||||
#include "RimMockModelSettings.h"
|
||||
|
||||
#include "ExportCommands/RicExportCarfinUi.h"
|
||||
#include "ExportCommands/RicExportEclipseSectorModelUi.h"
|
||||
#include "CompletionExportCommands/RicExportCompletionDataSettingsUi.h"
|
||||
#include "FractureCommands/RicCreateMultipleFracturesUi.h"
|
||||
#include "HoloLensCommands/RicHoloLensExportToFolderUi.h"
|
||||
@ -54,6 +55,9 @@ RimDialogData::RimDialogData()
|
||||
CAF_PDM_InitFieldNoDefault(&m_exportLgrData, "ExportLgr", "LGR Export", "", "", "");
|
||||
m_exportLgrData = new RicExportLgrUi();
|
||||
|
||||
CAF_PDM_InitFieldNoDefault(&m_exportSectorModelData, "ExportSectorModel", "Export Sector Model", "", "", "");
|
||||
m_exportSectorModelData = new RicExportEclipseSectorModelUi();
|
||||
|
||||
CAF_PDM_InitFieldNoDefault(&m_mockModelSettings, "MockModelSettings", "Mock Model Settings", "", "", "");
|
||||
m_mockModelSettings = new RimMockModelSettings();
|
||||
}
|
||||
@ -131,6 +135,14 @@ RicExportLgrUi* RimDialogData::exportLgrData() const
|
||||
return m_exportLgrData;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
RicExportEclipseSectorModelUi* RimDialogData::exportSectorModelUi() const
|
||||
{
|
||||
return m_exportSectorModelData;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
@ -23,6 +23,7 @@
|
||||
|
||||
class RicExportCarfinUi;
|
||||
class RicExportCompletionDataSettingsUi;
|
||||
class RicExportEclipseSectorModelUi;
|
||||
class RiuCreateMultipleFractionsUi;
|
||||
class RicHoloLensExportToFolderUi;
|
||||
class RicExportWellPathsUi;
|
||||
@ -54,11 +55,12 @@ public:
|
||||
|
||||
RicExportCompletionDataSettingsUi* exportCompletionData() const;
|
||||
|
||||
RiuCreateMultipleFractionsUi* multipleFractionsData() const;
|
||||
RicHoloLensExportToFolderUi* holoLensExportToFolderData() const;
|
||||
RicExportWellPathsUi* wellPathsExportData() const;
|
||||
RicExportLgrUi* exportLgrData() const;
|
||||
RimMockModelSettings* mockModelSettings() const;
|
||||
RiuCreateMultipleFractionsUi* multipleFractionsData() const;
|
||||
RicHoloLensExportToFolderUi* holoLensExportToFolderData() const;
|
||||
RicExportWellPathsUi* wellPathsExportData() const;
|
||||
RicExportLgrUi* exportLgrData() const;
|
||||
RicExportEclipseSectorModelUi* exportSectorModelUi() const;
|
||||
RimMockModelSettings* mockModelSettings() const;
|
||||
|
||||
private:
|
||||
caf::PdmChildField<RicExportCarfinUi*> m_exportCarfin;
|
||||
@ -67,5 +69,6 @@ private:
|
||||
caf::PdmChildField<RicHoloLensExportToFolderUi*> m_holoLenseExportToFolderData;
|
||||
caf::PdmChildField<RicExportWellPathsUi*> m_exportWellPathsData;
|
||||
caf::PdmChildField<RicExportLgrUi*> m_exportLgrData;
|
||||
caf::PdmChildField<RicExportEclipseSectorModelUi*> m_exportSectorModelData;
|
||||
caf::PdmChildField<RimMockModelSettings*> m_mockModelSettings;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user