From da40191cfc9a37c6d4cb4be8eab68a33c856d2da Mon Sep 17 00:00:00 2001 From: louis Date: Fri, 3 Jan 2014 11:56:45 +0100 Subject: timer edit menu with ok in timeline --- recmenumanager.c | 38 ++++++++++++++++++++++++++------------ 1 file changed, 26 insertions(+), 12 deletions(-) (limited to 'recmenumanager.c') diff --git a/recmenumanager.c b/recmenumanager.c index d02db9c..2adaa42 100644 --- a/recmenumanager.c +++ b/recmenumanager.c @@ -536,20 +536,34 @@ eOSState cRecMenuManager::StateMachine(eRecMenuState nextState) { activeMenu = new cRecMenuTimeline(timerConflicts); activeMenu->Display(); break; } - case rmsTimelineInfo: { - const cEvent *ev = activeMenu->GetEventValue(activeMenu->GetActive(true)); - if (ev) { - activeMenu->Hide(); - detailView = new cDetailView(ev); - detailView->setContent(); - detailView->drawHeader(); - detailView->drawContent(); - detailView->drawScrollbar(); - detailView->Start(); - detailViewActive = true; + case rmsTimelineTimerEdit: { + timer = activeMenu->GetTimerValue(activeMenu->GetActive(true)); + if (timer) { + delete activeMenu; + activeMenu = new cRecMenuEditTimer(timer, rmsTimelineTimerSave); + activeMenu->Display(); } break;} - + case rmsTimelineTimerSave: { + recManager->SaveTimer(timer, activeMenu); + delete activeMenu; + if (timerConflicts) { + delete timerConflicts; + } + timerConflicts = recManager->CheckTimerConflict(); + activeMenu = new cRecMenuTimeline(timerConflicts); + activeMenu->Display(); + break; } + case rmsTimelineTimerDelete: { + recManager->DeleteTimer(timer->Event()); + delete activeMenu; + if (timerConflicts) { + delete timerConflicts; + } + timerConflicts = recManager->CheckTimerConflict(); + activeMenu = new cRecMenuTimeline(timerConflicts); + activeMenu->Display(); + break; } /* * --------- COMMON --------------------------------- */ -- cgit v1.2.3