pineapple-src/src/yuzu/configuration/configure_graphics_advanced.h

48 lines
1.2 KiB
C
Raw Normal View History

2022-11-05 12:58:44 +00:00
// SPDX-FileCopyrightText: Copyright 2020 yuzu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include <memory>
2023-07-22 07:33:03 +00:00
#include <vector>
2022-11-05 12:58:44 +00:00
#include <QWidget>
2023-07-22 00:54:19 +00:00
#include "yuzu/configuration/configuration_shared.h"
2022-11-05 12:58:44 +00:00
namespace Core {
class System;
}
namespace Ui {
class ConfigureGraphicsAdvanced;
}
2023-07-22 00:54:19 +00:00
namespace ConfigurationShared {
class Builder;
}
2022-11-05 12:58:44 +00:00
2023-07-22 00:54:19 +00:00
class ConfigureGraphicsAdvanced : public ConfigurationShared::Tab {
2022-11-05 12:58:44 +00:00
public:
2023-07-22 00:54:19 +00:00
explicit ConfigureGraphicsAdvanced(
2023-07-22 07:33:03 +00:00
const Core::System& system_, std::shared_ptr<std::vector<ConfigurationShared::Tab*>> group,
2023-07-22 00:54:19 +00:00
const ConfigurationShared::Builder& builder, QWidget* parent = nullptr);
2022-11-05 12:58:44 +00:00
~ConfigureGraphicsAdvanced() override;
2023-07-22 00:54:19 +00:00
void ApplyConfiguration() override;
void SetConfiguration() override;
2022-11-05 12:58:44 +00:00
2023-05-07 22:52:13 +00:00
void ExposeComputeOption();
2022-11-05 12:58:44 +00:00
private:
2023-07-22 00:54:19 +00:00
void Setup(const ConfigurationShared::Builder& builder);
2022-11-05 12:58:44 +00:00
void changeEvent(QEvent* event) override;
void RetranslateUI();
std::unique_ptr<Ui::ConfigureGraphicsAdvanced> ui;
const Core::System& system;
2023-07-22 00:54:19 +00:00
2023-07-22 07:33:03 +00:00
std::vector<std::function<void(bool)>> apply_funcs;
2023-07-22 00:54:19 +00:00
QWidget* checkbox_enable_compute_pipelines{};
2022-11-05 12:58:44 +00:00
};