forked from qt-creator/qt-creator
qmljs: move running qmldump process to a method
Change-Id: Iaa129d2888d5b0d01e83014a2f520580d238149d Reviewed-by: Marco Benelli <marco.benelli@theqtcompany.com> Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
This commit is contained in:
@@ -120,14 +120,7 @@ void PluginDumper::onLoadBuiltinTypes(const QmlJS::ModelManagerInterface::Projec
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// run qmldump
|
runQmlDump(info, QStringList(QLatin1String("--builtins")), baseImportsPath);
|
||||||
QProcess *process = new QProcess(this);
|
|
||||||
process->setEnvironment(info.qmlDumpEnvironment.toStringList());
|
|
||||||
connect(process, SIGNAL(finished(int)), SLOT(qmlPluginTypeDumpDone(int)));
|
|
||||||
connect(process, SIGNAL(error(QProcess::ProcessError)), SLOT(qmlPluginTypeDumpError(QProcess::ProcessError)));
|
|
||||||
QStringList args(QLatin1String("--builtins"));
|
|
||||||
process->start(info.qmlDumpPath, args);
|
|
||||||
m_runningQmldumps.insert(process, baseImportsPath);
|
|
||||||
m_qtToInfo.insert(baseImportsPath, info);
|
m_qtToInfo.insert(baseImportsPath, info);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -416,6 +409,17 @@ void PluginDumper::loadQmltypesFile(const QStringList &qmltypesFilePaths,
|
|||||||
m_modelManager->updateLibraryInfo(libraryPath, libraryInfo);
|
m_modelManager->updateLibraryInfo(libraryPath, libraryInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void PluginDumper::runQmlDump(const QmlJS::ModelManagerInterface::ProjectInfo &info,
|
||||||
|
const QStringList &arguments, const QString &importPath)
|
||||||
|
{
|
||||||
|
QProcess *process = new QProcess(this);
|
||||||
|
process->setEnvironment(info.qmlDumpEnvironment.toStringList());
|
||||||
|
connect(process, SIGNAL(finished(int)), SLOT(qmlPluginTypeDumpDone(int)));
|
||||||
|
connect(process, SIGNAL(error(QProcess::ProcessError)), SLOT(qmlPluginTypeDumpError(QProcess::ProcessError)));
|
||||||
|
process->start(info.qmlDumpPath, arguments);
|
||||||
|
m_runningQmldumps.insert(process, importPath);
|
||||||
|
}
|
||||||
|
|
||||||
void PluginDumper::dump(const Plugin &plugin)
|
void PluginDumper::dump(const Plugin &plugin)
|
||||||
{
|
{
|
||||||
ModelManagerInterface::ProjectInfo info = m_modelManager->defaultProjectInfo();
|
ModelManagerInterface::ProjectInfo info = m_modelManager->defaultProjectInfo();
|
||||||
@@ -453,18 +457,13 @@ void PluginDumper::dump(const Plugin &plugin)
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
QProcess *process = new QProcess(this);
|
|
||||||
process->setEnvironment(info.qmlDumpEnvironment.toStringList());
|
|
||||||
connect(process, SIGNAL(finished(int)), SLOT(qmlPluginTypeDumpDone(int)));
|
|
||||||
connect(process, SIGNAL(error(QProcess::ProcessError)), SLOT(qmlPluginTypeDumpError(QProcess::ProcessError)));
|
|
||||||
QStringList args;
|
QStringList args;
|
||||||
if (info.qmlDumpHasRelocatableFlag)
|
if (info.qmlDumpHasRelocatableFlag)
|
||||||
args << QLatin1String("-nonrelocatable");
|
args << QLatin1String("-nonrelocatable");
|
||||||
args << plugin.importUri;
|
args << plugin.importUri;
|
||||||
args << plugin.importVersion;
|
args << plugin.importVersion;
|
||||||
args << plugin.importPath;
|
args << plugin.importPath;
|
||||||
process->start(info.qmlDumpPath, args);
|
runQmlDump(info, args, plugin.qmldirPath);
|
||||||
m_runningQmldumps.insert(process, plugin.qmldirPath);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
|||||||
@@ -74,6 +74,7 @@ private:
|
|||||||
QStringList typeInfoPaths;
|
QStringList typeInfoPaths;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
void runQmlDump(const QmlJS::ModelManagerInterface::ProjectInfo &info, const QStringList &arguments, const QString &importPath);
|
||||||
void dump(const Plugin &plugin);
|
void dump(const Plugin &plugin);
|
||||||
void loadQmltypesFile(const QStringList &qmltypesFilePaths,
|
void loadQmltypesFile(const QStringList &qmltypesFilePaths,
|
||||||
const QString &libraryPath,
|
const QString &libraryPath,
|
||||||
|
|||||||
Reference in New Issue
Block a user