Merge the pad plugin into Dolphin. Since there's only one plugin left under active development, and it's awesome, we no longer have a need for a pad plugin mechanism.
In the future if we merge wiimote too, this will bring the advantage that the two will be able to cooperate, to no longer fight over control of input devices which can sometimes cause problems. Thanks shuffle2 for the patience. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5670 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@@ -122,9 +122,6 @@ EVT_BUTTON(ID_GRAPHIC_CONFIG, CConfigMain::OnConfig)
|
||||
EVT_CHOICE(ID_DSP_CB, CConfigMain::OnSelectionChanged)
|
||||
EVT_BUTTON(ID_DSP_CONFIG, CConfigMain::OnConfig)
|
||||
|
||||
EVT_CHOICE(ID_PAD_CB, CConfigMain::OnSelectionChanged)
|
||||
EVT_BUTTON(ID_PAD_CONFIG, CConfigMain::OnConfig)
|
||||
|
||||
EVT_CHOICE(ID_WIIMOTE_CB, CConfigMain::OnSelectionChanged)
|
||||
EVT_BUTTON(ID_WIIMOTE_CONFIG, CConfigMain::OnConfig)
|
||||
|
||||
@@ -191,7 +188,6 @@ void CConfigMain::UpdateGUI()
|
||||
// Disable stuff on PluginsPage
|
||||
GraphicSelection->Disable();
|
||||
DSPSelection->Disable();
|
||||
PADSelection->Disable();
|
||||
WiimoteSelection->Disable();
|
||||
}
|
||||
}
|
||||
@@ -319,7 +315,6 @@ void CConfigMain::InitializeGUIValues()
|
||||
// Plugins
|
||||
FillChoiceBox(GraphicSelection, PLUGIN_TYPE_VIDEO, SConfig::GetInstance().m_LocalCoreStartupParameter.m_strVideoPlugin);
|
||||
FillChoiceBox(DSPSelection, PLUGIN_TYPE_DSP, SConfig::GetInstance().m_LocalCoreStartupParameter.m_strDSPPlugin);
|
||||
FillChoiceBox(PADSelection, PLUGIN_TYPE_PAD, SConfig::GetInstance().m_LocalCoreStartupParameter.m_strPadPlugin);
|
||||
FillChoiceBox(WiimoteSelection, PLUGIN_TYPE_WIIMOTE, SConfig::GetInstance().m_LocalCoreStartupParameter.m_strWiimotePlugin);
|
||||
}
|
||||
|
||||
@@ -727,10 +722,6 @@ void CConfigMain::CreateGUIControls()
|
||||
DSPSelection = new wxChoice(PluginsPage, ID_DSP_CB, wxDefaultPosition, wxDefaultSize, NULL, 0, wxDefaultValidator);
|
||||
DSPConfig = new wxButton(PluginsPage, ID_DSP_CONFIG, wxT("Config..."), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator);
|
||||
|
||||
sbPadPlugin = new wxStaticBoxSizer(wxHORIZONTAL, PluginsPage, wxT("Gamecube Pad"));
|
||||
PADSelection = new wxChoice(PluginsPage, ID_PAD_CB, wxDefaultPosition, wxDefaultSize, NULL, 0, wxDefaultValidator);
|
||||
PADConfig = new wxButton(PluginsPage, ID_PAD_CONFIG, wxT("Config..."), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator);
|
||||
|
||||
sbWiimotePlugin = new wxStaticBoxSizer(wxHORIZONTAL, PluginsPage, wxT("Wiimote"));
|
||||
WiimoteSelection = new wxChoice(PluginsPage, ID_WIIMOTE_CB, wxDefaultPosition, wxDefaultSize, NULL, 0, wxDefaultValidator);
|
||||
WiimoteConfig = new wxButton(PluginsPage, ID_WIIMOTE_CONFIG, wxT("Config..."), wxDefaultPosition, wxDefaultSize, 0, wxDefaultValidator);
|
||||
@@ -742,9 +733,6 @@ void CConfigMain::CreateGUIControls()
|
||||
sbDSPPlugin->Add(DSPSelection, 1, wxEXPAND|wxALL, 5);
|
||||
sbDSPPlugin->Add(DSPConfig, 0, wxALL, 5);
|
||||
|
||||
sbPadPlugin->Add(PADSelection, 1, wxEXPAND|wxALL, 5);
|
||||
sbPadPlugin->Add(PADConfig, 0, wxALL, 5);
|
||||
|
||||
sbWiimotePlugin->Add(WiimoteSelection, 1, wxEXPAND|wxALL, 5);
|
||||
sbWiimotePlugin->Add(WiimoteConfig, 0, wxALL, 5);
|
||||
|
||||
@@ -752,14 +740,11 @@ void CConfigMain::CreateGUIControls()
|
||||
sPluginsPage = new wxBoxSizer(wxVERTICAL);
|
||||
sPluginsPage->Add(sbGraphicsPlugin, 0, wxEXPAND|wxALL, 5);
|
||||
sPluginsPage->Add(sbDSPPlugin, 0, wxEXPAND|wxALL, 5);
|
||||
sPluginsPage->Add(sbPadPlugin, 0, wxEXPAND|wxALL, 5);
|
||||
sPluginsPage->Add(sbWiimotePlugin, 0, wxEXPAND|wxALL, 5);
|
||||
|
||||
PluginsPage->SetSizer(sPluginsPage);
|
||||
sPluginsPage->Layout();
|
||||
|
||||
|
||||
|
||||
m_Ok = new wxButton(this, wxID_OK);
|
||||
|
||||
wxBoxSizer* sButtons = new wxBoxSizer(wxHORIZONTAL);
|
||||
@@ -1142,7 +1127,6 @@ void CConfigMain::OnSelectionChanged(wxCommandEvent& WXUNUSED (event))
|
||||
// Update plugin filenames
|
||||
GetFilename(GraphicSelection, SConfig::GetInstance().m_LocalCoreStartupParameter.m_strVideoPlugin);
|
||||
GetFilename(DSPSelection, SConfig::GetInstance().m_LocalCoreStartupParameter.m_strDSPPlugin);
|
||||
GetFilename(PADSelection, SConfig::GetInstance().m_LocalCoreStartupParameter.m_strPadPlugin);
|
||||
GetFilename(WiimoteSelection, SConfig::GetInstance().m_LocalCoreStartupParameter.m_strWiimotePlugin);
|
||||
}
|
||||
|
||||
@@ -1156,9 +1140,6 @@ void CConfigMain::OnConfig(wxCommandEvent& event)
|
||||
case ID_DSP_CONFIG:
|
||||
CallConfig(DSPSelection);
|
||||
break;
|
||||
case ID_PAD_CONFIG:
|
||||
CallConfig(PADSelection);
|
||||
break;
|
||||
case ID_WIIMOTE_CONFIG:
|
||||
CallConfig(WiimoteSelection);
|
||||
break;
|
||||
|
||||
@@ -139,7 +139,7 @@ private:
|
||||
|
||||
|
||||
wxBoxSizer* sPluginsPage; // Plugins settings
|
||||
wxStaticBoxSizer* sbGraphicsPlugin, *sbDSPPlugin, *sbPadPlugin, *sbWiimotePlugin; // Graphics, DSP, Pad and Wiimote sections
|
||||
wxStaticBoxSizer* sbGraphicsPlugin, *sbDSPPlugin, *sbWiimotePlugin; // Graphics, DSP, Wiimote sections
|
||||
|
||||
// Graphics
|
||||
wxChoice* GraphicSelection;
|
||||
@@ -149,15 +149,10 @@ private:
|
||||
wxChoice* DSPSelection;
|
||||
wxButton* DSPConfig;
|
||||
|
||||
// Pad
|
||||
wxChoice* PADSelection;
|
||||
wxButton* PADConfig;
|
||||
|
||||
// Wiimote
|
||||
wxChoice* WiimoteSelection;
|
||||
wxButton* WiimoteConfig;
|
||||
|
||||
|
||||
wxButton* m_Ok;
|
||||
|
||||
FILE* pStream;
|
||||
@@ -266,11 +261,6 @@ private:
|
||||
ID_DSP_CONFIG,
|
||||
ID_DSP_ABOUT,
|
||||
|
||||
ID_PAD_TEXT,
|
||||
ID_PAD_CB,
|
||||
ID_PAD_CONFIG,
|
||||
ID_PAD_ABOUT,
|
||||
|
||||
ID_WIIMOTE_TEXT,
|
||||
ID_WIIMOTE_CB,
|
||||
ID_WIIMOTE_CONFIG,
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
#include "ConfigManager.h" // Core
|
||||
#include "Core.h"
|
||||
#include "HW/DVDInterface.h"
|
||||
#include "HW/GCPad.h"
|
||||
#include "IPC_HLE/WII_IPC_HLE_Device_usb.h"
|
||||
#include "State.h"
|
||||
#include "VolumeHandler.h"
|
||||
@@ -882,7 +883,7 @@ void CFrame::OnKeyDown(wxKeyEvent& event)
|
||||
#endif
|
||||
|
||||
// Send the keyboard status to the Input plugins
|
||||
CPluginManager::GetInstance().GetPad()->PAD_Input(event.GetKeyCode(), 1); // 1 = Down
|
||||
PAD_Input(event.GetKeyCode(), 1); // 1 = Down
|
||||
CPluginManager::GetInstance().GetWiimote()->Wiimote_Input(event.GetKeyCode(), 1); // 1 = Down
|
||||
}
|
||||
else
|
||||
@@ -894,7 +895,7 @@ void CFrame::OnKeyUp(wxKeyEvent& event)
|
||||
event.Skip();
|
||||
|
||||
if(Core::GetState() != Core::CORE_UNINITIALIZED) {
|
||||
CPluginManager::GetInstance().GetPad()->PAD_Input(event.GetKeyCode(), 0); // 0 = Up
|
||||
PAD_Input(event.GetKeyCode(), 0); // 0 = Up
|
||||
CPluginManager::GetInstance().GetWiimote()->Wiimote_Input(event.GetKeyCode(), 0); // 0 = Up
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,11 +56,13 @@ Core::GetWindowHandle().
|
||||
#include "PowerPC/PowerPC.h"
|
||||
#include "HW/DVDInterface.h"
|
||||
#include "HW/ProcessorInterface.h"
|
||||
#include "HW/GCPad.h"
|
||||
#include "IPC_HLE/WII_IPC_HLE_Device_usb.h"
|
||||
#include "State.h"
|
||||
#include "VolumeHandler.h"
|
||||
#include "NANDContentLoader.h"
|
||||
#include "WXInputBase.h"
|
||||
#include "../../InputUICommon/Src/ConfigDiag.h"
|
||||
|
||||
#include <wx/datetime.h> // wxWidgets
|
||||
|
||||
@@ -942,12 +944,23 @@ void CFrame::OnPluginDSP(wxCommandEvent& WXUNUSED (event))
|
||||
|
||||
void CFrame::OnPluginPAD(wxCommandEvent& WXUNUSED (event))
|
||||
{
|
||||
CPluginManager::GetInstance().OpenConfig(
|
||||
GetHandle(),
|
||||
SConfig::GetInstance().m_LocalCoreStartupParameter.m_strPadPlugin.c_str(),
|
||||
PLUGIN_TYPE_PAD
|
||||
);
|
||||
InputPlugin *pad_plugin = PAD_GetPlugin();
|
||||
bool was_init = false;
|
||||
if ( pad_plugin->controller_interface.IsInit() ) // check if game is running
|
||||
was_init = true;
|
||||
else
|
||||
{
|
||||
GCPad_Init(GetHandle());
|
||||
}
|
||||
InputConfigDialog* m_ConfigFrame = new InputConfigDialog(this, *pad_plugin, "GCPadNew", was_init );
|
||||
m_ConfigFrame->ShowModal();
|
||||
m_ConfigFrame->Destroy();
|
||||
if ( !was_init ) // if game is running
|
||||
{
|
||||
GCPad_Deinit();
|
||||
}
|
||||
}
|
||||
|
||||
void CFrame::OnPluginWiimote(wxCommandEvent& WXUNUSED (event))
|
||||
{
|
||||
CPluginManager::GetInstance().OpenConfig(
|
||||
|
||||
@@ -95,13 +95,11 @@ bool DolphinApp::OnInit()
|
||||
bool LoadElf = false;
|
||||
bool selectVideoPlugin = false;
|
||||
bool selectAudioPlugin = false;
|
||||
bool selectPadPlugin = false;
|
||||
bool selectWiimotePlugin = false;
|
||||
|
||||
wxString ElfFile;
|
||||
wxString videoPluginFilename;
|
||||
wxString audioPluginFilename;
|
||||
wxString padPluginFilename;
|
||||
wxString wiimotePluginFilename;
|
||||
|
||||
#if wxUSE_CMDLINE_PARSER // Parse command lines
|
||||
@@ -201,12 +199,10 @@ bool DolphinApp::OnInit()
|
||||
#if wxCHECK_VERSION(2, 9, 0)
|
||||
selectVideoPlugin = parser.Found("video_plugin", &videoPluginFilename);
|
||||
selectAudioPlugin = parser.Found("audio_plugin", &audioPluginFilename);
|
||||
selectPadPlugin = parser.Found("pad_plugin", &padPluginFilename);
|
||||
selectWiimotePlugin = parser.Found("wiimote_plugin", &wiimotePluginFilename);
|
||||
#else
|
||||
selectVideoPlugin = parser.Found(wxT("video_plugin"), &videoPluginFilename);
|
||||
selectAudioPlugin = parser.Found(wxT("audio_plugin"), &audioPluginFilename);
|
||||
selectPadPlugin = parser.Found(_T("pad_plugin"), &padPluginFilename);
|
||||
selectWiimotePlugin = parser.Found(wxT("wiimote_plugin"), &wiimotePluginFilename);
|
||||
#endif
|
||||
#endif // wxUSE_CMDLINE_PARSER
|
||||
@@ -353,10 +349,6 @@ bool DolphinApp::OnInit()
|
||||
SConfig::GetInstance().m_LocalCoreStartupParameter.m_strDSPPlugin =
|
||||
std::string(audioPluginFilename.mb_str());
|
||||
|
||||
if (selectPadPlugin && padPluginFilename != wxEmptyString)
|
||||
SConfig::GetInstance().m_LocalCoreStartupParameter.m_strPadPlugin =
|
||||
std::string(padPluginFilename.mb_str());
|
||||
|
||||
if (selectWiimotePlugin && wiimotePluginFilename != wxEmptyString)
|
||||
SConfig::GetInstance().m_LocalCoreStartupParameter.m_strWiimotePlugin =
|
||||
std::string(wiimotePluginFilename.mb_str());
|
||||
|
||||
Reference in New Issue
Block a user