/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM nsIMsgCompFields.idl
 */

#ifndef __gen_nsIMsgCompFields_h__
#define __gen_nsIMsgCompFields_h__


#ifndef __gen_nsISupports_h__
#include "nsISupports.h"
#endif

#ifndef __gen_nsIMsgRecipientArray_h__
#include "nsIMsgRecipientArray.h"
#endif

#ifndef __gen_nsIMsgAttachment_h__
#include "nsIMsgAttachment.h"
#endif

#ifndef __gen_nsISupportsArray_h__
#include "nsISupportsArray.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif

/* starting interface:    nsIMsgCompFields */
#define NS_IMSGCOMPFIELDS_IID_STR "f5a85828-e9ef-4821-a045-6dc7a09351d6"

#define NS_IMSGCOMPFIELDS_IID \
  {0xf5a85828, 0xe9ef, 0x4821, \
    { 0xa0, 0x45, 0x6d, 0xc7, 0xa0, 0x93, 0x51, 0xd6 }}

class NS_NO_VTABLE nsIMsgCompFields : public nsISupports {
 public: 

  NS_DEFINE_STATIC_IID_ACCESSOR(NS_IMSGCOMPFIELDS_IID)

  /* attribute AString from; */
  NS_IMETHOD GetFrom(nsAString & aFrom) = 0;
  NS_IMETHOD SetFrom(const nsAString & aFrom) = 0;

  /* attribute AString replyTo; */
  NS_IMETHOD GetReplyTo(nsAString & aReplyTo) = 0;
  NS_IMETHOD SetReplyTo(const nsAString & aReplyTo) = 0;

  /* attribute AString to; */
  NS_IMETHOD GetTo(nsAString & aTo) = 0;
  NS_IMETHOD SetTo(const nsAString & aTo) = 0;

  /* attribute AString cc; */
  NS_IMETHOD GetCc(nsAString & aCc) = 0;
  NS_IMETHOD SetCc(const nsAString & aCc) = 0;

  /* attribute AString bcc; */
  NS_IMETHOD GetBcc(nsAString & aBcc) = 0;
  NS_IMETHOD SetBcc(const nsAString & aBcc) = 0;

  /* attribute AString fcc; */
  NS_IMETHOD GetFcc(nsAString & aFcc) = 0;
  NS_IMETHOD SetFcc(const nsAString & aFcc) = 0;

  /* attribute AString fcc2; */
  NS_IMETHOD GetFcc2(nsAString & aFcc2) = 0;
  NS_IMETHOD SetFcc2(const nsAString & aFcc2) = 0;

  /* attribute AString newsgroups; */
  NS_IMETHOD GetNewsgroups(nsAString & aNewsgroups) = 0;
  NS_IMETHOD SetNewsgroups(const nsAString & aNewsgroups) = 0;

  /* attribute string newshost; */
  NS_IMETHOD GetNewshost(char * *aNewshost) = 0;
  NS_IMETHOD SetNewshost(const char * aNewshost) = 0;

  /* attribute string newspostUrl; */
  NS_IMETHOD GetNewspostUrl(char * *aNewspostUrl) = 0;
  NS_IMETHOD SetNewspostUrl(const char * aNewspostUrl) = 0;

  /* attribute string followupTo; */
  NS_IMETHOD GetFollowupTo(char * *aFollowupTo) = 0;
  NS_IMETHOD SetFollowupTo(const char * aFollowupTo) = 0;

  /* attribute AString subject; */
  NS_IMETHOD GetSubject(nsAString & aSubject) = 0;
  NS_IMETHOD SetSubject(const nsAString & aSubject) = 0;

  /**
   * attachments
   *
   * @OBSOLETE, DO NOT USE ANYMORE
   */
  /* attribute string attachments; */
  NS_IMETHOD GetAttachments(char * *aAttachments) = 0;
  NS_IMETHOD SetAttachments(const char * aAttachments) = 0;

  /* attribute AString organization; */
  NS_IMETHOD GetOrganization(nsAString & aOrganization) = 0;
  NS_IMETHOD SetOrganization(const nsAString & aOrganization) = 0;

  /* attribute string references; */
  NS_IMETHOD GetReferences(char * *aReferences) = 0;
  NS_IMETHOD SetReferences(const char * aReferences) = 0;

  /* attribute string priority; */
  NS_IMETHOD GetPriority(char * *aPriority) = 0;
  NS_IMETHOD SetPriority(const char * aPriority) = 0;

  /* attribute string messageId; */
  NS_IMETHOD GetMessageId(char * *aMessageId) = 0;
  NS_IMETHOD SetMessageId(const char * aMessageId) = 0;

  /* attribute string characterSet; */
  NS_IMETHOD GetCharacterSet(char * *aCharacterSet) = 0;
  NS_IMETHOD SetCharacterSet(const char * aCharacterSet) = 0;

  /* readonly attribute string defaultCharacterSet; */
  NS_IMETHOD GetDefaultCharacterSet(char * *aDefaultCharacterSet) = 0;

  /* attribute AString templateName; */
  NS_IMETHOD GetTemplateName(nsAString & aTemplateName) = 0;
  NS_IMETHOD SetTemplateName(const nsAString & aTemplateName) = 0;

  /* attribute string draftId; */
  NS_IMETHOD GetDraftId(char * *aDraftId) = 0;
  NS_IMETHOD SetDraftId(const char * aDraftId) = 0;

