]> err.no Git - sope/blob - sope-ical/NGiCal/iCalToDo.m
cf7a4b3e6fba11123f9b85cd60fddbb2b0a2fc41
[sope] / sope-ical / NGiCal / iCalToDo.m
1 /*
2   Copyright (C) 2000-2005 SKYRIX Software AG
3
4   This file is part of SOPE.
5
6   SOPE is free software; you can redistribute it and/or modify it under
7   the terms of the GNU Lesser General Public License as published by the
8   Free Software Foundation; either version 2, or (at your option) any
9   later version.
10
11   SOPE is distributed in the hope that it will be useful, but WITHOUT ANY
12   WARRANTY; without even the implied warranty of MERCHANTABILITY or
13   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
14   License for more details.
15
16   You should have received a copy of the GNU Lesser General Public
17   License along with SOPE; see the file COPYING.  If not, write to the
18   Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
19   02111-1307, USA.
20 */
21
22 #include "iCalToDo.h"
23 #include "common.h"
24
25 @implementation iCalToDo
26
27 - (void)dealloc {
28   [self->accessClass     release];
29   [self->percentComplete release];
30   [self->completed      release];
31   [self->sequence       release];
32   [self->uid            release];
33   [self->summary        release];
34   [self->startDate      release];
35   [self->due            release];
36   [self->priority       release];
37   [self->recurrenceRule release];
38   [super dealloc];
39 }
40
41 /* accessors */
42
43 - (void)setPercentComplete:(NSString *)_value {
44   ASSIGN(self->percentComplete, _value);
45 }
46 - (NSString *)percentComplete {
47   return self->percentComplete;
48 }
49
50 - (void)setDue:(NSCalendarDate *)_date {
51   ASSIGN(self->due, _date);
52 }
53 - (NSCalendarDate *)due {
54   return self->due;
55 }
56
57 - (void)setCompleted:(NSCalendarDate *)_date {
58   ASSIGN(self->completed, _date);
59 }
60 - (NSCalendarDate *)completed {
61   return self->completed;
62 }
63
64 - (void)setRecurrenceRule:(NSString *)_recurrenceRule {
65   ASSIGN(self->recurrenceRule, _recurrenceRule);
66 }
67 - (NSString *)recurrenceRule {
68   return self->recurrenceRule;
69 }
70
71 /* ical typing */
72
73 - (NSString *)entityName {
74   return @"vtodo";
75 }
76
77 /* descriptions */
78
79 - (NSString *)description {
80   NSMutableString *ms;
81
82   ms = [NSMutableString stringWithCapacity:128];
83   [ms appendFormat:@"<0x%08X[%@]:", self, NSStringFromClass([self class])];
84
85   if (self->uid)       [ms appendFormat:@" uid=%@", self->uid];
86   if (self->startDate) [ms appendFormat:@" start=%@", self->startDate];
87   if (self->due)       [ms appendFormat:@" due=%@", self->due];
88   if (self->priority)  [ms appendFormat:@" pri=%@", self->priority];
89
90   if (self->completed) 
91     [ms appendFormat:@" completed=%@", self->completed];
92   if (self->percentComplete) 
93     [ms appendFormat:@" complete=%@", self->percentComplete];
94   if (self->accessClass) 
95     [ms appendFormat:@" class=%@", self->accessClass];
96   
97   if (self->summary)
98     [ms appendFormat:@" summary=%@", self->summary];
99
100   if (self->recurrenceRule)
101     [ms appendFormat:@" recurrenceRule=%@", self->recurrenceRule];
102
103   [ms appendString:@">"];
104   return ms;
105 }
106
107 @end /* iCalToDo */