author | zautrix <zautrix> | 2005-01-31 08:05:32 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-01-31 08:05:32 (UTC) |
commit | f7663a4c854d217bcb4f828a3ebb69cc40d0dd7c (patch) (side-by-side diff) | |
tree | 683febfff7427b923f23178e74b7cc0e50ef461d /korganizer/kodaymatrix.cpp | |
parent | ed5723f40a93bbedfcbd9f54e6379a23c4a76096 (diff) | |
download | kdepimpi-f7663a4c854d217bcb4f828a3ebb69cc40d0dd7c.zip kdepimpi-f7663a4c854d217bcb4f828a3ebb69cc40d0dd7c.tar.gz kdepimpi-f7663a4c854d217bcb4f828a3ebb69cc40d0dd7c.tar.bz2 |
fix
-rw-r--r-- | korganizer/kodaymatrix.cpp | 57 |
1 files changed, 26 insertions, 31 deletions
diff --git a/korganizer/kodaymatrix.cpp b/korganizer/kodaymatrix.cpp index 9c3621e..be5a775 100644 --- a/korganizer/kodaymatrix.cpp +++ b/korganizer/kodaymatrix.cpp @@ -20,5 +20,5 @@ As a special exception, permission is given to link this program with any edition of Qt, and distribute the resulting executable, - without including the source code for Qt in the source distribution. + without including the source ode for Qt in the source distribution. */ @@ -92,4 +92,5 @@ KODayMatrix::KODayMatrix(QWidget *parent, Calendar* calendar, QDate date, const { mCalendar = calendar; + mPendingUpdateBeforeRepaint = false; // initialize dynamic arrays @@ -192,4 +193,5 @@ void KODayMatrix::recalculateToday() today = -1; for (int i=0; i<NUMDAYS; i++) { + events[i] = 0; days[i] = startdate.addDays(i); daylbls[i] = QString::number( KOGlobals::self()->calendarSystem()->day( days[i] )); @@ -211,5 +213,5 @@ void KODayMatrix::updateView() void KODayMatrix::repaintViewTimed() { - qDebug("KODayMatrix::repaintViewTimed "); + //qDebug("KODayMatrix::repaintViewTimed "); mRepaintTimer->stop(); repaint(false); @@ -219,14 +221,5 @@ void KODayMatrix::updateViewTimed() mUpdateTimer->stop(); - //QDate actdate = mPendingNewDate; - - static int iii = 0; - qDebug("KODayMatrix::updateView(QDate actdate) %d", ++iii ); - - if (mDayChanged) { - recalculateToday(); - mDayChanged = false; - } - + //qDebug("KODayMatrix::updateView(QDate actdate) %d", ++iii ); for(int i = 0; i < NUMDAYS; i++) { @@ -261,9 +254,15 @@ void KODayMatrix::updateViewTimed() } } - repaint(false); + if ( ! mPendingUpdateBeforeRepaint ) + repaint(false); } void KODayMatrix::updateView(QDate actdate) { + if ( ! actdate.isValid() ) { + //qDebug("date not valid "); + return; + } + mDayChanged = false; //flag to indicate if the starting day of the matrix has changed by this call //mDayChanged = false; @@ -286,26 +285,19 @@ void KODayMatrix::updateView(QDate actdate) } } - startdate = actdate; mDayChanged = true; + recalculateToday(); } - qDebug("restart Timer %d vis: %d", mDayChanged, isVisible() ); - static int iii = 0; - if ( iii < 2 ) { - ++iii; - updateViewTimed(); + //qDebug("restart Timer %d vis: %d", mDayChanged, isVisible() ); + if ( !isVisible() ) { + mPendingUpdateBeforeRepaint = true; } else { - if ( !isVisible() ) { - mUpdateTimer->start( 2000 ); - } else { - if ( mDayChanged ) { - mUpdateTimer->start( 250 ); - } else { - mRepaintTimer->start( 250 ); - mUpdateTimer->start( 2000 ); - } - } + mRepaintTimer->start( 250 ); +#ifdef DESKTOP_VERSION + mUpdateTimer->start( 2000 ); +#else + mUpdateTimer->start( 4000 ); +#endif } - } @@ -496,5 +488,8 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent) { //kdDebug() << "KODayMatrix::paintEvent() BEGIN" << endl; - + if ( mPendingUpdateBeforeRepaint ) { + updateViewTimed(); + mPendingUpdateBeforeRepaint = false; + } QPainter p(this); |