--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/uiacceltk/hitchcock/tsrc/alfperfapp/inc/alfperfappsuitetestcasescroll.h Tue Feb 02 07:56:43 2010 +0200
@@ -0,0 +1,180 @@
+/*
+* Copyright (c) 2008 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:
+ *
+*/
+
+#ifndef ALFPERFAPPSUITETESTCASESCROLL_H_
+#define ALFPERFAPPSUITETESTCASESCROLL_H_
+
+// INLUDES
+#include "AlfPerfAppSuiteTestCaseControl.h"
+
+// FORWARD DECLARATIONS
+class CAlfImageLoaderUtil;
+class CAlfImageVisual;
+class CAlfViewportLayout;
+class CAlfGridLayout;
+class CAlfPerfAppSuiteTestCase;
+
+// CLASS DECLARATION
+class CAlfPerfAppSuiteTestCaseScroll : public CAlfPerfAppSuiteTestCaseControl
+ {
+private:
+
+ enum TTextStyle
+ {
+ EPersonSuiteBig = 0,
+ EPersonSuiteSmall,
+ ENumberOfStyles
+ };
+public: // Construction and destrcution
+
+ /**
+ * C++ constructor.
+ * @param aAppSuiteTestCase used as observer
+ */
+ CAlfPerfAppSuiteTestCaseScroll(CAlfPerfAppSuiteTestCase* aAppSuiteTestCase);
+
+ /**
+ * Destructor.
+ */
+ ~CAlfPerfAppSuiteTestCaseScroll();
+
+ /**
+ * Second phase constructor.
+ * @param aEnv Alf environment.
+ * @param aCaseId Testcase id.
+ * @param aVisibleArea Screen area to use.
+ */
+ virtual void ConstructL(
+ CAlfEnv& aEnv, TInt aCaseId, const TRect& aVisibleArea );
+public: // From CAlfPerfAppSuiteTestCaseControl
+
+ /**
+ * Starts execution.
+ * If this method leaves, then request must not be completed.
+ * By default, this method completes immediately.
+ */
+ virtual void DoStartExecuteL();
+
+ /**
+ * Handles events.
+ * @param aEvent event to be handled.
+ * @return ETrue if consumed, EFalse otherwise.
+ */
+ virtual TBool OfferEventL( const TAlfEvent& aEvent );
+ /**
+ * Sets visible area.
+ * @param aVisibleArea visible area.
+ */
+ virtual void SetVisibleArea( const TRect& aVisibleArea );
+
+ /**
+ * Informs that all textures have been loaded.
+ * @param aErrorCode error code of texture loading
+ */
+ void ImagesLoaded( TInt aErrorCode );
+
+private: // New functions
+
+ void CreateTextStylesL();
+
+ /**
+ * Starts the next animation cycle.
+ */
+ void NextCycleL();
+
+ void ConstructPictureNumberSuiteL(
+ CAlfLayout* aParentLayout,
+ const TAlfImage& aImage,
+ const TInt aNumber );
+
+ void ConstructPeopleSuiteL(
+ CAlfLayout* aParentLayout );
+
+ CAlfGridLayout* ConstructPeopleSuiteListItemLayoutL(
+ CAlfLayout* aParentLayout,
+ TBool aSelected = EFalse );
+
+ CAlfGridLayout* ConstructPeopleSuiteListItemTextLayoutL(
+ CAlfLayout* aParentLayout );
+
+ void ConstructPeopleSuiteListHeaderL(
+ CAlfLayout* aParentLayout,
+ const TAlfImage& aImage,
+ const TDesC& aText );
+
+ void ConstructPeopleSuiteListItemL(
+ CAlfLayout* aParentLayout,
+ const TDesC& aName,
+ const TDesC& aDescription,
+ TBool aSelected = EFalse );
+
+private: // Data
+ /**
+ * Cycle counter.
+ */
+ TInt iCycleCounter;
+
+ /**
+ * Image loader utility.
+ * Owned.
+ */
+ CAlfImageLoaderUtil* iLoader;
+
+
+ /**
+ * Pointer to viewport layout.
+ * Not owned.
+ */
+ CAlfViewportLayout* iViewPortLayout;
+
+ /**
+ * Current viewport position.
+ */
+ TAlfRealPoint iViewPortPos;
+
+ TInt iSuiteWidth;
+
+ /**
+ * Number of application suites in this testcase.
+ */
+ TInt iSuiteCount;
+
+
+ /**
+ * Lenghts of one trasition cycle.
+ */
+ TInt iCycleLenght;
+
+ RArray<TInt> iTextStyles;
+
+ /**
+ * If it equals to iSuiteCount,
+ * that means all application suites have loaded their textures.
+ */
+ TInt iLoadedImages;
+
+ /**
+ * Used for callback.
+ * Not owned.
+ */
+ CAlfPerfAppSuiteTestCase* iAppSuiteTestCase;
+ };
+
+#endif /*ALFPERFAPPSUITETESTCASESCROLL_H_*/
+
+// end of file
+