--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/lafagnosticuifoundation/cone/tef/TCone5Step.h Tue Feb 02 01:00:49 2010 +0200
@@ -0,0 +1,184 @@
+// 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:
+// Testing of function CalcTextBaselineOffset introduced by PREQ527
+// Testing of function CalcTextBaselineOffset introduced by PREQ527
+//
+//
+
+/**
+ @file
+ @internalComponent - Internal Symbian test code
+ @SYMPREQ PREQ527
+ @file
+ @internalComponent
+ @SYMPREQ PREQ527
+*/
+
+#if !defined(__TCONE5STEP_H__)
+#define __TCONE5STEP_H__
+
+#include <coecntrl.h>
+#include <coelayoutman.h>
+#include <test/testexecutestepbase.h>
+#include "TConeTestServer.h"
+#include "appfwk_test_AppUi.h"
+//! A CTestStep Derived Class.\n
+
+/** Incorporates the tests on Control Layout Manager support.\n */
+
+class CTCone5Step : public CTmsTestStep
+ {
+public:
+ CTCone5Step();
+ ~CTCone5Step();
+ virtual TVerdict doTestStepL();
+ void ConstructCone5AppL(CCoeEnv* aCoe);
+private:
+ };
+
+//! A Class derived from CObject and MCoeLayoutManager interface.\n
+
+/** Implements the MCoeLayoutManager interface.\n */
+
+class CLayoutTest : public CObject, public MCoeLayoutManager
+ {
+public:
+
+ ~CLayoutTest();
+
+ virtual TBool CanAttach() const;
+ virtual void AttachL(CCoeControl& aCompoundControl);
+ virtual void Detach(CCoeControl& aCompoundControl);
+ virtual TSize CalcMinimumSize(const CCoeControl& aCompoundControl) const;
+ virtual void PerformLayout();
+ virtual TInt CalcTextBaselineOffset(const CCoeControl& aCompoundControl,
+ const TSize& aSize) const;
+ virtual void SetTextBaselineSpacing(TInt aBaselineSpacing);
+ virtual TInt TextBaselineSpacing() const;
+ virtual void HandleAddedControlL(const CCoeControl& aCompoundControl, const CCoeControl& aAddedControl);
+ virtual void HandleRemovedControl(const CCoeControl& aCompoundControl, const CCoeControl& aRemovedControl);
+ virtual TInt HandleControlReplaced(const CCoeControl& aOldControl, const CCoeControl& aNewControl);
+
+ TUint LayoutsPerformed() const;
+
+private:
+ void LayoutRow(TInt& aCurCtrlIndex);
+ void FindRectangle();
+ TInt LayoutControl(TUint aCurCtrlIndex, TSize aCtrlSize);
+ TBool SpaceForControl(TUint aMaxHeight);
+
+private:
+ //! array containing list of component controls.\n
+ RPointerArray<CCoeControl> iCtrlArray;
+ //! Index of the Control which owns the Window.\n
+ TUint iWinOwningCtrlIndex;
+ //! Window size already allocated to controls.\n
+ TSize iSizeUsed;
+ //! Rectange to be used for allocating Controls.\n
+ TRect iLayoutRect;
+ //! Boolean to indicate if Layout is in progress.\n
+ TBool iLayoutInProgress;
+ //! Number of controls for which layout is done.\n
+ TUint iControlsCompleted;
+ //! Number of Layouts performed.\n
+ TUint iLayoutsPerformed;
+ };
+
+
+
+//
+//
+// CTest5Control
+//
+//
+//! A CCoeControl derived class.\n
+
+/** The class is used to create component controls.\n */
+
+class CTest5Control : public CCoeControl
+ {
+public:
+ static CTest5Control* NewL(CLayoutTest* aLayoutMan,
+ CCoeControl& aContainer, const TRect& aRect);
+ ~CTest5Control();
+
+private:
+ CTest5Control();
+ void ConstructL(CLayoutTest* aLayoutMan, CCoeControl& aContainer,
+ const TRect& aRect);
+ // Inherited from CCoeControl
+ void Draw(const TRect& /*aRect*/) const;
+ };
+
+
+//
+//
+// CLayoutTestAppView
+//
+//
+//! A CCoeControl derived class.\n
+
+/** View Class for TCone5Step.\n */
+
+class CLayoutTestAppView : public CCoeControl
+ {
+public:
+ static CLayoutTestAppView* NewL(CLayoutTest* aLayoutMan, const TRect& aRect);
+
+ ~CLayoutTestAppView();
+ virtual TBool RequestRelayout(const CCoeControl* aChildControl);
+ const RPointerArray<CTest5Control>& CtrlArray() const;
+
+
+protected:
+ CCoeControl* ComponentControl(TInt aIndex) const;
+ TInt CountComponentControls() const;
+private:
+ CLayoutTestAppView();
+ void ConstructL(CLayoutTest* aLayoutMan, const TRect& aRect);
+ // Inherited from CCoeControl
+ void Draw(const TRect& /*aRect*/) const;
+
+private:
+ //! Array containing list of component controls.\n
+ RPointerArray<CTest5Control> iCtrlArray;
+ };
+
+
+
+//! A CTestCoeAppUi derived class.\n
+
+/** AppUi Class for TCone5Step.\n */
+
+class CCone5TestAppUi : public CTestCoeAppUi
+ {
+public:
+ CCone5TestAppUi(CTmsTestStep* aStep);
+ ~CCone5TestAppUi();
+ void ConstructL();
+ void DoTestsL();
+protected:
+ void RunTestStepL(TInt aStepNum);
+
+private:
+ CLayoutTestAppView* iTestAppView;
+ CLayoutTest* iLayoutMan;
+ };
+
+//! TCone5 Test Step Name.\n
+_LIT(KTCone5Step,"TCone5");
+
+#endif
+
+