diff options
-rw-r--r-- | CONTRIBUTORS | 3 | ||||
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | menu.c | 26 |
3 files changed, 20 insertions, 11 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index c6be5156..b1f3a3d5 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -696,3 +696,6 @@ Hermann Gausterer <mrq1@gmx.net> Peter Bieringer <pb@bieringer.de> for reporting a problem with duplicate recordings with the same file name + +Alexander Damhuis <ad@phonedation.de> + for reporting problems when deleting a timer that is currently recording @@ -2206,3 +2206,5 @@ Video Disk Recorder Revision History second timer (thanks to Peter Bieringer for reporting this one). - Fixed handling newly created timers in case they are not confirmed with "Ok" (thanks to Gerhard Steiner for reporting this one). +- It is now possible to directly delete a timer that is currently recording + (thanks to Alexander Damhuis for reporting this one). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: menu.c 1.248 2003/05/25 13:53:53 kls Exp $ + * $Id: menu.c 1.249 2003/05/25 14:06:17 kls Exp $ */ #include "menu.h" @@ -1053,18 +1053,22 @@ eOSState cMenuTimers::Delete(void) // Check if this timer is active: cTimer *ti = CurrentTimer(); if (ti) { - if (!ti->Recording()) { - if (Interface->Confirm(tr("Delete timer?"))) { - int Index = ti->Index(); - Timers.Del(ti); - cOsdMenu::Del(Current()); - Timers.Save(); - Display(); - isyslog("timer %d deleted", Index + 1); + if (Interface->Confirm(tr("Delete timer?"))) { + if (ti->Recording()) { + if (Interface->Confirm(tr("Timer still recording - really delete?"))) { + ti->Skip(); + cRecordControls::Process(time(NULL)); + } + else + return osContinue; } + int Index = ti->Index(); + Timers.Del(ti); + cOsdMenu::Del(Current()); + Timers.Save(); + Display(); + isyslog("timer %d deleted", Index + 1); } - else - Interface->Error(tr("Timer is recording!")); } return osContinue; } |