  /* attribute boolean returnReceipt; */
  NS_IMETHOD GetReturnReceipt(PRBool *aReturnReceipt) = 0;
  NS_IMETHOD SetReturnReceipt(PRBool aReturnReceipt) = 0;

  /* attribute long receiptHeaderType; */
  NS_IMETHOD GetReceiptHeaderType(PRInt32 *aReceiptHeaderType) = 0;
  NS_IMETHOD SetReceiptHeaderType(PRInt32 aReceiptHeaderType) = 0;

  /* attribute boolean attachVCard; */
  NS_IMETHOD GetAttachVCard(PRBool *aAttachVCard) = 0;
  NS_IMETHOD SetAttachVCard(PRBool aAttachVCard) = 0;

  /* attribute boolean forcePlainText; */
  NS_IMETHOD GetForcePlainText(PRBool *aForcePlainText) = 0;
  NS_IMETHOD SetForcePlainText(PRBool aForcePlainText) = 0;

  /* attribute boolean useMultipartAlternative; */
  NS_IMETHOD GetUseMultipartAlternative(PRBool *aUseMultipartAlternative) = 0;
  NS_IMETHOD SetUseMultipartAlternative(PRBool aUseMultipartAlternative) = 0;

  /* attribute boolean uuEncodeAttachments; */
  NS_IMETHOD GetUuEncodeAttachments(PRBool *aUuEncodeAttachments) = 0;
  NS_IMETHOD SetUuEncodeAttachments(PRBool aUuEncodeAttachments) = 0;

  /* attribute boolean bodyIsAsciiOnly; */
  NS_IMETHOD GetBodyIsAsciiOnly(PRBool *aBodyIsAsciiOnly) = 0;
  NS_IMETHOD SetBodyIsAsciiOnly(PRBool aBodyIsAsciiOnly) = 0;

  /* attribute boolean forceMsgEncoding; */
  NS_IMETHOD GetForceMsgEncoding(PRBool *aForceMsgEncoding) = 0;
  NS_IMETHOD SetForceMsgEncoding(PRBool aForceMsgEncoding) = 0;

  /* attribute AString otherRandomHeaders; */
  NS_IMETHOD GetOtherRandomHeaders(nsAString & aOtherRandomHeaders) = 0;
  NS_IMETHOD SetOtherRandomHeaders(const nsAString & aOtherRandomHeaders) = 0;

  /* attribute AString body; */
  NS_IMETHOD GetBody(nsAString & aBody) = 0;
  NS_IMETHOD SetBody(const nsAString & aBody) = 0;

  /**
   * temporaryFiles
   *
   * @OBSOLETE, DO NOT USE ANYMORE
   */
  /* attribute string temporaryFiles; */
  NS_IMETHOD GetTemporaryFiles(char * *aTemporaryFiles) = 0;
  NS_IMETHOD SetTemporaryFiles(const char * aTemporaryFiles) = 0;

  /* readonly attribute nsISupportsArray attachmentsArray; */
  NS_IMETHOD GetAttachmentsArray(nsISupportsArray * *aAttachmentsArray) = 0;

  /* void addAttachment (in nsIMsgAttachment attachment); */
  NS_IMETHOD AddAttachment(nsIMsgAttachment *attachment) = 0;

  /* void removeAttachment (in nsIMsgAttachment attachment); */
  NS_IMETHOD RemoveAttachment(nsIMsgAttachment *attachment) = 0;

  /* void removeAttachments (); */
  NS_IMETHOD RemoveAttachments(void) = 0;

  /* nsIMsgRecipientArray SplitRecipients (in wstring recipients, in boolean emailAddressOnly); */
  NS_IMETHOD SplitRecipients(const PRUnichar *recipients, PRBool emailAddressOnly, nsIMsgRecipientArray **_retval) = 0;

  /* void ConvertBodyToPlainText (); */
  NS_IMETHOD ConvertBodyToPlainText(void) = 0;

  /* boolean checkCharsetConversion (out string fallbackCharset); */
  NS_IMETHOD CheckCharsetConversion(char **fallbackCharset, PRBool *_retval) = 0;

  /** 
   * Indicates whether we need to check if the current |DocumentCharset|
   * can represent all the characters in the message body. It should be
   * initialized to true and set to false when 'Send Anyway' is selected
   * by a user. (bug 249530)
   */
  /* attribute boolean needToCheckCharset; */
  NS_IMETHOD GetNeedToCheckCharset(PRBool *aNeedToCheckCharset) = 0;
  NS_IMETHOD SetNeedToCheckCharset(PRBool aNeedToCheckCharset) = 0;

