-rw-r--r-- | korganizer/komonthview.cpp | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp index 842f6eb..b819eec 100644 --- a/korganizer/komonthview.cpp +++ b/korganizer/komonthview.cpp @@ -65,25 +65,25 @@ public: protected: virtual QString text( const QPoint& p) { return _wid->getWhatsThisText(p) ; }; private: KNoScrollListBox* _wid; }; KNoScrollListBox::KNoScrollListBox(QWidget *parent,const char *name) - : QListBox(parent, name) + : QListBox(parent, name, WRepaintNoErase) { #ifndef DESKTOP_VERSION QPEApplication::setStylusOperation( viewport(), QPEApplication::RightOnHold ); #endif mWT = new KNOWhatsThis(this); } KNoScrollListBox::~KNoScrollListBox() { delete mWT; } QString KNoScrollListBox::getWhatsThisText(QPoint p) { @@ -373,42 +373,50 @@ void MonthViewCell::setHoliday( const QString &holiday ) mHolidayString = holiday; if ( !holiday.isEmpty() ) { setHoliday( true ); } } void MonthViewCell::keyPressEvent ( QKeyEvent * e ) { e->ignore(); } +void MonthViewCell::clear() +{ + mItemList->clear(); + QApplication::removePostedEvents ( mItemList ); + QApplication::removePostedEvents ( mLabel ); + QApplication::removePostedEvents ( this ); +} void MonthViewCell::updateCell() { if ( !mMonthView->isUpdatePossible() ) return; - if ( !isVisible() ){ + /* + if ( !isVisible() ){ return; } + */ + // qDebug("MonthViewCell::updateCell() "); setPrimary( mDate.month()%2 ); setHoliday( KOGlobals::self()->calendarSystem()->dayOfWeek(mDate) == KOGlobals::self()->calendarSystem()->weekDayOfPray() || ( mDate.dayOfWeek() == 6 ) && KOPrefs::instance()-> mExcludeSaturdays); if ( mDate == QDate::currentDate() ) { mItemList->setLineWidth( 3 ); } else { mItemList->setLineWidth( 1 ); } mItemList->clear(); - - #ifdef DESKTOP_VERSION QToolTip::remove(this); #endif QString tipText(""); //qApp->processEvents(); if ( !mHolidayString.isEmpty() ) { MonthViewItem *item = new MonthViewItem( 0, mDate, mHolidayString ); item->setPalette( mHolidayPalette ); mItemList->insertItem( item ); tipText += mHolidayString+"\n"; } //mLabel->setMaximumWidth( width() - mItemList->lineWidth()*2); @@ -557,28 +565,29 @@ void MonthViewCell::updateCell() //setMyPalette(); setMyPalette(); QString text; bool smallDisplay = QApplication::desktop()->width() < 320 && KOPrefs::instance()->mMonthViewSatSunTog; if ( KOGlobals::self()->calendarSystem()->day( mDate ) == 1 || (mDate.dayOfWeek() == 7 && !smallDisplay ) || KOPrefs::instance()->mMonthShowShort) { text = KOGlobals::self()->calendarSystem()->monthName( mDate, true ) + " "; mLabel->resize( mLabelBigSize ); text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) ); } else { mLabel->resize( mLabelSize ); text += QString::number( KOGlobals::self()->calendarSystem()->day(mDate) ); } + mLabel->setText( text ); resizeEvent( 0 ); // if ( isVisible()) - qApp->processEvents(); + //qApp->processEvents(); } void MonthViewCell::updateConfig() { setFont( KOPrefs::instance()->mMonthViewFont ); QFontMetrics fm( font() ); mLabelSize = fm.size( 0, "30" ) + QSize( 4, 2 ); mLabelBigSize = fm.size( 0, "Mag 30" ) + QSize( 2, 2 ); mHolidayPalette = mStandardPalette; mPrimaryPalette = mStandardPalette; @@ -927,34 +936,35 @@ void KOMonthView::showEvents(QPtrList<Event>) qDebug("KOMonthView::selectEvents is not implemented yet. "); } void KOMonthView::changeEventDisplay(Event *, int) { // this should be re-written to be much more efficient, but this // quick-and-dirty-hack gets the job done for right now. updateView(); } void KOMonthView::updateView() { - static int iii = 0; - ++iii; if ( !updatePossible ) return; - uint i; + //qDebug("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ "); + int i; for( i = 0; i < mCells.count(); ++i ) { mCells[i]->updateCell(); } + //qDebug("KOMonthView::updateView() "); processSelectionChange(); + // qDebug("---------------------------------------------------------------------+ "); } void KOMonthView::resizeEvent(QResizeEvent * e) { computeLayout(); } void KOMonthView::computeLayout() { // select the appropriate heading string size. E.g. "Wednesday" or "Wed". // note this only changes the text if the requested size crosses the // threshold between big enough to support the full name and not big // enough. |