configure_input: Add ConfigureInputSimple as default input UI config

Greatly simplifies the current input UI, while still allowing power users to tweak advanced settings. Adds 'input profiles', which are easy autoconfigurations to make getting started easy and fast. Also has a custom option which brings up the current, full UI.
This commit is contained in:
Zach Hilman
2018-12-01 11:11:11 -05:00
parent 59ca8d458d
commit 233a804196
8 changed files with 293 additions and 1 deletions

View File

@ -0,0 +1,40 @@
// Copyright 2016 Citra Emulator Project
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.
#pragma once
#include <memory>
#include <QWidget>
class QPushButton;
class QString;
class QTimer;
namespace Ui {
class ConfigureInputSimple;
}
// Used by configuration loader to apply a profile if the input is invalid.
void ApplyInputProfileConfiguration(int profile_index);
class ConfigureInputSimple : public QWidget {
Q_OBJECT
public:
explicit ConfigureInputSimple(QWidget* parent = nullptr);
~ConfigureInputSimple() override;
/// Save all button configurations to settings file
void applyConfiguration();
private:
/// Load configuration settings.
void loadConfiguration();
void OnSelectProfile(int index);
void OnConfigure();
std::unique_ptr<Ui::ConfigureInputSimple> ui;
};