mirror of https://github.com/stenzek/duckstation
				
				
				
			
			You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			67 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C++
		
	
			
		
		
	
	
			67 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C++
		
	
// SPDX-FileCopyrightText: 2019-2024 Connor McLaughlin <stenzek@gmail.com>
 | 
						|
// SPDX-License-Identifier: CC-BY-NC-ND-4.0
 | 
						|
 | 
						|
#pragma once
 | 
						|
#include <QtCore/QVector>
 | 
						|
#include <QtWidgets/QWidget>
 | 
						|
 | 
						|
#include "ui_advancedsettingswidget.h"
 | 
						|
 | 
						|
class SettingsWindow;
 | 
						|
 | 
						|
class AdvancedSettingsWidget : public QWidget
 | 
						|
{
 | 
						|
  Q_OBJECT
 | 
						|
 | 
						|
public:
 | 
						|
  explicit AdvancedSettingsWidget(SettingsWindow* dialog, QWidget* parent);
 | 
						|
  ~AdvancedSettingsWidget();
 | 
						|
 | 
						|
Q_SIGNALS:
 | 
						|
  void onShowDebugOptionsChanged(bool enabled);
 | 
						|
 | 
						|
private Q_SLOTS:
 | 
						|
  void onLogChannelsButtonClicked();
 | 
						|
  void onAnyLogSinksChanged();
 | 
						|
  void onShowDebugOptionsStateChanged();
 | 
						|
 | 
						|
private:
 | 
						|
  struct TweakOption
 | 
						|
  {
 | 
						|
    enum class Type
 | 
						|
    {
 | 
						|
      Boolean,
 | 
						|
      IntRange
 | 
						|
    };
 | 
						|
 | 
						|
    Type type;
 | 
						|
    QString description;
 | 
						|
    std::string key;
 | 
						|
    std::string section;
 | 
						|
 | 
						|
    union
 | 
						|
    {
 | 
						|
      struct
 | 
						|
      {
 | 
						|
        bool default_value;
 | 
						|
      } boolean;
 | 
						|
 | 
						|
      struct
 | 
						|
      {
 | 
						|
        int min_value;
 | 
						|
        int max_value;
 | 
						|
        int default_value;
 | 
						|
      } int_range;
 | 
						|
    };
 | 
						|
  };
 | 
						|
 | 
						|
  SettingsWindow* m_dialog;
 | 
						|
 | 
						|
  Ui::AdvancedSettingsWidget m_ui;
 | 
						|
 | 
						|
  QVector<TweakOption> m_tweak_options;
 | 
						|
 | 
						|
  void addTweakOptions();
 | 
						|
  void onResetToDefaultClicked();
 | 
						|
};
 |