OpenRGB/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.h

86 lines
2.9 KiB
C++

/*---------------------------------------------------------*\
| OpenRGBSettingsPage.h |
| |
| User interface for general settings page |
| |
| This file is part of the OpenRGB project |
| SPDX-License-Identifier: GPL-2.0-only |
\*---------------------------------------------------------*/
#pragma once
#include <QCoreApplication>
#include <QDirIterator>
#include <QTranslator>
#include <QWidget>
#include <json.hpp>
#include "ui_OpenRGBSettingsPage.h"
using json = nlohmann::json;
namespace Ui
{
class OpenRGBSettingsPage;
}
class Ui::OpenRGBSettingsPage : public QWidget
{
Q_OBJECT
public:
explicit OpenRGBSettingsPage(QWidget *parent = nullptr);
~OpenRGBSettingsPage();
signals:
void TrayIconChanged(bool tray_icon);
public slots:
void UpdateProfiles();
private:
Ui::OpenRGBSettingsPageUi *ui;
void SaveSettings();
void CreateAutoStartSettings();
void ConfigureAutoStart();
void RemediateAutoStartProfile(json &autostart_settings);
void SetAutoStartVisibility(bool visible);
void SaveAutoStartSetting(std::string name, QString value);
void SaveAutoStartSetting(std::string name, bool value);
bool theme_initialized = false;
bool autostart_initialized = false;
QTranslator translator;
private slots:
void changeEvent(QEvent *event);
void on_ComboBoxLanguage_currentTextChanged(const QString);
void on_ComboBoxTheme_currentTextChanged(const QString);
void on_CheckboxMinimizeOnClose_clicked();
void on_CheckboxTrayIconGreyscale_clicked();
void on_CheckboxLoadGeometry_clicked();
void on_CheckboxSaveGeometry_clicked();
void on_CheckboxAutoStart_clicked();
void on_CheckboxAutoStartMinimized_clicked();
void on_CheckboxAutoStartServer_clicked();
void on_CheckboxAutoStartClient_clicked();
void on_CheckboxAutoStartProfile_clicked();
void on_TextServerHost_textChanged(const QString);
void on_TextServerPort_textChanged(const QString);
void on_TextClientHost_textChanged(const QString);
void on_TextCustomArgs_textChanged(const QString);
void on_ComboBoxAutoStartProfile_currentTextChanged(const QString);
void on_CheckboxAutoStartSetServerHost_clicked();
void on_CheckboxAutoStartSetServerPort_clicked();
void on_CheckboxAutoStartCustom_clicked();
void on_CheckboxRunZoneChecks_clicked();
void on_OpenSettingsFolderButton_clicked();
void on_CheckboxLogConsole_clicked();
void on_CheckboxAMDSMBusReduceCPU_clicked();
void on_CheckboxSharedSMBusAccess_clicked();
void on_CheckboxSetOnExit_clicked(bool checked);
void on_ComboBoxExitProfile_currentTextChanged(const QString exit_profile_name);
void on_CheckboxDisableKeyExpansion_clicked();
void on_CheckboxShowLEDView_clicked();
};