author | zautrix <zautrix> | 2005-04-09 21:20:36 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-04-09 21:20:36 (UTC) |
commit | 54f5fe5e6f4909109edf915513c02f7af3e7bb2d (patch) (side-by-side diff) | |
tree | 66c7bcdd8ce6dcbbb6710220c1c3503c83c33d3b /libkcal/todo.cpp | |
parent | ae58b2fe29fcd8b3690dcbb6d64976674f6294e0 (diff) | |
download | kdepimpi-54f5fe5e6f4909109edf915513c02f7af3e7bb2d.zip kdepimpi-54f5fe5e6f4909109edf915513c02f7af3e7bb2d.tar.gz kdepimpi-54f5fe5e6f4909109edf915513c02f7af3e7bb2d.tar.bz2 |
fix
-rw-r--r-- | libkcal/todo.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/libkcal/todo.cpp b/libkcal/todo.cpp index c008fe1..8794f7a 100644 --- a/libkcal/todo.cpp +++ b/libkcal/todo.cpp @@ -26,128 +26,141 @@ #include "todo.h" using namespace KCal; Todo::Todo(): Incidence() { // mStatus = TENTATIVE; mHasDueDate = false; setHasStartDate( false ); mCompleted = getEvenTime(QDateTime::currentDateTime()); mHasCompletedDate = false; mPercentComplete = 0; mRunning = false; mRunSaveTimer = 0; } Todo::Todo(const Todo &t) : Incidence(t) { mDtDue = t.mDtDue; mHasDueDate = t.mHasDueDate; mCompleted = t.mCompleted; mHasCompletedDate = t.mHasCompletedDate; mPercentComplete = t.mPercentComplete; mRunning = false; mRunSaveTimer = 0; } Todo::~Todo() { setRunning( false ); } void Todo::setRunning( bool run ) { if ( run == mRunning ) return; if ( !mRunSaveTimer ) { mRunSaveTimer = new QTimer ( this ); connect ( mRunSaveTimer, SIGNAL( timeout() ), this , SLOT ( saveRunningInfoToFile() ) ); } mRunning = run; if ( mRunning ) { mRunSaveTimer->start( 1000 * 60 * 5 ); // 5 min mRunStart = QDateTime::currentDateTime(); } else { mRunSaveTimer->stop(); saveRunningInfoToFile(); } } void Todo::saveRunningInfoToFile() { qDebug("Todo::saveRunningInfoToFile() %s", summary().latin1()); QString dir = KGlobalSettings::timeTrackerDir(); qDebug("%s ", dir.latin1()); QString file = "%1-%2-%3-%4-%5-%6-%7.tt"; file = file.arg( mRunStart.date().year(), 4).arg( mRunStart.date().month(),2 ).arg( mRunStart.date().day(), 2 ).arg( mRunStart.time().hour(),2 ).arg( mRunStart.time().minute(),2 ).arg( mRunStart.time().second(),2 ).arg( mRunStart.time().msec(), 3 ); file.replace ( QRegExp (" "), "0" ); file = dir +"/" +file; qDebug("%s ", file.latin1()); + QStringList dataList; + + //Summary + //Category + //CategoryColor + //StartRuntime + //Runtime + //Due + //Start + //Prio + //Erledigt + //Uid + //Parents uids } int Todo::runTime() { if ( !mRunning ) return 0; return mRunStart.secsTo( QDateTime::currentDateTime() ); } bool Todo::hasRunningSub() { if ( mRunning ) return true; Incidence *aTodo; for (aTodo = mRelations.first(); aTodo; aTodo = mRelations.next()) { if ( ((Todo*)aTodo)->hasRunningSub() ) return true; } return false; } Incidence *Todo::clone() { return new Todo(*this); } bool Todo::contains ( Todo* from ) { if ( !from->summary().isEmpty() ) if ( !summary().startsWith( from->summary() )) return false; if ( from->hasStartDate() ) { if ( !hasStartDate() ) return false; if ( from->dtStart() != dtStart()) return false; } if ( from->hasDueDate() ){ if ( !hasDueDate() ) return false; if ( from->dtDue() != dtDue()) return false; } if ( !from->location().isEmpty() ) if ( !location().startsWith( from->location() ) ) return false; if ( !from->description().isEmpty() ) if ( !description().startsWith( from->description() )) return false; if ( from->alarms().count() ) { Alarm *a = from->alarms().first(); if ( a->enabled() ){ if ( !alarms().count() ) return false; Alarm *b = alarms().first(); if( ! b->enabled() ) return false; if ( ! (a->offset() == b->offset() )) return false; } } |