1 /* 2 This file is part of KDE. 3 4 SPDX-FileCopyrightText: 2011 Laszlo Papp <djszapi@archlinux.us> 5 6 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 7 */ 8 9 #ifndef ATTICA_TOPIC_H 10 #define ATTICA_TOPIC_H 11 12 #include "attica_export.h" 13 14 #include <QDateTime> 15 #include <QSharedDataPointer> 16 17 namespace Attica 18 { 19 class ATTICA_EXPORT Topic 20 { 21 public: 22 typedef QList<Topic> List; 23 class Parser; 24 25 Topic(); 26 Topic(const Topic &other); 27 Topic &operator=(const Topic &other); 28 ~Topic(); 29 30 void setId(const QString &id); 31 QString id() const; 32 33 void setForumId(const QString &forumId); 34 QString forumId() const; 35 36 void setUser(const QString &user); 37 QString user() const; 38 39 void setDate(const QDateTime &date); 40 QDateTime date() const; 41 42 void setSubject(const QString &subject); 43 QString subject() const; 44 45 void setContent(const QString &content); 46 QString content() const; 47 48 void setComments(const int comments); 49 int comments() const; 50 51 bool isValid() const; 52 53 private: 54 class Private; 55 QSharedDataPointer<Private> d; 56 }; 57 58 } 59 60 #endif 61