From bef4d5e0e4c8709a2684f1ef55af8a7637ccbc03 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 22 Aug 2006 19:24:48 +0000 Subject: [PATCH] Monotone-Parent: dc9546aa264cf85f1f6b8f2ec57bc434090e2acf Monotone-Revision: 47c738d4060de254c8a00eaab4912c7bfdb67933 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2006-08-22T19:24:48 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 3 ++ UI/Scheduler/UIxCalMainView.h | 19 ++++++++++ UI/Scheduler/UIxCalMainView.m | 67 +++++++++++++++++++++++++++++++++++ 3 files changed, 89 insertions(+) diff --git a/ChangeLog b/ChangeLog index 8f602141e..937a9dcfd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2006-08-22 Wolfgang Sourdeau + * UI/Scheduler/UIxCalMainView.m: extended class to populate the + entries in the new "monthMenu" and "yearMenu". + * UI/Scheduler/UIxCalDayView.m ([UIxCalDayView -labelForDay]): new method to return the current day as a string formatted depending on the current locale. diff --git a/UI/Scheduler/UIxCalMainView.h b/UI/Scheduler/UIxCalMainView.h index c85a6381c..b1e13a08d 100644 --- a/UI/Scheduler/UIxCalMainView.h +++ b/UI/Scheduler/UIxCalMainView.h @@ -23,9 +23,28 @@ #ifndef UIXCALMAINVIEW_H #define UIXCALMAINVIEW_H +@class NSArray; +@class NSNumber; +@class NSString; + #import "UIxCalView.h" @interface UIxCalMainView : UIxCalView +{ + NSString *monthMenuItem; + NSNumber *yearMenuItem; +} + +- (NSArray *) monthMenuItems; +- (NSArray *) yearMenuItems; + +- (void) setMonthMenuItem: (NSString *) aMonthMenuItem; +- (NSString *) monthMenuItem; +- (NSString *) monthMenuItemLabel; + +- (void) setYearMenuItem: (NSNumber *) aYearMenuItem; +- (NSNumber *) yearMenuItem; + @end #endif /* UIXCALMAINVIEW_H */ diff --git a/UI/Scheduler/UIxCalMainView.m b/UI/Scheduler/UIxCalMainView.m index 840ed122a..ca1c1b87f 100644 --- a/UI/Scheduler/UIxCalMainView.m +++ b/UI/Scheduler/UIxCalMainView.m @@ -20,7 +20,74 @@ * Boston, MA 02111-1307, USA. */ +#import +#import +#import +#import + #import "UIxCalMainView.h" +static NSMutableArray *monthMenuItems = nil; +static NSMutableArray *yearMenuItems = nil; + @implementation UIxCalMainView + +- (NSArray *) monthMenuItems +{ + unsigned int count; + + if (!monthMenuItems) + { + monthMenuItems = [NSMutableArray arrayWithCapacity: 12]; + + for (count = 1; count < 13; count++) + [monthMenuItems addObject: + [NSString stringWithFormat: @"%.2d", count]]; + [monthMenuItems retain]; + } + + return monthMenuItems; +} + +- (void) setMonthMenuItem: (NSString *) aMonthMenuItem +{ + monthMenuItem = aMonthMenuItem; +} + +- (NSString *) monthMenuItem +{ + return monthMenuItem; +} + +- (NSString *) monthMenuItemLabel +{ + return [self localizedNameForMonthOfYear: [monthMenuItem intValue]]; +} + +- (NSArray *) yearMenuItems +{ + int count, year; + + if (!yearMenuItems) + { + year = [[NSCalendarDate date] yearOfCommonEra]; + yearMenuItems = [NSMutableArray arrayWithCapacity: 11]; + for (count = -5; count < 6; count++) + [yearMenuItems addObject: [NSNumber numberWithInt: year + count]]; + [yearMenuItems retain]; + } + + return yearMenuItems; +} + +- (void) setYearMenuItem: (NSNumber *) aYearMenuItem +{ + yearMenuItem = aYearMenuItem; +} + +- (NSNumber *) yearMenuItem +{ + return yearMenuItem; +} + @end