00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #ifndef __ANIMEXAMPLE_H
00033 #define __ANIMEXAMPLE_H
00034
00035 #include <coeccntx.h>
00036
00037 #include <eikenv.h>
00038 #include <eikappui.h>
00039 #include <eikapp.h>
00040 #include <eikdoc.h>
00041 #include <eikmenup.h>
00042 #include <eikstart.h>
00043 #include <eikon.hrh>
00044 #include <gdi.h>
00045
00046 #include <spriteanimation.h>
00047 #include <iclanimationdataprovider.h>
00048 #include <basicanimation.h>
00049 #include "animMover.h"
00050 #include <animexample.rsg>
00051 #include "AnimExample.hrh"
00052
00053 _LIT(KAnimExStopWatch,"Z:\\resource\\apps\\AnimExample\\stopwatch.gif");
00054
00055 _LIT( KAnimExSpriteLabel, "Sprite Animation" );
00056 _LIT( KAnimExBasicLabel, "Basic Animation" );
00057
00058 const TInt KBasicOffset = 135;
00059 const TInt KSpriteOffset = 25;
00060
00061 const TInt KspriteInterval = 10000;
00062 const TInt KBasicInterval = 99999;
00063
00064 const TInt KAnimExBasicPositionX = 300;
00065 const TInt KAnimExBasicPositionY = 100;
00066 const TInt KAnimExSpritePositionX = 60;
00067 const TInt KAnimExSpritePositionY = 70;
00068
00069
00070 enum TAnimOperation
00071 {
00072 EAnimPause,
00073 EAnimResume,
00074 EAnimHold,
00075 EAnimUnhold,
00076 EAnimFreeze,
00077 EAnimUnfreeze,
00078 EAnimStart,
00079 EAnimStop
00080 };
00081
00082
00083 class CAnimationApplication : public CEikApplication
00084 {
00085 private:
00086
00087 CApaDocument* CreateDocumentL();
00088 TUid AppDllUid() const;
00089 };
00090
00091 class CAnimationAppView : public CCoeControl
00092 {
00093 public:
00094 static CAnimationAppView* NewL( const TRect& aRect );
00095 CAnimationAppView();
00096 ~CAnimationAppView();
00097 void ConstructL( const TRect& aRect );
00098
00099 void ProduceSpriteAnimL();
00100 void ProduceBasicAnimL();
00101 void MoveAnimsL();
00102 void DoSpriteAnimOperationL( TAnimOperation aOperation );
00103 void DoBasicAnimOperationL( TAnimOperation aOperation );
00104 void ResetSpriteAnimAndMover();
00105 void ResetBasicAnimAndMover();
00106
00107 CSpriteAnimation* iSpriteAnim;
00108 CBasicAnimation* iBasicAnim;
00109
00110 private:
00111
00112 void Draw(const TRect& ) const;
00113
00114 private:
00115 HBufC* iAnimTestText;
00116 CSpriteAnimMover* iSpriteAnimMover;
00117 CBasicAnimMover* iBasicAnimMover;
00118
00119 };
00120
00121 class CAnimationAppUi : public CEikAppUi
00122 {
00123 public:
00124 void ConstructL();
00125 ~CAnimationAppUi();
00126
00127 private:
00128
00129 void HandleCommandL(TInt aCommand);
00130
00131 private:
00132 CAnimationAppView* iAppView;
00133 };
00134
00135
00136 class CAnimationDocument : public CEikDocument
00137 {
00138 public:
00139 static CAnimationDocument* NewL(CEikApplication& aApp);
00140 CAnimationDocument(CEikApplication& aApp);
00141 void ConstructL();
00142
00143 private:
00144
00145 CEikAppUi* CreateAppUiL();
00146 };
00147
00148
00149 #endif
00150
00151