diff options
Diffstat (limited to 'recmenus.c')
-rw-r--r-- | recmenus.c | 46 |
1 files changed, 23 insertions, 23 deletions
@@ -104,40 +104,40 @@ std::string cRecMenuAskFolder::GetFolder(void) { } // --- cRecMenuConfirmTimer --------------------------------------------------------- -cRecMenuConfirmTimer::cRecMenuConfirmTimer(const cEvent *event, bool timerChanged) { +cRecMenuConfirmTimer::cRecMenuConfirmTimer(const cEvent *event, bool timerChanged) { // OK SetWidthPercent(50); -#if VDRVERSNUM >= 20301 - LOCK_CHANNELS_READ; - const cString channelName = Channels->GetByChannelID(event->ChannelID())->Name(); -#else - const cString channelName = Channels.GetByChannelID(event->ChannelID())->Name(); -#endif + bool eventHasTimer = false; if (config.useRemoteTimers && pRemoteTimers) { RemoteTimers_GetMatch_v1_0 rtMatch; rtMatch.event = event; pRemoteTimers->Service("RemoteTimers::GetMatch-v1.0", &rtMatch); if (rtMatch.timerMatch == tmFull) { - eventHasTimer = true; + eventHasTimer = true; } } else { eventHasTimer = event->HasTimer(); } - const cString message = (eventHasTimer) ? (timerChanged) ? tr("Timer changed") - : tr("Timer created") - : tr("Timer NOT created"); - cString text = cString::sprintf("%s\n%s\n%s %s - %s\n%s", - *message, - *channelName, - *event->GetDateString(), - *event->GetTimeString(), - *event->GetEndTimeString(), - event->Title() - ); - cRecMenuItemInfo *infoItem = new cRecMenuItemInfo(*text); - infoItem->CalculateHeight(width - 2 * border); - AddMenuItem(infoItem); - AddMenuItem(new cRecMenuItemButton(tr("OK"), rmsClose, true, true)); + + const cChannels *channels = NULL; +#if VDRVERSNUM >= 20301 + { + LOCK_CHANNELS_READ; + channels = Channels; + } +#else + channels = &Channels; +#endif + const cString channelName = channels->GetByChannelID(event->ChannelID())->Name(); + const cString line1 = (eventHasTimer) ? (timerChanged) ? tr("Timer changed") + : tr("Timer created") + : tr("Timer NOT created"); + const cString line3 = cString::sprintf("%s %s - %s", *event->GetDateString(), *event->GetTimeString(), *event->GetEndTimeString()); + const cString line4 = (event && event->Title()) ? cString::sprintf("\"%s\"", event->Title()) : ""; + + AddHeader(new cRecMenuItemInfo(*line1, 4, *channelName, *line3, *line4, width - 2 * border)); + AddFooter(new cRecMenuItemButton(tr("OK"), rmsClose, true, true)); + CalculateHeight(); CreatePixmap(); Arrange(); |