diff options
Diffstat (limited to 'mailnews/mime/src/mimecom.cpp')
-rw-r--r-- | mailnews/mime/src/mimecom.cpp | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/mailnews/mime/src/mimecom.cpp b/mailnews/mime/src/mimecom.cpp new file mode 100644 index 000000000..384542742 --- /dev/null +++ b/mailnews/mime/src/mimecom.cpp @@ -0,0 +1,74 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ +#include "mimei.h" +#include "mimeobj.h" /* MimeObject (abstract) */ +#include "mimecont.h" /* |--- MimeContainer (abstract) */ +#include "mimemult.h" /* | |--- MimeMultipart (abstract) */ +#include "mimemsig.h" /* | | |--- MimeMultipartSigned (abstract)*/ +#include "mimetext.h" /* | |--- MimeInlineText (abstract) */ +#include "mimecryp.h" +#include "mimecth.h" + +/* + * These calls are necessary to expose the object class hierarchy + * to externally developed content type handlers. + */ +extern "C" void * +XPCOM_GetmimeInlineTextClass(void) +{ + return (void *) &mimeInlineTextClass; +} + +extern "C" void * +XPCOM_GetmimeLeafClass(void) +{ + return (void *) &mimeLeafClass; +} + +extern "C" void * +XPCOM_GetmimeObjectClass(void) +{ + return (void *) &mimeObjectClass; +} + +extern "C" void * +XPCOM_GetmimeContainerClass(void) +{ + return (void *) &mimeContainerClass; +} + +extern "C" void * +XPCOM_GetmimeMultipartClass(void) +{ + return (void *) &mimeMultipartClass; +} + +extern "C" void * +XPCOM_GetmimeMultipartSignedClass(void) +{ + return (void *) &mimeMultipartSignedClass; +} + +extern "C" void * +XPCOM_GetmimeEncryptedClass(void) +{ + return (void *) &mimeEncryptedClass; +} + +extern "C" int +XPCOM_MimeObject_write(void *mimeObject, + char *data, + int32_t length, + bool user_visible_p) +{ + return MIME_MimeObject_write((MimeObject *)mimeObject, data, + length, user_visible_p); +} + +extern "C" void * +XPCOM_Mime_create(char *content_type, void* hdrs, void* opts) +{ + return mime_create(content_type, (MimeHeaders *)hdrs, (MimeDisplayOptions *)opts); +} |