idlehomescreen/examples/carouselwidgetexample/renderer/inc/carouselwidget.h
author jake
Mon, 02 Aug 2010 12:02:47 +0300
branchRCL_3
changeset 29 d12a7ea0f775
permissions -rw-r--r--
Example applications for various Homescreen APIs.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
29
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
     1
/*
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
     2
 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
     3
 * All rights reserved.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0"
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
     8
 *
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
     9
 * Initial Contributors:
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    11
 *
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    12
 * Contributors:
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    13
 *
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    14
 * Description:  Carousel widget for Symbian Homescreen
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    15
 *
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    16
 */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    17
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    18
#ifndef _CCAROUSELWIDGET_H
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    19
#define _CCAROUSELWIDGET_H
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    20
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    21
//  INCLUDES
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    22
#include <xnextrenderingpluginadapter.h>
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    23
#include <aknphysicsobserveriface.h>
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    24
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    25
class MXnExtEventHandler;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    26
class CCarouselItem;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    27
class CAknPhysics;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    28
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    29
// Class declaration
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    30
NONSHARABLE_CLASS( CCarouselItem ) : public CBase  
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    31
    {
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    32
public:
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    33
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    34
    // Constructors
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    35
        
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    36
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    37
     * C++ default constructor.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    38
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    39
CCarouselItem(/* CCarouselEditor& aEditor,*/ CFbsBitmap* aBitmap, CFbsBitmap* aMask);
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    40
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    41
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    42
     * Destructor.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    43
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    44
    ~CCarouselItem();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    45
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    46
    void SetTextL( const TDesC& aText );
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    47
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    48
    CFbsBitmap* iBitmap;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    49
    CFbsBitmap* iMask;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    50
private:
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    51
   
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    52
    HBufC* iText;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    53
    };
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    54
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    55
// CLASS DECLARATION
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    56
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    57
/**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    58
*  
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    59
*/
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    60
class CCarouselWidget : public CXnExtRenderingPluginAdapter, 
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    61
    public MAknPhysicsObserver
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    62
    {
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    63
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    64
public:  // Constructors and destructor
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    65
        
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    66
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    67
    * Two-phased constructor.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    68
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    69
    static CCarouselWidget* NewL();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    70
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    71
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    72
    * Destructor.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    73
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    74
    virtual ~CCarouselWidget();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    75
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    76
public: // from base classes
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    77
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    78
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    79
    * From CCoeControl Handles key events.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    80
    * @since Series 60 3.1
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    81
    * @param aKeyEvent Key event.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    82
    * @param aType Event type.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    83
    * @return Key response
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    84
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    85
    TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent,
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    86
        TEventCode aType );
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    87
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    88
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    89
    * From CCoeControl
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    90
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    91
    void SetContainerWindowL( const CCoeControl &aContainer );
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    92
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    93
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    94
    * See CCoeControl documentation
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    95
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    96
    void HandlePointerEventL( const TPointerEvent& aPointerEvent );
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    97
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    98
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
    99
    * From CCoeControl, CountComponentControls
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   100
    * @return Number of component controls
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   101
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   102
    TInt CountComponentControls() const;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   103
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   104
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   105
    * From CCoeControl, ComponentControl
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   106
    * @param aIndex index of component control
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   107
    * @return pointer to the specified control
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   108
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   109
    CCoeControl* ComponentControl( TInt aIndex ) const;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   110
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   111
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   112
    * Skin change notification.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   113
    * See CXnControlAdapter documentation
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   114
    * @since Series 60 3.1
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   115
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   116
    void SkinChanged();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   117
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   118
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   119
    * See CXnControlAdapter documentation
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   120
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   121
    void EnterPowerSaveModeL();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   122
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   123
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   124
    * See CXnControlAdapter documentation
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   125
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   126
    void ExitPowerSaveModeL();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   127
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   128
    // From MAknPhysicsObserver
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   129
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   130
     * Physics emulation has moved the view.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   131
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   132
    void ViewPositionChanged( const TPoint& aNewPosition, 
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   133
                TBool aDrawNow, TUint aFlags );
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   134
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   135
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   136
     * Called when emulation ended.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   137
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   138
    void PhysicEmulationEnded();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   139
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   140
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   141
     * Returns the observer view position.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   142
     *
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   143
     * @return Physics observer view position.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   144
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   145
    TPoint ViewPosition() const;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   146
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   147
protected: // from base classes
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   148
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   149
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   150
    * From CCoeControl
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   151
    * Called if focus changes
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   152
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   153
    void FocusChanged( TDrawNow aDrawNow );
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   154
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   155
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   156
    * From CCoeControl
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   157
    * Called if position or size changes
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   158
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   159
    void SizeChanged();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   160
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   161
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   162
     * Sets the external event handler interface.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   163
     *
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   164
     * @since Series 60 5.2
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   165
     * @param aEventHandler Event handler interface.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   166
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   167
    void SetEventHandler( MXnExtEventHandler* aEventHandler );
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   168
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   169
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   170
     * Routes the data stream for the external rendering plugin.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   171
     *
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   172
     * @since Series 60 5.2
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   173
     * @param aData Data stream.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   174
     * @param aType Type of the stream.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   175
     * @param aIndex Index of the data.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   176
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   177
    void SetDataL( const TDesC8& aData, const TDesC& aType, TInt aIndex );
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   178
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   179
private: // from base classes
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   180
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   181
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   182
    * From CCoeControl, Draw
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   183
    * See CCoeControl documentation
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   184
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   185
    void Draw( const TRect& aRect ) const;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   186
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   187
public:
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   188
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   189
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   190
    * C++ default constructor.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   191
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   192
    CCarouselWidget();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   193
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   194
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   195
    * By default Symbian 2nd phase constructor is private.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   196
    */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   197
    void ConstructL();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   198
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   199
    TRect ViewPort() {return iViewPort; };
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   200
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   201
private:
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   202
    void InitPhysicEngineL();
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   203
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   204
    TInt ItemIndex( TPoint& aPoint );
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   205
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   206
    void LaunchItemL( TPoint& aPosition );
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   207
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   208
private: // Member data
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   209
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   210
     * Physics. 
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   211
     * Own.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   212
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   213
    CAknPhysics*        iPhysics;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   214
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   215
    MXnExtEventHandler* iEventHandler; // not own
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   216
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   217
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   218
     * Pointer down start time.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   219
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   220
    TTime               iStartTime;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   221
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   222
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   223
     * Start (pointer down) position.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   224
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   225
    TPoint              iStartPosition;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   226
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   227
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   228
     * Current pointer position.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   229
     */   
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   230
    TPoint              iStylusPosition;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   231
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   232
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   233
     * Current view position.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   234
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   235
    TPoint              iCurrentPosition;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   236
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   237
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   238
     * Adjusted view position
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   239
     */
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   240
    TPoint iViewPosition;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   241
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   242
    /**
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   243
     * Visible area, i.e. area of the scollable control that is to be drawn.
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   244
     */          
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   245
    TRect                           iViewPort;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   246
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   247
    RPointerArray<CCarouselItem>    iStripeItems;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   248
    
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   249
    TBool                           iDrawHighlight;
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   250
    };
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   251
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   252
#endif      // _CCAROUSELWIDGET_H
d12a7ea0f775 Example applications for various Homescreen APIs.
jake
parents:
diff changeset
   253
// End of File