diff -r 000000000000 -r 5d03bc08d59c windowing/windowserver/tdynamicres/inc/wsdynamicresbasic.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/windowing/windowserver/tdynamicres/inc/wsdynamicresbasic.h Tue Feb 02 01:47:50 2010 +0200 @@ -0,0 +1,187 @@ +// 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 +*/ + +#ifndef __WSDYNAMICRESBASIC_H__ +#define __WSDYNAMICRESBASIC_H__ + +#include "wsdynamicresbase.h" +#include +#include +#include +#include +/** + * + **/ + +static TBool cSCLogged =EFalse; + + +class CWsDynamicResBasic : public CWsDynamicResBase +{ + typedef CWsDynamicResBase MyBase; +private: + struct TBitmapRegionPair + { + CFbsBitmap* bitmap; + RRegion* region; + TRect drawRect; + }; + +public: + CWsDynamicResBasic(); + virtual ~CWsDynamicResBasic(); + virtual void SetupL(); + virtual void TearDownL(); + virtual void TearDownFromDeleteL(); + + static CTestSuite* CreateSuiteL( const TDesC& aName ); + + void ResetScreens(); + +protected: +//tests + + //BASIC + void GRAPHICS_WSERV_DYNAMICRES_0001L(); + void GRAPHICS_WSERV_DYNAMICRES_0002L(); + void GRAPHICS_WSERV_DYNAMICRES_0003L(); + void GRAPHICS_WSERV_DYNAMICRES_0004L(); + void GRAPHICS_WSERV_DYNAMICRES_0005L(); + void GRAPHICS_WSERV_DYNAMICRES_0006L(); + void GRAPHICS_WSERV_DYNAMICRES_0007L(); + void GRAPHICS_WSERV_DYNAMICRES_0008L(); + void GRAPHICS_WSERV_DYNAMICRES_0009L(); + void GRAPHICS_WSERV_DYNAMICRES_0010L(); + void GRAPHICS_WSERV_DYNAMICRES_0011L(); + void GRAPHICS_WSERV_DYNAMICRES_0012L(); + void GRAPHICS_WSERV_DYNAMICRES_0013L(); + void GRAPHICS_WSERV_DYNAMICRES_0014L(); + void GRAPHICS_WSERV_DYNAMICRES_0015L(); + void GRAPHICS_WSERV_DYNAMICRES_0016L(); + void GRAPHICS_WSERV_DYNAMICRES_0017L(); + void GRAPHICS_WSERV_DYNAMICRES_0018L(); + + //NEGATIVE + void GRAPHICS_WSERV_DYNAMICRES_0021L(TBool aScaleMode); + + //OOM + void GRAPHICS_WSERV_DYNAMICRES_0031L(); + void GRAPHICS_WSERV_DYNAMICRES_0032L(); + void GRAPHICS_WSERV_DYNAMICRES_0033L(); + void GRAPHICS_WSERV_DYNAMICRES_0034L(); + + //SCREEN CAPTURE + void GRAPHICS_WSERV_DYNAMICRES_0041L(TBool aIsSurface); + void GRAPHICS_WSERV_DYNAMICRES_0042L(TBool aIsSurface); + + //DYNAMIC SCREEN MODE + void GRAPHICS_WSERV_DYNAMICRES_0051L(); + void GRAPHICS_WSERV_DYNAMICRES_0052L(); + void GRAPHICS_WSERV_DYNAMICRES_0053L(); + + //DEFECT + void GRAPHICS_WSERV_DYNAMICRES_0101L(); + void GRAPHICS_WSERV_DYNAMICRES_0102L(); + + + void SetRotation (TDisplayConfiguration& aConfig, const MDisplayControl::TResolution& aResolution); + TBool Compare(const CFbsBitmap& aBitmap, const TRect& aRect1, + const TRect& aRect2, RArray& aRegionArray, TBool aIsSurface); + TRgb GreatestColor(TRgb& aColor) const; + +//data members: +private: + CActiveScheduler iScheduler; +}; + +class CWsDisplayEvent : public CActive + { + +public: + CWsDisplayEvent(RWsSession *aWs); + ~CWsDisplayEvent(); + void Request(); + TInt ConfigSpinner() {return iConfigSpinner;} + TInt ResListSpinner() {return iResListSpinner;} + TInt ReceivedEventCount() {return iReceivedEventCount;} + TInt ReceivedDeviceEventCount() {return iReceivedDeviceEventCount;} + TInt ReceivedPointerEventCount() {return iReceivedPointerEventCount;} + void SetExpectedPointPos(const TPoint& aPos) {iPointerPos = aPos;} + TBool PointerTestPassed() {return iPointerPosTestPass;} +protected: + void DoCancel(); + void RunL(); + +private: + RWsSession *iWs; + TInt iConfigSpinner; + TInt iResListSpinner; + TInt iReceivedEventCount; + TInt iReceivedDeviceEventCount; + TInt iReceivedPointerEventCount; + TPoint iPointerPos; + TBool iPointerPosTestPass; + }; + +class CEventTimer : public CActive + { +public: + static CEventTimer* NewL(); + ~CEventTimer(); + void Wait(TInt aDelay); + // From CActive: + void RunL(); + void DoCancel(); + +protected: + CEventTimer(); + void ConstructL(); + protected: +RTimer iTimer; +}; + + + +class CDSATestDrawing: public CTimer, public MDirectScreenAccess + { +public: + + void Draw(); + + + + static CDSATestDrawing* NewL(); + void ConstructL(); + //from MDirectScreenAccess + void Restart(RDirectScreenAccess::TTerminationReasons aReason); + void AbortNow(RDirectScreenAccess::TTerminationReasons aReason); + ~CDSATestDrawing(); + void SetDSA(CDirectScreenAccess *aDSA){iDSA = aDSA;} + void SetWindow(RWindow &aWindow){iWin = &aWindow;} + void StartDrawingL(CDirectScreenAccess *aDSA); + void RunL(); + +private: + CDSATestDrawing(); + TRect iRect; + RWindow* iWin; + CDirectScreenAccess *iDSA; + }; + +#endif /*__WSDYNAMICRESBASIC_H__*/