diff options
author | Manuel Reimer <manuel.reimer@gmx.de> | 2021-02-05 19:21:35 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-05 19:21:35 +0100 |
commit | 74e176589043610a3f65bcb37bf3180aa39061fc (patch) | |
tree | cff7d41ca70afebf02ab7f9cb44edaea293b1926 /state.c | |
parent | a21ba806ef957fc42c9d9eb9378fae6b5d186dcf (diff) | |
parent | a96ef369124640874361cf108c47d3e5705df5cc (diff) | |
download | vdr-plugin-graphlcd-74e176589043610a3f65bcb37bf3180aa39061fc.tar.gz vdr-plugin-graphlcd-74e176589043610a3f65bcb37bf3180aa39061fc.tar.bz2 |
Merge pull request #5 from pbiering/enhance-up-to-three-recordings
Enhance up to three recordings lines in skin
Diffstat (limited to 'state.c')
-rw-r--r-- | state.c | 35 |
1 files changed, 34 insertions, 1 deletions
@@ -900,20 +900,31 @@ bool cGraphLCDState::IsRecording(int CardNumber) return ret; } -std::string cGraphLCDState::Recordings(int CardNumber) +std::string cGraphLCDState::Recordings(int CardNumber, int selector) { std::string ret = ""; std::vector <tRecording>::iterator it; + int count = 0; mutex.Lock(); + // dsyslog("%s/%s: called CardNumber=%d selector=%d", PLUGIN_NAME_I18N, __FUNCTION__, CardNumber, selector); it = mRecordings.begin(); while (it != mRecordings.end()) { if (CardNumber == -1 || it->deviceNumber == CardNumber) { + count++; + if (selector > 0) { + if (count == selector) { + // dsyslog("%s/%s: selector hit CardNumber=%d selector=%d count=%d", PLUGIN_NAME_I18N, __FUNCTION__, CardNumber, selector, count); + ret += it->name; + break; + } + } else { if (ret.length() > 0) ret += "\n"; ret += it->name; + } } it++; } @@ -922,6 +933,28 @@ std::string cGraphLCDState::Recordings(int CardNumber) return ret; } +int cGraphLCDState::NumRecordings(int CardNumber) +{ + std::string ret = ""; + std::vector <tRecording>::iterator it; + int count = 0; + + mutex.Lock(); + // dsyslog("%s/%s: called CardNumber=%d", PLUGIN_NAME_I18N, __FUNCTION__, CardNumber); + it = mRecordings.begin(); + while (it != mRecordings.end()) + { + if (CardNumber == -1 || it->deviceNumber == CardNumber) + { + count++; + } + it++; + } + mutex.Unlock(); + + return count; +} + tOsdState cGraphLCDState::GetOsdState() { tOsdState ret; |