author | zautrix <zautrix> | 2005-01-31 22:41:05 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-01-31 22:41:05 (UTC) |
commit | 336678d691a8c3346c92a4e561ac7938ed532003 (patch) (unidiff) | |
tree | d4c12ab5536003910727b4478f70372324b7c00d /korganizer | |
parent | 949ead6797c44f632a4addd2e6aae1fb88f37816 (diff) | |
download | kdepimpi-336678d691a8c3346c92a4e561ac7938ed532003.zip kdepimpi-336678d691a8c3346c92a4e561ac7938ed532003.tar.gz kdepimpi-336678d691a8c3346c92a4e561ac7938ed532003.tar.bz2 |
fixxx
-rw-r--r-- | korganizer/koagendaview.cpp | 44 | ||||
-rw-r--r-- | korganizer/koagendaview.h | 3 | ||||
-rw-r--r-- | korganizer/koviewmanager.cpp | 9 |
3 files changed, 47 insertions, 9 deletions
diff --git a/korganizer/koagendaview.cpp b/korganizer/koagendaview.cpp index 8e9add3..d43712f 100644 --- a/korganizer/koagendaview.cpp +++ b/korganizer/koagendaview.cpp | |||
@@ -604,16 +604,32 @@ void KOAgendaView::resizeEvent( QResizeEvent* e ) | |||
604 | //qDebug("mAgenda->resize+++++++++++++++ "); | 604 | //qDebug("mAgenda->resize+++++++++++++++ "); |
605 | updateConfig(); | 605 | updateConfig(); |
606 | //qDebug("KOAgendaView::Updating now possible "); | 606 | //qDebug("KOAgendaView::Updating now possible "); |
607 | } else | 607 | } else |
608 | createDayLabels(); | 608 | createDayLabels(); |
609 | //qDebug("resizeEvent end "); | 609 | //qDebug("resizeEvent end "); |
610 | 610 | ||
611 | } | 611 | } |
612 | void KOAgendaView::slotDaylabelClicked() | ||
613 | { | ||
614 | QString cap = ((QPushButton*) sender() )->caption(); | ||
615 | |||
616 | QDate firstDate = mSelectedDates.first(); | ||
617 | if ( cap == "0" ) | ||
618 | emit showDateView( 6, firstDate ); | ||
619 | else if ( cap != "last" ) { | ||
620 | if ( mSelectedDates.count() == 1) | ||
621 | emit showDateView( 9, firstDate.addDays( cap.toInt()-1 ) ); | ||
622 | else | ||
623 | emit showDateView( 3, firstDate.addDays( cap.toInt()-1 ) ); | ||
624 | } | ||
625 | else | ||
626 | showDateView( 10, firstDate.addDays(1 ) ); | ||
627 | } | ||
612 | void KOAgendaView::createDayLabels() | 628 | void KOAgendaView::createDayLabels() |
613 | { | 629 | { |
614 | 630 | ||
615 | if ( mBlockUpdating || globalFlagBlockLabel == 1) { | 631 | if ( mBlockUpdating || globalFlagBlockLabel == 1) { |
616 | // qDebug(" KOAgendaView::createDayLabels() blocked "); | 632 | // qDebug(" KOAgendaView::createDayLabels() blocked "); |
617 | return; | 633 | return; |
618 | 634 | ||
619 | } | 635 | } |
@@ -665,48 +681,58 @@ void KOAgendaView::createDayLabels() | |||
665 | QFontMetrics tempF( dlf ); | 681 | QFontMetrics tempF( dlf ); |
666 | newHight = tempF.height(); | 682 | newHight = tempF.height(); |
667 | mDayLabels->setFont( dlf ); | 683 | mDayLabels->setFont( dlf ); |
668 | // mLayoutDayLabels = new QHBoxLayout(mDayLabels);; | 684 | // mLayoutDayLabels = new QHBoxLayout(mDayLabels);; |
669 | // mLayoutDayLabels->addSpacing(mTimeLabels->width()); | 685 | // mLayoutDayLabels->addSpacing(mTimeLabels->width()); |
670 | //mLayoutDayLabels->addSpacing( 2 ); | 686 | //mLayoutDayLabels->addSpacing( 2 ); |
671 | // QFont lFont = dlf; | 687 | // QFont lFont = dlf; |
672 | bool appendLabels = false; | 688 | bool appendLabels = false; |
673 | QLabel *dayLabel; | 689 | QPushButton *dayLabel; |
674 | dayLabel = mDayLabelsList.first(); | 690 | dayLabel = mDayLabelsList.first(); |
675 | if ( !dayLabel ) { | 691 | if ( !dayLabel ) { |
676 | appendLabels = true; | 692 | appendLabels = true; |
677 | dayLabel = new QLabel(mDayLabels); | 693 | dayLabel = new QPushButton(mDayLabels); |
694 | dayLabel->setFlat( true ); | ||
695 | connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) ); | ||
696 | dayLabel->setFocusPolicy(NoFocus); | ||
678 | mDayLabelsList.append( dayLabel ); | 697 | mDayLabelsList.append( dayLabel ); |
679 | mLayoutDayLabels->addWidget(dayLabel); | 698 | mLayoutDayLabels->addWidget(dayLabel); |
680 | } | 699 | } |
681 | dayLabel->setFixedWidth( mTimeLabels->width()+2 ); | 700 | dayLabel->setFixedWidth( mTimeLabels->width()+2 ); |
682 | dayLabel->setFont( dlf ); | 701 | dayLabel->setFont( dlf ); |
683 | dayLabel->setAlignment(QLabel::AlignHCenter); | 702 | dayLabel->setCaption("0"); |
703 | //dayLabel->setAlignment(QLabel::AlignHCenter); | ||
684 | dayLabel->setText( KOGlobals::self()->calendarSystem()->monthName( mSelectedDates.first(), true ) ); | 704 | dayLabel->setText( KOGlobals::self()->calendarSystem()->monthName( mSelectedDates.first(), true ) ); |
685 | dayLabel->show(); | 705 | dayLabel->show(); |
686 | DateList::ConstIterator dit; | 706 | DateList::ConstIterator dit; |
687 | bool oneday = (mSelectedDates.first() == mSelectedDates.last() ); | 707 | bool oneday = (mSelectedDates.first() == mSelectedDates.last() ); |
708 | int counter = 0; | ||
688 | for( dit = mSelectedDates.begin(); dit != mSelectedDates.end(); ++dit ) { | 709 | for( dit = mSelectedDates.begin(); dit != mSelectedDates.end(); ++dit ) { |
710 | ++counter; | ||
689 | QDate date = *dit; | 711 | QDate date = *dit; |
690 | // QBoxLayout *dayLayout = new QVBoxLayout(mLayoutDayLabels); | 712 | // QBoxLayout *dayLayout = new QVBoxLayout(mLayoutDayLabels); |
691 | if ( ! appendLabels ) { | 713 | if ( ! appendLabels ) { |
692 | dayLabel = mDayLabelsList.next(); | 714 | dayLabel = mDayLabelsList.next(); |
693 | if ( !dayLabel ) | 715 | if ( !dayLabel ) |
694 | appendLabels = true; | 716 | appendLabels = true; |
695 | } | 717 | } |
696 | if ( appendLabels ) { | 718 | if ( appendLabels ) { |
697 | dayLabel = new QLabel(mDayLabels); | 719 | dayLabel = new QPushButton(mDayLabels); |
720 | dayLabel->setFlat( true ); | ||
721 | connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) ); | ||
722 | dayLabel->setFocusPolicy(NoFocus); | ||
698 | mDayLabelsList.append( dayLabel ); | 723 | mDayLabelsList.append( dayLabel ); |
699 | mLayoutDayLabels->addWidget(dayLabel); | 724 | mLayoutDayLabels->addWidget(dayLabel); |
700 | } | 725 | } |
701 | dayLabel->setMinimumWidth( 1 ); | 726 | dayLabel->setMinimumWidth( 1 ); |
702 | dayLabel->setMaximumWidth( 2048 ); | 727 | dayLabel->setMaximumWidth( 2048 ); |
703 | dayLabel->setFont( dlf ); | 728 | dayLabel->setFont( dlf ); |
704 | dayLabel->show(); | 729 | dayLabel->show(); |
730 | dayLabel->setCaption(QString::number( counter )); | ||
705 | QString str; | 731 | QString str; |
706 | int dW = KOGlobals::self()->calendarSystem()->dayOfWeek(date); | 732 | int dW = KOGlobals::self()->calendarSystem()->dayOfWeek(date); |
707 | QString dayName = KOGlobals::self()->calendarSystem()->weekDayName( dW, true ); | 733 | QString dayName = KOGlobals::self()->calendarSystem()->weekDayName( dW, true ); |
708 | switch ( maxLen ) { | 734 | switch ( maxLen ) { |
709 | case 2: | 735 | case 2: |
710 | str = QString::number( date.day() ); | 736 | str = QString::number( date.day() ); |
711 | break; | 737 | break; |
712 | 738 | ||
@@ -741,17 +767,17 @@ void KOAgendaView::createDayLabels() | |||
741 | addString = i18n("Day before yesterday"); | 767 | addString = i18n("Day before yesterday"); |
742 | else if ( mSelectedDates.first() == QDateTime::currentDateTime().date().addDays(2) ) | 768 | else if ( mSelectedDates.first() == QDateTime::currentDateTime().date().addDays(2) ) |
743 | addString = i18n("Day after tomorrow"); | 769 | addString = i18n("Day after tomorrow"); |
744 | if ( !addString.isEmpty() ) { | 770 | if ( !addString.isEmpty() ) { |
745 | str = addString+", " + str; | 771 | str = addString+", " + str; |
746 | } | 772 | } |
747 | } | 773 | } |
748 | dayLabel->setText(str); | 774 | dayLabel->setText(str); |
749 | dayLabel->setAlignment(QLabel::AlignHCenter); | 775 | //dayLabel->setAlignment(QLabel::AlignHCenter); |
750 | if (date == QDate::currentDate()) { | 776 | if (date == QDate::currentDate()) { |
751 | QFont bFont = dlf; | 777 | QFont bFont = dlf; |
752 | bFont.setBold( true ); | 778 | bFont.setBold( true ); |
753 | dayLabel->setFont(bFont); | 779 | dayLabel->setFont(bFont); |
754 | } | 780 | } |
755 | //dayLayout->addWidget(dayLabel); | 781 | //dayLayout->addWidget(dayLabel); |
756 | 782 | ||
757 | #ifndef KORG_NOPLUGINS | 783 | #ifndef KORG_NOPLUGINS |
@@ -776,27 +802,31 @@ void KOAgendaView::createDayLabels() | |||
776 | #endif | 802 | #endif |
777 | } | 803 | } |
778 | if ( ! appendLabels ) { | 804 | if ( ! appendLabels ) { |
779 | dayLabel = mDayLabelsList.next(); | 805 | dayLabel = mDayLabelsList.next(); |
780 | if ( !dayLabel ) | 806 | if ( !dayLabel ) |
781 | appendLabels = true; | 807 | appendLabels = true; |
782 | } | 808 | } |
783 | if ( appendLabels ) { | 809 | if ( appendLabels ) { |
784 | dayLabel = new QLabel(mDayLabels); | 810 | dayLabel = new QPushButton(mDayLabels); |
811 | dayLabel->setFlat( true ); | ||
812 | connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) ); | ||
813 | dayLabel->setFocusPolicy(NoFocus); | ||
785 | mDayLabelsList.append( dayLabel ); | 814 | mDayLabelsList.append( dayLabel ); |
786 | mLayoutDayLabels->addWidget(dayLabel); | 815 | mLayoutDayLabels->addWidget(dayLabel); |
787 | } | 816 | } |
788 | //dayLabel->hide();//test only | 817 | //dayLabel->hide();//test only |
789 | 818 | ||
790 | int offset = (mAgenda->width() - mAgenda->verticalScrollBar()->width()-3 ) % mSelectedDates.count() ; | 819 | int offset = (mAgenda->width() - mAgenda->verticalScrollBar()->width()-3 ) % mSelectedDates.count() ; |
791 | if ( offset < 0 ) offset = 0; | 820 | if ( offset < 0 ) offset = 0; |
792 | //qDebug("mLayoutDayLabels->addSpacing %d ", mAgenda->verticalScrollBar()->width()+offset+2 ); | 821 | //qDebug("mLayoutDayLabels->addSpacing %d ", mAgenda->verticalScrollBar()->width()+offset+2 ); |
793 | dayLabel->setText("");//QString::number ( mSelectedDates.first().month() ) ); | 822 | dayLabel->setText(">");//QString::number ( mSelectedDates.first().month() ) ); |
794 | dayLabel->show(); | 823 | dayLabel->show(); |
824 | dayLabel->setCaption("last"); | ||
795 | dayLabel->setFixedWidth( mAgenda->verticalScrollBar()->width()+ offset ); | 825 | dayLabel->setFixedWidth( mAgenda->verticalScrollBar()->width()+ offset ); |
796 | //qDebug("setToFixed %d ", mAgenda->verticalScrollBar()->width()+ offset+2); | 826 | //qDebug("setToFixed %d ", mAgenda->verticalScrollBar()->width()+ offset+2); |
797 | //mLayoutDayLabels->addSpacing(mAgenda->verticalScrollBar()->width()+ offset+2); | 827 | //mLayoutDayLabels->addSpacing(mAgenda->verticalScrollBar()->width()+ offset+2); |
798 | if ( !appendLabels ) { | 828 | if ( !appendLabels ) { |
799 | dayLabel = mDayLabelsList.next(); | 829 | dayLabel = mDayLabelsList.next(); |
800 | while ( dayLabel ) { | 830 | while ( dayLabel ) { |
801 | //qDebug("!dayLabel %d",dayLabel ); | 831 | //qDebug("!dayLabel %d",dayLabel ); |
802 | dayLabel->hide(); | 832 | dayLabel->hide(); |
diff --git a/korganizer/koagendaview.h b/korganizer/koagendaview.h index 7774fbe..fd0a7af 100644 --- a/korganizer/koagendaview.h +++ b/korganizer/koagendaview.h | |||
@@ -202,16 +202,17 @@ class KOAgendaView : public KOEventView { | |||
202 | void createDayLabels(); | 202 | void createDayLabels(); |
203 | 203 | ||
204 | /** | 204 | /** |
205 | Set the masks on the agenda widgets indicating, which days are holidays. | 205 | Set the masks on the agenda widgets indicating, which days are holidays. |
206 | */ | 206 | */ |
207 | void setHolidayMasks(); | 207 | void setHolidayMasks(); |
208 | 208 | ||
209 | protected slots: | 209 | protected slots: |
210 | void slotDaylabelClicked(); | ||
210 | /** Update event belonging to agenda item */ | 211 | /** Update event belonging to agenda item */ |
211 | void updateEventDates(KOAgendaItem *item, int mode = -1); | 212 | void updateEventDates(KOAgendaItem *item, int mode = -1); |
212 | //void updateMovedTodo(); | 213 | //void updateMovedTodo(); |
213 | 214 | ||
214 | void updateEventIndicatorTop(int newY); | 215 | void updateEventIndicatorTop(int newY); |
215 | void updateEventIndicatorBottom(int newY); | 216 | void updateEventIndicatorBottom(int newY); |
216 | 217 | ||
217 | /** Updates data for selected timespan */ | 218 | /** Updates data for selected timespan */ |
@@ -247,16 +248,16 @@ class KOAgendaView : public KOEventView { | |||
247 | 248 | ||
248 | QMemArray<int> mMinY; | 249 | QMemArray<int> mMinY; |
249 | QMemArray<int> mMaxY; | 250 | QMemArray<int> mMaxY; |
250 | 251 | ||
251 | QMemArray<bool> mHolidayMask; | 252 | QMemArray<bool> mHolidayMask; |
252 | 253 | ||
253 | QPixmap mExpandedPixmap; | 254 | QPixmap mExpandedPixmap; |
254 | QPixmap mNotExpandedPixmap; | 255 | QPixmap mNotExpandedPixmap; |
255 | QPtrList<QLabel> mDayLabelsList; | 256 | QPtrList<QPushButton> mDayLabelsList; |
256 | QDateTime mTimeSpanBegin; | 257 | QDateTime mTimeSpanBegin; |
257 | QDateTime mTimeSpanEnd; | 258 | QDateTime mTimeSpanEnd; |
258 | bool mTimeSpanInAllDay; | 259 | bool mTimeSpanInAllDay; |
259 | void keyPressEvent ( QKeyEvent * e ); | 260 | void keyPressEvent ( QKeyEvent * e ); |
260 | }; | 261 | }; |
261 | 262 | ||
262 | #endif // KOAGENDAVIEW_H | 263 | #endif // KOAGENDAVIEW_H |
diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp index db23882..30f5fb1 100644 --- a/korganizer/koviewmanager.cpp +++ b/korganizer/koviewmanager.cpp | |||
@@ -106,20 +106,23 @@ void KOViewManager::showDateView( int view, QDate date) | |||
106 | #if 0 | 106 | #if 0 |
107 | mNewItemPopup->insertItem ( SmallIcon( pathString +"day" ), i18n("Day view"),3 ); | 107 | mNewItemPopup->insertItem ( SmallIcon( pathString +"day" ), i18n("Day view"),3 ); |
108 | mNewItemPopup->insertItem ( SmallIcon( pathString +"week" ), i18n("Next Week"),4 ); | 108 | mNewItemPopup->insertItem ( SmallIcon( pathString +"week" ), i18n("Next Week"),4 ); |
109 | mNewItemPopup->insertItem ( SmallIcon( pathString +"month" ), i18n("Next Two Weeks"),5 ); | 109 | mNewItemPopup->insertItem ( SmallIcon( pathString +"month" ), i18n("Next Two Weeks"),5 ); |
110 | mNewItemPopup->insertItem ( SmallIcon( pathString +"month" ), i18n("Next Month"),6 ); | 110 | mNewItemPopup->insertItem ( SmallIcon( pathString +"month" ), i18n("Next Month"),6 ); |
111 | mNewItemPopup->insertItem ( SmallIcon( pathString +"journal" ), i18n("Journal view"),7 ); | 111 | mNewItemPopup->insertItem ( SmallIcon( pathString +"journal" ), i18n("Journal view"),7 ); |
112 | #endif | 112 | #endif |
113 | if ( view == 3 ) { | 113 | if ( view == 3 ) { |
114 | //mCurrentAgendaView = 1 ; | ||
114 | mMainView->showDay( date ); | 115 | mMainView->showDay( date ); |
115 | } else if (view == 4 ) { | 116 | } else if (view == 4 ) { |
117 | mCurrentAgendaView = 7 ; | ||
116 | mMainView->dateNavigator()->selectDates( date, 7 ); | 118 | mMainView->dateNavigator()->selectDates( date, 7 ); |
117 | } else if (view == 5 ) { | 119 | } else if (view == 5 ) { |
120 | mCurrentAgendaView = 14 ; | ||
118 | mMainView->dateNavigator()->selectDates( date, 14); | 121 | mMainView->dateNavigator()->selectDates( date, 14); |
119 | } else if (view == 6 ) { | 122 | } else if (view == 6 ) { |
120 | mMainView->dateNavigator()->blockSignals( true ); | 123 | mMainView->dateNavigator()->blockSignals( true ); |
121 | showMonthView(); | 124 | showMonthView(); |
122 | mMainView->dateNavigator()->selectMonthByDate( date ); | 125 | mMainView->dateNavigator()->selectMonthByDate( date ); |
123 | mMainView->dateNavigator()->blockSignals( false ); | 126 | mMainView->dateNavigator()->blockSignals( false ); |
124 | mMainView->dateNavigator()->selectDate( date ); | 127 | mMainView->dateNavigator()->selectDate( date ); |
125 | } else if (view == 7 ) { | 128 | } else if (view == 7 ) { |
@@ -130,17 +133,21 @@ void KOViewManager::showDateView( int view, QDate date) | |||
130 | if ( mCurrentAgendaView != 3 ) | 133 | if ( mCurrentAgendaView != 3 ) |
131 | mCurrentAgendaView = -1; | 134 | mCurrentAgendaView = -1; |
132 | showAgendaView(KOPrefs::instance()->mFullViewMonth); | 135 | showAgendaView(KOPrefs::instance()->mFullViewMonth); |
133 | globalFlagBlockAgenda = 2; | 136 | globalFlagBlockAgenda = 2; |
134 | mMainView->dateNavigator()->selectDates( date , | 137 | mMainView->dateNavigator()->selectDates( date , |
135 | KOPrefs::instance()->mNextXDays ); | 138 | KOPrefs::instance()->mNextXDays ); |
136 | mFlagShowNextxDays = true; | 139 | mFlagShowNextxDays = true; |
137 | mCurrentAgendaView = 3 ; | 140 | mCurrentAgendaView = 3 ; |
138 | } | 141 | } if (view == 9) { |
142 | showWeekView(); | ||
143 | } else if (view == 10) { | ||
144 | mMainView->dateNavigator()->selectDates( date,mMainView->dateNavigator()->selectedDates().count() ); | ||
145 | } | ||
139 | 146 | ||
140 | #if 0 | 147 | #if 0 |
141 | dateNavigator()->blockSignals( true ); | 148 | dateNavigator()->blockSignals( true ); |
142 | dateNavigator()->selectDate( d ); | 149 | dateNavigator()->selectDate( d ); |
143 | dateNavigator()->blockSignals( false ); | 150 | dateNavigator()->blockSignals( false ); |
144 | mViewManager->showDayView(); | 151 | mViewManager->showDayView(); |
145 | #endif | 152 | #endif |
146 | 153 | ||