Projet Bee-Honey't  1.0
BTS SN 2019
Fonctions membres publiques | Fonctions membres publiques statiques | Attributs publics | Liste de tous les membres
Référence de la classe SimpleMail::MimeMessagePrivate

#include <mimemessage_p.h>

Graphe de collaboration de SimpleMail::MimeMessagePrivate:
Collaboration graph

Fonctions membres publiques

 ~MimeMessagePrivate ()
 

Fonctions membres publiques statiques

static QByteArray encode (const QByteArray &addressKind, const QList< EmailAddress > &emails, MimePart::Encoding codec)
 
static QByteArray encodeData (MimePart::Encoding codec, const QString &data, bool autoencoding)
 

Attributs publics

QList< EmailAddressrecipientsTo
 
QList< EmailAddressrecipientsCc
 
QList< EmailAddressrecipientsBcc
 
QString subject
 
EmailAddress sender
 
MimePartcontent = nullptr
 
MimePart::Encoding encoding = MimePart::_8Bit
 
bool autoMimeContentCreated
 

Documentation des constructeurs et destructeur

◆ ~MimeMessagePrivate()

MimeMessagePrivate::~MimeMessagePrivate ( )
215 {
216  delete content;
217 }
MimePart * content
Definition: mimemessage_p.h:40

Documentation des fonctions membres

◆ encode()

QByteArray MimeMessagePrivate::encode ( const QByteArray &  addressKind,
const QList< EmailAddress > &  emails,
MimePart::Encoding  codec 
)
static

Références encodeData().

Référencé par SimpleMail::MimeMessage::write().

220 {
221  if (emails.isEmpty()) {
222  return QByteArray();
223  }
224 
225  QByteArray mime = addressKind;
226  bool first = true;
227  for (const EmailAddress &email : emails) {
228  if (!first) {
229  mime.append(',');
230  } else {
231  first = false;
232  }
233 
234  const QString name = email.name();
235  if (!name.isEmpty()) {
236  mime.append(MimeMessagePrivate::encodeData(codec, name, true));
237  mime.append(" <" + email.address().toLatin1() + '>');
238  } else {
239  mime.append('<' + email.address().toLatin1() + '>');
240  }
241  }
242  mime.append(QByteArrayLiteral("\r\n"));
243 
244  return mime;
245 }
static QByteArray encodeData(MimePart::Encoding codec, const QString &data, bool autoencoding)
Definition: mimemessage.cpp:247
Definition: emailaddress.h:29

◆ encodeData()

QByteArray MimeMessagePrivate::encodeData ( MimePart::Encoding  codec,
const QString &  data,
bool  autoencoding 
)
static

Références SimpleMail::MimePart::Base64, SimpleMail::QuotedPrintable::encode(), et SimpleMail::MimePart::QuotedPrintable.

Référencé par encode(), et SimpleMail::MimeMessage::write().

248 {
249  const QString simpleData = data.simplified();
250  const QByteArray simple = simpleData.toUtf8();
251  if (autoencoding) {
252  if (simpleData.toLatin1() == simple) {
253  return simple;
254  }
255 
256  int printable = 0;
257  int encoded = 0;
258  const QByteArray result = QuotedPrintable::encode(simple, true, &printable, &encoded);
259  int sum = printable + encoded;
260  qCDebug(SIMPLEMAIL_MIMEMSG) << data << result << printable << encoded << sum << ((double) printable/sum) << (encoded/sum);
261  if (sum != 0 && ((double) printable/sum) >= 0.8) {
262  return " =?utf-8?Q?" + result + "?=";
263  } else {
264  return " =?utf-8?B?" + data.toUtf8().toBase64() + "?=";
265  }
266  } else {
267  switch (codec) {
268  case MimePart::Base64:
269  return " =?utf-8?B?" + simple.toBase64() + "?=";
271  return " =?utf-8?Q?" + QuotedPrintable::encode(simple, true) + "?=";
272  default:
273  return ' ' + data.toLatin1();
274  }
275  }
276 }
Definition: mimepart.h:38
static QByteArray encode(const QByteArray &input, bool rfc2047, int *printable=0, int *encoded=0)
Definition: quotedprintable.cpp:61
Definition: mimepart.h:39

Documentation des données membres

◆ autoMimeContentCreated

bool SimpleMail::MimeMessagePrivate::autoMimeContentCreated

◆ content

MimePart* SimpleMail::MimeMessagePrivate::content = nullptr

◆ encoding

MimePart::Encoding SimpleMail::MimeMessagePrivate::encoding = MimePart::_8Bit

◆ recipientsBcc

QList<EmailAddress> SimpleMail::MimeMessagePrivate::recipientsBcc

◆ recipientsCc

QList<EmailAddress> SimpleMail::MimeMessagePrivate::recipientsCc

◆ recipientsTo

QList<EmailAddress> SimpleMail::MimeMessagePrivate::recipientsTo

◆ sender

EmailAddress SimpleMail::MimeMessagePrivate::sender

◆ subject

QString SimpleMail::MimeMessagePrivate::subject

La documentation de cette classe a été générée à partir des fichiers suivants :