Path: blob/master/src/duckstation-qt/advancedsettingswidget.h
4802 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:23struct TweakOption24{25enum class Type26{27Boolean,28IntRange29};3031Type type;32QString description;33std::string key;34std::string section;3536union37{38struct39{40bool default_value;41} boolean;4243struct44{45int min_value;46int max_value;47int default_value;48} int_range;49};50};5152void addTweakOptions();53void onResetToDefaultClicked();5455void onLogChannelsButtonClicked();56void onAnyLogSinksChanged();57void onShowDebugOptionsStateChanged();5859SettingsWindow* m_dialog;6061Ui::AdvancedSettingsWidget m_ui;6263QVector<TweakOption> m_tweak_options;64};656667