windowing/windowserver/tman/TMMODCHG.CPP
changeset 110 7f25ef56562d
parent 98 bf7481649c98
child 111 29ddb8a72f0e
--- a/windowing/windowserver/tman/TMMODCHG.CPP	Fri Jun 11 14:58:47 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,301 +0,0 @@
-// 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:
-// Test modifier changed message
-// 
-//
-
-#include <e32std.h>
-#include <e32svr.h>
-#include "W32STD.H"
-#include "../tlib/testbase.h"
-#include "TMAN.H"
-
-class CTModifiersChangedTest;
-
-class CMCWindow : public CTWin
-	{
-public:
-	CMCWindow(CTModifiersChangedTest *aTest);
-	void SetUpL(TPoint pos,TSize size,CTWinBase *parent, CWindowGc &aGc);
-	void Draw();
-	void DrawModSetLine(const TDesC &aDes,TInt aModifier,TInt iSettableModifiers);
-protected:
-	CTModifiersChangedTest *iTest;
-	TRgb iBack;
-	TInt iLineHeight;
-	TInt iFontAscent;
-	TInt iYpos;
-	TInt iXpos1;
-	TInt iXpos2;
-	};
-
-class CTEventWindowGroup : public CTWindowGroup
-	{
-public:
-	CTEventWindowGroup(CTClient *aClient, CTModifiersChangedTest *iTest);
-	void ConstructL();
-	void ModifiersChanged(const TModifiersChangedEvent &aModifiersChanged ,const TTime &aTime);
-	void KeyL(const TKeyEvent &aKey,const TTime &aTime);
-private:
-	CTModifiersChangedTest *iTest;
-	};
-
-class CTModifiersChangedTest : public CTestBase
-	{
-public:
-	CTModifiersChangedTest();
-	~CTModifiersChangedTest();
-	TestState DoTestL();
-	void ConstructL();
-	void EndTest();
-	TInt SubState() const;
-	void IncSubState();
-	void BadParams();
-	void ModifierChangedEventsL();
-	void SetModifiersL();
-	void CheckModifierL(TEventModifier aModifier);
-public:
-	TBool iModSetTest;
-	TInt iSettable;
-private:
-	TSize iWinSize;
-	TInt iState;
-	TInt iSubState;
-	CTEventWindowGroup *iEventGroup;
-	CMCWindow *iWin;
-	};
-
-struct TModifierChangedTestsParams
-	{
-	TText *txt;			// Text message telling user what to do
-	TUint changed;
-	TUint state;
-	TUint stateMask;
-	};
-
-LOCAL_D TModifierChangedTestsParams ModifierChangedTests[]={
-#if defined(__WINS__)
-	{(TText *)_S("Press Caps"),EModifierCapsLock,EModifierCapsLock,EModifierCapsLock},
-	{(TText *)_S("Press Caps (again)"),EModifierCapsLock,0,EModifierCapsLock},
-#endif
-	{(TText *)_S("Press left shift"),EModifierShift|EModifierLeftShift,EModifierShift|EModifierLeftShift,EModifierShift|EModifierLeftShift},
-	{(TText *)_S("Release left shift"),EModifierShift|EModifierLeftShift,0,EModifierShift|EModifierLeftShift},
-	{(TText *)_S("Press right shift"),EModifierShift|EModifierRightShift,EModifierShift|EModifierRightShift,EModifierShift|EModifierRightShift},
-	{(TText *)_S("Release right shift"),EModifierShift|EModifierRightShift,0,EModifierShift|EModifierRightShift},
-	{(TText *)_S("Press (left) func"),EModifierFunc|EModifierLeftFunc,EModifierFunc|EModifierLeftFunc,EModifierFunc|EModifierLeftFunc},
-	{(TText *)_S("Release (left) func"),EModifierFunc|EModifierLeftFunc,0,EModifierFunc|EModifierLeftFunc},
-	{(TText *)_S("Press (left) control"),EModifierCtrl|EModifierLeftCtrl,EModifierCtrl|EModifierLeftCtrl,EModifierCtrl|EModifierLeftCtrl},
-	{(TText *)_S("Release (left) control"),EModifierCtrl|EModifierLeftCtrl,0,EModifierCtrl|EModifierLeftCtrl},
-	};
-
-const TInt numTests=sizeof(ModifierChangedTests)/sizeof(ModifierChangedTests[0]);
-
-GLDEF_C CTestBase *CreateModifiersChangedTest()
-	{
-	return(new(ELeave) CTModifiersChangedTest());
-	}
-
-//
-// CTEventWindowGroup class //
-//
-
-CTEventWindowGroup::CTEventWindowGroup(CTClient *aClient, CTModifiersChangedTest *aTest) : CTWindowGroup(aClient), iTest(aTest)
-	{}
-
-void CTEventWindowGroup::ConstructL()
-	{
-	CTWindowGroup::ConstructL();
-	iGroupWin.EnableModifierChangedEvents(EModifierShift|EModifierLeftShift|EModifierRightShift|EModifierCapsLock|
-							EModifierFunc|EModifierLeftFunc|EModifierCtrl|EModifierLeftCtrl,EEventControlAlways);
-	}
-
-void CTEventWindowGroup::ModifiersChanged(const TModifiersChangedEvent &aModifiersChanged ,const TTime &)
-	{
-	TInt ss=iTest->SubState();
-	TInt getMods=Client()->iWs.GetModifierState();	// Double check the mods with get mods
-	if (aModifiersChanged.iChangedModifiers==ModifierChangedTests[ss].changed && 
-		(aModifiersChanged.iModifiers&ModifierChangedTests[ss].stateMask)==ModifierChangedTests[ss].state &&
-		(getMods&ModifierChangedTests[ss].stateMask)==ModifierChangedTests[ss].state)
-		iTest->IncSubState();
-	}
-
-void CTEventWindowGroup::KeyL(const TKeyEvent &aKey,const TTime &)
-	{
-	if (aKey.iCode==EKeyEscape || (aKey.iCode==' ' && iTest->iModSetTest))
-		iTest->EndTest();
-	}
-
-//
-// CMCWindow, class //
-//
-
-CMCWindow::CMCWindow(CTModifiersChangedTest *aTest) : CTWin(), iTest(aTest)
-	{
-	iBack=TRgb::Gray256(230);
-	}
-
-void CMCWindow::SetUpL(TPoint pos,TSize size,CTWinBase *parent, CWindowGc &aGc)
-	{
-	ConstructExtLD(*parent,pos,size);
-	iWin.SetBackgroundColor(iBack);
-	Activate();
-	AssignGC(aGc);
-	iLineHeight=iFont->HeightInPixels()*5/4;
-	iFontAscent=iFont->AscentInPixels();
-	iXpos1=4;
-	iXpos2=iXpos1+12*iFont->TextWidthInPixels(_L("M"));
-	}
-
-void CMCWindow::DrawModSetLine(const TDesC &aDes,TInt aModifier,TInt iSettableModifiers)
-	{
-	iYpos+=iLineHeight;
-	iGc->DrawText(aDes, TPoint(iXpos1,iYpos));
-	iGc->DrawText(aModifier&iSettableModifiers ? _L("Yes"):_L("No"), TPoint(iXpos2,iYpos));
-	}
-
-void CMCWindow::Draw()
-	{
-	iGc->Clear();
-	if (iTest->iModSetTest)
-		{
-		iYpos=iFontAscent+3;
-		TBuf<32> buf;
-		buf.Format(TRefByValue<const TDesC>(_L("Settable? [0x%4x]")), iTest->iSettable);
-		iGc->DrawText(_L("Modifier"), TPoint(iXpos1,iYpos));
-		iGc->DrawText(buf, TPoint(iXpos2,iYpos));
-		DrawModSetLine(_L("Shift"),EModifierShift,iTest->iSettable);
-		DrawModSetLine(_L("Left Shift"),EModifierLeftShift,iTest->iSettable);
-		DrawModSetLine(_L("Func"),EModifierFunc,iTest->iSettable);
-		DrawModSetLine(_L("Caps"),EModifierCapsLock,iTest->iSettable);
-		DrawModSetLine(_L("NumLock"),EModifierNumLock,iTest->iSettable);
-		DrawModSetLine(_L("Double Click"),EModifierDoubleClick,iTest->iSettable);
-		}
-	else
-		iGc->DrawText(TPtrC(ModifierChangedTests[iTest->SubState()].txt), TPoint(10,20));
-	}
-
-//
-
-CTModifiersChangedTest::CTModifiersChangedTest() : CTestBase(_L("Capture Key"))
-	{}
-
-CTModifiersChangedTest::~CTModifiersChangedTest()
-	{
-	delete iWin;
-	delete iEventGroup;
-	}
-
-void CTModifiersChangedTest::EndTest()
-	{
-	if (iModSetTest)
-		{
-		iModSetTest=EFalse;
-		iWin->Invalidate();
-		}
-	Request();
-	}
-
-void CTModifiersChangedTest::ConstructL()
-	{
-	iWin=new(ELeave) CMCWindow(this);
-	iWin->SetUpL(TPoint(10,10),TSize(240,200),Client()->iGroup, *Client()->iGc);
-	}
-
-TInt CTModifiersChangedTest::SubState() const
-	{
-	return(iSubState);
-	}
-
-void CTModifiersChangedTest::IncSubState()
-	{
-	if (iSubState==(numTests-1))
-		EndTest();
-	else
-		{
-		iSubState++;
-		iWin->Invalidate();
-		}
-	}
-
-void CTModifiersChangedTest::BadParams()
-	{
-	}
-
-void CTModifiersChangedTest::ModifierChangedEventsL()
-	{
-	iEventGroup=new(ELeave) CTEventWindowGroup(Client(), this);
-	iEventGroup->ConstructL();
-	}
-
-void CTModifiersChangedTest::CheckModifierL(TEventModifier aModifier)
-	{
-	TInt oldMods=Client()->iWs.GetModifierState();
-	Client()->iWs.SetModifierState(aModifier, EToggleModifier);
-	TInt getMods=Client()->iWs.GetModifierState();
-	if (oldMods!=getMods)
-		{
-		iSettable|=aModifier;
-		Client()->iWs.SetModifierState(aModifier, ETurnOffModifier);
-		getMods=Client()->iWs.GetModifierState();
-		TestL(!(getMods&aModifier));
-		Client()->iWs.SetModifierState(aModifier, ETurnOnModifier);
-		getMods=Client()->iWs.GetModifierState();
-		TestL(getMods&aModifier);
-		Client()->iWs.SetModifierState(aModifier, ETurnOffModifier);
-		getMods=Client()->iWs.GetModifierState();
-		TestL(!(getMods&aModifier));
-		if (oldMods&aModifier)
-			Client()->iWs.SetModifierState(aModifier, ETurnOnModifier);
-		}
-	else
-		{
-		Client()->iWs.SetModifierState(aModifier, ETurnOffModifier);
-		TestL(oldMods==Client()->iWs.GetModifierState());
-		Client()->iWs.SetModifierState(aModifier, ETurnOnModifier);
-		TestL(oldMods==Client()->iWs.GetModifierState());
-		}
-	}
-
-void CTModifiersChangedTest::SetModifiersL()
-	{
-	iModSetTest=ETrue;
-	for(TInt mod=1;mod!=0;mod<<=1)
-		CheckModifierL((TEventModifier)mod);
-	iWin->Invalidate();
-	Client()->iWs.Flush();
-	}
-
-TestState CTModifiersChangedTest::DoTestL()
-	{
-	switch(iState)
-		{
-		case 0:		//The first 2 tests have been converted to TAuto test code.
-			ModifierChangedEventsL();
-		/*	iState++;
-			return(EContinue);
-		case 1:
-			LogSubTest(_L("Errors"),1);
-			BadParams();
-			break;
-		case 2:*/
-			LogSubTest(_L("Set modifiers"),1);
-			SetModifiersL();
-			iState++;
-			return(EContinue);
-		default:
-			return(EFinished);
-		}
-	//iState++;
-	//return(ENext);
- 	}