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 #ifndef __TASKMANAGER_APPVIEW_H__
00032 #define __TASKMANAGER_APPVIEW_H__
00033
00034
00035 #include "TaskManagerEngine.h"
00036
00037 #include <eiklbo.h>
00038 #include <coecntrl.h>
00039
00040
00041 const TInt KMaxStatusTextLength = 25;
00042
00043
00044 class CAknSingleStyleListBox;
00045 class CTaskManagerAppUi;
00046 class CResponse;
00047
00048
00049
00054 class CTaskManagerAppView : public CCoeControl,
00055 public MEikListBoxObserver,
00056 public MTransactionObserver
00057 {
00058 public:
00059
00063 static CTaskManagerAppView* NewL(const TRect& aRect, CTaskManagerAppUi& aAppUi);
00064
00068 ~CTaskManagerAppView();
00069
00070
00071 public:
00072
00079 TBool QueryIapL(TUint32& aId, const TUint32& aDefaultId);
00080
00081 private:
00082
00086 void Draw(const TRect& aRect) const;
00087
00091 void SizeChanged();
00092
00096 TInt CountComponentControls() const;
00097
00101 CCoeControl* ComponentControl(TInt aIndex) const;
00102
00106 TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
00107
00111 void HandleListBoxEventL(CEikListBox* aListBox,
00112 TListBoxEvent aListBoxEvent);
00113
00117 void OpeningConnectionL();
00118
00123 void ConnectingToServerL(const TBool& aLoadingTasks);
00124
00132 void SuccessL(const CResponse& aResponse);
00133
00138 void FailedL(const TInt& aError);
00139
00143 void CancelledL();
00144
00150 void ErrorL(const TDesC& aErrorMsg);
00151
00152 private:
00153
00157 void ConstructL(const TRect& aRect);
00158 CTaskManagerAppView(CTaskManagerAppUi& aAppUi);
00159
00160 private:
00161
00166 void ReadTasksL( const CResponse& aResponse );
00167
00174 void ShowStatus(const TDesC& aStatus);
00175
00179 void CreateListL();
00180
00184 void DeleteSelectedTaskL();
00185
00186 enum TTransactionStatus
00187 {
00188 EFetchingTasks = 0,
00189 EMarkingTaskDone
00190 };
00191
00192 private:
00193
00194 CAknSingleStyleListBox* iTaskList;
00195 CTaskManagerAppUi& iAppUi;
00196 TTransactionStatus iTransactionStatus;
00197 TBuf<KMaxStatusTextLength> iStatusText;
00198 };
00199
00200
00201 #endif // __TASKMANAGER_APPVIEW_H__
00202
00203