application/src/PodcastShowsView.cpp
branchsymbian1
changeset 147 2e626f5a52c8
parent 136 cee38af14bcf
child 156 48cdb40709e7
--- a/application/src/PodcastShowsView.cpp	Thu Jun 03 15:59:28 2010 +0100
+++ b/application/src/PodcastShowsView.cpp	Thu Jun 03 22:18:04 2010 +0100
@@ -337,8 +337,16 @@
 					((CPodcastAppUi*)AppUi())->SetActiveTab(KTabIdQueue);
 					break;
 				case EDownloaded:
-					iPodcastModel.PlayPausePodcastL(showInfo, ETrue);
+					{
+					TRAPD(err, iPodcastModel.PlayPausePodcastL(showInfo, ETrue));
+					if (err != KErrNone)
+						{
+						HBufC *error = iEikonEnv->AllocReadResourceLC(R_ERROR_PLAYBACK_FAILED);
+						ShowErrorMessageL(*error);
+						CleanupStack::PopAndDestroy(error);
+						}
 					UpdateListboxItemsL();
+					}
 					break;
 				default:
 					break;
@@ -573,9 +581,11 @@
 		{
 		case EPodcastMarkAsPlayed:
 			HandleSetShowPlayedL(ETrue);
+			UpdateListboxItemsL();
 			break;
 		case EPodcastMarkAsUnplayed:
 			HandleSetShowPlayedL(EFalse);
+			UpdateListboxItemsL();
 			break;
 		case EPodcastMarkAllPlayed:
 			iPodcastModel.MarkSelectionPlayedL();
@@ -583,6 +593,7 @@
 			break;
 		case EPodcastDeleteShow:
 			HandleDeleteShowL();
+			UpdateListboxItemsL();
 			break;
 		case EPodcastDownloadShow:
 			{
@@ -619,6 +630,22 @@
 			{
 			DisplayShowInfoDialogL();
 			}break;
+		case EPodcastFilterShowsAll:
+			iPodcastModel.ShowEngine().SetShowFilter(EAllShows);
+			UpdateListboxItemsL();
+			break;
+		case EPodcastFilterShowsDownloaded:
+			iPodcastModel.ShowEngine().SetShowFilter(EDownloadedShows);
+			UpdateListboxItemsL();
+			break;			
+		case EPodcastFilterShowsNew:
+			iPodcastModel.ShowEngine().SetShowFilter(ENewShows);
+			UpdateListboxItemsL();
+			break;
+		case EPodcastFilterShowsNewAndDownloaded:
+			iPodcastModel.ShowEngine().SetShowFilter(ENewAndDownloadedShows);
+			UpdateListboxItemsL();
+			break;	
 		default:
 			CPodcastListView::HandleCommandL(aCommand);
 			break;