-rw-r--r-- | bin/kdepim/WhatsNew.txt | 7 | ||||
-rw-r--r-- | bin/kdepim/korganizer/featuresKOPI.txt | 29 | ||||
-rw-r--r-- | korganizer/komonthview.cpp | 33 | ||||
-rw-r--r-- | korganizer/komonthview.h | 6 | ||||
-rw-r--r-- | korganizer/koviewmanager.cpp | 4 |
5 files changed, 46 insertions, 33 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt index 4f8fcc7..ac70a55 100644 --- a/bin/kdepim/WhatsNew.txt +++ b/bin/kdepim/WhatsNew.txt @@ -7,11 +7,12 @@ Fixed the layout problem of the day label buttons of the agenda view introduced in version 2.0.1. Added WhatsThis support for the todo view and the list view. -Added a quite useful and quite hidden feature (to KO/Pi). -Who does find it first? -Hint: You have to click somewhere in the views ... +Added a quite useful feature to the montview. +Just click on the week numbers on the left. +And on top of the week numbers there is now a "week view quick selector". +(Click on the black triangle). ********** VERSION 2.0.1 ************ diff --git a/bin/kdepim/korganizer/featuresKOPI.txt b/bin/kdepim/korganizer/featuresKOPI.txt index 052680e..c056dca 100644 --- a/bin/kdepim/korganizer/featuresKOPI.txt +++ b/bin/kdepim/korganizer/featuresKOPI.txt @@ -139,13 +139,12 @@ B) Useful features, that are not straighforward to see 1) Right mouse click on Zaurus 2) Moving of items in the agenda view 3) Creating exceptions for recurring events -4) Accessing the week in agenda view from the Month view -5) Navigation in month view -6) Navigation in agenda view -7) Monthview as week view -8) Switching display mode in date edit +4) Navigation in month view +5) Navigation in agenda view +6) Monthview as week view +7) Switching display mode in date edit 1) Right mouse click on Zaurus: In KO/Pi on the desktop a right mouse click will popup an menu on some items. @@ -174,14 +173,9 @@ This recurrence is automatically added to the list of recurrence exceptions and a non-recurring clone is created. To cancel a single recurrence, create an exception by moving it and then move it back and cancel it. -4) -Accessing the week in agenda view from the month view: -In the month view there are on the left week numbers displayed. -Click on a week number to see this week in the agenda view. - -5) +4) Navigation in month view: If you select the month view with the icon in the toolbar, the selected data range in the date navigator is set automatically to the complete month. @@ -193,9 +187,9 @@ a date range from the first of the month to the 28.-31. of the month (the 28.-31. is valid for every month!) then the (month-)navigation keys will select automatically the complete next month as date range. -6) +5) Navigation in agenda view: If you select (as an example) 4 days in the date navigator the (week-) navigation key will select the same 4 days in the next week. If you want to get the next 4 days after the selected 4 days selected, @@ -217,16 +211,17 @@ Right of the day labels is a ">" button. If you click this button, you will go one day ahead. Left of the day labels is the month name displayed. If you click this button, the month view is shown. -7) +6) Monthview as week view: On the left side of the monthview are the week number labels displayed. -On top of these labels is a "W" displayed. -If you click on this button the month view mode will switch to week view mode. -To switch back, please click the button, which now displays a "M". +If you click on these labels, the month view will show this week zoomed. +To go back to monthly view click the left label again. +You can quickly select a week number by clicking the black triangle +on top of the week number labels. -8) +7) Switching display mode in date edit: On several places is a date edit used. You can scroll the dates by selecting the part of the date (month, day, year) in the lineedit and pressing the key up/key down key. diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp index 00b1e92..f2cfb75 100644 --- a/korganizer/komonthview.cpp +++ b/korganizer/komonthview.cpp @@ -797,19 +797,24 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name) mWeekLabels.resize( mNumWeeks+1 ); for( i = 0; i < mNumWeeks+1; i++ ) { KOWeekButton *label = new KOWeekButton( this ); label->setFont(bfont); - connect( label, SIGNAL( selectWeekNum ( int )),this, SIGNAL( selectWeekNum ( int )) ); + connect( label, SIGNAL( selectWeekNum ( int )),this, SLOT( selectInternalWeekNum ( int )) ); label->setFlat(true); - QWhatsThis::add(label,i18n("Click on the week number to\nshow week in agenda view")); + QWhatsThis::add(label,i18n("Click on the week number to\nshow week zoomed")); //label->setFrameStyle(QFrame::Panel|QFrame::Raised); //label->setLineWidth(1); //label->setAlignment(AlignCenter); mWeekLabels.insert( i, label ); } - mWeekLabels[mNumWeeks]->setText( i18n("W")); - QWhatsThis::add(mWeekLabels[mNumWeeks],i18n("Click on this to\nswitch to week mode view")); + mWeekLabels[mNumWeeks]->setText( i18n("")); + QWhatsThis::add(mWeekLabels[mNumWeeks],i18n("Click on this to\nselect week number")); int row, col; + QPopupMenu * wpo = new QPopupMenu (this); + wpo->insertItem( i18n("W#"), 0 ); + for ( i = 1; i < 54; i++ ) + wpo->insertItem( i18n("%1").arg(i), i ); + mWeekLabels[mNumWeeks]->setPopup( wpo ); mCells.resize( mNumCells ); for( row = 0; row < mNumWeeks; ++row ) { for( col = 0; col < mDaysPerWeek; ++col ) { MonthViewCell *cell = new MonthViewCell( this ); @@ -823,10 +828,10 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name) SIGNAL( showDaySignal( QDate ) ) ); } } - connect( mWeekLabels[mNumWeeks], SIGNAL( clicked() ), - SLOT( switchView() ) ); + //connect( mWeekLabels[mNumWeeks], SIGNAL( clicked() ), SLOT( switchView() ) ); + connect( wpo, SIGNAL( activated(int) ), SIGNAL( selectWeekNum ( int ) ) ); mContextMenu = eventPopup(); // updateConfig(); //useless here emit incidenceSelected( 0 ); @@ -835,15 +840,25 @@ KOMonthView::KOMonthView(Calendar *calendar, QWidget *parent, const char *name) KOMonthView::~KOMonthView() { delete mContextMenu; } +void KOMonthView::selectDateWeekNum ( int ) +{ + +} +void KOMonthView::selectInternalWeekNum ( int n ) +{ + emit selectWeekNum ( n ); + switchView(); +} + void KOMonthView::switchView() { if ( selectedCell( ) ) selectedCell()->deselect(); mShowWeekView = !mShowWeekView; KOPrefs::instance()->mMonthViewWeek = mShowWeekView; - emit showNavigator( !mShowWeekView ); + //emit showNavigator( !mShowWeekView ); computeLayout(); updateConfig(); } @@ -1221,9 +1236,9 @@ void KOMonthView::computeLayoutWeek() mShortDayLabels = mDayLabels[0]->width() < mWidthLongDayLabel ; updateDayLabels(); bool forceUpdate = !updatePossible; updatePossible = true; - mWeekLabels[mNumWeeks]->setText( i18n("M")); + //mWeekLabels[mNumWeeks]->setText( i18n("M")); if ( forceUpdate ) updateView(); } void KOMonthView::computeLayout() @@ -1330,9 +1345,9 @@ void KOMonthView::computeLayout() mShortDayLabels = mDayLabels[0]->width() < mWidthLongDayLabel ; updateDayLabels(); bool forceUpdate = !updatePossible; updatePossible = true; - mWeekLabels[mNumWeeks]->setText( i18n("W")); + //mWeekLabels[mNumWeeks]->setText( i18n("W")); if ( forceUpdate ) updateView(); } diff --git a/korganizer/komonthview.h b/korganizer/komonthview.h index 0bc3743..1ed200b 100644 --- a/korganizer/komonthview.h +++ b/korganizer/komonthview.h @@ -239,16 +239,18 @@ class KOMonthView: public KOEventView void setSelectedCell( MonthViewCell * ); protected slots: + void selectDateWeekNum ( int ); + void selectInternalWeekNum ( int ); void switchView(); void processSelectionChange(); signals: void nextMonth(); void prevMonth(); void showNavigator( bool ); - void selectWeekNum ( int ); - void showDaySignal( QDate ); + void selectWeekNum ( int ); + void showDaySignal( QDate ); protected: void resizeEvent(QResizeEvent *); void viewChanged(); void updateDayLabels(); diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp index 8aa0697..ca3de59 100644 --- a/korganizer/koviewmanager.cpp +++ b/korganizer/koviewmanager.cpp @@ -221,9 +221,9 @@ void KOViewManager::raiseCurrentView( bool fullScreen, bool callUpdateView ) mCurrentAgendaView = 0; int wid = mMainView->width() ; int hei = mMainView->height(); if ( mCurrentView == mMonthView ) { - if ( !KOPrefs::instance()->mMonthViewWeek ) { + if ( true /* !KOPrefs::instance()->mMonthViewWeek*/ ) { mMainView->navigatorBar()->show(); hei -= mMainView->navigatorBar()->sizeHint().height(); } //mMainView->navigatorBar()->hide(); @@ -517,9 +517,9 @@ void KOViewManager::showMonthView() mMainView, SLOT ( moveIncidence( Incidence * ) ) ); connect( mMonthView, SIGNAL( beamIncidenceSignal( Incidence * ) ), mMainView, SLOT ( beamIncidence( Incidence * ) ) ); connect( mMonthView, SIGNAL( selectWeekNum( int ) ), - mMainView, SLOT ( selectWeekNum( int ) ) ); + mMainView->dateNavigator(), SLOT ( selectWeek( int ) ) ); connect( mMonthView, SIGNAL( showDaySignal( QDate ) ), mMainView, SLOT ( showDay( QDate ) ) ); connect(mMainView, SIGNAL(configChanged()), mMonthView, SLOT(updateConfig())); connect( mMonthView, SIGNAL(nextMonth() ), |