diff --git a/ChangeLog b/ChangeLog index 16fe56a32..c423f4544 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2006-08-18 Wolfgang Sourdeau + + * UI/Scheduler/UIxCalAptListView.[hm]: new class designed to + display the list of appointments (embodies the code-size of + UIxCalAptListView; answers to the "aptlist" method). + 2006-08-15 Wolfgang Sourdeau * UI/Scheduler/UIxCalWeekOverview.m ([UIxCalWeekOverview diff --git a/UI/Scheduler/UIxCalAptListView.h b/UI/Scheduler/UIxCalAptListView.h new file mode 100644 index 000000000..949ed3469 --- /dev/null +++ b/UI/Scheduler/UIxCalAptListView.h @@ -0,0 +1,40 @@ +/* UIxCalAptListView.h - this file is part of SOGo + * + * Copyright (C) 2006 Inverse groupe conseil + * + * Author: Wolfgang Sourdeau + * + * This file is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This file 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#ifndef UIXCALAPTLISTVIEW_H +#define UIXCALAPTLISTVIEW_H + +#import "UIxCalView.h" + +@class NSDictionary; + +@interface UIxCalAptListView : UIxCalView +{ + NSDictionary *currentAppointment; +} + +- (void) setCurrentAppointment: (NSDictionary *) apt; +- (NSDictionary *) currentAppointment; + +@end + +#endif /* UIXCALAPTLIST_H */ diff --git a/UI/Scheduler/UIxCalAptListView.m b/UI/Scheduler/UIxCalAptListView.m new file mode 100644 index 000000000..365933652 --- /dev/null +++ b/UI/Scheduler/UIxCalAptListView.m @@ -0,0 +1,103 @@ +/* UIxCalAptListView.m - this file is part of SOGo + * + * Copyright (C) 2006 Inverse groupe conseil + * + * Author: Wolfgang Sourdeau + * + * This file is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This file 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#import +#import +#import + +#import + +#import + +#import "UIxCalAptListView.h" + +@implementation UIxCalAptListView + +// - (id) init +// { +// if ((self = [super init])) +// { +// allAppointments = nil; +// } + +// return self; +// } + +- (void) setCurrentAppointment: (NSDictionary *) apt +{ + currentAppointment = apt; +} + +- (NSDictionary *) currentAppointment +{ + return currentAppointment; +} + +- (NSCalendarDate *) startDate +{ + return [NSCalendarDate dateWithTimeIntervalSince1970: 0]; +} + +- (NSCalendarDate *) endDate +{ + return [NSCalendarDate dateWithTimeIntervalSince1970: 0x7fffffff]; +} + +- (SOGoDateFormatter *) itemDateFormatter +{ + SOGoDateFormatter *fmt; + + fmt = [[SOGoDateFormatter alloc] initWithLocale: [self locale]]; + [fmt autorelease]; + [fmt setFullWeekdayNameAndDetails]; + + return fmt; +} + +- (NSString *) currentStartTime +{ + NSCalendarDate *date; + + date = [NSCalendarDate dateWithTimeIntervalSince1970: + [[currentAppointment objectForKey: @"startdate"] + intValue]]; + + return [[self itemDateFormatter] stringForObjectValue: date]; +} + +- (NSString *) currentEndTime +{ + NSCalendarDate *date; + + date = [NSCalendarDate dateWithTimeIntervalSince1970: + [[currentAppointment objectForKey: @"enddate"] + intValue]]; + + return [[self itemDateFormatter] stringForObjectValue: date]; +} + +- (NSString *) currentLocation +{ + return [currentAppointment objectForKey: @"location"]; +} + +@end