void OrganizerJournalTimeTransform::transformToEntryL(const QOrganizerItem& item, CCalEntry* entry) { if (item.type() == QOrganizerItemType::TypeJournal) { QOrganizerJournalTime range = item.detail<QOrganizerJournalTime>(); if (!range.isEmpty()) entry->SetDTStampL(toTCalTimeL(range.entryDateTime())); // TODO: is DTStamp correct? } }
void OrganizerTodoTimeTransform::transformToEntryL(const QOrganizerItem& item, CCalEntry* entry) { if(item.type() == QOrganizerItemType::TypeTodo || item.type() == QOrganizerItemType::TypeTodoOccurrence) { QOrganizerTodoTime range = item.detail<QOrganizerTodoTime>(); // Nothing to do? if (range.isEmpty()) return; // On some platforms symbian calendar server does not leave // when start date is more than due date. So make the check here. if (range.startDateTime().isValid() && range.dueDateTime().isValid()) { if (range.startDateTime() > range.dueDateTime()) User::Leave(KErrArgument); } entry->SetStartAndEndTimeL(toTCalTimeL(range.startDateTime()), toTCalTimeL(range.dueDateTime())); } }
void OrganizerItemTimeStampTransform::transformToEntryL(const QOrganizerItem& item, CCalEntry* entry) { QOrganizerItemTimestamp timeStamp = item.detail<QOrganizerItemTimestamp>(); if (!timeStamp.created().isNull() && timeStamp.created().isValid()) { // This is an old entry. entry->SetDTStampL(toTCalTimeL(timeStamp.created())); } else { // This is new entry. Generate creation time. TCalTime dtstamp; TTime currentUtcTime; currentUtcTime.UniversalTime(); dtstamp.SetTimeUtcL(currentUtcTime); entry->SetDTStampL(dtstamp); } // NOTE: modified timestamp is automatically set by symbian calendar server }