1
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
3
* Copyright 2011 - 2012, Christian Muehlhaeuser <muesli@tomahawk-player.org>
4
* Copyright 2012, Jeff Mitchell <jeff@tomahawk-player.org>
6
* Tomahawk is free software: you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation, either version 3 of the License, or
9
* (at your option) any later version.
11
* Tomahawk is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
16
* You should have received a copy of the GNU General Public License
17
* along with Tomahawk. If not, see <http://www.gnu.org/licenses/>.
20
#ifndef FADINGPIXMAP_H
21
#define FADINGPIXMAP_H
23
#include "utils/SharedTimeLine.h"
24
#include "utils/TomahawkUtils.h"
27
#include <QPaintEvent>
29
#include <QWeakPointer>
35
* \brief Fades to the new image when calling setPixmap.
37
class DLLEXPORT FadingPixmap : public QLabel
41
static QWeakPointer< TomahawkUtils::SharedTimeLine > stlInstance();
44
FadingPixmap( QWidget* parent = 0 );
45
virtual ~FadingPixmap();
48
virtual void setPixmap( const QPixmap& pixmap, bool isDefault );
49
void onAnimationStep( int frame );
55
virtual void paintEvent( QPaintEvent* );
56
void mouseReleaseEvent( QMouseEvent* event );
59
void onAnimationFinished();
65
QString m_oldImageMd5;
67
QList<QPixmap> m_pixmapQueue;
73
static QWeakPointer< TomahawkUtils::SharedTimeLine > s_stlInstance;