mirror of
https://git.citron-emu.org/citron/emulator
synced 2025-12-21 11:33:35 +00:00
Edit configure_dialog.h
This commit is contained in:
@@ -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"
|
|
||||||
|
|
||||||
namespace Core {
|
// Forward declarations for other types
|
||||||
class System;
|
class HotkeyRegistry;
|
||||||
|
class QButtonGroup;
|
||||||
|
class QTimer;
|
||||||
|
namespace InputCommon {
|
||||||
|
class InputSubsystem;
|
||||||
|
}
|
||||||
|
namespace Core {
|
||||||
|
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;
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user