-rw-r--r-- | libkcal/calendarlocal.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libkcal/calendarlocal.cpp b/libkcal/calendarlocal.cpp index ca64e66..cce798f 100644 --- a/libkcal/calendarlocal.cpp +++ b/libkcal/calendarlocal.cpp @@ -218,17 +218,18 @@ bool CalendarLocal::addEventNoDup( Event *event ) bool CalendarLocal::addEvent( Event *event ) { insertEvent( event ); event->registerObserver( this ); setModified( true ); - event->setCalID( mDefaultCalendar ); + if ( event->calID() == 0 ) + event->setCalID( mDefaultCalendar ); event->setCalEnabled( true ); return true; } void CalendarLocal::deleteEvent( Event *event ) { if ( mUndoIncidence ) delete mUndoIncidence; @@ -272,16 +273,17 @@ bool CalendarLocal::addTodo( Todo *todo ) mTodoList.append( todo ); todo->registerObserver( this ); // Set up subtask relations setupRelations( todo ); setModified( true ); + if ( todo->calID() == 0 ) todo->setCalID( mDefaultCalendar ); todo->setCalEnabled( true ); return true; } void CalendarLocal::deleteTodo( Todo *todo ) { // Handle orphaned children @@ -776,17 +778,18 @@ QPtrList<Event> CalendarLocal::rawEvents() bool CalendarLocal::addJournal(Journal *journal) { mJournalList.append(journal); journal->registerObserver( this ); setModified( true ); - journal->setCalID( mDefaultCalendar ); + if ( journal->calID() == 0 ) + journal->setCalID( mDefaultCalendar ); journal->setCalEnabled( true ); return true; } void CalendarLocal::deleteJournal( Journal *journal ) { if ( mUndoIncidence ) delete mUndoIncidence; mUndoIncidence = journal->clone(); |