Path: blob/master/src/duckstation-qt/advancedsettingswidget.h
4246 views
// SPDX-FileCopyrightText: 2019-2024 Connor McLaughlin <[email protected]>1// SPDX-License-Identifier: CC-BY-NC-ND-4.023#pragma once4#include <QtCore/QVector>5#include <QtWidgets/QWidget>67#include "ui_advancedsettingswidget.h"89class SettingsWindow;1011class AdvancedSettingsWidget : public QWidget12{13Q_OBJECT1415public:16explicit AdvancedSettingsWidget(SettingsWindow* dialog, QWidget* parent);17~AdvancedSettingsWidget();1819Q_SIGNALS:20void onShowDebugOptionsChanged(bool enabled);2122private Q_SLOTS:23void onLogChannelsButtonClicked();24void onAnyLogSinksChanged();25void onShowDebugOptionsStateChanged();2627private:28struct TweakOption29{30enum class Type31{32Boolean,33IntRange34};3536Type type;37QString description;38std::string key;39std::string section;4041union42{43struct44{45bool default_value;46} boolean;4748struct49{50int min_value;51int max_value;52int default_value;53} int_range;54};55};5657SettingsWindow* m_dialog;5859Ui::AdvancedSettingsWidget m_ui;6061QVector<TweakOption> m_tweak_options;6263void addTweakOptions();64void onResetToDefaultClicked();65};666768