-rw-r--r-- | korganizer/koagendaview.cpp | 5 |
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) { |