30 #include "..\help\podcatcher.hlp.hrh" |
30 #include "..\help\podcatcher.hlp.hrh" |
31 #include "PodcastApp.h" |
31 #include "PodcastApp.h" |
32 #include <APGWGNAM.H> |
32 #include <APGWGNAM.H> |
33 #include <HLPLCH.H> |
33 #include <HLPLCH.H> |
34 #include <avkon.hrh> |
34 #include <avkon.hrh> |
|
35 #include "Podcast.mbg" |
35 |
36 |
36 const TUint KDelayLaunch = 1000; |
37 const TUint KDelayLaunch = 1000; |
37 |
38 |
38 CPodcastAppUi::CPodcastAppUi(CPodcastModel* aPodcastModel):iPodcastModel(aPodcastModel) |
39 CPodcastAppUi::CPodcastAppUi(CPodcastModel* aPodcastModel):iPodcastModel(aPodcastModel) |
39 { |
40 { |
203 iNaviStyle = ENaviText; |
204 iNaviStyle = ENaviText; |
204 } |
205 } |
205 |
206 |
206 void CPodcastAppUi::NaviShowTabGroupL() |
207 void CPodcastAppUi::NaviShowTabGroupL() |
207 { |
208 { |
208 if (iNaviStyle != ENaviEmpty) { |
209 // if (iNaviStyle != ENaviEmpty) { |
209 iNaviPane->Pop(); |
210 // iNaviPane->Pop(); |
210 } |
211 // } |
211 |
212 // |
212 iNaviTabGroup = iNaviPane->CreateTabGroupL(); |
213 // iNaviTabGroup = iNaviPane->CreateTabGroupL(); |
213 |
214 |
214 iTabGroup = STATIC_CAST(CAknTabGroup*, iNaviTabGroup->DecoratedControl()); |
215 iTabGroup = STATIC_CAST(CAknTabGroup*, iNaviPane->ResourceDecorator()->DecoratedControl()); |
215 iTabGroup->SetTabFixedWidthL(EAknTabWidthWithTwoTabs); |
216 iTabGroup->SetObserver(this); |
216 |
217 |
217 HBufC *label1 = iEikonEnv->AllocReadResourceLC(R_TABGROUP_FEEDS); |
218 // iTabGroup->SetTabFixedWidthL(EAknTabWidthWithTwoTabs); |
218 iTabGroup->AddTabL(KTabIdFeeds,*label1); |
219 // |
219 |
220 // HBufC *label1 = iEikonEnv->AllocReadResourceLC(R_TABGROUP_FEEDS); |
220 HBufC *label3 = iEikonEnv->AllocReadResourceLC(R_TABGROUP_QUEUE); |
221 // iTabGroup->AddTabL(KTabIdFeeds,*label1); |
221 iTabGroup->AddTabL(KTabIdQueue,*label3); |
222 // |
222 |
223 // HBufC *label3 = iEikonEnv->AllocReadResourceLC(R_TABGROUP_QUEUE); |
223 CleanupStack::PopAndDestroy(label3); |
224 // iTabGroup->AddTabL(KTabIdQueue,*label3); |
224 CleanupStack::PopAndDestroy(label1); |
225 // |
225 |
226 // CleanupStack::PopAndDestroy(label3); |
226 iTabGroup->SetActiveTabByIndex(0); |
227 // CleanupStack::PopAndDestroy(label1); |
227 iTabGroup->SetObserver(this); |
228 // |
228 |
229 // iTabGroup->SetActiveTabByIndex(0); |
229 iNaviPane->PushL(*iNaviTabGroup); |
230 // |
|
231 // iNaviPane->PushL(*iNaviTabGroup); |
230 iNaviStyle = ENaviTabGroup; |
232 iNaviStyle = ENaviTabGroup; |
231 |
233 // |
232 UpdateQueueTabL(iPodcastModel->ShowEngine().GetNumDownloadingShows()); |
234 UpdateQueueTabL(iPodcastModel->ShowEngine().GetNumDownloadingShows()); |
233 } |
235 } |
234 |
236 |
235 void CPodcastAppUi::TabChangedL (TInt aIndex) |
237 void CPodcastAppUi::TabChangedL (TInt aIndex) |
236 { |
238 { |
281 |
283 |
282 void CPodcastAppUi::UpdateQueueTabL(TInt aQueueLength) |
284 void CPodcastAppUi::UpdateQueueTabL(TInt aQueueLength) |
283 { |
285 { |
284 if (iNaviStyle == ENaviTabGroup) |
286 if (iNaviStyle == ENaviTabGroup) |
285 { |
287 { |
|
288 CFbsBitmap* bitmap; |
|
289 CFbsBitmap* mask; |
286 if (aQueueLength == 0) |
290 if (aQueueLength == 0) |
287 { |
291 { |
288 HBufC *queue = iEikonEnv->AllocReadResourceLC(R_TABGROUP_QUEUE); |
292 AknIconUtils::CreateIconL(bitmap, |
289 iTabGroup->ReplaceTabL(KTabIdQueue, *queue); |
293 mask, |
290 CleanupStack::PopAndDestroy(queue); |
294 iEikonEnv->EikAppUi()->Application()->BitmapStoreName(), |
|
295 EMbmPodcastTab_queue, |
|
296 EMbmPodcastTab_queue_mask); |
|
297 } |
|
298 else if (aQueueLength == 1) |
|
299 { |
|
300 |
|
301 AknIconUtils::CreateIconL(bitmap, |
|
302 mask, |
|
303 iEikonEnv->EikAppUi()->Application()->BitmapStoreName(), |
|
304 EMbmPodcastTab_queue1, |
|
305 EMbmPodcastTab_queue1_mask); |
|
306 } |
|
307 else if (aQueueLength == 2) |
|
308 { |
|
309 |
|
310 AknIconUtils::CreateIconL(bitmap, |
|
311 mask, |
|
312 iEikonEnv->EikAppUi()->Application()->BitmapStoreName(), |
|
313 EMbmPodcastTab_queue2, |
|
314 EMbmPodcastTab_queue2_mask); |
291 } |
315 } |
292 else |
316 else |
293 { |
317 { |
294 HBufC *queueTemplate = iEikonEnv->AllocReadResourceLC(R_TABGROUP_QUEUE_COUNTER); |
318 |
295 HBufC *queueCounter = HBufC::NewLC(queueTemplate->Length()+2); |
319 AknIconUtils::CreateIconL(bitmap, |
296 queueCounter->Des().Format(*queueTemplate, aQueueLength); |
320 mask, |
297 |
321 iEikonEnv->EikAppUi()->Application()->BitmapStoreName(), |
298 iTabGroup->ReplaceTabL(KTabIdQueue, *queueCounter); |
322 EMbmPodcastTab_queue3, |
299 CleanupStack::PopAndDestroy(queueCounter); |
323 EMbmPodcastTab_queue3_mask); |
300 CleanupStack::PopAndDestroy(queueTemplate); |
324 } |
301 } |
325 |
|
326 iTabGroup->ReplaceTabL(EPodcastTabQueue, bitmap, mask); |
302 } |
327 } |
303 } |
328 } |
304 |
329 |
305 void CPodcastAppUi::TabLeftL() |
330 void CPodcastAppUi::TabLeftL() |
306 { |
331 { |