KMime::Types::Mailbox Class

class KMime::Types::Mailbox

Represents an (email address, display name) pair according RFC 2822, section 3.4. More...

Header: #include <KMime/Types>
CMake: find_package(KPim6 REQUIRED COMPONENTS Mime)
target_link_libraries(mytarget PRIVATE KPim6::Mime)

Public Types

enum Quoting { QuoteNever, QuoteWhenNecessary, QuoteAlways }

Public Functions

KMime::Types::AddrSpec addrSpec() const
QByteArray address() const
QByteArray as7BitString(const QByteArray &encCharset) const
void from7BitString(QByteArrayView s)
void fromUnicodeString(QStringView s)
bool hasAddress() const
bool hasName() const
QString name() const
QString prettyAddress(KMime::Types::Mailbox::Quoting quoting = QuoteNever) const
void setAddress(const KMime::Types::AddrSpec &addr)
void setAddress(const QByteArray &addr)
void setName(const QString &name)
void setNameFrom7Bit(const QByteArray &name, const QByteArray &defaultCharset = QByteArray())

Static Public Members

QList<KMime::Types::Mailbox> listFrom7BitString(QByteArrayView s)
QList<KMime::Types::Mailbox> listFromUnicodeString(QStringView s)
QString listToUnicodeString(const QList<KMime::Types::Mailbox> &mailboxes)

Detailed Description

Member Type Documentation

enum Mailbox::Quoting

Describes how display names should be quoted

ConstantValueDescription
KMime::Types::Mailbox::QuoteNever0Don't quote display names at all. Such an unquoted display name can not be machine-processed anymore in some cases, for example when it contains commas, like in "Lastname, Firstname"
KMime::Types::Mailbox::QuoteWhenNecessary1Only quote display names when they contain characters that need to be quoted, like commas or quote signs
KMime::Types::Mailbox::QuoteAlways2Always quote the display name

Member Function Documentation

KMime::Types::AddrSpec Mailbox::addrSpec() const

QByteArray Mailbox::address() const

Returns a string representation of the email address, without the angle brackets.

See also setAddress().

QByteArray Mailbox::as7BitString(const QByteArray &encCharset) const

Returns a 7bit transport encoded representation of this mailbox.

encCharset The charset used for encoding.

void Mailbox::from7BitString(QByteArrayView s)

Parses the given 7bit encoded string.

s The given 7bit encoded string

void Mailbox::fromUnicodeString(QStringView s)

Parses the given unicode string.

bool Mailbox::hasAddress() const

Returns true if this mailbox has an address.

bool Mailbox::hasName() const

Returns true if this mailbox has a display name.

[static] QList<KMime::Types::Mailbox> Mailbox::listFrom7BitString(QByteArrayView s)

Returns a list of mailboxes from an encoded 7bit string.

[static] QList<KMime::Types::Mailbox> Mailbox::listFromUnicodeString(QStringView s)

Returns a list of mailboxes from an unicode string.

[static] QString Mailbox::listToUnicodeString(const QList<KMime::Types::Mailbox> &mailboxes)

Returns a unicode string representing the given list of mailboxes.

QString Mailbox::name() const

Returns the display name.

See also setName().

QString Mailbox::prettyAddress(KMime::Types::Mailbox::Quoting quoting = QuoteNever) const

Overloaded method that gives more control over the quoting of the display name

quoting describes how the display name should be quoted

void Mailbox::setAddress(const KMime::Types::AddrSpec &addr)

Sets the email address.

See also address().

void Mailbox::setAddress(const QByteArray &addr)

Sets the email address.

void Mailbox::setName(const QString &name)

Sets the name.

See also name().

void Mailbox::setNameFrom7Bit(const QByteArray &name, const QByteArray &defaultCharset = QByteArray())

Sets the name based on a 7bit encoded string.