1#pragma once
2
3/****************************************************************************************
4 ** GitQlient is an application to manage and operate one or several Git repositories. With
5 ** GitQlient you will be able to add commits, branches and manage all the options Git provides.
6 ** Copyright (C) 2021 Francesc Martinez
7 **
8 ** LinkedIn: www.linkedin.com/in/cescmm/
9 ** Web: www.francescmm.com
10 **
11 ** This program is free software; you can redistribute it and/or
12 ** modify it under the terms of the GNU Lesser General Public
13 ** License as published by the Free Software Foundation; either
14 ** version 2 of the License, or (at your option) any later version.
15 **
16 ** This program is distributed in the hope that it will be useful,
17 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
18 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 ** Lesser General Public License for more details.
20 **
21 ** You should have received a copy of the GNU Lesser General Public
22 ** License along with this library; if not, write to the Free Software
23 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
24 ***************************************************************************************/
25
26#include <User.h>
27
28#include <QDateTime>
29
30namespace GitServer
31{
32struct Diff
33{
34 QString diff;
35 QString file;
36 int line;
37 int originalLine;
38};
39
40struct Comment
41{
42 Comment() = default;
43 Comment(int _id, const QString _body, const User &_user, const QDateTime dt, const QString relation)
44 : id(_id)
45 , body(_body)
46 , creator(_user)
47 , creation(dt)
48 , association(relation)
49 {
50 }
51
52 virtual ~Comment() = default;
53
54 int id;
55 QString body;
56 User creator;
57 QDateTime creation;
58 QString association;
59};
60
61struct Review : public Comment
62{
63 Review() = default;
64
65 QString state;
66};
67
68struct CodeReview : public Comment
69{
70 CodeReview() = default;
71 bool operator==(const CodeReview &c) const { return c.reviewId == reviewId; }
72
73 Diff diff;
74 int replyToId;
75 int reviewId;
76 bool outdated;
77};
78
79}
80