javauis/m2g_qt/src/M2GUtils.cpp
changeset 57 59b3b4473dc8
parent 56 abc41079b313
child 64 0ea12c182930
--- a/javauis/m2g_qt/src/M2GUtils.cpp	Fri Jul 23 12:27:20 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,346 +0,0 @@
-/*
-* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Util methods
-*
-*/
-
-// INCLUDE FILES
-#include <bitdev.h> // CFbsBitmapDevice
-#include <bitstd.h> // CFbsBitGc
-#include <e32math.h> // FRand
-#include "M2GUtils.h"
-
-
-M2G_NS_START
-
-// EXTERNAL DATA STRUCTURES
-
-// EXTERNAL FUNCTION PROTOTYPES
-
-// CONSTANTS
-
-// MACROS
-
-// LOCAL CONSTANTS AND MACROS
-
-// MODULE DATA STRUCTURES
-
-// LOCAL FUNCTION PROTOTYPES
-
-// FORWARD DECLARATIONS
-class TSWTBitBlt;
-class TM2GBitmapLock;
-// -----------------------------------------------------------------------------
-// M2GBitmapUtils::BitBlt
-// -----------------------------------------------------------------------------
-TInt M2GBitmapUtils::BitBlt(CFbsBitmap& aTarget,
-                            const CFbsBitmap& aSource,
-                            const TPoint& aPoint,
-                            const TRect* aRect,
-                            const CFbsBitmap* aSourceMask)
-{
-    M2G_DEBUG_2("M2G_DEBUG: M2GBitmapUtils::BitBlt() - Point(x=%d, y=%d)", aPoint.iX, aPoint.iY);
-    CFbsBitGc* context = NULL;
-    CFbsBitmapDevice* device = NULL;
-    TInt err = KM2GOk;
-    TRAP(err, (device = CFbsBitmapDevice::NewL(&aTarget)));
-    if ((err == KM2GOk) && (device != NULL))
-    {
-        err = device->CreateContext(context);
-        if ((err == KM2GOk) && (context != NULL))
-        {
-            M2G_DEBUG_0("M2G_DEBUG: M2GBitmapUtils::BitBlt() - CFbsBitGc::BitBlt()");
-            if (aRect)
-            {
-                // Check if mask
-                if (aSourceMask)
-                {
-                    M2G_DEBUG_4("M2G_DEBUG: M2GBitmapUtils::BitBlt() -  mask rect(x1=%d, y1=%d, x2=%d, y2=%d)", aRect->iTl.iX, aRect->iTl.iY, aRect->iBr.iX, aRect->iBr.iY);
-                    // A pixel that is masked by a BLACK is NOT transferred to a destination rectangle.
-                    context->BitBltMasked(aPoint, &aSource, *aRect, aSourceMask, ETrue);
-                    err = KM2GOk;
-                }
-                else
-                {
-                    M2G_DEBUG_4("M2G_DEBUG: M2GBitmapUtils::BitBlt() - rect(x1=%d, y1=%d, x2=%d, y2=%d)", aRect->iTl.iX, aRect->iTl.iY, aRect->iBr.iX, aRect->iBr.iY);
-                    context->BitBlt(aPoint, &aSource, *aRect);
-                    err = KM2GOk;
-                }
-            }
-            else
-            {
-                M2G_DEBUG_0("M2G_DEBUG: M2GBitmapUtils::BitBlt() - no rect");
-                context->BitBlt(aPoint, &aSource);
-                err = KM2GOk;
-            }
-        }
-    }
-    delete context;
-    delete device;
-    context = NULL;
-    device = NULL;
-    M2G_DEBUG_1("M2G_DEBUG: M2GBitmapUtils::BitBlt() - end: %d", err);
-    return err;
-}
-
-
-TInt M2GBitmapUtils::BitQBlt(QImage& aTargetQimage,
-                            const QImage& aSourceQimage,
-                            const TPoint& aPoint,
-                            const TRect* aRect,
-                            const CFbsBitmap* aSourceMask)
-{
-    M2G_DEBUG_2("M2G_DEBUG: M2GBitmapUtils::BitQBlt() - Point(x=%d, y=%d)", aPoint.iX, aPoint.iY);
-    
-    QPixmap pixmapTarget = QPixmap::fromImage(aTargetQimage);
-    CFbsBitmap* aTarget  = pixmapTarget.toSymbianCFbsBitmap();
-
-    QPixmap pixmapSource = QPixmap::fromImage(aSourceQimage);
-    CFbsBitmap* aSource = pixmapSource.toSymbianCFbsBitmap();
-
-    CFbsBitGc* context = NULL;
-    CFbsBitmapDevice* device = NULL;
-    TInt err = KM2GOk;
-    TRAP(err, (device = CFbsBitmapDevice::NewL(aTarget)));
-    if ((err == KM2GOk) && (device != NULL))
-    {
-        err = device->CreateContext(context);
-        if ((err == KM2GOk) && (context != NULL))
-        {
-            M2G_DEBUG_0("M2G_DEBUG: M2GBitmapUtils::BitBlt() - CFbsBitGc::BitBlt()");
-            if (aRect)
-            {
-                // Check if mask
-                if (aSourceMask)
-                {
-                    M2G_DEBUG_4("M2G_DEBUG: M2GBitmapUtils::BitBlt() -  mask rect(x1=%d, y1=%d, x2=%d, y2=%d)", aRect->iTl.iX, aRect->iTl.iY, aRect->iBr.iX, aRect->iBr.iY);
-                    // A pixel that is masked by a BLACK is NOT transferred to a destination rectangle.
-                    context->BitBltMasked(aPoint, aSource, *aRect, aSourceMask, ETrue);
-                    err = KM2GOk;
-                }
-                else
-                {
-                    M2G_DEBUG_4("M2G_DEBUG: M2GBitmapUtils::BitBlt() - rect(x1=%d, y1=%d, x2=%d, y2=%d)", aRect->iTl.iX, aRect->iTl.iY, aRect->iBr.iX, aRect->iBr.iY);
-                    context->BitBlt(aPoint, aSource, *aRect);
-                    err = KM2GOk;
-                }
-            }
-            else
-            {
-                M2G_DEBUG_0("M2G_DEBUG: M2GBitmapUtils::BitBlt() - no rect");
-                context->BitBlt(aPoint, aSource);
-                err = KM2GOk;
-            }
-        }
-    }
-    delete context;
-    delete device;
-    context = NULL;
-    device = NULL;
-    M2G_DEBUG_1("M2G_DEBUG: M2GBitmapUtils::BitBlt() - end: %d", err);
-    return err;
-}
-
-
-
-TInt M2GBitmapUtils::BitBlt(CBitmapContext& aTargetContext,
-                            const CFbsBitmap& aSource,
-                            const TPoint& aPoint,
-                            const TRect* aRect,
-                            const CFbsBitmap* aSourceMask,
-                            /*MSwtClient* aClientHandle,*/
-                            TBool aUseNativeClear /*= EFalse*/)
-{
-    M2G_DEBUG_2("M2G_DEBUG: M2GBitmapUtils::BitBlt() - Point(x=%d, y=%d)", aPoint.iX, aPoint.iY);
-    TInt err = KM2GOk;
-    TSWTBitBlt bitBlitter(aTargetContext, aPoint,
-                          &aSource, aRect, aSourceMask, aUseNativeClear);
-    bitBlitter();
-    M2G_DEBUG_1("M2G_DEBUG: M2GBitmapUtils::BitBlt() - end: %d", err);
-    return err;
-}
-
-// -----------------------------------------------------------------------------
-// TM2GRenderRect::TM2GRenderRect
-// -----------------------------------------------------------------------------
-TM2GRenderRect::TM2GRenderRect(
-    TInt aAnchorX, TInt aAnchorY,
-    TInt aClipX, TInt aClipY,
-    TInt aClipW, TInt aClipH)
-        : TRect(
-            TPoint(aClipX, aClipY),
-            TSize(aClipW, aClipH)),
-        iAnchorX(aAnchorX),
-        iAnchorY(aAnchorY)
-{
-}
-
-// -----------------------------------------------------------------------------
-// TM2GRenderRect::TM2GRenderRect
-// -----------------------------------------------------------------------------
-TM2GRenderRect::TM2GRenderRect(TInt* aDimensions, TInt /*aLength*/)
-        : TRect(
-            TPoint(aDimensions[EClipX], aDimensions[EClipY]),
-            TSize(aDimensions[EClipW], aDimensions[EClipH])),
-        iAnchorX(aDimensions[EAnchorX]),
-        iAnchorY(aDimensions[EAnchorY])
-{
-}
-
-// -----------------------------------------------------------------------------
-// TM2GRenderRect::~TM2GRenderRect
-// -----------------------------------------------------------------------------
-TM2GRenderRect::~TM2GRenderRect()
-{
-}
-
-// -----------------------------------------------------------------------------
-// TM2GRenderRect::TM2GRenderRect
-// -----------------------------------------------------------------------------
-TM2GRenderRect::TM2GRenderRect(const TM2GRenderRect& aRd)
-{
-    (*this = aRd);
-}
-
-// -----------------------------------------------------------------------------
-// TM2GRenderRect::operator=
-// -----------------------------------------------------------------------------
-TM2GRenderRect& TM2GRenderRect::operator=(const TM2GRenderRect& aRd)
-{
-    if (this != &aRd)
-    {
-        iAnchorX = aRd.iAnchorX;
-        iAnchorY = aRd.iAnchorY;
-        SetRect(aRd.iTl.iX, aRd.iTl.iY, aRd.iBr.iX, aRd.iBr.iY);
-    }
-    return *this;
-}
-
-// -----------------------------------------------------------------------------
-// TM2GRenderRect::GetRegionSizeInPixels
-// -----------------------------------------------------------------------------
-TSize TM2GRenderRect::GetRegionSizeInPixels(
-    TM2GRenderRect& aRect,
-    const TSize& aSz)
-{
-    return TSize(
-               // determine the width of the region to be paint
-               M2GGeneral::Min< TInt >(aRect.GetAnchorX() + aSz.iWidth, aRect.GetClipX() + aRect.GetClipW()) -
-               M2GGeneral::Max< TInt >(aRect.GetAnchorX(), aRect.GetClipX()),
-               // determine the height of the region to be paint
-               M2GGeneral::Min< TInt >(aRect.GetAnchorY() + aSz.iHeight, aRect.GetClipY() + aRect.GetClipH()) -
-               M2GGeneral::Max< TInt >(aRect.GetAnchorY(), aRect.GetClipY()));
-}
-
-
-// -----------------------------------------------------------------------------
-// TM2GBitmapLock::TM2GBitmapLock
-// -----------------------------------------------------------------------------
-TM2GBitmapLock::TM2GBitmapLock(const CFbsBitmap* aBitmap, TBool aLock)
-        : iBitmap(aBitmap), iIsLocked(EFalse)
-{
-    if (aLock)
-    {
-        Lock();
-    }
-}
-
-// -----------------------------------------------------------------------------
-// TM2GBitmapLock::~TM2GBitmapLock
-// -----------------------------------------------------------------------------
-TM2GBitmapLock::~TM2GBitmapLock()
-{
-    Unlock();
-}
-
-// -----------------------------------------------------------------------------
-// TM2GBitmapLock::Lock()
-// -----------------------------------------------------------------------------
-void TM2GBitmapLock::Lock()
-{
-    if (iBitmap && !iIsLocked)
-    {
-        iBitmap->LockHeap();
-        iIsLocked = ETrue;
-    }
-}
-
-// -----------------------------------------------------------------------------
-// TM2GBitmapLock::Unlock()
-// -----------------------------------------------------------------------------
-void TM2GBitmapLock::Unlock()
-{
-    if (iBitmap && iIsLocked)
-    {
-        iBitmap->UnlockHeap();
-        iIsLocked = EFalse;
-    }
-}
-
-TSWTBitBlt::TSWTBitBlt(CBitmapContext& aTargetContext,
-                       const TPoint& aPoint,
-                       const CFbsBitmap* aBitmap,
-                       const TRect* aSourceRect,
-                       const CFbsBitmap* aMaskBitmap,
-                       TBool aUseNativeClear)
-        : iTargetContext(aTargetContext),
-        iPoint(aPoint),
-        iUseNativeClear(aUseNativeClear)
-{
-    iBitmap = aBitmap;
-    iRect = aSourceRect;
-    iMaskBitmap = aMaskBitmap;
-}
-void TSWTBitBlt::operator()() const
-{
-    M2G_DEBUG_0("TSWTBitBlt()+");
-    CFbsBitmap* tempBitmap = new(ELeave) CFbsBitmap;
-    CleanupStack::PushL(tempBitmap);
-    User::LeaveIfError(tempBitmap->Duplicate(iBitmap->Handle()));
-    if (iRect)
-    {
-        if (iUseNativeClear)
-        {
-            iTargetContext.SetBrushColor(KRgbWhite);
-            iTargetContext.Clear(*iRect);
-        }
-        if (iMaskBitmap)
-        {
-            CFbsBitmap* tempMask = new(ELeave) CFbsBitmap;
-            CleanupStack::PushL(tempMask);
-            User::LeaveIfError(tempMask->Duplicate(iMaskBitmap->Handle()));
-            iTargetContext.BitBltMasked(
-                iPoint, tempBitmap, *iRect, tempMask, ETrue);
-            CleanupStack::PopAndDestroy(tempMask);
-        }
-        else
-        {
-            iTargetContext.BitBlt(iPoint, tempBitmap, *iRect);
-        }
-    }
-    else
-    {
-        if (iUseNativeClear)
-        {
-            iTargetContext.SetBrushColor(KRgbWhite);
-            iTargetContext.Clear();
-        }
-        iTargetContext.BitBlt(iPoint, tempBitmap);
-    }
-    CleanupStack::PopAndDestroy(tempBitmap);
-    M2G_DEBUG_0("TSWTBitBlt()-");
-}
-//TODO Check for M2G_DO_LOCK M2G_DO_UNLOCK 
-//TODO Put Check for aSvgProxyHandle in all the functions.
-M2G_NS_END