1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-04 21:27:58 +02:00

* Don't create pixmaps in the wrong thread.

This commit is contained in:
Christian Muehlhaeuser
2011-05-12 01:02:08 +02:00
parent 44585933dc
commit 06e00a83c8
2 changed files with 17 additions and 7 deletions

View File

@@ -39,6 +39,7 @@ Source::Source( int id, const QString& username )
, m_username( username ) , m_username( username )
, m_id( id ) , m_id( id )
, m_cc( 0 ) , m_cc( 0 )
, m_avatar( 0 )
{ {
qDebug() << Q_FUNC_INFO << id << username; qDebug() << Q_FUNC_INFO << id << username;
@@ -55,6 +56,7 @@ Source::Source( int id, const QString& username )
Source::~Source() Source::~Source()
{ {
qDebug() << Q_FUNC_INFO << friendlyName(); qDebug() << Q_FUNC_INFO << friendlyName();
delete m_avatar;
} }
@@ -111,14 +113,21 @@ Source::friendlyName() const
return m_friendlyname; return m_friendlyname;
} }
void Source::setAvatar(const QPixmap& avatar)
void
Source::setAvatar( const QPixmap& avatar )
{ {
m_avatar = avatar; m_avatar = new QPixmap( avatar );
} }
const QPixmap Source::avatar() const
QPixmap
Source::avatar() const
{ {
return m_avatar; if ( m_avatar )
return QPixmap( *m_avatar );
else
return QPixmap();
} }

View File

@@ -54,8 +54,9 @@ public:
QString userName() const { return m_username; } QString userName() const { return m_username; }
QString friendlyName() const; QString friendlyName() const;
void setFriendlyName( const QString& fname ); void setFriendlyName( const QString& fname );
void setAvatar(const QPixmap &avatar);
const QPixmap avatar() const; void setAvatar( const QPixmap& avatar );
QPixmap avatar() const;
collection_ptr collection() const; collection_ptr collection() const;
void addCollection( const Tomahawk::collection_ptr& c ); void addCollection( const Tomahawk::collection_ptr& c );
@@ -120,7 +121,7 @@ private:
ControlConnection* m_cc; ControlConnection* m_cc;
QPixmap m_avatar; QPixmap* m_avatar;
}; };
}; };