mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-04 07:09:03 +00:00
Qt/GeneralPane: Disable certain options while emulation is running
This commit is contained in:
parent
9dcc8131df
commit
b2e5f1d85f
2 changed files with 21 additions and 0 deletions
|
@ -18,6 +18,7 @@
|
||||||
|
|
||||||
#include "Core/Analytics.h"
|
#include "Core/Analytics.h"
|
||||||
#include "Core/ConfigManager.h"
|
#include "Core/ConfigManager.h"
|
||||||
|
#include "Core/Core.h"
|
||||||
#include "Core/PowerPC/PowerPC.h"
|
#include "Core/PowerPC/PowerPC.h"
|
||||||
#include "DolphinQt2/Settings.h"
|
#include "DolphinQt2/Settings.h"
|
||||||
#include "UICommon/AutoUpdate.h"
|
#include "UICommon/AutoUpdate.h"
|
||||||
|
@ -38,6 +39,9 @@ GeneralPane::GeneralPane(QWidget* parent) : QWidget(parent)
|
||||||
LoadConfig();
|
LoadConfig();
|
||||||
|
|
||||||
ConnectLayout();
|
ConnectLayout();
|
||||||
|
|
||||||
|
connect(&Settings::Instance(), &Settings::EmulationStateChanged, this,
|
||||||
|
&GeneralPane::OnEmulationStateChanged);
|
||||||
}
|
}
|
||||||
|
|
||||||
void GeneralPane::CreateLayout()
|
void GeneralPane::CreateLayout()
|
||||||
|
@ -59,6 +63,17 @@ void GeneralPane::CreateLayout()
|
||||||
setLayout(m_main_layout);
|
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()
|
void GeneralPane::ConnectLayout()
|
||||||
{
|
{
|
||||||
connect(m_checkbox_dualcore, &QCheckBox::toggled, this, &GeneralPane::OnSaveConfig);
|
connect(m_checkbox_dualcore, &QCheckBox::toggled, this, &GeneralPane::OnSaveConfig);
|
||||||
|
|
|
@ -14,6 +14,11 @@ class QRadioButton;
|
||||||
class QSlider;
|
class QSlider;
|
||||||
class QVBoxLayout;
|
class QVBoxLayout;
|
||||||
|
|
||||||
|
namespace Core
|
||||||
|
{
|
||||||
|
enum class State;
|
||||||
|
}
|
||||||
|
|
||||||
class GeneralPane final : public QWidget
|
class GeneralPane final : public QWidget
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
@ -29,6 +34,7 @@ private:
|
||||||
|
|
||||||
void LoadConfig();
|
void LoadConfig();
|
||||||
void OnSaveConfig();
|
void OnSaveConfig();
|
||||||
|
void OnEmulationStateChanged(Core::State state);
|
||||||
|
|
||||||
// Widgets
|
// Widgets
|
||||||
QVBoxLayout* m_main_layout;
|
QVBoxLayout* m_main_layout;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue