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