commonuisupport/uikon/test/teikenv/teikenv.h
changeset 0 2f259fa3e83a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/commonuisupport/uikon/test/teikenv/teikenv.h	Tue Feb 02 01:00:49 2010 +0200
@@ -0,0 +1,166 @@
+// Copyright (c) 2005-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  
+*/
+
+#if (!defined __TEIKENV_H__)
+#define __TEIKENV_H__
+
+#include <test/testexecutestepbase.h>
+#include "eikdoc.h"
+#include "eikapp.h"
+#include "appfwk_test_AppUi.h"
+#include <coecntrl.h>
+
+//!  A CEikEnvStep test class. 
+/**
+ The test class exercises uikon classes: CEikEnv, CEikDocument, CEikAppUi.
+*/
+class CEikEnvStep : public CTmsTestStep
+	{
+public:
+	CEikEnvStep();
+	~CEikEnvStep();
+	virtual TVerdict doTestStepL();
+	void ConstructAppL(CEikonEnv* aEikEnv);
+private:
+	};
+
+//!  CTestControl 
+/**
+ A Control class. 
+*/
+class CTestControl : public CCoeControl
+	{
+public:
+	static CTestControl* NewL();
+	virtual ~CTestControl();
+private:
+	CTestControl();
+	void ConstructL();
+	// from CCoeControl
+	virtual void Draw(const TRect& aRectangle) const;
+	};
+
+//!  CTEikEnvAppUi 
+/**
+ UI class for test class CEikEnvStep.
+*/
+class CTEikEnvAppUi : public CTestAppUi
+    {
+public:
+	CTEikEnvAppUi(CTmsTestStep* aStep);
+    void ConstructL();
+    ~CTEikEnvAppUi();
+protected: //from CTestAppUi
+ 	virtual void RunTestStepL(TInt aNumStep);
+private://test functions
+	void TestEikonEnv();
+	void TestEikonEnvPictureFactoryL();
+	void TestPopUpMenuL();
+	void TestEikonAppUiL();
+	void TestREikAppUiSessionApiL();
+	void TestMessageApiL();
+	void OpenFileL(const TDesC& aFileName);
+	void CreateFileL(const TDesC& aFileName);
+	void HandleCommandL(TInt aCommand);
+	TErrorHandlerResponse HandleError(TInt aError, const SExtendedError& aExtErr,
+		TDes& aErrorText, TDes& aContextText);
+	static TInt TimerLoop(TAny *); 
+	TInt DoTimerLoop();
+	void LaunchPopupMenuL();
+	void TestCreateBitmapL();
+	void TestAddDialogLikeControlToStackL();
+	void TestAddAlertDialogLikeControlToStackL();
+	void TestFocusL();
+	void HandleForegroundEventL(TBool aBool);
+	void TestUpdateNameL();
+private://test members
+	TBool iResponseForHotKey;
+	CTestControl *iParentControl;
+	CTestControl *iChildControl;
+	};
+
+//!  CTPictureFactory 
+/**
+ A Picture Factory class.
+*/
+class CTPictureFactory : public CBase, public  MEikPictureFactory, public MPictureFactory 
+	{
+public:
+	CTPictureFactory(RFs aFs, TUid aPictureType) : CBase(), iFs (aFs), iPictureType(aPictureType){}
+	~CTPictureFactory() {}
+	//from MEikPictureFactory 
+	virtual TBool SupportsPictureType(TUid aPictureType) const;
+	virtual const MPictureFactory* PictureFactory(TUid aPictureType) const;
+	virtual TPictureHeader InsertL(TUid aPictureType,CBase* aData);
+	virtual void EditL(const TPictureHeader& aPictureHeader,TBool aReadOnly);
+	//from MPictureFactory
+	virtual void NewPictureL(TPictureHeader& aHeader,const CStreamStore& aDeferredPictureStore)const;
+protected:
+	RFs& iFs;
+	TUid iPictureType;
+	};
+/*
+class CTestPicture : public CPicture
+	{
+public:
+	static CTestPicture* NewL(RFs& aFs);
+	static CTestPicture* NewL(RFs& aFs,const CStreamStore& aStore,TStreamId aStreamId);
+	~CTestPicture();
+	//legacy
+	virtual void Draw(CGraphicsContext& aGc,const TPoint& aTopLeft,const TRect& aClipRect,MGraphicsDeviceMap* aMap) const;
+	virtual void ExternalizeL(RWriteStream& aStream) const;
+	virtual void GetOriginalSizeInTwips(TSize& aSize) const;
+protected:
+	CTestPicture(RFs& aFs) : iFs (aFs){}
+	void ConstructL();
+	void ConstructL(const CStreamStore& aStore,TStreamId aStreamId);
+	RFs& iFs;
+	};
+*/
+
+//!  CTEikEnvDocument 
+/**
+ Document class for test class CEikEnvStep.
+*/
+class CTEikEnvDocument : public CEikDocument 
+	{
+public:
+	CTmsTestStep*	iStep;
+	CEikAppUi* CreateAppUiL(){return new (ELeave) CTEikEnvAppUi(iStep);}
+	CTEikEnvDocument(CEikApplication& aApp) :
+		CEikDocument(aApp){}
+ 	CEikAppUi* AppUi() {return iAppUi;}
+	};
+
+//!  CTEikEnvApplication 
+/**
+ Application class for test class CEikEnvStep.
+*/
+class CTEikEnvApplication : public CEikApplication
+	{
+public:
+	virtual CApaDocument* CreateDocumentL( );
+	virtual TUid AppDllUid()const {return TUid::Null();}
+	};
+
+_LIT(KEikEnvStep,"TEikEnv");
+
+#endif