diff options
Diffstat (limited to 'logic')
-rw-r--r-- | logic/icons/IconList.cpp | 17 | ||||
-rw-r--r-- | logic/icons/IconList.h | 1 |
2 files changed, 18 insertions, 0 deletions
diff --git a/logic/icons/IconList.cpp b/logic/icons/IconList.cpp index cda2db7b..d76e6fbb 100644 --- a/logic/icons/IconList.cpp +++ b/logic/icons/IconList.cpp @@ -336,6 +336,23 @@ QIcon IconList::getIcon(QString key) return QIcon(); } +QIcon IconList::getBigIcon(QString key) +{ + int icon_index = getIconIndex(key); + + if (icon_index == -1) + key = "infinity"; + + // Fallback for icons that don't exist. + icon_index = getIconIndex(key); + + if (icon_index == -1) + return QIcon(); + + QPixmap bigone = icons[icon_index].icon().pixmap(256,256).scaled(256,256); + return QIcon(bigone); +} + int IconList::getIconIndex(QString key) { if (key == "default") diff --git a/logic/icons/IconList.h b/logic/icons/IconList.h index 322411d1..4ee3f782 100644 --- a/logic/icons/IconList.h +++ b/logic/icons/IconList.h @@ -34,6 +34,7 @@ public: virtual ~IconList() {}; QIcon getIcon(QString key); + QIcon getBigIcon(QString key); int getIconIndex(QString key); virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const; |