-rw-r--r-- | korganizer/koagendaitem.cpp | 53 |
1 files changed, 31 insertions, 22 deletions
diff --git a/korganizer/koagendaitem.cpp b/korganizer/koagendaitem.cpp index 62281d4..39355b4 100644 --- a/korganizer/koagendaitem.cpp +++ b/korganizer/koagendaitem.cpp @@ -99,54 +99,32 @@ void KOAgendaItem::init ( Incidence *incidence, QDate qd ) mBackgroundColor = *KOPrefs::instance()->categoryColor(cat); } } mColorGroup = QColorGroup( mBackgroundColor.light(), mBackgroundColor.dark(),mBackgroundColor.light(), mBackgroundColor.dark(),mBackgroundColor, black, mBackgroundColor) ; setBackgroundColor( mBackgroundColor ); setCellXY(0,0,1); setCellXWidth(0); setSubCell(0); setSubCells(1); setMultiItem(0,0,0); startMove(); mSelected = true; select(false); - QString tipText = mIncidence->summary(); - // QToolTip::add(this,tipText); - QWhatsThis::add(this,KIncidenceFormatter::instance()->getFormattedText( mIncidence )); - if ( !mIncidence->doesFloat() ) - if ( mIncidence->type() == "Event" ) { - if ( (static_cast<Event*>(mIncidence))->isMultiDay() ) { - tipText += "\n"+i18n("From: ")+mIncidence->dtStartStr(); - tipText += "\n"+i18n("To: ")+(static_cast<Event*>(mIncidence))->dtEndStr(); - } - else { - tipText += "\n"+i18n("Time: ")+mIncidence->dtStartTimeStr(); - tipText += " - "+(static_cast<Event*>(mIncidence))->dtEndTimeStr(); - } - } - else if ( mIncidence->type() == "Todo" ) { - tipText += "\n"+i18n("Due: ")+ (static_cast<Todo*>(mIncidence))->dtDueTimeStr(); - } - - if (!mIncidence->location().isEmpty()) { - tipText += "\n"+i18n("Location: ")+mIncidence->location(); - } - QToolTip::add(this,tipText,toolTipGroup(),""); QFontMetrics fontinf(KOPrefs::instance()->mAgendaViewFont); mFontPixelSize = fontinf.height();; hide(); xPaintCoord = -1; yPaintCoord = -1; } KOAgendaItem::~KOAgendaItem() { // qDebug("deleteKOAgendaItem::~KOAgendaItem( "); } void KOAgendaItem::recreateIncidence() { @@ -475,60 +453,91 @@ void KOAgendaItem::paintEvent ( QPaintEvent *e ) rh = e->rect().height(); //qDebug(" paintevent %s %d %d %d %d", mIncidence->summary().latin1(), x(), yy, width(), height()); QPixmap* paintFrom ; if ( mSelected ) { paintFrom = paintPixSel(); } else { if ( mAllDay ) paintFrom = paintPixAllday(); else paintFrom = paintPix(); } bitBlt (this, rx, ry, paintFrom, x()+rx ,yPaintCoord+ry, rw, rh ,CopyROP); } void KOAgendaItem::computeText() { + mDisplayedText = mIncidence->summary(); if ( (mIncidence->type() == "Todo") ) { if ( static_cast<Todo*>(mIncidence)->dtDue().date() < QDate::currentDate() ) mDisplayedText += i18n(" (") +KGlobal::locale()->formatDate((static_cast<Todo*>(mIncidence))->dtDue().date(), true)+")"; else if ( !(mIncidence->doesFloat())) mDisplayedText += i18n(" (") +KGlobal::locale()->formatTime((static_cast<Todo*>(mIncidence))->dtDue().time())+")"; } else { if ( !(mIncidence->doesFloat()) && KOPrefs::instance()->mShowTimeInAgenda) mDisplayedText += ": " +KGlobal::locale()->formatTime((static_cast<Event*>(mIncidence))->dtStart().time()) + "-" + KGlobal::locale()->formatTime((static_cast<Event*>(mIncidence))->dtEnd().time()) ; if ( mAllDay ) { if ( mIncidence->dtStart().date().addDays(3) < mIncidence->dtEnd().date() ) { mDisplayedText += ": " +KGlobal::locale()->formatDate((static_cast<Event*>(mIncidence))->dtStart().date(), true) + " - " + KGlobal::locale()->formatDate((static_cast<Event*>(mIncidence))->dtEnd().date(), true) ; } } } if ( !mIncidence->location().isEmpty() ) { if ( mAllDay ) mDisplayedText += " ("; else mDisplayedText += "\n("; mDisplayedText += mIncidence->location() +")"; } + + QString tipText = mIncidence->summary(); + QWhatsThis::add(this,KIncidenceFormatter::instance()->getFormattedText( mIncidence )); + if ( !mIncidence->doesFloat() ) { + if ( mIncidence->type() == "Event" ) { + if ( (static_cast<Event*>(mIncidence))->isMultiDay() ) { + tipText += "\n"+i18n("From: ")+mIncidence->dtStartStr(); + tipText += "\n"+i18n("To: ")+(static_cast<Event*>(mIncidence))->dtEndStr(); + } + else { + tipText += "\n"+i18n("Time: ")+mIncidence->dtStartTimeStr(); + tipText += " - "+(static_cast<Event*>(mIncidence))->dtEndTimeStr(); + } + } + else if ( mIncidence->type() == "Todo" ) { + if (mIncidence->hasStartDate()) + tipText += "\n"+i18n("Start: ")+ (static_cast<Todo*>(mIncidence))->dtStartStr(); + tipText += "\n"+i18n("Due: ")+ (static_cast<Todo*>(mIncidence))->dtDueStr(); + } + } else if ( mIncidence->type() == "Todo" ) { + if (mIncidence->hasStartDate()) + tipText += "\n"+i18n("Start: ")+ (static_cast<Todo*>(mIncidence))->dtStartDateStr(); + tipText += "\n"+i18n("Due: ")+ (static_cast<Todo*>(mIncidence))->dtDueDateStr(); + } + + if (!mIncidence->location().isEmpty()) { + tipText += "\n"+i18n("Location: ")+mIncidence->location(); + } + QToolTip::add(this,tipText,toolTipGroup(),""); + } void KOAgendaItem::updateItem() { computeText(); //qDebug("KOAgendaItem:: updateItem() %s %d %d ",incidence()->summary().latin1(), x(), y()); paintMe( mSelected ); repaint( false); } void KOAgendaItem::resizeEvent ( QResizeEvent *ev ) { //qDebug("KOAgendaItem::resizeEvent %s ", mIncidence->summary().latin1()); paintMe( mSelected ); repaint( false ); } |