From e4136a88e6f7a4b8f38917304133343542fe8e42 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 19 Jun 2007 18:07:21 +0000 Subject: [PATCH] Monotone-Parent: 24f36d005d0295e0830d4c3b94b22a05c42890f7 Monotone-Revision: ea5d02ec10076ad595e4aef66932b81d9d68e787 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2007-06-19T18:07:21 Monotone-Branch: ca.inverse.sogo --- UI/MailerUI/UIxMailListView.h | 5 ++++- UI/MailerUI/UIxMailListView.m | 40 +++++++++++++++++++++++++++++------ 2 files changed, 38 insertions(+), 7 deletions(-) diff --git a/UI/MailerUI/UIxMailListView.h b/UI/MailerUI/UIxMailListView.h index c98cb4ba5..7d7fd458a 100644 --- a/UI/MailerUI/UIxMailListView.h +++ b/UI/MailerUI/UIxMailListView.h @@ -22,9 +22,10 @@ #ifndef UIXMAILLISTVIEW_H #define UIXMAILLISTVIEW_H -#include +#import @class EOQualifier; +@class SOGoDateFormatter; @interface UIxMailListView : UIxComponent { @@ -33,6 +34,8 @@ unsigned firstMessageNumber; id message; EOQualifier *qualifier; + SOGoDateFormatter *dateFormatter; + NSTimeZone *userTimeZone; } - (NSString *)defaultSortKey; diff --git a/UI/MailerUI/UIxMailListView.m b/UI/MailerUI/UIxMailListView.m index 86844b861..f0a2ff930 100644 --- a/UI/MailerUI/UIxMailListView.m +++ b/UI/MailerUI/UIxMailListView.m @@ -26,15 +26,24 @@ object. */ -#define messagesPerPage 50 +#import +#import +#import +#import +#import +#import +#import +#import +#import -#include "common.h" -#include -#include -#include +#import +#import +#import +#import #import "UIxMailListView.h" +#define messagesPerPage 50 static int attachmentFlagSize = 8096; @implementation UIxMailListView @@ -45,6 +54,8 @@ static int attachmentFlagSize = 8096; [self->sortedUIDs release]; [self->messages release]; [self->message release]; + [dateFormatter release]; + [userTimeZone release]; [super dealloc]; } @@ -71,6 +82,16 @@ static int attachmentFlagSize = 8096; return self->message; } +- (NSString *) messageDate +{ + NSCalendarDate *messageDate; + + messageDate = [[message objectForKey: @"envelope"] date]; + [messageDate setTimeZone: userTimeZone]; + + return [dateFormatter formattedDateAndTime: messageDate]; +} + - (void) setQualifier: (EOQualifier *) _msg { ASSIGN(self->qualifier, _msg); @@ -309,10 +330,17 @@ static int attachmentFlagSize = 8096; NSArray *msgs; NSRange r; unsigned len; + SOGoUser *user; if (self->messages != nil) return self->messages; - + + user = [context activeUser]; + if (!dateFormatter) + dateFormatter = [user dateFormatterInContext: context]; + if (!userTimeZone) + ASSIGN (userTimeZone, [user timeZone]); + r = [self fetchBlock]; uids = [self sortedUIDs]; if ((len = [uids count]) > r.length)