Clean up code for multiple GameCube Controllers

Conflicts:

	Source/Core/DolphinWX/Src/Frame.cpp
	Source/Core/DolphinWX/Src/FrameTools.cpp
This commit is contained in:
Braden 2012-11-11 16:38:01 -06:00 committed by Rachel Bryk
parent 59d6df7046
commit ec148008d0
3 changed files with 25 additions and 57 deletions

View File

@ -327,10 +327,10 @@ CFrame::CFrame(wxFrame* parent,
m_LogWindow->Hide(); m_LogWindow->Hide();
m_LogWindow->Disable(); m_LogWindow->Disable();
g_TASInputDlg = new TASInputDlg(this); g_TASInputDlg[0] = new TASInputDlg(this);
g_TASInputDlg1 = new TASInputDlg(this); g_TASInputDlg[1] = new TASInputDlg(this);
g_TASInputDlg2 = new TASInputDlg(this); g_TASInputDlg[2] = new TASInputDlg(this);
g_TASInputDlg3 = new TASInputDlg(this); g_TASInputDlg[3] = new TASInputDlg(this);
Movie::SetInputManip(TASManipFunction); Movie::SetInputManip(TASManipFunction);
@ -788,7 +788,7 @@ int GetCmdForHotkey(unsigned int key)
void OnAfterLoadCallback() void OnAfterLoadCallback()
{ {
// warning: this gets called from the CPU thread, so we should only queue things to do on the proper thread // warning: this gets called from the CPU thread, so we should only queue things to do on the proper thread
if(main_frame) if (main_frame)
{ {
wxCommandEvent event(wxEVT_HOST_COMMAND, IDM_UPDATEGUI); wxCommandEvent event(wxEVT_HOST_COMMAND, IDM_UPDATEGUI);
main_frame->GetEventHandler()->AddPendingEvent(event); main_frame->GetEventHandler()->AddPendingEvent(event);
@ -797,33 +797,17 @@ void OnAfterLoadCallback()
void TASManipFunction(SPADStatus *PadStatus, int controllerID) void TASManipFunction(SPADStatus *PadStatus, int controllerID)
{ {
if (main_frame && controllerID == 0) if (main_frame)
main_frame->g_TASInputDlg->GetValues(PadStatus, controllerID); main_frame->g_TASInputDlg[controllerID]->GetValues(PadStatus, controllerID);
if (main_frame && controllerID == 1)
main_frame->g_TASInputDlg1->GetValues(PadStatus, controllerID);
if (main_frame && controllerID == 2)
main_frame->g_TASInputDlg2->GetValues(PadStatus, controllerID);
if (main_frame && controllerID == 3)
main_frame->g_TASInputDlg3->GetValues(PadStatus, controllerID);
} }
bool TASInputHasFocus() bool TASInputHasFocus()
{ {
if(main_frame->g_TASInputDlg->HasFocus()) for (int i = 0; i < 4; i++)
{
if (main_frame->g_TASInputDlg[i]->HasFocus())
return true; return true;
}
if(main_frame->g_TASInputDlg1->HasFocus())
return true;
if(main_frame->g_TASInputDlg2->HasFocus())
return true;
if(main_frame->g_TASInputDlg3->HasFocus())
return true;
return false; return false;
} }

View File

@ -110,10 +110,7 @@ public:
CCodeWindow* g_pCodeWindow; CCodeWindow* g_pCodeWindow;
NetPlaySetupDiag* g_NetPlaySetupDiag; NetPlaySetupDiag* g_NetPlaySetupDiag;
wxCheatsWindow* g_CheatsWindow; wxCheatsWindow* g_CheatsWindow;
TASInputDlg* g_TASInputDlg; TASInputDlg* g_TASInputDlg[4];
TASInputDlg* g_TASInputDlg1;
TASInputDlg* g_TASInputDlg2;
TASInputDlg* g_TASInputDlg3;
void InitBitmaps(); void InitBitmaps();
void DoPause(); void DoPause();

View File

@ -647,28 +647,15 @@ void CFrame::OnRecordReadOnly(wxCommandEvent& event)
void CFrame::OnTASInput(wxCommandEvent& event) void CFrame::OnTASInput(wxCommandEvent& event)
{ {
if(SConfig::GetInstance().m_SIDevice[0] == SIDEVICE_GC_CONTROLLER) std::string number[4] = {"1","2","3","4"};
{
g_TASInputDlg->Show(true);
g_TASInputDlg->SetTitle("TAS Input - Controller 1");
}
if(SConfig::GetInstance().m_SIDevice[1] == SIDEVICE_GC_CONTROLLER) for(int i = 0; i < 4; i++)
{ {
g_TASInputDlg1->Show(true); if(SConfig::GetInstance().m_SIDevice[i] == SIDEVICE_GC_CONTROLLER)
g_TASInputDlg1->SetTitle("TAS Input - Controller 2"); {
g_TASInputDlg[i]->Show(true);
g_TASInputDlg[i]->SetTitle("TAS Input - Controller " + number[i]);
} }
if(SConfig::GetInstance().m_SIDevice[2] == SIDEVICE_GC_CONTROLLER)
{
g_TASInputDlg2->Show(true);
g_TASInputDlg2->SetTitle("TAS Input - Controller 3");
}
if(SConfig::GetInstance().m_SIDevice[3] == SIDEVICE_GC_CONTROLLER)
{
g_TASInputDlg3->Show(true);
g_TASInputDlg3->SetTitle("TAS Input - Controller 4");
} }
} }