Mercurial > minori
comparison src/gui/pages/anime_list.cc @ 305:91ac90a34003
core/time: remove Duration class, use regular functions instead
this class was pretty useless anyway
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Sun, 19 May 2024 15:56:20 -0400 |
parents | 9a88e1725fd2 |
children | 8769c5d50b06 |
comparison
equal
deleted
inserted
replaced
304:2115488eb302 | 305:91ac90a34003 |
---|---|
138 case AL_SCORE: return Strings::ToQString(list[index.row()].GetUserPresentableScore()); | 138 case AL_SCORE: return Strings::ToQString(list[index.row()].GetUserPresentableScore()); |
139 case AL_TYPE: return Strings::ToQString(Translate::ToString(list[index.row()].GetFormat())); | 139 case AL_TYPE: return Strings::ToQString(Translate::ToString(list[index.row()].GetFormat())); |
140 case AL_SEASON: { | 140 case AL_SEASON: { |
141 std::optional<unsigned int> year = list[index.row()].GetAirDate().GetYear(); | 141 std::optional<unsigned int> year = list[index.row()].GetAirDate().GetYear(); |
142 if (!year) | 142 if (!year) |
143 return "Unknown Unknown"; | 143 return tr("Unknown Unknown"); |
144 return Strings::ToQString(Translate::ToLocalString(list[index.row()].GetSeason()) + " " + | 144 return Strings::ToQString(Translate::ToLocalString(list[index.row()].GetSeason()) + " " + |
145 Strings::ToUtf8String(year.value())); | 145 Strings::ToUtf8String(year.value())); |
146 } | 146 } |
147 case AL_AVG_SCORE: return QString::number(list[index.row()].GetAudienceScore()) + "%"; | 147 case AL_AVG_SCORE: return QString::number(list[index.row()].GetAudienceScore()) + "%"; |
148 case AL_STARTED: return list[index.row()].GetUserDateStarted().GetAsQDate(); | 148 case AL_STARTED: return list[index.row()].GetUserDateStarted().GetAsQDate(); |
149 case AL_COMPLETED: return list[index.row()].GetUserDateCompleted().GetAsQDate(); | 149 case AL_COMPLETED: return list[index.row()].GetUserDateCompleted().GetAsQDate(); |
150 case AL_UPDATED: { | 150 case AL_UPDATED: { |
151 if (list[index.row()].GetUserTimeUpdated() == 0) | 151 if (list[index.row()].GetUserTimeUpdated() == 0) |
152 return QString("-"); | 152 return QString("-"); |
153 Time::Duration duration(Time::GetSystemTime() - list[index.row()].GetUserTimeUpdated()); | 153 return Strings::ToQString(Time::GetSecondsAsRelativeString(Time::GetSystemTime() - list[index.row()].GetUserTimeUpdated())); |
154 return Strings::ToQString(duration.AsRelativeString()); | |
155 } | 154 } |
156 case AL_NOTES: return Strings::ToQString(list[index.row()].GetUserNotes()); | 155 case AL_NOTES: return Strings::ToQString(list[index.row()].GetUserNotes()); |
157 default: return ""; | 156 default: return ""; |
158 } | 157 } |
159 break; | 158 break; |
201 | 200 |
202 beginResetModel(); | 201 beginResetModel(); |
203 | 202 |
204 list.clear(); | 203 list.clear(); |
205 | 204 |
206 for (const auto& a : Anime::db.items) { | 205 for (const auto& a : Anime::db.items) |
207 if (a.second.IsInUserList() && a.second.GetUserStatus() == status) { | 206 if (a.second.IsInUserList() && a.second.GetUserStatus() == status) |
208 list.push_back(a.second); | 207 list.push_back(a.second); |
209 } | |
210 } | |
211 | 208 |
212 endResetModel(); | 209 endResetModel(); |
213 } | 210 } |
214 | 211 |
215 /* ----------------------------------------------------------------- */ | 212 /* ----------------------------------------------------------------- */ |
313 } | 310 } |
314 | 311 |
315 menu->addAction(tr("Information"), [this, animes] { | 312 menu->addAction(tr("Information"), [this, animes] { |
316 for (auto& anime : animes) { | 313 for (auto& anime : animes) { |
317 InformationDialog* dialog = new InformationDialog( | 314 InformationDialog* dialog = new InformationDialog( |
318 *anime, [this, anime] { UpdateAnime(anime->GetId()); }, InformationDialog::PAGE_MAIN_INFO, this); | 315 anime, [this](Anime::Anime* anime) { UpdateAnime(anime->GetId()); }, InformationDialog::PAGE_MAIN_INFO, this); |
319 | 316 |
320 dialog->show(); | 317 dialog->show(); |
321 dialog->raise(); | 318 dialog->raise(); |
322 dialog->activateWindow(); | 319 dialog->activateWindow(); |
323 connect(dialog, &InformationDialog::finished, dialog, &InformationDialog::deleteLater); | 320 connect(dialog, &InformationDialog::finished, dialog, &InformationDialog::deleteLater); |
325 }); | 322 }); |
326 menu->addSeparator(); | 323 menu->addSeparator(); |
327 menu->addAction(tr("Edit"), [this, animes] { | 324 menu->addAction(tr("Edit"), [this, animes] { |
328 for (auto& anime : animes) { | 325 for (auto& anime : animes) { |
329 InformationDialog* dialog = new InformationDialog( | 326 InformationDialog* dialog = new InformationDialog( |
330 *anime, [this, anime] { UpdateAnime(anime->GetId()); }, InformationDialog::PAGE_MY_LIST, this); | 327 anime, [this](Anime::Anime* anime) { UpdateAnime(anime->GetId()); }, InformationDialog::PAGE_MY_LIST, this); |
331 | 328 |
332 dialog->show(); | 329 dialog->show(); |
333 dialog->raise(); | 330 dialog->raise(); |
334 dialog->activateWindow(); | 331 dialog->activateWindow(); |
335 connect(dialog, &InformationDialog::finished, dialog, &InformationDialog::deleteLater); | 332 connect(dialog, &InformationDialog::finished, dialog, &InformationDialog::deleteLater); |
356 | 353 |
357 const QModelIndex index = source_model->index(selection.indexes().first().row()); | 354 const QModelIndex index = source_model->index(selection.indexes().first().row()); |
358 Anime::Anime* anime = source_model->GetAnimeFromIndex(index); | 355 Anime::Anime* anime = source_model->GetAnimeFromIndex(index); |
359 | 356 |
360 InformationDialog* dialog = new InformationDialog( | 357 InformationDialog* dialog = new InformationDialog( |
361 *anime, [this, anime] { UpdateAnime(anime->GetId()); }, InformationDialog::PAGE_MAIN_INFO, this); | 358 anime, [this](Anime::Anime* anime) { UpdateAnime(anime->GetId()); }, InformationDialog::PAGE_MAIN_INFO, this); |
362 | 359 |
363 dialog->show(); | 360 dialog->show(); |
364 dialog->raise(); | 361 dialog->raise(); |
365 dialog->activateWindow(); | 362 dialog->activateWindow(); |
366 connect(dialog, &InformationDialog::finished, dialog, &InformationDialog::deleteLater); | 363 connect(dialog, &InformationDialog::finished, dialog, &InformationDialog::deleteLater); |