00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 #ifndef __MOVEBALL_H__
00020 #define __MOVEBALL_H__
00021 
00022 #include <e32base.h>
00023 #include <coecntrl.h>
00024 
00025 
00026 class MUpdateContainer
00027         {
00028         public:
00029                 virtual void UpdateScreen() = 0;
00030         };
00031         
00032 
00033 class CMoveBall : public CTimer
00034         {
00035         
00036         public:
00037                 static CMoveBall* NewL(MUpdateContainer&);
00038                 CMoveBall(MUpdateContainer&);
00039                 ~CMoveBall();
00040         private:        
00041                 void ConstructL();
00042         
00043         
00044         public:
00045                 void StartMovingBall();
00046                 void StopMoveBall();
00047         
00048         
00049         private:
00050                 void RunL();
00051                 void DoCancel();
00052         
00053         
00054         private:
00055                 TPoint iLoc;                                    
00056                 MUpdateContainer& iUpdater;             
00057         };
00058         
00059 #endif
00060