diff options
Diffstat (limited to 'config/settingsdialog.cpp')
-rw-r--r-- | config/settingsdialog.cpp | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/config/settingsdialog.cpp b/config/settingsdialog.cpp new file mode 100644 index 0000000..56acc01 --- /dev/null +++ b/config/settingsdialog.cpp @@ -0,0 +1,37 @@ +/* + * This file is part of smolbote. It's copyrighted by the contributors recorded + * in the version control history of the file, available from its original + * location: https://neueland.iserlohn-fortress.net/smolbote.hg + * + * SPDX-License-Identifier: GPL-3.0 + */ + +#include "settingsdialog.h" +#include <QApplication> +#include <QMenuBar> +#include <QToolButton> +#include <QVBoxLayout> + +SettingsDialog::SettingsDialog(QWidget *parent) + : QMainWindow(parent) +{ + resize(800, 600); + + // main menu + settingsMenu.setTitle(tr("Settings")); + settingsMenu.addAction(tr("Quit"), qApp, &QApplication::quit, QKeySequence("Ctrl+Q")); + menuBar()->addMenu(&settingsMenu); + + setCentralWidget(&treeWidget); + treeWidget.setColumnCount(2); + + //config.read() + + for(const auto &option : config.options()) { + auto *item = new QTreeWidgetItem(&treeWidget); + item->setText(0, QString::fromStdString(option->long_name())); + item->setText(1, QString::fromStdString(config.value<std::string>(option->long_name().c_str()).value_or(std::string()))); + } +} + +SettingsDialog::~SettingsDialog() = default; |