summaryrefslogtreecommitdiff
path: root/recmenus.c
diff options
context:
space:
mode:
authorlouis <louis.braun@gmx.de>2013-07-20 13:46:26 +0200
committerlouis <louis.braun@gmx.de>2013-07-20 13:46:26 +0200
commit34f8460e254e2eb7fae1aafcf7c94ca2c3c38b02 (patch)
tree4de3005a27c4f6e584c9c1d2bdff2de97ff65911 /recmenus.c
parent9f351151edaf8195446b591ab9ac1d43f038c7ca (diff)
downloadvdr-plugin-tvguide-34f8460e254e2eb7fae1aafcf7c94ca2c3c38b02.tar.gz
vdr-plugin-tvguide-34f8460e254e2eb7fae1aafcf7c94ca2c3c38b02.tar.bz2
Added remotetimers support
Diffstat (limited to 'recmenus.c')
-rw-r--r--recmenus.c33
1 files changed, 29 insertions, 4 deletions
diff --git a/recmenus.c b/recmenus.c
index 0327a10..0676240 100644
--- a/recmenus.c
+++ b/recmenus.c
@@ -116,7 +116,18 @@ public:
SetWidthPercent(50);
cString channelName = Channels.GetByChannelID(event->ChannelID())->Name();
cString message;
- if (event->HasTimer()) {
+ bool eventHasTimer = false;
+ if (tvguideConfig.useRemoteTimers && pRemoteTimers) {
+ RemoteTimers_GetMatch_v1_0 rtMatch;
+ rtMatch.event = event;
+ pRemoteTimers->Service("RemoteTimers::GetMatch-v1.0", &rtMatch);
+ if (rtMatch.timerMatch == tmFull) {
+ eventHasTimer = true;
+ }
+ } else {
+ eventHasTimer = event->HasTimer();
+ }
+ if (eventHasTimer) {
message = tr("Timer created");
} else {
message = tr("Timer NOT created");
@@ -322,7 +333,18 @@ public:
infoItem->CalculateHeight(width - 2 * border);
AddMenuItem(infoItem);
- bool timerActive = timer->HasFlags(tfActive);
+ bool timerActive = false;
+ if (tvguideConfig.useRemoteTimers && pRemoteTimers) {
+ RemoteTimers_GetMatch_v1_0 rtMatch;
+ rtMatch.event = timer->Event();
+ pRemoteTimers->Service("RemoteTimers::GetMatch-v1.0", &rtMatch);
+ if (rtMatch.timer) {
+ if (rtMatch.timerMatch == tmFull)
+ timerActive = true;
+ }
+ } else
+ timerActive = timer->HasFlags(tfActive);
+
time_t day = timer->Day();
int start = timer->Start();
int stop = timer->Stop();
@@ -395,8 +417,11 @@ public:
cRecMenuConfirmSeriesTimer(cTimer *seriesTimer) {
SetWidthPercent(50);
cString message = tr("Series Timer created");
- cString days = cTimer::PrintDay(seriesTimer->Day(), seriesTimer->WeekDays(), true);
- cString infoText = cString::sprintf("%s\n%s, %s: %s, %s: %s", *message, *days, tr("Start"), *TimeString(seriesTimer->StartTime()), tr("Stop"), *TimeString(seriesTimer->StopTime()));
+ cString infoText = message;
+ if (seriesTimer) {
+ cString days = cTimer::PrintDay(seriesTimer->Day(), seriesTimer->WeekDays(), true);
+ infoText = cString::sprintf("%s\n%s, %s: %s, %s: %s", *message, *days, tr("Start"), *TimeString(seriesTimer->StartTime()), tr("Stop"), *TimeString(seriesTimer->StopTime()));
+ }
cRecMenuItemInfo *infoItem = new cRecMenuItemInfo(*infoText);
infoItem->CalculateHeight(width - 2 * border);
AddMenuItem(infoItem);