#3483 SetExportFolder : Add support for creating folders

This commit is contained in:
Magne Sjaastad 2018-10-10 11:52:58 +02:00
parent bb2ada26b9
commit b461b2f6e0
2 changed files with 32 additions and 11 deletions

View File

@ -1,4 +1,3 @@
#include "RicfSetExportFolder.h"
/////////////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2017 Statoil ASA
@ -20,6 +19,9 @@
#include "RicfSetExportFolder.h"
#include "RiaApplication.h"
#include "RiaLogging.h"
#include <QDir>
CAF_PDM_SOURCE_INIT(RicfSetExportFolder, "setExportFolder");
@ -28,8 +30,11 @@ CAF_PDM_SOURCE_INIT(RicfSetExportFolder, "setExportFolder");
//--------------------------------------------------------------------------------------------------
RicfSetExportFolder::RicfSetExportFolder()
{
// clang-format off
RICF_InitField(&m_type, "type", RicfCommandFileExecutor::ExportTypeEnum(RicfCommandFileExecutor::COMPLETIONS), "Type", "", "", "");
RICF_InitField(&m_path, "path", QString(), "Path", "", "", "");
RICF_InitField(&m_createFolder, "createFolder", false, "Create Folder", "", "", "");
// clang-format on
}
//--------------------------------------------------------------------------------------------------
@ -37,6 +42,21 @@ RicfSetExportFolder::RicfSetExportFolder()
//--------------------------------------------------------------------------------------------------
void RicfSetExportFolder::execute()
{
if (m_createFolder)
{
QDir dir;
if (!dir.exists(m_path))
{
dir.mkdir(m_path);
if (!dir.exists(m_path))
{
RiaLogging::error("Could not create folder : " + m_path);
}
}
}
RicfCommandFileExecutor* executor = RicfCommandFileExecutor::instance();
executor->setExportPath(m_type(), m_path);
}

View File

@ -41,4 +41,5 @@ public:
private:
caf::PdmField<RicfCommandFileExecutor::ExportTypeEnum> m_type;
caf::PdmField<QString> m_path;
caf::PdmField<bool> m_createFolder;
};