annotate src/gui/translate/anime.cc @ 356:373f92c35bec

cmake: update minimum version
author Paper <paper@paper.us.eu.org>
date Mon, 15 Jul 2024 00:11:16 -0400
parents 5980a960f3e1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
1 #include "core/anime.h"
65
26721c28bf22 *: avoid usage of (to|from)StdString
Paper <mrpapersonic@gmail.com>
parents: 51
diff changeset
2 #include "core/strings.h"
15
cde8f67a7c7d *: update, megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 10
diff changeset
3 #include "gui/translate/anime.h"
202
71832ffe425a animia: re-add kvm fd source
Paper <paper@paper.us.eu.org>
parents: 187
diff changeset
4
51
75c804f713b2 window: add about window,
Paper <mrpapersonic@gmail.com>
parents: 46
diff changeset
5 #include <QCoreApplication>
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
6
202
71832ffe425a animia: re-add kvm fd source
Paper <paper@paper.us.eu.org>
parents: 187
diff changeset
7 #include <unordered_map>
71832ffe425a animia: re-add kvm fd source
Paper <paper@paper.us.eu.org>
parents: 187
diff changeset
8
333
5980a960f3e1 translate/anime: use fmt for translating anime seasons
Paper <paper@paper.us.eu.org>
parents: 327
diff changeset
9 #include <fmt/core.h>
5980a960f3e1 translate/anime: use fmt for translating anime seasons
Paper <paper@paper.us.eu.org>
parents: 327
diff changeset
10
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
11 namespace Translate {
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
12
15
cde8f67a7c7d *: update, megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 10
diff changeset
13 std::string ToString(const Anime::ListStatus status) {
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
14 switch (status) {
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
15 case Anime::ListStatus::Current: return "Currently watching";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
16 case Anime::ListStatus::Planning: return "Plan to watch";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
17 case Anime::ListStatus::Completed: return "Completed";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
18 case Anime::ListStatus::Dropped: return "Dropped";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
19 case Anime::ListStatus::Paused: return "On hold";
90
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
20 default:
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
21 case Anime::ListStatus::NotInList: return "Not in list";
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
22 }
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
23 }
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
24
15
cde8f67a7c7d *: update, megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 10
diff changeset
25 std::string ToString(const Anime::SeriesFormat format) {
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
26 switch (format) {
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
27 case Anime::SeriesFormat::Tv: return "TV";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
28 case Anime::SeriesFormat::TvShort: return "TV short";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
29 case Anime::SeriesFormat::Ova: return "OVA";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
30 case Anime::SeriesFormat::Movie: return "Movie";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
31 case Anime::SeriesFormat::Special: return "Special";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
32 case Anime::SeriesFormat::Ona: return "ONA";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
33 case Anime::SeriesFormat::Music: return "Music";
90
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
34 default:
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
35 case Anime::SeriesFormat::Unknown: return "Unknown";
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
36 }
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
37 }
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
38
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
39 std::string ToString(const Anime::Season::Name season) {
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
40 switch (season) {
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
41 case Anime::Season::Name::Winter: return "Winter";
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
42 case Anime::Season::Name::Summer: return "Summer";
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
43 case Anime::Season::Name::Autumn: return "Autumn";
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
44 case Anime::Season::Name::Spring: return "Spring";
90
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
45 default:
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
46 case Anime::Season::Name::Unknown: return "Unknown";
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
47 }
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
48 }
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
49
15
cde8f67a7c7d *: update, megacommit :)
Paper <mrpapersonic@gmail.com>
parents: 10
diff changeset
50 std::string ToString(const Anime::SeriesStatus status) {
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
51 switch (status) {
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
52 case Anime::SeriesStatus::Releasing: return "Currently airing";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
53 case Anime::SeriesStatus::Finished: return "Finished airing";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
54 case Anime::SeriesStatus::NotYetReleased: return "Not yet aired";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
55 case Anime::SeriesStatus::Cancelled: return "Cancelled";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
56 case Anime::SeriesStatus::Hiatus: return "On hiatus";
90
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
57 default:
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
58 case Anime::SeriesStatus::Unknown: return "Unknown";
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
59 }
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
60 }
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
61
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
62 std::string ToString(const Anime::Service service) {
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
63 switch (service) {
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
64 case Anime::Service::AniList: return "AniList";
286
53e3c015a973 anime: initial cross-service support
Paper <paper@paper.us.eu.org>
parents: 279
diff changeset
65 case Anime::Service::MyAnimeList: return "MyAnimeList";
53e3c015a973 anime: initial cross-service support
Paper <paper@paper.us.eu.org>
parents: 279
diff changeset
66 case Anime::Service::Kitsu: return "Kitsu";
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
67 default:
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
68 case Anime::Service::None: return "None";
90
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
69 }
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
70 }
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
71
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
72 std::string ToString(const Anime::TitleLanguage language) {
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
73 switch (language) {
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
74 case Anime::TitleLanguage::Native: return "Native";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
75 case Anime::TitleLanguage::English: return "English";
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
76 default:
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
77 case Anime::TitleLanguage::Romaji: return "Romaji";
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
78 }
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
79 }
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
80
185
62e336597bb7 anime list: add support for different score formats
Paper <mrpapersonic@gmail.com>
parents: 175
diff changeset
81 std::string ToString(const Anime::ScoreFormat format) {
62e336597bb7 anime list: add support for different score formats
Paper <mrpapersonic@gmail.com>
parents: 175
diff changeset
82 switch (format) {
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
83 case Anime::ScoreFormat::Point3: return "3-point";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
84 case Anime::ScoreFormat::Point5: return "5-point";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
85 case Anime::ScoreFormat::Point10: return "10-point";
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
86 case Anime::ScoreFormat::Point10Decimal: return "10-point Decimal";
185
62e336597bb7 anime list: add support for different score formats
Paper <mrpapersonic@gmail.com>
parents: 175
diff changeset
87 default:
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
88 case Anime::ScoreFormat::Point100: return "100-point";
185
62e336597bb7 anime list: add support for different score formats
Paper <mrpapersonic@gmail.com>
parents: 175
diff changeset
89 }
62e336597bb7 anime list: add support for different score formats
Paper <mrpapersonic@gmail.com>
parents: 175
diff changeset
90 }
62e336597bb7 anime list: add support for different score formats
Paper <mrpapersonic@gmail.com>
parents: 175
diff changeset
91
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
92 Anime::ListStatus ToListStatus(const std::string& str) {
187
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
93 static const std::unordered_map<std::string, Anime::ListStatus> map = {
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
94 {"currently watching", Anime::ListStatus::Current },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
95 {"plan to watch", Anime::ListStatus::Planning },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
96 {"completed", Anime::ListStatus::Completed},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
97 {"dropped", Anime::ListStatus::Dropped },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
98 {"on hold", Anime::ListStatus::Paused }
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
99 };
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
100
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
101 std::string lower = Strings::ToLower(str);
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
102
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
103 if (map.find(lower) == map.end())
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
104 return Anime::ListStatus::NotInList;
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
105 return map.at(lower);
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
106 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
107
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
108 Anime::SeriesStatus ToSeriesStatus(const std::string& str) {
187
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
109 static const std::unordered_map<std::string, Anime::SeriesStatus> map = {
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
110 {"currently airing", Anime::SeriesStatus::Releasing },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
111 {"finished airing", Anime::SeriesStatus::Finished },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
112 {"not yet aired", Anime::SeriesStatus::NotYetReleased},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
113 {"cancelled", Anime::SeriesStatus::Cancelled },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
114 {"on hiatus", Anime::SeriesStatus::Hiatus }
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
115 };
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
116
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
117 std::string lower = Strings::ToLower(str);
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
118
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
119 if (map.find(str) == map.end())
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
120 return Anime::SeriesStatus::Unknown;
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
121 return map.at(str);
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
122 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
123
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
124 Anime::Season::Name ToSeriesSeason(const std::string& str) {
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
125 static const std::unordered_map<std::string, Anime::Season::Name> map = {
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
126 {"winter", Anime::Season::Name::Winter},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
127 {"summer", Anime::Season::Name::Summer},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
128 {"fall", Anime::Season::Name::Autumn},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
129 {"autumn", Anime::Season::Name::Autumn},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
130 {"spring", Anime::Season::Name::Spring},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
131 };
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
132
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
133 std::string lower = Strings::ToLower(str);
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
134
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
135 if (map.find(lower) == map.end())
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
136 return Anime::Season::Name::Unknown;
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
137 return map.at(lower);
10
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
138 }
Paper <mrpapersonic@gmail.com>
parents: 9
diff changeset
139
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
140 Anime::SeriesFormat ToSeriesFormat(const std::string& str) {
187
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
141 static const std::unordered_map<std::string, Anime::SeriesFormat> map = {
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
142 {"tv", Anime::SeriesFormat::Tv },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
143 {"tv short", Anime::SeriesFormat::TvShort},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
144 {"ova", Anime::SeriesFormat::Ova },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
145 {"movie", Anime::SeriesFormat::Movie },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
146 {"special", Anime::SeriesFormat::Special },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
147 {"ona", Anime::SeriesFormat::Ona },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
148 {"music", Anime::SeriesFormat::Music }
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
149 };
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
150
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
151 std::string lower = Strings::ToLower(str);
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
152
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
153 if (map.find(lower) == map.end())
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
154 return Anime::SeriesFormat::Unknown;
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
155 return map.at(lower);
175
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
156 }
9b10175be389 dep/json: update to v3.11.3
Paper <mrpapersonic@gmail.com>
parents: 174
diff changeset
157
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
158 Anime::Service ToService(const std::string& str) {
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
159 static const std::unordered_map<std::string, Anime::Service> map = {
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
160 {"anilist", Anime::Service::AniList},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
161 {"myanimelist", Anime::Service::MyAnimeList},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
162 {"kitsu", Anime::Service::Kitsu}
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
163 };
90
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
164
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
165 std::string lower = Strings::ToLower(str);
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
166
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
167 if (map.find(lower) == map.end())
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
168 return Anime::Service::None;
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
169 return map.at(lower);
90
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
170 }
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
171
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
172 Anime::TitleLanguage ToLanguage(const std::string& str) {
187
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
173 static const std::unordered_map<std::string, Anime::TitleLanguage> map = {
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
174 {"romaji", Anime::TitleLanguage::Romaji },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
175 {"native", Anime::TitleLanguage::Native },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
176 {"english", Anime::TitleLanguage::English}
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
177 };
90
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
178
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
179 std::string lower = Strings::ToLower(str);
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
180
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
181 if (map.find(lower) == map.end())
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
182 return Anime::TitleLanguage::Romaji;
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
183 return map.at(lower);
90
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
184 }
c4bb49c2f6eb config: improve handling of vars
Paper <mrpapersonic@gmail.com>
parents: 81
diff changeset
185
185
62e336597bb7 anime list: add support for different score formats
Paper <mrpapersonic@gmail.com>
parents: 175
diff changeset
186 Anime::ScoreFormat ToScoreFormat(const std::string& str) {
187
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
187 static const std::unordered_map<std::string, Anime::ScoreFormat> map = {
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
188 {"3-point", Anime::ScoreFormat::Point3},
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
189 {"5-point", Anime::ScoreFormat::Point5},
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
190 {"10-point", Anime::ScoreFormat::Point10 },
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
191 {"10-point decimal", Anime::ScoreFormat::Point10Decimal},
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
192 {"100-point", Anime::ScoreFormat::Point100 },
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
193 /* old values, provided for compatibility */
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
194 {"point_3", Anime::ScoreFormat::Point3 },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
195 {"point_5", Anime::ScoreFormat::Point5 },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
196 {"point_10", Anime::ScoreFormat::Point10 },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
197 {"point_10_decimal", Anime::ScoreFormat::Point10Decimal},
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
198 {"point_100", Anime::ScoreFormat::Point100 },
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
199 };
185
62e336597bb7 anime list: add support for different score formats
Paper <mrpapersonic@gmail.com>
parents: 175
diff changeset
200
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
201 std::string lower = Strings::ToLower(str);
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
202
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
203 if (map.find(lower) == map.end())
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
204 return Anime::ScoreFormat::Point100;
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
205 return map.at(lower);
185
62e336597bb7 anime list: add support for different score formats
Paper <mrpapersonic@gmail.com>
parents: 175
diff changeset
206 }
62e336597bb7 anime list: add support for different score formats
Paper <mrpapersonic@gmail.com>
parents: 175
diff changeset
207
187
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
208 /* Localized versions of ToString() functions. Meant for display to the user. */
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
209
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
210 std::string ToLocalString(const Anime::ListStatus status) {
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
211 switch (status) {
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
212 case Anime::ListStatus::Current: return Strings::Translate("Currently watching");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
213 case Anime::ListStatus::Planning: return Strings::Translate("Plan to watch");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
214 case Anime::ListStatus::Completed: return Strings::Translate("Completed");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
215 case Anime::ListStatus::Dropped: return Strings::Translate("Dropped");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
216 case Anime::ListStatus::Paused: return Strings::Translate("On hold");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
217 default:
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
218 case Anime::ListStatus::NotInList: return Strings::Translate("Not in list");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
219 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
220 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
221
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
222 std::string ToLocalString(const Anime::SeriesFormat format) {
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
223 switch (format) {
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
224 case Anime::SeriesFormat::Tv: return Strings::Translate("TV");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
225 case Anime::SeriesFormat::TvShort: return Strings::Translate("TV short");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
226 case Anime::SeriesFormat::Ova: return Strings::Translate("OVA");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
227 case Anime::SeriesFormat::Movie: return Strings::Translate("Movie");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
228 case Anime::SeriesFormat::Special: return Strings::Translate("Special");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
229 case Anime::SeriesFormat::Ona: return Strings::Translate("ONA");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
230 case Anime::SeriesFormat::Music: return Strings::Translate("Music");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
231 default:
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
232 case Anime::SeriesFormat::Unknown: return Strings::Translate("Unknown");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
233 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
234 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
235
333
5980a960f3e1 translate/anime: use fmt for translating anime seasons
Paper <paper@paper.us.eu.org>
parents: 327
diff changeset
236 static std::string ToLocalString(const Anime::Season::Name season) {
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
237 switch (season) {
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
238 case Anime::Season::Name::Winter: return Strings::Translate("Winter");
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
239 case Anime::Season::Name::Summer: return Strings::Translate("Summer");
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
240 case Anime::Season::Name::Autumn: return Strings::Translate("Autumn");
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
241 case Anime::Season::Name::Spring: return Strings::Translate("Spring");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
242 default:
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
243 case Anime::Season::Name::Unknown: return Strings::Translate("Unknown");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
244 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
245 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
246
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
247 std::string ToLocalString(const Anime::Season& season) {
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
248 std::string year = (season.year) ? Strings::ToUtf8String(season.year) : Strings::Translate("Unknown");
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
249
333
5980a960f3e1 translate/anime: use fmt for translating anime seasons
Paper <paper@paper.us.eu.org>
parents: 327
diff changeset
250 return fmt::format(Strings::Translate("{} {}"), ToLocalString(season.season), year);
327
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
251 }
b5d6c27c308f anime: refactor Anime::SeriesSeason to Season class
Paper <paper@paper.us.eu.org>
parents: 322
diff changeset
252
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
253 std::string ToLocalString(const Anime::SeriesStatus status) {
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
254 switch (status) {
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
255 case Anime::SeriesStatus::Releasing: return Strings::Translate("Currently airing");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
256 case Anime::SeriesStatus::Finished: return Strings::Translate("Finished airing");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
257 case Anime::SeriesStatus::NotYetReleased: return Strings::Translate("Not yet aired");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
258 case Anime::SeriesStatus::Cancelled: return Strings::Translate("Cancelled");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
259 case Anime::SeriesStatus::Hiatus: return Strings::Translate("On hiatus");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
260 default:
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
261 case Anime::SeriesStatus::Unknown: return Strings::Translate("Unknown");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
262 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
263 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
264
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
265 std::string ToLocalString(const Anime::Service service) {
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
266 switch (service) {
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
267 case Anime::Service::AniList: return Strings::Translate("AniList");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
268 case Anime::Service::MyAnimeList: return Strings::Translate("MyAnimeList");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
269 case Anime::Service::Kitsu: return Strings::Translate("Kitsu");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
270 default:
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
271 case Anime::Service::None: return Strings::Translate("None");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
272 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
273 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
274
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
275 std::string ToLocalString(const Anime::TitleLanguage language) {
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
276 switch (language) {
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
277 case Anime::TitleLanguage::Native: return Strings::Translate("Native");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
278 case Anime::TitleLanguage::English: return Strings::Translate("English");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
279 default:
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
280 case Anime::TitleLanguage::Romaji: return Strings::Translate("Romaji");
174
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
281 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
282 }
f88eda79c60a anime/db: add some more json functionality, still doesn't compile :/
Paper <mrpapersonic@gmail.com>
parents: 90
diff changeset
283
187
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
284 std::string ToLocalString(const Anime::ScoreFormat format) {
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
285 switch (format) {
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
286 case Anime::ScoreFormat::Point3: return Strings::Translate("3-point");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
287 case Anime::ScoreFormat::Point5: return Strings::Translate("5-point");
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
288 case Anime::ScoreFormat::Point10: return Strings::Translate("10-point");
279
657fda1b9cac *: clean up enums
Paper <paper@paper.us.eu.org>
parents: 258
diff changeset
289 case Anime::ScoreFormat::Point10Decimal:
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
290 return Strings::Translate("10-point Decimal");
187
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
291 default:
322
c32467cd06bb core/strings: add Strings::Translate function as tr() -> ToUtf8String
Paper <paper@paper.us.eu.org>
parents: 286
diff changeset
292 case Anime::ScoreFormat::Point100: return Strings::Translate("100-point");
187
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
293 }
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
294 }
9613d72b097e *: multiple performance improvements
Paper <mrpapersonic@gmail.com>
parents: 185
diff changeset
295
46
d0adc4aedfc8 *: update...
Paper <mrpapersonic@gmail.com>
parents: 15
diff changeset
296 } // namespace Translate