mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-31 10:09:36 -06:00
Merge pull request #716 from delroth/vertex-loader
Make vertex loader testable
This commit is contained in:
@ -4,41 +4,17 @@ endif()
|
||||
|
||||
set(LIBS core
|
||||
${LZO}
|
||||
discio
|
||||
bdisasm
|
||||
inputcommon
|
||||
common
|
||||
audiocommon
|
||||
z
|
||||
sfml-network
|
||||
${GTK2_LIBRARIES})
|
||||
|
||||
if((NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin") AND (NOT ANDROID))
|
||||
set(LIBS ${LIBS} rt)
|
||||
endif()
|
||||
|
||||
if(NOT ANDROID)
|
||||
if(USE_X11)
|
||||
set(LIBS ${LIBS} ${X11_LIBRARIES}
|
||||
${XINPUT2_LIBRARIES}
|
||||
${XRANDR_LIBRARIES})
|
||||
set(LIBS ${LIBS} ${XRANDR_LIBRARIES})
|
||||
endif()
|
||||
if(USE_WAYLAND)
|
||||
set(LIBS ${LIBS} ${WAYLAND_LIBRARIES}
|
||||
${XKBCOMMON_LIBRARIES})
|
||||
set(LIBS ${LIBS} ${WAYLAND_LIBRARIES} ${XKBCOMMON_LIBRARIES})
|
||||
endif()
|
||||
|
||||
link_directories(${CMAKE_PREFIX_PATH}/lib)
|
||||
|
||||
if(SDL2_FOUND)
|
||||
# Using shared SDL2
|
||||
set(LIBS ${LIBS} ${SDL2_LIBRARY})
|
||||
else(SDL2_FOUND)
|
||||
if(SDL_FOUND)
|
||||
# Using shared SDL
|
||||
set(LIBS ${LIBS} ${SDL_LIBRARY})
|
||||
endif()
|
||||
endif()
|
||||
else()
|
||||
set(LIBS ${LIBS} png iconv)
|
||||
endif()
|
||||
@ -87,6 +63,7 @@ if(wxWidgets_FOUND)
|
||||
MemoryCards/WiiSaveCrypted.cpp
|
||||
NetWindow.cpp
|
||||
PatchAddEdit.cpp
|
||||
SoftwareVideoConfigDialog.cpp
|
||||
TASInputDlg.cpp
|
||||
VideoConfigDiag.cpp
|
||||
WXInputBase.cpp
|
||||
@ -123,6 +100,7 @@ else()
|
||||
|
||||
endif()
|
||||
endif()
|
||||
set(SRCS ${SRCS} GLInterface/GLInterface.cpp)
|
||||
|
||||
if(WIN32)
|
||||
set(SRCS ${SRCS} stdafx.cpp)
|
||||
@ -134,7 +112,6 @@ elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
|
||||
${COREAUDIO_LIBRARY}
|
||||
${COREFUND_LIBRARY}
|
||||
${CORESERV_LIBRARY}
|
||||
${IOB_LIBRARY}
|
||||
${IOK_LIBRARY}
|
||||
${FORCEFEEDBACK}
|
||||
)
|
||||
|
@ -74,6 +74,7 @@
|
||||
<ClCompile Include="FrameTools.cpp" />
|
||||
<ClCompile Include="GameListCtrl.cpp" />
|
||||
<ClCompile Include="GeckoCodeDiag.cpp" />
|
||||
<ClCompile Include="GLInterface\GLInterface.cpp" />
|
||||
<ClCompile Include="GLInterface\WGL.cpp" />
|
||||
<ClCompile Include="HotkeyDlg.cpp" />
|
||||
<ClCompile Include="InputConfigDiag.cpp" />
|
||||
@ -90,6 +91,7 @@
|
||||
<ClCompile Include="MemoryCards\WiiSaveCrypted.cpp" />
|
||||
<ClCompile Include="NetWindow.cpp" />
|
||||
<ClCompile Include="PatchAddEdit.cpp" />
|
||||
<ClCompile Include="SoftwareVideoConfigDialog.cpp" />
|
||||
<ClCompile Include="stdafx.cpp">
|
||||
<PrecompiledHeader>Create</PrecompiledHeader>
|
||||
</ClCompile>
|
||||
@ -125,7 +127,6 @@
|
||||
<ClInclude Include="Frame.h" />
|
||||
<ClInclude Include="GameListCtrl.h" />
|
||||
<ClInclude Include="GeckoCodeDiag.h" />
|
||||
<ClInclude Include="GLInterface\InterfaceBase.h" />
|
||||
<ClInclude Include="GLInterface\WGL.h" />
|
||||
<ClInclude Include="Globals.h" />
|
||||
<ClInclude Include="HotkeyDlg.h" />
|
||||
@ -139,6 +140,7 @@
|
||||
<ClInclude Include="MemoryCards\WiiSaveCrypted.h" />
|
||||
<ClInclude Include="NetWindow.h" />
|
||||
<ClInclude Include="PatchAddEdit.h" />
|
||||
<ClInclude Include="SoftwareVideoConfigDialog.h" />
|
||||
<ClInclude Include="stdafx.h" />
|
||||
<ClInclude Include="TASInputDlg.h" />
|
||||
<ClInclude Include="VideoConfigDiag.h" />
|
||||
|
@ -27,6 +27,7 @@
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="GLInterface\GLInterface.cpp" />
|
||||
<ClCompile Include="GLInterface\WGL.cpp" />
|
||||
<ClCompile Include="Main.cpp" />
|
||||
<ClCompile Include="MainNoGUI.cpp" />
|
||||
@ -153,9 +154,11 @@
|
||||
<Filter>GUI</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="stdafx.cpp" />
|
||||
<ClCompile Include="SoftwareVideoConfigDialog.cpp">
|
||||
<Filter>GUI\Video</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="GLInterface\InterfaceBase.h" />
|
||||
<ClInclude Include="GLInterface\WGL.h" />
|
||||
<ClInclude Include="Main.h" />
|
||||
<ClInclude Include="WXInputBase.h" />
|
||||
@ -276,6 +279,9 @@
|
||||
</ClInclude>
|
||||
<ClInclude Include="stdafx.h" />
|
||||
<ClInclude Include="GLInterface\GLInterface.h" />
|
||||
<ClInclude Include="SoftwareVideoConfigDialog.h">
|
||||
<Filter>GUI\Video</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Text Include="CMakeLists.txt" />
|
||||
|
@ -8,7 +8,7 @@
|
||||
#import <AppKit/AppKit.h>
|
||||
#endif
|
||||
|
||||
#include "DolphinWX/GLInterface/InterfaceBase.h"
|
||||
#include "VideoBackends/OGL/GLInterfaceBase.h"
|
||||
|
||||
class cInterfaceAGL : public cInterfaceBase
|
||||
{
|
||||
|
@ -8,7 +8,7 @@
|
||||
#include <EGL/egl.h>
|
||||
|
||||
#include "Core/ConfigManager.h"
|
||||
#include "DolphinWX/GLInterface/InterfaceBase.h"
|
||||
#include "VideoBackends/OGL/GLInterfaceBase.h"
|
||||
|
||||
|
||||
class cPlatform
|
||||
|
23
Source/Core/DolphinWX/GLInterface/GLInterface.cpp
Normal file
23
Source/Core/DolphinWX/GLInterface/GLInterface.cpp
Normal file
@ -0,0 +1,23 @@
|
||||
// Copyright 2014 Dolphin Emulator Project
|
||||
// Licensed under GPLv2
|
||||
// Refer to the license.txt file included.
|
||||
|
||||
#include "DolphinWX/GLInterface/GLInterface.h"
|
||||
#include "VideoBackends/OGL/GLInterfaceBase.h"
|
||||
|
||||
GLWindow GLWin;
|
||||
|
||||
cInterfaceBase* HostGL_CreateGLInterface()
|
||||
{
|
||||
#if defined(USE_EGL) && USE_EGL
|
||||
return new cInterfaceEGL;
|
||||
#elif defined(__APPLE__)
|
||||
return new cInterfaceAGL;
|
||||
#elif defined(_WIN32)
|
||||
return new cInterfaceWGL;
|
||||
#elif defined(HAVE_X11) && HAVE_X11
|
||||
return new cInterfaceGLX;
|
||||
#else
|
||||
return nullptr;
|
||||
#endif
|
||||
}
|
@ -108,5 +108,4 @@ typedef struct {
|
||||
unsigned int width, height;
|
||||
} GLWindow;
|
||||
|
||||
extern cInterfaceBase *GLInterface;
|
||||
extern GLWindow GLWin;
|
||||
|
@ -6,8 +6,8 @@
|
||||
|
||||
#include <string>
|
||||
|
||||
#include "DolphinWX/GLInterface/InterfaceBase.h"
|
||||
#include "DolphinWX/GLInterface/X11_Util.h"
|
||||
#include "VideoBackends/OGL/GLInterfaceBase.h"
|
||||
|
||||
class cInterfaceGLX : public cInterfaceBase
|
||||
{
|
||||
|
@ -1,43 +0,0 @@
|
||||
// Copyright 2013 Dolphin Emulator Project
|
||||
// Licensed under GPLv2
|
||||
// Refer to the license.txt file included.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
|
||||
#include "Common/Common.h"
|
||||
|
||||
enum GLInterfaceMode {
|
||||
MODE_DETECT = 0,
|
||||
MODE_OPENGL,
|
||||
MODE_OPENGLES2,
|
||||
MODE_OPENGLES3,
|
||||
};
|
||||
|
||||
class cInterfaceBase
|
||||
{
|
||||
protected:
|
||||
// Window dimensions.
|
||||
u32 s_backbuffer_width;
|
||||
u32 s_backbuffer_height;
|
||||
|
||||
u32 s_opengl_mode;
|
||||
public:
|
||||
virtual void Swap() {}
|
||||
virtual void UpdateFPSDisplay(const std::string& text) {}
|
||||
virtual void SetMode(u32 mode) { s_opengl_mode = GLInterfaceMode::MODE_OPENGL; }
|
||||
virtual u32 GetMode() { return s_opengl_mode; }
|
||||
virtual void* GetFuncAddress(const std::string& name) { return nullptr; }
|
||||
virtual bool Create(void *&window_handle) { return true; }
|
||||
virtual bool MakeCurrent() { return true; }
|
||||
virtual bool ClearCurrent() { return true; }
|
||||
virtual void Shutdown() {}
|
||||
|
||||
virtual void SwapInterval(int Interval) { }
|
||||
virtual u32 GetBackBufferWidth() { return s_backbuffer_width; }
|
||||
virtual u32 GetBackBufferHeight() { return s_backbuffer_height; }
|
||||
virtual void SetBackBufferDimensions(u32 W, u32 H) {s_backbuffer_width = W; s_backbuffer_height = H; }
|
||||
virtual void Update() { }
|
||||
virtual bool PeekMessages() { return false; }
|
||||
};
|
@ -5,7 +5,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include "DolphinWX/GLInterface/InterfaceBase.h"
|
||||
#include "VideoBackends/OGL/GLInterfaceBase.h"
|
||||
|
||||
class cInterfaceWGL : public cInterfaceBase
|
||||
{
|
||||
|
@ -46,6 +46,8 @@
|
||||
#include "DolphinWX/Frame.h"
|
||||
#include "DolphinWX/Globals.h"
|
||||
#include "DolphinWX/Main.h"
|
||||
#include "DolphinWX/SoftwareVideoConfigDialog.h"
|
||||
#include "DolphinWX/VideoConfigDiag.h"
|
||||
#include "DolphinWX/WxUtils.h"
|
||||
#include "DolphinWX/Debugger/CodeWindow.h"
|
||||
#include "DolphinWX/Debugger/JitWindow.h"
|
||||
@ -686,3 +688,18 @@ void Host_ConnectWiimote(int wm_idx, bool connect)
|
||||
{
|
||||
CFrame::ConnectWiimote(wm_idx, connect);
|
||||
}
|
||||
|
||||
void Host_ShowVideoConfig(void* parent, const std::string& backend_name,
|
||||
const std::string& config_name)
|
||||
{
|
||||
if (backend_name == "Direct3D" || backend_name == "OpenGL")
|
||||
{
|
||||
VideoConfigDiag diag((wxWindow*)parent, backend_name, config_name);
|
||||
diag.ShowModal();
|
||||
}
|
||||
else if (backend_name == "Software Renderer")
|
||||
{
|
||||
SoftwareVideoConfigDialog diag((wxWindow*)parent, backend_name, config_name);
|
||||
diag.ShowModal();
|
||||
}
|
||||
}
|
||||
|
@ -125,6 +125,8 @@ void Host_SysMessage(const char *fmt, ...)
|
||||
|
||||
void Host_SetWiiMoteConnectionState(int _State) {}
|
||||
|
||||
void Host_ShowVideoConfig(void*, const std::string&, const std::string&) {}
|
||||
|
||||
#define DVD_BANNER_WIDTH 96
|
||||
#define DVD_BANNER_HEIGHT 32
|
||||
std::vector<std::string> m_volume_names;
|
||||
|
@ -17,6 +17,7 @@
|
||||
#include "Core/ConfigManager.h"
|
||||
#include "Core/Core.h"
|
||||
#include "Core/CoreParameter.h"
|
||||
#include "Core/Host.h"
|
||||
#include "Core/HW/Wiimote.h"
|
||||
#include "Core/PowerPC/PowerPC.h"
|
||||
|
||||
@ -133,6 +134,8 @@ void Host_SysMessage(const char *fmt, ...)
|
||||
|
||||
void Host_SetWiiMoteConnectionState(int _State) {}
|
||||
|
||||
void Host_ShowVideoConfig(void*, const std::string&, const std::string&) {}
|
||||
|
||||
#if HAVE_X11
|
||||
void X11_MainLoop()
|
||||
{
|
||||
|
144
Source/Core/DolphinWX/SoftwareVideoConfigDialog.cpp
Normal file
144
Source/Core/DolphinWX/SoftwareVideoConfigDialog.cpp
Normal file
@ -0,0 +1,144 @@
|
||||
// Copyright 2013 Dolphin Emulator Project
|
||||
// Licensed under GPLv2
|
||||
// Refer to the license.txt file included.
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <wx/button.h>
|
||||
#include <wx/checkbox.h>
|
||||
#include <wx/combobox.h>
|
||||
#include <wx/notebook.h>
|
||||
#include <wx/panel.h>
|
||||
#include <wx/spinctrl.h>
|
||||
#include <wx/stattext.h>
|
||||
#include <wx/textctrl.h>
|
||||
#include <wx/wx.h>
|
||||
|
||||
#include "Common/FileUtil.h"
|
||||
#include "Core/Core.h"
|
||||
#include "DolphinWX/SoftwareVideoConfigDialog.h"
|
||||
#include "DolphinWX/VideoConfigDiag.h"
|
||||
#include "DolphinWX/WxUtils.h"
|
||||
|
||||
template <typename T>
|
||||
IntegerSetting<T>::IntegerSetting(wxWindow* parent, const wxString& label, T& setting, int minVal, int maxVal, long style) :
|
||||
wxSpinCtrl(parent, -1, label, wxDefaultPosition, wxDefaultSize, style),
|
||||
m_setting(setting)
|
||||
{
|
||||
SetRange(minVal, maxVal);
|
||||
SetValue(m_setting);
|
||||
Bind(wxEVT_COMMAND_SPINCTRL_UPDATED, &IntegerSetting::UpdateValue, this);
|
||||
}
|
||||
|
||||
|
||||
SoftwareVideoConfigDialog::SoftwareVideoConfigDialog(wxWindow* parent, const std::string& title, const std::string& _ininame) :
|
||||
wxDialog(parent, -1,
|
||||
wxString(wxString::Format(_("Dolphin %s Graphics Configuration"), title))),
|
||||
vconfig(g_SWVideoConfig),
|
||||
ininame(_ininame)
|
||||
{
|
||||
vconfig.Load((File::GetUserPath(D_CONFIG_IDX) + ininame + ".ini").c_str());
|
||||
|
||||
wxNotebook* const notebook = new wxNotebook(this, -1, wxDefaultPosition, wxDefaultSize);
|
||||
|
||||
// -- GENERAL --
|
||||
{
|
||||
wxPanel* const page_general= new wxPanel(notebook, -1, wxDefaultPosition);
|
||||
notebook->AddPage(page_general, wxT("General"));
|
||||
wxBoxSizer* const szr_general = new wxBoxSizer(wxVERTICAL);
|
||||
|
||||
// - rendering
|
||||
{
|
||||
wxStaticBoxSizer* const group_rendering = new wxStaticBoxSizer(wxVERTICAL, page_general, wxT("Rendering"));
|
||||
szr_general->Add(group_rendering, 0, wxEXPAND | wxALL, 5);
|
||||
wxGridSizer* const szr_rendering = new wxGridSizer(2, 5, 5);
|
||||
group_rendering->Add(szr_rendering, 1, wxEXPAND | wxLEFT | wxRIGHT | wxBOTTOM, 5);
|
||||
|
||||
// backend
|
||||
wxStaticText* const label_backend = new wxStaticText(page_general, wxID_ANY, _("Backend:"));
|
||||
wxChoice* const choice_backend = new wxChoice(page_general, wxID_ANY, wxDefaultPosition);
|
||||
|
||||
for (const VideoBackend* backend : g_available_video_backends)
|
||||
{
|
||||
choice_backend->AppendString(StrToWxStr(backend->GetDisplayName()));
|
||||
}
|
||||
|
||||
// TODO: How to get the translated plugin name?
|
||||
choice_backend->SetStringSelection(StrToWxStr(g_video_backend->GetName()));
|
||||
choice_backend->Bind(wxEVT_COMMAND_CHOICE_SELECTED, &SoftwareVideoConfigDialog::Event_Backend, this);
|
||||
|
||||
szr_rendering->Add(label_backend, 1, wxALIGN_CENTER_VERTICAL, 5);
|
||||
szr_rendering->Add(choice_backend, 1, 0, 0);
|
||||
|
||||
if (Core::GetState() != Core::CORE_UNINITIALIZED)
|
||||
{
|
||||
label_backend->Disable();
|
||||
choice_backend->Disable();
|
||||
}
|
||||
|
||||
// rasterizer
|
||||
szr_rendering->Add(new SettingCheckBox(page_general, wxT("Hardware rasterization"), wxT(""), vconfig.bHwRasterizer));
|
||||
|
||||
// xfb
|
||||
szr_rendering->Add(new SettingCheckBox(page_general, wxT("Bypass XFB"), wxT(""), vconfig.bBypassXFB));
|
||||
}
|
||||
|
||||
// - info
|
||||
{
|
||||
wxStaticBoxSizer* const group_info = new wxStaticBoxSizer(wxVERTICAL, page_general, wxT("Overlay Information"));
|
||||
szr_general->Add(group_info, 0, wxEXPAND | wxLEFT | wxRIGHT | wxBOTTOM, 5);
|
||||
wxGridSizer* const szr_info = new wxGridSizer(2, 5, 5);
|
||||
group_info->Add(szr_info, 1, wxEXPAND | wxLEFT | wxRIGHT | wxBOTTOM, 5);
|
||||
|
||||
szr_info->Add(new SettingCheckBox(page_general, wxT("Various Statistics"), wxT(""), vconfig.bShowStats));
|
||||
}
|
||||
|
||||
// - utility
|
||||
{
|
||||
wxStaticBoxSizer* const group_utility = new wxStaticBoxSizer(wxVERTICAL, page_general, wxT("Utility"));
|
||||
szr_general->Add(group_utility, 0, wxEXPAND | wxLEFT | wxRIGHT | wxBOTTOM, 5);
|
||||
wxGridSizer* const szr_utility = new wxGridSizer(2, 5, 5);
|
||||
group_utility->Add(szr_utility, 1, wxEXPAND | wxLEFT | wxRIGHT | wxBOTTOM, 5);
|
||||
|
||||
szr_utility->Add(new SettingCheckBox(page_general, wxT("Dump Textures"), wxT(""), vconfig.bDumpTextures));
|
||||
szr_utility->Add(new SettingCheckBox(page_general, wxT("Dump Objects"), wxT(""), vconfig.bDumpObjects));
|
||||
szr_utility->Add(new SettingCheckBox(page_general, wxT("Dump Frames"), wxT(""), vconfig.bDumpFrames));
|
||||
|
||||
// - debug only
|
||||
wxStaticBoxSizer* const group_debug_only_utility = new wxStaticBoxSizer(wxHORIZONTAL, page_general, wxT("Debug Only"));
|
||||
group_utility->Add(group_debug_only_utility, 0, wxEXPAND | wxBOTTOM, 5);
|
||||
wxGridSizer* const szr_debug_only_utility = new wxGridSizer(2, 5, 5);
|
||||
group_debug_only_utility->Add(szr_debug_only_utility, 1, wxEXPAND | wxLEFT | wxRIGHT | wxBOTTOM, 5);
|
||||
|
||||
szr_debug_only_utility->Add(new SettingCheckBox(page_general, wxT("Dump TEV Stages"), wxT(""), vconfig.bDumpTevStages));
|
||||
szr_debug_only_utility->Add(new SettingCheckBox(page_general, wxT("Dump Texture Fetches"), wxT(""), vconfig.bDumpTevTextureFetches));
|
||||
}
|
||||
|
||||
// - misc
|
||||
{
|
||||
wxStaticBoxSizer* const group_misc = new wxStaticBoxSizer(wxVERTICAL, page_general, wxT("Drawn Object Range"));
|
||||
szr_general->Add(group_misc, 0, wxEXPAND | wxLEFT | wxRIGHT | wxBOTTOM, 5);
|
||||
wxFlexGridSizer* const szr_misc = new wxFlexGridSizer(2, 5, 5);
|
||||
group_misc->Add(szr_misc, 1, wxEXPAND | wxLEFT | wxRIGHT | wxBOTTOM, 5);
|
||||
|
||||
szr_misc->Add(new U32Setting(page_general, wxT("Start"), vconfig.drawStart, 0, 100000));
|
||||
szr_misc->Add(new U32Setting(page_general, wxT("End"), vconfig.drawEnd, 0, 100000));
|
||||
}
|
||||
|
||||
page_general->SetSizerAndFit(szr_general);
|
||||
}
|
||||
|
||||
wxBoxSizer* const szr_main = new wxBoxSizer(wxVERTICAL);
|
||||
szr_main->Add(notebook, 1, wxEXPAND | wxALL, 5);
|
||||
szr_main->Add(new wxButton(this, wxID_OK, wxT("Close"), wxDefaultPosition),
|
||||
0, wxALIGN_RIGHT | wxRIGHT | wxBOTTOM, 5);
|
||||
|
||||
SetSizerAndFit(szr_main);
|
||||
Center();
|
||||
SetFocus();
|
||||
}
|
||||
|
||||
SoftwareVideoConfigDialog::~SoftwareVideoConfigDialog()
|
||||
{
|
||||
g_SWVideoConfig.Save((File::GetUserPath(D_CONFIG_IDX) + ininame + ".ini").c_str());
|
||||
}
|
51
Source/Core/DolphinWX/SoftwareVideoConfigDialog.h
Normal file
51
Source/Core/DolphinWX/SoftwareVideoConfigDialog.h
Normal file
@ -0,0 +1,51 @@
|
||||
// Copyright 2013 Dolphin Emulator Project
|
||||
// Licensed under GPLv2
|
||||
// Refer to the license.txt file included.
|
||||
|
||||
// TODO: Merge this with the original VideoConfigDiag or something
|
||||
// This is an awful way of managing a separate video backend.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <wx/button.h>
|
||||
#include <wx/checkbox.h>
|
||||
#include <wx/combobox.h>
|
||||
#include <wx/notebook.h>
|
||||
#include <wx/panel.h>
|
||||
#include <wx/spinctrl.h>
|
||||
#include <wx/stattext.h>
|
||||
#include <wx/textctrl.h>
|
||||
#include <wx/wx.h>
|
||||
|
||||
#include "Core/ConfigManager.h"
|
||||
#include "VideoBackends/Software/SWVideoConfig.h"
|
||||
#include "VideoCommon/VideoBackendBase.h"
|
||||
|
||||
class SoftwareVideoConfigDialog : public wxDialog
|
||||
{
|
||||
public:
|
||||
SoftwareVideoConfigDialog(wxWindow* parent, const std::string &title, const std::string& ininame);
|
||||
~SoftwareVideoConfigDialog();
|
||||
|
||||
void Event_Backend(wxCommandEvent &ev)
|
||||
{
|
||||
VideoBackend* new_backend = g_available_video_backends[ev.GetInt()];
|
||||
|
||||
if (g_video_backend != new_backend)
|
||||
{
|
||||
Close();
|
||||
|
||||
g_video_backend = new_backend;
|
||||
SConfig::GetInstance().m_LocalCoreStartupParameter.m_strVideoBackend = g_video_backend->GetName();
|
||||
|
||||
g_video_backend->ShowConfig(GetParent());
|
||||
}
|
||||
ev.Skip();
|
||||
}
|
||||
|
||||
protected:
|
||||
SWVideoConfig& vconfig;
|
||||
std::string ininame;
|
||||
};
|
@ -31,6 +31,7 @@
|
||||
#include "DolphinWX/Main.h"
|
||||
#include "DolphinWX/VideoConfigDiag.h"
|
||||
#include "DolphinWX/WxUtils.h"
|
||||
#include "VideoBackends/OGL/main.h"
|
||||
#include "VideoCommon/VideoBackendBase.h"
|
||||
#include "VideoCommon/VideoConfig.h"
|
||||
|
||||
|
Reference in New Issue
Block a user