From 623b4d4abe87789dacd4c14de88a63b44ca352b7 Mon Sep 17 00:00:00 2001 From: zautrix Date: Wed, 06 Jun 2007 13:14:20 +0000 Subject: display of next alarm of recurring events in event viewer fixed --- (limited to 'libkcal/kincidenceformatter.cpp') diff --git a/libkcal/kincidenceformatter.cpp b/libkcal/kincidenceformatter.cpp index 4dfe16a..733b897 100644 --- a/libkcal/kincidenceformatter.cpp +++ b/libkcal/kincidenceformatter.cpp @@ -135,6 +135,14 @@ void KIncidenceFormatter::setEvent(Event *event) if (event->isAlarmEnabled()) { Alarm *alarm =event->alarms().first() ; QDateTime t = alarm->time(); + if (event->doesRecur()) { + bool ok = false; + int offset = 0; + QDateTime next = event->getNextAlarmDateTime(& ok, &offset, QDateTime::currentDateTime() ) ; + if ( ok ) { + t = next; + } + } QString s =i18n("( %1 before )").arg( alarm->offsetText() ); addTag("p",i18n("Alarm on: ") + s + ": "+KGlobal::locale()->formatDateTime( t, shortDate )); //addTag("p", KGlobal::locale()->formatDateTime( t, shortDate )); @@ -244,6 +252,14 @@ void KIncidenceFormatter::setTodo(Todo *event ) if (event->isAlarmEnabled()) { Alarm *alarm =event->alarms().first() ; QDateTime t = alarm->time(); + if (event->doesRecur()) { + bool ok = false; + int offset = 0; + QDateTime next = event->getNextAlarmDateTime(& ok, &offset, QDateTime::currentDateTime() ) ; + if ( ok ) { + t = next; + } + } QString s =i18n("( %1 before )").arg( alarm->offsetText() ); addTag("p",i18n("Alarm on: ") + s +" "); addTag("p", KGlobal::locale()->formatDateTime( t, shortDate )); -- cgit v0.9.0.2