  /* attribute nsISupports securityInfo; */
  NS_IMETHOD GetSecurityInfo(nsISupports * *aSecurityInfo) = 0;
  NS_IMETHOD SetSecurityInfo(nsISupports * aSecurityInfo) = 0;

};

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIMSGCOMPFIELDS \
  NS_IMETHOD GetFrom(nsAString & aFrom); \
  NS_IMETHOD SetFrom(const nsAString & aFrom); \
  NS_IMETHOD GetReplyTo(nsAString & aReplyTo); \
  NS_IMETHOD SetReplyTo(const nsAString & aReplyTo); \
  NS_IMETHOD GetTo(nsAString & aTo); \
  NS_IMETHOD SetTo(const nsAString & aTo); \
  NS_IMETHOD GetCc(nsAString & aCc); \
  NS_IMETHOD SetCc(const nsAString & aCc); \
  NS_IMETHOD GetBcc(nsAString & aBcc); \
  NS_IMETHOD SetBcc(const nsAString & aBcc); \
  NS_IMETHOD GetFcc(nsAString & aFcc); \
  NS_IMETHOD SetFcc(const nsAString & aFcc); \
  NS_IMETHOD GetFcc2(nsAString & aFcc2); \
  NS_IMETHOD SetFcc2(const nsAString & aFcc2); \
  NS_IMETHOD GetNewsgroups(nsAString & aNewsgroups); \
  NS_IMETHOD SetNewsgroups(const nsAString & aNewsgroups); \
  NS_IMETHOD GetNewshost(char * *aNewshost); \
  NS_IMETHOD SetNewshost(const char * aNewshost); \
  NS_IMETHOD GetNewspostUrl(char * *aNewspostUrl); \
  NS_IMETHOD SetNewspostUrl(const char * aNewspostUrl); \
  NS_IMETHOD GetFollowupTo(char * *aFollowupTo); \
  NS_IMETHOD SetFollowupTo(const char * aFollowupTo); \
  NS_IMETHOD GetSubject(nsAString & aSubject); \
  NS_IMETHOD SetSubject(const nsAString & aSubject); \
  NS_IMETHOD GetAttachments(char * *aAttachments); \
  NS_IMETHOD SetAttachments(const char * aAttachments); \
  NS_IMETHOD GetOrganization(nsAString & aOrganization); \
  NS_IMETHOD SetOrganization(const nsAString & aOrganization); \
  NS_IMETHOD GetReferences(char * *aReferences); \
  NS_IMETHOD SetReferences(const char * aReferences); \
  NS_IMETHOD GetPriority(char * *aPriority); \
  NS_IMETHOD SetPriority(const char * aPriority); \
  NS_IMETHOD GetMessageId(char * *aMessageId); \
  NS_IMETHOD SetMessageId(const char * aMessageId); \
  NS_IMETHOD GetCharacterSet(char * *aCharacterSet); \
  NS_IMETHOD SetCharacterSet(const char * aCharacterSet); \
  NS_IMETHOD GetDefaultCharacterSet(char * *aDefaultCharacterSet); \
  NS_IMETHOD GetTemplateName(nsAString & aTemplateName); \
  NS_IMETHOD SetTemplateName(const nsAString & aTemplateName); \
  NS_IMETHOD GetDraftId(char * *aDraftId); \
  NS_IMETHOD SetDraftId(const char * aDraftId); \
  NS_IMETHOD GetReturnReceipt(PRBool *aReturnReceipt); \
  NS_IMETHOD SetReturnReceipt(PRBool aReturnReceipt); \
  NS_IMETHOD GetReceiptHeaderType(PRInt32 *aReceiptHeaderType); \
  NS_IMETHOD SetReceiptHeaderType(PRInt32 aReceiptHeaderType); \
  NS_IMETHOD GetAttachVCard(PRBool *aAttachVCard); \
  NS_IMETHOD SetAttachVCard(PRBool aAttachVCard); \
  NS_IMETHOD GetForcePlainText(PRBool *aForcePlainText); \
  NS_IMETHOD SetForcePlainText(PRBool aForcePlainText); \
  NS_IMETHOD GetUseMultipartAlternative(PRBool *aUseMultipartAlternative); \
  NS_IMETHOD SetUseMultipartAlternative(PRBool aUseMultipartAlternative); \
  NS_IMETHOD GetUuEncodeAttachments(PRBool *aUuEncodeAttachments); \
  NS_IMETHOD SetUuEncodeAttachments(PRBool aUuEncodeAttachments); \
  NS_IMETHOD GetBodyIsAsciiOnly(PRBool *aBodyIsAsciiOnly); \
  NS_IMETHOD SetBodyIsAsciiOnly(PRBool aBodyIsAsciiOnly); \
  NS_IMETHOD GetForceMsgEncoding(PRBool *aForceMsgEncoding); \
  NS_IMETHOD SetForceMsgEncoding(PRBool aForceMsgEncoding); \
  NS_IMETHOD GetOtherRandomHeaders(nsAString & aOtherRandomHeaders); \
  NS_IMETHOD SetOtherRandomHeaders(const nsAString & aOtherRandomHeaders); \
  NS_IMETHOD GetBody(nsAString & aBody); \
  NS_IMETHOD SetBody(const nsAString & aBody); \
  NS_IMETHOD GetTemporaryFiles(char * *aTemporaryFiles); \
  NS_IMETHOD SetTemporaryFiles(const char * aTemporaryFiles); \
  NS_IMETHOD GetAttachmentsArray(nsISupportsArray * *aAttachmentsArray); \
  NS_IMETHOD AddAttachment(nsIMsgAttachment *attachment); \
  NS_IMETHOD RemoveAttachment(nsIMsgAttachment *attachment); \
  NS_IMETHOD RemoveAttachments(void); \
  NS_IMETHOD SplitRecipients(const PRUnichar *recipients, PRBool emailAddressOnly, nsIMsgRecipientArray **_retval); \
  NS_IMETHOD ConvertBodyToPlainText(void); \
  NS_IMETHOD CheckCharsetConversion(char **fallbackCharset, PRBool *_retval); \
  NS_IMETHOD GetNeedToCheckCharset(PRBool *aNeedToCheckCharset); \
  NS_IMETHOD SetNeedToCheckCharset(PRBool aNeedToCheckCharset); \
  NS_IMETHOD GetSecurityInfo(nsISupports * *aSecurityInfo); \
  NS_IMETHOD SetSecurityInfo(nsISupports * aSecurityInfo); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIMSGCOMPFIELDS(_to) \
  NS_IMETHOD GetFrom(nsAString & aFrom) { return _to GetFrom(aFrom); } \
  NS_IMETHOD SetFrom(const nsAString & aFrom) { return _to SetFrom(aFrom); } \
  NS_IMETHOD GetReplyTo(nsAString & aReplyTo) { return _to GetReplyTo(aReplyTo); } \
  NS_IMETHOD SetReplyTo(const nsAString & aReplyTo) { return _to SetReplyTo(aReplyTo); } \
  NS_IMETHOD GetTo(nsAString & aTo) { return _to GetTo(aTo); } \
  NS_IMETHOD SetTo(const nsAString & aTo) { return _to SetTo(aTo); } \
  NS_IMETHOD GetCc(nsAString & aCc) { return _to GetCc(aCc); } \
  NS_IMETHOD SetCc(const nsAString & aCc) { return _to SetCc(aCc); } \
  NS_IMETHOD GetBcc(nsAString & aBcc) { return _to GetBcc(aBcc); } \
  NS_IMETHOD SetBcc(const nsAString & aBcc) { return _to SetBcc(aBcc); } \
  NS_IMETHOD GetFcc(nsAString & aFcc) { return _to GetFcc(aFcc); } \
  NS_IMETHOD SetFcc(const nsAString & aFcc) { return _to SetFcc(aFcc); } \
  NS_IMETHOD GetFcc2(nsAString & aFcc2) { return _to GetFcc2(aFcc2); } \
  NS_IMETHOD SetFcc2(const nsAString & aFcc2) { return _to SetFcc2(aFcc2); } \
  NS_IMETHOD GetNewsgroups(nsAString & aNewsgroups) { return _to GetNewsgroups(aNewsgroups); } \
  NS_IMETHOD SetNewsgroups(const nsAString & aNewsgroups) { return _to SetNewsgroups(aNewsgroups); } \
  NS_IMETHOD GetNewshost(char * *aNewshost) { return _to GetNewshost(aNewshost); } \
  NS_IMETHOD SetNewshost(const char * aNewshost) { return _to SetNewshost(aNewshost); } \
  NS_IMETHOD GetNewspostUrl(char * *aNewspostUrl) { return _to GetNewspostUrl(aNewspostUrl); } \
  NS_IMETHOD SetNewspostUrl(const char * aNewspostUrl) { return _to SetNewspostUrl(aNewspostUrl); } \
  NS_IMETHOD GetFollowupTo(char * *aFollowupTo) { return _to GetFollowupTo(aFollowupTo); } \
  NS_IMETHOD SetFollowupTo(const char * aFollowupTo) { return _to SetFollowupTo(aFollowupTo); } \
  NS_IMETHOD GetSubject(nsAString & aSubject) { return _to GetSubject(aSubject); } \
  NS_IMETHOD SetSubject(const nsAString & aSubject) { return _to SetSubject(aSubject); } \
  NS_IMETHOD GetAttachments(char * *aAttachments) { return _to GetAttachments(aAttachments); } \
  NS_IMETHOD SetAttachments(const char * aAttachments) { return _to SetAttachments(aAttachments); } \
  NS_IMETHOD GetOrganization(nsAString & aOrganization) { return _to GetOrganization(aOrganization); } \
  NS_IMETHOD SetOrganization(const nsAString & aOrganization) { return _to SetOrganization(aOrganization); } \
  NS_IMETHOD GetReferences(char * *aReferences) { return _to GetReferences(aReferences); } \
  NS_IMETHOD SetReferences(const char * aReferences) { return _to SetReferences(aReferences); } \
  NS_IMETHOD GetPriority(char * *aPriority) { return _to GetPriority(aPriority); } \
  NS_IMETHOD SetPriority(const char * aPriority) { return _to SetPriority(aPriority); } \
  NS_IMETHOD GetMessageId(char * *aMessageId) { return _to GetMessageId(aMessageId); } \
  NS_IMETHOD SetMessageId(const char * aMessageId) { return _to SetMessageId(aMessageId); } \
  NS_IMETHOD GetCharacterSet(char * *aCharacterSet) { return _to GetCharacterSet(aCharacterSet); } \
  NS_IMETHOD SetCharacterSet(const char * aCharacterSet) { return _to SetCharacterSet(aCharacterSet); } \
  NS_IMETHOD GetDefaultCharacterSet(char * *aDefaultCharacterSet) { return _to GetDefaultCharacterSet(aDefaultCharacterSet); } \
  NS_IMETHOD GetTemplateName(nsAString & aTemplateName) { return _to GetTemplateName(aTemplateName); } \
  NS_IMETHOD SetTemplateName(const nsAString & aTemplateName) { return _to SetTemplateName(aTemplateName); } \
  NS_IMETHOD GetDraftId(char * *aDraftId) { return _to GetDraftId(aDraftId); } \
  NS_IMETHOD SetDraftId(const char * aDraftId) { return _to SetDraftId(aDraftId); } \
  NS_IMETHOD GetReturnReceipt(PRBool *aReturnReceipt) { return _to GetReturnReceipt(aReturnReceipt); } \
  NS_IMETHOD SetReturnReceipt(PRBool aReturnReceipt) { return _to SetReturnReceipt(aReturnReceipt); } \
  NS_IMETHOD GetReceiptHeaderType(PRInt32 *aReceiptHeaderType) { return _to GetReceiptHeaderType(aReceiptHeaderType); } \
  NS_IMETHOD SetReceiptHeaderType(PRInt32 aReceiptHeaderType) { return _to SetReceiptHeaderType(aReceiptHeaderType); } \
  NS_IMETHOD GetAttachVCard(PRBool *aAttachVCard) { return _to GetAttachVCard(aAttachVCard); } \
  NS_IMETHOD SetAttachVCard(PRBool aAttachVCard) { return _to SetAttachVCard(aAttachVCard); } \
  NS_IMETHOD GetForcePlainText(PRBool *aForcePlainText) { return _to GetForcePlainText(aForcePlainText); } \
  NS_IMETHOD SetForcePlainText(PRBool aForcePlainText) { return _to SetForcePlainText(aForcePlainText); } \
  NS_IMETHOD GetUseMultipartAlternative(PRBool *aUseMultipartAlternative) { return _to GetUseMultipartAlternative(aUseMultipartAlternative); } \
  NS_IMETHOD SetUseMultipartAlternative(PRBool aUseMultipartAlternative) { return _to SetUseMultipartAlternative(aUseMultipartAlternative); } \
  NS_IMETHOD GetUuEncodeAttachments(PRBool *aUuEncodeAttachments) { return _to GetUuEncodeAttachments(aUuEncodeAttachments); } \
  NS_IMETHOD SetUuEncodeAttachments(PRBool aUuEncodeAttachments) { return _to SetUuEncodeAttachments(aUuEncodeAttachments); } \
  NS_IMETHOD GetBodyIsAsciiOnly(PRBool *aBodyIsAsciiOnly) { return _to GetBodyIsAsciiOnly(aBodyIsAsciiOnly); } \
  NS_IMETHOD SetBodyIsAsciiOnly(PRBool aBodyIsAsciiOnly) { return _to SetBodyIsAsciiOnly(aBodyIsAsciiOnly); } \
  NS_IMETHOD GetForceMsgEncoding(PRBool *aForceMsgEncoding) { return _to GetForceMsgEncoding(aForceMsgEncoding); } \
  NS_IMETHOD SetForceMsgEncoding(PRBool aForceMsgEncoding) { return _to SetForceMsgEncoding(aForceMsgEncoding); } \
  NS_IMETHOD GetOtherRandomHeaders(nsAString & aOtherRandomHeaders) { return _to GetOtherRandomHeaders(aOtherRandomHeaders); } \
  NS_IMETHOD SetOtherRandomHeaders(const nsAString & aOtherRandomHeaders) { return _to SetOtherRandomHeaders(aOtherRandomHeaders); } \
  NS_IMETHOD GetBody(nsAString & aBody) { return _to GetBody(aBody); } \
  NS_IMETHOD SetBody(const nsAString & aBody) { return _to SetBody(aBody); } \
  NS_IMETHOD GetTemporaryFiles(char * *aTemporaryFiles) { return _to GetTemporaryFiles(aTemporaryFiles); } \
  NS_IMETHOD SetTemporaryFiles(const char * aTemporaryFiles) { return _to SetTemporaryFiles(aTemporaryFiles); } \
  NS_IMETHOD GetAttachmentsArray(nsISupportsArray * *aAttachmentsArray) { return _to GetAttachmentsArray(aAttachmentsArray); } \
  NS_IMETHOD AddAttachment(nsIMsgAttachment *attachment) { return _to AddAttachment(attachment); } \
  NS_IMETHOD RemoveAttachment(nsIMsgAttachment *attachment) { return _to RemoveAttachment(attachment); } \
  NS_IMETHOD RemoveAttachments(void) { return _to RemoveAttachments(); } \
  NS_IMETHOD SplitRecipients(const PRUnichar *recipients, PRBool emailAddressOnly, nsIMsgRecipientArray **_retval) { return _to SplitRecipients(recipients, emailAddressOnly, _retval); } \
  NS_IMETHOD ConvertBodyToPlainText(void) { return _to ConvertBodyToPlainText(); } \
  NS_IMETHOD CheckCharsetConversion(char **fallbackCharset, PRBool *_retval) { return _to CheckCharsetConversion(fallbackCharset, _retval); } \
  NS_IMETHOD GetNeedToCheckCharset(PRBool *aNeedToCheckCharset) { return _to GetNeedToCheckCharset(aNeedToCheckCharset); } \
  NS_IMETHOD SetNeedToCheckCharset(PRBool aNeedToCheckCharset) { return _to SetNeedToCheckCharset(aNeedToCheckCharset); } \
  NS_IMETHOD GetSecurityInfo(nsISupports * *aSecurityInfo) { return _to GetSecurityInfo(aSecurityInfo); } \
  NS_IMETHOD SetSecurityInfo(nsISupports * aSecurityInfo) { return _to SetSecurityInfo(aSecurityInfo); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIMSGCOMPFIELDS(_to) \
  NS_IMETHOD GetFrom(nsAString & aFrom) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFrom(aFrom); } \
  NS_IMETHOD SetFrom(const nsAString & aFrom) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFrom(aFrom); } \
  NS_IMETHOD GetReplyTo(nsAString & aReplyTo) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReplyTo(aReplyTo); } \
  NS_IMETHOD SetReplyTo(const nsAString & aReplyTo) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetReplyTo(aReplyTo); } \
  NS_IMETHOD GetTo(nsAString & aTo) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTo(aTo); } \
  NS_IMETHOD SetTo(const nsAString & aTo) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTo(aTo); } \
  NS_IMETHOD GetCc(nsAString & aCc) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCc(aCc); } \
  NS_IMETHOD SetCc(const nsAString & aCc) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetCc(aCc); } \
  NS_IMETHOD GetBcc(nsAString & aBcc) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBcc(aBcc); } \
  NS_IMETHOD SetBcc(const nsAString & aBcc) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetBcc(aBcc); } \
  NS_IMETHOD GetFcc(nsAString & aFcc) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFcc(aFcc); } \
  NS_IMETHOD SetFcc(const nsAString & aFcc) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFcc(aFcc); } \
  NS_IMETHOD GetFcc2(nsAString & aFcc2) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFcc2(aFcc2); } \
  NS_IMETHOD SetFcc2(const nsAString & aFcc2) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFcc2(aFcc2); } \
  NS_IMETHOD GetNewsgroups(nsAString & aNewsgroups) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNewsgroups(aNewsgroups); } \
  NS_IMETHOD SetNewsgroups(const nsAString & aNewsgroups) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetNewsgroups(aNewsgroups); } \
  NS_IMETHOD GetNewshost(char * *aNewshost) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNewshost(aNewshost); } \
  NS_IMETHOD SetNewshost(const char * aNewshost) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetNewshost(aNewshost); } \
  NS_IMETHOD GetNewspostUrl(char * *aNewspostUrl) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNewspostUrl(aNewspostUrl); } \
  NS_IMETHOD SetNewspostUrl(const char * aNewspostUrl) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetNewspostUrl(aNewspostUrl); } \
  NS_IMETHOD GetFollowupTo(char * *aFollowupTo) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFollowupTo(aFollowupTo); } \
  NS_IMETHOD SetFollowupTo(const char * aFollowupTo) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFollowupTo(aFollowupTo); } \
  NS_IMETHOD GetSubject(nsAString & aSubject) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSubject(aSubject); } \
  NS_IMETHOD SetSubject(const nsAString & aSubject) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetSubject(aSubject); } \
  NS_IMETHOD GetAttachments(char * *aAttachments) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAttachments(aAttachments); } \
  NS_IMETHOD SetAttachments(const char * aAttachments) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAttachments(aAttachments); } \
  NS_IMETHOD GetOrganization(nsAString & aOrganization) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOrganization(aOrganization); } \
  NS_IMETHOD SetOrganization(const nsAString & aOrganization) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetOrganization(aOrganization); } \
  NS_IMETHOD GetReferences(char * *aReferences) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReferences(aReferences); } \
  NS_IMETHOD SetReferences(const char * aReferences) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetReferences(aReferences); } \
  NS_IMETHOD GetPriority(char * *aPriority) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPriority(aPriority); } \
  NS_IMETHOD SetPriority(const char * aPriority) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetPriority(aPriority); } \
  NS_IMETHOD GetMessageId(char * *aMessageId) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMessageId(aMessageId); } \
  NS_IMETHOD SetMessageId(const char * aMessageId) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMessageId(aMessageId); } \
  NS_IMETHOD GetCharacterSet(char * *aCharacterSet) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCharacterSet(aCharacterSet); } \
  NS_IMETHOD SetCharacterSet(const char * aCharacterSet) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetCharacterSet(aCharacterSet); } \
  NS_IMETHOD GetDefaultCharacterSet(char * *aDefaultCharacterSet) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDefaultCharacterSet(aDefaultCharacterSet); } \
  NS_IMETHOD GetTemplateName(nsAString & aTemplateName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTemplateName(aTemplateName); } \
  NS_IMETHOD SetTemplateName(const nsAString & aTemplateName) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTemplateName(aTemplateName); } \
  NS_IMETHOD GetDraftId(char * *aDraftId) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDraftId(aDraftId); } \
  NS_IMETHOD SetDraftId(const char * aDraftId) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDraftId(aDraftId); } \
  NS_IMETHOD GetReturnReceipt(PRBool *aReturnReceipt) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReturnReceipt(aReturnReceipt); } \
  NS_IMETHOD SetReturnReceipt(PRBool aReturnReceipt) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetReturnReceipt(aReturnReceipt); } \
  NS_IMETHOD GetReceiptHeaderType(PRInt32 *aReceiptHeaderType) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetReceiptHeaderType(aReceiptHeaderType); } \
  NS_IMETHOD SetReceiptHeaderType(PRInt32 aReceiptHeaderType) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetReceiptHeaderType(aReceiptHeaderType); } \
  NS_IMETHOD GetAttachVCard(PRBool *aAttachVCard) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAttachVCard(aAttachVCard); } \
  NS_IMETHOD SetAttachVCard(PRBool aAttachVCard) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAttachVCard(aAttachVCard); } \
  NS_IMETHOD GetForcePlainText(PRBool *aForcePlainText) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetForcePlainText(aForcePlainText); } \
  NS_IMETHOD SetForcePlainText(PRBool aForcePlainText) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetForcePlainText(aForcePlainText); } \
  NS_IMETHOD GetUseMultipartAlternative(PRBool *aUseMultipartAlternative) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUseMultipartAlternative(aUseMultipartAlternative); } \
  NS_IMETHOD SetUseMultipartAlternative(PRBool aUseMultipartAlternative) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetUseMultipartAlternative(aUseMultipartAlternative); } \
  NS_IMETHOD GetUuEncodeAttachments(PRBool *aUuEncodeAttachments) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUuEncodeAttachments(aUuEncodeAttachments); } \
  NS_IMETHOD SetUuEncodeAttachments(PRBool aUuEncodeAttachments) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetUuEncodeAttachments(aUuEncodeAttachments); } \
  NS_IMETHOD GetBodyIsAsciiOnly(PRBool *aBodyIsAsciiOnly) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBodyIsAsciiOnly(aBodyIsAsciiOnly); } \
  NS_IMETHOD SetBodyIsAsciiOnly(PRBool aBodyIsAsciiOnly) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetBodyIsAsciiOnly(aBodyIsAsciiOnly); } \
  NS_IMETHOD GetForceMsgEncoding(PRBool *aForceMsgEncoding) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetForceMsgEncoding(aForceMsgEncoding); } \
  NS_IMETHOD SetForceMsgEncoding(PRBool aForceMsgEncoding) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetForceMsgEncoding(aForceMsgEncoding); } \
  NS_IMETHOD GetOtherRandomHeaders(nsAString & aOtherRandomHeaders) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOtherRandomHeaders(aOtherRandomHeaders); } \
  NS_IMETHOD SetOtherRandomHeaders(const nsAString & aOtherRandomHeaders) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetOtherRandomHeaders(aOtherRandomHeaders); } \
  NS_IMETHOD GetBody(nsAString & aBody) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBody(aBody); } \
  NS_IMETHOD SetBody(const nsAString & aBody) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetBody(aBody); } \
  NS_IMETHOD GetTemporaryFiles(char * *aTemporaryFiles) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTemporaryFiles(aTemporaryFiles); } \
  NS_IMETHOD SetTemporaryFiles(const char * aTemporaryFiles) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTemporaryFiles(aTemporaryFiles); } \
  NS_IMETHOD GetAttachmentsArray(nsISupportsArray * *aAttachmentsArray) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAttachmentsArray(aAttachmentsArray); } \
  NS_IMETHOD AddAttachment(nsIMsgAttachment *attachment) { return !_to ? NS_ERROR_NULL_POINTER : _to->AddAttachment(attachment); } \
  NS_IMETHOD RemoveAttachment(nsIMsgAttachment *attachment) { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveAttachment(attachment); } \
  NS_IMETHOD RemoveAttachments(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveAttachments(); } \
  NS_IMETHOD SplitRecipients(const PRUnichar *recipients, PRBool emailAddressOnly, nsIMsgRecipientArray **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->SplitRecipients(recipients, emailAddressOnly, _retval); } \
  NS_IMETHOD ConvertBodyToPlainText(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->ConvertBodyToPlainText(); } \
  NS_IMETHOD CheckCharsetConversion(char **fallbackCharset, PRBool *_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->CheckCharsetConversion(fallbackCharset, _retval); } \
  NS_IMETHOD GetNeedToCheckCharset(PRBool *aNeedToCheckCharset) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNeedToCheckCharset(aNeedToCheckCharset); } \
  NS_IMETHOD SetNeedToCheckCharset(PRBool aNeedToCheckCharset) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetNeedToCheckCharset(aNeedToCheckCharset); } \
  NS_IMETHOD GetSecurityInfo(nsISupports * *aSecurityInfo) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSecurityInfo(aSecurityInfo); } \
  NS_IMETHOD SetSecurityInfo(nsISupports * aSecurityInfo) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetSecurityInfo(aSecurityInfo); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsMsgCompFields : public nsIMsgCompFields
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIMSGCOMPFIELDS

  nsMsgCompFields();

