Applied patch 1, to provide a syborg specific minigui oby file.
Need to compare this with the "stripped" version currently in the tree.
This supplied version applies for Nokia builds, but need to repeat the
test for SF builds to see if pruning is needed, or if the file needs to
be device-specific.
// 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 __TPOINTER_H__
#define __TPOINTER_H__
#include <e32std.h>
#include <w32std.h>
#include <hal.h>
#include "../tlib/testbase.h"
#include "AUTO.H"
#include "TGraphicsHarness.h"
class CTPointer;
class CGrabWindow;
class CPointerWindow : public CTWin
{
enum {KRepeatMargin=200000}; // 0.2 Seconds
enum {KRepeatCount=4};
enum {KRepeatIntervalIncrements=100000};
enum {KRepeatRectXExtra=50};
enum {KRepeatRectYExtra=50};
enum {KStateWaitingForTest1,KStateFailed,KStateTesting1,
KStateWaitingForTest2,KStateTesting2,
KStateWaitingForTest3,KStateTesting3,
KStateWaitingForTest4,KStateTesting4,
KStateWaitingForTest5,KStateTesting5,
KStateWaitingForTest6,KStateTesting6,
KStateWaitingForTest8,KStateTesting8,
KStateWaitingForTest7,KStateTesting7,
KStateFinished};
public:
CPointerWindow(CTPointer *aTest);
void SetUpLD(TPoint pos,TSize size,CTWinBase *parent, CWindowGc &aGc);
void Draw();
void StartNextRepeatTest();
void QueueNextRepeat();
void PointerL(const TPointerEvent &aPointer,const TTime&);
void WinKeyL(const TKeyEvent &aKey,const TTime &aTime);
private:
void SwitchOn(const TTime &);
void ResetTest(TInt aState);
void SetState(TInt aState);
void FinishedTests();
void TestFailed(TBool aRetest=EFalse);
void SendEvent();
private:
CTPointer *iTest;
TInt iRepeatCount;
TInt iState;
TTimeIntervalMicroSeconds32 iInterval;
TTime iPrevTime;
TRect iRepeatRect;
TPoint iTl;
TSize iSize;
};
class CGrabWindow2 : public CTWin
{
public:
CGrabWindow2(CGrabWindow *aWindow);
void SetUpLD(TPoint pos,TSize size,CTWinBase *parent, CWindowGc &aGc);
private:
void Draw();
void PointerL(const TPointerEvent &aPointer,const TTime&);
private:
CGrabWindow *iGrabWindow;
};
class CGrabWindow : public CTWin
{
enum {KGrabStateWaitingForDown,KGrabStateWaitingForDragOut,KGrabStateWaitingForUp,KGrabStateFinished,
KGrabStateWaitingForDown2,KGrabStateWaitingForUp2a,KGrabStateWaitingForDrag2,KGrabStateWaitingForUp2b,
KGrabStateWaitingForDown3,KGrabStateWaitingForUp3a,KGrabStateWaitingForUp3b,
KGrabStateWaitingForDown4,KGrabStateWaitingForUp4,
KGrabStateWaitingForDown5,KGrabStateWaitingForUp5,KGrabStateWaitingForDrag5,
KStateFailed};
public:
CGrabWindow(CTPointer *aTest);
void Pointer2(const TPointerEvent &aPointer);
void SetUpLD(TPoint pos,TSize size,CTWinBase *parent, CWindowGc &aGc);
void WinKeyL(const TKeyEvent &aKey,const TTime &aTime);
private:
void Draw();
void SetState(TInt aState);
void ResetTest();
void PointerL(const TPointerEvent &aPointer,const TTime&);
void TestFailed();
void FinishedTests();
void SendEvent();
private:
TInt iState;
CTPointer *iTest;
TPoint iTl;
TSize iSize;
};
class CTPointer : public CTWsGraphicsBase
{
public:
enum {KTimeOutAfter=20000000}; //20secs
public:
CTPointer(CTestStep* aStep);
~CTPointer();
void ConstructL();
TBool TestFailed(TInt aCase,TBool aRetry=EFalse);
void StartGrabTestL();
static TInt TimeOut(TAny* aTest);
void TimeOut();
CGrabWindow2 *GrabWin2() const;
inline TBool Digitiser() const {return !iNoDigitiser;}
inline void SimulatePointer(TRawEvent::TType aType, TInt aX, TInt aY){iTest->SimulatePointer(aType, aX, aY);}
inline void SimulateEvent(TRawEvent::TType aType){iTest->SimulateEvent(aType);}
protected:
virtual void RunTestCaseL(TInt aCurTestCase);
private:
TInt doTestFailedL();
inline TestClient* Client() {return TheClient;}
TInt iState;
private:
CTimeOut* iTimeOut;
TInt iTimeOutCount;
CPointerWindow *iRepeatWin;
CGrabWindow *iGrabWin;
CGrabWindow2 *iGrabWin2;
TSize iWinSize;
//TInt iState;
TBool iOldPointerState;
TBool iNoDigitiser;
};
class CTPointerStep : public CTGraphicsStep
{
public:
CTPointerStep();
protected:
//from CTGraphicsStep
virtual CTGraphicsBase* CreateTestL();
};
_LIT(KTPointerStep,"TPointer");
#endif