-rw-r--r-- | korganizer/komonthview.cpp | 24 | ||||
-rw-r--r-- | korganizer/komonthview.h | 2 |
2 files changed, 14 insertions, 12 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp index 4bf9dea..004ff50 100644 --- a/korganizer/komonthview.cpp +++ b/korganizer/komonthview.cpp | |||
@@ -471,213 +471,215 @@ void MonthViewCell::keyPressEvent ( QKeyEvent * e ) | |||
471 | void MonthViewCell::startUpdateCell() | 471 | void MonthViewCell::startUpdateCell() |
472 | { | 472 | { |
473 | 473 | ||
474 | mItemList->setFocusPolicy(NoFocus); | 474 | mItemList->setFocusPolicy(NoFocus); |
475 | if ( !mMonthView->isUpdatePossible() ) | 475 | if ( !mMonthView->isUpdatePossible() ) |
476 | return; | 476 | return; |
477 | 477 | ||
478 | /* | 478 | /* |
479 | if ( !isVisible() ){ | 479 | if ( !isVisible() ){ |
480 | return; | 480 | return; |
481 | } | 481 | } |
482 | */ | 482 | */ |
483 | // qDebug("MonthViewCell::updateCell() "); | 483 | // qDebug("MonthViewCell::updateCell() "); |
484 | setPrimary( mDate.month()%2 ); | 484 | setPrimary( mDate.month()%2 ); |
485 | setHoliday( KOGlobals::self()->calendarSystem()->dayOfWeek(mDate) == KOGlobals::self()->calendarSystem()->weekDayOfPray() || ( mDate.dayOfWeek() == 6 ) && KOPrefs::instance()-> mExcludeSaturdays); | 485 | setHoliday( KOGlobals::self()->calendarSystem()->dayOfWeek(mDate) == KOGlobals::self()->calendarSystem()->weekDayOfPray() || ( mDate.dayOfWeek() == 6 ) && KOPrefs::instance()-> mExcludeSaturdays); |
486 | if ( mDate == QDate::currentDate() ) { | 486 | if ( mDate == QDate::currentDate() ) { |
487 | mItemList->setLineWidth( 3 ); | 487 | mItemList->setLineWidth( 3 ); |
488 | } else { | 488 | } else { |
489 | mItemList->setLineWidth( 1 ); | 489 | mItemList->setLineWidth( 1 ); |
490 | } | 490 | } |
491 | mItemList->clear(); | 491 | mItemList->clear(); |
492 | 492 | ||
493 | #ifdef DESKTOP_VERSION | 493 | #ifdef DESKTOP_VERSION |
494 | QToolTip::remove(this); | 494 | QToolTip::remove(this); |
495 | #endif | 495 | #endif |
496 | mToolTip = ""; | 496 | mToolTip.clear(); |
497 | //qApp->processEvents(); | 497 | //qApp->processEvents(); |
498 | if ( !mHolidayString.isEmpty() ) { | 498 | if ( !mHolidayString.isEmpty() ) { |
499 | MonthViewItem *item = new MonthViewItem( 0, mDate, mHolidayString ); | 499 | MonthViewItem *item = new MonthViewItem( 0, mDate, mHolidayString ); |
500 | item->setPalette( mHolidayPalette ); | 500 | item->setPalette( mHolidayPalette ); |
501 | mItemList->insertItem( item ); | 501 | mItemList->insertItem( item ); |
502 | mToolTip += mHolidayString+"\n"; | 502 | mToolTip.append ( mHolidayString ); |
503 | } | 503 | } |
504 | } | 504 | } |
505 | 505 | ||
506 | void MonthViewCell::insertEvent(Event *event) | 506 | void MonthViewCell::insertEvent(Event *event) |
507 | { | 507 | { |
508 | 508 | QString mToolTipText; | |
509 | mItemList->setFocusPolicy(WheelFocus); | 509 | mItemList->setFocusPolicy(WheelFocus); |
510 | if ( !(event->doesRecur() == Recurrence::rNone) ) { | 510 | if ( !(event->doesRecur() == Recurrence::rNone) ) { |
511 | if ( !KOPrefs::instance()->mMonthDailyRecur && event->doesRecur() == Recurrence::rDaily ) | 511 | if ( !KOPrefs::instance()->mMonthDailyRecur && event->doesRecur() == Recurrence::rDaily ) |
512 | return; | 512 | return; |
513 | else | 513 | else |
514 | if ( !KOPrefs::instance()->mMonthWeeklyRecur && event->doesRecur() == Recurrence::rWeekly ) | 514 | if ( !KOPrefs::instance()->mMonthWeeklyRecur && event->doesRecur() == Recurrence::rWeekly ) |
515 | return; | 515 | return; |
516 | } | 516 | } |
517 | 517 | ||
518 | if ( event->categories().contains("Holiday") || | 518 | if ( event->categories().contains("Holiday") || |
519 | event->categories().contains(i18n("Holiday"))) { | 519 | event->categories().contains(i18n("Holiday"))) { |
520 | setHoliday( true ); | 520 | setHoliday( true ); |
521 | if ( mDate.dayOfWeek() == 7 ) | 521 | if ( mDate.dayOfWeek() == 7 ) |
522 | mItemList->setLineWidth( 3 ); | 522 | mItemList->setLineWidth( 3 ); |
523 | } | 523 | } |
524 | QString text; | 524 | QString text; |
525 | int multiday = 0;// 1 = start, 2 = midddle, 3 = end day | 525 | int multiday = 0;// 1 = start, 2 = midddle, 3 = end day |
526 | if (event->isMultiDay()) { | 526 | if (event->isMultiDay()) { |
527 | QString prefix = "<->";multiday = 2; | 527 | QString prefix = "<->";multiday = 2; |
528 | QString time; | 528 | QString time; |
529 | if ( event->doesRecur() ) { | 529 | if ( event->doesRecur() ) { |
530 | if ( event->recursOn( mDate) ) { | 530 | if ( event->recursOn( mDate) ) { |
531 | prefix ="->" ;multiday = 1; | 531 | prefix ="->" ;multiday = 1; |
532 | } | 532 | } |
533 | else { | 533 | else { |
534 | int days = event->dtStart().date().daysTo ( event->dtEnd().date() ); | 534 | int days = event->dtStart().date().daysTo ( event->dtEnd().date() ); |
535 | if ( event->recursOn( mDate.addDays( -days)) ) { | 535 | if ( event->recursOn( mDate.addDays( -days)) ) { |
536 | prefix ="<-" ;multiday = 3; | 536 | prefix ="<-" ;multiday = 3; |
537 | } | 537 | } |
538 | } | 538 | } |
539 | 539 | ||
540 | } else { | 540 | } else { |
541 | if (mDate == event->dtStart().date()) { | 541 | if (mDate == event->dtStart().date()) { |
542 | prefix ="->" ;multiday = 1; | 542 | prefix ="->" ;multiday = 1; |
543 | } else if (mDate == event->dtEnd().date()) { | 543 | } else if (mDate == event->dtEnd().date()) { |
544 | prefix ="<-" ;multiday = 3; | 544 | prefix ="<-" ;multiday = 3; |
545 | } | 545 | } |
546 | } | 546 | } |
547 | if ( !event->doesFloat() ) { | 547 | if ( !event->doesFloat() ) { |
548 | if ( mDate == event->dtStart().date () ) | 548 | if ( mDate == event->dtStart().date () ) |
549 | time = KGlobal::locale()->formatTime(event->dtStart().time())+" "; | 549 | time = KGlobal::locale()->formatTime(event->dtStart().time())+" "; |
550 | else if ( mDate == event->dtEnd().date () ) | 550 | else if ( mDate == event->dtEnd().date () ) |
551 | time = KGlobal::locale()->formatTime(event->dtEnd().time())+" "; | 551 | time = KGlobal::locale()->formatTime(event->dtEnd().time())+" "; |
552 | 552 | ||
553 | } | 553 | } |
554 | text = time + event->summary(); | 554 | text = time + event->summary(); |
555 | mToolTip += prefix + text; | 555 | mToolTipText += prefix + text; |
556 | } else { | 556 | } else { |
557 | if (event->doesFloat()) { | 557 | if (event->doesFloat()) { |
558 | text = event->summary(); | 558 | text = event->summary(); |
559 | mToolTip += text; | 559 | mToolTipText += text; |
560 | } | 560 | } |
561 | else { | 561 | else { |
562 | text = KGlobal::locale()->formatTime(event->dtStart().time()); | 562 | text = KGlobal::locale()->formatTime(event->dtStart().time()); |
563 | text += " " + event->summary(); | 563 | text += " " + event->summary(); |
564 | mToolTip += KGlobal::locale()->formatTime(event->dtStart().time()) +"-"+KGlobal::locale()->formatTime(event->dtEnd().time())+" " + event->summary(); | 564 | mToolTipText += KGlobal::locale()->formatTime(event->dtStart().time()) +"-"+KGlobal::locale()->formatTime(event->dtEnd().time())+" " + event->summary(); |
565 | } | 565 | } |
566 | } | 566 | } |
567 | 567 | ||
568 | MonthViewItem *item = new MonthViewItem( event, mDate, text ); | 568 | MonthViewItem *item = new MonthViewItem( event, mDate, text ); |
569 | QPalette pal; | 569 | QPalette pal; |
570 | if (KOPrefs::instance()->mMonthViewUsesCategoryColor) { | 570 | if (KOPrefs::instance()->mMonthViewUsesCategoryColor) { |
571 | QStringList categories = event->categories(); | 571 | QStringList categories = event->categories(); |
572 | QString cat = categories.first(); | 572 | QString cat = categories.first(); |
573 | if ( KOPrefs::instance()->mMonthViewUsesForegroundColor ) { | 573 | if ( KOPrefs::instance()->mMonthViewUsesForegroundColor ) { |
574 | pal = getPalette(); | 574 | pal = getPalette(); |
575 | if (cat.isEmpty()) { | 575 | if (cat.isEmpty()) { |
576 | pal.setColor(QColorGroup::Foreground,KOPrefs::instance()->mEventColor); | 576 | pal.setColor(QColorGroup::Foreground,KOPrefs::instance()->mEventColor); |
577 | } else { | 577 | } else { |
578 | pal.setColor(QColorGroup::Foreground, *(KOPrefs::instance()->categoryColor(cat))); | 578 | pal.setColor(QColorGroup::Foreground, *(KOPrefs::instance()->categoryColor(cat))); |
579 | } | 579 | } |
580 | 580 | ||
581 | } else { | 581 | } else { |
582 | if (cat.isEmpty()) { | 582 | if (cat.isEmpty()) { |
583 | pal = QPalette(KOPrefs::instance()->mEventColor, KOPrefs::instance()->mEventColor); | 583 | pal = QPalette(KOPrefs::instance()->mEventColor, KOPrefs::instance()->mEventColor); |
584 | } else { | 584 | } else { |
585 | pal = QPalette(*(KOPrefs::instance()->categoryColor(cat)), *(KOPrefs::instance()->categoryColor(cat))); | 585 | pal = QPalette(*(KOPrefs::instance()->categoryColor(cat)), *(KOPrefs::instance()->categoryColor(cat))); |
586 | } | 586 | } |
587 | } | 587 | } |
588 | 588 | ||
589 | } else { | 589 | } else { |
590 | pal = mStandardPalette ; | 590 | pal = mStandardPalette ; |
591 | } | 591 | } |
592 | item->setPalette( pal ); | 592 | item->setPalette( pal ); |
593 | item->setRecur( event->recurrence()->doesRecur() ); | 593 | item->setRecur( event->recurrence()->doesRecur() ); |
594 | item->setAlarm( event->isAlarmEnabled() && multiday < 2 ); | 594 | item->setAlarm( event->isAlarmEnabled() && multiday < 2 ); |
595 | item->setMoreInfo( event->description().length() > 0 ); | 595 | item->setMoreInfo( event->description().length() > 0 ); |
596 | #ifdef DESKTOP_VERSION | 596 | #ifdef DESKTOP_VERSION |
597 | Attendee *me = event->attendeeByMails(KOPrefs::instance()->mAdditionalMails, | 597 | Attendee *me = event->attendeeByMails(KOPrefs::instance()->mAdditionalMails, |
598 | KOPrefs::instance()->email()); | 598 | KOPrefs::instance()->email()); |
599 | if ( me != 0 ) { | 599 | if ( me != 0 ) { |
600 | if ( me->status() == Attendee::NeedsAction && me->RSVP()) | 600 | if ( me->status() == Attendee::NeedsAction && me->RSVP()) |
601 | item->setReply(true && multiday < 2); | 601 | item->setReply(true && multiday < 2); |
602 | else | 602 | else |
603 | item->setReply(false); | 603 | item->setReply(false); |
604 | } else | 604 | } else |
605 | item->setReply(false); | 605 | item->setReply(false); |
606 | #endif | 606 | #endif |
607 | item->setMultiDay( multiday ); | 607 | item->setMultiDay( multiday ); |
608 | mItemList->insertItem( item ); | 608 | mItemList->insertItem( item ); |
609 | mToolTip += "\n"; | 609 | mToolTip.append( mToolTipText ); |
610 | } | 610 | } |
611 | void MonthViewCell::insertTodo(Todo *todo) | 611 | void MonthViewCell::insertTodo(Todo *todo) |
612 | { | 612 | { |
613 | mItemList->setFocusPolicy(WheelFocus); | 613 | mItemList->setFocusPolicy(WheelFocus); |
614 | QString text; | 614 | QString text; |
615 | if (todo->hasDueDate()) { | 615 | if (todo->hasDueDate()) { |
616 | if (!todo->doesFloat()) { | 616 | if (!todo->doesFloat()) { |
617 | text += KGlobal::locale()->formatTime(todo->dtDue().time()); | 617 | text += KGlobal::locale()->formatTime(todo->dtDue().time()); |
618 | text += " "; | 618 | text += " "; |
619 | } | 619 | } |
620 | } | 620 | } |
621 | text += todo->summary(); | 621 | text += todo->summary(); |
622 | 622 | ||
623 | MonthViewItem *item = new MonthViewItem( todo, mDate, text ); | 623 | MonthViewItem *item = new MonthViewItem( todo, mDate, text ); |
624 | //item->setPalette( mStandardPalette ); | 624 | //item->setPalette( mStandardPalette ); |
625 | QPalette pal; | 625 | QPalette pal; |
626 | if (KOPrefs::instance()->mMonthViewUsesCategoryColor) { | 626 | if (KOPrefs::instance()->mMonthViewUsesCategoryColor) { |
627 | QStringList categories = todo->categories(); | 627 | QStringList categories = todo->categories(); |
628 | QString cat = categories.first(); | 628 | QString cat = categories.first(); |
629 | if ( KOPrefs::instance()->mMonthViewUsesForegroundColor ) { | 629 | if ( KOPrefs::instance()->mMonthViewUsesForegroundColor ) { |
630 | pal = getPalette(); | 630 | pal = getPalette(); |
631 | if (cat.isEmpty()) { | 631 | if (cat.isEmpty()) { |
632 | pal.setColor(QColorGroup::Foreground,KOPrefs::instance()->mEventColor); | 632 | pal.setColor(QColorGroup::Foreground,KOPrefs::instance()->mEventColor); |
633 | } else { | 633 | } else { |
634 | pal.setColor(QColorGroup::Foreground, *(KOPrefs::instance()->categoryColor(cat))); | 634 | pal.setColor(QColorGroup::Foreground, *(KOPrefs::instance()->categoryColor(cat))); |
635 | } | 635 | } |
636 | 636 | ||
637 | } else { | 637 | } else { |
638 | if (cat.isEmpty()) { | 638 | if (cat.isEmpty()) { |
639 | pal = QPalette(KOPrefs::instance()->mEventColor, KOPrefs::instance()->mEventColor); | 639 | pal = QPalette(KOPrefs::instance()->mEventColor, KOPrefs::instance()->mEventColor); |
640 | } else { | 640 | } else { |
641 | pal = QPalette(*(KOPrefs::instance()->categoryColor(cat)), *(KOPrefs::instance()->categoryColor(cat))); | 641 | pal = QPalette(*(KOPrefs::instance()->categoryColor(cat)), *(KOPrefs::instance()->categoryColor(cat))); |
642 | } | 642 | } |
643 | } | 643 | } |
644 | 644 | ||
645 | } else { | 645 | } else { |
646 | pal = mStandardPalette ; | 646 | pal = mStandardPalette ; |
647 | } | 647 | } |
648 | item->setPalette( pal ); | 648 | item->setPalette( pal ); |
649 | item->setRecur( todo->recurrence()->doesRecur() ); | 649 | item->setRecur( todo->recurrence()->doesRecur() ); |
650 | item->setAlarm( todo->isAlarmEnabled() ); | 650 | item->setAlarm( todo->isAlarmEnabled() ); |
651 | item->setMoreInfo( todo->description().length() > 0 ); | 651 | item->setMoreInfo( todo->description().length() > 0 ); |
652 | mItemList->insertItem( item ); | 652 | mItemList->insertItem( item ); |
653 | mToolTip += text+"\n"; | 653 | mToolTip.append( text ); |
654 | } | 654 | } |
655 | void MonthViewCell::finishUpdateCell() | 655 | void MonthViewCell::finishUpdateCell() |
656 | { | 656 | { |
657 | #ifdef DESKTOP_VERSION | 657 | #ifdef DESKTOP_VERSION |
658 | if (mToolTip != "") | 658 | if (mToolTip.count() > 0 ) { |
659 | QToolTip::add(this,mToolTip,toolTipGroup(),""); | 659 | mToolTip.sort(); |
660 | QToolTip::add(this,mToolTip.join("\n"),toolTipGroup(),""); | ||
661 | } | ||
660 | #endif | 662 | #endif |
661 | mItemList->sort(); | 663 | mItemList->sort(); |
662 | //setMyPalette(); | 664 | //setMyPalette(); |
663 | setMyPalette(); | 665 | setMyPalette(); |
664 | QString text; | 666 | QString text; |
665 | bool smallDisplay = QApplication::desktop()->width() < 320 && KOPrefs::instance()->mMonthViewSatSunTog; | 667 | bool smallDisplay = QApplication::desktop()->width() < 320 && KOPrefs::instance()->mMonthViewSatSunTog; |
666 | if ( KOPrefs::instance()->mMonthViewWeek || KOGlobals::self()->calendarSystem()->day( mDate ) == 1 || (mDate.dayOfWeek() == 7 && !smallDisplay ) || KOPrefs::instance()->mMonthShowShort) { | 668 | if ( KOPrefs::instance()->mMonthViewWeek || KOGlobals::self()->calendarSystem()->day( mDate ) == 1 || (mDate.dayOfWeek() == 7 && !smallDisplay ) || KOPrefs::instance()->mMonthShowShort) { |
667 | text = KOGlobals::self()->calendarSystem()->monthName( mDate, true ) + " "; | 669 | text = KOGlobals::self()->calendarSystem()->monthName( mDate, true ) + " "; |
668 | mLabel->resize( mLabelBigSize ); | 670 | mLabel->resize( mLabelBigSize ); |
669 | text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) ); | 671 | text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) ); |
670 | } else { | 672 | } else { |
671 | mLabel->resize( mLabelSize ); | 673 | mLabel->resize( mLabelSize ); |
672 | text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) ); | 674 | text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) ); |
673 | } | 675 | } |
674 | 676 | ||
675 | mLabel->setText( text ); | 677 | mLabel->setText( text ); |
676 | resizeEvent( 0 ); | 678 | resizeEvent( 0 ); |
677 | } | 679 | } |
678 | void MonthViewCell::updateCell() | 680 | void MonthViewCell::updateCell() |
679 | { | 681 | { |
680 | //qDebug("MonthViewCell::updateCell() "); | 682 | //qDebug("MonthViewCell::updateCell() "); |
681 | if ( !mMonthView->isUpdatePossible() ) | 683 | if ( !mMonthView->isUpdatePossible() ) |
682 | return; | 684 | return; |
683 | startUpdateCell(); | 685 | startUpdateCell(); |
diff --git a/korganizer/komonthview.h b/korganizer/komonthview.h index fd8cbf2..a92421b 100644 --- a/korganizer/komonthview.h +++ b/korganizer/komonthview.h | |||
@@ -146,49 +146,49 @@ class MonthViewCell : public QWidget | |||
146 | void startUpdateCell(); | 146 | void startUpdateCell(); |
147 | void finishUpdateCell(); | 147 | void finishUpdateCell(); |
148 | void insertEvent(Event *); | 148 | void insertEvent(Event *); |
149 | void insertTodo(Todo *); | 149 | void insertTodo(Todo *); |
150 | 150 | ||
151 | void updateConfig( bool bigFont = false ); | 151 | void updateConfig( bool bigFont = false ); |
152 | 152 | ||
153 | void enableScrollBars( bool ); | 153 | void enableScrollBars( bool ); |
154 | 154 | ||
155 | Incidence *selectedIncidence(); | 155 | Incidence *selectedIncidence(); |
156 | QDate selectedIncidenceDate(); | 156 | QDate selectedIncidenceDate(); |
157 | 157 | ||
158 | void deselect(); | 158 | void deselect(); |
159 | void select(); | 159 | void select(); |
160 | 160 | ||
161 | #ifdef DESKTOP_VERSION | 161 | #ifdef DESKTOP_VERSION |
162 | static QToolTipGroup *toolTipGroup(); | 162 | static QToolTipGroup *toolTipGroup(); |
163 | #endif | 163 | #endif |
164 | signals: | 164 | signals: |
165 | void defaultAction( Incidence * ); | 165 | void defaultAction( Incidence * ); |
166 | void newEventSignal( QDateTime ); | 166 | void newEventSignal( QDateTime ); |
167 | void showDaySignal( QDate ); | 167 | void showDaySignal( QDate ); |
168 | 168 | ||
169 | protected: | 169 | protected: |
170 | QString mToolTip; | 170 | QStringList mToolTip; |
171 | void resizeEvent( QResizeEvent * ); | 171 | void resizeEvent( QResizeEvent * ); |
172 | 172 | ||
173 | 173 | ||
174 | public slots: | 174 | public slots: |
175 | void showDay(); | 175 | void showDay(); |
176 | 176 | ||
177 | protected slots: | 177 | protected slots: |
178 | void defaultAction( QListBoxItem * ); | 178 | void defaultAction( QListBoxItem * ); |
179 | void contextMenu( QListBoxItem * ); | 179 | void contextMenu( QListBoxItem * ); |
180 | void selection( QListBoxItem * ); | 180 | void selection( QListBoxItem * ); |
181 | void cellClicked( QListBoxItem * ); | 181 | void cellClicked( QListBoxItem * ); |
182 | void newEvent(); | 182 | void newEvent(); |
183 | 183 | ||
184 | private: | 184 | private: |
185 | KOMonthView *mMonthView; | 185 | KOMonthView *mMonthView; |
186 | 186 | ||
187 | QDate mDate; | 187 | QDate mDate; |
188 | bool mPrimary; | 188 | bool mPrimary; |
189 | bool mHoliday; | 189 | bool mHoliday; |
190 | QString mHolidayString; | 190 | QString mHolidayString; |
191 | 191 | ||
192 | //QLabel *mLabel; | 192 | //QLabel *mLabel; |
193 | QPushButton *mLabel; | 193 | QPushButton *mLabel; |
194 | QListBox *mItemList; | 194 | QListBox *mItemList; |