forked from dolphin-emu/dolphin
		
	
		
			
				
	
	
		
			56 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
// Copyright 2016 Dolphin Emulator Project
 | 
						|
// Licensed under GPLv2+
 | 
						|
// Refer to the license.txt file included.
 | 
						|
 | 
						|
#include "DolphinWX/WxEventUtils.h"
 | 
						|
 | 
						|
#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::State::Uninitialized);
 | 
						|
}
 | 
						|
 | 
						|
void OnEnableIfCoreUninitialized(wxUpdateUIEvent& event)
 | 
						|
{
 | 
						|
  event.Enable(Core::GetState() == Core::State::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::State::Paused);
 | 
						|
}
 | 
						|
 | 
						|
void OnEnableIfCoreRunningOrPaused(wxUpdateUIEvent& event)
 | 
						|
{
 | 
						|
  const auto state = Core::GetState();
 | 
						|
 | 
						|
  event.Enable(state == Core::State::Running || state == Core::State::Paused);
 | 
						|
}
 | 
						|
 | 
						|
void OnEnableIfCPUCanStep(wxUpdateUIEvent& event)
 | 
						|
{
 | 
						|
  event.Enable(Core::IsRunning() && CPU::IsStepping());
 | 
						|
}
 | 
						|
 | 
						|
void OnEnableIfNetplayNotRunning(wxUpdateUIEvent& event)
 | 
						|
{
 | 
						|
  event.Enable(!NetPlay::IsNetPlayRunning());
 | 
						|
}
 | 
						|
}  // namespace WxEventUtils
 |