mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Implemented an "EPG linger time"
This commit is contained in:
parent
c969c77d9c
commit
6fef98aa97
@ -561,6 +561,7 @@ Jaakko Hyv
|
||||
for fixing the minimum lifespan of deleted recordings
|
||||
for suggesting to improve channel switching in case of numerical input by switching
|
||||
as soon as the channel is unique
|
||||
for implementing an "EPG linger time"
|
||||
|
||||
Dennis Noordsij <dennis.noordsij@wiral.com>
|
||||
for reporting a small glitch when switching channels
|
||||
|
2
HISTORY
2
HISTORY
@ -2689,3 +2689,5 @@ Video Disk Recorder Revision History
|
||||
will still be shown in the display (provided the broadcasters handle the
|
||||
'running status' flag correctly). This also applies to programmes that have
|
||||
a start time that is in the future, but are already running.
|
||||
- Implemented an "EPG linger time", which can be set to have older EPG information
|
||||
still displayed in the "Schedule" menu (thanks to Jaakko Hyvätti).
|
||||
|
3
MANUAL
3
MANUAL
@ -462,6 +462,9 @@ Version 1.2
|
||||
be fixed accordingly. Restart VDR if you want to make sure
|
||||
all data is fixed.
|
||||
|
||||
EPG linger time = 0 The time (in minutes) within which old EPG information
|
||||
shall still be displayed in the "Schedule" menu.
|
||||
|
||||
Set system time = no Defines whether the system time will be set according to
|
||||
the time received from the DVB data stream.
|
||||
Note that this works only if VDR is running under a user
|
||||
|
5
config.c
5
config.c
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: config.c 1.123 2004/02/09 16:57:59 kls Exp $
|
||||
* $Id: config.c 1.124 2004/02/21 15:05:40 kls Exp $
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
@ -262,6 +262,7 @@ cSetup::cSetup(void)
|
||||
EPGLanguages[0] = -1;
|
||||
EPGScanTimeout = 5;
|
||||
EPGBugfixLevel = 2;
|
||||
EPGLinger = 0;
|
||||
SVDRPTimeout = 300;
|
||||
ZapTimeout = 3;
|
||||
SortTimers = 1;
|
||||
@ -406,6 +407,7 @@ bool cSetup::Parse(const char *Name, const char *Value)
|
||||
else if (!strcasecmp(Name, "EPGLanguages")) return ParseLanguages(Value, EPGLanguages);
|
||||
else if (!strcasecmp(Name, "EPGScanTimeout")) EPGScanTimeout = atoi(Value);
|
||||
else if (!strcasecmp(Name, "EPGBugfixLevel")) EPGBugfixLevel = atoi(Value);
|
||||
else if (!strcasecmp(Name, "EPGLinger")) EPGLinger = atoi(Value);
|
||||
else if (!strcasecmp(Name, "SVDRPTimeout")) SVDRPTimeout = atoi(Value);
|
||||
else if (!strcasecmp(Name, "ZapTimeout")) ZapTimeout = atoi(Value);
|
||||
else if (!strcasecmp(Name, "SortTimers")) SortTimers = atoi(Value);
|
||||
@ -457,6 +459,7 @@ bool cSetup::Save(void)
|
||||
StoreLanguages("EPGLanguages", EPGLanguages);
|
||||
Store("EPGScanTimeout", EPGScanTimeout);
|
||||
Store("EPGBugfixLevel", EPGBugfixLevel);
|
||||
Store("EPGLinger", EPGLinger);
|
||||
Store("SVDRPTimeout", SVDRPTimeout);
|
||||
Store("ZapTimeout", ZapTimeout);
|
||||
Store("SortTimers", SortTimers);
|
||||
|
3
config.h
3
config.h
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: config.h 1.187 2004/02/09 17:04:09 kls Exp $
|
||||
* $Id: config.h 1.188 2004/02/21 15:04:53 kls Exp $
|
||||
*/
|
||||
|
||||
#ifndef __CONFIG_H
|
||||
@ -220,6 +220,7 @@ public:
|
||||
int EPGLanguages[I18nNumLanguages + 1];
|
||||
int EPGScanTimeout;
|
||||
int EPGBugfixLevel;
|
||||
int EPGLinger;
|
||||
int SVDRPTimeout;
|
||||
int ZapTimeout;
|
||||
int SortTimers;
|
||||
|
4
epg.c
4
epg.c
@ -7,7 +7,7 @@
|
||||
* Original version (as used in VDR before 1.3.0) written by
|
||||
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
||||
*
|
||||
* $Id: epg.c 1.9 2004/02/21 14:33:11 kls Exp $
|
||||
* $Id: epg.c 1.10 2004/02/21 15:15:47 kls Exp $
|
||||
*/
|
||||
|
||||
#include "epg.h"
|
||||
@ -523,7 +523,7 @@ void cSchedule::Cleanup(time_t Time)
|
||||
Event = events.Get(a);
|
||||
if (!Event)
|
||||
break;
|
||||
if (Event->StartTime() + Event->Duration() + 3600 < Time) { // adding one hour for safety
|
||||
if (Event->StartTime() + Event->Duration() + Setup.EPGLinger * 60 + 3600 < Time) { // adding one hour for safety
|
||||
events.Del(Event);
|
||||
a--;
|
||||
}
|
||||
|
20
i18n.c
20
i18n.c
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: i18n.c 1.147 2004/02/20 13:58:14 kls Exp $
|
||||
* $Id: i18n.c 1.148 2004/02/21 15:14:36 kls Exp $
|
||||
*
|
||||
* Translations provided by:
|
||||
*
|
||||
@ -2355,6 +2355,24 @@ const tI18nPhrase Phrases[] = {
|
||||
"Nivell de correcció de la Guia",
|
||||
"ÃàÞÒÕÝì ÚÞààÕÚæØØ ÞèØÑÞÚ",
|
||||
},
|
||||
{ "Setup.EPG$EPG linger time (min)",
|
||||
"Alte EPG-Daten anzeigen (min)",// TODO
|
||||
"",// TODO
|
||||
"",// TODO
|
||||
"",// TODO
|
||||
"",// TODO
|
||||
"",// TODO
|
||||
"",// TODO
|
||||
"Vanha tieto näkyy (min)",
|
||||
"",// TODO
|
||||
"",// TODO
|
||||
"",// TODO
|
||||
"Visa gammal info (min)",
|
||||
"",// TODO
|
||||
"",// TODO
|
||||
"",// TODO
|
||||
"",// TODO
|
||||
},
|
||||
{ "Setup.EPG$Set system time",
|
||||
"Systemzeit stellen",
|
||||
"Nastavi sistemski cas",
|
||||
|
8
menu.c
8
menu.c
@ -4,7 +4,7 @@
|
||||
* See the main source file 'vdr.c' for copyright information and
|
||||
* how to reach the author.
|
||||
*
|
||||
* $Id: menu.c 1.287 2004/02/21 13:53:25 kls Exp $
|
||||
* $Id: menu.c 1.288 2004/02/21 15:26:47 kls Exp $
|
||||
*/
|
||||
|
||||
#include "menu.h"
|
||||
@ -1366,12 +1366,13 @@ void cMenuSchedule::PrepareSchedule(cChannel *Channel)
|
||||
if (schedules) {
|
||||
const cSchedule *Schedule = schedules->GetSchedule(Channel->GetChannelID());
|
||||
if (Schedule) {
|
||||
const cEvent *PresentEvent = Schedule->GetPresentEvent();
|
||||
int num = Schedule->NumEvents();
|
||||
time_t now = time(NULL);
|
||||
time_t now = time(NULL) - Setup.EPGLinger * 60;
|
||||
for (int a = 0; a < num; a++) {
|
||||
const cEvent *Event = Schedule->GetEventNumber(a);
|
||||
if (Event->StartTime() + Event->Duration() > now)
|
||||
Add(new cMenuScheduleItem(Event));
|
||||
Add(new cMenuScheduleItem(Event), Event == PresentEvent);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2026,6 +2027,7 @@ void cMenuSetupEPG::Setup(void)
|
||||
|
||||
Add(new cMenuEditIntItem( tr("Setup.EPG$EPG scan timeout (h)"), &data.EPGScanTimeout));
|
||||
Add(new cMenuEditIntItem( tr("Setup.EPG$EPG bugfix level"), &data.EPGBugfixLevel, 0, MAXEPGBUGFIXLEVEL));
|
||||
Add(new cMenuEditIntItem( tr("Setup.EPG$EPG linger time (min)"), &data.EPGLinger, 0));
|
||||
Add(new cMenuEditBoolItem(tr("Setup.EPG$Set system time"), &data.SetSystemTime));
|
||||
if (data.SetSystemTime)
|
||||
Add(new cMenuEditTranItem(tr("Setup.EPG$Use time from transponder"), &data.TimeTransponder));
|
||||
|
Loading…
Reference in New Issue
Block a user