/* ** Calendar.m ** ** Copyright (c) 2003 ** ** Author: Yen-Ju Chen ** ** This program 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 of the License, or ** (at your option) any later version. ** ** This program 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; if not, write to the Free Software ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include "Calendar.h" #include "CalendarView.h" #include #include @implementation Calendar - (id) initWithFrame: (NSRect) rect andLocation: (NSString *) loc; { NSCalendarDate *date; self = [super init]; view = [[CalendarView alloc] initWithFrame: rect]; [view setAutoresizingMask: NSViewWidthSizable | NSViewHeightSizable]; if ((loc != nil) && (![loc isEqualToString: @""])) { timeZone = [NSTimeZone timeZoneWithName: loc]; } if(timeZone == nil) { timeZone = [NSTimeZone localTimeZone]; } RETAIN(timeZone); date = [NSCalendarDate calendarDate]; [date setTimeZone: timeZone]; [view setDate: date]; timer = [NSTimer scheduledTimerWithTimeInterval: 60 target: self selector: @selector(updateTime:) userInfo: nil repeats: YES]; RETAIN(timer); return self; } - (void) dealloc { if (timer) { [timer invalidate]; DESTROY(timer); } RELEASE(view); RELEASE(timeZone); [super dealloc]; } - (void) updateTime: (id) sender { NSCalendarDate *date = [NSCalendarDate calendarDate]; [date setTimeZone: timeZone]; [view setDate: date]; } - (NSView *) view { return view; } - (void) reload { } - (void) setProperty: (id) propertyList { } - (id) property { return nil; } - (void) copy { } - (void) paste { } + (NSString *) bundleDescription { return @"Calendar"; } @end