Qt: Stub saving resume state when powering off
This commit is contained in:
parent
0200b9ffc1
commit
069bdd471c
|
@ -271,7 +271,7 @@ void MainWindow::connectSignals()
|
||||||
&MainWindow::onChangeDiscFromGameListActionTriggered);
|
&MainWindow::onChangeDiscFromGameListActionTriggered);
|
||||||
connect(m_ui.actionAddGameDirectory, &QAction::triggered,
|
connect(m_ui.actionAddGameDirectory, &QAction::triggered,
|
||||||
[this]() { getSettingsDialog()->getGameListSettingsWidget()->addSearchDirectory(this); });
|
[this]() { getSettingsDialog()->getGameListSettingsWidget()->addSearchDirectory(this); });
|
||||||
connect(m_ui.actionPowerOff, &QAction::triggered, m_host_interface, &QtHostInterface::powerOffSystem);
|
connect(m_ui.actionPowerOff, &QAction::triggered, [this]() { m_host_interface->powerOffSystem(true, false); });
|
||||||
connect(m_ui.actionReset, &QAction::triggered, m_host_interface, &QtHostInterface::resetSystem);
|
connect(m_ui.actionReset, &QAction::triggered, m_host_interface, &QtHostInterface::resetSystem);
|
||||||
connect(m_ui.actionPause, &QAction::toggled, m_host_interface, &QtHostInterface::pauseSystem);
|
connect(m_ui.actionPause, &QAction::toggled, m_host_interface, &QtHostInterface::pauseSystem);
|
||||||
connect(m_ui.actionLoadState, &QAction::triggered, this, [this]() { m_ui.menuLoadState->exec(QCursor::pos()); });
|
connect(m_ui.actionLoadState, &QAction::triggered, this, [this]() { m_ui.menuLoadState->exec(QCursor::pos()); });
|
||||||
|
|
|
@ -383,21 +383,23 @@ void QtHostInterface::addButtonToInputMap(const QString& binding, InputButtonHan
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void QtHostInterface::powerOffSystem()
|
void QtHostInterface::powerOffSystem(bool save_resume_state /* = false */, bool block_until_done /* = false */)
|
||||||
{
|
{
|
||||||
if (!isOnWorkerThread())
|
if (!isOnWorkerThread())
|
||||||
{
|
{
|
||||||
QMetaObject::invokeMethod(this, "powerOffSystem", Qt::QueuedConnection);
|
QMetaObject::invokeMethod(this, "powerOffSystem",
|
||||||
|
block_until_done ? Qt::BlockingQueuedConnection : Qt::QueuedConnection,
|
||||||
|
Q_ARG(bool, save_resume_state), Q_ARG(bool, block_until_done));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!m_system)
|
if (!m_system)
|
||||||
{
|
|
||||||
Log_ErrorPrintf("powerOffSystem() called without system");
|
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
m_system.reset();
|
if (save_resume_state)
|
||||||
|
Log_InfoPrintf("TODO: Save resume state");
|
||||||
|
|
||||||
|
DestroySystem();
|
||||||
m_audio_stream->PauseOutput(true);
|
m_audio_stream->PauseOutput(true);
|
||||||
m_display_window->destroyDeviceContext();
|
m_display_window->destroyDeviceContext();
|
||||||
|
|
||||||
|
|
|
@ -74,7 +74,7 @@ Q_SIGNALS:
|
||||||
|
|
||||||
public Q_SLOTS:
|
public Q_SLOTS:
|
||||||
void applySettings();
|
void applySettings();
|
||||||
void powerOffSystem();
|
void powerOffSystem(bool save_resume_state = false, bool block_until_done = false);
|
||||||
void resetSystem();
|
void resetSystem();
|
||||||
void pauseSystem(bool paused);
|
void pauseSystem(bool paused);
|
||||||
void changeDisc(QString new_disc_filename);
|
void changeDisc(QString new_disc_filename);
|
||||||
|
|
Loading…
Reference in New Issue