diff options
Diffstat (limited to 'recmenus.c')
-rw-r--r-- | recmenus.c | 35 |
1 files changed, 17 insertions, 18 deletions
@@ -321,28 +321,26 @@ cRecMenuNoTimerConflict::cRecMenuNoTimerConflict(void) { // OK } // --- cRecMenuRerunResults --------------------------------------------------------- -cRecMenuRerunResults::cRecMenuRerunResults(const cEvent *original, const cEvent **reruns, int numReruns) { - this->reruns = reruns; - this->numReruns = numReruns; +cRecMenuRerunResults::cRecMenuRerunResults(const cEvent *original, const cEvent **reruns, int numReruns) { // OK SetWidthPercent(70); + + this->reruns = reruns; this->numReruns = numReruns; - cString message1 = tr("reruns for"); - cString message2 = tr("rerun for"); - cString message3 = tr("found"); - cString infoText = cString::sprintf("%d %s:\n\"%s\" %s", numReruns, (numReruns>1)?(*message1):(*message2), original->Title(), *message3); - cRecMenuItem *infoItem = new cRecMenuItemInfo(*infoText, true); - infoItem->CalculateHeight(width - 2 * border); - SetHeader(infoItem); - - cRecMenuItem *button = new cRecMenuItemButton(tr("Ignore reruns"), rmsTimerConflictIgnoreReruns, false); - SetFooter(button); - + + const cString line1 = cString::sprintf("%d %s:", numReruns, (numReruns > 1) ? tr("reruns for") : tr("rerun for")); + const cString line2 = cString::sprintf("\"%s\"", original->Title()); + const cString line3 = tr("found"); + + AddHeader(new cRecMenuItemInfo(*line1, 3, *line2, *line3, "", width - 2 * border, true)); + AddFooter(new cRecMenuItemButton(tr("Ignore reruns"), rmsTimerConflictIgnoreReruns, false)); + if (reruns && (numReruns > 0)) { - for (int i=0; i<numReruns; i++) { - if (!AddMenuItemInitial(new cRecMenuItemEvent(reruns[i], rmsSearchShowInfo, rmsTimerConflictRecordRerun, (i==0)?true:false))) + for (int i = 0; i < numReruns; i++) { + if (!AddMenuItemInitial(new cRecMenuItemEvent(reruns[i], rmsSearchShowInfo, rmsTimerConflictRecordRerun, (i == 0) ? true : false))) break; } } + CalculateHeight(); CreatePixmap(); Arrange(); @@ -361,8 +359,9 @@ int cRecMenuRerunResults::GetTotalNumMenuItems(void) { } const cEvent *cRecMenuRerunResults::GetRerunEvent(void) { - cRecMenuItemEvent *activeItem = dynamic_cast<cRecMenuItemEvent*>(GetActiveMenuItem()); - return activeItem->GetEventValue(); + if (cRecMenuItemEvent *activeItem = dynamic_cast<cRecMenuItemEvent*>(GetActiveMenuItem())) + return activeItem->GetEventValue(); + return NULL; } // --- cRecMenuNoRerunsFound --------------------------------------------------------- |