-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 @@ -611,2 +611,18 @@ void KOAgendaView::resizeEvent( QResizeEvent* e ) } +void KOAgendaView::slotDaylabelClicked() +{ + QString cap = ((QPushButton*) sender() )->caption(); + + QDate firstDate = mSelectedDates.first(); + if ( cap == "0" ) + emit showDateView( 6, firstDate ); + else if ( cap != "last" ) { + if ( mSelectedDates.count() == 1) + emit showDateView( 9, firstDate.addDays( cap.toInt()-1 ) ); + else + emit showDateView( 3, firstDate.addDays( cap.toInt()-1 ) ); + } + else + showDateView( 10, firstDate.addDays(1 ) ); +} void KOAgendaView::createDayLabels() @@ -672,3 +688,3 @@ void KOAgendaView::createDayLabels() bool appendLabels = false; - QLabel *dayLabel; + QPushButton *dayLabel; dayLabel = mDayLabelsList.first(); @@ -676,3 +692,6 @@ void KOAgendaView::createDayLabels() appendLabels = true; - dayLabel = new QLabel(mDayLabels); + dayLabel = new QPushButton(mDayLabels); + dayLabel->setFlat( true ); + connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) ); + dayLabel->setFocusPolicy(NoFocus); mDayLabelsList.append( dayLabel ); @@ -682,3 +701,4 @@ void KOAgendaView::createDayLabels() dayLabel->setFont( dlf ); - dayLabel->setAlignment(QLabel::AlignHCenter); + dayLabel->setCaption("0"); + //dayLabel->setAlignment(QLabel::AlignHCenter); dayLabel->setText( KOGlobals::self()->calendarSystem()->monthName( mSelectedDates.first(), true ) ); @@ -687,3 +707,5 @@ void KOAgendaView::createDayLabels() bool oneday = (mSelectedDates.first() == mSelectedDates.last() ); + int counter = 0; for( dit = mSelectedDates.begin(); dit != mSelectedDates.end(); ++dit ) { + ++counter; QDate date = *dit; @@ -696,3 +718,6 @@ void KOAgendaView::createDayLabels() if ( appendLabels ) { - dayLabel = new QLabel(mDayLabels); + dayLabel = new QPushButton(mDayLabels); + dayLabel->setFlat( true ); + connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) ); + dayLabel->setFocusPolicy(NoFocus); mDayLabelsList.append( dayLabel ); @@ -704,2 +729,3 @@ void KOAgendaView::createDayLabels() dayLabel->show(); + dayLabel->setCaption(QString::number( counter )); QString str; @@ -748,3 +774,3 @@ void KOAgendaView::createDayLabels() dayLabel->setText(str); - dayLabel->setAlignment(QLabel::AlignHCenter); + //dayLabel->setAlignment(QLabel::AlignHCenter); if (date == QDate::currentDate()) { @@ -783,3 +809,6 @@ void KOAgendaView::createDayLabels() if ( appendLabels ) { - dayLabel = new QLabel(mDayLabels); + dayLabel = new QPushButton(mDayLabels); + dayLabel->setFlat( true ); + connect( dayLabel, SIGNAL( clicked() ), this, SLOT ( slotDaylabelClicked() ) ); + dayLabel->setFocusPolicy(NoFocus); mDayLabelsList.append( dayLabel ); @@ -792,4 +821,5 @@ void KOAgendaView::createDayLabels() //qDebug("mLayoutDayLabels->addSpacing %d ", mAgenda->verticalScrollBar()->width()+offset+2 ); - dayLabel->setText("");//QString::number ( mSelectedDates.first().month() ) ); + dayLabel->setText(">");//QString::number ( mSelectedDates.first().month() ) ); dayLabel->show(); + dayLabel->setCaption("last"); dayLabel->setFixedWidth( mAgenda->verticalScrollBar()->width()+ offset ); diff --git a/korganizer/koagendaview.h b/korganizer/koagendaview.h index 7774fbe..fd0a7af 100644 --- a/korganizer/koagendaview.h +++ b/korganizer/koagendaview.h @@ -209,2 +209,3 @@ class KOAgendaView : public KOEventView { protected slots: + void slotDaylabelClicked(); /** Update event belonging to agenda item */ @@ -254,3 +255,3 @@ class KOAgendaView : public KOEventView { QPixmap mNotExpandedPixmap; - QPtrList<QLabel> mDayLabelsList; + QPtrList<QPushButton> mDayLabelsList; QDateTime mTimeSpanBegin; diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp index db23882..30f5fb1 100644 --- a/korganizer/koviewmanager.cpp +++ b/korganizer/koviewmanager.cpp @@ -113,6 +113,9 @@ void KOViewManager::showDateView( int view, QDate date) if ( view == 3 ) { + //mCurrentAgendaView = 1 ; mMainView->showDay( date ); } else if (view == 4 ) { + mCurrentAgendaView = 7 ; mMainView->dateNavigator()->selectDates( date, 7 ); } else if (view == 5 ) { + mCurrentAgendaView = 14 ; mMainView->dateNavigator()->selectDates( date, 14); @@ -137,3 +140,7 @@ void KOViewManager::showDateView( int view, QDate date) mCurrentAgendaView = 3 ; - } + } if (view == 9) { + showWeekView(); + } else if (view == 10) { + mMainView->dateNavigator()->selectDates( date,mMainView->dateNavigator()->selectedDates().count() ); + } |