KVIrc 5.2.4
Developer APIs
Classes | Static Public Member Functions | Protected Slots | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
KviAnimatedPixmapCache Class Reference

#include <KviAnimatedPixmapCache.h>

+ Inheritance diagram for KviAnimatedPixmapCache:

Classes

class  Data
 
class  FrameInfo
 

Static Public Member Functions

static void done ()
 
static QPixmap * dummyPixmap ()
 
static void free (Data *data)
 
static void init ()
 
static Dataload (const QString &szFileName, int iWidth=0, int iHeight=0)
 
static void notifyDelete (KviAnimatedPixmapInterface *receiver)
 
static Dataresize (Data *data, const QSize &size)
 
static void scheduleFrameChange (uint delay, KviAnimatedPixmapInterface *receiver)
 

Protected Slots

virtual void timeoutEvent ()
 

Protected Member Functions

void internalFree (Data *data)
 
DatainternalLoad (const QString &szFile, int iWidth=0, int iHeight=0)
 
void internalNotifyDelete (KviAnimatedPixmapInterface *receiver)
 
DatainternalResize (Data *data, const QSize &size)
 
void internalScheduleFrameChange (uint delay, KviAnimatedPixmapInterface *receiver)
 
 KviAnimatedPixmapCache ()
 
virtual ~KviAnimatedPixmapCache ()
 

Protected Attributes

QTimer m_animationTimer
 
QMutex m_cacheMutex
 
QMultiHash< QString, Data * > m_hCache
 
QMultiMap< long long, KviAnimatedPixmapInterface * > m_timerData
 
QMutex m_timerMutex
 

Static Protected Attributes

static KviAnimatedPixmapCachem_pInstance = nullptr
 

Constructor & Destructor Documentation

◆ KviAnimatedPixmapCache()

KviAnimatedPixmapCache::KviAnimatedPixmapCache ( )
protected

◆ ~KviAnimatedPixmapCache()

KviAnimatedPixmapCache::~KviAnimatedPixmapCache ( )
protectedvirtual

References g_pDummyPixmap, and m_pInstance.

Member Function Documentation

◆ done()

void KviAnimatedPixmapCache::done ( )
static

References m_pInstance.

Referenced by KviApplication::~KviApplication().

◆ dummyPixmap()

QPixmap * KviAnimatedPixmapCache::dummyPixmap ( )
static

References g_pDummyPixmap.

Referenced by KviAnimatedPixmap::pixmap().

◆ free()

static void KviAnimatedPixmapCache::free ( Data data)
inlinestatic

◆ init()

void KviAnimatedPixmapCache::init ( )
static

◆ internalFree()

void KviAnimatedPixmapCache::internalFree ( Data data)
protected

◆ internalLoad()

KviAnimatedPixmapCache::Data * KviAnimatedPixmapCache::internalLoad ( const QString &  szFile,
int  iWidth = 0,
int  iHeight = 0 
)
protected

◆ internalNotifyDelete()

void KviAnimatedPixmapCache::internalNotifyDelete ( KviAnimatedPixmapInterface receiver)
protected

References i, m_timerData, and m_timerMutex.

Referenced by notifyDelete().

◆ internalResize()

KviAnimatedPixmapCache::Data * KviAnimatedPixmapCache::internalResize ( Data data,
const QSize &  size 
)
protected

◆ internalScheduleFrameChange()

void KviAnimatedPixmapCache::internalScheduleFrameChange ( uint  delay,
KviAnimatedPixmapInterface receiver 
)
protected

◆ load()

static Data * KviAnimatedPixmapCache::load ( const QString &  szFileName,
int  iWidth = 0,
int  iHeight = 0 
)
inlinestatic

◆ notifyDelete()

static void KviAnimatedPixmapCache::notifyDelete ( KviAnimatedPixmapInterface receiver)
inlinestatic

◆ resize()

static Data * KviAnimatedPixmapCache::resize ( Data data,
const QSize &  size 
)
inlinestatic

References internalResize().

Referenced by KviAnimatedPixmap::resize().

◆ scheduleFrameChange()

static void KviAnimatedPixmapCache::scheduleFrameChange ( uint  delay,
KviAnimatedPixmapInterface receiver 
)
inlinestatic

◆ timeoutEvent

void KviAnimatedPixmapCache::timeoutEvent ( )
protectedvirtualslot

Member Data Documentation

◆ m_animationTimer

QTimer KviAnimatedPixmapCache::m_animationTimer
protected

◆ m_cacheMutex

QMutex KviAnimatedPixmapCache::m_cacheMutex
mutableprotected

◆ m_hCache

QMultiHash<QString, Data *> KviAnimatedPixmapCache::m_hCache
protected

◆ m_pInstance

KviAnimatedPixmapCache * KviAnimatedPixmapCache::m_pInstance = nullptr
staticprotected

◆ m_timerData

QMultiMap<long long, KviAnimatedPixmapInterface *> KviAnimatedPixmapCache::m_timerData
protected

◆ m_timerMutex

QMutex KviAnimatedPixmapCache::m_timerMutex
mutableprotected

The documentation for this class was generated from the following files: