mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
Added support for setting multiple script directories
p4#: 21393
This commit is contained in:
@@ -86,9 +86,9 @@ void RimProject::initAfterRead()
|
||||
// TODO : Must store content of scripts in project file and notify user if stored content is different from disk on execute and edit
|
||||
//
|
||||
RiaApplication* app = RiaApplication::instance();
|
||||
QString scriptDirectory = app->scriptDirectory();
|
||||
QString scriptDirectories = app->scriptDirectories();
|
||||
|
||||
this->setUserScriptPath(scriptDirectory);
|
||||
this->setScriptDirectories(scriptDirectories);
|
||||
}
|
||||
|
||||
|
||||
@@ -101,24 +101,27 @@ void RimProject::setupBeforeSave()
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
/// Support list of multiple script paths divided by ';'
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimProject::setUserScriptPath(const QString& scriptDirectory)
|
||||
void RimProject::setScriptDirectories(const QString& scriptDirectories)
|
||||
{
|
||||
scriptCollection->calcScripts().deleteAllChildObjects();
|
||||
scriptCollection->subDirectories().deleteAllChildObjects();
|
||||
|
||||
|
||||
QDir dir(scriptDirectory);
|
||||
if (!scriptDirectory.isEmpty() && dir.exists() && dir.isReadable())
|
||||
QStringList pathList = scriptDirectories.split(';');
|
||||
foreach(QString path, pathList)
|
||||
{
|
||||
RimScriptCollection* sharedScriptLocation = new RimScriptCollection;
|
||||
sharedScriptLocation->directory = scriptDirectory;
|
||||
sharedScriptLocation->setUiName(dir.dirName());
|
||||
QDir dir(path);
|
||||
if (!path.isEmpty() && dir.exists() && dir.isReadable())
|
||||
{
|
||||
RimScriptCollection* sharedScriptLocation = new RimScriptCollection;
|
||||
sharedScriptLocation->directory = path;
|
||||
sharedScriptLocation->setUiName(dir.dirName());
|
||||
|
||||
sharedScriptLocation->readContentFromDisc();
|
||||
sharedScriptLocation->readContentFromDisc();
|
||||
|
||||
scriptCollection->subDirectories.push_back(sharedScriptLocation);
|
||||
scriptCollection->subDirectories.push_back(sharedScriptLocation);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ public:
|
||||
caf::PdmField<RimScriptCollection*> scriptCollection;
|
||||
caf::PdmField<QString> treeViewState;
|
||||
|
||||
void setUserScriptPath(const QString& path);
|
||||
void setScriptDirectories(const QString& scriptDirectories);
|
||||
|
||||
QString projectFileVersionString() const;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user