taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswapareautils.h
branchRCL_3
changeset 102 ba63c83f4716
parent 93 b01126ce0bec
child 103 966d119a7e67
--- a/taskswitcher/taskswitcherui/taskswitcherapp/inc/tsfastswapareautils.h	Wed Sep 15 12:00:00 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,231 +0,0 @@
-/*
-* 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:  Fast swap area utilities classes
- *
-*/
-
-#ifndef TSFASTSWAPAREAUTILS_H_
-#define TSFASTSWAPAREAUTILS_H_
-
-#include <e32base.h>
-
-// Forwar class declarations
-class CEikonEnv;
-class TAknLayoutRect;
-class CTsFastSwapTimer;
-class CTsFastSwapArea;
-class CTsFastSwapGrid;
-class CTsFswEntry;
-class CBitmapScaler;
-class CTsFastSwapAreaExtension;
-
-
-/**
- * Interface for observing timer class.
- */
-class MTsFastSwapTimerObserver
-    {
-public:
-    /**
-     * Called when timer is completed
-     */
-    virtual void TimerCompletedL( CTsFastSwapTimer* aSource ) = 0;
-    };
-
-
-
-/**
- * Timer class for handling timed events
- */
-class CTsFastSwapTimer : public CTimer
-    {
-public:
-    // Constructor
-    CTsFastSwapTimer( MTsFastSwapTimerObserver& aObserver );
-    // Destructor
-    ~CTsFastSwapTimer();
-    // 2nd phase constructor
-    void ConstructL();
-    
-private: // From CTimer
-    void RunL();
-    
-private: // Data
-    MTsFastSwapTimerObserver* iObserver; // not own
-    };
-
-
-
-/**
- * Asynchronous class for handling screenshots loading
- * and rescaling to achieve better quality. 
- */
-class CTsBitmapScaleTask : public CActive
-    {
-public:
-    CTsBitmapScaleTask( CTsFastSwapAreaExtension& aObserver );
-    ~CTsBitmapScaleTask();
-    void StartLD( CFbsBitmap* aSourceBitmap,
-                  CFbsBitmap* aTargetBitmap );
-private:
-    void RunL();
-    void DoCancel();
-private:
-    // Data
-    CTsFastSwapAreaExtension& iObserver;
-    CBitmapScaler* iScaler; // owned
-    CFbsBitmap* iSourceBmp; // owned
-    };
-
-
-
-/**
- * Utility class containg methods for fast swap area handling.
- */
-class CTsFastSwapAreaExtension: public CBase
-    {
-
-public:
-    
-    /**
-     * Two-phase constructor.
-     * 
-     * @param aRect Area where fast swap info & list should draw itself.
-     * @param aParent Parent CoeControl. 
-     */
-    static CTsFastSwapAreaExtension* NewL( CTsFastSwapArea& aFastSwapArea,
-                                       CEikonEnv& aEnv);
-
-    /**
-     * @copydoc NewL
-     */
-    static CTsFastSwapAreaExtension* NewLC( CTsFastSwapArea& aFastSwapArea,
-                                        CEikonEnv& aEnv );
-
-    /**
-     * Destructor.
-     */
-    ~CTsFastSwapAreaExtension();
-    
-private:
-
-    /**
-     * @copydoc NewL
-     */
-    void ConstructL();
-
-    /**
-     * C++ constructor.
-     */
-    CTsFastSwapAreaExtension( CTsFastSwapArea& aFastSwapArea,
-                          CEikonEnv& aEnv );
-    
-public:
-    
-    /**
-     * Returns current screen orientation:
-     * 
-     * @return  1 if landscape, 0 if portait 
-     */
-    TInt GetCurrentScreenOrientation();
-    
-    /**
-     * Retrieves variety value, based on current screen resolution.
-     * 
-     * @param  aVariety  result of the function, 0 value means portrait
-     *                   value of 1 indicates landscape
-     * @return  ETrue if screen resolution differs from vale returned by
-     *          layout meta data functions.
-     */
-    TBool GetVariety( TInt& aVariety );
-    
-    /**
-     * Returns rectangles for fast swap area controls
-     */
-    void GetFastSwapAreaRects( RArray<TAknLayoutRect>& aRects );
-    
-    /**
-     * Returns the position of the given item inside grid world rect.
-     * Returns point in the middle of the view rectangle.
-     * 
-     * @param  aItemIdx  index of the item for which calculation will be done
-     */
-    TPoint ItemViewPosition( TInt aItemIdx );
-    
-    /**
-     * Returns index of the shown item, based on the logical
-     * position of the grids view. Item that is closest to the
-     * middle of screen is returned.
-     * 
-     * @param  aViewPos  grids view position. This must be point in
-     *                   the middle of the view rectangle
-     * @return  index of the item
-     */
-    TInt ViewToVisibleItem( const TPoint aViewPos );
-    
-    /**
-     * Launches increasing pop-up feedback.
-     */
-    void LaunchPopupFeedback();
-    
-    /**
-     * Retrieves and returns size for image graphics.
-     */
-    TSize PreferredImageSize();
-    
-    /**
-     * Calculates the correct size if aspect ratio needs to be preserved.
-     */
-    TSize CalculateSizePreserveRatio(const TSize& aTargetAreaSize,
-            const TSize& aSourceSize);
-    
-    /**
-     * Makes a copy of the given bitmap.
-     * Also scaled to the given size, but maintains aspect ratio,
-     * so the size of the returned bitmap may be less then aSize.
-     */
-    CFbsBitmap* CopyBitmapL( TInt aFbsHandle, TSize aSize, TBool aIsScreenshot );
-    
-    /**
-     * Duplicates handle to bitmap.
-     */
-    CFbsBitmap* DuplicateBitmapLC( TInt aFbsHandle );
-    
-    /**
-     * Duplicates handle to bitmap.
-     */
-    void ScaleBitmapL( CFbsBitmap* aSourceBitmap,
-            CFbsBitmap* aTargetBitmap );
-    
-    /**
-     * Cancels ongoing scale tasks
-     */
-    void CancelScaleTasks();
-    
-    /**
-     * Callback for updating task list.
-     */
-    void ScaleFinished( CTsBitmapScaleTask* iFinishedTask );
-    
-private: // Data
-    
-    CTsFastSwapArea& iFastSwapArea;
-    
-    CEikonEnv& iEnv;
-    
-    RPointerArray<CTsBitmapScaleTask> iScaleTasks;
-    
-    };
-
-#endif /* TSFASTSWAPAREAUTILS_H_ */