summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/komonthview.cpp57
-rw-r--r--korganizer/komonthview.h6
2 files changed, 18 insertions, 45 deletions
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp
index 00e5a6f..aeb3974 100644
--- a/korganizer/komonthview.cpp
+++ b/korganizer/komonthview.cpp
@@ -277,49 +277,28 @@ void KNoScrollListBox::mousePressEvent(QMouseEvent *e)
emit rightClick();
}
}
-MonthViewItem::MonthViewItem( Incidence *incidence, QDate qd, const QString & s)
+MonthViewItem::MonthViewItem( Incidence *incidence, const QString & s)
: QListBoxItem()
{
- mDisplayHightlighted = false;
mblockRepaint = true;
- setText( s );
- mMultiday = 0;
- mIncidence = incidence;
- mDate = qd;
- mRecur = false;
- mAlarm = false;
- mReply = false;
- mInfo = false;
- mdayPos = 0;
isWeekItem = KOPrefs::instance()->mMonthViewWeek;
+ recycle( incidence, s );
}
-void MonthViewItem::recycle( Incidence *incidence, QDate qd, const QString & s)
+void MonthViewItem::recycle( Incidence *incidence, const QString & s)
{
mDisplayHightlighted = false;
setText( s );
mMultiday = 0;
mIncidence = incidence;
- mDate = qd;
- mRecur = false;
- mAlarm = false;
- mReply = false;
- mInfo = false;
- mdayPos = 0;
-}
-void MonthViewItem::clearData()
-{
- mDisplayHightlighted = false;
- setText( "" );
- mMultiday = 0;
- mIncidence = 0;
mRecur = false;
mAlarm = false;
mReply = false;
mInfo = false;
mdayPos = 0;
}
+
bool MonthViewItem::setHighlightedFalse()
{
if ( !mDisplayHightlighted )
return false;
@@ -343,9 +322,9 @@ bool MonthViewItem::setHighlighted( Incidence * inc )
return false;
}
void MonthViewItem::paint(QPainter *p)
{
- if ( mblockRepaint ) {
+ if ( mblockRepaint || !mIncidence ) {
return;
}
#if QT_VERSION >= 0x030000
bool sel = isSelected();
@@ -353,9 +332,9 @@ void MonthViewItem::paint(QPainter *p)
bool sel = selected();
#endif
int heihei = height( listBox () );
int x = 1;
- if (KOPrefs::instance()->mMonthViewUsesCategoryColor || mDisplayHightlighted )
+ if (KOPrefs::instance()->mMonthViewUsesCategoryColor || mDisplayHightlighted || sel )
{
if ( mDisplayHightlighted )
sel = true;
p->setBackgroundColor( palette().color( QPalette::Normal, \
@@ -394,9 +373,9 @@ void MonthViewItem::paint(QPainter *p)
}
if ( mMultiday ) {
int yyy = y+(size/2);
int sizeM = size+2;
- p->setBrush( QBrush::SolidPattern );
+ p->setBrush( QBrush( p->pen().color() ) );
p->drawLine ( x+1, yyy, x +sizeM +sizeM/2-1, yyy ) ;
if ( mMultiday == 2 || mMultiday == 3 ) {
QPointArray pa ( 3 );
pa.setPoint (0, x, yyy );
@@ -433,9 +412,9 @@ void MonthViewItem::paint(QPainter *p)
x += half+half + 4;
} else {
int val = td->percentComplete()/20;
- p->fillRect ( x+1, y-2, val ,size+4,Qt::black );
+ p->fillRect ( x+1, y-2, val ,size+4,p->pen().color() );
p->drawRect ( x, y-2,7,size+4);
x += size + 3;
}
}
@@ -667,9 +646,9 @@ void MonthViewCell::startUpdateCell()
//clear();
while ( CurrentAvailItem ) {
MonthViewItem *item = CurrentAvailItem;
//item->setHighlightedFalse();
- item->clearData();
+ item->recycle( 0, "");
CurrentAvailItem = (MonthViewItem *)item->next();
mAvailItemList.append( item );
takeItem ( item );
}
@@ -763,11 +742,11 @@ int MonthViewCell::insertEvent(Event *event)
if ( mAvailItemList.count() ) {
item = mAvailItemList.first();
mAvailItemList.remove( item );
- item->recycle( event, mDate, text );
+ item->recycle( event, text );
} else {
- item = new MonthViewItem( event, mDate, text );
+ item = new MonthViewItem( event, text );
}
QPalette pal;
if (KOPrefs::instance()->mMonthViewUsesCategoryColor) {
@@ -793,8 +772,9 @@ int MonthViewCell::insertEvent(Event *event)
} else {
pal = mStandardPalette ;
}
+ pal.setColor(QColorGroup::Highlight, KOPrefs::instance()->mHighlightColor);
item->setPalette( pal );
item->setRecur( event->recurrence()->doesRecur() );
item->setAlarm( event->isAlarmEnabled() && multiday < 2 && event->alarmEnabled() );
item->setMoreInfo( event->description().length() > 0 );
@@ -852,11 +832,11 @@ void MonthViewCell::insertTodo(Todo *todo)
MonthViewItem *item ;
if ( mAvailItemList.count() ) {
item = mAvailItemList.first();
mAvailItemList.remove( item );
- item->recycle( todo, mDate, text );
+ item->recycle( todo, text );
} else {
- item = new MonthViewItem( todo, mDate, text );
+ item = new MonthViewItem( todo, text );
}
//MonthViewItem *item = new MonthViewItem( todo, mDate, text );
//item->setPalette( mStandardPalette );
QPalette pal;
@@ -883,8 +863,9 @@ void MonthViewCell::insertTodo(Todo *todo)
} else {
pal = mStandardPalette ;
}
+ pal.setColor(QColorGroup::Highlight, KOPrefs::instance()->mHighlightColor);
item->setPalette( pal );
item->setRecur( todo->recurrence()->doesRecur() );
item->setAlarm( todo->isAlarmEnabled() && todo->alarmEnabled() );
item->setMoreInfo( todo->description().length() > 0 );
@@ -1022,15 +1003,9 @@ QDate MonthViewCell::selectedIncidenceDate()
{
QDate qd;
int index = currentItem();
if ( index < 0 ) return qd;
-
- MonthViewItem *mitem =
- static_cast<MonthViewItem *>( item( index ) );
-
- if ( !mitem ) return qd;
-
- return mitem->incidenceDate();
+ return mDate;
}
void MonthViewCell::deselect()
{
diff --git a/korganizer/komonthview.h b/korganizer/komonthview.h
index ac97860..2622d10 100644
--- a/korganizer/komonthview.h
+++ b/korganizer/komonthview.h
@@ -104,11 +104,10 @@ class KNoScrollListBox: public QListBox
class MonthViewItem: public QListBoxItem
{
public:
- MonthViewItem( Incidence *, QDate qd, const QString & title );
- void recycle( Incidence *incidence, QDate qd, const QString & s);
- void clearData();
+ MonthViewItem( Incidence *,const QString & title );
+ void recycle( Incidence *incidence, const QString & s);
void setRecur(bool on) { mRecur = on; }
void setAlarm(bool on) { mAlarm = on; }
void setReply(bool on) { mReply = on; }
void setMoreInfo(bool on) { mInfo = on; }
@@ -122,9 +121,8 @@ class MonthViewItem: public QListBoxItem
void setPalette(const QPalette &p) { mPalette = p; }
QPalette palette() const { return mPalette; }
bool setHighlightedFalse();
Incidence *incidence() const { return mIncidence; }
- QDate incidenceDate() { return mDate; }
protected:
virtual void paint(QPainter *);
virtual int height(const QListBox *) const;