QXmpp Version:0.3.0
QXmppAnnotationsIq.h
00001 /*
00002  * Copyright (C) 2008-2011 The QXmpp developers
00003  *
00004  * Author:
00005  *  Georg Rudoy
00006  *
00007  * Source:
00008  *  http://code.google.com/p/qxmpp
00009  *
00010  * This file is a part of QXmpp library.
00011  *
00012  * This library is free software; you can redistribute it and/or
00013  * modify it under the terms of the GNU Lesser General Public
00014  * License as published by the Free Software Foundation; either
00015  * version 2.1 of the License, or (at your option) any later version.
00016  *
00017  * This library is distributed in the hope that it will be useful,
00018  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00019  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00020  * Lesser General Public License for more details.
00021  *
00022  */
00023 
00024 #ifndef QXMPPANNOTATIONSIQ_H
00025 #define QXMPPANNOTATIONSIQ_H
00026 
00027 #include "QXmppIq.h"
00028 
00029 #include <QDateTime>
00030 
00035 
00036 class QXmppAnnotationsIq : public QXmppIq
00037 {
00038 public:
00039     class NoteItem
00040     {
00041     public:
00042         NoteItem();
00043         NoteItem(const QString&, const QString&);
00044 
00045         QString jid() const;
00046         void setJid(const QString&);
00047 
00048         QString note() const;
00049         void setNote(const QString&);
00050 
00051         QDateTime cdate() const;
00052         void setCdate(const QDateTime&);
00053 
00054         QDateTime mdate() const;
00055         void setMdate(const QDateTime&);
00056     private:
00057         QString m_jid;
00058         QString m_note;
00059         QDateTime m_cdate;
00060         QDateTime m_mdate;
00061     };
00062 
00063     QXmppAnnotationsIq();
00064 
00065     QList<NoteItem> items() const;
00066     void setItems(const QList<NoteItem>&);
00067 
00068 protected:
00070     void parseElementFromChild(const QDomElement &element);
00071     void toXmlElementFromChild(QXmlStreamWriter *writer) const;
00073 
00074 private:
00075     QList<NoteItem> m_items;
00076 };
00077 
00078 #endif // QXMPPANNOTATIONSIQ_H
 All Classes Functions Enumerations Enumerator Properties