mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#3479 Input Case : Use default folder fallback to case folder
This commit is contained in:
parent
e1b1e3e898
commit
06f91a6762
@ -116,6 +116,7 @@ public:
|
|||||||
|
|
||||||
QString lastUsedDialogDirectory(const QString& dialogName);
|
QString lastUsedDialogDirectory(const QString& dialogName);
|
||||||
QString lastUsedDialogDirectoryWithFallbackToProjectFolder(const QString& dialogName);
|
QString lastUsedDialogDirectoryWithFallbackToProjectFolder(const QString& dialogName);
|
||||||
|
QString lastUsedDialogDirectoryWithFallback(const QString& dialogName, const QString& fallbackDirectory);
|
||||||
void setLastUsedDialogDirectory(const QString& dialogName, const QString& directory);
|
void setLastUsedDialogDirectory(const QString& dialogName, const QString& directory);
|
||||||
|
|
||||||
bool openFile(const QString& fileName);
|
bool openFile(const QString& fileName);
|
||||||
@ -214,8 +215,6 @@ private:
|
|||||||
|
|
||||||
void loadAndUpdatePlotData();
|
void loadAndUpdatePlotData();
|
||||||
|
|
||||||
QString lastUsedDialogDirectoryWithFallback(const QString& dialogName, const QString& fallbackDirectory);
|
|
||||||
|
|
||||||
void storeTreeViewState();
|
void storeTreeViewState();
|
||||||
|
|
||||||
friend RiaArgumentParser;
|
friend RiaArgumentParser;
|
||||||
|
@ -47,8 +47,20 @@ bool RicAddEclipseInputPropertyFeature::isCommandEnabled()
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
void RicAddEclipseInputPropertyFeature::onActionTriggered(bool isChecked)
|
void RicAddEclipseInputPropertyFeature::onActionTriggered(bool isChecked)
|
||||||
{
|
{
|
||||||
|
RimEclipseInputPropertyCollection* inputPropertyCollection = selectedInputPropertyCollection();
|
||||||
|
if (!inputPropertyCollection) return;
|
||||||
|
|
||||||
|
QString casePath;
|
||||||
|
{
|
||||||
|
RimEclipseInputCase* inputReservoir = nullptr;
|
||||||
|
inputPropertyCollection->firstAncestorOrThisOfTypeAsserted(inputReservoir);
|
||||||
|
|
||||||
|
QFileInfo fi(inputReservoir->gridFileName());
|
||||||
|
casePath = fi.absolutePath();
|
||||||
|
}
|
||||||
|
|
||||||
RiaApplication* app = RiaApplication::instance();
|
RiaApplication* app = RiaApplication::instance();
|
||||||
QString defaultDir = app->lastUsedDialogDirectory("INPUT_FILES");
|
QString defaultDir = app->lastUsedDialogDirectoryWithFallback("INPUT_FILES", casePath);
|
||||||
QStringList fileNames = QFileDialog::getOpenFileNames(Riu3DMainWindowTools::mainWindowWidget(), "Select Eclipse Input Property Files", defaultDir, "All Files (*.* *)");
|
QStringList fileNames = QFileDialog::getOpenFileNames(Riu3DMainWindowTools::mainWindowWidget(), "Select Eclipse Input Property Files", defaultDir, "All Files (*.* *)");
|
||||||
|
|
||||||
if (fileNames.isEmpty()) return;
|
if (fileNames.isEmpty()) return;
|
||||||
@ -57,7 +69,6 @@ void RicAddEclipseInputPropertyFeature::onActionTriggered(bool isChecked)
|
|||||||
defaultDir = QFileInfo(fileNames.last()).absolutePath();
|
defaultDir = QFileInfo(fileNames.last()).absolutePath();
|
||||||
app->setLastUsedDialogDirectory("INPUT_FILES", defaultDir);
|
app->setLastUsedDialogDirectory("INPUT_FILES", defaultDir);
|
||||||
|
|
||||||
RimEclipseInputPropertyCollection* inputPropertyCollection = selectedInputPropertyCollection();
|
|
||||||
if (inputPropertyCollection)
|
if (inputPropertyCollection)
|
||||||
{
|
{
|
||||||
addEclipseInputProperty(fileNames, inputPropertyCollection);
|
addEclipseInputProperty(fileNames, inputPropertyCollection);
|
||||||
@ -77,10 +88,7 @@ void RicAddEclipseInputPropertyFeature::setupActionLook(QAction* actionToSetup)
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RimEclipseInputPropertyCollection* RicAddEclipseInputPropertyFeature::selectedInputPropertyCollection() const
|
RimEclipseInputPropertyCollection* RicAddEclipseInputPropertyFeature::selectedInputPropertyCollection() const
|
||||||
{
|
{
|
||||||
std::vector<RimEclipseInputPropertyCollection*> selection;
|
return caf::SelectionManager::instance()->selectedItemOfType<RimEclipseInputPropertyCollection>();
|
||||||
caf::SelectionManager::instance()->objectsByType(&selection);
|
|
||||||
|
|
||||||
return selection.size() > 0 ? selection[0] : NULL;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -90,12 +98,9 @@ void RicAddEclipseInputPropertyFeature::addEclipseInputProperty(const QStringLis
|
|||||||
{
|
{
|
||||||
CVF_ASSERT(inputPropertyCollection);
|
CVF_ASSERT(inputPropertyCollection);
|
||||||
|
|
||||||
RimEclipseInputCase* inputReservoir = dynamic_cast<RimEclipseInputCase*>(inputPropertyCollection->parentField()->ownerObject());
|
RimEclipseInputCase* inputReservoir = nullptr;
|
||||||
CVF_ASSERT(inputReservoir);
|
inputPropertyCollection->firstAncestorOrThisOfTypeAsserted(inputReservoir);
|
||||||
if (inputReservoir)
|
inputReservoir->openDataFileSet(fileNames);
|
||||||
{
|
|
||||||
inputReservoir->openDataFileSet(fileNames);
|
|
||||||
}
|
|
||||||
|
|
||||||
inputPropertyCollection->updateConnectedEditors();
|
inputPropertyCollection->updateConnectedEditors();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user