camerauis/activepalette/Inc/ActivePalette2Model.h
changeset 19 d9aefe59d544
parent 3 8b2d6d0384b0
child 21 fa6d9f75d6a6
child 28 3075d9b614e6
--- a/camerauis/activepalette/Inc/ActivePalette2Model.h	Tue Feb 02 00:01:39 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,806 +0,0 @@
-/*
-* Copyright (c) 2007 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:  Active Palette model*
-*/
-
-
-/**
- * @file ActivePalette2Model.h
- * Active Palette model
- */
-
-#ifndef _ACTIVE_PALETTE_2_MODEL_H
-#define _ACTIVE_PALETTE_2_MODEL_H
-
-//  INCLUDES
-#include <e32std.h>
-
-#include <activepalette2ui.h>
-#include "CActivePalettePluginBase.h"
-#include "ActivePalette2Cfg.h"
-#include "activepalette2configuration.h"
-
-// FORWARD DECLARATIONS
-class CActivePalette2Item;
-class CActivePalette2IDHolder;
-class TActivePalette2EventData;
-class MActivePalette2Observer;
-class TActivePalette2ItemVisible;
-class MActivePalette2ModelObserver;
-class MActivePalette2TooltipTimerObserver;
-class MActivePalette2FocusTimerObserver;
-class MActivePalette2ItemScrollTimerObserver;
-class MActivePalette2AppearanceTimerObserver;
-class MActivePalette2TooltipDescriptiveObserver;
-class MActivePalette2FocusDescriptiveObserver;
-class MActivePalette2ItemScrollDescriptiveObserver;
-class MActivePalette2AppearanceDescriptiveObserver;
-
-/**
- * The type of user input detected.
- * @see CActivePalette2Model::ProcessInputEvent()
- */
-enum TActivePalette2InputEvent {
-    EAP2InputUp,     ///< User pressed up
-    EAP2InputDown,   ///< User pressed down
-    EAP2InputSelect  ///< User selected
-};
-
-// CLASS DECLARATIONS
-
-
-/**
- * Describes the type of callback the renderer would like for all animations
- * @see CActivePalette2Model::NewL()
- */
-class TRendererCallBacks
-    {
-public:
-    /**
-     * Constructor
-     * By default, all categories are set to TRendererCallBackApiType::ERendererCallBackApiTypeTimer
-     */
-    TRendererCallBacks();
-
-    MActivePalette2TooltipTimerObserver*            iTooltipTimer;
-    MActivePalette2FocusTimerObserver*              iFocusTimer;
-    MActivePalette2ItemScrollTimerObserver*         iItemScrollTimer;
-    MActivePalette2AppearanceTimerObserver*         iAppearanceTimer;
-    MActivePalette2TooltipDescriptiveObserver*      iTooltipDescriptive;
-    MActivePalette2FocusDescriptiveObserver*        iFocusDescriptive;
-    MActivePalette2ItemScrollDescriptiveObserver*   iItemScrollDescriptive;
-    MActivePalette2AppearanceDescriptiveObserver*   iAppearanceDescriptive;
-    };
-
-
-/**
- * Active Palette model. Contains all internal logic of the AP.
- */
-class CActivePalette2Model : public CBase, public MActivePalette2UI
-    {
-public:
-/// @name Object construction & deletion
-//@{
-    /**
-     * Destructor
-     */
-	virtual ~CActivePalette2Model();
-	
-	
-    /**
-     * 2 phase construction
-     * @param aModelObserver A reference to the observer
-     * @param aItemSize      The size of the item icons
-     * @param aCallbacks     The callback styles to use
-     * @param aConfiguration The runtime configuration provider. Can be NULL.
-     * @return The newly-constructed object
-     */
-	static CActivePalette2Model* NewL( 
-	  MActivePalette2ModelObserver& aModelObserver,
-		TSize                         aItemSize, 
-		const TRendererCallBacks&     aCallbacks,
-		CActivePalette2Configuration* aConfiguration = NULL );
-
-//@}
-
-public:
-/// @name From MActivePalette2UI
-//@{
-	virtual TInt InstallItemL(const TActivePalette2ItemVisible& aItemVisible, 
-						const TUid& aPluginUid, 
-						const TDesC8& aCustomDataDes);
-	virtual TInt InstallItemL(const TActivePalette2ItemVisible& aItemVisible,
-						const TUid& aPluginUid, 
-						TInt aCustomDataInt = 0);
-	virtual TInt InstallItemL(const TActivePalette2ItemVisible& aItemVisible,
-						const TUid& aPluginUid, 
-						TInt aCustomDataInt, 
-						const TDesC8& aCustomDataDes);
-	virtual TInt RemoveItem(TInt aItemId);
-	virtual TInt SetItemVisibility(TInt aItemId, TBool aIsVisible);
-	virtual TInt GetItemVisibility(TInt aItemId, TBool &aIsVisible) const;
-    virtual TInt GetItemList(RArray<TActivePalette2ItemVisible>& aItemVisibleList) const;
-    virtual TInt SetItemList(const RArray<TActivePalette2ItemVisible>& aItemVisibleList);
-	virtual TInt SendMessage(TInt aItemId, TInt aMessageId, const TDesC8& aDataDes);
-	virtual TInt SendMessage(TInt aItemId, TInt aMessageId, TInt aDataInt);
-	virtual TInt GetCurrentItem(TInt& aItemId) const;
-	virtual TInt SetCurrentItem(TInt aItemId);
-    virtual TInt SetPaletteVisibility(TBool aVisible, TBool aAnimated, TInt aDelayedStartMilliseconds = 0);
-    virtual TInt SetPaletteVisibilityAnimationDuration(TInt aTimeInMilliseconds);
-    virtual TInt GetPaletteVisibilityAnimationDuration(TInt& aTimeInMilliseconds) const;
-    virtual TInt GetAvailablePlugins(RArray<TUid>& aPluginList) const;
-	virtual void LocateTo(const TPoint& aTopLeft);
-	virtual TPoint Location() const;
-    virtual CCoeControl* CoeControl();
-    virtual CHuiControl* HuiControl();
-    virtual void SetGc(CBitmapContext* aGc = NULL);
-    virtual void RenderActivePalette(const TRect& aRect) const;
-    virtual void SetObserver(MActivePalette2Observer* aObserver);
-    virtual void SetNavigationKeys(const TActivePalette2NavigationKeys& aNavigationKeys);
-//@}
-
-
-public:
-/// @name Renderer interrogation
-//@{
-    /**
-     * Returns the number of items on-screen
-     * @return The number of items on-screen
-     */
-    TInt CountItemsOnScreen(void);
-    
-    /**
-     * Whether to show the top scroll indicator
-     * @return Whether to show the top scroll indicator
-     */
-    TBool ShowTopScrollIndicator(void);
-    
-    /**
-     * Whether to show the bottom scroll indicator
-     * @return Whether to show the bottom scroll indicator
-     */
-    TBool ShowBottomScrollIndicator(void);
-    
-    /**
-     * Gets the item at the given screen position
-     * @return The item at that position
-     */
-    CActivePalette2Item* ItemFromScreenPos(TInt aScreenPos);
-
-    /**
-     * The current tooltip text
-     * @return The current tooltip text
-     */
-    TDesC* TooltipText();
-    
-    /**
-     * Whether any tooltip should be currently shown
-     * @return Whether any tooltip should be currently shown
-     */
-    TBool ShowTooltip();
-    
-    /**
-     * The current tooltip frame.
-     * The entire animation will consist of frames 0 to TooltipTotalFrames(), and may be played backwards
-     * as well as forwards.
-     * @return Current frame of tooltip animation to show
-     */
-    TInt TooltipCurrentFrame();
-    
-    /**
-     * Total number of frames in a complete tooltip animation
-     * @return Total frames
-     */
-    TInt TooltipTotalFrames();
-    
-    /**
-     * The screen position of the item showing a tooltip
-     * @return The Screen pos
-     */
-    TInt TooltipScreenPosition();
-
-    /**
-     * The currently focused item
-     * @return The focused item
-     */
-    TInt FocusedItem();
-
-    /**
-     * The current focus offset.
-     * The entire animation will consist of frames 0 to FocusCurrentTotalOffsetFrames(), and may be played backwards
-     * as well as forwards.
-     * The focus ring's position should be the position of FocusedItem() + this offset, correctly scaled
-     * @return Current offset of focus ring animation to show
-     */
-    TInt FocusCurrentOffset();
-
-    /**
-     * Total number of frames in a complete focus-change animation
-     * @return Total frames
-     */
-    TInt FocusCurrentTotalOffsetFrames();
-
-    /**
-     * The current item scroll offset.
-     * The entire animation will consist of frames 0 to ItemScrollTotalFrames(), and may be played backwards
-     * as well as forwards.
-     * The top item's offset should be moved upwards an amount calculated from this offset.
-     * @return Current offset of item scroll animation to show
-     */
-    TInt ItemScrollOffset();
-
-    /**
-     * Total number of frames in a complete item-scroll animation
-     * @return Total frames
-     */
-    TInt ItemScrollTotalFrames();
-
-    /**
-     * Whether the palette is open for user input or not
-     * @return Whether user input is accepted
-     */
-    TBool PaletteActive();
-
-    /**
-     * The current appearance frame.
-     * The entire animation will consist of frames 0 to PaletteAppearingTotalFrames(), and may be played backwards
-     * as well as forwards.
-     * @return Current frame of appearance animation to show
-     */
-    TInt PaletteAppearingCurrentFrame();        
-
-    /**
-     * Total number of frames in a complete appearance animation
-     * @return Total frames
-     */
-    TInt PaletteAppearingTotalFrames();        
-
-    /**
-     * The current item's animation info
-     * @return The current item's animation info
-     */
-    CActivePalettePluginBase::TPluginAnimationInfo ItemAnimInfo();
-//@}
-
-public:
-/// @name User input
-//@{
-    /**
-     * Process a user input event
-     * @param aEvent The event to process
-     * @return Whether the input has been consumed
-     */
-    TBool ProcessInputEvent(TActivePalette2InputEvent aEvent);
-//@}
-
-public:
-/// @name Descriptive callbacks
-//@{
-    /**
-     * Signal that the focus-change animation has completed
-     */
-    void AnimateFocusRendererComplete();
-
-    /**
-     * Signal that the palette-appearance animation has completed
-     */
-    void AnimateAppearanceRendererComplete();
-
-    /**
-     * Signal that the item-scroll animation has completed
-     */
-    void AnimateItemScrollRendererComplete();
-
-    /**
-     * Signal that the tooltip animation has completed
-     */
-    void AnimateTooltipRendererComplete();
-//@}
-
-public:
-/// @name Item collaboration
-//@{    
-    /**
-     * Returns the model observer
-     * @return A reference to the model observer
-     */
-	MActivePalette2ModelObserver& Observer(void) const;
-
-    /**
-     * Returns the item icon dimensions
-     * @return The item size
-     */
-    TSize ItemSize();
-
-    /**
-     * Item selection
-     * @param aItem A reference to the item
-     * @param aResult The result value
-     * @param aDataDes Data descriptor
-     * @param aDataInt Data integer
-     */ 
-	void NotifyItemComplete(const CActivePalette2Item& aItem,
-	                                TInt aResult,
-	                                const TDesC8& aDataDes,
-	                                TInt aDataInt);
-
-    /**
-     * Message arrived
-     * @param aItem A reference to the item
-     * @param aResult The result value
-     * @param aMessageID The message ID
-     * @param aDataDes Data descriptor
-     * @param aDataInt Data integer
-     */ 
-	void NotifyMessage(const CActivePalette2Item& aItem,
-	                           const TInt aResult,
-	                           const TInt aMessageID,
-	                           const TDesC8& aDataDes,
-	                           TInt aDataInt);
-
-    /**
-     * Graphics changes
-     * @param aItem A reference to the item
-     * @param aIsIconChanged Indicates if the icon has changed
-     * @param aIsTooltipChanged Indicates if the toolip text has chaned
-     */ 
-	void NotifyGraphicsChanged(const CActivePalette2Item& aItem,
-	                                   const TBool aIsIconChanged,
-	                                   const TBool aIsTooltipChanged);
-//@}
-    	
-    
-private:
-/// @name Object construction helpers
-//@{
-    /**
-     * Constructor
-     */
-	CActivePalette2Model( MActivePalette2ModelObserver& aModelObserver,
-						            TSize                         aItemSize, 
-						            const TRendererCallBacks&     aCallbacks,
-						            CActivePalette2Configuration* aConfiguration );
-						
-    /**
-     * Leaving constructor
-     */
-	void ConstructL(void);
-//@}
-
-
-private:
-/// @name Item manipulation
-//@{
-    /**
-     * Returns an item from a given ID
-     * @param aItemId The item ID to be found
-     * @return A pointer to the item
-     */
-	CActivePalette2Item* FindItem(TInt aItemId) const;
-
-    /**
-     * Handles the selection of an item
-     * @param aItemIndex The item ID
-     */
-	void HandleItemSelected(TInt aItemIndex);
-	
-    /**
-     * Installs an item
-     * @param aItemId The item's ID
-     * @param aVisible Whether the item is installed as visible
-     * @param aPluginUid The UID of the plugin to handle this item
-     * @param aCustomDataDes Custom data descriptor for the plugin
-     * @param aCustomDataInt Custom data integer for the plugin
-     * @return System-wide error code
-     */
-	TInt DoInstallItemL(TInt aItemId,
-                        TBool aVisible,
-                        const TUid& aPluginUid,
-                        const TDesC8& aCustomDataDes,
-                        TInt aCustomDataInt);
-	                                 
-    /**
-     * Sends a message to the plugin handling the specified item
-     * @param aItemId The item's ID
-     * @param aMessageID The ID of the message to send
-     * @param aDataDes Custom data descriptor for the plugin
-     * @param aDataInt Custom data integer for the plugin
-     * @return System-wide error code
-     */
-	TInt DispatchMessage(TInt aItemId,
-	                     TInt aMessageID,
-	                     const TDesC8& aDataDes,
-	                     TInt aDataInt);
-
-    /**
-     * Initialize the model's state
-     */
-    void InitialiseConstraints(void);
-    
-    /**
-     * Ensure that the model's state is self-consistent and valid.
-     * Call this after the item or visibility array is changed. May resize the palette, scroll it,
-     * move the focus to a valid item.
-     */
-    void EnforceConstraints(void);
-
-    /**
-     * Finds the next visible item index, including aStartingItem.
-     * @return The next visible item, or KInvalidItemIndex if none found
-     */
-    TInt FindVisibleItem(TInt aStartingItem);
-    
-    /**
-     * Finds the previous visible item index, including aStartingItem.
-     * @return The previous visible item, or KInvalidItemIndex if none found
-     */
-    TInt PreviousVisibleItem(TInt aStartingItem);
-    
-    /**
-     * Returns the total number of visible items
-     * @return The total number of visible items
-     */
-    TInt CountVisibleItems(TInt aStartingItem);
-    
-    /**
-     * Returns the item index of the given screen position
-     * @param aScreenPos The screen position
-     * @return The item index, or KInvalidItemIndex if none
-     */
-    TInt ItemIndexFromScreenPos(TInt aScreenPos);
-    
-    /**
-     * Given an item index, work out where it is on screen
-     * @param aItem The item index
-     * @return The screen pos
-     */
-    TInt ScreenPosFromItemIndex(TInt aItem);
-    
-    /**
-     * Given an item ID, work out the item index
-     * @param aItemId The item ID
-     * @return The item index, or KInvalidItemIndex
-     */
-    TInt ItemIndexFromId(const TInt aItemId) const;
-    
-    /**
-     * The item index of the lowermost item on-screen.
-     * @return The item index
-     */
-    TInt BottomItemOnScreen(void);
-    
-    /**
-     * Call whenever the items or visibility arrays are updated
-     */
-    void ItemsUpdated();
-
-    /**
-     * Returns whether a given item index is valid or not
-     * @return Item index validity
-     */
-    TBool ValidItemIndex(TInt aItemIndex) const;
-//@}
-	
-
-private:
-/// @name Tooltips
-//@{
-    /**
-     * Tooltip animation state
-     */
-	enum TTooltipState
-	    {
-		ETooltipInvalid,  ///< Invalid state
-		ETooltipNone = 2, ///< Tooltip hidden
-		ETooltipSteady,   ///< Tooltip fully shown
-		ETooltipRise,     ///< Tooltip appearing
-		ETooltipSet       ///< Tooltip disappearing
-	    };
-
-    /** 
-     * Removes the tooltip
-     */
-	void RemoveTooltip();
-	
-	/**
-	 * Start a new tooltip animation
-	 */
-    void CompelTooltip();
-
-    /** 
-     * Begin the steady animation phase (where the tooltip is fully visible)
-     * @return Error code
-     */
-	TInt TooltipSteadyAniAction();
-
-    /** 
-     * Begin the rising animation phase (where the tooltip slides out)
-     * @return Error code
-     */
-	TInt TooltipRiseAniAction();
-
-    /** 
-     * Begin the rising animation phase (where the tooltip slides in)
-     * @return Error code
-     */
-	TInt TooltipDisappearAniAction();
-
-    /** 
-     * Sets the tooltip's state
-     * @param aState New state
-     */
-	void TooltipSetState(TTooltipState aState);
-
-    /** 
-     * Called on tooltip timer tick
-     * @param aPtr Pointer to object that started the timer
-     * @return 0 to signal that further callbacks are unnecessary, 1 otherwise
-     */
-	static TInt TooltipTimerCallback(TAny * aPtr);
-
-private:
-    /// Current tooltip animation state
-	TTooltipState   				iTooltipState;
-	
-	/// Tooltip animation timer. Owned
-	CPeriodic*						iTooltipTimer;
-
-    /// Total number of frames in animation
-    TInt iTooltipTotalFrames;
-    /// Current animation frame
-    TInt iTooltipCurrentFrame;
-    /// Whether the tooltip is currently being shown or not
-    TBool iShowTooltip;
-    /// Screen position of the tooltip
-    TInt iTooltipPos;
-//@}	
-
-    
-private:
-/// @name Animation functions
-//@{
-    /**
-     * The current animation state of the palette
-     */
-	enum TPaletteAnimState
-	    {
-		EPaletteAnimIdle,           ///< No animation
-		EPaletteAnimItemScroll,     ///< Item scroll
-		EPaletteAnimFocusChange,    ///< Focus change
-		EPaletteAnimItemAnim,       ///< Item animation
-		EPaletteAnimAppearing       ///< Whole-palette appearance
-	    };
-
-    /**
-     * Set current animation state. Stops previous animation (if necessary) and starts new animation (if necessary)
-     * @param aNewState The new animation state
-     */
-    void SetAnimState(TPaletteAnimState aNewState);
-
-    /**
-     * If any animations are taking place that involves individual items (item-scroll, item-anim, focus-change),
-     * this completes them immediately.
-     */
-    void CompleteAnyItemBasedAnimations();
-
-    /**
-     * Start a change focus item.
-     * Uses iFocusedItem and iFocusChangeTargetItem to work out what the animation should be
-     */
-    void ChangeFocus();
-
-    /**
-     * Begin the scroll-items animation
-     * @param aDirection +1 to move the items downwards, -1 to move them upwards
-     */
-    void ScrollItems(TInt aDirection);
-
-    /** 
-     * Called on focus-change timer tick
-     * @param aPtr Pointer to object that started the timer
-     * @return 0 to signal that further callbacks are unnecessary, 1 otherwise
-     */
-	static TInt FocusChangeTimerCallback(TAny * aPtr);
-	
-	/**
-	 * Perform action for focus-change animation timer tick.
-     * @return 0 to signal that further callbacks are unnecessary, 1 otherwise
-     */
-    TInt FocusChangeAction();
-    
-    /**
-     * Called when focus-change animation has completed
-     */
-    void FocusChangeComplete();
-    
-    /** 
-     * Called on item-scroll timer tick
-     * @param aPtr Pointer to object that started the timer
-     * @return 0 to signal that further callbacks are unnecessary, 1 otherwise
-     */
-	static TInt ItemScrollTimerCallback(TAny * aPtr);
-
-	/**
-	 * Perform action for item-scroll animation timer tick.
-     * @return 0 to signal that further callbacks are unnecessary, 1 otherwise
-     */
-    TInt ItemScrollAction();
-
-    /**
-     * Called when item-scroll animation has completed
-     */
-    void ItemScrollComplete();
-    
-    /**
-     * Called when item-animation is starting
-     */
-    void StartItemAnimation();
-    
-    /** 
-     * Called on item-animation timer tick
-     * @param aPtr Pointer to object that started the timer
-     * @return 0 to signal that further callbacks are unnecessary, 1 otherwise
-     */
-    static TInt ItemAnimTimerCallback(TAny* aPtr);
-
-	/**
-	 * Perform action for item-animation animation timer tick.
-     * @return 0 to signal that further callbacks are unnecessary, 1 otherwise
-     */
-    TInt ItemAnimAction();
-
-    /**
-     * Called when item-animation animation has completed
-     */
-    void ItemAnimationComplete();
-    
-    /** 
-     * Called on palette-appearance timer tick
-     * @param aPtr Pointer to object that started the timer
-     * @return 0 to signal that further callbacks are unnecessary, 1 otherwise
-     */
-    static TInt PaletteAnimTimerCallback(TAny* aPtr);
-
-	/**
-	 * Perform action for palette-appearance animation timer tick.
-     * @return 0 to signal that further callbacks are unnecessary, 1 otherwise
-     */
-    TInt PaletteAnimAction();
-
-    /**
-     * Called when palette-appearance animation has completed
-     */
-    void PaletteAnimComplete();
-
-    /**
-     * Called whenever a new item gains focus
-     */
-    void FocusedItemUpdated();
-//@}
-
-    /**
-     * Prepares a TActivePalette2EventData object
-     * @param aItem The item the event concerns
-     * @param aResult The result of the event
-     * @return The initialized TActivePalette2EventData object
-     */
-    TActivePalette2EventData PrepareEventData(const CActivePalette2Item& aItem, TInt aResult);
-
-    /**
-     * Appends a plugin's UID to an array, if the plugin can be found on the device.
-     * @param aPluginList The array to append to
-     * @param aDllUid The UID to add if found
-     * @param aDllFileName The filename of the DLL to look for
-     */
-    void AppendPluginIdIfAvailable(RArray<TUid>& aPluginList, const TUid aDllUid, const TFileName aDllFileName) const;
-
-private:
-/// @name Item information
-//@{
-    /// The currently installed items
-    RPointerArray<CActivePalette2Item> iItemsArray;
-    /// The visibility of each installed item.
-    RArray<TBool> iVisibilityArray;
-    /// The index of the top item on the screen
-    TInt iTopItemOnScreen;
-    /// How many items are currently on the screen
-    TInt iNoItemsOnScreen;
-    /// The total number of visible items
-    TInt iNoVisibleItems;
-    /// Currently focused item index
-    TInt iFocusedItem;
-    /// Previously focused item ID
-    TInt iPreviousItemID;
-    /// Currently focused item ID
-    TInt iFocusedItemID;
-//@}
-
-private:
-/// @name Animation information
-//@{
-    /// Timer for focus-change animation. Owned
-	CPeriodic* iFocusChangeTimer;
-	/// The item index being moved to
-    TInt iFocusChangeTargetItem;
-    /// The velocity of the focus-change animation
-    TInt iFocusChangeDirection;
-    /// The current focus-change frame
-    TInt iFocusedCurrentOffset;
-    
-    /// Timer for item-scroll animation. Owned
-	CPeriodic* iItemScrollTimer;
-    /// The velocity of the item-scroll animation
-    TInt iItemScrollDirection;              
-    /// The current item-scroll frame
-    TInt iItemScrollCurrentOffset;
-
-    /// The item being animated    
-    CActivePalette2Item* iAniItem;
-    /// The screen position of the item being animated
-    TInt iAniItemScreenPos;
-    /// The animation info for the animated item
-	CActivePalettePluginBase::TPluginAnimationInfo iAniItemInfo;
-    /// The item animation timer. Owned.    
-	CPeriodic* iItemAnimTimer;			
-	/// The current item animation frame number
-    TInt iAnimationFrame;
-
-    /// The current appearance animation frame
-    TInt iPaletteMoveCurrentOffset;
-    /// The total number of appearance animation frames
-    TInt iPaletteMoveOffsetTotalFrames;
-    /// The velocity of the appearance animation 
-    TInt iPaletteMoveAnimationDirection;
-    /// The timer for the appearance animation. Owned
-	CPeriodic* iPaletteMoveTimer;
-	/// The duration of the appearance animation, in milliseconds
-    TInt iPaletteMoveAnimationDuration; 
-
-    /// The current animation state
-    TPaletteAnimState iAnimState;
-//@}
-
-private:
-/// @name Cached information, for speed
-//@{
-    /// The indices of the items shown on-screen
-    TInt iOnScreenItemIndex[NAP2Cfg::KMaxNofItemsInView + 1];
-    
-    /// Whether the top scroll arrow should be shown
-    TBool iShowTopScrollArrow;
-    
-    /// Whether the bottom scroll arrow should be shown
-    TBool iShowBottomScrollArrow;
-//@}
-
-private:
-    /// The callback styles requested
-    TRendererCallBacks iCallbacks;
-    
-    /// The model observer (renderer)
-	MActivePalette2ModelObserver& iModelObserver;
-
-  //  Configuration provider	
-	//CActivePalette2Configuration& iConfiguration;
-	
-	/// The dimensions of each item's icon
-	TSize 		 iItemSize;
-
-	// Tooltip details
-	TActivePalette2TooltipConfig iTooltipConfig;
-};
-
-#endif // _ACTIVE_PALETTE_2_MODEL_H
-
-// End of File