added emote loading
This commit is contained in:
+32
-38
@@ -1,35 +1,17 @@
|
||||
#include "emotes.h"
|
||||
#include "resources.h"
|
||||
|
||||
ConcurrentMap<QString, TwitchEmoteValue *> *Emotes::m_twitchEmotes =
|
||||
new ConcurrentMap<QString, TwitchEmoteValue *>();
|
||||
ConcurrentMap<QString, LazyLoadedImage *> *Emotes::m_bttvEmotes =
|
||||
new ConcurrentMap<QString, LazyLoadedImage *>();
|
||||
ConcurrentMap<QString, LazyLoadedImage *> *Emotes::m_ffzEmotes =
|
||||
new ConcurrentMap<QString, LazyLoadedImage *>();
|
||||
ConcurrentMap<QString, LazyLoadedImage *> *Emotes::m_chatterinoEmotes =
|
||||
new ConcurrentMap<QString, LazyLoadedImage *>();
|
||||
ConcurrentMap<QString, LazyLoadedImage *>
|
||||
*Emotes::m_bttvChannelEmoteFromCaches =
|
||||
new ConcurrentMap<QString, LazyLoadedImage *>();
|
||||
ConcurrentMap<QString, LazyLoadedImage *> *Emotes::m_ffzChannelEmoteFromCaches =
|
||||
new ConcurrentMap<QString, LazyLoadedImage *>();
|
||||
ConcurrentMap<int, LazyLoadedImage *> *Emotes::m_twitchEmoteFromCache =
|
||||
new ConcurrentMap<int, LazyLoadedImage *>();
|
||||
ConcurrentMap<QString, LazyLoadedImage *> *Emotes::m_miscImageFromCache =
|
||||
new ConcurrentMap<QString, LazyLoadedImage *>();
|
||||
QString Emotes::m_twitchEmoteTemplate(
|
||||
"http://static-cdn.jtvnw.net/emoticons/v1/{id}/{scale}.0");
|
||||
|
||||
LazyLoadedImage *Emotes::m_cheerBadge100000 =
|
||||
new LazyLoadedImage(new QImage(":/cheer100000"));
|
||||
LazyLoadedImage *Emotes::m_cheerBadge10000 =
|
||||
new LazyLoadedImage(new QImage(":/cheer10000"));
|
||||
LazyLoadedImage *Emotes::m_cheerBadge5000 =
|
||||
new LazyLoadedImage(new QImage(":/cheer5000"));
|
||||
LazyLoadedImage *Emotes::m_cheerBadge1000 =
|
||||
new LazyLoadedImage(new QImage(":/cheer1000"));
|
||||
LazyLoadedImage *Emotes::m_cheerBadge100 =
|
||||
new LazyLoadedImage(new QImage(":/cheer100"));
|
||||
LazyLoadedImage *Emotes::m_cheerBadge1 =
|
||||
new LazyLoadedImage(new QImage(":/cheer1"));
|
||||
ConcurrentMap<QString, TwitchEmoteValue *> Emotes::m_twitchEmotes;
|
||||
ConcurrentMap<QString, LazyLoadedImage *> Emotes::m_bttvEmotes;
|
||||
ConcurrentMap<QString, LazyLoadedImage *> Emotes::m_ffzEmotes;
|
||||
ConcurrentMap<QString, LazyLoadedImage *> Emotes::m_chatterinoEmotes;
|
||||
ConcurrentMap<QString, LazyLoadedImage *> Emotes::m_bttvChannelEmoteFromCaches;
|
||||
ConcurrentMap<QString, LazyLoadedImage *> Emotes::m_ffzChannelEmoteFromCaches;
|
||||
ConcurrentMap<long, LazyLoadedImage *> Emotes::m_twitchEmoteFromCache;
|
||||
ConcurrentMap<QString, LazyLoadedImage *> Emotes::m_miscImageFromCache;
|
||||
|
||||
Emotes::Emotes()
|
||||
{
|
||||
@@ -38,9 +20,21 @@ Emotes::Emotes()
|
||||
LazyLoadedImage *
|
||||
Emotes::getTwitchEmoteById(const QString &name, long id)
|
||||
{
|
||||
#pragma message WARN("xD")
|
||||
return new LazyLoadedImage(NULL);
|
||||
// return m_twitchEmoteFromCache->getOrAdd()
|
||||
return m_twitchEmoteFromCache.getOrAdd(id, [&name, id] {
|
||||
qreal scale;
|
||||
QString url = getTwitchEmoteLink(id, scale);
|
||||
|
||||
return new LazyLoadedImage(url, scale, name, name + "\nTwitch Emote");
|
||||
});
|
||||
}
|
||||
|
||||
QString
|
||||
Emotes::getTwitchEmoteLink(long id, qreal &scale)
|
||||
{
|
||||
scale = .5;
|
||||
|
||||
return m_twitchEmoteTemplate.replace("{id}", QString::number(id))
|
||||
.replace("{scale}", "2");
|
||||
}
|
||||
|
||||
LazyLoadedImage *
|
||||
@@ -54,16 +48,16 @@ LazyLoadedImage *
|
||||
Emotes::getCheerBadge(long long amount)
|
||||
{
|
||||
if (amount >= 100000) {
|
||||
return m_cheerBadge100000;
|
||||
return Resources::cheerBadge100000();
|
||||
} else if (amount >= 10000) {
|
||||
return m_cheerBadge10000;
|
||||
return Resources::cheerBadge10000();
|
||||
} else if (amount >= 5000) {
|
||||
return m_cheerBadge5000;
|
||||
return Resources::cheerBadge5000();
|
||||
} else if (amount >= 1000) {
|
||||
return m_cheerBadge1000;
|
||||
return Resources::cheerBadge1000();
|
||||
} else if (amount >= 100) {
|
||||
return m_cheerBadge100;
|
||||
return Resources::cheerBadge100();
|
||||
} else {
|
||||
return m_cheerBadge1;
|
||||
return Resources::cheerBadge1();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user