diff -r 2717213c588a -r 171fae344dd4 windowing/windowserver/tauto/tdrawresource.h --- a/windowing/windowserver/tauto/tdrawresource.h Tue Jun 22 15:21:29 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,221 +0,0 @@ -// Copyright (c) 2008-2009 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: -// - -/** - @file - @test - @internalComponent - Internal Symbian test code -*/ - -#ifndef TDRAWRESOURCE_H_ -#define TDRAWRESOURCE_H_ - -#include "AUTO.H" -#include -#include -#include -#include -#include -#include -#include -#include "RemoteGc.h" -#include "CommandBuffer.h" - -class TSgImageInfo; - -_LIT(KTDrawResourceStep, "TDrawResource"); - -const TSize KSourceSize(200,200); //The size of the rect to copy from the screen -const TPoint KDestPoint(0,0); -const TRect KCopyTestRect(TPoint(0,0), TSize(200,200)); //The test rect to copy from the screen -const TRect KSourceRect(TPoint(0,0), TSize(50,50));//Rect of the source image to be drawn -const TRect KDestRect(TPoint(10,10), TSize(60,60));//Rect of the destination to draw to -const CWindowGc::TGraphicsRotation KTestRotation= CWindowGc::EGraphicsRotation90; -const TPoint KPlayOffset(0,0); - - -/** - * Dummy class used to check the values received by MWsGraphicsContext. - * The only funtions overridden with some functionality are the DrawResource functions. - * These simply receive the values and then store them in public member variables. - */ -class CTestWsGraphicsContext : public CBase, public MWsGraphicsContext, public MWsDrawableSourceProvider - { -public: - static CTestWsGraphicsContext* NewL(RDirectGdiImageTarget& aTarget); - ~CTestWsGraphicsContext(); - -public: //from MWsGraphicsContext - void BitBlt(const TPoint&, const CFbsBitmap&){} - void BitBlt(const TPoint&, const CFbsBitmap&, const TRect&){} - void BitBltMasked(const TPoint&, const CFbsBitmap&, const TRect&, const CFbsBitmap&, TBool){} - void BitBltMasked(const TPoint&, const CFbsBitmap&, const TRect&, const CFbsBitmap&, const TPoint&){} - void ResetClippingRegion(){} - void Clear(); - void Clear(const TRect&){} - void ResetBrushPattern(){} - void ResetFont(){} - void DrawArc(const TRect&, const TPoint&, const TPoint&){} - void DrawPie(const TRect&, const TPoint&, const TPoint&){} - void DrawBitmap(const TRect&, const CFbsBitmap&){} - void DrawBitmap(const TRect&, const CFbsBitmap&, const TRect&){} - void DrawBitmapMasked(const TRect&, const CFbsBitmap&,const TRect&, const CFbsBitmap&, TBool){} - void DrawRoundRect(const TRect&, const TSize&){} - void DrawPolyLine(const TArray&){} - void DrawPolyLineNoEndPoint(const TArray&){} - void DrawPolygon(const TArray& , TFillRule ){} - void DrawEllipse(const TRect&){} - void DrawLine(const TPoint&, const TPoint&){} - void DrawLineTo(const TPoint&){} - void DrawLineBy(const TPoint&){} - void DrawRect(const TRect&){} - void DrawText(const TDesC& ,const TTextParameters* ){} - void DrawText(const TDesC& ,const TTextParameters* ,const TPoint& ){} - void DrawText(const TDesC& ,const TTextParameters* ,const TRect& ){} - void DrawText(const TDesC& ,const TTextParameters* ,const TRect& ,TInt ,TTextAlign ,TInt ){} - void DrawTextVertical(const TDesC& ,const TTextParameters* ,TBool ) {} - void DrawTextVertical(const TDesC& ,const TTextParameters* ,const TPoint& ,TBool ){} - void DrawTextVertical(const TDesC& ,const TTextParameters* ,const TRect& ,TBool ){} - void DrawTextVertical(const TDesC& ,const TTextParameters* ,const TRect& ,TInt ,TBool ,TTextAlign ,TInt ){} - void DrawTextVertical(const TDesC& ,const TTextParameters* ,const TRect& ,TInt ,TInt ,TBool ,TTextAlign ,TInt ){} - void MoveTo(const TPoint&){} - void MoveBy(const TPoint&){} - TPoint Origin() const {return TPoint(0,0);} - void Plot(const TPoint&){} - void Reset(){} - void SetBrushColor(const TRgb&){} - void SetBrushOrigin(const TPoint&){} - void SetBrushStyle(TBrushStyle ){} - void SetClippingRegion(const TRegion&){} - void SetDrawMode(TDrawMode){} - void SetOrigin(const TPoint&){} - void SetPenColor(const TRgb&){} - void SetPenStyle(TPenStyle){} - void SetPenSize(const TSize& ){} - void SetTextShadowColor(const TRgb&){} - void SetCharJustification(TInt, TInt){} - void SetWordJustification(TInt, TInt){} - void SetUnderlineStyle(TFontUnderline){} - void SetStrikethroughStyle(TFontStrikethrough){} - void SetBrushPattern(const CFbsBitmap&){} - void SetBrushPattern(TInt){} - void SetFont(const CFont*){} - void CopyRect(const TPoint&, const TRect&){} - void RectDrawnTo(TRect&){} - void UpdateJustification(const TDesC& ,const TTextParameters* ){} - void UpdateJustificationVertical(const TDesC& ,const TTextParameters* ,TBool ){} - void SetFontNoDuplicate(const CFont* ){} - TBool HasBrushPattern() const{return EFalse;} - TBool HasFont() const{return EFalse;} - void InternalizeL(RReadStream&){} - void ExternalizeL(RWriteStream&){} - TRgb BrushColor() const {return iContext->BrushColor();} - TRgb PenColor() const {return iContext->PenColor();} - TRgb TextShadowColor() const {return iContext->TextShadowColor ();} - - const TRegion& ClippingRegion(){return iRegion;} - TInt GetError(){return KErrNone;} - TInt Push(){return KErrNone;} - void Pop(){} - //from MWsObjectProvider - TAny* ResolveObjectInterface(TUint aTypeId); - - //from MWsDrawableSourceProvider - TInt CreateDrawableSource(const TSgDrawableId& aDrawableId, TAny*& aSource); - void CloseDrawableSource(TAny* aSource); - void DrawResource(const TAny* aSource, const TPoint& aPos, CWindowGc::TGraphicsRotation aRotation = CWindowGc::EGraphicsRotationNone); - void DrawResource(const TAny* aSource, const TRect& aRect, CWindowGc::TGraphicsRotation aRotation = CWindowGc::EGraphicsRotationNone); - void DrawResource(const TAny* aSource, const TRect& aRectDest, const TRect& aRectSrc, CWindowGc::TGraphicsRotation aRotation = CWindowGc::EGraphicsRotationNone); - void DrawResource(const TAny* aSource, const TRect& aRect, const TDesC8& aParam); - -private: - void ConstructL(RDirectGdiImageTarget& aTarget); - void DoCreateDrawableSourceL(const TSgDrawableId& aDrawableId, TAny*& aSource); -public: - TPoint iPos; - TRect iDestRect; - TRect iSrcRect; - DirectGdi::TGraphicsRotation iRotation; - RRegion iRegion; -private: - CDirectGdiContext* iContext; - }; - -/** - * Class derived from MWsGraphicResolver. This a dummy implmentation which has no functionality. - * An instance of it is passed to CCommandBuffer::Play to make it a valid call. - */ -class CWSGraphicsRes: public CBase, public MWsGraphicResolver - { -public: - void DrawWsGraphic(TInt, TBool, const TRect&, const TDesC8&) const{} - }; - -class CTDrawResource : public CTWsGraphicsBase - { -public: - CTDrawResource(CTestStep* aStep); - ~CTDrawResource(); - void ConstructL(); -protected: - //from CTGraphicsStep - void RunTestCaseL(TInt aCurTestCase); -private: - void TestDrawResourcePos(); - void TestDrawResourceRect(); - void TestDrawResourceScale(); - void TestRWsDrawableSourceReferenceCountingL(); - void TestRemoteGcDrawResourcePosL(); - void TestRemoteGcDrawResourceRectL(); - void TestRemoteGcDrawResourceScaleL(); - void TestDrawResourceScreensL(); - void TestCopyScreenToBitmapWithDifferentDisplayModesL(); - //Helper functions - TBool CompareBitmapsByPixel(CFbsBitmap* aCandidateBitmap, CFbsBitmap* aReferenceBitmap); - void CreateReferenceAndCopyBitmapsL(); - void CreateSgImageFromBitmapL(RSgImage& aImage); - void BitmapLC(CFbsBitmap*& aBmp); //helper function to extract bitmap from the image - void CreateReferenceBitmapLC(CFbsBitmap*& aBmpTarget, CFbsBitmap* aBmpSrc, TDisplayMode aDestMode); - void CreateBitmapLC(CFbsBitmap*& aBmpTarget, const TSize& aSize, TDisplayMode aDispMode) const; -private: - RWindow iWindow; - CFbsBitmap* iRefBitmap; - CFbsBitmap* iRotatedRefBitmap; - CFbsBitmap* iScaledBitmap; - CFbsBitmap *iScaledCroppedBitmap; - CFbsBitmap* iCopyBitmap; - CFbsBitmap* iBitmapWrongScreenNumber; - CDirectGdiDriver* iDGdiDriver; - - //Required for RemoteGc testing - RSgImageCollection iImageCollection; - RSgImage iImage; - RDirectGdiImageTarget iImageTarget; - RWsDrawableSource iWsDrawableSource; - CTestWsGraphicsContext* iGraphicsCon; - CWSGraphicsRes* iWsGrapicResolver; - }; - -class CTDrawResourceStep : public CTGraphicsStep - { -public: - CTDrawResourceStep(); -protected: - //from CTGraphicsStep - CTGraphicsBase* CreateTestL(); - }; - - -#endif /*TDRAWRESOURCE_H_*/