diff options
Diffstat (limited to 'recmenumanager.c')
-rw-r--r-- | recmenumanager.c | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/recmenumanager.c b/recmenumanager.c index 1fc672b..8f100fd 100644 --- a/recmenumanager.c +++ b/recmenumanager.c @@ -316,11 +316,13 @@ eOSState cRecMenuManager::StateMachine(eRecMenuState nextState) { //caller: cRecMenuSearchTimerEdit, cRecMenuSearchTimerTemplatesCreate, cRecMenuSearchTimers, cRecMenuFavorites
//show results of currently choosen search timer
cTVGuideSearchTimer searchTimer;
- bool showRecIcon = false;
+ eRecMenuState recState = rmsDisabled;
if (cRecMenuSearchTimerEdit *menu = dynamic_cast<cRecMenuSearchTimerEdit*>(activeMenu)) {
searchTimer = menu->GetSearchTimer();
+ recState = rmsSearchTimerRecord;
} else if (cRecMenuSearchTimers *menu = dynamic_cast<cRecMenuSearchTimers*>(activeMenu)) {
searchTimer = menu->GetSearchTimer();
+ recState = rmsSearchTimerRecord;
} else if (cRecMenuSearchTimerTemplatesCreate *menu = dynamic_cast<cRecMenuSearchTimerTemplatesCreate*>(activeMenu)) {
searchTimer = menu->GetSearchTimer();
TVGuideEPGSearchTemplate tmpl = menu->GetTemplate();
@@ -328,7 +330,7 @@ eOSState cRecMenuManager::StateMachine(eRecMenuState nextState) { searchTimer.Parse(true);
} else if (cRecMenuFavorites *menu = dynamic_cast<cRecMenuFavorites*>(activeMenu)) {
searchTimer = menu->GetFavorite();
- showRecIcon = true;
+ recState = rmsFavoritesRecord;
} else break;
int numSearchResults = 0;
std::string searchString = searchTimer.BuildSearchString();
@@ -336,7 +338,7 @@ eOSState cRecMenuManager::StateMachine(eRecMenuState nextState) { if (numSearchResults) {
activeMenuBuffer = activeMenu;
activeMenuBuffer->Hide();
- activeMenu = new cRecMenuSearchTimerResults(searchTimer.SearchString(), searchResult, numSearchResults, "", showRecIcon?rmsFavoritesRecord:rmsDisabled);
+ activeMenu = new cRecMenuSearchTimerResults(searchTimer.SearchString(), searchResult, numSearchResults, "", recState);
activeMenu->Display();
} else {
activeMenuBuffer = activeMenu;
@@ -408,6 +410,20 @@ eOSState cRecMenuManager::StateMachine(eRecMenuState nextState) { activeMenuBuffer = NULL;
DisplaySearchTimerList();
break; }
+ case rmsSearchTimerRecord: {
+ //caller: cRecMenuSearchTimerResults
+ const cEvent *ev = NULL;
+ if (cRecMenuSearchTimerResults *menu = dynamic_cast<cRecMenuSearchTimerResults*>(activeMenu)) {
+ ev = menu->GetEvent();
+ } else break;
+ if (!ev)
+ break;
+ recManager->createTimer(ev, "");
+ activeMenuBuffer2 = activeMenu;
+ activeMenuBuffer2->Hide();
+ activeMenu = new cRecMenuSearchConfirmTimer(ev, rmsFavoritesRecordConfirm);
+ activeMenu->Display();
+ break; }
/**********************************************************************************************
* SWITCH TIMER
***********************************************************************************************/
|