40 lines
950 B
C++
40 lines
950 B
C++
#pragma once
|
|||
|
|
|
||
|
|
#include <QWidget>
|
||
|
|
#include <QTabWidget>
|
||
|
|
#include <QVBoxLayout>
|
||
|
|
#include <QHBoxLayout>
|
||
|
|
#include <QPushButton>
|
||
|
|
#include <QLabel>
|
||
|
|
#include <QListWidget>
|
||
|
|
#include <QComboBox>
|
||
|
|
#include <QCheckBox>
|
||
|
|
#include <QRadioButton>
|
||
|
|
#include <QButtonGroup>
|
||
|
|
#include <QVariant>
|
||
|
|
|
||
|
|
class SettingsView : public QWidget {
|
||
|
|
Q_OBJECT
|
||
|
|
|
||
|
|
public:
|
||
|
|
explicit SettingsView(QWidget *parent = nullptr);
|
||
|
|
~SettingsView() override = default;
|
||
|
|
|
||
|
|
signals:
|
||
|
|
void accountAddRequested();
|
||
|
|
void accountEditRequested(int accountIndex);
|
||
|
|
void accountDeleteRequested(int accountIndex);
|
||
|
|
void themeChanged(const QString &theme);
|
||
|
|
void settingChanged(const QString &key, const QVariant &value);
|
||
|
|
|
||
|
|
private:
|
||
|
|
void setupUI();
|
||
|
|
QWidget* createAccountsTab();
|
||
|
|
QWidget* createGeneralTab();
|
||
|
|
QWidget* createAppearanceTab();
|
||
|
|
|
||
|
|
QTabWidget *m_tabWidget;
|
||
|
|
QListWidget *m_accountList;
|
||
|
|
QComboBox *m_syncIntervalCombo;
|
||
|
|
QButtonGroup *m_themeGroup;
|
||
|
|
};
|