8d7dcdfc5b
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com> chore: supress unused with [[maybe_unused]] Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com> chore: unshadow ^&^& static_cast implicit return Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com> chore: deshadow and mark unused in parse task Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com> chore: mark unused in folder models Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com> chore: deshadow and mark unused with instances Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com> chore: more deshadow and unused Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com> chore: remove uneeded simicolons Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com> chore: mark unused Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com> chore: prevent shadow Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
63 lines
1.4 KiB
C++
63 lines
1.4 KiB
C++
#include "IconUtils.h"
|
|
|
|
#include "FileSystem.h"
|
|
#include <QDirIterator>
|
|
|
|
#include <array>
|
|
|
|
namespace {
|
|
std::array<const char *, 6> validIconExtensions = {{
|
|
"svg",
|
|
"png",
|
|
"ico",
|
|
"gif",
|
|
"jpg",
|
|
"jpeg"
|
|
}};
|
|
}
|
|
|
|
namespace IconUtils{
|
|
|
|
QString findBestIconIn(const QString &folder, const QString & iconKey) {
|
|
size_t best_found = validIconExtensions.size();
|
|
QString best_filename;
|
|
|
|
QDirIterator it(folder, QDir::NoDotAndDotDot | QDir::Files, QDirIterator::NoIteratorFlags);
|
|
while (it.hasNext()) {
|
|
it.next();
|
|
auto fileInfo = it.fileInfo();
|
|
|
|
if(fileInfo.completeBaseName() != iconKey)
|
|
continue;
|
|
|
|
auto extension = fileInfo.suffix();
|
|
|
|
for(size_t i = 0; i < best_found; i++) {
|
|
if(extension == validIconExtensions[i]) {
|
|
best_found = i;
|
|
qDebug() << i << " : " << fileInfo.fileName();
|
|
best_filename = fileInfo.fileName();
|
|
}
|
|
}
|
|
}
|
|
return FS::PathCombine(folder, best_filename);
|
|
}
|
|
|
|
QString getIconFilter() {
|
|
QString out;
|
|
QTextStream stream(&out);
|
|
stream << '(';
|
|
for(size_t i = 0; i < validIconExtensions.size() - 1; i++) {
|
|
if(i > 0) {
|
|
stream << " ";
|
|
}
|
|
stream << "*." << validIconExtensions[i];
|
|
}
|
|
stream << " *." << validIconExtensions[validIconExtensions.size() - 1];
|
|
stream << ')';
|
|
return out;
|
|
}
|
|
|
|
}
|
|
|