summaryrefslogtreecommitdiffabout
path: root/korganizer/koagendaitem.cpp
Unidiff
Diffstat (limited to 'korganizer/koagendaitem.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koagendaitem.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/korganizer/koagendaitem.cpp b/korganizer/koagendaitem.cpp
index a05c60e..5f9ed92 100644
--- a/korganizer/koagendaitem.cpp
+++ b/korganizer/koagendaitem.cpp
@@ -329,391 +329,393 @@ void KOAgendaItem::paintMe( bool selected, QPainter* paint )
329 } 329 }
330 paint->fillRect ( x, yy, w, h, mBackgroundColor ); 330 paint->fillRect ( x, yy, w, h, mBackgroundColor );
331 static const QPixmap completedPxmp = SmallIcon("greenhook16"); 331 static const QPixmap completedPxmp = SmallIcon("greenhook16");
332 static const QPixmap overduePxmp = SmallIcon("redcross16"); 332 static const QPixmap overduePxmp = SmallIcon("redcross16");
333 if ( mIncidence->type() == "Todo" ) { 333 if ( mIncidence->type() == "Todo" ) {
334 Todo* tempTodo = static_cast<Todo*>(mIncidence); 334 Todo* tempTodo = static_cast<Todo*>(mIncidence);
335 int xx = pos().x()+(width()-completedPxmp.width()-3 ); 335 int xx = pos().x()+(width()-completedPxmp.width()-3 );
336 int yyy = yy+3; 336 int yyy = yy+3;
337 if ( tempTodo->isCompleted() ) 337 if ( tempTodo->isCompleted() )
338 paint->drawPixmap ( xx, yyy, completedPxmp ); 338 paint->drawPixmap ( xx, yyy, completedPxmp );
339 else { 339 else {
340 paint->drawPixmap ( xx, yyy, overduePxmp ); 340 paint->drawPixmap ( xx, yyy, overduePxmp );
341 341
342 } 342 }
343 } 343 }
344 bool addIcon = false; 344 bool addIcon = false;
345 if ( ! small || w > 3 * h || h > 3* w ) 345 if ( ! small || w > 3 * h || h > 3* w )
346 addIcon = updateIcons( paint, horLayout ); 346 addIcon = updateIcons( paint, horLayout );
347 347
348 qDrawShadePanel (paint, x, yy, w, h, mColorGroup, selected , 2, 0); 348 qDrawShadePanel (paint, x, yy, w, h, mColorGroup, selected , 2, 0);
349 //qDebug("draw rect %d %d %d %d ",x, yy, w, h ); 349 //qDebug("draw rect %d %d %d %d ",x, yy, w, h );
350 if ( ! small ) { 350 if ( ! small ) {
351 x += 3; yy += 3;w -= 6; h-= 5; 351 x += 3; yy += 3;w -= 6; h-= 5;
352 } else { 352 } else {
353 x += 2; yy += 1;w -= 4; h-= 4; 353 x += 2; yy += 1;w -= 4; h-= 4;
354 if ( nfh < 6.01 ) { 354 if ( nfh < 6.01 ) {
355 yy -= 2; 355 yy -= 2;
356 h += 4; 356 h += 4;
357 } 357 }
358 else 358 else
359 if ( nfh < h -2 ) 359 if ( nfh < h -2 )
360 ++yy; 360 ++yy;
361 } 361 }
362 int align; 362 int align;
363#ifndef DESKTOP_VERSION 363#ifndef DESKTOP_VERSION
364 align = ( AlignLeft|WordBreak|AlignTop); 364 align = ( AlignLeft|WordBreak|AlignTop);
365#else 365#else
366 align = ( AlignLeft|BreakAnywhere|WordBreak|AlignTop); 366 align = ( AlignLeft|BreakAnywhere|WordBreak|AlignTop);
367#endif 367#endif
368 if ( addIcon ) { 368 if ( addIcon ) {
369 if ( ! horLayout ) { 369 if ( ! horLayout ) {
370 x += AGENDA_ICON_SIZE+3; 370 x += AGENDA_ICON_SIZE+3;
371 w -= (AGENDA_ICON_SIZE+3); 371 w -= (AGENDA_ICON_SIZE+3);
372 } 372 }
373 else { 373 else {
374 yy+= AGENDA_ICON_SIZE+2; 374 yy+= AGENDA_ICON_SIZE+2;
375 h -=(AGENDA_ICON_SIZE+3); 375 h -=(AGENDA_ICON_SIZE+3);
376 } 376 }
377 } 377 }
378 int colsum = mBackgroundColor.red() + mBackgroundColor.green() + mBackgroundColor.blue(); 378 int colsum = mBackgroundColor.red() + mBackgroundColor.green() + mBackgroundColor.blue();
379 if ( colsum < 250 ) 379 if ( colsum < 250 )
380 paint->setPen ( white); 380 paint->setPen ( white);
381 if ( x < 0 ) { 381 if ( x < 0 ) {
382 w = w+x-3; 382 w = w+x-3;
383 x = 3; 383 x = 3;
384 if ( w > parentWidget()->width() ){ 384 if ( w > parentWidget()->width() ){
385 w = parentWidget()->width() - 6; 385 w = parentWidget()->width() - 6;
386#ifndef DESKTOP_VERSION 386#ifndef DESKTOP_VERSION
387 align = ( AlignCenter|WordBreak); 387 align = ( AlignCenter|WordBreak);
388#else 388#else
389 align = ( AlignCenter|BreakAnywhere|WordBreak); 389 align = ( AlignCenter|BreakAnywhere|WordBreak);
390#endif 390#endif
391 391
392 } 392 }
393 } 393 }
394 QRect dr; 394 QRect dr;
395 paint->drawText ( x, yy, w, h, align, mDisplayedText, -1, &dr ); 395 paint->drawText ( x, yy, w, h, align, mDisplayedText, -1, &dr );
396 if ( mIncidence->cancelled() ){ 396 if ( mIncidence->cancelled() ){
397 if ( ! small ) { 397 if ( ! small ) {
398 QFontMetrics fm ( paint->font() ); 398 QFontMetrics fm ( paint->font() );
399 paint->drawLine(dr.left(), yy+fm.height()/2, dr.right()-2, yy+fm.height()/2); 399 paint->drawLine(dr.left(), yy+fm.height()/2, dr.right()-2, yy+fm.height()/2);
400 } 400 }
401 401
402 } 402 }
403 pa.end(); 403 pa.end();
404 404
405} 405}
406void KOAgendaItem::resizePixmap( int w , int h ) 406void KOAgendaItem::resizePixmap( int w , int h )
407{ 407{
408 paintPix()->resize( w, h ); 408 paintPix()->resize( w, h );
409 paintPixSel()->resize( w, h ); 409 paintPixSel()->resize( w, h );
410 410
411} 411}
412QPixmap * KOAgendaItem::paintPix() 412QPixmap * KOAgendaItem::paintPix()
413{ 413{
414 static QPixmap* mPaintPix = 0; 414 static QPixmap* mPaintPix = 0;
415 if ( ! mPaintPix ) 415 if ( ! mPaintPix )
416 mPaintPix = new QPixmap(1,1); 416 mPaintPix = new QPixmap(1,1);
417 return mPaintPix ; 417 return mPaintPix ;
418} 418}
419QPixmap * KOAgendaItem::paintPixAllday() 419QPixmap * KOAgendaItem::paintPixAllday()
420{ 420{
421 static QPixmap* mPaintPixA = 0; 421 static QPixmap* mPaintPixA = 0;
422 if ( ! mPaintPixA ) 422 if ( ! mPaintPixA )
423 mPaintPixA = new QPixmap(1,1); 423 mPaintPixA = new QPixmap(1,1);
424 return mPaintPixA ; 424 return mPaintPixA ;
425} 425}
426QPixmap * KOAgendaItem::paintPixSel() 426QPixmap * KOAgendaItem::paintPixSel()
427{ 427{
428 static QPixmap* mPaintPixSel = 0; 428 static QPixmap* mPaintPixSel = 0;
429 if ( ! mPaintPixSel ) 429 if ( ! mPaintPixSel )
430 mPaintPixSel = new QPixmap(1,1); 430 mPaintPixSel = new QPixmap(1,1);
431 return mPaintPixSel ; 431 return mPaintPixSel ;
432} 432}
433void KOAgendaItem::paintEvent ( QPaintEvent *e ) 433void KOAgendaItem::paintEvent ( QPaintEvent *e )
434{ 434{
435 435
436 if ( globalFlagBlockAgendaItemPaint ) 436 if ( globalFlagBlockAgendaItemPaint )
437 return; 437 return;
438 if ( globalFlagBlockAgenda > 0 && globalFlagBlockAgenda < 5 ) 438 if ( globalFlagBlockAgenda > 0 && globalFlagBlockAgenda < 5 )
439 return; 439 return;
440 int yy; 440 int yy;
441 if ( mAllDay ) 441 if ( mAllDay )
442 yy = y(); 442 yy = y();
443 else 443 else
444 yy = mCellYTop * ( height() / cellHeight() ); 444 yy = mCellYTop * ( height() / cellHeight() );
445 int xx = x(); 445 int xx = x();
446 if ( xPaintCoord != xx || yPaintCoord != yy || 446 if ( xPaintCoord != xx || yPaintCoord != yy ||
447 wPaintCoord != width() || hPaintCoord != height()) { 447 wPaintCoord != width() || hPaintCoord != height()) {
448 xPaintCoord= xx; 448 xPaintCoord= xx;
449 yPaintCoord = yy; 449 yPaintCoord = yy;
450 wPaintCoord = width(); 450 wPaintCoord = width();
451 hPaintCoord = height(); 451 hPaintCoord = height();
452 globalFlagBlockAgendaItemUpdate = 0; 452 globalFlagBlockAgendaItemUpdate = 0;
453 paintMe( mSelected ); 453 paintMe( mSelected );
454 //qDebug("calling paintMe "); 454 //qDebug("calling paintMe ");
455 globalFlagBlockAgendaItemUpdate = 1; 455 globalFlagBlockAgendaItemUpdate = 1;
456 } 456 }
457 int rx, ry, rw, rh; 457 int rx, ry, rw, rh;
458 rx = e->rect().x(); 458 rx = e->rect().x();
459 ry = e->rect().y(); 459 ry = e->rect().y();
460 rw = e->rect().width(); 460 rw = e->rect().width();
461 rh = e->rect().height(); 461 rh = e->rect().height();
462 //qDebug(" paintevent %s %d %d %d %d", mIncidence->summary().latin1(), x(), yy, width(), height()); 462 //qDebug(" paintevent %s %d %d %d %d", mIncidence->summary().latin1(), x(), yy, width(), height());
463 463
464 QPixmap* paintFrom ; 464 QPixmap* paintFrom ;
465 if ( mSelected ) { 465 if ( mSelected ) {
466 paintFrom = paintPixSel(); 466 paintFrom = paintPixSel();
467 } else { 467 } else {
468 if ( mAllDay ) 468 if ( mAllDay )
469 paintFrom = paintPixAllday(); 469 paintFrom = paintPixAllday();
470 else 470 else
471 paintFrom = paintPix(); 471 paintFrom = paintPix();
472 } 472 }
473 bitBlt (this, rx, ry, paintFrom, x()+rx ,yPaintCoord+ry, rw, rh ,CopyROP); 473 bitBlt (this, rx, ry, paintFrom, x()+rx ,yPaintCoord+ry, rw, rh ,CopyROP);
474} 474}
475void KOAgendaItem::computeText() 475void KOAgendaItem::computeText()
476{ 476{
477 477
478 mDisplayedText = mIncidence->summary(); 478 mDisplayedText = mIncidence->summary();
479 if ( (mIncidence->type() == "Todo") ) { 479 if ( (mIncidence->type() == "Todo") ) {
480 if ( static_cast<Todo*>(mIncidence)->hasDueDate() ) { 480 if ( static_cast<Todo*>(mIncidence)->hasDueDate() ) {
481 if ( static_cast<Todo*>(mIncidence)->dtDue().date() < QDate::currentDate() ) 481 if ( static_cast<Todo*>(mIncidence)->dtDue().date() < QDate::currentDate() )
482 mDisplayedText += i18n(" (") +KGlobal::locale()->formatDate((static_cast<Todo*>(mIncidence))->dtDue().date(), true)+")"; 482 mDisplayedText += i18n(" (") +KGlobal::locale()->formatDate((static_cast<Todo*>(mIncidence))->dtDue().date(), true)+")";
483 else if ( !(mIncidence->doesFloat())) 483 else if ( !(mIncidence->doesFloat()))
484 mDisplayedText += i18n(" (") +KGlobal::locale()->formatTime((static_cast<Todo*>(mIncidence))->dtDue().time())+")"; 484 mDisplayedText += i18n(" (") +KGlobal::locale()->formatTime((static_cast<Todo*>(mIncidence))->dtDue().time())+")";
485 } 485 }
486 } else { 486 } else {
487 if ( !(mIncidence->doesFloat()) && KOPrefs::instance()->mShowTimeInAgenda) 487 if ( !(mIncidence->doesFloat()) && KOPrefs::instance()->mShowTimeInAgenda)
488 mDisplayedText += ": " +KGlobal::locale()->formatTime((static_cast<Event*>(mIncidence))->dtStart().time()) + "-" + KGlobal::locale()->formatTime((static_cast<Event*>(mIncidence))->dtEnd().time()) ; 488 mDisplayedText += ": " +KGlobal::locale()->formatTime((static_cast<Event*>(mIncidence))->dtStart().time()) + "-" + KGlobal::locale()->formatTime((static_cast<Event*>(mIncidence))->dtEnd().time()) ;
489 489
490 if ( mAllDay ) { 490 if ( mAllDay ) {
491 if ( mIncidence->dtStart().date().addDays(3) < mIncidence->dtEnd().date() ) { 491 if ( mIncidence->dtStart().date().addDays(3) < mIncidence->dtEnd().date() ) {
492 mDisplayedText += ": " +KGlobal::locale()->formatDate((static_cast<Event*>(mIncidence))->dtStart().date(), true) + " - " + KGlobal::locale()->formatDate((static_cast<Event*>(mIncidence))->dtEnd().date(), true) ; 492 mDisplayedText += ": " +KGlobal::locale()->formatDate((static_cast<Event*>(mIncidence))->dtStart().date(), true) + " - " + KGlobal::locale()->formatDate((static_cast<Event*>(mIncidence))->dtEnd().date(), true) ;
493 } 493 }
494 } 494 }
495 495
496 } 496 }
497 497
498 if ( !mIncidence->location().isEmpty() ) { 498 if ( !mIncidence->location().isEmpty() ) {
499 if ( mAllDay ) 499 if ( mAllDay )
500 mDisplayedText += " ("; 500 mDisplayedText += " (";
501 else 501 else
502 mDisplayedText += "\n("; 502 mDisplayedText += "\n(";
503 mDisplayedText += mIncidence->location() +")"; 503 mDisplayedText += mIncidence->location() +")";
504 } 504 }
505 505
506 QString tipText = mIncidence->summary(); 506 QString tipText = mIncidence->summary();
507 QWhatsThis::add(this,KIncidenceFormatter::instance()->getFormattedText( mIncidence )); 507 QWhatsThis::add(this,KIncidenceFormatter::instance()->getFormattedText( mIncidence ));
508 if ( !mIncidence->doesFloat() ) { 508 if ( !mIncidence->doesFloat() ) {
509 if ( mIncidence->type() == "Event" ) { 509 if ( mIncidence->type() == "Event" ) {
510 if ( (static_cast<Event*>(mIncidence))->isMultiDay() ) { 510 if ( (static_cast<Event*>(mIncidence))->isMultiDay() ) {
511 tipText += "\n"+i18n("From: ")+mIncidence->dtStartStr(); 511 tipText += "\n"+i18n("From: ")+mIncidence->dtStartStr();
512 tipText += "\n"+i18n("To: ")+(static_cast<Event*>(mIncidence))->dtEndStr(); 512 tipText += "\n"+i18n("To: ")+(static_cast<Event*>(mIncidence))->dtEndStr();
513 } 513 }
514 else { 514 else {
515 tipText += "\n"+i18n("Time: ")+mIncidence->dtStartTimeStr(); 515 tipText += "\n"+i18n("Time: ")+mIncidence->dtStartTimeStr();
516 tipText += " - "+(static_cast<Event*>(mIncidence))->dtEndTimeStr(); 516 tipText += " - "+(static_cast<Event*>(mIncidence))->dtEndTimeStr();
517 } 517 }
518 } 518 }
519 else if ( mIncidence->type() == "Todo" ) { 519 else if ( mIncidence->type() == "Todo" ) {
520 if (mIncidence->hasStartDate()) 520 if (mIncidence->hasStartDate())
521 tipText += "\n"+i18n("Start: ")+ (static_cast<Todo*>(mIncidence))->dtStartStr(); 521 tipText += "\n"+i18n("Start: ")+ (static_cast<Todo*>(mIncidence))->dtStartStr();
522 tipText += "\n"+i18n("Due: ")+ (static_cast<Todo*>(mIncidence))->dtDueStr(); 522 if (((Todo*)mIncidence)->hasDueDate())
523 tipText += "\n"+i18n("Due: ")+ (static_cast<Todo*>(mIncidence))->dtDueStr();
523 } 524 }
524 } else if ( mIncidence->type() == "Todo" ) { 525 } else if ( mIncidence->type() == "Todo" ) {
525 if (mIncidence->hasStartDate()) 526 if (mIncidence->hasStartDate())
526 tipText += "\n"+i18n("Start: ")+ (static_cast<Todo*>(mIncidence))->dtStartDateStr(); 527 tipText += "\n"+i18n("Start: ")+ (static_cast<Todo*>(mIncidence))->dtStartDateStr();
527 tipText += "\n"+i18n("Due: ")+ (static_cast<Todo*>(mIncidence))->dtDueDateStr(); 528 if (((Todo*)mIncidence)->hasDueDate())
529 tipText += "\n"+i18n("Due: ")+ (static_cast<Todo*>(mIncidence))->dtDueDateStr();
528 } 530 }
529 531
530 if (!mIncidence->location().isEmpty()) { 532 if (!mIncidence->location().isEmpty()) {
531 tipText += "\n"+i18n("Location: ")+mIncidence->location(); 533 tipText += "\n"+i18n("Location: ")+mIncidence->location();
532 } 534 }
533 QToolTip::add(this,tipText,toolTipGroup(),""); 535 QToolTip::add(this,tipText,toolTipGroup(),"");
534 536
535} 537}
536void KOAgendaItem::updateItem() 538void KOAgendaItem::updateItem()
537{ 539{
538 computeText(); 540 computeText();
539 541
540 //qDebug("KOAgendaItem:: updateItem() %s %d %d ",incidence()->summary().latin1(), x(), y()); 542 //qDebug("KOAgendaItem:: updateItem() %s %d %d ",incidence()->summary().latin1(), x(), y());
541 paintMe( mSelected ); 543 paintMe( mSelected );
542 repaint( false); 544 repaint( false);
543} 545}
544 546
545void KOAgendaItem::resizeEvent ( QResizeEvent *ev ) 547void KOAgendaItem::resizeEvent ( QResizeEvent *ev )
546{ 548{
547 //qDebug("KOAgendaItem::resizeEvent %s ", mIncidence->summary().latin1()); 549 //qDebug("KOAgendaItem::resizeEvent %s ", mIncidence->summary().latin1());
548 paintMe( mSelected ); 550 paintMe( mSelected );
549 repaint( false ); 551 repaint( false );
550} 552}
551 553
552/* 554/*
553 Return height of item in units of agenda cells 555 Return height of item in units of agenda cells
554*/ 556*/
555int KOAgendaItem::cellHeight() 557int KOAgendaItem::cellHeight()
556{ 558{
557 int ret = mCellYBottom - mCellYTop + 1; 559 int ret = mCellYBottom - mCellYTop + 1;
558 if ( ret <= 0 ) { 560 if ( ret <= 0 ) {
559 ret = 1; 561 ret = 1;
560 mCellYBottom = 0; 562 mCellYBottom = 0;
561 mCellYTop = 0; 563 mCellYTop = 0;
562 } 564 }
563 return ret; 565 return ret;
564} 566}
565 567
566/* 568/*
567 Return height of item in units of agenda cells 569 Return height of item in units of agenda cells
568*/ 570*/
569int KOAgendaItem::cellWidth() 571int KOAgendaItem::cellWidth()
570{ 572{
571 return mCellXWidth - mCellX + 1; 573 return mCellXWidth - mCellX + 1;
572} 574}
573 575
574void KOAgendaItem::setItemDate(QDate qd) 576void KOAgendaItem::setItemDate(QDate qd)
575{ 577{
576 mDate = qd; 578 mDate = qd;
577} 579}
578 580
579void KOAgendaItem::setCellXY(int X, int YTop, int YBottom) 581void KOAgendaItem::setCellXY(int X, int YTop, int YBottom)
580{ 582{
581 mCellX = X; 583 mCellX = X;
582 mCellYTop = YTop; 584 mCellYTop = YTop;
583 mCellYBottom = YBottom; 585 mCellYBottom = YBottom;
584} 586}
585 587
586void KOAgendaItem::setCellXWidth(int xwidth) 588void KOAgendaItem::setCellXWidth(int xwidth)
587{ 589{
588 mCellXWidth = xwidth; 590 mCellXWidth = xwidth;
589} 591}
590 592
591void KOAgendaItem::setCellX(int XLeft, int XRight) 593void KOAgendaItem::setCellX(int XLeft, int XRight)
592{ 594{
593 mCellX = XLeft; 595 mCellX = XLeft;
594 mCellXWidth = XRight; 596 mCellXWidth = XRight;
595} 597}
596 598
597void KOAgendaItem::setCellY(int YTop, int YBottom) 599void KOAgendaItem::setCellY(int YTop, int YBottom)
598{ 600{
599 mCellYTop = YTop; 601 mCellYTop = YTop;
600 mCellYBottom = YBottom; 602 mCellYBottom = YBottom;
601} 603}
602 604
603void KOAgendaItem::setSubCell(int subCell) 605void KOAgendaItem::setSubCell(int subCell)
604{ 606{
605 mSubCell = subCell; 607 mSubCell = subCell;
606} 608}
607 609
608void KOAgendaItem::setSubCells(int subCells) 610void KOAgendaItem::setSubCells(int subCells)
609{ 611{
610 mSubCells = subCells; 612 mSubCells = subCells;
611} 613}
612 614
613void KOAgendaItem::setMultiItem(KOAgendaItem *first,KOAgendaItem *next, 615void KOAgendaItem::setMultiItem(KOAgendaItem *first,KOAgendaItem *next,
614 KOAgendaItem *last) 616 KOAgendaItem *last)
615{ 617{
616 mFirstMultiItem = first; 618 mFirstMultiItem = first;
617 mNextMultiItem = next; 619 mNextMultiItem = next;
618 mLastMultiItem = last; 620 mLastMultiItem = last;
619} 621}
620 622
621void KOAgendaItem::startMove() 623void KOAgendaItem::startMove()
622{ 624{
623 mStartCellX = mCellX; 625 mStartCellX = mCellX;
624 mStartCellXWidth = mCellXWidth; 626 mStartCellXWidth = mCellXWidth;
625 mStartCellYTop = mCellYTop; 627 mStartCellYTop = mCellYTop;
626 mStartCellYBottom = mCellYBottom; 628 mStartCellYBottom = mCellYBottom;
627} 629}
628 630
629void KOAgendaItem::resetMove() 631void KOAgendaItem::resetMove()
630{ 632{
631 mCellX = mStartCellX; 633 mCellX = mStartCellX;
632 mCellXWidth = mStartCellXWidth; 634 mCellXWidth = mStartCellXWidth;
633 mCellYTop = mStartCellYTop; 635 mCellYTop = mStartCellYTop;
634 mCellYBottom = mStartCellYBottom; 636 mCellYBottom = mStartCellYBottom;
635} 637}
636 638
637void KOAgendaItem::moveRelative(int dx, int dy) 639void KOAgendaItem::moveRelative(int dx, int dy)
638{ 640{
639 int newX = cellX() + dx; 641 int newX = cellX() + dx;
640 int newXWidth = cellXWidth() + dx; 642 int newXWidth = cellXWidth() + dx;
641 int newYTop = cellYTop() + dy; 643 int newYTop = cellYTop() + dy;
642 int newYBottom = cellYBottom() + dy; 644 int newYBottom = cellYBottom() + dy;
643 setCellXY(newX,newYTop,newYBottom); 645 setCellXY(newX,newYTop,newYBottom);
644 setCellXWidth(newXWidth); 646 setCellXWidth(newXWidth);
645} 647}
646 648
647void KOAgendaItem::expandTop(int dy) 649void KOAgendaItem::expandTop(int dy)
648{ 650{
649 int newYTop = cellYTop() + dy; 651 int newYTop = cellYTop() + dy;
650 int newYBottom = cellYBottom(); 652 int newYBottom = cellYBottom();
651 if (newYTop > newYBottom) newYTop = newYBottom; 653 if (newYTop > newYBottom) newYTop = newYBottom;
652 setCellY(newYTop, newYBottom); 654 setCellY(newYTop, newYBottom);
653} 655}
654 656
655void KOAgendaItem::expandBottom(int dy) 657void KOAgendaItem::expandBottom(int dy)
656{ 658{
657 int newYTop = cellYTop(); 659 int newYTop = cellYTop();
658 int newYBottom = cellYBottom() + dy; 660 int newYBottom = cellYBottom() + dy;
659 if (newYBottom < newYTop) newYBottom = newYTop; 661 if (newYBottom < newYTop) newYBottom = newYTop;
660 setCellY(newYTop, newYBottom); 662 setCellY(newYTop, newYBottom);
661} 663}
662 664
663void KOAgendaItem::expandLeft(int dx) 665void KOAgendaItem::expandLeft(int dx)
664{ 666{
665 int newX = cellX() + dx; 667 int newX = cellX() + dx;
666 int newXWidth = cellXWidth(); 668 int newXWidth = cellXWidth();
667 if (newX > newXWidth) newX = newXWidth; 669 if (newX > newXWidth) newX = newXWidth;
668 setCellX(newX,newXWidth); 670 setCellX(newX,newXWidth);
669} 671}
670 672
671void KOAgendaItem::expandRight(int dx) 673void KOAgendaItem::expandRight(int dx)
672{ 674{
673 int newX = cellX(); 675 int newX = cellX();
674 int newXWidth = cellXWidth() + dx; 676 int newXWidth = cellXWidth() + dx;
675 if (newXWidth < newX) newXWidth = newX; 677 if (newXWidth < newX) newXWidth = newX;
676 setCellX(newX,newXWidth); 678 setCellX(newX,newXWidth);
677} 679}
678 680
679QToolTipGroup *KOAgendaItem::toolTipGroup() 681QToolTipGroup *KOAgendaItem::toolTipGroup()
680{ 682{
681 if (!mToolTipGroup) mToolTipGroup = new QToolTipGroup(0); 683 if (!mToolTipGroup) mToolTipGroup = new QToolTipGroup(0);
682 return mToolTipGroup; 684 return mToolTipGroup;
683} 685}
684 686
685void KOAgendaItem::dragEnterEvent( QDragEnterEvent *e ) 687void KOAgendaItem::dragEnterEvent( QDragEnterEvent *e )
686{ 688{
687#ifndef KORG_NODND 689#ifndef KORG_NODND
688 if ( ICalDrag::canDecode( e ) || VCalDrag::canDecode( e ) || 690 if ( ICalDrag::canDecode( e ) || VCalDrag::canDecode( e ) ||
689 !QTextDrag::canDecode( e ) ) { 691 !QTextDrag::canDecode( e ) ) {
690 e->ignore(); 692 e->ignore();
691 return; 693 return;
692 } 694 }
693 e->accept(); 695 e->accept();
694#endif 696#endif
695} 697}
696 698
697void KOAgendaItem::dropEvent( QDropEvent *e ) 699void KOAgendaItem::dropEvent( QDropEvent *e )
698{ 700{
699#ifndef KORG_NODND 701#ifndef KORG_NODND
700 QString text; 702 QString text;
701 if(QTextDrag::decode(e,text)) 703 if(QTextDrag::decode(e,text))
702 { 704 {
703 kdDebug() << "Dropped : " << text << endl; 705 kdDebug() << "Dropped : " << text << endl;
704 QStringList emails = QStringList::split(",",text); 706 QStringList emails = QStringList::split(",",text);
705 for(QStringList::ConstIterator it = emails.begin();it!=emails.end();++it) { 707 for(QStringList::ConstIterator it = emails.begin();it!=emails.end();++it) {
706 kdDebug() << " Email: " << (*it) << endl; 708 kdDebug() << " Email: " << (*it) << endl;
707 int pos = (*it).find("<"); 709 int pos = (*it).find("<");
708 QString name = (*it).left(pos); 710 QString name = (*it).left(pos);
709 QString email = (*it).mid(pos); 711 QString email = (*it).mid(pos);
710 if (!email.isEmpty()) { 712 if (!email.isEmpty()) {
711 mIncidence->addAttendee(new Attendee(name,email)); 713 mIncidence->addAttendee(new Attendee(name,email));
712 } 714 }
713 } 715 }
714 } 716 }
715#endif 717#endif
716} 718}
717 719
718 720
719QPtrList<KOAgendaItem> KOAgendaItem::conflictItems() 721QPtrList<KOAgendaItem> KOAgendaItem::conflictItems()