diff --git a/shared/proparser/profileevaluator.cpp b/shared/proparser/profileevaluator.cpp index c4c6e9771a2..2686d9c35f5 100644 --- a/shared/proparser/profileevaluator.cpp +++ b/shared/proparser/profileevaluator.cpp @@ -1765,28 +1765,13 @@ void ProFileEvaluator::setVerbose(bool on) d->m_verbose = on; } -bool evaluateProFile(const QString &fileName, bool verbose, QHash *varMap) +void evaluateProFile(const ProFileEvaluator &visitor, QHash *varMap) { QStringList sourceFiles; QString codecForTr; QString codecForSource; QStringList tsFileNames; - QFileInfo fi(fileName); - if (!fi.exists()) - return false; - - ProFile pro(fi.absoluteFilePath()); - - ProFileEvaluator visitor; - visitor.setVerbose(verbose); - - if (!visitor.queryProFile(&pro)) - return false; - - if (!visitor.accept(&pro)) - return false; - // app/lib template sourceFiles += visitor.values(QLatin1String("SOURCES")); sourceFiles += visitor.values(QLatin1String("HEADERS")); @@ -1823,6 +1808,27 @@ bool evaluateProFile(const QString &fileName, bool verbose, QHashinsert("CODECFORTR", QStringList() << codecForTr); varMap->insert("CODECFORSRC", QStringList() << codecForSource); varMap->insert("TRANSLATIONS", tsFileNames); +} + +bool evaluateProFile(const QString &fileName, bool verbose, QHash *varMap) +{ + QFileInfo fi(fileName); + if (!fi.exists()) + return false; + + ProFile pro(fi.absoluteFilePath()); + + ProFileEvaluator visitor; + visitor.setVerbose(verbose); + + if (!visitor.queryProFile(&pro)) + return false; + + if (!visitor.accept(&pro)) + return false; + + evaluateProFile(visitor, varMap); + return true; } diff --git a/shared/proparser/profileevaluator.h b/shared/proparser/profileevaluator.h index 26d801687ca..5f963b7a7f4 100644 --- a/shared/proparser/profileevaluator.h +++ b/shared/proparser/profileevaluator.h @@ -45,7 +45,9 @@ QT_BEGIN_NAMESPACE class ProFile; +class ProFileEvaluator; +void evaluateProFile(const ProFileEvaluator &visitor, QHash *varMap); bool evaluateProFile(const QString &fileName, bool verbose, QHash *varMap); class ProFileEvaluator