private:
  ~nsMsgCompFields();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsMsgCompFields, nsIMsgCompFields)

nsMsgCompFields::nsMsgCompFields()
{
  /* member initializers and constructor code */
}

nsMsgCompFields::~nsMsgCompFields()
{
  /* destructor code */
}

/* attribute AString from; */
NS_IMETHODIMP nsMsgCompFields::GetFrom(nsAString & aFrom)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetFrom(const nsAString & aFrom)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString replyTo; */
NS_IMETHODIMP nsMsgCompFields::GetReplyTo(nsAString & aReplyTo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetReplyTo(const nsAString & aReplyTo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString to; */
NS_IMETHODIMP nsMsgCompFields::GetTo(nsAString & aTo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetTo(const nsAString & aTo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString cc; */
NS_IMETHODIMP nsMsgCompFields::GetCc(nsAString & aCc)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetCc(const nsAString & aCc)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString bcc; */
NS_IMETHODIMP nsMsgCompFields::GetBcc(nsAString & aBcc)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetBcc(const nsAString & aBcc)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString fcc; */
NS_IMETHODIMP nsMsgCompFields::GetFcc(nsAString & aFcc)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetFcc(const nsAString & aFcc)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString fcc2; */
NS_IMETHODIMP nsMsgCompFields::GetFcc2(nsAString & aFcc2)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetFcc2(const nsAString & aFcc2)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString newsgroups; */
NS_IMETHODIMP nsMsgCompFields::GetNewsgroups(nsAString & aNewsgroups)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetNewsgroups(const nsAString & aNewsgroups)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string newshost; */
NS_IMETHODIMP nsMsgCompFields::GetNewshost(char * *aNewshost)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetNewshost(const char * aNewshost)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string newspostUrl; */
NS_IMETHODIMP nsMsgCompFields::GetNewspostUrl(char * *aNewspostUrl)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetNewspostUrl(const char * aNewspostUrl)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string followupTo; */
NS_IMETHODIMP nsMsgCompFields::GetFollowupTo(char * *aFollowupTo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetFollowupTo(const char * aFollowupTo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString subject; */
NS_IMETHODIMP nsMsgCompFields::GetSubject(nsAString & aSubject)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetSubject(const nsAString & aSubject)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string attachments; */
NS_IMETHODIMP nsMsgCompFields::GetAttachments(char * *aAttachments)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetAttachments(const char * aAttachments)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString organization; */
NS_IMETHODIMP nsMsgCompFields::GetOrganization(nsAString & aOrganization)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetOrganization(const nsAString & aOrganization)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string references; */
NS_IMETHODIMP nsMsgCompFields::GetReferences(char * *aReferences)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetReferences(const char * aReferences)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string priority; */
NS_IMETHODIMP nsMsgCompFields::GetPriority(char * *aPriority)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetPriority(const char * aPriority)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string messageId; */
NS_IMETHODIMP nsMsgCompFields::GetMessageId(char * *aMessageId)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetMessageId(const char * aMessageId)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string characterSet; */
NS_IMETHODIMP nsMsgCompFields::GetCharacterSet(char * *aCharacterSet)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetCharacterSet(const char * aCharacterSet)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute string defaultCharacterSet; */
NS_IMETHODIMP nsMsgCompFields::GetDefaultCharacterSet(char * *aDefaultCharacterSet)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString templateName; */
NS_IMETHODIMP nsMsgCompFields::GetTemplateName(nsAString & aTemplateName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetTemplateName(const nsAString & aTemplateName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string draftId; */
NS_IMETHODIMP nsMsgCompFields::GetDraftId(char * *aDraftId)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetDraftId(const char * aDraftId)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean returnReceipt; */
NS_IMETHODIMP nsMsgCompFields::GetReturnReceipt(PRBool *aReturnReceipt)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetReturnReceipt(PRBool aReturnReceipt)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute long receiptHeaderType; */
NS_IMETHODIMP nsMsgCompFields::GetReceiptHeaderType(PRInt32 *aReceiptHeaderType)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetReceiptHeaderType(PRInt32 aReceiptHeaderType)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean attachVCard; */
NS_IMETHODIMP nsMsgCompFields::GetAttachVCard(PRBool *aAttachVCard)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetAttachVCard(PRBool aAttachVCard)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean forcePlainText; */
NS_IMETHODIMP nsMsgCompFields::GetForcePlainText(PRBool *aForcePlainText)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetForcePlainText(PRBool aForcePlainText)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean useMultipartAlternative; */
NS_IMETHODIMP nsMsgCompFields::GetUseMultipartAlternative(PRBool *aUseMultipartAlternative)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetUseMultipartAlternative(PRBool aUseMultipartAlternative)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean uuEncodeAttachments; */
NS_IMETHODIMP nsMsgCompFields::GetUuEncodeAttachments(PRBool *aUuEncodeAttachments)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetUuEncodeAttachments(PRBool aUuEncodeAttachments)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean bodyIsAsciiOnly; */
NS_IMETHODIMP nsMsgCompFields::GetBodyIsAsciiOnly(PRBool *aBodyIsAsciiOnly)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetBodyIsAsciiOnly(PRBool aBodyIsAsciiOnly)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean forceMsgEncoding; */
NS_IMETHODIMP nsMsgCompFields::GetForceMsgEncoding(PRBool *aForceMsgEncoding)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetForceMsgEncoding(PRBool aForceMsgEncoding)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString otherRandomHeaders; */
NS_IMETHODIMP nsMsgCompFields::GetOtherRandomHeaders(nsAString & aOtherRandomHeaders)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetOtherRandomHeaders(const nsAString & aOtherRandomHeaders)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AString body; */
NS_IMETHODIMP nsMsgCompFields::GetBody(nsAString & aBody)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetBody(const nsAString & aBody)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string temporaryFiles; */
NS_IMETHODIMP nsMsgCompFields::GetTemporaryFiles(char * *aTemporaryFiles)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetTemporaryFiles(const char * aTemporaryFiles)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsISupportsArray attachmentsArray; */
NS_IMETHODIMP nsMsgCompFields::GetAttachmentsArray(nsISupportsArray * *aAttachmentsArray)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void addAttachment (in nsIMsgAttachment attachment); */
NS_IMETHODIMP nsMsgCompFields::AddAttachment(nsIMsgAttachment *attachment)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void removeAttachment (in nsIMsgAttachment attachment); */
NS_IMETHODIMP nsMsgCompFields::RemoveAttachment(nsIMsgAttachment *attachment)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void removeAttachments (); */
NS_IMETHODIMP nsMsgCompFields::RemoveAttachments()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsIMsgRecipientArray SplitRecipients (in wstring recipients, in boolean emailAddressOnly); */
NS_IMETHODIMP nsMsgCompFields::SplitRecipients(const PRUnichar *recipients, PRBool emailAddressOnly, nsIMsgRecipientArray **_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void ConvertBodyToPlainText (); */
NS_IMETHODIMP nsMsgCompFields::ConvertBodyToPlainText()
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* boolean checkCharsetConversion (out string fallbackCharset); */
NS_IMETHODIMP nsMsgCompFields::CheckCharsetConversion(char **fallbackCharset, PRBool *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean needToCheckCharset; */
NS_IMETHODIMP nsMsgCompFields::GetNeedToCheckCharset(PRBool *aNeedToCheckCharset)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetNeedToCheckCharset(PRBool aNeedToCheckCharset)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsISupports securityInfo; */
NS_IMETHODIMP nsMsgCompFields::GetSecurityInfo(nsISupports * *aSecurityInfo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgCompFields::SetSecurityInfo(nsISupports * aSecurityInfo)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


#endif /* __gen_nsIMsgCompFields_h__ */
