]> err.no Git - sope/blobdiff - sope-ical/NGiCal/iCalToDo.m
extended iCalPerson part-stat field
[sope] / sope-ical / NGiCal / iCalToDo.m
index b9e2f84f8f272806eb2a691f64e8c2a51d42138a..dc17e204a295cd847f0dd0d9c35e09915e82ca66 100644 (file)
@@ -1,44 +1,60 @@
 /*
-  Copyright (C) 2000-2003 SKYRIX Software AG
+  Copyright (C) 2000-2005 SKYRIX Software AG
 
-  This file is part of OGo
+  This file is part of SOPE.
 
-  OGo is free software; you can redistribute it and/or modify it under
+  SOPE is free software; you can redistribute it and/or modify it under
   the terms of the GNU Lesser General Public License as published by the
   Free Software Foundation; either version 2, or (at your option) any
   later version.
 
-  OGo is distributed in the hope that it will be useful, but WITHOUT ANY
+  SOPE is distributed in the hope that it will be useful, but WITHOUT ANY
   WARRANTY; without even the implied warranty of MERCHANTABILITY or
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
   License for more details.
 
   You should have received a copy of the GNU Lesser General Public
-  License along with OGo; see the file COPYING.  If not, write to the
+  License along with SOPE; see the file COPYING.  If not, write to the
   Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
   02111-1307, USA.
 */
-// $Id: iCalToDo.m 1 2004-08-20 10:08:27Z znek $
 
 #include "iCalToDo.h"
+#include "iCalRecurrenceRule.h"
 #include "common.h"
 
 @implementation iCalToDo
 
++ (int)version {
+  return [super version] + 0 /* v0 */;
+}
++ (void)initialize {
+  NSAssert2([super version] == 0,
+            @"invalid superclass (%@) version %i !",
+            NSStringFromClass([self superclass]), [super version]);
+}
+
 - (void)dealloc {
-  [self->accessClass     release];
+  [self->due             release];
   [self->percentComplete release];
-  [self->completed      release];
-  [self->sequence       release];
-  [self->uid            release];
-  [self->summary        release];
-  [self->startDate      release];
-  [self->due            release];
-  [self->priority       release];
-  [self->recurrenceRule release];
+  [self->completed       release];
   [super dealloc];
 }
 
+/* NSCopying */
+
+- (id)copyWithZone:(NSZone *)_zone {
+  iCalToDo *new;
+  
+  new = [super copyWithZone:_zone];
+  
+  new->due             = [self->due             copyWithZone:_zone];
+  new->percentComplete = [self->percentComplete copyWithZone:_zone];
+  new->completed       = [self->completed       copyWithZone:_zone];
+
+  return new;
+}
+
 /* accessors */
 
 - (void)setPercentComplete:(NSString *)_value {
   return self->completed;
 }
 
-- (void)setRecurrenceRule:(NSString *)_recurrenceRule {
-  ASSIGN(self->recurrenceRule, _recurrenceRule);
-}
-- (NSString *)recurrenceRule {
-  return self->recurrenceRule;
-}
-
 /* ical typing */
 
 - (NSString *)entityName {
   if (self->summary)
     [ms appendFormat:@" summary=%@", self->summary];
 
-  if (self->recurrenceRule)
-    [ms appendFormat:@" recurrenceRule=%@", self->recurrenceRule];
-
   [ms appendString:@">"];
   return ms;
 }