diff -r bf7481649c98 -r 2717213c588a windowing/windowserver/test/tauto/TORDINAL.H --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/windowing/windowserver/test/tauto/TORDINAL.H Tue Jun 22 15:21:29 2010 +0300 @@ -0,0 +1,134 @@ + +// Copyright (c) 1996-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 __TORDINAL_H__ +#define __TORDINAL_H__ + +#include +#include +#include "../tlib/testbase.h" +#include "AUTO.H" +#include "TGraphicsHarness.h" + +class CTOrdinal; + +class COrdinalClient : public CTClient + { +public: + COrdinalClient(); + virtual void KeyL(const TKeyEvent &aKey,const TTime &aTime); + virtual void ConstructL(); + ~COrdinalClient(); + }; + +class COrdinalWindowBase : public CBase + { +public: + COrdinalWindowBase(CTClient *aClient, CTestBase* aTest, CTestStep* aTestStep); + ~COrdinalWindowBase(); + TInt OrdinalPosition(); + void SetOrdinalPosition(TInt aPos); + void SetOrdinalPosition(TInt aPos,TInt aPri); + virtual void Draw(); + void TestOP(TInt aTestPos); + TInt SetToLastAndGetOP(); + TInt SetToLastAndGetOPPri(TInt aPri); + void SetAndTestOP(TInt aPos); + void SetAndTestOP(TInt aPos,TInt aTestPos); + void SetAndTestOPPri(TInt aPos,TInt aPri,TInt aTestPos); + void SetAndTestOPPri(TInt aPos,TInt aPri); + inline COrdinalWindowBase* NextSibling() const; + inline COrdinalWindowBase* PrevSibling() const; + inline RWindowTreeNode* WinTreeNode(); + inline TUint32 Handle(); +protected: + RWindowTreeNode* iWin; +private: + CTClient* iClient; + CTestBase* iTest; + CTestStep* iTestStep; + }; + +class COrdinalWindow : public COrdinalWindowBase + { +public: + COrdinalWindow(CTClient *aClient, CTestBase* aTest, CTestStep* aTestStep); + static COrdinalWindowBase *NewL(CTClient *aClient, RWindowTreeNode *parent, CTestBase* aTest, CTestStep* aTestStep); +private: + RWindow iClientWin; + }; + +class COrdinalWindowGroup : public COrdinalWindowBase + { +public: + COrdinalWindowGroup(CTClient *aClient, CTestBase* aTest, CTestStep* aTestStep); + static COrdinalWindowBase *NewL(CTClient *aClient, CTestBase* aTest, CTestStep* aTestStep); +private: + RWindowGroup iGroupWin; + }; + +class CTOrdinal : public CTWsGraphicsBase + { +public: + CTOrdinal(CTestStep* aStep); + ~CTOrdinal(); + void DestroyWindows(); + void OrdinalPos(); + void OrdinalPriority(); + void ConstructL(); + void CreateWindowsL(TInt aMode); +protected: //virtual function from CTGraphicsStep + void RunTestCaseL(TInt aCurTestCase); +private: + void TestWindowOrderNext(TInt aBefore,TInt aAfter); + void TestWindowOrderNext(TInt aLast); + void TestWindowOrderPrev(TInt aAfter,TInt aBefore); + void TestWindowOrderPrev(TInt aFirst); + void CheckHandlesOnNewWindow(CTWindowGroup* aParent,COrdinalWindowBase* aWin); + void CheckHandlesOnNewWindow(COrdinalWindowBase* aParent,COrdinalWindowBase* aWin); + void CheckHandlesOnNewWindow(TInt aErrors,COrdinalWindowBase* aWin); + void CheckHandles(TUint aParent); +private: + enum {ENumChildren=6}; +private: + COrdinalClient* iClient; + TSize iWinSize; + TBool iGroupTest; + COrdinalWindowBase* iParent; + COrdinalWindowBase* iParent2; + COrdinalWindowBase* iParent3; + COrdinalWindowBase* iChild[ENumChildren]; + }; + +class CTOrdinalStep : public CTGraphicsStep + { +public: + CTOrdinalStep(); +protected: + //from CTGraphicsStep + virtual CTGraphicsBase* CreateTestL(); + }; + +_LIT(KTOrdinalStep,"TOrdinal"); + + +#endif