From ace46ddca3818d63d8de9ff481038bda8f5cf982 Mon Sep 17 00:00:00 2001 From: Manuel Nickschas Date: Thu, 5 Mar 2009 16:59:47 +0100 Subject: [PATCH 1/1] Add Quassel::scriptDirPaths() to get a list of locations we look for scripts in This includes a subdirectory named scripts/ in the configdir and in all dataDirPaths(), where configdir/scripts/ takes precedence to allow for overriding the system installation. --- src/common/quassel.cpp | 7 +++++++ src/common/quassel.h | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/src/common/quassel.cpp b/src/common/quassel.cpp index 50651bd8..08652abe 100644 --- a/src/common/quassel.cpp +++ b/src/common/quassel.cpp @@ -336,6 +336,13 @@ QString Quassel::findDataFilePath(const QString &fileName) { return QString(); } +QStringList Quassel::scriptDirPaths() { + QStringList res(configDirPath() + "scripts/"); + foreach(QString path, dataDirPaths()) + res << path + "scripts/"; + return res; +} + QString Quassel::translationDirPath() { if(_translationDirPath.isEmpty()) { // We support only one translation dir; fallback mechanisms wouldn't work else. diff --git a/src/common/quassel.h b/src/common/quassel.h index 7e78f73d..53d9e0bf 100644 --- a/src/common/quassel.h +++ b/src/common/quassel.h @@ -84,6 +84,12 @@ public: static QString translationDirPath(); + //! Returns a list of directories we look for scripts in + /** We look for a subdirectory named "scripts" in the configdir and in all datadir paths. + * \return A list of directory paths containing executable scripts for /exec + */ + static QStringList scriptDirPaths(); + static void loadTranslation(const QLocale &locale); static inline void setCliParser(AbstractCliParser *cliParser); -- 2.20.1