Monotone-Parent: d13851bad5ecc6757d6a051998c7fd6722526ba9
Monotone-Revision: 8c4a5e6241dde8edac2d02e1b2dda9528b69ddb6 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2011-03-22T21:22:34 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
parent
781040d45b
commit
7981507271
|
@ -1,3 +1,8 @@
|
|||
2011-03-22 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
||||
|
||||
* OpenChange/NSCalendarDate+MAPIStore.m (-asMinutesSince1601):
|
||||
corollary to +dateFromMinutesSince1601.
|
||||
|
||||
2011-03-20 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
||||
|
||||
* OpenChange/MAPIStoreCalendarMessage.m
|
||||
|
|
|
@ -27,9 +27,10 @@
|
|||
|
||||
@interface NSCalendarDate (MAPIStoreDataTypes)
|
||||
|
||||
+ (id) dateFromFileTime: (const struct FILETIME *) timeValue;
|
||||
+ (id) dateFromMinutesSince1601: (uint32_t) minutes;
|
||||
- (uint32_t) asMinutesSince1601;
|
||||
|
||||
+ (id) dateFromFileTime: (const struct FILETIME *) timeValue;
|
||||
- (struct FILETIME *) asFileTimeInMemCtx: (void *) memCtx;
|
||||
|
||||
@end
|
||||
|
|
|
@ -35,15 +35,12 @@ static NSCalendarDate *refDate = nil;
|
|||
@implementation NSCalendarDate (MAPIStoreDataTypes)
|
||||
|
||||
static void
|
||||
_setupRefDate()
|
||||
_setupRefDate ()
|
||||
{
|
||||
NSTimeZone *utc;
|
||||
|
||||
utc = [NSTimeZone timeZoneWithName: @"UTC"];
|
||||
refDate = [NSCalendarDate dateWithYear: 1601 month: 1 day: 1
|
||||
hour: 0 minute: 0 second: 0
|
||||
timeZone: utc];
|
||||
[refDate retain];
|
||||
refDate = [[NSCalendarDate alloc]
|
||||
initWithYear: 1601 month: 1 day: 1
|
||||
hour: 0 minute: 0 second: 0
|
||||
timeZone: [NSTimeZone timeZoneWithName: @"UTC"]];
|
||||
}
|
||||
|
||||
+ (id) dateFromMinutesSince1601: (uint32_t) minutes
|
||||
|
@ -59,6 +56,21 @@ _setupRefDate()
|
|||
return result;
|
||||
}
|
||||
|
||||
- (uint32_t) asMinutesSince1601
|
||||
{
|
||||
uint32_t minutes;
|
||||
NSInteger offset;
|
||||
|
||||
if (!refDate)
|
||||
_setupRefDate ();
|
||||
|
||||
minutes = (uint32_t) ([self timeIntervalSinceDate: refDate] / 60);
|
||||
offset = [[self timeZone] secondsFromGMT];
|
||||
minutes += (offset / 60);
|
||||
|
||||
return minutes;
|
||||
}
|
||||
|
||||
+ (id) dateFromFileTime: (const struct FILETIME *) timeValue
|
||||
{
|
||||
NSCalendarDate *result;
|
||||
|
|
Loading…
Reference in a new issue