diff options
author | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2008-04-13 18:00:00 +0200 |
---|---|---|
committer | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2008-04-13 18:00:00 +0200 |
commit | 771986b89fc19b4ae65179ccf7dd8082512f8b7d (patch) | |
tree | 7c9b53c2f3008ea61bc3af93b2c4a5ac3e4a7b6a /menu.c | |
parent | fa56503b9a050ec0f0445d48f9bc167b9abe5ee1 (diff) | |
download | vdr-patch-lnbsharing-771986b89fc19b4ae65179ccf7dd8082512f8b7d.tar.gz vdr-patch-lnbsharing-771986b89fc19b4ae65179ccf7dd8082512f8b7d.tar.bz2 |
Version 1.7.0vdr-1.7.0
- Re-implemented handling of DVB-S2, which first appeared in version 1.5.14, but was
revoked in version 1.5.15 in favor of making a stable version 1.6.0. VDR now
requires the "multiproto" DVB driver, e.g. from http://jusst.de/hg/multiproto.
Note that the channels.conf file now supports additional parameters, so you may
want to make sure you have a backup of this file in case you need to go back to
the previous version of VDR!
- Fixed displaying transponder data when it is modified (thanks to Reinhard Nissl).
- Fixed handling the counter in detection of pre 1.3.19 PS data (thanks to Reinhard
Nissl).
- Improved logging system time changes to avoid problems on slow systems under
heavy load (suggested by Helmut Auer).
- Now setting the thread name, so that it can be seen in 'top -H' (thanks to Rolf
Ahrenberg).
- Fixed initializing the timer's flags in the cTimer copy constructor (thanks to
Andreas Mair).
- Fixed setting the OSD level in the 'osddemo' example (thanks to Wolfgang Rohdewald).
- Increased the time between checking the CAM status to 500ms to avoid problems
with some CAMs (reported by Arthur Konovalov).
Diffstat (limited to 'menu.c')
-rw-r--r-- | menu.c | 80 |
1 files changed, 10 insertions, 70 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.482 2008/03/16 11:15:28 kls Exp $ + * $Id: menu.c 2.1 2008/04/12 11:37:17 kls Exp $ */ #include "menu.h" @@ -182,70 +182,6 @@ eOSState cMenuEditSrcItem::ProcessKey(eKeys Key) return state; } -// --- cMenuEditMapItem ------------------------------------------------------ - -class cMenuEditMapItem : public cMenuEditItem { -protected: - int *value; - const tChannelParameterMap *map; - const char *zeroString; - virtual void Set(void); -public: - cMenuEditMapItem(const char *Name, int *Value, const tChannelParameterMap *Map, const char *ZeroString = NULL); - virtual eOSState ProcessKey(eKeys Key); - }; - -cMenuEditMapItem::cMenuEditMapItem(const char *Name, int *Value, const tChannelParameterMap *Map, const char *ZeroString) -:cMenuEditItem(Name) -{ - value = Value; - map = Map; - zeroString = ZeroString; - Set(); -} - -void cMenuEditMapItem::Set(void) -{ - int n = MapToUser(*value, map); - if (n == 999) - SetValue(tr("auto")); - else if (n == 0 && zeroString) - SetValue(zeroString); - else if (n >= 0) { - char buf[16]; - snprintf(buf, sizeof(buf), "%d", n); - SetValue(buf); - } - else - SetValue("???"); -} - -eOSState cMenuEditMapItem::ProcessKey(eKeys Key) -{ - eOSState state = cMenuEditItem::ProcessKey(Key); - - if (state == osUnknown) { - int newValue = *value; - int n = DriverIndex(*value, map); - if (NORMALKEY(Key) == kLeft) { // TODO might want to increase the delta if repeated quickly? - if (n-- > 0) - newValue = map[n].driverValue; - } - else if (NORMALKEY(Key) == kRight) { - if (map[++n].userValue >= 0) - newValue = map[n].driverValue; - } - else - return state; - if (newValue != *value) { - *value = newValue; - Set(); - } - state = osContinue; - } - return state; -} - // --- cMenuEditChannel ------------------------------------------------------ class cMenuEditChannel : public cOsdMenu { @@ -306,15 +242,19 @@ void cMenuEditChannel::Setup(void) XXX*/ // Parameters for specific types of sources: ST(" S ") Add(new cMenuEditChrItem( tr("Polarization"), &data.polarization, "hvlr")); + ST(" S ") Add(new cMenuEditMapItem( tr("System"), &data.system, SystemValues)); ST("CS ") Add(new cMenuEditIntItem( tr("Srate"), &data.srate)); - ST("CST") Add(new cMenuEditMapItem( tr("Inversion"), &data.inversion, InversionValues, tr("off"))); - ST("CST") Add(new cMenuEditMapItem( tr("CoderateH"), &data.coderateH, CoderateValues, tr("none"))); - ST(" T") Add(new cMenuEditMapItem( tr("CoderateL"), &data.coderateL, CoderateValues, tr("none"))); - ST("C T") Add(new cMenuEditMapItem( tr("Modulation"), &data.modulation, ModulationValues, "QPSK")); + ST("CST") Add(new cMenuEditMapItem( tr("Inversion"), &data.inversion, InversionValues)); + ST("CST") Add(new cMenuEditMapItem( tr("CoderateH"), &data.coderateH, CoderateValues)); + ST(" T") Add(new cMenuEditMapItem( tr("CoderateL"), &data.coderateL, CoderateValues)); + ST("CST") Add(new cMenuEditMapItem( tr("Modulation"), &data.modulation, ModulationValues)); ST(" T") Add(new cMenuEditMapItem( tr("Bandwidth"), &data.bandwidth, BandwidthValues)); ST(" T") Add(new cMenuEditMapItem( tr("Transmission"), &data.transmission, TransmissionValues)); ST(" T") Add(new cMenuEditMapItem( tr("Guard"), &data.guard, GuardValues)); - ST(" T") Add(new cMenuEditMapItem( tr("Hierarchy"), &data.hierarchy, HierarchyValues, tr("none"))); + ST(" T") Add(new cMenuEditMapItem( tr("Hierarchy"), &data.hierarchy, HierarchyValues)); + ST(" T") Add(new cMenuEditMapItem( tr("Alpha"), &data.alpha, AlphaValues)); + ST(" T") Add(new cMenuEditMapItem( tr("Priority"), &data.priority, PriorityValues)); + ST(" S ") Add(new cMenuEditMapItem( tr("Rolloff"), &data.rollOff, RollOffValues)); SetCurrent(Get(current)); Display(); |