sl@0: /*
sl@0: * Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
sl@0: * All rights reserved.
sl@0: * This component and the accompanying materials are made available
sl@0: * under the terms of "Eclipse Public License v1.0"
sl@0: * which accompanies this distribution, and is available
sl@0: * at the URL "http://www.eclipse.org/legal/epl-v10.html".
sl@0: *
sl@0: * Initial Contributors:
sl@0: * Nokia Corporation - initial contribution.
sl@0: *
sl@0: * Contributors:
sl@0: *
sl@0: * Description: 
sl@0: *
sl@0: */
sl@0: 
sl@0: 
sl@0: #ifndef T_LINKEDFONTSCOMPARISON_H_
sl@0: #define T_LINKEDFONTSCOMPARISON_H_
sl@0: 
sl@0: #include "TGraphicsHarness.h"
sl@0: #include "thashreferenceimages.h"
sl@0: 
sl@0: class CTLinkedFontsComparisonStep : public CTGraphicsStep
sl@0: 	{
sl@0: public:
sl@0: 	CTLinkedFontsComparisonStep();
sl@0: protected:
sl@0: 	// From CTGraphicsStep
sl@0: 	virtual CTGraphicsBase* CreateTestL();
sl@0: 	};
sl@0: 
sl@0: _LIT(KTLinkedFontsComparisonStep, "TLinkedFontsComparison");
sl@0: 
sl@0: class CTLinkedFontsComparison : public CTGraphicsBase
sl@0: 	{
sl@0: public:
sl@0: 	CTLinkedFontsComparison(CTestStep* aStep);
sl@0: 	~CTLinkedFontsComparison();
sl@0: 
sl@0: protected:
sl@0: 	virtual void RunTestCaseL(TInt aCurTestCase);
sl@0: 	virtual void ConstructL();
sl@0: private:
sl@0: 	TBool CheckMonoTypeInstalledL();
sl@0: 	void CreateBitmapDeviceL(TDisplayMode aMode);
sl@0: 	void RegisterLinkedTypefacesL();
sl@0: 	void TestDrawTextUsingLinkedFontsL();
sl@0: 	void FreeScreenDevice();
sl@0: 	void DoTestDrawingOutputL(const TDesC& aHashId, const TPtrC& aFont, const TDesC& aOutputString,
sl@0: 							 TPoint aPosition, TInt size, TUint32 attributes);
sl@0: 	void PrepareTestEnvironment(TFontSpec &aFontSpec, const TPtrC& aFont, TInt aSize, TUint32 aAttributes,
sl@0: 							TBool aSetEffects = ETrue, TBool aSetColors = EFalse);
sl@0: 	HBufC* GenerateTestDescriptionLC(TInt aSize,TUint32 aAttributes, const TPtrC &aTypefaceName, const TDesC &aTestDescription);
sl@0: 
sl@0: private:
sl@0: 	CFbsBitGc* iGc;
sl@0: 	CFbsBitmapDevice* iBitmapDevice;
sl@0: 	RFbsSession* iFbs;
sl@0: 	CFbsBitmap* iBitmap;
sl@0: 	CTestStep* iStep;
sl@0: 	CTHashReferenceImages *iHashUtil;
sl@0: 	};
sl@0: 
sl@0: #endif /*T_LINKEDFONTS2_H_*/