diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2002-11-10 15:50:21 +0100 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2002-11-10 15:50:21 +0100 |
commit | 9fee2b67abb2594c5db2ca9f66525cb09e7b5cc7 (patch) | |
tree | 9d9326af17fcee00a08e55f52d268fd4e5943129 /osd.c | |
parent | c67fe26e66a93b450ed46ca83b5502c47fe28eb3 (diff) | |
download | vdr-9fee2b67abb2594c5db2ca9f66525cb09e7b5cc7.tar.gz vdr-9fee2b67abb2594c5db2ca9f66525cb09e7b5cc7.tar.bz2 |
First step towards a 'unique channel ID'
Diffstat (limited to 'osd.c')
-rw-r--r-- | osd.c | 22 |
1 files changed, 13 insertions, 9 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: osd.c 1.36 2002/10/13 10:31:28 kls Exp $ + * $Id: osd.c 1.37 2002/11/10 12:30:09 kls Exp $ */ #include "osd.h" @@ -599,20 +599,24 @@ eOSState cOsdMenu::AddSubMenu(cOsdMenu *SubMenu) delete subMenu; subMenu = SubMenu; subMenu->Display(); - return osContinue; // convenience return value (see cMenuMain) + return osContinue; // convenience return value +} + +eOSState cOsdMenu::CloseSubMenu() +{ + delete subMenu; + subMenu = NULL; + RefreshCurrent(); + Display(); + return osContinue; // convenience return value } eOSState cOsdMenu::ProcessKey(eKeys Key) { if (subMenu) { eOSState state = subMenu->ProcessKey(Key); - if (state == osBack) { - delete subMenu; - subMenu = NULL; - RefreshCurrent(); - Display(); - state = osContinue; - } + if (state == osBack) + return CloseSubMenu(); return state; } |