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
17namespace Attica
18{
19
20/*!
21 * \class Attica::Topic
22 * \inheaderfile Attica/Topic
23 * \inmodule Attica::Topic
24 *
25 * \brief Represents a topic.
26 */
27class ATTICA_EXPORT Topic
28{
29public:
30 /*!
31 *
32 */
33 typedef QList<Topic> List;
34 class Parser;
35
36 /*!
37 *
38 */
39 Topic();
40 Topic(const Topic &other);
41 Topic &operator=(const Topic &other);
42 ~Topic();
43
44 /*!
45 *
46 */
47 void setId(const QString &id);
48
49 /*!
50 *
51 */
52 QString id() const;
53
54 /*!
55 *
56 */
57 void setForumId(const QString &forumId);
58
59 /*!
60 *
61 */
62 QString forumId() const;
63
64 /*!
65 *
66 */
67 void setUser(const QString &user);
68
69 /*!
70 *
71 */
72 QString user() const;
73
74 /*!
75 *
76 */
77 void setDate(const QDateTime &date);
78
79 /*!
80 *
81 */
82 QDateTime date() const;
83
84 /*!
85 *
86 */
87 void setSubject(const QString &subject);
88
89 /*!
90 *
91 */
92 QString subject() const;
93
94 /*!
95 *
96 */
97 void setContent(const QString &content);
98
99 /*!
100 *
101 */
102 QString content() const;
103
104 /*!
105 *
106 */
107 void setComments(const int comments);
108
109 /*!
110 *
111 */
112 int comments() const;
113
114 /*!
115 *
116 */
117 bool isValid() const;
118
119private:
120 class Private;
121 QSharedDataPointer<Private> d;
122};
123
124}
125
126#endif
127

source code of attica/src/topic.h