diff options
-rw-r--r-- | CONTRIBUTORS | 2 | ||||
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | skinlcars.c | 32 |
3 files changed, 23 insertions, 13 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index e7344e9b..a729fa46 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -1311,6 +1311,8 @@ Reinhard Nissl <rnissl@gmx.de> transponder changes are recognized for helping to debug switching into time shift mode when pausing live video for fixing a possible high CPU load when pausing replay + for suggesting that the LCARS skin should only displays devices that can actually + receive channels Richard Robson <richard_robson@beeb.net> for reporting freezing replay if a timer starts while in Transfer Mode from the @@ -7153,3 +7153,5 @@ Video Disk Recorder Revision History - Added a missing template specification to the c'tor of cSortedTimers (thanks to Udo Richter). - Fixed the background color of the Transfer Mode indicator bitmap in the LCARS skin. +- The LCARS skin now only displays devices that can actually receive channels, leaving + out, for instance, pure replay devices (suggested by Reinhard Nissl). diff --git a/skinlcars.c b/skinlcars.c index e8442109..60978f76 100644 --- a/skinlcars.c +++ b/skinlcars.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: skinlcars.c 2.3 2012/06/03 15:59:26 kls Exp $ + * $Id: skinlcars.c 2.4 2012/06/04 08:05:03 kls Exp $ */ // "Star Trek: The Next Generation"(R) is a registered trademark of Paramount Pictures, @@ -1192,15 +1192,17 @@ void cSkinLCARSDisplayMenu::DrawTimers(void) int Slot = 0; for (int i = 0; i < cDevice::NumDevices(); i++) { if (const cDevice *Device = cDevice::GetDevice(i)) { - if (!deviceRecording[Device->DeviceNumber()]) { - if (Slot < FreeDeviceSlots.Size()) { - y = FreeDeviceSlots[Slot]; - Slot++; + if (Device->NumProvidedSystems()) { + if (!deviceRecording[Device->DeviceNumber()]) { + if (Slot < FreeDeviceSlots.Size()) { + y = FreeDeviceSlots[Slot]; + Slot++; + } + if (y + lineHeight > ys05) + break; + deviceOffset[Device->DeviceNumber()] = y; + y += lineHeight + Gap; } - if (y + lineHeight > ys05) - break; - deviceOffset[Device->DeviceNumber()] = y; - y += lineHeight + Gap; } } } @@ -1231,8 +1233,10 @@ void cSkinLCARSDisplayMenu::DrawDevice(const cDevice *Device) void cSkinLCARSDisplayMenu::DrawDevices(void) { for (int i = 0; i < cDevice::NumDevices(); i++) { - if (const cDevice *Device = cDevice::GetDevice(i)) - DrawDevice(Device); + if (const cDevice *Device = cDevice::GetDevice(i)) { + if (Device->NumProvidedSystems()) + DrawDevice(Device); + } } } @@ -1264,8 +1268,10 @@ void cSkinLCARSDisplayMenu::DrawSignals(void) if (initial || Now - lastSignalDisplay >= SIGNALDISPLAYDELTA) { for (int i = 0; i < cDevice::NumDevices(); i++) { if (const cDevice *Device = cDevice::GetDevice(i)) { - if (int y = deviceOffset[i]) - DrawDeviceSignal(osd, Device, xs + lineHeight / 2, y, xs11, y + lineHeight, lastSignalStrength[i], lastSignalQuality[i], initial); + if (Device->NumProvidedSystems()) { + if (int y = deviceOffset[i]) + DrawDeviceSignal(osd, Device, xs + lineHeight / 2, y, xs11, y + lineHeight, lastSignalStrength[i], lastSignalQuality[i], initial); + } } } lastSignalDisplay = Now; |