diff options
author | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2006-03-26 19:00:00 +0200 |
---|---|---|
committer | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2006-03-26 19:00:00 +0200 |
commit | 49b561fcad16d3315fce8cb854de9f4ee6156640 (patch) | |
tree | 5612d6646e299dec266787f6068834f28c7ca81b /menu.c | |
parent | 9d12ac30f006ed63b4c9ab4c1a076b7d4f025022 (diff) | |
download | vdr-patch-lnbsharing-49b561fcad16d3315fce8cb854de9f4ee6156640.tar.gz vdr-patch-lnbsharing-49b561fcad16d3315fce8cb854de9f4ee6156640.tar.bz2 |
Version 1.3.45vdr-1.3.45
- Fixed updating the "Info" button in the "Timers" menu.
- Reduced the number of events to actually check when setting events to timers.
- cMenuEditIntItem now checks the given value and forces it to be between the
given min and max limits.
- The status changes of EPG events are now logged for all channels that have timers.
- Removed the log message "deleting plugin: ..." when shutting down VDR (thanks to
Christoph Haubrich for reporting that this is irritating when calling "vdr --help").
- Fixed cReadLine::Read() for lines that end with the infamous "\r\n" (thanks to
Rolf Ahrenberg).
- Fixed cDvbDevice::SetAudioBypass() in case setTransferModeForDolbyDigital is false
(thanks to Werner Fink).
- Updated 'sources.conf' (thanks to Oleg Roitburd).
- Fixed the shutdown timeout (thanks to Alexander Wenzel).
- Only calling RemoveEmptyVideoDirectories() once in case a recording has been
deleted (reported by Hardy Flor).
- Fixed deleting recordings that have been removed externally when running out of
disk space (reported by Jan Lenz).
- Fixed handling repeating VPS timers (they stopped recording too early).
- Timer log messages now show "VPS" if this is a VPS timer.
- Fixed getting the present EPG event in case none is currently 'running' (it
then returns the one that just ended).
- Fixed calling a plugin's main menu function while a message is being displayed
(reported by Helmut Auer).
- Updated the Russian OSD texts (thanks to Oleg Roitburd).
- Made cMenuRecordings::GetRecording() 'protected' (suggested by Marius Heidenstecker).
- Speeded up cRemux::ScanVideoPacket() (thanks to Reinhard Nissl).
- Enhanced logging EPG event data.
- Fixed format string handling (thanks to Darren Salt).
- The new function cDevice::ForceTransferMode() can be used to force the primary
device into transfer mode (thanks to Reinhard Nissl).
- The 'version' of EPG events is now ignored when reading EPG data from 'epg.data'
or via SVDRP/PUTE to avoid problems with double EPG events.
- The 'running status' of EPG events is now only set to SI::RunningStatusNotRunning
for events before the present event.
- Fixed some #include sequences.
- Single shot VPS timers are now only considered 'expired' if their associated
EPG event has been explicitly set to SI::RunningStatusNotRunning.
- The check for timers to be deleted is now done only every 30 seconds.
Diffstat (limited to 'menu.c')
-rw-r--r-- | menu.c | 20 |
1 files changed, 10 insertions, 10 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: menu.c 1.422 2006/02/25 15:41:40 kls Exp $ + * $Id: menu.c 1.424 2006/02/28 13:58:00 kls Exp $ */ #include "menu.h" @@ -500,12 +500,10 @@ eOSState cMenuChannels::Delete(void) cChannel *channel = GetChannel(Current()); int DeletedChannel = channel->Number(); // Check if there is a timer using this channel: - for (cTimer *ti = Timers.First(); ti; ti = Timers.Next(ti)) { - if (ti->Channel() == channel) { - Skins.Message(mtError, tr("Channel is being used by a timer!")); - return osContinue; - } - } + if (channel->HasTimer()) { + Skins.Message(mtError, tr("Channel is being used by a timer!")); + return osContinue; + } if (Interface->Confirm(tr("Delete channel?"))) { Channels.Del(channel); cOsdMenu::Del(Index); @@ -690,8 +688,8 @@ eOSState cMenuEditTimer::ProcessKey(eKeys Key) *timer = data; if (addIfConfirmed) Timers.Add(timer); - timer->Matches(); timer->SetEventFromSchedule(); + timer->Matches(); Timers.SetModified(); isyslog("timer %s %s (%s)", *timer->ToDescr(), addIfConfirmed ? "added" : "modified", timer->HasFlags(tfActive) ? "active" : "inactive"); addIfConfirmed = false; @@ -787,8 +785,10 @@ cMenuTimers::cMenuTimers(void) :cOsdMenu(tr("Timers"), 2, CHNUMWIDTH, 10, 6, 6) { helpKeys = -1; - for (cTimer *timer = Timers.First(); timer; timer = Timers.Next(timer)) + for (cTimer *timer = Timers.First(); timer; timer = Timers.Next(timer)) { + timer->SetEventFromSchedule(); // make sure the event is current Add(new cMenuTimerItem(timer)); + } Sort(); SetCurrent(First()); SetHelpKeys(); @@ -900,7 +900,7 @@ eOSState cMenuTimers::ProcessKey(eKeys Key) case kOk: return Edit(); case kRed: state = OnOff(); break; // must go through SetHelpKeys()! case kGreen: return New(); - case kYellow: return Delete(); + case kYellow: state = Delete(); break; case kBlue: return Info(); break; default: break; |