summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/kodaymatrix.cpp42
1 files changed, 20 insertions, 22 deletions
diff --git a/korganizer/kodaymatrix.cpp b/korganizer/kodaymatrix.cpp
index 507f18e..f864022 100644
--- a/korganizer/kodaymatrix.cpp
+++ b/korganizer/kodaymatrix.cpp
@@ -456,12 +456,14 @@ void KODayMatrix::mousePressEvent (QMouseEvent* e)
456 456
457 if ( e->button() == LeftButton ) 457 if ( e->button() == LeftButton )
458 mouseDown = true; 458 mouseDown = true;
459 mSelStart = getDayIndexFrom(e->x(), e->y()); 459 mSelStart = getDayIndexFrom(e->x(), e->y());
460 if (mSelStart > NUMDAYS-1) mSelStart=NUMDAYS-1; 460 if (mSelStart > NUMDAYS-1) mSelStart=NUMDAYS-1;
461 mSelInit = mSelStart; 461 mSelInit = mSelStart;
462 mSelEnd = mSelStart;
463 repaint(false);
462} 464}
463 465
464void KODayMatrix::mouseReleaseEvent (QMouseEvent* e) 466void KODayMatrix::mouseReleaseEvent (QMouseEvent* e)
465{ 467{
466 if ( e->button() == LeftButton ) 468 if ( e->button() == LeftButton )
467 if ( ! mouseDown ) { 469 if ( ! mouseDown ) {
@@ -637,13 +639,13 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
637 int dwidth = daysize.width(); 639 int dwidth = daysize.width();
638 int row,col; 640 int row,col;
639 int selw, selh; 641 int selw, selh;
640 int xyOff = frameWidth(); 642 int xyOff = frameWidth();
641 int colModulo = sz.width() % 7; 643 int colModulo = sz.width() % 7;
642 int rowModulo = sz.height() % 6; 644 int rowModulo = sz.height() % 6;
643 //qDebug("off %d col %d row %d ",xyOff,colModulo,rowModulo ); 645 qDebug("col %d row %d ",colModulo,rowModulo );
644 646
645 bool isRTL = KOGlobals::self()->reverseLayout(); 647 bool isRTL = KOGlobals::self()->reverseLayout();
646 648
647 // draw background and topleft frame 649 // draw background and topleft frame
648 p.fillRect(pevent->rect(), mDefaultBackColor); 650 p.fillRect(pevent->rect(), mDefaultBackColor);
649 p.setPen(mDefaultTextColor); 651 p.setPen(mDefaultTextColor);
@@ -673,34 +675,16 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
673 } 675 }
674 } 676 }
675 if ( ! skip ) { 677 if ( ! skip ) {
676 row = mSelStartT/7; 678 row = mSelStartT/7;
677 col = mSelStartT -row*7; 679 col = mSelStartT -row*7;
678 QColor selcol = KOPrefs::instance()->mHighlightColor; 680 QColor selcol = KOPrefs::instance()->mHighlightColor;
679
680
681
682 int addCol = 0; 681 int addCol = 0;
683 int addRow = 0; 682 int addRow = 0;
684 int addRow2 = 0; 683 int addRow2 = 0;
685 int addCol2 = 0; 684 int addCol2 = 0;
686#if 0
687 if ( colModulo ) {
688 if ( col >= 7 - colModulo )
689 addCol = col - 7 + colModulo;
690 }
691 if ( rowModulo ) {
692 if ( row >= 6 - rowModulo )
693 addRow = row - 5 + rowModulo;
694 }
695#endif
696
697
698
699
700
701 if (row == mSelEndT/7) { 685 if (row == mSelEndT/7) {
702 if ( rowModulo ) { 686 if ( rowModulo ) {
703 if ( row >= 6 - rowModulo ) 687 if ( row >= 6 - rowModulo )
704 addRow = row - 5 + rowModulo; 688 addRow = row - 5 + rowModulo;
705 } 689 }
706 if ( colModulo ) { 690 if ( colModulo ) {
@@ -789,14 +773,16 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
789 } 773 }
790 774
791 // if today then draw rectangle around day 775 // if today then draw rectangle around day
792 if (today == i) { 776 if (today == i) {
793 tmppen = p.pen(); 777 tmppen = p.pen();
794 QPen mTodayPen(p.pen()); 778 QPen mTodayPen(p.pen());
795 779 if ( daysize.width() < 20 )
796 mTodayPen.setWidth(mTodayMarginWidth); 780 mTodayPen.setWidth(1);
781 else
782 mTodayPen.setWidth(mTodayMarginWidth);
797 //draw red rectangle for holidays 783 //draw red rectangle for holidays
798 if (!mHolidays[i].isNull()) { 784 if (!mHolidays[i].isNull()) {
799 if (actcol == mDefaultTextColor) { 785 if (actcol == mDefaultTextColor) {
800 mTodayPen.setColor(KOPrefs::instance()->mHolidayColor); 786 mTodayPen.setColor(KOPrefs::instance()->mHolidayColor);
801 } else { 787 } else {
802 mTodayPen.setColor(mHolidayColorShaded); 788 mTodayPen.setColor(mHolidayColorShaded);
@@ -805,13 +791,25 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
805 //draw gray rectangle for today if in selection 791 //draw gray rectangle for today if in selection
806 if (i >= mSelStartT && i <= mSelEndT) { 792 if (i >= mSelStartT && i <= mSelEndT) {
807 QColor grey("grey"); 793 QColor grey("grey");
808 mTodayPen.setColor(grey); 794 mTodayPen.setColor(grey);
809 } 795 }
810 p.setPen(mTodayPen); 796 p.setPen(mTodayPen);
811 p.drawRect(col*dwidth, row*dheight, dwidth, dheight); 797
798
799 int addCol = 0;
800 int addRow = 0;
801 if (rowModulo) {
802 if ( row >= 6 - rowModulo )
803 addRow = row - 5 + rowModulo;
804 }
805 if ( colModulo ) {
806 if ( col >= 7 - colModulo )
807 addCol = col - 6 + colModulo-1;
808 }
809 p.drawRect(col*dwidth+addCol, row*dheight+addRow, dwidth, dheight+1);
812 p.setPen(tmppen); 810 p.setPen(tmppen);
813 } 811 }
814 812
815 // if any events are on that day then draw it using a bold font 813 // if any events are on that day then draw it using a bold font
816 if (events[i] > 0) { 814 if (events[i] > 0) {
817 QFont myFont = font(); 815 QFont myFont = font();