summaryrefslogtreecommitdiff
authorsimon <simon>2002-12-14 17:54:47 (UTC)
committer simon <simon>2002-12-14 17:54:47 (UTC)
commit03c4518324c328c530eb795705b6a4281d65055a (patch) (unidiff)
tree903d32d360050d5eb1a65f104618d215e6f804ae
parenta3b9d0a1e6ee4f1e74ac3335cb2ba67f6da30476 (diff)
downloadopie-03c4518324c328c530eb795705b6a4281d65055a.zip
opie-03c4518324c328c530eb795705b6a4281d65055a.tar.gz
opie-03c4518324c328c530eb795705b6a4281d65055a.tar.bz2
- save a bit of memory by caching a pixmap instead
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/skin.cpp46
-rw-r--r--noncore/multimedia/opieplayer2/skin.h4
2 files changed, 25 insertions, 25 deletions
diff --git a/noncore/multimedia/opieplayer2/skin.cpp b/noncore/multimedia/opieplayer2/skin.cpp
index e9fb5a6..d6f4080 100644
--- a/noncore/multimedia/opieplayer2/skin.cpp
+++ b/noncore/multimedia/opieplayer2/skin.cpp
@@ -38,3 +38,3 @@ struct SkinData
38 38
39 QImage backgroundImage; 39 QPixmap backgroundPixmap;
40 QImage buttonUpImage; 40 QImage buttonUpImage;
@@ -56,3 +56,3 @@ private:
56 typedef QCache<SkinData> DataCache; 56 typedef QCache<SkinData> DataCache;
57 typedef QCache<QImage> BackgroundImageCache; 57 typedef QCache<QPixmap> BackgroundPixmapCache;
58 58
@@ -62,3 +62,3 @@ private:
62 DataCache m_cache; 62 DataCache m_cache;
63 BackgroundImageCache m_backgroundImageCache; 63 BackgroundPixmapCache m_backgroundPixmapCache;
64}; 64};
@@ -90,3 +90,3 @@ void Skin::preload( const MediaWidget::SkinButtonInfo *skinButtonInfo, uint butt
90{ 90{
91 backgroundImage(); 91 backgroundPixmap();
92 buttonUpImage(); 92 buttonUpImage();
@@ -96,7 +96,7 @@ void Skin::preload( const MediaWidget::SkinButtonInfo *skinButtonInfo, uint butt
96 96
97QImage Skin::backgroundImage() const 97QPixmap Skin::backgroundPixmap() const
98{ 98{
99 if ( d->backgroundImage.isNull() ) 99 if ( d->backgroundPixmap.isNull() )
100 d->backgroundImage = loadImage( QString( "%1/background" ).arg( m_skinPath ) ); 100 d->backgroundPixmap = loadImage( QString( "%1/background" ).arg( m_skinPath ) );
101 return d->backgroundImage; 101 return d->backgroundPixmap;
102} 102}
@@ -175,3 +175,3 @@ SkinCache::SkinCache()
175 // ... and one background pixmap 175 // ... and one background pixmap
176 m_backgroundImageCache.setMaxCost( 1 ); 176 m_backgroundPixmapCache.setMaxCost( 1 );
177} 177}
@@ -188,9 +188,9 @@ SkinData *SkinCache::lookupAndTake( const QString &skinPath, const QString &file
188 188
189 QImage *bgImage = m_backgroundImageCache.find( skinPath ); 189 QPixmap *bgPixmap = m_backgroundPixmapCache.find( skinPath );
190 if ( bgImage ) { 190 if ( bgPixmap ) {
191 qDebug( "SkinCache: hit on bgimage" ); 191 qDebug( "SkinCache: hit on bgpixmap" );
192 data->backgroundImage = *bgImage; 192 data->backgroundPixmap = *bgPixmap;
193 } 193 }
194 else 194 else
195 data->backgroundImage = QImage(); 195 data->backgroundPixmap = QPixmap();
196 196
@@ -201,5 +201,5 @@ void SkinCache::store( const QString &skinPath, const QString &fileNameInfix, Sk
201{ 201{
202 QImage *backgroundImage = new QImage( data->backgroundImage ); 202 QPixmap *backgroundPixmap = new QPixmap( data->backgroundPixmap );
203 203
204 data->backgroundImage = QImage(); 204 data->backgroundPixmap = QPixmap();
205 205
@@ -211,5 +211,5 @@ void SkinCache::store( const QString &skinPath, const QString &fileNameInfix, Sk
211 211
212 if ( m_backgroundImageCache.find( skinPath, false /*ref*/ ) != 0 || 212 if ( m_backgroundPixmapCache.find( skinPath, false /*ref*/ ) != 0 ||
213 !m_backgroundImageCache.insert( skinPath, backgroundImage ) ) 213 !m_backgroundPixmapCache.insert( skinPath, backgroundPixmap ) )
214 delete backgroundImage; 214 delete backgroundPixmap;
215} 215}
@@ -219,3 +219,3 @@ SkinLoader::IncrementalLoader::IncrementalLoader( const Info &info )
219{ 219{
220 m_currentState = LoadBackgroundImage; 220 m_currentState = LoadBackgroundPixmap;
221} 221}
@@ -225,5 +225,5 @@ SkinLoader::IncrementalLoader::LoaderResult SkinLoader::IncrementalLoader::loadS
225 switch ( m_currentState ) { 225 switch ( m_currentState ) {
226 case LoadBackgroundImage: 226 case LoadBackgroundPixmap:
227 qDebug( "load bgimage" ); 227 qDebug( "load bgpixmap" );
228 m_skin.backgroundImage(); 228 m_skin.backgroundPixmap();
229 m_currentState = LoadButtonUpImage; 229 m_currentState = LoadButtonUpImage;
diff --git a/noncore/multimedia/opieplayer2/skin.h b/noncore/multimedia/opieplayer2/skin.h
index a43a1d0..90062c2 100644
--- a/noncore/multimedia/opieplayer2/skin.h
+++ b/noncore/multimedia/opieplayer2/skin.h
@@ -42,3 +42,3 @@ public:
42 42
43 QImage backgroundImage() const; 43 QPixmap backgroundPixmap() const;
44 QImage buttonUpImage() const; 44 QImage buttonUpImage() const;
@@ -108,3 +108,3 @@ private:
108 private: 108 private:
109 enum State { LoadBackgroundImage, LoadButtonUpImage, LoadButtonDownImage, LoadButtonMasks, LoadButtonMask }; 109 enum State { LoadBackgroundPixmap, LoadButtonUpImage, LoadButtonDownImage, LoadButtonMasks, LoadButtonMask };
110 110