summaryrefslogtreecommitdiff
path: root/src/yuzu/configuration/configure_graphics_advanced.h
diff options
context:
space:
mode:
authorliamwhite <liamwhite@users.noreply.github.com>2023-08-02 14:25:52 -0400
committerGitHub <noreply@github.com>2023-08-02 14:25:52 -0400
commitfca7d975fdbeb1c63677b80efc03920affee4b12 (patch)
treebbded6cf80886c6def87bae92cf6784340165de9 /src/yuzu/configuration/configure_graphics_advanced.h
parent36aca262e3dc1cac4ee7e1415ddde8e4255ea42b (diff)
parent32b4d63a5bdc838c26582235b9bf16bde300a760 (diff)
Merge pull request #10839 from lat9nq/pgc-plus
general: Reimplement per-game configurations
Diffstat (limited to 'src/yuzu/configuration/configure_graphics_advanced.h')
-rw-r--r--src/yuzu/configuration/configure_graphics_advanced.h39
1 files changed, 16 insertions, 23 deletions
diff --git a/src/yuzu/configuration/configure_graphics_advanced.h b/src/yuzu/configuration/configure_graphics_advanced.h
index 369a7c83e..78b5389c3 100644
--- a/src/yuzu/configuration/configure_graphics_advanced.h
+++ b/src/yuzu/configuration/configure_graphics_advanced.h
@@ -4,51 +4,44 @@
#pragma once
#include <memory>
+#include <vector>
#include <QWidget>
+#include "yuzu/configuration/configuration_shared.h"
namespace Core {
class System;
}
-namespace ConfigurationShared {
-enum class CheckState;
-}
-
namespace Ui {
class ConfigureGraphicsAdvanced;
}
-class ConfigureGraphicsAdvanced : public QWidget {
- Q_OBJECT
+namespace ConfigurationShared {
+class Builder;
+}
+class ConfigureGraphicsAdvanced : public ConfigurationShared::Tab {
public:
- explicit ConfigureGraphicsAdvanced(const Core::System& system_, QWidget* parent = nullptr);
+ explicit ConfigureGraphicsAdvanced(
+ const Core::System& system_, std::shared_ptr<std::vector<ConfigurationShared::Tab*>> group,
+ const ConfigurationShared::Builder& builder, QWidget* parent = nullptr);
~ConfigureGraphicsAdvanced() override;
- void ApplyConfiguration();
- void SetConfiguration();
+ void ApplyConfiguration() override;
+ void SetConfiguration() override;
void ExposeComputeOption();
private:
+ void Setup(const ConfigurationShared::Builder& builder);
void changeEvent(QEvent* event) override;
void RetranslateUI();
- void SetupPerGameUI();
-
std::unique_ptr<Ui::ConfigureGraphicsAdvanced> ui;
- ConfigurationShared::CheckState async_present;
- ConfigurationShared::CheckState renderer_force_max_clock;
- ConfigurationShared::CheckState use_vsync;
- ConfigurationShared::CheckState async_astc;
- ConfigurationShared::CheckState use_reactive_flushing;
- ConfigurationShared::CheckState use_asynchronous_shaders;
- ConfigurationShared::CheckState use_fast_gpu_time;
- ConfigurationShared::CheckState use_vulkan_driver_pipeline_cache;
- ConfigurationShared::CheckState enable_compute_pipelines;
- ConfigurationShared::CheckState use_video_framerate;
- ConfigurationShared::CheckState barrier_feedback_loops;
-
const Core::System& system;
+
+ std::vector<std::function<void(bool)>> apply_funcs;
+
+ QWidget* checkbox_enable_compute_pipelines{};
};