summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--korganizer/datenavigatorcontainer.cpp1
-rw-r--r--korganizer/kdatenavigator.cpp12
-rw-r--r--korganizer/kdatenavigator.h5
3 files changed, 14 insertions, 4 deletions
diff --git a/korganizer/datenavigatorcontainer.cpp b/korganizer/datenavigatorcontainer.cpp
index cbfc5b2..3f6e29b 100644
--- a/korganizer/datenavigatorcontainer.cpp
+++ b/korganizer/datenavigatorcontainer.cpp
@@ -168,4 +168,5 @@ void DateNavigatorContainer::resizeEvent( QResizeEvent * )
while ( count > ( mExtraViews.count() + 1 ) ) {
KDateNavigator *n = new KDateNavigator( this );
+ n->setMonthSignalOffset ( mExtraViews.count()+1 );
mExtraViews.append( n );
n->setCalendar( mCalendar );
diff --git a/korganizer/kdatenavigator.cpp b/korganizer/kdatenavigator.cpp
index e76a85a..ab9a40f 100644
--- a/korganizer/kdatenavigator.cpp
+++ b/korganizer/kdatenavigator.cpp
@@ -58,5 +58,5 @@ KDateNavigator::KDateNavigator( QWidget *parent, const char *name )
startDate = QDate::currentDate();
}
-
+ mMonthSignalOffset = 0;
mSelectedDates.append(startDate);
m_MthYr = startDate;
@@ -71,5 +71,5 @@ KDateNavigator::KDateNavigator( QWidget *parent, const char *name )
connect( mNavigatorBar, SIGNAL( goNextMonth() ), SIGNAL( goNextMonth() ) );
connect( mNavigatorBar, SIGNAL( goNextYear() ), SIGNAL( goNextYear() ) );
- connect( mNavigatorBar, SIGNAL( monthSelected( int ) ), SIGNAL( monthSelected( int ) ) );
+ connect( mNavigatorBar, SIGNAL( monthSelected( int ) ), SLOT( slotMonthSelected( int ) ) );
// get the day of the week on the first day
@@ -118,4 +118,12 @@ KDateNavigator::KDateNavigator( QWidget *parent, const char *name )
//setFixedSize ( sizeHint() );
}
+void KDateNavigator::slotMonthSelected( int m )
+{
+ if ( m_MthYr.month() <= mMonthSignalOffset)
+ m += 12;
+ int mo = m - mMonthSignalOffset;
+ emit monthSelected( m - mMonthSignalOffset );
+
+}
void KDateNavigator::setCalendar( Calendar *cal )
{
diff --git a/korganizer/kdatenavigator.h b/korganizer/kdatenavigator.h
index 0aeb77a..56822fa 100644
--- a/korganizer/kdatenavigator.h
+++ b/korganizer/kdatenavigator.h
@@ -64,5 +64,5 @@ class KDateNavigator: public QFrame
KCal::DateList selectedDates() const { return mSelectedDates; }
NavigatorBar *navigatorBar() const { return mNavigatorBar; }
-
+ void setMonthSignalOffset ( int off ) { mMonthSignalOffset = off;}
public slots:
void selectDates( const KCal::DateList & );
@@ -106,5 +106,5 @@ class KDateNavigator: public QFrame
*/
void passedMidnight();
-
+ void slotMonthSelected( int m );
protected:
void updateDates();
@@ -115,4 +115,5 @@ class KDateNavigator: public QFrame
private:
+ int mMonthSignalOffset;
NavigatorBar *mNavigatorBar;