sl@0: // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // sl@0: sl@0: /** sl@0: @file sl@0: @test sl@0: @internalComponent - Internal Symbian test code sl@0: */ sl@0: sl@0: #ifndef __TDIRECTA2_H__ sl@0: #define __TDIRECTA2_H__ sl@0: sl@0: #include "AUTO.H" sl@0: #include "TGraphicsHarness.h" sl@0: sl@0: // This DSA test code only works when run using a screen that supports transparency. sl@0: class CTDirect2 : public CTWsGraphicsBase, public MDirectScreenAccess sl@0: { sl@0: public: sl@0: CTDirect2(CTestStep* aStep); sl@0: ~CTDirect2(); sl@0: void ConstructL(); sl@0: sl@0: static TInt Timeout(TAny* aAbortTest); sl@0: sl@0: // from MAbortDirectScreenAccess sl@0: void AbortNow(RDirectScreenAccess::TTerminationReasons aReason); sl@0: // from MDirectScreenAccess sl@0: void Restart(RDirectScreenAccess::TTerminationReasons aReason); sl@0: sl@0: protected: sl@0: //from CTGraphicsStep sl@0: void RunTestCaseL(TInt aCurTestCase); sl@0: sl@0: private: sl@0: void StartTranslucentWindowOverDsaL(); sl@0: void HandleTimeout(); sl@0: sl@0: private: sl@0: CWsScreenDevice* iScreenDevice; sl@0: CTWindowGroup* iWindowGroup; sl@0: CTBlankWindow* iUnderWindow; // window to perform DSA on sl@0: CTTitledWindow* iOverWindow; // translucent window to overlap DSA window sl@0: CDirectScreenAccess* iDsa; sl@0: CPeriodic* iTimer; sl@0: TBool iTestCaseComplete; sl@0: TBool iOnceOnly; sl@0: }; sl@0: sl@0: class CTDirect2Step : public CTGraphicsStep sl@0: { sl@0: public: sl@0: CTDirect2Step(); sl@0: protected: sl@0: //from CTGraphicsStep sl@0: virtual CTGraphicsBase* CreateTestL(); sl@0: }; sl@0: sl@0: _LIT(KTDirect2Step,"TDirect2"); sl@0: sl@0: #endif