Merge pull request #6682 from spycrab/qt_minor_fixes

Qt: Minor fixes
This commit is contained in:
Tilka 2018-04-22 08:12:42 +01:00 committed by GitHub
commit c131b7c3b4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 22 additions and 1 deletions

View File

@ -595,7 +595,7 @@ bool MainWindow::RequestStop()
void MainWindow::ForceStop()
{
BootManager::Stop();
Core::Stop();
EnableScreenSaver(true);
}

View File

@ -18,6 +18,7 @@
#include "Core/Analytics.h"
#include "Core/ConfigManager.h"
#include "Core/Core.h"
#include "Core/PowerPC/PowerPC.h"
#include "DolphinQt2/Settings.h"
#include "UICommon/AutoUpdate.h"
@ -38,6 +39,9 @@ GeneralPane::GeneralPane(QWidget* parent) : QWidget(parent)
LoadConfig();
ConnectLayout();
connect(&Settings::Instance(), &Settings::EmulationStateChanged, this,
&GeneralPane::OnEmulationStateChanged);
}
void GeneralPane::CreateLayout()
@ -59,6 +63,17 @@ void GeneralPane::CreateLayout()
setLayout(m_main_layout);
}
void GeneralPane::OnEmulationStateChanged(Core::State state)
{
const bool running = state != Core::State::Uninitialized;
m_checkbox_dualcore->setEnabled(!running);
m_checkbox_cheats->setEnabled(!running);
m_radio_interpreter->setEnabled(!running);
m_radio_cached_interpreter->setEnabled(!running);
m_radio_jit->setEnabled(!running);
}
void GeneralPane::ConnectLayout()
{
connect(m_checkbox_dualcore, &QCheckBox::toggled, this, &GeneralPane::OnSaveConfig);

View File

@ -14,6 +14,11 @@ class QRadioButton;
class QSlider;
class QVBoxLayout;
namespace Core
{
enum class State;
}
class GeneralPane final : public QWidget
{
Q_OBJECT
@ -29,6 +34,7 @@ private:
void LoadConfig();
void OnSaveConfig();
void OnEmulationStateChanged(Core::State state);
// Widgets
QVBoxLayout* m_main_layout;