23 #include "wadpathfinder.h" 25 #include "configuration/doomseekerconfig.h" 26 #include "pathfinder/filealias.h" 27 #include "pathfinder/pathfinder.h" 28 #include "serverapi/server.h" 43 WadFindResult::~WadFindResult()
47 const QString &WadFindResult::alias()
const 52 void WadFindResult::setAlias(
const QString &val)
57 bool WadFindResult::isAlias()
const 59 return isValid() && !d->alias.isEmpty();
62 bool WadFindResult::isValid()
const 64 return !d->path.isEmpty();
67 const QString &WadFindResult::path()
const 72 void WadFindResult::setPath(
const QString &val)
80 QList<FileAlias> aliases;
88 d->aliases = gConfig.doomseeker.wadAliases();
89 d->pathFinder = pathFinder;
92 WadPathFinder::~WadPathFinder()
96 QStringList WadPathFinder::aliases(
const QString &name)
const 98 foreach (
const FileAlias &candidate, d->aliases)
100 if (candidate.name().compare(name, Qt::CaseInsensitive) == 0)
102 return candidate.aliases();
105 return QStringList();
111 QString path = d->pathFinder.findFile(name);
115 result.setPath(path);
119 foreach (
const QString &alias, aliases(name))
121 QString path = d->pathFinder.findFile(alias);
125 result.setPath(path);
126 result.setAlias(alias);
133 WadFindResult findWad(ServerPtr server,
const QString &wadName)
135 PathFinder pathFinder = server->wadPathFinder();
137 return wadFinder.find(wadName);
Performs a case-insensitive (OS independent) file searches.
Wrapper for PathFinder that specializes in findings WADs.