summaryrefslogtreecommitdiffabout
path: root/korganizer/kodaymatrix.cpp
Side-by-side diff
Diffstat (limited to 'korganizer/kodaymatrix.cpp') (more/less context) (show whitespace changes)
-rw-r--r--korganizer/kodaymatrix.cpp28
1 files changed, 20 insertions, 8 deletions
diff --git a/korganizer/kodaymatrix.cpp b/korganizer/kodaymatrix.cpp
index 59618bf..d543aaf 100644
--- a/korganizer/kodaymatrix.cpp
+++ b/korganizer/kodaymatrix.cpp
@@ -116,7 +116,9 @@ KODayMatrix::KODayMatrix(QWidget *parent, Calendar* calendar, QDate date, const
// initialize dynamic arrays
bDays.resize ( NUMDAYS );
+ hDays.resize ( NUMDAYS );;
+ eDays.resize ( NUMDAYS );;
days = new QDate[NUMDAYS];
daylbls = new QString[NUMDAYS];
- events = new int[NUMDAYS];
+ //events = new int[NUMDAYS];
mToolTip = new DynamicTip(this);
@@ -241,5 +243,5 @@ KODayMatrix::~KODayMatrix()
delete [] days;
delete [] daylbls;
- delete [] events;
+ //delete [] events;
delete mToolTip;
}
@@ -312,5 +314,5 @@ void KODayMatrix::recalculateToday()
today = -1;
for (int i=0; i<NUMDAYS; i++) {
- events[i] = 0;
+ //events[i] = 0;
days[i] = startdate.addDays(i);
daylbls[i] = QString::number( KOGlobals::self()->calendarSystem()->day( days[i] ));
@@ -350,4 +352,6 @@ void KODayMatrix::updateViewTimed()
QString holiStr = "";
bDays.clearBit(i);
+ hDays.clearBit(i);
+ eDays.clearBit(i);
for(event=eventlist.first();event != 0;event=eventlist.next()) {
ushort recurType = event->recurrence()->doesRecur();
@@ -357,4 +361,5 @@ void KODayMatrix::updateViewTimed()
}
if ( event->isHoliday()) {
+ hDays.setBit(i);
if ( !holiStr.isEmpty() )
holiStr += "\n";
@@ -372,5 +377,6 @@ void KODayMatrix::updateViewTimed()
}
}
- events[i] = numEvents;
+ if ( numEvents )
+ eDays.setBit(i);
//if it is a holy day then draw it red. Sundays are consider holidays, too
if ( (KOGlobals::self()->calendarSystem()->dayOfWeek(days[i]) == KOGlobals::self()->calendarSystem()->weekDayOfPray()) ||
@@ -449,5 +455,8 @@ void KODayMatrix::updateEvents()
}
}
- events[ i ] = numEvents;
+ if ( numEvents )
+ eDays.setBit(i);
+ else
+ eDays.clearBit(i);
}
}
@@ -863,5 +872,5 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
// if any events are on that day then draw it using a bold font
- if (events[i] > 0) {
+ if ( eDays.testBit(i) ) {
QFont myFont = font();
myFont.setBold(true);
@@ -872,5 +881,8 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
if (!mHolidays[i].isNull()) {
if ( bDays.testBit(i) ) {
- p.setPen(Qt::green);
+ if ( hDays.testBit(i) )
+ p.setPen(QColor(Qt::green));
+ else
+ p.setPen(QColor(Qt::green).dark());
} else {
if (actcol == mDefaultTextColor) {
@@ -910,5 +922,5 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
}
// reset bold font to plain font
- if (events[i] > 0) {
+ if ( eDays.testBit(i)) {
QFont myFont = font();
myFont.setBold(false);