33 lines
868 B
C++
33 lines
868 B
C++
#include "toonzqt/fxiconmanager.h"
|
|
|
|
#include <QPixmap>
|
|
|
|
FxIconPixmapManager::FxIconPixmapManager()
|
|
{
|
|
}
|
|
|
|
FxIconPixmapManager *FxIconPixmapManager::instance()
|
|
{
|
|
static FxIconPixmapManager _instance;
|
|
return &_instance;
|
|
}
|
|
|
|
const QPixmap &FxIconPixmapManager::getFxIconPm(string type)
|
|
{
|
|
std::map<string, QPixmap>::iterator it;
|
|
it = m_pms.find(type);
|
|
if (it != m_pms.end())
|
|
return it->second;
|
|
|
|
int i;
|
|
for (i = 0; fxTypeInfo[i].pixmapFilename; i++)
|
|
if (strcmp(type.c_str(), fxTypeInfo[i].fxType) == 0) {
|
|
QString path = QString(":Resources/fxicons/") + fxTypeInfo[i].pixmapFilename + ".png";
|
|
it = m_pms.insert(std::make_pair(type, QPixmap(path))).first;
|
|
return it->second;
|
|
}
|
|
|
|
static const QPixmap unidentifiedFxPixmap(":Resources/fxicons/fx_unidentified.png");
|
|
it = m_pms.insert(std::make_pair(type, unidentifiedFxPixmap)).first;
|
|
return it->second;
|
|
}
|