diff options
author | Hoa V. DINH <dinh.viet.hoa@gmail.com> | 2013-05-18 11:30:40 -0700 |
---|---|---|
committer | Hoa V. DINH <dinh.viet.hoa@gmail.com> | 2013-05-18 11:30:40 -0700 |
commit | 6e0b88498cf83995ac40dbebc2f4709e8e457eb5 (patch) | |
tree | 7858d352569c48c172e3f953645c7dad1c5c5d29 /src/ui | |
parent | 8a140c39942d380c3612b94b5ea84c11d1e4a2f8 (diff) |
Changed delegate prototype to make it easier to use the renderer and customize it.
Diffstat (limited to 'src/ui')
-rw-r--r-- | src/ui/mac/MCOMessageView.h | 11 | ||||
-rw-r--r-- | src/ui/mac/MCOMessageView.mm | 40 |
2 files changed, 30 insertions, 21 deletions
diff --git a/src/ui/mac/MCOMessageView.h b/src/ui/mac/MCOMessageView.h index fa25184f..e5b05143 100644 --- a/src/ui/mac/MCOMessageView.h +++ b/src/ui/mac/MCOMessageView.h @@ -30,17 +30,18 @@ - (void) MCOMessageView:(MCOMessageView *)view fetchDataForPartWithUniqueID:(NSString *)partUniqueID downloadedFinished:(void (^)(NSError * error))downloadFinished; -- (NSString *) MCOMessageView_templateForMainHeader:(MCOMessageView *)view; -- (NSString *) MCOMessageView_templateForImage:(MCOMessageView *)view; -- (NSString *) MCOMessageView_templateForAttachment:(MCOMessageView *)view; +- (NSString *) MCOMessageView:(MCOMessageView *)view templateForMainHeader:(MCOMessageHeader *)header; +- (NSString *) MCOMessageView:(MCOMessageView *)view templateForImage:(MCOAbstractPart *)part; +- (NSString *) MCOMessageView:(MCOMessageView *)view templateForAttachment:(MCOAbstractPart *)part; - (NSString *) MCOMessageView_templateForMessage:(MCOMessageView *)view; -- (NSString *) MCOMessageView_templateForEmbeddedMessage:(MCOMessageView *)view; -- (NSString *) MCOMessageView_templateForEmbeddedMessageHeader:(MCOMessageView *)view; +- (NSString *) MCOMessageView:(MCOMessageView *)view templateForEmbeddedMessage:(MCOAbstractMessagePart *)part; +- (NSString *) MCOMessageView:(MCOMessageView *)view templateForEmbeddedMessageHeader:(MCOMessageHeader *)header; - (NSString *) MCOMessageView_templateForAttachmentSeparator:(MCOMessageView *)view; - (NSDictionary *) MCOMessageView:(MCOMessageView *)view templateValuesForPartWithUniqueID:(NSString *)uniqueID; - (NSDictionary *) MCOMessageView:(MCOMessageView *)view templateValuesForHeader:(MCOMessageHeader *)header; - (BOOL) MCOMessageView:(MCOMessageView *)view canPreviewPart:(MCOAbstractPart *)part; +- (BOOL) MCOMessageView:(MCOMessageView *)msg shouldShowPart:(MCOAbstractPart *)part; - (NSString *) MCOMessageView:(MCOMessageView *)view filteredHTMLForPart:(NSString *)html; - (NSString *) MCOMessageView:(MCOMessageView *)view filteredHTMLForMessage:(NSString *)html; diff --git a/src/ui/mac/MCOMessageView.mm b/src/ui/mac/MCOMessageView.mm index 4e3b908c..bbcf0b1c 100644 --- a/src/ui/mac/MCOMessageView.mm +++ b/src/ui/mac/MCOMessageView.mm @@ -205,11 +205,19 @@ } if (![[self delegate] respondsToSelector:@selector(MCOMessageView:canPreviewPart:)]) { - return false; + return NO; } return [[self delegate] MCOMessageView:self canPreviewPart:part]; } +- (BOOL) MCOAbstractMessage:(MCOAbstractMessage *)msg shouldShowPart:(MCOAbstractPart *)part +{ + if (![[self delegate] respondsToSelector:@selector(MCOMessageView:shouldShowPart:)]) { + return YES; + } + return [[self delegate] MCOMessageView:self shouldShowPart:part]; +} + - (NSDictionary *) MCOAbstractMessage:(MCOAbstractMessage *)msg templateValuesForHeader:(MCOMessageHeader *)header { if (![[self delegate] respondsToSelector:@selector(MCOMessageView:templateValuesForHeader:)]) { @@ -226,19 +234,19 @@ return [[self delegate] MCOMessageView:self templateValuesForPartWithUniqueID:[part uniqueID]]; } -- (NSString *) MCOAbstractMessage_templateForMainHeader:(MCOAbstractMessage *)msg +- (NSString *) MCOAbstractMessage:(MCOAbstractMessage *)msg templateForMainHeader:(MCOMessageHeader *)header { - if (![[self delegate] respondsToSelector:@selector(MCOMessageView_templateForMainHeader:)]) { + if (![[self delegate] respondsToSelector:@selector(MCOMessageView:templateForMainHeader:)]) { return nil; } - return [[self delegate] MCOMessageView_templateForMainHeader:self]; + return [[self delegate] MCOMessageView:self templateForMainHeader:header]; } -- (NSString *) MCOAbstractMessage_templateForImage:(MCOAbstractMessage *)msg +- (NSString *) MCOAbstractMessage:(MCOAbstractMessage *)msg templateForImage:(MCOAbstractPart *)part { NSString * templateString; - if ([[self delegate] respondsToSelector:@selector(MCOMessageView_templateForImage:)]) { - templateString = [[self delegate] MCOMessageView_templateForImage:self]; + if ([[self delegate] respondsToSelector:@selector(MCOMessageView:templateForImage:)]) { + templateString = [[self delegate] MCOMessageView:self templateForImage:part]; } else { templateString = @"<img src=\"{{URL}}\"/>"; @@ -247,12 +255,12 @@ return templateString; } -- (NSString *) MCOAbstractMessage_templateForAttachment:(MCOAbstractMessage *)msg +- (NSString *) MCOAbstractMessage:(MCOAbstractMessage *)msg templateForAttachment:(MCOAbstractPart *)part { - if (![[self delegate] respondsToSelector:@selector(MCOMessageView_templateForAttachment:)]) { + if (![[self delegate] respondsToSelector:@selector(MCOMessageView:templateForAttachment:)]) { return NULL; } - NSString * templateString = [[self delegate] MCOMessageView_templateForAttachment:self]; + NSString * templateString = [[self delegate] MCOMessageView:self templateForAttachment:part]; templateString = [NSString stringWithFormat:@"<div id=\"{{CONTENTID}}\">%@</div>", templateString]; return templateString; } @@ -265,20 +273,20 @@ return [[self delegate] MCOMessageView_templateForMessage:self]; } -- (NSString *) MCOAbstractMessage_templateForEmbeddedMessage:(MCOAbstractMessage *)msg +- (NSString *) MCOAbstractMessage:(MCOAbstractMessage *)msg templateForEmbeddedMessage:(MCOAbstractMessagePart *)part { - if (![[self delegate] respondsToSelector:@selector(MCOMessageView_templateForEmbeddedMessage:)]) { + if (![[self delegate] respondsToSelector:@selector(MCOMessageView:templateForEmbeddedMessage:)]) { return NULL; } - return [[self delegate] MCOMessageView_templateForEmbeddedMessage:self]; + return [[self delegate] MCOMessageView:self templateForEmbeddedMessage:part]; } -- (NSString *) MCOAbstractMessage_templateForEmbeddedMessageHeader:(MCOAbstractMessage *)msg +- (NSString *) MCOAbstractMessage:(MCOAbstractMessage *)msg templateForEmbeddedMessageHeader:(MCOMessageHeader *)header { - if (![[self delegate] respondsToSelector:@selector(MCOMessageView_templateForEmbeddedMessageHeader:)]) { + if (![[self delegate] respondsToSelector:@selector(MCOMessageView:templateForEmbeddedMessageHeader:)]) { return NULL; } - return [[self delegate] MCOMessageView_templateForEmbeddedMessageHeader:self]; + return [[self delegate] MCOMessageView:self templateForEmbeddedMessageHeader:header]; } - (NSString *) MCOAbstractMessage_templateForAttachmentSeparator:(MCOAbstractMessage *)msg |