blob: 08997c84901c2ff89ac05db3edd8f9c121f62154 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
//
// MCOAbstractMessageRendererCallback.h
// mailcore2
//
// Created by DINH Viêt Hoà on 3/23/13.
// Copyright (c) 2013 MailCore. All rights reserved.
//
#ifndef MAILCORE_MCOABSTRACTMESSAGERENDERECALLBACK_H
#define MAILCORE_MCOABSTRACTMESSAGERENDERECALLBACK_H
#include "MCIMAP.h"
#include "MCRenderer.h"
#if defined(__cplusplus) && defined(__OBJC__)
@class MCOAbstractMessage;
@protocol MCOHTMLRendererDelegate;
@protocol MCOHTMLRendererIMAPDelegate;
class MCOAbstractMessageRendererCallback : public mailcore::Object, public mailcore::HTMLRendererTemplateCallback, public mailcore::HTMLRendererIMAPCallback {
public:
MCOAbstractMessageRendererCallback(MCOAbstractMessage * message, id <MCOHTMLRendererDelegate> rendererDelegate,
id <MCOHTMLRendererIMAPDelegate> rendererIMAPDelegate);
virtual bool canPreviewPart(mailcore::AbstractPart * part);
virtual bool shouldShowPart(mailcore::AbstractPart * part);
virtual mailcore::HashMap * templateValuesForHeader(mailcore::MessageHeader * header);
virtual mailcore::HashMap * templateValuesForPart(mailcore::AbstractPart * part);
virtual mailcore::String * templateForMainHeader(mailcore::MessageHeader * header);
virtual mailcore::String * templateForImage(mailcore::AbstractPart * part);
virtual mailcore::String * templateForAttachment(mailcore::AbstractPart * part);
virtual mailcore::String * templateForMessage(mailcore::AbstractMessage * message);
virtual mailcore::String * templateForEmbeddedMessage(mailcore::AbstractMessagePart * part);
virtual mailcore::String * templateForEmbeddedMessageHeader(mailcore::MessageHeader * header);
virtual mailcore::String * templateForAttachmentSeparator();
virtual mailcore::String * filterHTMLForPart(mailcore::String * html);
virtual mailcore::String * filterHTMLForMessage(mailcore::String * html);
virtual mailcore::Data * dataForIMAPPart(mailcore::String * folder, mailcore::IMAPPart * part);
virtual void prefetchAttachmentIMAPPart(mailcore::String * folder, mailcore::IMAPPart * part);
virtual void prefetchImageIMAPPart(mailcore::String * folder, mailcore::IMAPPart * part);
private:
MCOAbstractMessage * mMessage;
id <MCOHTMLRendererDelegate> mRendererDelegate;
id <MCOHTMLRendererIMAPDelegate> mIMAPDelegate;
};
#endif
#endif
|