windowing/windowserver/tauto/TSCRMODE.H
changeset 0 5d03bc08d59c
child 97 0e9202c0340c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/windowing/windowserver/tauto/TSCRMODE.H	Tue Feb 02 01:47:50 2010 +0200
@@ -0,0 +1,128 @@
+
+// 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 __TSCRMODE_H__
+#define __TSCRMODE_H__
+
+#include <e32std.h>
+#include <w32std.h>
+#include "../tlib/testbase.h"
+#include "AUTO.H"
+#include "TGraphicsHarness.h"
+
+class CSecondConnection;
+
+class CSecondConnectionGroup : public CTWindowGroup
+	{
+public:
+	CSecondConnectionGroup(CTClient *aClient, CSecondConnection *aSecondConnection, CTestBase *aTest, CTestStep* aTestStep);
+	void ScreenDeviceChanged();
+private:
+	CTestBase *iTest;
+	CSecondConnection *iSecondConnection;
+	CTestStep* iTestStep;
+	};
+
+class CSecondConnection : public CBase
+	{
+public:
+	~CSecondConnection();
+	void ConstructL(TInt aScreenNumber,const TRect &aWinRect, CTestBase *aTest, CTestStep* aTestStep);
+	void EnableMessages();
+	void DisableMessages();
+	TInt DeviceMessageCount() const;
+	void ScreenDeviceChanged();
+	void SetWindow2Visibility(TBool aVisible);
+public:
+	CSecondConnectionGroup *iGroup;
+private:
+	CTClient *iClient;
+	CTBlankWindow *iWindow;
+	CTBlankWindow *iWindow2;
+	TInt iMessageCount;
+	};
+	
+class SecondClientConnection : public CTClient
+	{
+public:
+	SecondClientConnection();
+	~SecondClientConnection();
+	void ConstructL(TInt aScreenMode, const TPixelsTwipsAndRotation &aSizeAndRotation);
+	};
+
+class CTScrMode : public CTWsGraphicsBase
+	{
+public:
+	CTScrMode(CTestStep* aStep);
+	~CTScrMode();
+protected:
+//from 	CTGraphicsStep
+	virtual void RunTestCaseL(TInt aCurTestCase);
+private:
+	void ConstructL();
+	void doMoveWindowTest();
+	TBool MoveWindow();
+	void TestPanicsL();
+	void ScaledDrawingL();
+	void SetScreenModeEnforcement(TScreenModeEnforcement aMode);
+	void CheckWindows(TBool aWinIsVis);
+	void ValidateWin(TestWindow *aWin, TRgb aColor);
+	void RedrawWin(RWindow &aWin, TRgb aColor);
+	void ScreenRotationsL();
+	void MoreScreenRotationsL();
+	TBool RectClearBugL();
+	void ScreenModeChange1L();
+	void ScreenModeChange2L();
+	TInt FindCurrentMode();
+	TBool Equal(const TPixelsTwipsAndRotation& aLeft,const TPixelsTwipsAndRotation& aRight);
+	void InvisibleWndAndInfiniteRedrawBugL();
+	void GetScreenDisplayMode();
+	void SetScreenModeAfterScreenDeviceDeletedL();
+	void TestRotateAndScreenModeL();
+private:
+	void DrawTestBmpL(CFbsBitmap* aTestBitmap);
+	void TestDrawingToWindows(CWindowGc* aWinGc1, CWindowGc* aWinGc2, RWindow& aWindow1,RWindow& aWindow2,CFbsBitmap* aBitmap64K,CFbsBitmap* aBitmap16M,CFbsFont* aFont,TBool aAllInRedraw, TBool aUseSystemGc, TBool aUseBmp16M);
+private:
+	TInt iSubState;
+	CSecondConnection *iSecondConnection;
+	TSize iWinSize;
+	TPoint iWinPos;
+	TInt iWinState;
+	TScreenModeEnforcement iOldEnfMode;
+	TScreenModeEnforcement iCurEnforcement;
+	};
+
+
+	
+class CTScrModeStep : public CTGraphicsStep
+	{
+public:
+	CTScrModeStep();
+protected:	
+	//from CTGraphicsStep
+	virtual CTGraphicsBase* CreateTestL();
+	};
+
+_LIT(KTScrModeStep,"TScrMode");
+
+
+#endif