summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koagendaview.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/korganizer/koagendaview.cpp b/korganizer/koagendaview.cpp
index 947bb66..3aae076 100644
--- a/korganizer/koagendaview.cpp
+++ b/korganizer/koagendaview.cpp
@@ -965,98 +965,99 @@ void KOAgendaView::fillAgenda()
965 // globalFlagBlockPainting = false; 965 // globalFlagBlockPainting = false;
966 if ( globalFlagBlockAgenda == 0 ) 966 if ( globalFlagBlockAgenda == 0 )
967 globalFlagBlockAgenda = 1; 967 globalFlagBlockAgenda = 1;
968 // clearView(); 968 // clearView();
969 //qDebug("fillAgenda()++++ "); 969 //qDebug("fillAgenda()++++ ");
970 globalFlagBlockAgendaItemPaint = 1; 970 globalFlagBlockAgendaItemPaint = 1;
971 mAllDayAgenda->changeColumns(mSelectedDates.count()); 971 mAllDayAgenda->changeColumns(mSelectedDates.count());
972 mAgenda->changeColumns(mSelectedDates.count()); 972 mAgenda->changeColumns(mSelectedDates.count());
973 qApp->processEvents(); 973 qApp->processEvents();
974 mEventIndicatorTop->changeColumns(mSelectedDates.count()); 974 mEventIndicatorTop->changeColumns(mSelectedDates.count());
975 mEventIndicatorBottom->changeColumns(mSelectedDates.count()); 975 mEventIndicatorBottom->changeColumns(mSelectedDates.count());
976 setHolidayMasks(); 976 setHolidayMasks();
977 977
978 //mAgenda->hideUnused(); 978 //mAgenda->hideUnused();
979 //mAllDayAgenda->hideUnused(); 979 //mAllDayAgenda->hideUnused();
980 980
981 // mAgenda->blockNextRepaint( false ); 981 // mAgenda->blockNextRepaint( false );
982 // mAgenda->viewport()->repaint(); 982 // mAgenda->viewport()->repaint();
983 // mAgenda->blockNextRepaint( true ); 983 // mAgenda->blockNextRepaint( true );
984 mMinY.resize(mSelectedDates.count()); 984 mMinY.resize(mSelectedDates.count());
985 mMaxY.resize(mSelectedDates.count()); 985 mMaxY.resize(mSelectedDates.count());
986 986
987 QPtrList<Event> dayEvents; 987 QPtrList<Event> dayEvents;
988 988
989 // ToDo items shall be displayed for the day they are due, but only showed today if they are already overdue. 989 // ToDo items shall be displayed for the day they are due, but only showed today if they are already overdue.
990 // Therefore, get all of them. 990 // Therefore, get all of them.
991 QPtrList<Todo> todos = calendar()->todos(); 991 QPtrList<Todo> todos = calendar()->todos();
992 992
993 mAgenda->setDateList(mSelectedDates); 993 mAgenda->setDateList(mSelectedDates);
994 994
995 QDate today = QDate::currentDate(); 995 QDate today = QDate::currentDate();
996 996
997 DateList::ConstIterator dit; 997 DateList::ConstIterator dit;
998 int curCol = 0; 998 int curCol = 0;
999 for( dit = mSelectedDates.begin(); dit != mSelectedDates.end(); ++dit ) { 999 for( dit = mSelectedDates.begin(); dit != mSelectedDates.end(); ++dit ) {
1000 QDate currentDate = *dit; 1000 QDate currentDate = *dit;
1001 // kdDebug() << "KOAgendaView::fillAgenda(): " << currentDate.toString() 1001 // kdDebug() << "KOAgendaView::fillAgenda(): " << currentDate.toString()
1002 // << endl; 1002 // << endl;
1003 1003
1004 dayEvents = calendar()->events(currentDate,true); 1004 dayEvents = calendar()->events(currentDate,true);
1005 1005
1006 // Default values, which can never be reached 1006 // Default values, which can never be reached
1007 mMinY[curCol] = mAgenda->timeToY(QTime(23,59)) + 1; 1007 mMinY[curCol] = mAgenda->timeToY(QTime(23,59)) + 1;
1008 mMaxY[curCol] = mAgenda->timeToY(QTime(0,0)) - 1; 1008 mMaxY[curCol] = mAgenda->timeToY(QTime(0,0)) - 1;
1009 1009
1010 unsigned int numEvent; 1010 unsigned int numEvent;
1011 for(numEvent=0;numEvent<dayEvents.count();++numEvent) { 1011 for(numEvent=0;numEvent<dayEvents.count();++numEvent) {
1012 Event *event = dayEvents.at(numEvent); 1012 Event *event = dayEvents.at(numEvent);
1013 if ( !KOPrefs::instance()->mShowSyncEvents && event->uid().left(15) == QString("last-syncEvent-") ) 1013 if ( !KOPrefs::instance()->mShowSyncEvents && event->uid().left(2) == QString("la") )
1014 continue; 1014 if ( event->uid().left(15) == QString("last-syncEvent-") )
1015 continue;
1015 // kdDebug() << " Event: " << event->summary() << endl; 1016 // kdDebug() << " Event: " << event->summary() << endl;
1016 1017
1017 int beginX = currentDate.daysTo(event->dtStart().date()) + curCol; 1018 int beginX = currentDate.daysTo(event->dtStart().date()) + curCol;
1018 int endX = currentDate.daysTo(event->dtEnd().date()) + curCol; 1019 int endX = currentDate.daysTo(event->dtEnd().date()) + curCol;
1019 1020
1020 // kdDebug() << " beginX: " << beginX << " endX: " << endX << endl; 1021 // kdDebug() << " beginX: " << beginX << " endX: " << endX << endl;
1021 1022
1022 if (event->doesFloat()) { 1023 if (event->doesFloat()) {
1023 if (event->recurrence()->doesRecur()) { 1024 if (event->recurrence()->doesRecur()) {
1024 mAllDayAgenda->insertAllDayItem(event,currentDate,curCol,curCol); 1025 mAllDayAgenda->insertAllDayItem(event,currentDate,curCol,curCol);
1025 } else { 1026 } else {
1026 if (beginX <= 0 && curCol == 0) { 1027 if (beginX <= 0 && curCol == 0) {
1027 mAllDayAgenda->insertAllDayItem(event,currentDate,beginX,endX); 1028 mAllDayAgenda->insertAllDayItem(event,currentDate,beginX,endX);
1028 } else if (beginX == curCol) { 1029 } else if (beginX == curCol) {
1029 mAllDayAgenda->insertAllDayItem(event,currentDate,beginX,endX); 1030 mAllDayAgenda->insertAllDayItem(event,currentDate,beginX,endX);
1030 } 1031 }
1031 } 1032 }
1032 } else if (event->isMultiDay()) { 1033 } else if (event->isMultiDay()) {
1033 if ( event->doesRecur () ) { 1034 if ( event->doesRecur () ) {
1034 QDate dateit = currentDate; 1035 QDate dateit = currentDate;
1035 int count = 0; 1036 int count = 0;
1036 int max = event->dtStart().daysTo( event->dtEnd() ) +2; 1037 int max = event->dtStart().daysTo( event->dtEnd() ) +2;
1037 while (! event->recursOn( dateit ) && count <= max ) { 1038 while (! event->recursOn( dateit ) && count <= max ) {
1038 ++count; 1039 ++count;
1039 dateit = dateit.addDays( -1 ); 1040 dateit = dateit.addDays( -1 );
1040 } 1041 }
1041 bool ok; 1042 bool ok;
1042 QDateTime nextOcstart = event->getNextOccurence( QDateTime(dateit) ,&ok ); 1043 QDateTime nextOcstart = event->getNextOccurence( QDateTime(dateit) ,&ok );
1043 if ( ok ) 1044 if ( ok )
1044 { 1045 {
1045 int secs = event->dtStart().secsTo( event->dtEnd() ); 1046 int secs = event->dtStart().secsTo( event->dtEnd() );
1046 QDateTime nextOcend =nextOcstart.addSecs( secs ); ; 1047 QDateTime nextOcend =nextOcstart.addSecs( secs ); ;
1047 beginX = currentDate.daysTo(nextOcstart.date()) + curCol; 1048 beginX = currentDate.daysTo(nextOcstart.date()) + curCol;
1048 endX = currentDate.daysTo(nextOcend.date()) + curCol; 1049 endX = currentDate.daysTo(nextOcend.date()) + curCol;
1049 1050
1050 } 1051 }
1051 } 1052 }
1052 int startY = mAgenda->timeToY(event->dtStart().time()); 1053 int startY = mAgenda->timeToY(event->dtStart().time());
1053 int endY = mAgenda->timeToY(event->dtEnd().time()) - 1; 1054 int endY = mAgenda->timeToY(event->dtEnd().time()) - 1;
1054 //qDebug("insert %d %d %d %d %d ",beginX,endX,startY,endY , curCol ); 1055 //qDebug("insert %d %d %d %d %d ",beginX,endX,startY,endY , curCol );
1055 if ((beginX <= 0 && curCol == 0) || beginX == curCol) { 1056 if ((beginX <= 0 && curCol == 0) || beginX == curCol) {
1056 //qDebug("insert!!! "); 1057 //qDebug("insert!!! ");
1057 mAgenda->insertMultiItem(event,currentDate,beginX,endX,startY,endY); 1058 mAgenda->insertMultiItem(event,currentDate,beginX,endX,startY,endY);
1058 } 1059 }
1059 if (beginX == curCol) { 1060 if (beginX == curCol) {
1060 mMaxY[curCol] = mAgenda->timeToY(QTime(23,59)); 1061 mMaxY[curCol] = mAgenda->timeToY(QTime(23,59));
1061 if (startY < mMinY[curCol]) mMinY[curCol] = startY; 1062 if (startY < mMinY[curCol]) mMinY[curCol] = startY;
1062 } else if (endX == curCol) { 1063 } else if (endX == curCol) {