summaryrefslogtreecommitdiff
path: root/noncore
Unidiff
Diffstat (limited to 'noncore') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/skin.cpp57
-rw-r--r--noncore/multimedia/opieplayer2/skin.h11
2 files changed, 41 insertions, 27 deletions
diff --git a/noncore/multimedia/opieplayer2/skin.cpp b/noncore/multimedia/opieplayer2/skin.cpp
index cef3259..9ad5f3f 100644
--- a/noncore/multimedia/opieplayer2/skin.cpp
+++ b/noncore/multimedia/opieplayer2/skin.cpp
@@ -29,2 +29,13 @@
29 29
30struct SkinData
31{
32 typedef QMap<QString, QImage> ButtonMaskImageMap;
33
34 QImage backgroundImage;
35 QImage buttonUpImage;
36 QImage buttonDownImage;
37 QImage buttonMask;
38 ButtonMaskImageMap buttonMasks;
39};
40
30Skin::Skin( const QString &name, const QString &fileNameInfix ) 41Skin::Skin( const QString &name, const QString &fileNameInfix )
@@ -41,2 +52,7 @@ Skin::Skin( const QString &fileNameInfix )
41 52
53Skin::~Skin()
54{
55 delete d;
56}
57
42void Skin::init( const QString &name ) 58void Skin::init( const QString &name )
@@ -44,2 +60,3 @@ void Skin::init( const QString &name )
44 m_skinPath = "opieplayer2/skins/" + name; 60 m_skinPath = "opieplayer2/skins/" + name;
61 d = new SkinData;
45} 62}
@@ -56,5 +73,5 @@ QImage Skin::backgroundImage() const
56{ 73{
57 if ( m_backgroundImage.isNull() ) 74 if ( d->backgroundImage.isNull() )
58 m_backgroundImage = SkinCache::self().loadImage( QString( "%1/background" ).arg( m_skinPath ) ); 75 d->backgroundImage = SkinCache::self().loadImage( QString( "%1/background" ).arg( m_skinPath ) );
59 return m_backgroundImage; 76 return d->backgroundImage;
60} 77}
@@ -63,5 +80,5 @@ QImage Skin::buttonUpImage() const
63{ 80{
64 if ( m_buttonUpImage.isNull() ) 81 if ( d->buttonUpImage.isNull() )
65 m_buttonUpImage = SkinCache::self().loadImage( QString( "%1/skin%2_up" ).arg( m_skinPath ).arg( m_fileNameInfix ) ); 82 d->buttonUpImage = SkinCache::self().loadImage( QString( "%1/skin%2_up" ).arg( m_skinPath ).arg( m_fileNameInfix ) );
66 return m_buttonUpImage; 83 return d->buttonUpImage;
67} 84}
@@ -70,5 +87,5 @@ QImage Skin::buttonDownImage() const
70{ 87{
71 if ( m_buttonDownImage.isNull() ) 88 if ( d->buttonDownImage.isNull() )
72 m_buttonDownImage = SkinCache::self().loadImage( QString( "%1/skin%2_down" ).arg( m_skinPath ).arg( m_fileNameInfix ) ); 89 d->buttonDownImage = SkinCache::self().loadImage( QString( "%1/skin%2_down" ).arg( m_skinPath ).arg( m_fileNameInfix ) );
73 return m_buttonDownImage; 90 return d->buttonDownImage;
74} 91}
@@ -77,4 +94,4 @@ QImage Skin::buttonMask( const MediaWidget::SkinButtonInfo *skinButtonInfo, uint
77{ 94{
78 if ( !m_buttonMask.isNull() ) 95 if ( !d->buttonMask.isNull() )
79 return m_buttonMask; 96 return d->buttonMask;
80 97
@@ -82,4 +99,4 @@ QImage Skin::buttonMask( const MediaWidget::SkinButtonInfo *skinButtonInfo, uint
82 99
83 m_buttonMask = QImage( buttonAreaSize, 8, 255 ); 100 d->buttonMask = QImage( buttonAreaSize, 8, 255 );
84 m_buttonMask.fill( 0 ); 101 d->buttonMask.fill( 0 );
85 102
@@ -88,3 +105,3 @@ QImage Skin::buttonMask( const MediaWidget::SkinButtonInfo *skinButtonInfo, uint
88 105
89 return m_buttonMask; 106 return d->buttonMask;
90} 107}
@@ -96,6 +113,6 @@ void Skin::addButtonToMask( int tag, const QImage &maskImage ) const
96 113
97 uchar **dest = m_buttonMask.jumpTable(); 114 uchar **dest = d->buttonMask.jumpTable();
98 for ( int y = 0; y < m_buttonMask.height(); y++ ) { 115 for ( int y = 0; y < d->buttonMask.height(); y++ ) {
99 uchar *line = dest[y]; 116 uchar *line = dest[y];
100 for ( int x = 0; x < m_buttonMask.width(); x++ ) 117 for ( int x = 0; x < d->buttonMask.width(); x++ )
101 if ( !qRed( maskImage.pixel( x, y ) ) ) 118 if ( !qRed( maskImage.pixel( x, y ) ) )
@@ -107,7 +124,7 @@ QImage Skin::buttonMaskImage( const QString &fileName ) const
107{ 124{
108 ButtonMaskImageMap::Iterator it = m_buttonMasks.find( fileName ); 125 SkinData::ButtonMaskImageMap::Iterator it = d->buttonMasks.find( fileName );
109 if ( it == m_buttonMasks.end() ) { 126 if ( it == d->buttonMasks.end() ) {
110 QString prefix = m_skinPath + QString::fromLatin1( "/skin%1_mask_" ).arg( m_fileNameInfix ); 127 QString prefix = m_skinPath + QString::fromLatin1( "/skin%1_mask_" ).arg( m_fileNameInfix );
111 QString path = prefix + fileName + ".png"; 128 QString path = prefix + fileName + ".png";
112 it = m_buttonMasks.insert( fileName, SkinCache::self().loadImage( path ) ); 129 it = d->buttonMasks.insert( fileName, SkinCache::self().loadImage( path ) );
113 } 130 }
diff --git a/noncore/multimedia/opieplayer2/skin.h b/noncore/multimedia/opieplayer2/skin.h
index 9f7326e..5ab6574 100644
--- a/noncore/multimedia/opieplayer2/skin.h
+++ b/noncore/multimedia/opieplayer2/skin.h
@@ -34,2 +34,4 @@
34 34
35struct SkinData;
36
35class Skin 37class Skin
@@ -39,2 +41,3 @@ public:
39 Skin( const QString &fileNameInfix ); 41 Skin( const QString &fileNameInfix );
42 ~Skin();
40 43
@@ -60,9 +63,3 @@ private:
60 63
61 typedef QMap<QString, QImage> ButtonMaskImageMap; 64 SkinData *d;
62
63 mutable QImage m_backgroundImage;
64 mutable QImage m_buttonUpImage;
65 mutable QImage m_buttonDownImage;
66 mutable QImage m_buttonMask;
67 mutable ButtonMaskImageMap m_buttonMasks;
68 65