citra_qt: Split options into 'Specific' and 'Generic'

For easier usage. Also made the option list sortable.
This commit is contained in:
zhupengfei 2020-02-28 18:26:20 +08:00
parent f3e9780d10
commit a50ba7192b
No known key found for this signature in database
GPG key ID: DD129E108BD09378
7 changed files with 76 additions and 34 deletions

View file

@ -8,6 +8,8 @@
#include "common/param_package.h"
#include "core/dumping/ffmpeg_backend.h"
class QTreeWidgetItem;
namespace Ui {
class OptionsDialog;
}
@ -16,17 +18,19 @@ class OptionsDialog : public QDialog {
Q_OBJECT
public:
explicit OptionsDialog(QWidget* parent, std::vector<VideoDumper::OptionInfo> options,
explicit OptionsDialog(QWidget* parent, std::vector<VideoDumper::OptionInfo> specific_options,
std::vector<VideoDumper::OptionInfo> generic_options,
const std::string& current_value);
~OptionsDialog() override;
std::string GetCurrentValue() const;
private:
void PopulateOptions(const std::string& current_value);
void OnSetOptionValue(int id);
void PopulateOptions();
void OnSetOptionValue(QTreeWidgetItem* item);
std::unique_ptr<Ui::OptionsDialog> ui;
std::vector<VideoDumper::OptionInfo> options;
std::vector<VideoDumper::OptionInfo> specific_options;
std::vector<VideoDumper::OptionInfo> generic_options;
Common::ParamPackage current_values;
};