Use pixmapCache in sprite assembly
authorAlan Alpert <alan.alpert@nokia.com>
Tue, 27 Mar 2012 07:29:48 +0000 (17:29 +1000)
committerQt by Nokia <qt-info@nokia.com>
Wed, 28 Mar 2012 03:49:28 +0000 (05:49 +0200)
Change-Id: Ibd4f5ea08a548e3c255db3e771b667f5850978e2
Reviewed-by: Damian Jansen <damian.jansen@nokia.com>
src/quick/items/qquickspriteengine.cpp

index d4ddbc4..900cb84 100644 (file)
@@ -389,6 +389,7 @@ QImage QQuickSpriteEngine::assembledImage()
                 else
                     qmlInfo(state) << "SpriteEngine: Animations too large to fit in one texture, pushed over the edge by:" << state->source().toLocalFile();
                 qmlInfo(state) << "SpriteEngine: Your texture max size today is " << maxSize;
+                return QImage();
             }
             state->m_generatedCount = rowsNeeded;
             h += state->frameHeight() * rowsNeeded;
@@ -407,7 +408,7 @@ QImage QQuickSpriteEngine::assembledImage()
     QPainter p(&image);
     int y = 0;
     foreach (QQuickSprite* state, m_sprites){
-        QImage img(state->source().toLocalFile());
+        QImage img(state->m_pix.image());
         int frameWidth = state->m_frameWidth;
         int frameHeight = state->m_frameHeight;
         if (img.height() == frameHeight && img.width() <  maxSize){//Simple case