diff options
author | louis <louis.braun@gmx.de> | 2014-01-12 16:27:59 +0100 |
---|---|---|
committer | louis <louis.braun@gmx.de> | 2014-01-12 16:27:59 +0100 |
commit | d0651a4a507bbd633b30105f1fa01abe1172b311 (patch) | |
tree | 111572aba4910c496ad952e438f7b1fab246825f /recmenumanager.c | |
parent | 3121910dc1267c593d24e39e068bfa91f798603f (diff) | |
download | vdr-plugin-tvguide-d0651a4a507bbd633b30105f1fa01abe1172b311.tar.gz vdr-plugin-tvguide-d0651a4a507bbd633b30105f1fa01abe1172b311.tar.bz2 |
various improvements in search&rec menus
Diffstat (limited to 'recmenumanager.c')
-rw-r--r-- | recmenumanager.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/recmenumanager.c b/recmenumanager.c index c702184..10d420f 100644 --- a/recmenumanager.c +++ b/recmenumanager.c @@ -299,11 +299,13 @@ eOSState cRecMenuManager::StateMachine(eRecMenuState nextState) { activeMenu->Display();
break; }
case rmsSearchTimerTest: {
- //caller: cRecMenuSearchTimerEdit, cRecMenuSearchTimerTemplatesCreate
+ //caller: cRecMenuSearchTimerEdit, cRecMenuSearchTimerTemplatesCreate, rmsSearchTimers
//show results of currently choosen search timer
cTVGuideSearchTimer searchTimer;
if (cRecMenuSearchTimerEdit *menu = dynamic_cast<cRecMenuSearchTimerEdit*>(activeMenu)) {
searchTimer = menu->GetSearchTimer();
+ } else if (cRecMenuSearchTimers *menu = dynamic_cast<cRecMenuSearchTimers*>(activeMenu)) {
+ searchTimer = menu->GetSearchTimer();
} else if (cRecMenuSearchTimerTemplatesCreate *menu = dynamic_cast<cRecMenuSearchTimerTemplatesCreate*>(activeMenu)) {
searchTimer = menu->GetSearchTimer();
TVGuideEPGSearchTemplate tmpl = menu->GetTemplate();
@@ -450,12 +452,14 @@ eOSState cRecMenuManager::StateMachine(eRecMenuState nextState) { ***********************************************************************************************/
case rmsSearch:
case rmsSearchWithOptions: {
- //caller: main menu, cRecMenuSearch
+ //caller: main menu, cRecMenuSearch, cRecMenuSearchResults
bool withOptions = false;
std::string searchString = event->Title();
if (cRecMenuSearch *menu = dynamic_cast<cRecMenuSearch*>(activeMenu)) {
withOptions = true;
searchString = menu->GetSearchString();
+ } else if (cRecMenuSearchResults *menu = dynamic_cast<cRecMenuSearchResults*>(activeMenu)) {
+ searchString = menu->GetSearchString();
}
delete activeMenu;
activeMenu = new cRecMenuSearch(searchString, withOptions);
@@ -468,9 +472,10 @@ eOSState cRecMenuManager::StateMachine(eRecMenuState nextState) { epgSearchData = menu->GetEPGSearchStruct();
} else break;
std::string searchString = epgSearchData.query;
- if (searchString.size() < 4) {
- delete activeMenu;
- activeMenu = new cRecMenuSearch(event->Title(), false);
+ if (searchString.size() < 3) {
+ activeMenuBuffer = activeMenu;
+ activeMenuBuffer->Hide();
+ activeMenu = new cRecMenuSearchNothingFound(searchString, true);
} else {
int numSearchResults = 0;
const cEvent **searchResult = recManager->PerformSearch(epgSearchData, numSearchResults);
|