comparison src/gui/dialog/settings/application.cc @ 279:657fda1b9cac

*: clean up enums
author Paper <paper@paper.us.eu.org>
date Fri, 19 Apr 2024 13:24:06 -0400
parents 862d0d8619f6
children b1f4d1867ab1
comparison
equal deleted inserted replaced
274:f6a756c19bfb 279:657fda1b9cac
2 #include "core/strings.h" 2 #include "core/strings.h"
3 #include "gui/dialog/settings.h" 3 #include "gui/dialog/settings.h"
4 #include "gui/locale.h" 4 #include "gui/locale.h"
5 #include "gui/theme.h" 5 #include "gui/theme.h"
6 #include "gui/translate/anime.h" 6 #include "gui/translate/anime.h"
7 #include "gui/translate/config.h"
7 8
8 #include <QCheckBox> 9 #include <QCheckBox>
9 #include <QComboBox> 10 #include <QComboBox>
10 #include <QGroupBox> 11 #include <QGroupBox>
11 #include <QHBoxLayout> 12 #include <QHBoxLayout>
12 #include <QLabel> 13 #include <QLabel>
13 #include <QPushButton> 14 #include <QPushButton>
14 #include <QSizePolicy> 15 #include <QSizePolicy>
15 #include <QVBoxLayout> 16 #include <QVBoxLayout>
16 17
17 #include <algorithm>
18
19 QWidget* SettingsPageApplication::CreateAnimeListWidget() { 18 QWidget* SettingsPageApplication::CreateAnimeListWidget() {
20 QWidget* result = new QWidget(this); 19 QWidget* result = new QWidget(this);
21 result->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum); 20 result->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum);
22 21
23 QVBoxLayout* full_layout = new QVBoxLayout(result); 22 QVBoxLayout* full_layout = new QVBoxLayout(result);
195 QLabel* theme_combo_box_label = new QLabel(tr("Application theme:"), appearance_group_box); 194 QLabel* theme_combo_box_label = new QLabel(tr("Application theme:"), appearance_group_box);
196 appearance_layout->addWidget(theme_combo_box_label); 195 appearance_layout->addWidget(theme_combo_box_label);
197 } 196 }
198 197
199 { 198 {
199 /* FIXME: don't hardcode these values */
200 QComboBox* theme_combo_box = new QComboBox(appearance_group_box); 200 QComboBox* theme_combo_box = new QComboBox(appearance_group_box);
201 theme_combo_box->addItem(tr("Default")); 201 for (const auto& theme : Theme::Themes)
202 theme_combo_box->addItem(tr("Light")); 202 theme_combo_box->addItem(Strings::ToQString(Translate::ToLocalString(theme)));
203 theme_combo_box->addItem(tr("Dark")); 203
204 connect(theme_combo_box, QOverload<int>::of(&QComboBox::currentIndexChanged), this, 204 connect(theme_combo_box, QOverload<int>::of(&QComboBox::currentIndexChanged), this,
205 [this](int index) { theme = static_cast<Themes>(index); }); 205 [this](int index) { theme = static_cast<Theme::Theme>(index); });
206 theme_combo_box->setCurrentIndex(static_cast<int>(theme)); 206 theme_combo_box->setCurrentIndex(static_cast<int>(theme));
207 appearance_layout->addWidget(theme_combo_box); 207 appearance_layout->addWidget(theme_combo_box);
208 } 208 }
209 } 209 }
210 210