Mercurial > minori
view src/gui/widgets/anime_info.cc @ 118:39521c47c7a3
*: another huge megacommit, SORRY
The torrents page works a lot better now
Added the edit option to the anime list right click menu
Vectorized currently playing files
Available player and extensions are now loaded at runtime
from files in (dotpath)/players.json and (dotpath)/extensions.json
These paths are not permanent and will likely be moved to
(dotpath)/recognition
...
...
...
author | Paper <mrpapersonic@gmail.com> |
---|---|
date | Tue, 07 Nov 2023 23:40:54 -0500 |
parents | 80f49f623d30 |
children | 9613d72b097e |
line wrap: on
line source
#include "gui/widgets/anime_info.h" #include "core/anime.h" #include "core/strings.h" #include "gui/translate/anime.h" #include "gui/widgets/text.h" #include <QHBoxLayout> #include <QTextStream> AnimeInfoWidget::AnimeInfoWidget(QWidget* parent) : QWidget(parent) { QVBoxLayout* layout = new QVBoxLayout(this); _title.reset(new TextWidgets::OneLineSection(tr("Alternative titles"), "", this)); layout->addWidget(_title.get()); _details.reset(new TextWidgets::LabelledSection(tr("Details"), tr("Type:\nEpisodes:\nStatus:\nSeason:\nGenres:\nScore:"), "", this)); layout->addWidget(_details.get()); _synopsis.reset(new TextWidgets::SelectableSection(tr("Synopsis"), "", this)); _synopsis->GetParagraph()->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding); layout->addWidget(_synopsis.get()); } AnimeInfoWidget::AnimeInfoWidget(const Anime::Anime& anime, QWidget* parent) : AnimeInfoWidget(parent) { SetAnime(anime); } void AnimeInfoWidget::SetAnime(const Anime::Anime& anime) { /* alt titles */ _title->GetLine()->SetText(Strings::ToQString(Strings::Implode(anime.GetTitleSynonyms(), ", "))); /* details */ QString details_data; QTextStream details_data_s(&details_data); /* we have to convert ALL of these strings to QString because QTextStream sucks and assumes Latin1 (on Windows?) */ details_data_s << Strings::ToQString(Translate::ToString(anime.GetFormat())) << "\n" << anime.GetEpisodes() << "\n" << Strings::ToQString(Translate::ToString(anime.GetUserStatus())) << "\n" << Strings::ToQString(Translate::ToString(anime.GetSeason())) << " " << anime.GetAirDate().GetYear() << "\n" << Strings::ToQString(Strings::Implode(anime.GetGenres(), ", ")) << "\n" << anime.GetAudienceScore() << "%"; _details->GetParagraph()->SetText(details_data); _synopsis->GetParagraph()->SetText(Strings::ToQString(anime.GetSynopsis())); updateGeometry(); } #include "gui/widgets/moc_anime_info.cpp"