DolphinWX: Move common wxUpdateUIEvent functions to WxEventUtils

This commit is contained in:
Lioncash
2016-11-06 08:48:12 -05:00
parent 136a10482f
commit 5022c0dfb5
6 changed files with 85 additions and 98 deletions

View File

@ -6,15 +6,48 @@
#include <wx/event.h>
#include "Core/Core.h"
#include "Core/HW/CPU.h"
#include "Core/NetPlayProto.h"
namespace WxEventUtils
{
void OnEnableIfCoreInitialized(wxUpdateUIEvent& event)
{
event.Enable(Core::GetState() != Core::CORE_UNINITIALIZED);
}
void OnEnableIfCoreUninitialized(wxUpdateUIEvent& event)
{
event.Enable(Core::GetState() == Core::CORE_UNINITIALIZED);
}
void OnEnableIfCoreRunning(wxUpdateUIEvent& event)
{
event.Enable(Core::IsRunning());
}
void OnEnableIfCoreNotRunning(wxUpdateUIEvent& event)
{
event.Enable(!Core::IsRunning());
}
void OnEnableIfCorePaused(wxUpdateUIEvent& event)
{
event.Enable(Core::GetState() == Core::CORE_PAUSE);
}
void OnEnableIfCoreRunningOrPaused(wxUpdateUIEvent& event)
{
const auto state = Core::GetState();
event.Enable(state == Core::CORE_RUN || state == Core::CORE_PAUSE);
}
void OnEnableIfCPUCanStep(wxUpdateUIEvent& event)
{
event.Enable(Core::IsRunning() && CPU::IsStepping());
}
void OnEnableIfNetplayNotRunning(wxUpdateUIEvent& event)
{
event.Enable(!NetPlay::IsNetPlayRunning());