author | zautrix <zautrix> | 2005-04-04 21:50:29 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-04-04 21:50:29 (UTC) |
commit | 768858848f466a726e2f50b777345976828cc2ff (patch) (side-by-side diff) | |
tree | 49351537d5038f4f5e22bcde2205bbabf0dbdb22 /korganizer | |
parent | c408fcb55de18d1e3e1d20803c3885e3074cfaa4 (diff) | |
download | kdepimpi-768858848f466a726e2f50b777345976828cc2ff.zip kdepimpi-768858848f466a726e2f50b777345976828cc2ff.tar.gz kdepimpi-768858848f466a726e2f50b777345976828cc2ff.tar.bz2 |
fixes
-rw-r--r-- | korganizer/datenavigatorcontainer.cpp | 6 | ||||
-rw-r--r-- | korganizer/kdatenavigator.cpp | 2 | ||||
-rw-r--r-- | korganizer/kodaymatrix.cpp | 32 | ||||
-rw-r--r-- | korganizer/kodaymatrix.h | 1 |
4 files changed, 33 insertions, 8 deletions
diff --git a/korganizer/datenavigatorcontainer.cpp b/korganizer/datenavigatorcontainer.cpp index 92abae6..e57daa4 100644 --- a/korganizer/datenavigatorcontainer.cpp +++ b/korganizer/datenavigatorcontainer.cpp @@ -414,25 +414,29 @@ void DateNavigatorContainer::setResizeEnabled() checkUpdateDayMatrixDates(); } void DateNavigatorContainer::resizeEvent( QResizeEvent * e ) { //qDebug("DateNavigatorContainer::resizeEvent %d %d ", width(), height()); //qDebug("COUNT %d ", mExtraViews.count()); if ( ! mResizeEnabled ) { //qDebug("NOT ResizeEnabled"); return; } else - mUpdateTimer->start( 250 ); +#ifdef DESKTOP_VERSION + mUpdateTimer->start( 100 ); +#else + mUpdateTimer->start( 50 ); +#endif //updateDayMatrixDates(); } QSize DateNavigatorContainer::minimumSizeHint() const { return mNavigatorView->minimumSizeHint(); } QSize DateNavigatorContainer::sizeHint() const { return mNavigatorView->yourSizeHint(); diff --git a/korganizer/kdatenavigator.cpp b/korganizer/kdatenavigator.cpp index 1d09f40..5aa1c9b 100644 --- a/korganizer/kdatenavigator.cpp +++ b/korganizer/kdatenavigator.cpp @@ -81,25 +81,25 @@ KDateNavigator::KDateNavigator( QWidget *parent, const char *name ) for( i = 0; i < 7; i++ ) { headings[i] = new QLabel("",this); //headings[i]->setFont(QFont("Arial", 10, QFont::Bold)); headings[i]->setAlignment(AlignCenter); headings[i]->installEventFilter(this); topLayout->addWidget(headings[i],1,i+1); } // Create the weeknumber labels for( i = 0; i < 6; i++ ) { weeknos[i] = new QLabel(this); - weeknos[i]->setAlignment(AlignCenter); + weeknos[i]->setAlignment(AlignCenter ); //weeknos[i]->setFont(QFont("Arial", 10)); if(!m_bShowWeekNums) { weeknos[i]->hide(); } weeknos[i]->installEventFilter(this); topLayout->addWidget(weeknos[i],i+2,0); } daymatrix = new KODayMatrix( this, "KDateNavigator::DayMatrix"); daymatrix->setFrameStyle(QFrame::Panel|QFrame::Sunken); daymatrix->setLineWidth(1); diff --git a/korganizer/kodaymatrix.cpp b/korganizer/kodaymatrix.cpp index 8affe50..c7e1b45 100644 --- a/korganizer/kodaymatrix.cpp +++ b/korganizer/kodaymatrix.cpp @@ -100,33 +100,36 @@ void DynamicTip::maybeTip( const QPoint &pos ) // ============================================================================ const int KODayMatrix::NOSELECTION = -1000; const int KODayMatrix::NUMDAYS = 42; KODayMatrix::KODayMatrix( QWidget *parent, const char *name ) : QFrame( parent, name , Qt::WRepaintNoErase ), mCalendar( 0 ) #if 0 KODayMatrix::KODayMatrix(QWidget *parent, Calendar* calendar, QDate date, const char *name) : QFrame(parent, name) #endif -{ +{ + oldW = 0; + oldH = 0; + myPix.resize( 150, 120 ); mRedrawNeeded = true; mKODaymatrixWhatsThis = new KODaymatrixWhatsThis(this); mPendingUpdateBeforeRepaint = false; mouseDown = false; // initialize dynamic arrays bDays.resize ( NUMDAYS ); - hDays.resize ( NUMDAYS );; - eDays.resize ( NUMDAYS );; + hDays.resize ( NUMDAYS ); + eDays.resize ( NUMDAYS ); days = new QDate[NUMDAYS]; daylbls = new QString[NUMDAYS]; //events = new int[NUMDAYS]; mToolTip = new DynamicTip(this); // set default values used for drawing the matrix mDefaultBackColor = palette().active().base(); mDefaultTextColor = palette().active().foreground(); mDefaultTextColorShaded = getShadedColor(mDefaultTextColor); mHolidayColorShaded = getShadedColor(KOPrefs::instance()->mHolidayColor); mSelectedDaysColor = QColor("white"); mTodayMarginWidth = 2; @@ -325,25 +328,29 @@ void KODayMatrix::recalculateToday() days[i].day() == QDate::currentDate().day()) { today = i; } } // qDebug(QString("Today is visible at %1.").arg(today)); } void KODayMatrix::updateView() { updateView(startdate); } void KODayMatrix::repaintViewTimed() -{ +{ + mRedrawNeeded = true; + bDays.fill( false); + hDays.fill( false); + eDays.fill( false); mRepaintTimer->stop(); repaint(false); } void KODayMatrix::updateViewTimed() { mUpdateTimer->stop(); if ( !mCalendar ) { qDebug("NOT CAL "); return; } //qDebug("KODayMatrix::updateViewTimed "); for(int i = 0; i < NUMDAYS; i++) { @@ -674,29 +681,41 @@ void KODayMatrix::dropEvent(QDropEvent *e) // P A I N T E V E N T H A N D L I N G // ---------------------------------------------------------------------------- void KODayMatrix::paintEvent(QPaintEvent * pevent) { if ( width() <= 0 || height() <= 0 ) return; if ( mPendingUpdateBeforeRepaint ) { updateViewTimed(); mPendingUpdateBeforeRepaint = false; } +#if 0 if ( myPix.width() != width() || myPix.height()!=height() ) { myPix.resize(size() ); mRedrawNeeded = true; } - +#endif + if ( oldW != width() || oldH !=height() ) + mRedrawNeeded = true; + + oldH = height() ; + oldW = width(); + if ( myPix.width() < width() || myPix.height() < height() ) { + myPix.resize(size() ); + mRedrawNeeded = true; + + } + if ( mRedrawNeeded ) { //qDebug("REDRAW "); QPainter p(&myPix); p.setFont(font()); int dheight = daysize.height(); int dwidth = daysize.width(); int row,col; int selw, selh; int xyOff = frameWidth(); int colModulo = (width()-2) % 7; @@ -938,25 +957,26 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent) p.setPen(actcol); } // reset bold font to plain font if ( eDays.testBit(i)) { QFont myFont = font(); myFont.setBold(false); p.setFont(myFont); } } } else { //qDebug("NO redraw "); } - bitBlt (this, 0, 0, &myPix, 0 ,0,width(), height() ,CopyROP); + + bitBlt (this, pevent->rect().topLeft(), &myPix , pevent->rect() ,CopyROP); mRedrawNeeded = false; } // ---------------------------------------------------------------------------- // R E SI Z E E V E N T H A N D L I N G // ---------------------------------------------------------------------------- void KODayMatrix::resizeEvent(QResizeEvent *) { QRect sz = frameRect(); daysize.setHeight(sz.height()*7 / NUMDAYS); daysize.setWidth(sz.width() / 7); diff --git a/korganizer/kodaymatrix.h b/korganizer/kodaymatrix.h index 731117c..d725ead 100644 --- a/korganizer/kodaymatrix.h +++ b/korganizer/kodaymatrix.h @@ -218,24 +218,25 @@ protected: void dragEnterEvent(QDragEnterEvent *); void dragMoveEvent(QDragMoveEvent *); void dragLeaveEvent(QDragLeaveEvent *); void dropEvent(QDropEvent *); void resizeEvent(QResizeEvent *); private: + int oldW, oldH; bool mRedrawNeeded; KODaymatrixWhatsThis* mKODaymatrixWhatsThis; bool mouseDown; QBitArray bDays; QBitArray hDays; QBitArray eDays; QPixmap myPix; QTimer* mUpdateTimer; QTimer* mRepaintTimer; bool mDayChanged; bool mPendingUpdateBeforeRepaint; |