[Korganizer-devel] [Bug 131597] reoccuring todos not written to journal when completed

Bram Schoenmakers bramschoenmakers at kde.nl
Sun Dec 24 00:31:41 CET 2006


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=131597         
bramschoenmakers kde nl changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED



------- Additional Comments From bramschoenmakers kde nl  2006-12-24 00:31 -------
SVN commit 616160 by bram:

Record completion of recurring todos in journals.

BUG:131597



 M  +4 -2      calendarview.cpp  
 M  +1 -1      koglobals.h  
 M  +4 -2      kotodoview.cpp  


--- branches/KDE/3.5/kdepim/korganizer/calendarview.cpp #616159:616160
 @ -687,10 +687,12  @
   // as well.
   if ( newIncidence->type() == "Todo"
     && KOPrefs::instance()->recordTodosInJournals()
-    && what == KOGlobals::COMPLETION_MODIFIED ) {
+    &&  ( what == KOGlobals::COMPLETION_MODIFIED
+    || what == KOGlobals::COMPLETION_MODIFIED_WITH_RECURRENCE ) ) {
 
       Todo *todo = static_cast<Todo *>(newIncidence);
-      if ( todo->isCompleted() ) {
+      if ( todo->isCompleted()
+      || what == KOGlobals::COMPLETION_MODIFIED_WITH_RECURRENCE ) {
         QString timeStr = KGlobal::locale()->formatTime( QTime::currentTime() );
         QString description = i18n( "To-do completed: %1 (%2)" ).arg(
           newIncidence->summary() ).arg( timeStr );
--- branches/KDE/3.5/kdepim/korganizer/koglobals.h #616159:616160
 @ -43,7 +43,7  @
     enum { PRIORITY_MODIFIED, COMPLETION_MODIFIED, CATEGORY_MODIFIED,
            DATE_MODIFIED, RELATION_MODIFIED, ALARM_MODIFIED,
            DESCRIPTION_MODIFIED, SUMMARY_MODIFIED,
-           UNKNOWN_MODIFIED };
+           COMPLETION_MODIFIED_WITH_RECURRENCE, UNKNOWN_MODIFIED };
 
     static void fitDialogToScreen( QWidget *widget, bool force=false );
     KConfig *config() const;
--- branches/KDE/3.5/kdepim/korganizer/kotodoview.cpp #616159:616160
 @ -42,7 +42,6  @
 #include <libkcal/resourcecalendar.h>
 #include <libkcal/calfilter.h>
 #include <libkcal/incidenceformatter.h>
-#include <libkcal/journal.h>
 
 #include <libkdepim/clicklineedit.h>
 #include <libkdepim/kdatepickerpopup.h>
 @ -892,7 +891,10  @
       todo->setPercentComplete( percentage );
     }
     item->construct();
-    mChanger->changeIncidence( oldTodo, todo, KOGlobals::COMPLETION_MODIFIED );
+    if ( todo->doesRecur() && percentage == 100 )
+      mChanger->changeIncidence( oldTodo, todo, KOGlobals::COMPLETION_MODIFIED_WITH_RECURRENCE );
+    else
+      mChanger->changeIncidence( oldTodo, todo, KOGlobals::COMPLETION_MODIFIED );
     mChanger->endChange( todo );
     delete oldTodo;
   } else {


More information about the Korganizer-devel mailing list