contentstorage/caclient/s60/src/cabitmapadapter.cpp
changeset 96 5d243a69bdda
parent 92 782e3408c2ab
child 107 b34d53f6acdf
--- a/contentstorage/caclient/s60/src/cabitmapadapter.cpp	Mon May 24 20:50:46 2010 +0300
+++ b/contentstorage/caclient/s60/src/cabitmapadapter.cpp	Fri May 28 16:17:03 2010 +0300
@@ -31,60 +31,6 @@
 #include "cadef.h"
 #include "cabitmapadapter.h"
 
-static QImage::Format TDisplayMode2Format(TDisplayMode mode)
-{
-    QImage::Format format;
-    switch (mode) {
-    case EGray2:
-        format = QImage::Format_MonoLSB;
-        break;
-    case EColor256:
-    case EGray256:
-        format = QImage::Format_Indexed8;
-        break;
-    case EColor4K:
-        format = QImage::Format_RGB444;
-        break;
-    case EColor64K:
-        format = QImage::Format_RGB16;
-        break;
-    case EColor16M:
-        format = QImage::Format_RGB888;
-        break;
-    case EColor16MU:
-        format = QImage::Format_RGB32;
-        break;
-    case EColor16MA:
-        format = QImage::Format_ARGB32;
-        break;
-    case EColor16MAP:
-        format = QImage::Format_ARGB32_Premultiplied;
-        break;
-    default:
-        format = QImage::Format_Invalid;
-        break;
-    }
-    return format;
-}
-
-QPixmap CaBitmapAdapter::fromSymbianCFbsBitmap(CFbsBitmap *aBitmap)
-{
-    aBitmap->BeginDataAccess();
-    uchar *data = (uchar *)aBitmap->DataAddress();
-    TSize size = aBitmap->SizeInPixels();
-    TDisplayMode displayMode = aBitmap->DisplayMode();
-
-    // QImage format must match to bitmap format
-    QImage image(data, size.iWidth, size.iHeight, TDisplayMode2Format(
-        displayMode));
-    aBitmap->EndDataAccess();
-
-    // No data copying happens because
-    // image format matches native OpenVG format.
-    // So QPixmap actually points to CFbsBitmap data.
-    return QPixmap::fromImage(image);
-}
-
 // -----------------------------------------------------------------------------
 // copying compressed bitmap
 //----------------------------------------------------------------------------
@@ -108,17 +54,19 @@
         CFbsBitmap* fbsMask, QPixmap& pixmap)
 {
     if (fbsBitmap->Header().iCompression == ENoBitmapCompression) {
-        pixmap = CaBitmapAdapter::fromSymbianCFbsBitmap(fbsBitmap);
-        QPixmap mask = CaBitmapAdapter::fromSymbianCFbsBitmap(fbsMask);
+        pixmap = pixmap.fromSymbianCFbsBitmap(fbsBitmap);
+        QPixmap mask;
+        mask = mask.fromSymbianCFbsBitmap(fbsMask);
         pixmap.setAlphaChannel(mask);
     } else { // we need special handling for icons in 9.2 (NGA)
         // let's hope that in future it will be in QT code
         CFbsBitmap *temp(NULL);
         temp = CaBitmapAdapter::copyBitmapLC(fbsBitmap);
-        pixmap = CaBitmapAdapter::fromSymbianCFbsBitmap(temp);
+        pixmap = pixmap.fromSymbianCFbsBitmap(temp);
         CleanupStack::PopAndDestroy();
         temp = CaBitmapAdapter::copyBitmapLC(fbsMask);
-        QPixmap mask = CaBitmapAdapter::fromSymbianCFbsBitmap(temp);
+        QPixmap mask;
+        mask = mask.fromSymbianCFbsBitmap(temp);
         CleanupStack::PopAndDestroy();
         pixmap.setAlphaChannel(mask);
     }