Mercurial > minori
annotate include/core/config.h @ 317:b1f4d1867ab1
services: VERY initial Kitsu support
it only supports user authentication for now, but it's definitely
a start.
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Wed, 12 Jun 2024 04:07:10 -0400 |
parents | 657fda1b9cac |
children | 3b355fa948c7 |
rev | line source |
---|---|
261
3ec7804abf17
include: make header guards more sane
Paper <paper@paper.us.eu.org>
parents:
258
diff
changeset
|
1 #ifndef MINORI_CORE_CONFIG_H_ |
3ec7804abf17
include: make header guards more sane
Paper <paper@paper.us.eu.org>
parents:
258
diff
changeset
|
2 #define MINORI_CORE_CONFIG_H_ |
85 | 3 |
9 | 4 #include "core/anime.h" |
317
b1f4d1867ab1
services: VERY initial Kitsu support
Paper <paper@paper.us.eu.org>
parents:
279
diff
changeset
|
5 #include "core/time.h" |
258 | 6 #include "gui/locale.h" |
102 | 7 #include "gui/theme.h" |
147
6fdf0632c003
track: use a bit of a more sane way to manage recognition
Paper <mrpapersonic@gmail.com>
parents:
120
diff
changeset
|
8 |
258 | 9 #include "animone/player.h" |
147
6fdf0632c003
track: use a bit of a more sane way to manage recognition
Paper <mrpapersonic@gmail.com>
parents:
120
diff
changeset
|
10 |
258 | 11 #include <set> |
118
39521c47c7a3
*: another huge megacommit, SORRY
Paper <mrpapersonic@gmail.com>
parents:
116
diff
changeset
|
12 #include <string> |
258 | 13 #include <utility> |
118
39521c47c7a3
*: another huge megacommit, SORRY
Paper <mrpapersonic@gmail.com>
parents:
116
diff
changeset
|
14 #include <vector> |
9 | 15 |
150
ffa535b6d630
*: avoid usage of std::[pair,tuple]
Paper <mrpapersonic@gmail.com>
parents:
149
diff
changeset
|
16 struct MediaPlayer { |
ffa535b6d630
*: avoid usage of std::[pair,tuple]
Paper <mrpapersonic@gmail.com>
parents:
149
diff
changeset
|
17 bool enabled = true; |
258 | 18 animone::Player player; |
150
ffa535b6d630
*: avoid usage of std::[pair,tuple]
Paper <mrpapersonic@gmail.com>
parents:
149
diff
changeset
|
19 }; |
ffa535b6d630
*: avoid usage of std::[pair,tuple]
Paper <mrpapersonic@gmail.com>
parents:
149
diff
changeset
|
20 |
9 | 21 class Config { |
258 | 22 public: |
23 int Load(); | |
24 int Save(); | |
9 | 25 |
279 | 26 Anime::Service service; |
27 Theme::ThemeManager theme; | |
258 | 28 Locale::Locale locale; |
9 | 29 |
258 | 30 struct { |
31 Anime::TitleLanguage language; | |
32 Anime::ScoreFormat score_format; | |
33 bool display_aired_episodes; | |
34 bool display_available_episodes; | |
35 bool highlight_anime_if_available; | |
36 bool highlighted_anime_above_others; | |
37 } anime_list; | |
9 | 38 |
258 | 39 struct { |
9 | 40 struct { |
258 | 41 std::string auth_token; |
42 int user_id; | |
43 } anilist; | |
317
b1f4d1867ab1
services: VERY initial Kitsu support
Paper <paper@paper.us.eu.org>
parents:
279
diff
changeset
|
44 struct { |
b1f4d1867ab1
services: VERY initial Kitsu support
Paper <paper@paper.us.eu.org>
parents:
279
diff
changeset
|
45 std::string access_token; |
b1f4d1867ab1
services: VERY initial Kitsu support
Paper <paper@paper.us.eu.org>
parents:
279
diff
changeset
|
46 Time::Timestamp access_token_expiration; /* Unix time */ |
b1f4d1867ab1
services: VERY initial Kitsu support
Paper <paper@paper.us.eu.org>
parents:
279
diff
changeset
|
47 std::string refresh_token; |
b1f4d1867ab1
services: VERY initial Kitsu support
Paper <paper@paper.us.eu.org>
parents:
279
diff
changeset
|
48 std::string user_id; |
b1f4d1867ab1
services: VERY initial Kitsu support
Paper <paper@paper.us.eu.org>
parents:
279
diff
changeset
|
49 } kitsu; |
258 | 50 } auth; |
120 | 51 |
258 | 52 struct { |
53 bool detect_media_players; | |
54 std::vector<MediaPlayer> players; | |
55 } recognition; | |
116
254b1d2b7096
settings: add torrents page, make rss feed configurable
Paper <mrpapersonic@gmail.com>
parents:
114
diff
changeset
|
56 |
258 | 57 struct { |
58 std::string feed_link; | |
59 } torrents; | |
221
53211cb1e7f5
library: add initial library stuff
Paper <paper@paper.us.eu.org>
parents:
189
diff
changeset
|
60 |
258 | 61 struct { |
62 bool real_time_monitor; | |
63 std::set<std::string> paths; | |
64 } library; | |
9 | 65 }; |
11 | 66 |
114
ab191e28e69d
*: add initial torrent stuff
Paper <mrpapersonic@gmail.com>
parents:
108
diff
changeset
|
67 #if (defined(WIN32) || defined(MACOSX)) |
189 | 68 constexpr std::string_view CONFIG_DIR = "Minori"; |
114
ab191e28e69d
*: add initial torrent stuff
Paper <mrpapersonic@gmail.com>
parents:
108
diff
changeset
|
69 #else |
189 | 70 constexpr std::string_view CONFIG_DIR = "minori"; |
114
ab191e28e69d
*: add initial torrent stuff
Paper <mrpapersonic@gmail.com>
parents:
108
diff
changeset
|
71 #endif |
ab191e28e69d
*: add initial torrent stuff
Paper <mrpapersonic@gmail.com>
parents:
108
diff
changeset
|
72 |
189 | 73 constexpr std::string_view CONFIG_NAME = "config.ini"; |
85 | 74 |
261
3ec7804abf17
include: make header guards more sane
Paper <paper@paper.us.eu.org>
parents:
258
diff
changeset
|
75 #endif // MINORI_CORE_CONFIG_H_ |