Monotone-Parent: b4eb1c4ecb6343d34ed9700a15e35cd1c9dc33af

Monotone-Revision: 0ad1e10fb7587b8444bd502de4908d1aabf70c96

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2012-07-01T20:55:54
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Wolfgang Sourdeau 2012-07-01 20:55:54 +00:00
parent 92f3ad1b06
commit 674fb1081c
3 changed files with 30 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2012-07-01 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* OpenChange/NSDate+MAPIStore.m (NSDateCompare): new comparison
function for sorting array of NSDate instances.
2012-06-30 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* OpenChange/NSObject+MAPIStore.h: renamed

View File

@ -25,9 +25,11 @@
#import <Foundation/NSDate.h>
@class NSCalendarDate;
@interface NSDate (MAPIStoreDataTypes)
+ (id) dateFromMinutesSince1601: (uint32_t) minutes;
+ (NSCalendarDate *) dateFromMinutesSince1601: (uint32_t) minutes;
- (uint32_t) asMinutesSince1601;
+ (id) dateFromFileTime: (const struct FILETIME *) timeValue;
@ -37,4 +39,6 @@
@end
NSComparisonResult NSDateCompare (NSDate *date1, NSDate *date2, void *);
#endif /* NSCALENDARDATE+MAPISTORE_H */

View File

@ -51,7 +51,7 @@ _setupRefDate ()
timeZone: [NSTimeZone timeZoneWithName: @"UTC"]];
}
+ (id) dateFromMinutesSince1601: (uint32_t) minutes
+ (NSCalendarDate *) dateFromMinutesSince1601: (uint32_t) minutes
{
NSCalendarDate *result;
@ -129,3 +129,22 @@ _setupRefDate ()
}
@end
NSComparisonResult
NSDateCompare (NSDate *date1, NSDate *date2, void *ctx)
{
NSTimeInterval secs1, secs2;
NSComparisonResult result;
secs1 = [date1 timeIntervalSince1970];
secs2 = [date2 timeIntervalSince1970];
if (secs1 == secs2)
result = NSOrderedSame;
else if (secs1 < secs2)
result = NSOrderedAscending;
else
result = NSOrderedDescending;
return result;
}