From 2cf7aceb4ecb73b47494f1058224eb44b39f0d55 Mon Sep 17 00:00:00 2001 From: Martin Smith Date: Thu, 8 Nov 2012 15:22:10 +0100 Subject: qdoc: better copying of .css files This fix searches for the css files specified in the stylesheets variable. It searches for them in the directory specified as the templatedir. It copies them into the style subdirectory of the outputdir. Task-number: QTBUG-27878 Change-Id: Ic9ff43ab6f939cb50f1b41a9cc58f3f8686ebaf5 Reviewed-by: Jerome Pasion --- src/tools/qdoc/generator.cpp | 86 +++++++++++++++++++++----------------------- 1 file changed, 40 insertions(+), 46 deletions(-) diff --git a/src/tools/qdoc/generator.cpp b/src/tools/qdoc/generator.cpp index 0384765157..67e18b45dd 100644 --- a/src/tools/qdoc/generator.cpp +++ b/src/tools/qdoc/generator.cpp @@ -1546,55 +1546,49 @@ void Generator::initialize(const Config &config) } // Documentation template handling - QString templateDir = config.getString((*g)->format() + Config::dot + CONFIG_TEMPLATEDIR); - QStringList searchDirs; - if (!templateDir.isEmpty()) { - searchDirs.append(templateDir); - } - if (!Config::installDir.isEmpty()) { - searchDirs.append(Config::installDir); + QString templateDir = config.getString((*g)->format() + Config::dot + CONFIG_TEMPLATEDIR); + if (templateDir.isEmpty()) + templateDir = "."; + searchDirs.append(templateDir); + + QStringList noExts; + QStringList scripts = config.getCleanPathList((*g)->format()+Config::dot+CONFIG_SCRIPTS); + e = scripts.constBegin(); + while (e != scripts.constEnd()) { + QString userFriendlyFilePath; + QString filePath = Config::findFile(config.lastLocation(), + scriptFiles, + searchDirs, + *e, + noExts, + userFriendlyFilePath); + if (!filePath.isEmpty()) + Config::copyFile(config.lastLocation(), + filePath, + userFriendlyFilePath, + (*g)->outputDir() + + "/scripts"); + ++e; } - if (!searchDirs.isEmpty()) { - QStringList noExts; - QStringList scripts = config.getCleanPathList((*g)->format()+Config::dot+CONFIG_SCRIPTS); - e = scripts.constBegin(); - while (e != scripts.constEnd()) { - QString userFriendlyFilePath; - QString filePath = Config::findFile(config.lastLocation(), - scriptFiles, - searchDirs, - *e, - noExts, - userFriendlyFilePath); - if (!filePath.isEmpty()) - Config::copyFile(config.lastLocation(), - filePath, - userFriendlyFilePath, - (*g)->outputDir() + - "/scripts"); - ++e; - } - - QStringList styles = config.getCleanPathList((*g)->format()+Config::dot+CONFIG_STYLESHEETS); - e = styles.constBegin(); - while (e != styles.constEnd()) { - QString userFriendlyFilePath; - QString filePath = Config::findFile(config.lastLocation(), - styleFiles, - searchDirs, - *e, - noExts, - userFriendlyFilePath); - if (!filePath.isEmpty()) - Config::copyFile(config.lastLocation(), - filePath, - userFriendlyFilePath, - (*g)->outputDir() + - "/style"); - ++e; - } + QStringList styles = config.getCleanPathList((*g)->format()+Config::dot+CONFIG_STYLESHEETS); + e = styles.constBegin(); + while (e != styles.constEnd()) { + QString userFriendlyFilePath; + QString filePath = Config::findFile(config.lastLocation(), + styleFiles, + searchDirs, + *e, + noExts, + userFriendlyFilePath); + if (!filePath.isEmpty()) + Config::copyFile(config.lastLocation(), + filePath, + userFriendlyFilePath, + (*g)->outputDir() + + "/style"); + ++e; } } ++g; -- cgit v1.2.3