summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--bin/kdepim/WhatsNew.txt7
-rw-r--r--bin/kdepim/korganizer/featuresKOPI.txt29
-rw-r--r--korganizer/komonthview.cpp33
-rw-r--r--korganizer/komonthview.h6
-rw-r--r--korganizer/koviewmanager.cpp4
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() ),