mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#2555 Handle import to separate cases
This commit is contained in:
parent
8889bdf6d4
commit
2a84cb6ddf
@ -31,7 +31,7 @@
|
|||||||
#include "RiaViewRedrawScheduler.h"
|
#include "RiaViewRedrawScheduler.h"
|
||||||
|
|
||||||
#include "RicImportInputEclipseCaseFeature.h"
|
#include "RicImportInputEclipseCaseFeature.h"
|
||||||
#include "RicImportSummaryCaseFeature.h"
|
#include "RicImportSummaryCasesFeature.h"
|
||||||
#include "ExportCommands/RicSnapshotAllViewsToFileFeature.h"
|
#include "ExportCommands/RicSnapshotAllViewsToFileFeature.h"
|
||||||
|
|
||||||
#include "Rim2dIntersectionViewCollection.h"
|
#include "Rim2dIntersectionViewCollection.h"
|
||||||
@ -1872,7 +1872,7 @@ bool RiaApplication::openFile(const QString& fileName)
|
|||||||
}
|
}
|
||||||
else if (fileName.contains(".smspec", Qt::CaseInsensitive))
|
else if (fileName.contains(".smspec", Qt::CaseInsensitive))
|
||||||
{
|
{
|
||||||
loadingSucceded = RicImportSummaryCaseFeature::createAndAddSummaryCaseFromFile(fileName);
|
loadingSucceded = RicImportSummaryCasesFeature::createAndAddSummaryCaseFromFileWithDialog(fileName);
|
||||||
if (loadingSucceded)
|
if (loadingSucceded)
|
||||||
{
|
{
|
||||||
getOrCreateAndShowMainPlotWindow();
|
getOrCreateAndShowMainPlotWindow();
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
#include "RiaApplication.h"
|
#include "RiaApplication.h"
|
||||||
#include "RiaPreferences.h"
|
#include "RiaPreferences.h"
|
||||||
|
|
||||||
#include "RicSummaryCaseRestartDialog.h"
|
#include "RicImportSummaryCasesFeature.h"
|
||||||
|
|
||||||
#include "RimGridSummaryCase.h"
|
#include "RimGridSummaryCase.h"
|
||||||
#include "RimMainPlotCollection.h"
|
#include "RimMainPlotCollection.h"
|
||||||
@ -61,15 +61,11 @@ void RicImportSummaryCaseFeature::onActionTriggered(bool isChecked)
|
|||||||
// Remember the path to next time
|
// Remember the path to next time
|
||||||
app->setLastUsedDialogDirectory("INPUT_FILES", QFileInfo(fileNames.last()).absolutePath());
|
app->setLastUsedDialogDirectory("INPUT_FILES", QFileInfo(fileNames.last()).absolutePath());
|
||||||
|
|
||||||
RimProject* proj = app->project();
|
if (fileNames.isEmpty()) return;
|
||||||
|
|
||||||
RimSummaryCaseMainCollection* sumCaseColl = proj->activeOilField() ? proj->activeOilField()->summaryCaseMainCollection() : nullptr;
|
std::vector<RicSummaryCaseFileInfo> fileInfos = RicImportSummaryCasesFeature::getFilesToImportWithDialog(fileNames, true);
|
||||||
if (!sumCaseColl) return;
|
|
||||||
|
|
||||||
for (auto f : fileNames)
|
RicImportSummaryCasesFeature::createAndAddSummaryCaseFromFileInfo(fileInfos);
|
||||||
{
|
|
||||||
RicImportSummaryCaseFeature::createAndAddSummaryCaseFromFile(f);
|
|
||||||
}
|
|
||||||
|
|
||||||
std::vector<RimCase*> cases;
|
std::vector<RimCase*> cases;
|
||||||
app->project()->allCases(cases);
|
app->project()->allCases(cases);
|
||||||
@ -88,34 +84,3 @@ void RicImportSummaryCaseFeature::setupActionLook(QAction* actionToSetup)
|
|||||||
actionToSetup->setIcon(QIcon(":/SummaryCase48x48.png"));
|
actionToSetup->setIcon(QIcon(":/SummaryCase48x48.png"));
|
||||||
actionToSetup->setText("Import Summary Case");
|
actionToSetup->setText("Import Summary Case");
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
///
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
bool RicImportSummaryCaseFeature::createAndAddSummaryCaseFromFile(const QString& fileName)
|
|
||||||
{
|
|
||||||
RiaApplication* app = RiaApplication::instance();
|
|
||||||
RimProject* proj = app->project();
|
|
||||||
RimSummaryCaseMainCollection* sumCaseColl = proj->activeOilField() ? proj->activeOilField()->summaryCaseMainCollection() : nullptr;
|
|
||||||
if (!sumCaseColl) return false;
|
|
||||||
|
|
||||||
RicSummaryCaseRestartDialogResult result = RicSummaryCaseRestartDialog::openDialog(fileName, false);
|
|
||||||
|
|
||||||
if (result.ok)
|
|
||||||
{
|
|
||||||
RimSummaryCase* sumCase = sumCaseColl->createAndAddSummaryCaseFromFileName(fileName, result.option == RicSummaryCaseRestartDialog::READ_ALL);
|
|
||||||
sumCaseColl->updateAllRequiredEditors();
|
|
||||||
|
|
||||||
RiuMainPlotWindow* mainPlotWindow = app->getOrCreateAndShowMainPlotWindow();
|
|
||||||
if (mainPlotWindow)
|
|
||||||
{
|
|
||||||
mainPlotWindow->selectAsCurrentItem(sumCase);
|
|
||||||
|
|
||||||
mainPlotWindow->updateSummaryPlotToolBar();
|
|
||||||
}
|
|
||||||
|
|
||||||
app->addToRecentFiles(fileName);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
@ -29,9 +29,6 @@ class RicImportSummaryCaseFeature : public caf::CmdFeature
|
|||||||
{
|
{
|
||||||
CAF_CMD_HEADER_INIT;
|
CAF_CMD_HEADER_INIT;
|
||||||
|
|
||||||
public:
|
|
||||||
static bool createAndAddSummaryCaseFromFile(const QString& fileName);
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// Overrides
|
// Overrides
|
||||||
virtual bool isCommandEnabled() override;
|
virtual bool isCommandEnabled() override;
|
||||||
|
@ -72,15 +72,9 @@ void RicImportSummaryCasesFeature::onActionTriggered(bool isChecked)
|
|||||||
QStringList fileNames = result.files;
|
QStringList fileNames = result.files;
|
||||||
if (fileNames.isEmpty()) return;
|
if (fileNames.isEmpty()) return;
|
||||||
|
|
||||||
RimProject* proj = app->project();
|
std::vector<RicSummaryCaseFileInfo> fileInfos = getFilesToImportWithDialog(fileNames, true);
|
||||||
RimSummaryCaseMainCollection* sumCaseColl = proj->activeOilField() ? proj->activeOilField()->summaryCaseMainCollection() : nullptr;
|
|
||||||
if (!sumCaseColl) return;
|
|
||||||
|
|
||||||
RicSummaryCaseRestartDialogResult savedDialogResult;
|
createAndAddSummaryCaseFromFileInfo(fileInfos);
|
||||||
for (auto f : fileNames)
|
|
||||||
{
|
|
||||||
RicImportSummaryCasesFeature::createAndAddSummaryCaseFromFile(f, &savedDialogResult);
|
|
||||||
}
|
|
||||||
|
|
||||||
std::vector<RimCase*> cases;
|
std::vector<RimCase*> cases;
|
||||||
app->project()->allCases(cases);
|
app->project()->allCases(cases);
|
||||||
@ -103,33 +97,84 @@ void RicImportSummaryCasesFeature::setupActionLook(QAction* actionToSetup)
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
bool RicImportSummaryCasesFeature::createAndAddSummaryCaseFromFile(const QString& fileName, RicSummaryCaseRestartDialogResult *savedDialogResult)
|
std::vector<RicSummaryCaseFileInfo> RicImportSummaryCasesFeature::getFilesToImportWithDialog(const QStringList& initialFiles,
|
||||||
|
bool enableApplyToAllField)
|
||||||
|
{
|
||||||
|
std::set<RicSummaryCaseFileInfo> filesToImport;
|
||||||
|
RicSummaryCaseRestartDialogResult lastResult;
|
||||||
|
|
||||||
|
for (const QString& file : initialFiles)
|
||||||
|
{
|
||||||
|
RicSummaryCaseRestartDialogResult result;
|
||||||
|
if (lastResult.applyToAll) result = lastResult;
|
||||||
|
else result = RicSummaryCaseRestartDialog::openDialog(file, enableApplyToAllField);
|
||||||
|
|
||||||
|
if (result.ok)
|
||||||
|
{
|
||||||
|
if(result.files.size() > 0) RiaApplication::instance()->addToRecentFiles(result.files.front());
|
||||||
|
|
||||||
|
for (const QString& file : result.files)
|
||||||
|
{
|
||||||
|
RicSummaryCaseFileInfo fi(file, result.option == RicSummaryCaseRestartDialog::READ_ALL);
|
||||||
|
if (filesToImport.count(fi) == 0)
|
||||||
|
{
|
||||||
|
filesToImport.insert(fi);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
lastResult = result;
|
||||||
|
}
|
||||||
|
return std::vector<RicSummaryCaseFileInfo>(filesToImport.begin(), filesToImport.end());
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
bool RicImportSummaryCasesFeature::createAndAddSummaryCaseFromFileInfo(const std::vector<RicSummaryCaseFileInfo>& fileInfos)
|
||||||
|
{
|
||||||
|
RiaApplication* app = RiaApplication::instance();
|
||||||
|
RimProject* proj = app->project();
|
||||||
|
RimSummaryCaseMainCollection* sumCaseColl = proj->activeOilField() ? proj->activeOilField()->summaryCaseMainCollection() : nullptr;
|
||||||
|
if (!sumCaseColl) return false;
|
||||||
|
|
||||||
|
for (const auto& fi : fileInfos)
|
||||||
|
{
|
||||||
|
createAndAddSummaryCaseFromFile(fi.fileName, fi.includeRestartFiles);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
bool RicImportSummaryCasesFeature::createAndAddSummaryCaseFromFileWithDialog(const QString& fileName)
|
||||||
|
{
|
||||||
|
QStringList fileNames({ fileName });
|
||||||
|
std::vector<RicSummaryCaseFileInfo> fileInfos = getFilesToImportWithDialog(fileNames, false);
|
||||||
|
bool res = createAndAddSummaryCaseFromFileInfo(fileInfos);
|
||||||
|
RiaApplication::instance()->addToRecentFiles(fileName);
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
bool RicImportSummaryCasesFeature::createAndAddSummaryCaseFromFile(const QString& fileName, bool includeRestartFiles)
|
||||||
{
|
{
|
||||||
RiaApplication* app = RiaApplication::instance();
|
RiaApplication* app = RiaApplication::instance();
|
||||||
RimProject* proj = app->project();
|
RimProject* proj = app->project();
|
||||||
RimSummaryCaseMainCollection* sumCaseColl = proj->activeOilField() ? proj->activeOilField()->summaryCaseMainCollection() : nullptr;
|
RimSummaryCaseMainCollection* sumCaseColl = proj->activeOilField() ? proj->activeOilField()->summaryCaseMainCollection() : nullptr;
|
||||||
if (!sumCaseColl) return false;
|
if (!sumCaseColl) return false;
|
||||||
|
|
||||||
RicSummaryCaseRestartDialogResult result;
|
RimSummaryCase* sumCase = sumCaseColl->createAndAddSummaryCaseFromFileName(fileName, includeRestartFiles);
|
||||||
if (savedDialogResult->applyToAll) result = *savedDialogResult;
|
sumCaseColl->updateAllRequiredEditors();
|
||||||
else result = RicSummaryCaseRestartDialog::openDialog(fileName, true);
|
|
||||||
|
|
||||||
if (result.ok)
|
RiuMainPlotWindow* mainPlotWindow = app->getOrCreateAndShowMainPlotWindow();
|
||||||
|
if (mainPlotWindow)
|
||||||
{
|
{
|
||||||
RimSummaryCase* sumCase = sumCaseColl->createAndAddSummaryCaseFromFileName(fileName, result.option == RicSummaryCaseRestartDialog::READ_ALL);
|
mainPlotWindow->selectAsCurrentItem(sumCase);
|
||||||
sumCaseColl->updateAllRequiredEditors();
|
|
||||||
|
|
||||||
RiuMainPlotWindow* mainPlotWindow = app->getOrCreateAndShowMainPlotWindow();
|
mainPlotWindow->updateSummaryPlotToolBar();
|
||||||
if (mainPlotWindow)
|
|
||||||
{
|
|
||||||
mainPlotWindow->selectAsCurrentItem(sumCase);
|
|
||||||
|
|
||||||
mainPlotWindow->updateSummaryPlotToolBar();
|
|
||||||
}
|
|
||||||
|
|
||||||
app->addToRecentFiles(fileName);
|
|
||||||
|
|
||||||
*savedDialogResult = result;
|
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -24,6 +24,23 @@
|
|||||||
|
|
||||||
class RicSummaryCaseRestartDialogResult;
|
class RicSummaryCaseRestartDialogResult;
|
||||||
|
|
||||||
|
|
||||||
|
//==================================================================================================
|
||||||
|
///
|
||||||
|
//==================================================================================================
|
||||||
|
class RicSummaryCaseFileInfo
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
RicSummaryCaseFileInfo(const QString _fileName, bool _includeRestartFiles) :
|
||||||
|
fileName(_fileName), includeRestartFiles(_includeRestartFiles) {}
|
||||||
|
|
||||||
|
QString fileName;
|
||||||
|
bool includeRestartFiles;
|
||||||
|
|
||||||
|
bool operator<(const RicSummaryCaseFileInfo& other) const { return fileName < other.fileName; }
|
||||||
|
bool operator==(const RicSummaryCaseFileInfo& other) const { return fileName == other.fileName; }
|
||||||
|
};
|
||||||
|
|
||||||
//==================================================================================================
|
//==================================================================================================
|
||||||
///
|
///
|
||||||
//==================================================================================================
|
//==================================================================================================
|
||||||
@ -34,7 +51,14 @@ class RicImportSummaryCasesFeature : public caf::CmdFeature
|
|||||||
public:
|
public:
|
||||||
RicImportSummaryCasesFeature() : m_pathFilter("*"), m_fileNameFilter("*") { }
|
RicImportSummaryCasesFeature() : m_pathFilter("*"), m_fileNameFilter("*") { }
|
||||||
|
|
||||||
static bool createAndAddSummaryCaseFromFile(const QString& fileName, RicSummaryCaseRestartDialogResult *lastResult);
|
static std::vector<RicSummaryCaseFileInfo> getFilesToImportWithDialog(const QStringList& initialFiles,
|
||||||
|
bool enableApplyToAllField);
|
||||||
|
|
||||||
|
static bool createAndAddSummaryCaseFromFileInfo(const std::vector<RicSummaryCaseFileInfo>& fileInfos);
|
||||||
|
static bool createAndAddSummaryCaseFromFileWithDialog(const QString& fileName);
|
||||||
|
|
||||||
|
private:
|
||||||
|
static bool createAndAddSummaryCaseFromFile(const QString& fileName, bool includeRestartFiles);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// Overrides
|
// Overrides
|
||||||
|
@ -57,6 +57,15 @@
|
|||||||
#define DEFAULT_DIALOG_WIDTH 550
|
#define DEFAULT_DIALOG_WIDTH 550
|
||||||
#define DEFAULT_DIALOG_INIT_HEIGHT 150
|
#define DEFAULT_DIALOG_INIT_HEIGHT 150
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
/// Internal variables
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
static QString SEPARATOR = "/";
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
/// Internal functions
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
static QString toInternalSeparator(const QString& path);
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
@ -130,27 +139,40 @@ RicSummaryCaseRestartDialogResult RicSummaryCaseRestartDialog::openDialog(const
|
|||||||
{
|
{
|
||||||
RicSummaryCaseRestartDialog dialog(parent);
|
RicSummaryCaseRestartDialog dialog(parent);
|
||||||
|
|
||||||
|
std::vector<RifRestartFileInfo> fileInfos = dialog.getRestartFiles(summaryHeaderFile);
|
||||||
|
for (const auto& fileInfo : fileInfos)
|
||||||
|
{
|
||||||
|
dialog.appendToFileList(fileInfo);
|
||||||
|
}
|
||||||
|
|
||||||
|
// If no restart files are found, do not show dialog
|
||||||
|
if (fileInfos.empty())
|
||||||
|
{
|
||||||
|
return RicSummaryCaseRestartDialogResult(true, READ_SINGLE, QStringList({ summaryHeaderFile }), false);
|
||||||
|
}
|
||||||
|
|
||||||
dialog.setWindowTitle("Summary Case Restart Files");
|
dialog.setWindowTitle("Summary Case Restart Files");
|
||||||
dialog.m_readAllRadioButton->setChecked(true);
|
dialog.m_readAllRadioButton->setChecked(true);
|
||||||
dialog.m_currentFile->setText(summaryHeaderFile);
|
dialog.m_currentFile->setText(summaryHeaderFile);
|
||||||
dialog.m_applyToAllCheckBox->setVisible(showApplyToAllWidget);
|
dialog.m_applyToAllCheckBox->setVisible(showApplyToAllWidget);
|
||||||
|
|
||||||
std::vector<RifRestartFileInfo> files = dialog.getRestartFiles(summaryHeaderFile);
|
|
||||||
for (const auto& file : files)
|
|
||||||
{
|
|
||||||
dialog.appendToFileList(file);
|
|
||||||
}
|
|
||||||
|
|
||||||
// If no restart files are found, do not show dialog
|
|
||||||
if (files.empty())
|
|
||||||
{
|
|
||||||
return RicSummaryCaseRestartDialogResult(true, READ_ALL, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
dialog.resize(DEFAULT_DIALOG_WIDTH, DEFAULT_DIALOG_INIT_HEIGHT);
|
dialog.resize(DEFAULT_DIALOG_WIDTH, DEFAULT_DIALOG_INIT_HEIGHT);
|
||||||
dialog.exec();
|
dialog.exec();
|
||||||
|
|
||||||
return RicSummaryCaseRestartDialogResult(dialog.result() == QDialog::Accepted, dialog.selectedOption(), dialog.applyToAllSelected());
|
|
||||||
|
if (dialog.result() != QDialog::Accepted)
|
||||||
|
{
|
||||||
|
return RicSummaryCaseRestartDialogResult(false, READ_SINGLE, QStringList(), false);
|
||||||
|
}
|
||||||
|
|
||||||
|
QStringList files({ toInternalSeparator(summaryHeaderFile) });
|
||||||
|
if (dialog.selectedOption() == SEPARATE_CASES)
|
||||||
|
{
|
||||||
|
for (const auto& fileInfo : fileInfos)
|
||||||
|
{
|
||||||
|
files.push_back(toInternalSeparator(fileInfo.fileName));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return RicSummaryCaseRestartDialogResult(true, dialog.selectedOption(), files, dialog.applyToAllSelected());
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -159,9 +181,9 @@ RicSummaryCaseRestartDialogResult RicSummaryCaseRestartDialog::openDialog(const
|
|||||||
RicSummaryCaseRestartDialog::ReadOptions RicSummaryCaseRestartDialog::selectedOption() const
|
RicSummaryCaseRestartDialog::ReadOptions RicSummaryCaseRestartDialog::selectedOption() const
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
m_notReadRadionButton->isChecked() ? NOT_READ :
|
m_readAllRadioButton->isChecked() ? READ_ALL :
|
||||||
m_separateCasesRadionButton->isChecked() ? SEPARATE_CASES :
|
m_separateCasesRadionButton->isChecked() ? SEPARATE_CASES :
|
||||||
READ_ALL;
|
READ_SINGLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -217,3 +239,25 @@ void RicSummaryCaseRestartDialog::slotDialogCancelClicked()
|
|||||||
{
|
{
|
||||||
reject();
|
reject();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
/// Internal functions
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
QString toInternalSeparator(const QString& path)
|
||||||
|
{
|
||||||
|
QString currNativeSep = QDir::separator();
|
||||||
|
|
||||||
|
if (currNativeSep == "/")
|
||||||
|
{
|
||||||
|
// On Linux like system -> Do not convert separators
|
||||||
|
return path;
|
||||||
|
}
|
||||||
|
|
||||||
|
// On other systems (i.e. Windows) -> Convert to internal separator (/)
|
||||||
|
QString output = path;
|
||||||
|
return output.replace(QString("\\"), SEPARATOR);
|
||||||
|
}
|
||||||
|
@ -46,7 +46,7 @@ class RicSummaryCaseRestartDialog : public QDialog
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
enum ReadOptions { READ_ALL, NOT_READ, SEPARATE_CASES };
|
enum ReadOptions { READ_SINGLE, READ_ALL, SEPARATE_CASES };
|
||||||
|
|
||||||
RicSummaryCaseRestartDialog(QWidget* parent);
|
RicSummaryCaseRestartDialog(QWidget* parent);
|
||||||
~RicSummaryCaseRestartDialog();
|
~RicSummaryCaseRestartDialog();
|
||||||
@ -91,11 +91,13 @@ public:
|
|||||||
|
|
||||||
RicSummaryCaseRestartDialogResult(bool _ok,
|
RicSummaryCaseRestartDialogResult(bool _ok,
|
||||||
RicSummaryCaseRestartDialog::ReadOptions _option,
|
RicSummaryCaseRestartDialog::ReadOptions _option,
|
||||||
|
QStringList _files,
|
||||||
bool _applyToAll) :
|
bool _applyToAll) :
|
||||||
ok(_ok), option(_option), applyToAll(_applyToAll) {
|
ok(_ok), option(_option), files(_files), applyToAll(_applyToAll) {
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ok;
|
bool ok;
|
||||||
RicSummaryCaseRestartDialog::ReadOptions option;
|
RicSummaryCaseRestartDialog::ReadOptions option;
|
||||||
bool applyToAll;
|
QStringList files;
|
||||||
|
bool applyToAll;
|
||||||
};
|
};
|
@ -39,17 +39,10 @@ CAF_PDM_SOURCE_INIT(RimFileSummaryCase,"FileSummaryCase");
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RimFileSummaryCase::RimFileSummaryCase() : m_includeRestartFiles(false)
|
RimFileSummaryCase::RimFileSummaryCase()
|
||||||
{
|
{
|
||||||
|
CAF_PDM_InitField(&m_includeRestartFiles, "IncludeRestartFiles", false, "Include Restart Files", "", "", "");
|
||||||
}
|
m_includeRestartFiles.uiCapability()->setUiHidden(true);
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
///
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
RimFileSummaryCase::RimFileSummaryCase(bool includeRestartFiles)
|
|
||||||
{
|
|
||||||
m_includeRestartFiles = includeRestartFiles;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -119,3 +112,11 @@ RifSummaryReaderInterface* RimFileSummaryCase::summaryReader()
|
|||||||
{
|
{
|
||||||
return m_summaryFileReader.p();
|
return m_summaryFileReader.p();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
void RimFileSummaryCase::setIncludeRestartFiles(bool includeRestartFiles)
|
||||||
|
{
|
||||||
|
m_includeRestartFiles = includeRestartFiles;
|
||||||
|
}
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
#include "RimSummaryCase.h"
|
#include "RimSummaryCase.h"
|
||||||
|
|
||||||
#include "cvfObject.h"
|
#include "cvfObject.h"
|
||||||
|
#include "cafPdmField.h"
|
||||||
|
|
||||||
class RifReaderEclipseSummary;
|
class RifReaderEclipseSummary;
|
||||||
|
|
||||||
@ -34,7 +34,6 @@ class RimFileSummaryCase: public RimSummaryCase
|
|||||||
CAF_PDM_HEADER_INIT;
|
CAF_PDM_HEADER_INIT;
|
||||||
public:
|
public:
|
||||||
RimFileSummaryCase();
|
RimFileSummaryCase();
|
||||||
RimFileSummaryCase(bool includeRestartFiles);
|
|
||||||
virtual ~RimFileSummaryCase();
|
virtual ~RimFileSummaryCase();
|
||||||
|
|
||||||
virtual QString summaryHeaderFilename() const override;
|
virtual QString summaryHeaderFilename() const override;
|
||||||
@ -44,9 +43,11 @@ public:
|
|||||||
virtual void createSummaryReaderInterface() override;
|
virtual void createSummaryReaderInterface() override;
|
||||||
virtual RifSummaryReaderInterface* summaryReader() override;
|
virtual RifSummaryReaderInterface* summaryReader() override;
|
||||||
|
|
||||||
|
void setIncludeRestartFiles(bool includeRestartFiles);
|
||||||
|
|
||||||
static RifReaderEclipseSummary* findRelatedFilesAndCreateReader(const QString& headerFileName, bool includeRestartFiles);
|
static RifReaderEclipseSummary* findRelatedFilesAndCreateReader(const QString& headerFileName, bool includeRestartFiles);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
cvf::ref<RifReaderEclipseSummary> m_summaryFileReader;
|
cvf::ref<RifReaderEclipseSummary> m_summaryFileReader;
|
||||||
bool m_includeRestartFiles;
|
caf::PdmField<bool> m_includeRestartFiles;
|
||||||
};
|
};
|
||||||
|
@ -284,9 +284,10 @@ RimSummaryCase* RimSummaryCaseMainCollection::createAndAddSummaryCaseFromEclipse
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RimSummaryCase* RimSummaryCaseMainCollection::createAndAddSummaryCaseFromFileName(const QString& fileName, bool includeRestartFiles)
|
RimSummaryCase* RimSummaryCaseMainCollection::createAndAddSummaryCaseFromFileName(const QString& fileName, bool includeRestartFiles)
|
||||||
{
|
{
|
||||||
RimFileSummaryCase* newSumCase = new RimFileSummaryCase(includeRestartFiles);
|
RimFileSummaryCase* newSumCase = new RimFileSummaryCase();
|
||||||
|
|
||||||
this->m_cases.push_back(newSumCase);
|
this->m_cases.push_back(newSumCase);
|
||||||
|
newSumCase->setIncludeRestartFiles(includeRestartFiles);
|
||||||
newSumCase->setSummaryHeaderFileName(fileName);
|
newSumCase->setSummaryHeaderFileName(fileName);
|
||||||
newSumCase->createSummaryReaderInterface();
|
newSumCase->createSummaryReaderInterface();
|
||||||
newSumCase->updateOptionSensitivity();
|
newSumCase->updateOptionSensitivity();
|
||||||
|
Loading…
Reference in New Issue
Block a user