Mercurial > minori
comparison src/gui/dialog/information.cpp @ 63:3d2decf093bb
*: fix many clang warnings
author | Paper <mrpapersonic@gmail.com> |
---|---|
date | Sun, 01 Oct 2023 06:39:47 -0400 |
parents | 4c6dd5999b39 |
children | fe719c109dbc |
comparison
equal
deleted
inserted
replaced
62:4c6dd5999b39 | 63:3d2decf093bb |
---|---|
3 #include "core/anime_db.h" | 3 #include "core/anime_db.h" |
4 #include "core/array.h" | 4 #include "core/array.h" |
5 #include "core/strings.h" | 5 #include "core/strings.h" |
6 #include "gui/pages/anime_list.h" | 6 #include "gui/pages/anime_list.h" |
7 #include "gui/translate/anime.h" | 7 #include "gui/translate/anime.h" |
8 #include "gui/widgets/optional_date.h" | |
8 #include "gui/widgets/text.h" | 9 #include "gui/widgets/text.h" |
9 #include "gui/widgets/optional_date.h" | |
10 #include "gui/window.h" | 10 #include "gui/window.h" |
11 #include <QCheckBox> | 11 #include <QCheckBox> |
12 #include <QComboBox> | 12 #include <QComboBox> |
13 #include <QDateEdit> | 13 #include <QDateEdit> |
14 #include <QDebug> | 14 #include <QDebug> |
107 << anime.GetEpisodes() << "\n" | 107 << anime.GetEpisodes() << "\n" |
108 << Translate::ToString(anime.GetUserStatus()).c_str() << "\n" | 108 << Translate::ToString(anime.GetUserStatus()).c_str() << "\n" |
109 << Translate::ToString(anime.GetSeason()).c_str() << " " << anime.GetAirDate().GetYear() << "\n" | 109 << Translate::ToString(anime.GetSeason()).c_str() << " " << anime.GetAirDate().GetYear() << "\n" |
110 << Strings::Implode(anime.GetGenres(), ", ").c_str() << "\n" | 110 << Strings::Implode(anime.GetGenres(), ", ").c_str() << "\n" |
111 << anime.GetAudienceScore() << "%"; | 111 << anime.GetAudienceScore() << "%"; |
112 main_information_widget->layout()->addWidget(new TextWidgets::LabelledTextParagraph( | 112 main_information_widget->layout()->addWidget( |
113 tr("Details"), tr("Type:\nEpisodes:\nStatus:\nSeason:\nGenres:\nScore:"), details_data, main_information_widget)); | 113 new TextWidgets::LabelledTextParagraph(tr("Details"), tr("Type:\nEpisodes:\nStatus:\nSeason:\nGenres:\nScore:"), |
114 details_data, main_information_widget)); | |
114 | 115 |
115 /* synopsis */ | 116 /* synopsis */ |
116 TextWidgets::SelectableTextParagraph* synopsis = new TextWidgets::SelectableTextParagraph( | 117 TextWidgets::SelectableTextParagraph* synopsis = new TextWidgets::SelectableTextParagraph( |
117 tr("Synopsis"), QString::fromUtf8(anime.GetSynopsis().c_str()), main_information_widget); | 118 tr("Synopsis"), QString::fromUtf8(anime.GetSynopsis().c_str()), main_information_widget); |
118 | 119 |
184 /* Episodes watched section */ | 185 /* Episodes watched section */ |
185 CREATE_SUBSECTION({ | 186 CREATE_SUBSECTION({ |
186 subsection->layout()->addWidget(new QLabel(tr("Episodes watched:"), subsection)); | 187 subsection->layout()->addWidget(new QLabel(tr("Episodes watched:"), subsection)); |
187 | 188 |
188 QSpinBox* spin_box = new QSpinBox(subsection); | 189 QSpinBox* spin_box = new QSpinBox(subsection); |
189 connect(spin_box, QOverload<int>::of(&QSpinBox::valueChanged), this, [this](int i) { | 190 connect(spin_box, QOverload<int>::of(&QSpinBox::valueChanged), this, [this](int i) { progress = i; }); |
190 progress = i; | |
191 }); | |
192 spin_box->setRange(0, anime.GetEpisodes()); | 191 spin_box->setRange(0, anime.GetEpisodes()); |
193 spin_box->setSingleStep(1); | 192 spin_box->setSingleStep(1); |
194 spin_box->setValue(progress = anime.GetUserProgress()); | 193 spin_box->setValue(progress = anime.GetUserProgress()); |
195 subsection->layout()->addWidget(spin_box); | 194 subsection->layout()->addWidget(spin_box); |
196 }); | 195 }); |
197 CREATE_SUBSECTION({ | 196 CREATE_SUBSECTION({ |
198 subsection->layout()->addWidget(new QLabel(tr(" "), subsection)); | 197 subsection->layout()->addWidget(new QLabel(tr(" "), subsection)); |
199 | 198 |
200 QCheckBox* checkbox = new QCheckBox(tr("Rewatching")); | 199 QCheckBox* checkbox = new QCheckBox(tr("Rewatching")); |
201 connect(checkbox, QOverload<int>::of(&QCheckBox::stateChanged), this, [this](int state) { | 200 connect(checkbox, QOverload<int>::of(&QCheckBox::stateChanged), this, |
202 rewatching = (state == Qt::Checked); | 201 [this](int state) { rewatching = (state == Qt::Checked); }); |
203 }); | |
204 checkbox->setCheckState(anime.GetUserIsRewatching() ? Qt::Checked : Qt::Unchecked); | 202 checkbox->setCheckState(anime.GetUserIsRewatching() ? Qt::Checked : Qt::Unchecked); |
205 subsection->layout()->addWidget(checkbox); | 203 subsection->layout()->addWidget(checkbox); |
206 }); | 204 }); |
207 }); | 205 }); |
208 CREATE_SECTION(sg_anime_list_content, { | 206 CREATE_SECTION(sg_anime_list_content, { |
214 for (unsigned int i = 0; i < ARRAYSIZE(Anime::ListStatuses); i++) | 212 for (unsigned int i = 0; i < ARRAYSIZE(Anime::ListStatuses); i++) |
215 string_list.append(QString::fromStdString(Translate::ToString(Anime::ListStatuses[i]))); | 213 string_list.append(QString::fromStdString(Translate::ToString(Anime::ListStatuses[i]))); |
216 | 214 |
217 QComboBox* combo_box = new QComboBox(subsection); | 215 QComboBox* combo_box = new QComboBox(subsection); |
218 combo_box->addItems(string_list); | 216 combo_box->addItems(string_list); |
219 connect(combo_box, QOverload<int>::of(&QComboBox::currentIndexChanged), this, [this](int i) { | 217 connect(combo_box, QOverload<int>::of(&QComboBox::currentIndexChanged), this, |
220 status = Anime::ListStatuses[i]; | 218 [this](int i) { status = Anime::ListStatuses[i]; }); |
221 }); | 219 combo_box->setCurrentIndex(static_cast<int>(status = anime.GetUserStatus()) - 1); |
222 combo_box->setCurrentIndex(static_cast<int>(status = anime.GetUserStatus())-1); | |
223 subsection->layout()->addWidget(combo_box); | 220 subsection->layout()->addWidget(combo_box); |
224 }); | 221 }); |
225 CREATE_SUBSECTION({ | 222 CREATE_SUBSECTION({ |
226 subsection->layout()->addWidget(new QLabel(tr("Score:"), subsection)); | 223 subsection->layout()->addWidget(new QLabel(tr("Score:"), subsection)); |
227 | 224 |
228 QSpinBox* spin_box = new QSpinBox(subsection); | 225 QSpinBox* spin_box = new QSpinBox(subsection); |
229 connect(spin_box, QOverload<int>::of(&QSpinBox::valueChanged), this, [this](int i) { | 226 connect(spin_box, QOverload<int>::of(&QSpinBox::valueChanged), this, [this](int i) { score = i; }); |
230 score = i; | |
231 }); | |
232 spin_box->setRange(0, 100); | 227 spin_box->setRange(0, 100); |
233 spin_box->setSingleStep(5); | 228 spin_box->setSingleStep(5); |
234 spin_box->setValue(score = anime.GetUserScore()); | 229 spin_box->setValue(score = anime.GetUserScore()); |
235 subsection->layout()->addWidget(spin_box); | 230 subsection->layout()->addWidget(spin_box); |
236 }); | 231 }); |
254 /* Dates section */ | 249 /* Dates section */ |
255 CREATE_SUBSECTION({ | 250 CREATE_SUBSECTION({ |
256 subsection->layout()->addWidget(new QLabel(tr("Date started:"), subsection)); | 251 subsection->layout()->addWidget(new QLabel(tr("Date started:"), subsection)); |
257 | 252 |
258 OptionalDate* date = new OptionalDate(true, subsection); | 253 OptionalDate* date = new OptionalDate(true, subsection); |
259 connect(date, &OptionalDate::DataChanged, this, [this](bool enabled, Date date) { | 254 connect(date, &OptionalDate::DataChanged, this, |
260 started = (enabled) ? date : Date(); | 255 [this](bool enabled, Date date) { started = (enabled) ? date : Date(); }); |
261 }); | |
262 started = anime.GetUserDateStarted(); | 256 started = anime.GetUserDateStarted(); |
263 if (!started.IsValid()) { | 257 if (!started.IsValid()) { |
264 date->SetEnabled(false); | 258 date->SetEnabled(false); |
265 started = anime.GetAirDate(); | 259 started = anime.GetAirDate(); |
266 } | 260 } |
269 }); | 263 }); |
270 CREATE_SUBSECTION({ | 264 CREATE_SUBSECTION({ |
271 subsection->layout()->addWidget(new QLabel(tr("Date completed:"), subsection)); | 265 subsection->layout()->addWidget(new QLabel(tr("Date completed:"), subsection)); |
272 | 266 |
273 OptionalDate* date = new OptionalDate(true, subsection); | 267 OptionalDate* date = new OptionalDate(true, subsection); |
274 connect(date, &OptionalDate::DataChanged, this, [this](bool enabled, Date date) { | 268 connect(date, &OptionalDate::DataChanged, this, |
275 completed = (enabled) ? date : Date(); | 269 [this](bool enabled, Date date) { completed = (enabled) ? date : Date(); }); |
276 }); | |
277 completed = anime.GetUserDateCompleted(); | 270 completed = anime.GetUserDateCompleted(); |
278 if (!completed.IsValid()) { | 271 if (!completed.IsValid()) { |
279 date->SetEnabled(false); | 272 date->SetEnabled(false); |
280 completed = anime.GetAirDate(); | 273 completed = anime.GetAirDate(); |
281 } | 274 } |