Maraiah/tycho/cc/utility.cc

32 lines
571 B
C++

#include "tycho.h"
QIcon getIcon(QString const &name)
{
constexpr std::array<int, 9> sizes{16, 24, 32, 48, 64, 128, 256, 512, 1024};
QIcon icon;
for(auto const &sz : sizes) {
auto res = ":/tycho/icons/" + name + "_" + QString::number(sz) + ".png";
if(QFile(res).exists()) {
icon.addFile(res, QSize(sz, sz));
}
}
if(icon.isNull()) {
return QIcon::fromTheme(name);
} else {
return icon;
}
}
extern "C" {
void critical_msg(char const *title, char const *msg)
{
QMessageBox::critical(nullptr, QObject::tr(title), QObject::tr(msg));
}
}
// EOF