citra-qt: service: add convenient LLE service module configuration (#3967)

* citra-qt: service: add convenient LLE service module configuration

* fix SDL settings

* unexpose AttemptLLE

* static

* fix array includes

* use default with writesetting
This commit is contained in:
BreadFish64 2018-08-09 14:10:11 -05:00 committed by Ben
parent dceb4150a8
commit d09646ab9d
11 changed files with 171 additions and 40 deletions

View file

@ -0,0 +1,32 @@
// Copyright 2018 Citra Emulator Project
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.
#include <QCheckBox>
#include <QLabel>
#include <QLayout>
#include <QScrollArea>
#include "citra_qt/debugger/lle_service_modules.h"
#include "core/settings.h"
LLEServiceModulesWidget::LLEServiceModulesWidget(QWidget* parent)
: QDockWidget(tr("Toggle LLE Service Modules"), parent) {
QScrollArea* scroll_area = new QScrollArea;
QLayout* scroll_layout = new QVBoxLayout;
for (const auto& service_module : Settings::values.lle_modules) {
QCheckBox* check_box =
new QCheckBox(QString::fromStdString(service_module.first), scroll_area);
check_box->setChecked(service_module.second);
connect(check_box, &QCheckBox::toggled, [check_box] {
Settings::values.lle_modules.find(check_box->text().toStdString())->second =
check_box->isChecked();
});
scroll_layout->addWidget(check_box);
}
QWidget* scroll_area_contents = new QWidget;
scroll_area_contents->setLayout(scroll_layout);
scroll_area->setWidget(scroll_area_contents);
setWidget(scroll_area);
}
LLEServiceModulesWidget::~LLEServiceModulesWidget() = default;

View file

@ -0,0 +1,15 @@
// Copyright 2018 Citra Emulator Project
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.
#pragma once
#include <QDockWidget>
class LLEServiceModulesWidget : public QDockWidget {
Q_OBJECT
public:
explicit LLEServiceModulesWidget(QWidget* parent = nullptr);
~LLEServiceModulesWidget();
};