summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS2
-rw-r--r--HISTORY2
-rw-r--r--skinlcars.c32
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
diff --git a/HISTORY b/HISTORY
index a1b38ca5..ca76fe9c 100644
--- a/HISTORY
+++ b/HISTORY
@@ -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;