application/src/PodcastQueueView.cpp
branch3rded
changeset 390 d7abecc9d189
parent 343 9c56bf585696
--- a/application/src/PodcastQueueView.cpp	Sat Nov 13 15:05:16 2010 +0000
+++ b/application/src/PodcastQueueView.cpp	Mon Nov 22 15:41:41 2010 +0000
@@ -31,6 +31,7 @@
 #include <barsread.h>
 #include <aknnotedialog.h>
 #include <aknmessagequerydialog.h>
+#include <akntitle.h>
 
 #define KMaxMessageLength 200
 
@@ -92,11 +93,12 @@
 			}
 		}
 	}
-		return CPodcastListView::OfferKeyEventL(aKeyEvent, aType);
+		return CPodcastShowsView::OfferKeyEventL(aKeyEvent, aType);
 	}
 
 CPodcastQueueView::~CPodcastQueueView()
 	{
+	DP("CPodcastQueueView::~CPodcastQueueView BEGIN");
 	iPodcastModel.ShowEngine().RemoveObserver(this);
 	iPodcastModel.FeedEngine().RemoveObserver(this);
 	}
@@ -114,7 +116,7 @@
 	
 	CPodcastListView::DoActivateL(aPrevViewId, aCustomMessageId, aCustomMessage);
 	iPreviousView = aPrevViewId;
-	
+	UpdateViewTitleL();
 	UpdateFeedUpdateStateL();
 	DP("CPodcastQueueView::DoActivateL END");
 	}
@@ -320,7 +322,7 @@
 			}
 			break;
 		default:
-			CPodcastListView::HandleCommandL(aCommand);
+			CPodcastShowsView::HandleCommandL(aCommand);
 			break;
 		}
 	}
@@ -336,6 +338,12 @@
 		
 		aMenuPane->SetItemDimmed(EPodcastMoveDownloadDown, dimDown);
 		aMenuPane->SetItemDimmed(EPodcastMoveDownloadUp, dimUp);
+		
+		TInt index = iListContainer->Listbox()->CurrentItemIndex();
+		CShowInfo *info = iPodcastModel.ActiveShowList()[index];
+
+		aMenuPane->SetItemDimmed(EPodcastMarkAsPlayed, info->PlayState() != ENeverPlayed);
+		aMenuPane->SetItemDimmed(EPodcastMarkAsUnplayed, info->PlayState() == ENeverPlayed);
 		}
 	else if (aResourceId == R_PODCAST_QUEUEVIEW_MENU)
 		{
@@ -345,3 +353,14 @@
 		aMenuPane->SetItemDimmed(EPodcastResumeDownloads, !iPodcastModel.SettingsEngine().DownloadSuspended());				
 		}
 	}
+
+
+void CPodcastQueueView::UpdateViewTitleL()
+	{
+	 CAknTitlePane* titlePane = static_cast<CAknTitlePane*>
+		      ( StatusPane()->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) );
+		 
+	HBufC *title = iEikonEnv->AllocReadResourceLC(R_DOWNLOAD_QUEUE);
+	titlePane->SetTextL(*title);
+	CleanupStack::PopAndDestroy(title);
+	}