objective c - Does saving an event to a CalCalendar just store a pointer to the CalEvent, instead of a copy? -
if want save same kind of event 2 calendars, appears have create 2 separate event objects, is correct?
as example, see code below. event gets saved calendar linked "worker", , calendar linked "task".
- (bool)settask:(mjstask *)atask fromdate:(nsdate *)from todate:(nsdate *)to { nserror *err = nil; calevent *e = [calevent event]; nsstring *task = [[atask shortname] uppercasestring]; // set first calendar [e settitle:task]; [e setisallday:no]; [e setstartdate:[atask start]]; [e setenddate:[atask end]]; [e setlocation:[self lastname]]; [e setcalendar:[self calendar]]; if ( ![[calcalendarstore defaultcalendarstore] saveevent:e span:calspanthisevent error:&err] ) { <error handling> } // set second calendar nsstring *titlestring = [nsstring stringwithformat:@"%@ (%@)",[self lastname],task]; [e settitle:titlestring]; [e setlocation:[atask longname]]; [e setcalendar:[[atask tasktemplate]calendar]]; if ( ![[calcalendarstore defaultcalendarstore] saveevent:e span:calspanthisevent error:&err] ) { <error handling> } return false; } if comment out line calendar 2 gets saved, events in calendar 1. if don't, seems objects saved last calendar (calendar 2).
correct. saving twice, second updating event moving different calendar
Comments
Post a Comment