diff options
| author | Manjeet Dahiya <manjeetdahiya@gmail.com> | 2010-09-07 06:57:12 +0000 |
|---|---|---|
| committer | Manjeet Dahiya <manjeetdahiya@gmail.com> | 2010-09-07 06:57:12 +0000 |
| commit | 966a6f2f63f089624dbd50844069f2b86e13dd81 (patch) | |
| tree | 7e0d09a354c2e64e9cb0c7d0cf211792eea44099 /src/QXmppVCardIq.h | |
| parent | d70690296ad04d77b4b2791281025405fc8f0a65 (diff) | |
| download | qxmpp-966a6f2f63f089624dbd50844069f2b86e13dd81.tar.gz | |
QXmppVCard to QXmppVCardIq
Diffstat (limited to 'src/QXmppVCardIq.h')
| -rw-r--r-- | src/QXmppVCardIq.h | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/src/QXmppVCardIq.h b/src/QXmppVCardIq.h new file mode 100644 index 00000000..cdb5d8b7 --- /dev/null +++ b/src/QXmppVCardIq.h @@ -0,0 +1,121 @@ +/* + * Copyright (C) 2008-2010 The QXmpp developers + * + * Author: + * Manjeet Dahiya + * + * Source: + * http://code.google.com/p/qxmpp + * + * This file is a part of QXmpp library. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + */ + + +#ifndef QXMPPVCARDIQ_H +#define QXMPPVCARDIQ_H + +#include "QXmppIq.h" +#include <QDate> +#include <QMap> +#include <QDomElement> + +class QImage; + +/// \brief Represents the XMPP vCard. +/// +/// The functions names are self explanatory. +/// Look at QXmppVCardManager and <B>XEP-0054: vcard-temp</B> for more details. +/// +/// There are many field of XMPP vCard which are not present in +/// this class. File a issue for the same. We will add the requested +/// field to this class. +/// + +class QXmppVCardIq : public QXmppIq +{ +public: + QXmppVCardIq(const QString& bareJid = ""); + + QDate birthday() const; + void setBirthday(const QDate &birthday); + + QString email() const; + void setEmail(const QString&); + + QString firstName() const; + void setFirstName(const QString&); + + QString fullName() const; + void setFullName(const QString&); + + QString lastName() const; + void setLastName(const QString&); + + QString middleName() const; + void setMiddleName(const QString&); + + QString nickName() const; + void setNickName(const QString&); + + QByteArray photo() const; + void setPhoto(const QByteArray&); + + QString photoType() const; + void setPhotoType(const QString &type); + + QString url() const; + void setUrl(const QString&); + + static bool isVCard(const QDomElement &element); + + /// \cond +// deprecated in release 0.3.0, as it drags in a dependency +// on QtGui, whilst the rest of QXmpp does not require QtGui +#ifndef QXMPP_NO_GUI + QImage Q_DECL_DEPRECATED photoAsImage() const; + void Q_DECL_DEPRECATED setPhoto(const QImage&); +#endif + +// deprecated accessors, use the form without "get" instead +// deprecated in release 0.2.0 + QString Q_DECL_DEPRECATED getFullName() const; + QString Q_DECL_DEPRECATED getNickName() const; +#ifndef QXMPP_NO_GUI + QImage Q_DECL_DEPRECATED getPhotoAsImage() const; +#endif + const QByteArray Q_DECL_DEPRECATED & getPhoto() const; + /// \endcond + +protected: + /// \cond + void parseElementFromChild(const QDomElement&); + void toXmlElementFromChild(QXmlStreamWriter *writer) const; + /// \endcond + +private: + QDate m_birthday; + QString m_email; + QString m_firstName; + QString m_fullName; + QString m_lastName; + QString m_middleName; + QString m_nickName; + QString m_url; + + // not as 64 base + QByteArray m_photo; + QString m_photoType; +}; + +#endif // QXMPPVCARDIQ_H |
