summaryrefslogtreecommitdiffabout
path: root/korganizer
Unidiff
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/komonthview.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp
index 0ef5ae4..00b1e92 100644
--- a/korganizer/komonthview.cpp
+++ b/korganizer/komonthview.cpp
@@ -618,384 +618,385 @@ void MonthViewCell::updateConfig()
618 setFont( KOPrefs::instance()->mMonthViewFont ); 618 setFont( KOPrefs::instance()->mMonthViewFont );
619 619
620 QFontMetrics fm( font() ); 620 QFontMetrics fm( font() );
621 mLabelSize = fm.size( 0, "30" ) + QSize( 4, 2 ); 621 mLabelSize = fm.size( 0, "30" ) + QSize( 4, 2 );
622 mLabelBigSize = fm.size( 0, "Mag 30" ) + QSize( 2, 2 ); 622 mLabelBigSize = fm.size( 0, "Mag 30" ) + QSize( 2, 2 );
623 mHolidayPalette = mStandardPalette; 623 mHolidayPalette = mStandardPalette;
624 mPrimaryPalette = mStandardPalette; 624 mPrimaryPalette = mStandardPalette;
625 mNonPrimaryPalette = mStandardPalette; 625 mNonPrimaryPalette = mStandardPalette;
626 if ( KOPrefs::instance()->mMonthViewUsesDayColors ) { 626 if ( KOPrefs::instance()->mMonthViewUsesDayColors ) {
627 mHolidayPalette.setColor(QColorGroup::Base, KOPrefs::instance()->mMonthViewHolidayColor ); 627 mHolidayPalette.setColor(QColorGroup::Base, KOPrefs::instance()->mMonthViewHolidayColor );
628 mHolidayPalette.setColor(QColorGroup::Background, KOPrefs::instance()->mMonthViewHolidayColor ); 628 mHolidayPalette.setColor(QColorGroup::Background, KOPrefs::instance()->mMonthViewHolidayColor );
629 mHolidayPalette.setColor(QColorGroup::Foreground, KOPrefs::instance()->mMonthViewHolidayColor.dark()); 629 mHolidayPalette.setColor(QColorGroup::Foreground, KOPrefs::instance()->mMonthViewHolidayColor.dark());
630 mPrimaryPalette.setColor(QColorGroup::Foreground,KOPrefs::instance()->mMonthViewOddColor.dark()); 630 mPrimaryPalette.setColor(QColorGroup::Foreground,KOPrefs::instance()->mMonthViewOddColor.dark());
631 mPrimaryPalette.setColor(QColorGroup::Base,KOPrefs::instance()->mMonthViewOddColor); 631 mPrimaryPalette.setColor(QColorGroup::Base,KOPrefs::instance()->mMonthViewOddColor);
632 mPrimaryPalette.setColor(QColorGroup::Background,KOPrefs::instance()->mMonthViewOddColor); 632 mPrimaryPalette.setColor(QColorGroup::Background,KOPrefs::instance()->mMonthViewOddColor);
633 mNonPrimaryPalette.setColor(QColorGroup::Foreground,KOPrefs::instance()->mMonthViewEvenColor.dark()); 633 mNonPrimaryPalette.setColor(QColorGroup::Foreground,KOPrefs::instance()->mMonthViewEvenColor.dark());
634 mNonPrimaryPalette.setColor(QColorGroup::Base,KOPrefs::instance()->mMonthViewEvenColor); 634 mNonPrimaryPalette.setColor(QColorGroup::Base,KOPrefs::instance()->mMonthViewEvenColor);
635 mNonPrimaryPalette.setColor(QColorGroup::Background,KOPrefs::instance()->mMonthViewEvenColor); 635 mNonPrimaryPalette.setColor(QColorGroup::Background,KOPrefs::instance()->mMonthViewEvenColor);
636 } 636 }
637 //updateCell(); 637 //updateCell();
638} 638}
639 639
640void MonthViewCell::enableScrollBars( bool enabled ) 640void MonthViewCell::enableScrollBars( bool enabled )
641{ 641{
642 if ( enabled ) { 642 if ( enabled ) {
643 mItemList->setVScrollBarMode(QScrollView::Auto); 643 mItemList->setVScrollBarMode(QScrollView::Auto);
644 mItemList->setHScrollBarMode(QScrollView::Auto); 644 mItemList->setHScrollBarMode(QScrollView::Auto);
645 } else { 645 } else {
646 mItemList->setVScrollBarMode(QScrollView::AlwaysOff); 646 mItemList->setVScrollBarMode(QScrollView::AlwaysOff);
647 mItemList->setHScrollBarMode(QScrollView::AlwaysOff); 647 mItemList->setHScrollBarMode(QScrollView::AlwaysOff);
648 } 648 }
649} 649}
650 650
651Incidence *MonthViewCell::selectedIncidence() 651Incidence *MonthViewCell::selectedIncidence()
652{ 652{
653 int index = mItemList->currentItem(); 653 int index = mItemList->currentItem();
654 if ( index < 0 ) return 0; 654 if ( index < 0 ) return 0;
655 655
656 MonthViewItem *item = 656 MonthViewItem *item =
657 static_cast<MonthViewItem *>( mItemList->item( index ) ); 657 static_cast<MonthViewItem *>( mItemList->item( index ) );
658 658
659 if ( !item ) return 0; 659 if ( !item ) return 0;
660 660
661 return item->incidence(); 661 return item->incidence();
662} 662}
663 663
664QDate MonthViewCell::selectedIncidenceDate() 664QDate MonthViewCell::selectedIncidenceDate()
665{ 665{
666 QDate qd; 666 QDate qd;
667 int index = mItemList->currentItem(); 667 int index = mItemList->currentItem();
668 if ( index < 0 ) return qd; 668 if ( index < 0 ) return qd;
669 669
670 MonthViewItem *item = 670 MonthViewItem *item =
671 static_cast<MonthViewItem *>( mItemList->item( index ) ); 671 static_cast<MonthViewItem *>( mItemList->item( index ) );
672 672
673 if ( !item ) return qd; 673 if ( !item ) return qd;
674 674
675 return item->incidenceDate(); 675 return item->incidenceDate();
676} 676}
677 677
678void MonthViewCell::deselect() 678void MonthViewCell::deselect()
679{ 679{
680 mItemList->clearSelection(); 680 mItemList->clearSelection();
681 enableScrollBars( false ); 681 enableScrollBars( false );
682 // updateCell(); 682 // updateCell();
683} 683}
684void MonthViewCell::select() 684void MonthViewCell::select()
685{ 685{
686 ;// updateCell(); 686 ;// updateCell();
687} 687}
688 688
689void MonthViewCell::resizeEvent ( QResizeEvent * ) 689void MonthViewCell::resizeEvent ( QResizeEvent * )
690{ 690{
691 if ( !mMonthView->isUpdatePossible() ) 691 if ( !mMonthView->isUpdatePossible() )
692 return; 692 return;
693 693
694 int size = height() - mLabel->height() - 2; 694 int size = height() - mLabel->height() - 2;
695 if ( size > 0 ) 695 if ( size > 0 )
696 mItemList->verticalScrollBar()->setMaximumHeight( size ); 696 mItemList->verticalScrollBar()->setMaximumHeight( size );
697 size = width() - mLabel->width() -2; 697 size = width() - mLabel->width() -2;
698 if ( size > 0 ) 698 if ( size > 0 )
699 mItemList->horizontalScrollBar()->setMaximumWidth( size ); 699 mItemList->horizontalScrollBar()->setMaximumWidth( size );
700 mLabel->move( width()-mItemList->lineWidth() - mLabel->width(), height()-mItemList->lineWidth() - mLabel->height() ); 700 mLabel->move( width()-mItemList->lineWidth() - mLabel->width(), height()-mItemList->lineWidth() - mLabel->height() );
701 //mLabel->setMaximumWidth( width() - mItemList->lineWidth()*2); 701 //mLabel->setMaximumWidth( width() - mItemList->lineWidth()*2);
702} 702}
703 703
704void MonthViewCell::defaultAction( QListBoxItem *item ) 704void MonthViewCell::defaultAction( QListBoxItem *item )
705{ 705{
706 if ( !item ) return; 706 if ( !item ) return;
707 707
708 MonthViewItem *eventItem = static_cast<MonthViewItem *>( item ); 708 MonthViewItem *eventItem = static_cast<MonthViewItem *>( item );
709 Incidence *incidence = eventItem->incidence(); 709 Incidence *incidence = eventItem->incidence();
710 if ( incidence ) mMonthView->defaultAction( incidence ); 710 if ( incidence ) mMonthView->defaultAction( incidence );
711} 711}
712void MonthViewCell::showDay() 712void MonthViewCell::showDay()
713{ 713{
714 emit showDaySignal( date() ); 714 emit showDaySignal( date() );
715} 715}
716void MonthViewCell::newEvent() 716void MonthViewCell::newEvent()
717{ 717{
718 QDateTime dt( date(), QTime( KOPrefs::instance()->mStartTime, 0 ) ); 718 QDateTime dt( date(), QTime( KOPrefs::instance()->mStartTime, 0 ) );
719 emit newEventSignal( dt ); 719 emit newEventSignal( dt );
720} 720}
721void MonthViewCell::cellClicked( QListBoxItem *item ) 721void MonthViewCell::cellClicked( QListBoxItem *item )
722{ 722{
723 static QListBoxItem * lastClicked = 0; 723 static QListBoxItem * lastClicked = 0;
724 if ( item == 0 ) { 724 if ( item == 0 ) {
725 QDateTime dt( date(), QTime( KOPrefs::instance()->mStartTime, 0 ) ); 725 QDateTime dt( date(), QTime( KOPrefs::instance()->mStartTime, 0 ) );
726 emit newEventSignal( dt ); 726 emit newEventSignal( dt );
727 return; 727 return;
728 } 728 }
729 /* 729 /*
730 if ( lastClicked ) 730 if ( lastClicked )
731 if ( ! item ) { 731 if ( ! item ) {
732 if ( lastClicked->listBox() != item->listBox() ) 732 if ( lastClicked->listBox() != item->listBox() )
733 lastClicked->listBox()->clearSelection(); 733 lastClicked->listBox()->clearSelection();
734 } 734 }
735 */ 735 */
736 736
737 mMonthView->setSelectedCell( this ); 737 mMonthView->setSelectedCell( this );
738 if( KOPrefs::instance()->mEnableMonthScroll || KOPrefs::instance()->mMonthViewWeek ) enableScrollBars( true ); 738 if( KOPrefs::instance()->mEnableMonthScroll || KOPrefs::instance()->mMonthViewWeek ) enableScrollBars( true );
739 select(); 739 select();
740} 740}
741 741
742void MonthViewCell::contextMenu( QListBoxItem *item ) 742void MonthViewCell::contextMenu( QListBoxItem *item )
743{ 743{
744 if ( !item ) return; 744 if ( !item ) return;
745 745
746 MonthViewItem *eventItem = static_cast<MonthViewItem *>( item ); 746 MonthViewItem *eventItem = static_cast<MonthViewItem *>( item );
747 Incidence *incidence = eventItem->incidence(); 747 Incidence *incidence = eventItem->incidence();
748 if ( incidence ) mMonthView->showContextMenu( incidence ); 748 if ( incidence ) mMonthView->showContextMenu( incidence );
749} 749}
750 750
751void MonthViewCell::selection( QListBoxItem *item ) 751void MonthViewCell::selection( QListBoxItem *item )
752{ 752{
753 if ( !item ) return; 753 if ( !item ) return;
754 754
755 mMonthView->setSelectedCell( this ); 755 mMonthView->setSelectedCell( this );
756} 756}
757 757
758 758
759// ******************************************************************************* 759// *******************************************************************************
760// ******************************************************************************* 760// *******************************************************************************
761// ******************************************************************************* 761// *******************************************************************************
762 762
763 763
764KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name) 764KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name)
765 : KOEventView( calendar, parent, name ), 765 : KOEventView( calendar, parent, name ),
766 mDaysPerWeek( 7 ), mNumWeeks( 6 ), mNumCells( mDaysPerWeek * mNumWeeks ), 766 mDaysPerWeek( 7 ), mNumWeeks( 6 ), mNumCells( mDaysPerWeek * mNumWeeks ),
767 mShortDayLabels( false ), mWidthLongDayLabel( 0 ), mSelectedCell( 0 ) 767 mShortDayLabels( false ), mWidthLongDayLabel( 0 ), mSelectedCell( 0 )
768{ 768{
769 mWeekStartsMonday = KGlobal::locale()->weekStartsMonday(); 769 mWeekStartsMonday = KGlobal::locale()->weekStartsMonday();
770 mShowWeekView = KOPrefs::instance()->mMonthViewWeek; 770 mShowWeekView = KOPrefs::instance()->mMonthViewWeek;
771 if ( mShowWeekView ) 771 if ( mShowWeekView )
772 mWeekStartsMonday = true; 772 mWeekStartsMonday = true;
773 updatePossible = false; 773 updatePossible = false;
774 mCells.setAutoDelete( true ); 774 mCells.setAutoDelete( true );
775 mShowSatSunComp = KOPrefs::instance()->mMonthViewSatSunTog ; 775 mShowSatSunComp = KOPrefs::instance()->mMonthViewSatSunTog ;
776 // mDayLayout = new QGridLayout( this ); 776 // mDayLayout = new QGridLayout( this );
777 // create the day of the week labels (Sun, Mon, etc) and add them to 777 // create the day of the week labels (Sun, Mon, etc) and add them to
778 // the layout. 778 // the layout.
779 mDayLabels.resize( mDaysPerWeek ); 779 mDayLabels.resize( mDaysPerWeek );
780 QFont bfont = font(); 780 QFont bfont = font();
781 if ( QApplication::desktop()->width() < 650 ) { 781 if ( QApplication::desktop()->width() < 650 ) {
782 bfont.setPointSize( bfont.pointSize() - 2 ); 782 bfont.setPointSize( bfont.pointSize() - 2 );
783 } 783 }
784 bfont.setBold( true ); 784 bfont.setBold( true );
785 int i; 785 int i;
786 786
787 for( i = 0; i < mDaysPerWeek; i++ ) { 787 for( i = 0; i < mDaysPerWeek; i++ ) {
788 QLabel *label = new QLabel( this ); 788 QLabel *label = new QLabel( this );
789 label->setFont(bfont); 789 label->setFont(bfont);
790 label->setFrameStyle(QFrame::Panel|QFrame::Raised); 790 label->setFrameStyle(QFrame::Panel|QFrame::Raised);
791 label->setLineWidth(1); 791 label->setLineWidth(1);
792 label->setAlignment(AlignCenter); 792 label->setAlignment(AlignCenter);
793 mDayLabels.insert( i, label ); 793 mDayLabels.insert( i, label );
794 } 794 }
795 795
796 bfont.setBold( false ); 796 bfont.setBold( false );
797 mWeekLabels.resize( mNumWeeks+1 ); 797 mWeekLabels.resize( mNumWeeks+1 );
798 for( i = 0; i < mNumWeeks+1; i++ ) { 798 for( i = 0; i < mNumWeeks+1; i++ ) {
799 KOWeekButton *label = new KOWeekButton( this ); 799 KOWeekButton *label = new KOWeekButton( this );
800 label->setFont(bfont); 800 label->setFont(bfont);
801 connect( label, SIGNAL( selectWeekNum ( int )),this, SIGNAL( selectWeekNum ( int )) ); 801 connect( label, SIGNAL( selectWeekNum ( int )),this, SIGNAL( selectWeekNum ( int )) );
802 label->setFlat(true); 802 label->setFlat(true);
803 QWhatsThis::add(label,i18n("Click on the week number to\nshow week in agenda view")); 803 QWhatsThis::add(label,i18n("Click on the week number to\nshow week in agenda view"));
804 //label->setFrameStyle(QFrame::Panel|QFrame::Raised); 804 //label->setFrameStyle(QFrame::Panel|QFrame::Raised);
805 //label->setLineWidth(1); 805 //label->setLineWidth(1);
806 //label->setAlignment(AlignCenter); 806 //label->setAlignment(AlignCenter);
807 mWeekLabels.insert( i, label ); 807 mWeekLabels.insert( i, label );
808 } 808 }
809 mWeekLabels[mNumWeeks]->setText( i18n("W")); 809 mWeekLabels[mNumWeeks]->setText( i18n("W"));
810 QWhatsThis::add(mWeekLabels[mNumWeeks],i18n("Click on this to\nswitch to week mode view"));
810 int row, col; 811 int row, col;
811 mCells.resize( mNumCells ); 812 mCells.resize( mNumCells );
812 for( row = 0; row < mNumWeeks; ++row ) { 813 for( row = 0; row < mNumWeeks; ++row ) {
813 for( col = 0; col < mDaysPerWeek; ++col ) { 814 for( col = 0; col < mDaysPerWeek; ++col ) {
814 MonthViewCell *cell = new MonthViewCell( this ); 815 MonthViewCell *cell = new MonthViewCell( this );
815 mCells.insert( row * mDaysPerWeek + col, cell ); 816 mCells.insert( row * mDaysPerWeek + col, cell );
816 817
817 connect( cell, SIGNAL( defaultAction( Incidence * ) ), 818 connect( cell, SIGNAL( defaultAction( Incidence * ) ),
818 SLOT( defaultAction( Incidence * ) ) ); 819 SLOT( defaultAction( Incidence * ) ) );
819 connect( cell, SIGNAL( newEventSignal( QDateTime ) ), 820 connect( cell, SIGNAL( newEventSignal( QDateTime ) ),
820 SIGNAL( newEventSignal( QDateTime ) ) ); 821 SIGNAL( newEventSignal( QDateTime ) ) );
821 connect( cell, SIGNAL( showDaySignal( QDate ) ), 822 connect( cell, SIGNAL( showDaySignal( QDate ) ),
822 SIGNAL( showDaySignal( QDate ) ) ); 823 SIGNAL( showDaySignal( QDate ) ) );
823 } 824 }
824 } 825 }
825 826
826 connect( mWeekLabels[mNumWeeks], SIGNAL( clicked() ), 827 connect( mWeekLabels[mNumWeeks], SIGNAL( clicked() ),
827 SLOT( switchView() ) ); 828 SLOT( switchView() ) );
828 mContextMenu = eventPopup(); 829 mContextMenu = eventPopup();
829 // updateConfig(); //useless here 830 // updateConfig(); //useless here
830 831
831 emit incidenceSelected( 0 ); 832 emit incidenceSelected( 0 );
832} 833}
833 834
834KOMonthView::~KOMonthView() 835KOMonthView::~KOMonthView()
835{ 836{
836 delete mContextMenu; 837 delete mContextMenu;
837} 838}
838void KOMonthView::switchView() 839void KOMonthView::switchView()
839{ 840{
840 if ( selectedCell( ) ) 841 if ( selectedCell( ) )
841 selectedCell()->deselect(); 842 selectedCell()->deselect();
842 mShowWeekView = !mShowWeekView; 843 mShowWeekView = !mShowWeekView;
843 KOPrefs::instance()->mMonthViewWeek = mShowWeekView; 844 KOPrefs::instance()->mMonthViewWeek = mShowWeekView;
844 emit showNavigator( !mShowWeekView ); 845 emit showNavigator( !mShowWeekView );
845 computeLayout(); 846 computeLayout();
846 updateConfig(); 847 updateConfig();
847} 848}
848 849
849int KOMonthView::maxDatesHint() 850int KOMonthView::maxDatesHint()
850{ 851{
851 return mNumCells; 852 return mNumCells;
852} 853}
853 854
854int KOMonthView::currentDateCount() 855int KOMonthView::currentDateCount()
855{ 856{
856 return mNumCells; 857 return mNumCells;
857} 858}
858 859
859QPtrList<Incidence> KOMonthView::selectedIncidences() 860QPtrList<Incidence> KOMonthView::selectedIncidences()
860{ 861{
861 QPtrList<Incidence> selected; 862 QPtrList<Incidence> selected;
862 863
863 if ( mSelectedCell ) { 864 if ( mSelectedCell ) {
864 Incidence *incidence = mSelectedCell->selectedIncidence(); 865 Incidence *incidence = mSelectedCell->selectedIncidence();
865 if ( incidence ) selected.append( incidence ); 866 if ( incidence ) selected.append( incidence );
866 } 867 }
867 868
868 return selected; 869 return selected;
869} 870}
870 871
871DateList KOMonthView::selectedDates() 872DateList KOMonthView::selectedDates()
872{ 873{
873 DateList selected; 874 DateList selected;
874 875
875 if ( mSelectedCell ) { 876 if ( mSelectedCell ) {
876 QDate qd = mSelectedCell->selectedIncidenceDate(); 877 QDate qd = mSelectedCell->selectedIncidenceDate();
877 if ( qd.isValid() ) selected.append( qd ); 878 if ( qd.isValid() ) selected.append( qd );
878 } 879 }
879 880
880 return selected; 881 return selected;
881} 882}
882 883
883void KOMonthView::printPreview(CalPrinter *calPrinter, const QDate &fd, 884void KOMonthView::printPreview(CalPrinter *calPrinter, const QDate &fd,
884 const QDate &td) 885 const QDate &td)
885{ 886{
886#ifndef KORG_NOPRINTER 887#ifndef KORG_NOPRINTER
887 calPrinter->preview(CalPrinter::Month, fd, td); 888 calPrinter->preview(CalPrinter::Month, fd, td);
888#endif 889#endif
889} 890}
890 891
891void KOMonthView::updateConfig() 892void KOMonthView::updateConfig()
892{ 893{
893 894
894 mWeekStartsMonday = KGlobal::locale()->weekStartsMonday(); 895 mWeekStartsMonday = KGlobal::locale()->weekStartsMonday();
895 896
896 if ( mShowWeekView ) 897 if ( mShowWeekView )
897 mWeekStartsMonday = true; 898 mWeekStartsMonday = true;
898 QFontMetrics fontmetric(mDayLabels[0]->font()); 899 QFontMetrics fontmetric(mDayLabels[0]->font());
899 mWidthLongDayLabel = 0; 900 mWidthLongDayLabel = 0;
900 901
901 for (int i = 0; i < 7; i++) { 902 for (int i = 0; i < 7; i++) {
902 int width = fontmetric.width(KOGlobals::self()->calendarSystem()->weekDayName(i+1)); 903 int width = fontmetric.width(KOGlobals::self()->calendarSystem()->weekDayName(i+1));
903 if ( width > mWidthLongDayLabel ) mWidthLongDayLabel = width; 904 if ( width > mWidthLongDayLabel ) mWidthLongDayLabel = width;
904 } 905 }
905 bool temp = mShowSatSunComp ; 906 bool temp = mShowSatSunComp ;
906 mShowSatSunComp = KOPrefs::instance()->mMonthViewSatSunTog ; 907 mShowSatSunComp = KOPrefs::instance()->mMonthViewSatSunTog ;
907 if ( temp != KOPrefs::instance()->mMonthViewSatSunTog ) 908 if ( temp != KOPrefs::instance()->mMonthViewSatSunTog )
908 computeLayout(); 909 computeLayout();
909 updateDayLabels(); 910 updateDayLabels();
910 //qDebug("KOMonthView::updateConfig() %d %d %d ",height(), mDayLabels[0]->sizeHint().height() ,mNumWeeks); 911 //qDebug("KOMonthView::updateConfig() %d %d %d ",height(), mDayLabels[0]->sizeHint().height() ,mNumWeeks);
911 int cellHeight = (height() - mDayLabels[0]->sizeHint().height()) /mNumWeeks; 912 int cellHeight = (height() - mDayLabels[0]->sizeHint().height()) /mNumWeeks;
912 //resizeEvent( 0 ); 913 //resizeEvent( 0 );
913 for (uint i = 0; i < mCells.count(); ++i) { 914 for (uint i = 0; i < mCells.count(); ++i) {
914 mCells[i]->updateConfig(); 915 mCells[i]->updateConfig();
915 } 916 }
916#ifdef DESKTOP_VERSION 917#ifdef DESKTOP_VERSION
917 MonthViewCell::toolTipGroup()->setEnabled(KOPrefs::instance()->mEnableToolTips); 918 MonthViewCell::toolTipGroup()->setEnabled(KOPrefs::instance()->mEnableToolTips);
918#endif 919#endif
919 updateView(); 920 updateView();
920} 921}
921 922
922void KOMonthView::updateDayLabels() 923void KOMonthView::updateDayLabels()
923{ 924{
924 925
925 for (int i = 0; i < 7; i++) { 926 for (int i = 0; i < 7; i++) {
926 if (mWeekStartsMonday) { 927 if (mWeekStartsMonday) {
927 bool show = mShortDayLabels; 928 bool show = mShortDayLabels;
928 if ( i > 4 && mShowSatSunComp && mWidthLongDayLabel > mDayLabels[i]->width() ) 929 if ( i > 4 && mShowSatSunComp && mWidthLongDayLabel > mDayLabels[i]->width() )
929 show = true; 930 show = true;
930 mDayLabels[i]->setText(KOGlobals::self()->calendarSystem()->weekDayName(i+1,show)); 931 mDayLabels[i]->setText(KOGlobals::self()->calendarSystem()->weekDayName(i+1,show));
931 } else { 932 } else {
932 if (i==0) mDayLabels[i]->setText(KOGlobals::self()->calendarSystem()->weekDayName(7,mShortDayLabels)); 933 if (i==0) mDayLabels[i]->setText(KOGlobals::self()->calendarSystem()->weekDayName(7,mShortDayLabels));
933 else mDayLabels[i]->setText(KOGlobals::self()->calendarSystem()->weekDayName(i,mShortDayLabels)); 934 else mDayLabels[i]->setText(KOGlobals::self()->calendarSystem()->weekDayName(i,mShortDayLabels));
934 935
935 } 936 }
936 } 937 }
937} 938}
938 939
939void KOMonthView::showDates(const QDate &start, const QDate &) 940void KOMonthView::showDates(const QDate &start, const QDate &)
940{ 941{
941 // kdDebug() << "KOMonthView::showDates(): " << start.toString() << endl; 942 // kdDebug() << "KOMonthView::showDates(): " << start.toString() << endl;
942 943
943 944
944 mStartDate = start; 945 mStartDate = start;
945 946
946 int startWeekDay = mWeekStartsMonday ? 1 : 7; 947 int startWeekDay = mWeekStartsMonday ? 1 : 7;
947 948
948 while( KOGlobals::self()->calendarSystem()->dayOfWeek(mStartDate) != startWeekDay ) { 949 while( KOGlobals::self()->calendarSystem()->dayOfWeek(mStartDate) != startWeekDay ) {
949 mStartDate = mStartDate.addDays( -1 ); 950 mStartDate = mStartDate.addDays( -1 );
950 } 951 }
951 952
952 bool primary = false; 953 bool primary = false;
953 uint i; 954 uint i;
954 for( i = 0; i < mCells.size(); ++i ) { 955 for( i = 0; i < mCells.size(); ++i ) {
955 QDate date = mStartDate.addDays( i ); 956 QDate date = mStartDate.addDays( i );
956 mCells[i]->setDate( date ); 957 mCells[i]->setDate( date );
957 958
958#ifndef KORG_NOPLUGINS 959#ifndef KORG_NOPLUGINS
959 // add holiday, if present 960 // add holiday, if present
960 QString hstring(KOCore::self()->holiday(date)); 961 QString hstring(KOCore::self()->holiday(date));
961 mCells[i]->setHoliday( hstring ); 962 mCells[i]->setHoliday( hstring );
962#endif 963#endif
963 964
964 } 965 }
965 QDate date = mStartDate.addDays( mWeekStartsMonday ? 3 : 4 ); 966 QDate date = mStartDate.addDays( mWeekStartsMonday ? 3 : 4 );
966 for( i = 0; i < 6; ++i ) { 967 for( i = 0; i < 6; ++i ) {
967 int wno; 968 int wno;
968 // remember, according to ISO 8601, the first week of the year is the 969 // remember, according to ISO 8601, the first week of the year is the
969 // first week that contains a thursday. Thus we must subtract off 4, 970 // first week that contains a thursday. Thus we must subtract off 4,
970 // not just 1. 971 // not just 1.
971 int dayOfYear = date.dayOfYear(); 972 int dayOfYear = date.dayOfYear();
972 if (dayOfYear % 7 != 0) 973 if (dayOfYear % 7 != 0)
973 wno = dayOfYear / 7 + 1; 974 wno = dayOfYear / 7 + 1;
974 else 975 else
975 wno =dayOfYear / 7; 976 wno =dayOfYear / 7;
976 mWeekLabels[i]->setWeekNum( wno ); 977 mWeekLabels[i]->setWeekNum( wno );
977 date = date.addDays( 7 ); 978 date = date.addDays( 7 );
978 } 979 }
979 updateView(); 980 updateView();
980} 981}
981 982
982void KOMonthView::showEvents(QPtrList<Event>) 983void KOMonthView::showEvents(QPtrList<Event>)
983{ 984{
984 qDebug("KOMonthView::selectEvents is not implemented yet. "); 985 qDebug("KOMonthView::selectEvents is not implemented yet. ");
985} 986}
986 987
987void KOMonthView::changeEventDisplay(Event *, int) 988void KOMonthView::changeEventDisplay(Event *, int)
988{ 989{
989 // this should be re-written to be much more efficient, but this 990 // this should be re-written to be much more efficient, but this
990 // quick-and-dirty-hack gets the job done for right now. 991 // quick-and-dirty-hack gets the job done for right now.
991 updateView(); 992 updateView();
992} 993}
993 994
994void KOMonthView::updateView() 995void KOMonthView::updateView()
995{ 996{
996 997
997 if ( !updatePossible ) 998 if ( !updatePossible )
998 return; 999 return;
999 //QTime ti; 1000 //QTime ti;
1000 //ti.start(); 1001 //ti.start();
1001#if 1 1002#if 1