summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/datenavigatorcontainer.cpp35
-rw-r--r--korganizer/datenavigatorcontainer.h2
-rw-r--r--korganizer/kodaymatrix.cpp21
3 files changed, 33 insertions, 25 deletions
diff --git a/korganizer/datenavigatorcontainer.cpp b/korganizer/datenavigatorcontainer.cpp
index 9720146..ba97fa6 100644
--- a/korganizer/datenavigatorcontainer.cpp
+++ b/korganizer/datenavigatorcontainer.cpp
@@ -49,2 +49,5 @@ DateNavigatorContainer::DateNavigatorContainer( QWidget *parent,
49 mLastDisplayedDN = 0; 49 mLastDisplayedDN = 0;
50 mUpdateTimer;
51 mUpdateTimer = new QTimer( this );
52 connect (mUpdateTimer ,SIGNAL(timeout()), this, SLOT ( checkUpdateDayMatrixDates() ));
50} 53}
@@ -137,5 +140,20 @@ void DateNavigatorContainer::setCalendar( Calendar *cal )
137} 140}
141void DateNavigatorContainer::checkUpdateDayMatrixDates()
142{
143 QDate last = lastAvailableDate();
144 QDate first = firstAvailableDate();
145
146 QDate selFirst = mFirstSelectedDate;
147 QDate selLast = selFirst.addDays( mSelectedDateCount-1 );
148 if ( selFirst >= first && selLast <= last ) {
149 updateDayMatrixDates();
150 }
151 else {
152 updateDayMatrixDates();
153 emit monthSelected( mFirstSelectedDate.month() );
154 }
155}
138void DateNavigatorContainer::updateDayMatrixDates() 156void DateNavigatorContainer::updateDayMatrixDates()
139{ 157{
140 158 mUpdateTimer->stop();
141 QDate fDate = mFirstSelectedDate; 159 QDate fDate = mFirstSelectedDate;
@@ -220,16 +238,2 @@ void DateNavigatorContainer::selectDates( const DateList &dateList )
220 QDate lDate = dateList.last(); 238 QDate lDate = dateList.last();
221 if ( mLastDisplayedDN <= 2 ) {
222 mNavigatorView->selectDates( dateList );
223 KDateNavigator *view = mExtraViews.at( 0 );
224 QDate bDate = fDate.addDays( fDate.daysInMonth () - fDate.day() +1 );
225 view->setBaseDate( bDate, false );
226 view->dayMatrix()->setSelectedDaysFrom(fDate , lDate);
227 if ( mLastDisplayedDN == 2 ) {
228 view = mExtraViews.at( 1 );
229 bDate = bDate.addDays( bDate.daysInMonth () - bDate.day() +1 );
230 view->setBaseDate( bDate, false );
231 view->dayMatrix()->setSelectedDaysFrom(fDate , lDate);
232 }
233 return;
234 }
235 //qDebug("%s %s ", lastAvailableDate().toString().latin1(), firstAvailableDate().toString().latin1() ); 239 //qDebug("%s %s ", lastAvailableDate().toString().latin1(), firstAvailableDate().toString().latin1() );
@@ -374,2 +378,3 @@ void DateNavigatorContainer::resizeEvent( QResizeEvent * e )
374 } 378 }
379 mUpdateTimer->start( 250 );
375 //updateDayMatrixDates(); 380 //updateDayMatrixDates();
diff --git a/korganizer/datenavigatorcontainer.h b/korganizer/datenavigatorcontainer.h
index d5e5adf..df8efae 100644
--- a/korganizer/datenavigatorcontainer.h
+++ b/korganizer/datenavigatorcontainer.h
@@ -57,2 +57,3 @@ class DateNavigatorContainer: public QWidget
57 void updateDayMatrixDates(); 57 void updateDayMatrixDates();
58 void checkUpdateDayMatrixDates();
58 void updateToday(); 59 void updateToday();
@@ -83,2 +84,3 @@ class DateNavigatorContainer: public QWidget
83 private: 84 private:
85 QTimer* mUpdateTimer;
84 int mLastDisplayedDN; 86 int mLastDisplayedDN;
diff --git a/korganizer/kodaymatrix.cpp b/korganizer/kodaymatrix.cpp
index 366e8b8..59618bf 100644
--- a/korganizer/kodaymatrix.cpp
+++ b/korganizer/kodaymatrix.cpp
@@ -662,4 +662,4 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
662{ 662{
663 QRect sz = frameRect(); 663
664 if ( sz.width() <= 0 || sz.height() <= 0 ) 664 if ( width() <= 0 || height() <= 0 )
665 return; 665 return;
@@ -669,4 +669,4 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
669 } 669 }
670 if ( myPix.width() != sz.width() || myPix.height()!=sz.height() ) { 670 if ( myPix.width() != width() || myPix.height()!=height() ) {
671 myPix.resize(sz.size() ); 671 myPix.resize(size() );
672 } 672 }
@@ -681,4 +681,4 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
681 int xyOff = frameWidth(); 681 int xyOff = frameWidth();
682 int colModulo = sz.width() % 7; 682 int colModulo = (width()-2) % 7;
683 int rowModulo = sz.height() % 6; 683 int rowModulo = (height()-2) % 6;
684 //qDebug("col %d row %d ",colModulo,rowModulo ); 684 //qDebug("col %d row %d ",colModulo,rowModulo );
@@ -688,5 +688,5 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
688 // draw background and topleft frame 688 // draw background and topleft frame
689 p.fillRect(pevent->rect(), mDefaultBackColor); 689 p.fillRect(0,0,width(),height(), mDefaultBackColor);
690 p.setPen(mDefaultTextColor); 690 p.setPen(mDefaultTextColor);
691 p.drawRect(0, 0, sz.width()+1, sz.height()+1); 691 p.drawRect(0, 0, width(), height());
692 int mSelStartT = mSelStart; 692 int mSelStartT = mSelStart;
@@ -765,3 +765,4 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
765 addRow = 1; 765 addRow = 1;
766 p.fillRect(isRTL ? 0 : col*dwidth+1+addCol2, row*dheight+addRow, (7-col)*dwidth+colModulo, 766 int drawWid = width()-(col*dwidth+1+addCol2)-1;
767 p.fillRect(isRTL ? 0 : col*dwidth+1+addCol2, row*dheight+addRow, drawWid,
767 dheight+1, selcol); 768 dheight+1, selcol);
@@ -916,3 +917,3 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
916 } 917 }
917 int off = xyOff; 918 int off = 0;//xyOff;
918 bitBlt (this, off, off, &myPix, 0 ,0,width(), height() ,CopyROP); 919 bitBlt (this, off, off, &myPix, 0 ,0,width(), height() ,CopyROP);