void KOTodoView::setNewDate( QDate date ) { if ( !mActiveItem || !mChanger ) return; Todo *todo = mActiveItem->todo(); if ( !todo ) return; if ( !todo->isReadOnly() && mChanger->beginChange( todo ) ) { Todo *oldTodo = todo->clone(); QDateTime dt; dt.setDate( date ); if ( !todo->doesFloat() ) dt.setTime( todo->dtDue().time() ); if ( date.isNull() ) todo->setHasDueDate( false ); else if ( !todo->hasDueDate() ) todo->setHasDueDate( true ); todo->setDtDue( dt ); mActiveItem->construct(); mChanger->changeIncidence( oldTodo, todo, KOGlobals::COMPLETION_MODIFIED ); mChanger->endChange( todo ); delete oldTodo; } else { kdDebug(5850) << "No active item, active item is read-only, or locking failed" << endl; } }
void KOWhatsNextView::appendTodo( Incidence *ev ) { if ( mTodos.find( ev ) != mTodos.end() ) return; mTodos.append( ev ); mText += "<li><a href=\"todo:" + ev->uid() + "\">"; mText += ev->summary(); mText += "</a>"; if ( ev->type()=="Todo" ) { Todo *todo = static_cast<Todo*>(ev); if ( todo->hasDueDate() ) { mText += i18n(" (Due: %1)") .arg( (todo->doesFloat())?(todo->dtDueDateStr()):(todo->dtDueStr()) ); } } mText += "</li>\n"; }