-rw-r--r-- | korganizer/kotodoviewitem.cpp | 38 |
1 files changed, 29 insertions, 9 deletions
diff --git a/korganizer/kotodoviewitem.cpp b/korganizer/kotodoviewitem.cpp index 6559119..66f8d06 100644 --- a/korganizer/kotodoviewitem.cpp +++ b/korganizer/kotodoviewitem.cpp @@ -20,6 +20,7 @@ #include <klocale.h> #include <kdebug.h> #include <qapp.h> +#include <kglobal.h> #include <kiconloader.h> #include "kotodoviewitem.h" @@ -120,24 +121,35 @@ void KOTodoViewItem::construct() + keyd = ""; + keyt = ""; + + if (mTodo->isRunning() ) { + QDate d = mTodo->runStart().date(); + QTime t = mTodo->runStart().time(); + skeyt.sprintf("%02d%02d",t.hour(),t.minute()); + skeyd.sprintf("%04d%02d%02d",d.year(),d.month(),d.day()); + keyd = KGlobal::locale()->formatDate( d ); + keyt = KGlobal::locale()->formatTime( t ); + + } else { + if (mTodo->hasStartDate()) { - setText(5, mTodo->dtStartDateStr()); + keyd = mTodo->dtStartDateStr(); QDate d = mTodo->dtStart().date(); skeyd.sprintf("%04d%02d%02d",d.year(),d.month(),d.day()); - if (mTodo->doesFloat()) { - setText(6,""); - } - else { - setText(6,mTodo->dtStartTimeStr()); + if ( !mTodo->doesFloat()) { + keyt = mTodo->dtStartTimeStr(); QTime t = mTodo->dtStart().time(); skeyt.sprintf("%02d%02d",t.hour(),t.minute()); } - } else { - setText(5,""); - setText(6,""); + } + } + setText(5,keyd); + setText(6,keyt); setSortKey(5,skeyd); setSortKey(6,skeyt); @@ -368,6 +380,13 @@ void KOTodoViewItem::paintCell(QPainter *p, const QColorGroup &cg, int column, i // maybe we are in flat-display-mode if ( !firstChild() ) openMode = false; + bool colorRunning = mTodo->isRunning(); + if ( ! colorRunning && openMode ) + colorRunning = mTodo->hasRunningSub(); + if ( colorRunning ) { + setColor = true; + colorToSet = KOPrefs::instance()->mTodoRunColor; + } else { int odue = mTodo->hasDueSubTodo( openMode ); if (odue == 2) { colorToSet = KOPrefs::instance()->mTodoOverdueColor; @@ -376,6 +395,7 @@ void KOTodoViewItem::paintCell(QPainter *p, const QColorGroup &cg, int column, i colorToSet = KOPrefs::instance()->mTodoDueTodayColor; setColor = true; } + } if ( setColor ) { |