00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __SKELETONAPPVIEW_h__
00020 #define __SKELETONAPPVIEW_h__
00021
00022
00023 #include <coecntrl.h>
00024
00025 class CInactivityTimer;
00026
00027
00028 class CSkeletonAppView : public CCoeControl
00029 {
00030 public:
00031
00039 static CSkeletonAppView* NewL( const TRect& aRect );
00040
00049 static CSkeletonAppView* NewLC( const TRect& aRect );
00050
00055 virtual ~CSkeletonAppView();
00056
00057 public:
00058
00064 void Draw( const TRect& aRect ) const;
00065
00070 virtual void SizeChanged();
00071
00072
00073
00074
00075
00076 void FocusChanged(TDrawNow aDrawNow);
00077
00082 TKeyResponse OfferKeyEventL(const TKeyEvent &aKeyEvent, TEventCode aType);
00083
00084 public:
00089 static TInt Tick(TAny* aCallback);
00090
00094 void StartHeartbeat();
00095
00099 void StopHeartbeat();
00100
00104 void SetPausedDisplay(TBool aPaused);
00105
00106 private:
00107
00115 void ConstructL(const TRect& aRect);
00116
00121 CSkeletonAppView();
00122 private:
00123
00128 void GameLoop();
00129 private:
00130 CPeriodic* iPeriodicTimer;
00131 TUint iKeyState;
00132 CInactivityTimer* iInactivity;
00133 TBool iPauseDisplay;
00134
00135
00136 TBool iFired;
00137 TTime iStart;
00138 TTime iStop;
00139 TUint iFrames;
00140 TBuf<20> iFpsMessage;
00141 TInt64 iDuration;
00142
00143 };
00144
00145 #endif // __SKELETONAPPVIEW_h__
00146
00147