Edit configure_dialog.h

This commit is contained in:
collecting
2025-10-04 00:37:46 +00:00
parent a5d3efa8da
commit c5260f0787

View File

@@ -7,16 +7,25 @@
#include <memory> #include <memory>
#include <vector> #include <vector>
#include <QDialog> #include <QDialog>
#include <QButtonGroup> #include "common/settings_enums.h"
#include "configuration/shared_widget.h" #include "citron/configuration/shared_widget.h" // <-- Correct header for Builder
#include "citron/configuration/configuration_shared.h"
#include "citron/configuration/shared_translation.h"
#include "citron/vk_device_info.h"
// Forward declarations for other types
class HotkeyRegistry;
class QButtonGroup;
class QTimer;
namespace InputCommon {
class InputSubsystem;
}
namespace Core { namespace Core {
class System; class System;
} }
namespace VkDeviceInfo {
struct Record;
}
namespace Ui {
class ConfigureDialog;
}
class ConfigureApplets; class ConfigureApplets;
class ConfigureAudio; class ConfigureAudio;
class ConfigureCpu; class ConfigureCpu;
@@ -27,56 +36,45 @@ class ConfigureGraphics;
class ConfigureGraphicsAdvanced; class ConfigureGraphicsAdvanced;
class ConfigureHotkeys; class ConfigureHotkeys;
class ConfigureInput; class ConfigureInput;
class ConfigureNetwork;
class ConfigureProfileManager; class ConfigureProfileManager;
class ConfigureSystem; class ConfigureSystem;
class ConfigureNetwork;
class ConfigureUi; class ConfigureUi;
class ConfigureWeb; class ConfigureWeb;
class HotkeyRegistry; class ConfigureDialog final : public QDialog {
namespace InputCommon {
class InputSubsystem;
}
namespace Ui {
class ConfigureDialog;
}
class ConfigureDialog : public QDialog {
Q_OBJECT Q_OBJECT
public: public:
explicit ConfigureDialog(QWidget* parent, HotkeyRegistry& registry_, explicit ConfigureDialog(QWidget* parent, HotkeyRegistry& registry,
InputCommon::InputSubsystem* input_subsystem, InputCommon::InputSubsystem* input_subsystem,
std::vector<VkDeviceInfo::Record>& vk_device_records, std::vector<VkDeviceInfo::Record>& vk_device_records,
Core::System& system_, bool enable_web_config = true); Core::System& system, bool enable_web_config);
~ConfigureDialog() override; ~ConfigureDialog() override;
void ApplyConfiguration(); void ApplyConfiguration();
private slots: public slots:
void OnLanguageChanged(const QString& locale); void UpdateTheme();
signals: signals:
void LanguageChanged(const QString& locale); void LanguageChanged(const QString& locale);
private: private:
void SetConfiguration();
void HandleApplyButtonClicked();
void changeEvent(QEvent* event) override; void changeEvent(QEvent* event) override;
void RetranslateUI(); void RetranslateUI();
void HandleApplyButtonClicked(); void OnLanguageChanged(const QString& locale);
void SetConfiguration();
// All members are now in the EXACT correct order to match the constructor
std::unique_ptr<Ui::ConfigureDialog> ui; std::unique_ptr<Ui::ConfigureDialog> ui;
HotkeyRegistry& registry; HotkeyRegistry& registry;
Core::System& system; Core::System& system;
std::unique_ptr<ConfigurationShared::Builder> builder; std::unique_ptr<ConfigurationShared::Builder> builder;
std::vector<ConfigurationShared::Tab*> tab_group;
std::unique_ptr<QButtonGroup> tab_button_group;
std::unique_ptr<ConfigureApplets> applets_tab; std::unique_ptr<ConfigureApplets> applets_tab;
std::unique_ptr<ConfigureAudio> audio_tab; std::unique_ptr<ConfigureAudio> audio_tab;
std::unique_ptr<ConfigureCpu> cpu_tab; std::unique_ptr<ConfigureCpu> cpu_tab;
@@ -92,4 +90,7 @@ private:
std::unique_ptr<ConfigureProfileManager> profile_tab; std::unique_ptr<ConfigureProfileManager> profile_tab;
std::unique_ptr<ConfigureSystem> system_tab; std::unique_ptr<ConfigureSystem> system_tab;
std::unique_ptr<ConfigureWeb> web_tab; std::unique_ptr<ConfigureWeb> web_tab;
std::unique_ptr<QButtonGroup> tab_button_group;
QTimer* rainbow_timer;
float rainbow_hue = 0.0f;
}; };