Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge pull request #4764 from aldelaro5/crash-fix-inputconfig
InputConfigDialog pass the device_cbox to the wiimote extension dialogs
  • Loading branch information
Helios747 committed Feb 10, 2017
2 parents 3cbbd48 + 334e33d commit 96e83b5
Show file tree
Hide file tree
Showing 11 changed files with 46 additions and 15 deletions.
6 changes: 5 additions & 1 deletion Source/Core/DolphinWX/Input/ClassicInputConfigDiag.cpp
Expand Up @@ -8,11 +8,15 @@
#include "Core/HW/WiimoteEmu/WiimoteEmu.h"

ClassicInputConfigDialog::ClassicInputConfigDialog(wxWindow* const parent, InputConfig& config,
const wxString& name, const int port_num)
const wxString& name,
wxComboBox* device_cbox_parent,
const int port_num)
: InputConfigDialog(parent, config, name, port_num)
{
const int space5 = FromDIP(5);

device_cbox = device_cbox_parent;

auto* const group_box_buttons = new ControlGroupBox(
Wiimote::GetClassicGroup(port_num, WiimoteEmu::ClassicGroup::Buttons), this, this);
auto* const group_box_dpad = new ControlGroupBox(
Expand Down
4 changes: 3 additions & 1 deletion Source/Core/DolphinWX/Input/ClassicInputConfigDiag.h
Expand Up @@ -6,9 +6,11 @@

#include "DolphinWX/Input/InputConfigDiag.h"

class wxComboBox;

class ClassicInputConfigDialog final : public InputConfigDialog
{
public:
ClassicInputConfigDialog(wxWindow* parent, InputConfig& config, const wxString& name,
int port_num = 0);
wxComboBox* device_cbox_parent, int port_num = 0);
};
5 changes: 4 additions & 1 deletion Source/Core/DolphinWX/Input/DrumsInputConfigDiag.cpp
Expand Up @@ -8,11 +8,14 @@
#include "Core/HW/WiimoteEmu/WiimoteEmu.h"

DrumsInputConfigDialog::DrumsInputConfigDialog(wxWindow* const parent, InputConfig& config,
const wxString& name, const int port_num)
const wxString& name, wxComboBox* device_cbox_parent,
const int port_num)
: InputConfigDialog(parent, config, name, port_num)
{
const int space5 = FromDIP(5);

device_cbox = device_cbox_parent;

auto* const group_box_buttons = new ControlGroupBox(
Wiimote::GetDrumsGroup(port_num, WiimoteEmu::DrumsGroup::Buttons), this, this);
auto* const group_box_pads = new ControlGroupBox(
Expand Down
4 changes: 3 additions & 1 deletion Source/Core/DolphinWX/Input/DrumsInputConfigDiag.h
Expand Up @@ -6,9 +6,11 @@

#include "DolphinWX/Input/InputConfigDiag.h"

class wxComboBox;

class DrumsInputConfigDialog final : public InputConfigDialog
{
public:
DrumsInputConfigDialog(wxWindow* parent, InputConfig& config, const wxString& name,
int port_num = 0);
wxComboBox* device_cbox_parent, int port_num = 0);
};
5 changes: 4 additions & 1 deletion Source/Core/DolphinWX/Input/GuitarInputConfigDiag.cpp
Expand Up @@ -8,11 +8,14 @@
#include "Core/HW/WiimoteEmu/WiimoteEmu.h"

GuitarInputConfigDialog::GuitarInputConfigDialog(wxWindow* const parent, InputConfig& config,
const wxString& name, const int port_num)
const wxString& name,
wxComboBox* device_cbox_parent, const int port_num)
: InputConfigDialog(parent, config, name, port_num)
{
const int space5 = FromDIP(5);

device_cbox = device_cbox_parent;

auto* const group_box_buttons = new ControlGroupBox(
Wiimote::GetGuitarGroup(port_num, WiimoteEmu::GuitarGroup::Buttons), this, this);
auto* const group_left_strum = new ControlGroupBox(
Expand Down
4 changes: 3 additions & 1 deletion Source/Core/DolphinWX/Input/GuitarInputConfigDiag.h
Expand Up @@ -6,9 +6,11 @@

#include "DolphinWX/Input/InputConfigDiag.h"

class wxComboBox;

class GuitarInputConfigDialog final : public InputConfigDialog
{
public:
GuitarInputConfigDialog(wxWindow* parent, InputConfig& config, const wxString& name,
int port_num = 0);
wxComboBox* device_cbox_parent, int port_num = 0);
};
13 changes: 8 additions & 5 deletions Source/Core/DolphinWX/Input/InputConfigDiag.cpp
Expand Up @@ -71,31 +71,34 @@ void InputConfigDialog::ConfigExtension(wxCommandEvent& event)
{
case WiimoteEmu::EXT_NUNCHUK:
{
NunchukInputConfigDialog dlg(this, m_config, _("Nunchuk Configuration"), m_port_num);
NunchukInputConfigDialog dlg(this, m_config, _("Nunchuk Configuration"), device_cbox,
m_port_num);
dlg.ShowModal();
}
break;
case WiimoteEmu::EXT_CLASSIC:
{
ClassicInputConfigDialog dlg(this, m_config, _("Classic Controller Configuration"), m_port_num);
ClassicInputConfigDialog dlg(this, m_config, _("Classic Controller Configuration"), device_cbox,
m_port_num);
dlg.ShowModal();
}
break;
case WiimoteEmu::EXT_GUITAR:
{
GuitarInputConfigDialog dlg(this, m_config, _("Guitar Configuration"), m_port_num);
GuitarInputConfigDialog dlg(this, m_config, _("Guitar Configuration"), device_cbox, m_port_num);
dlg.ShowModal();
}
break;
case WiimoteEmu::EXT_DRUMS:
{
DrumsInputConfigDialog dlg(this, m_config, _("Drums Configuration"), m_port_num);
DrumsInputConfigDialog dlg(this, m_config, _("Drums Configuration"), device_cbox, m_port_num);
dlg.ShowModal();
}
break;
case WiimoteEmu::EXT_TURNTABLE:
{
TurntableInputConfigDialog dlg(this, m_config, _("Turntable Configuration"), m_port_num);
TurntableInputConfigDialog dlg(this, m_config, _("Turntable Configuration"), device_cbox,
m_port_num);
dlg.ShowModal();
}
break;
Expand Down
6 changes: 5 additions & 1 deletion Source/Core/DolphinWX/Input/NunchukInputConfigDiag.cpp
Expand Up @@ -8,11 +8,15 @@
#include "Core/HW/WiimoteEmu/WiimoteEmu.h"

NunchukInputConfigDialog::NunchukInputConfigDialog(wxWindow* const parent, InputConfig& config,
const wxString& name, const int port_num)
const wxString& name,
wxComboBox* device_cbox_parent,
const int port_num)
: InputConfigDialog(parent, config, name, port_num)
{
const int space5 = FromDIP(5);

device_cbox = device_cbox_parent;

auto* const group_box_buttons = new ControlGroupBox(
Wiimote::GetNunchukGroup(port_num, WiimoteEmu::NunchukGroup::Buttons), this, this);
auto* const group_box_shake = new ControlGroupBox(
Expand Down
4 changes: 3 additions & 1 deletion Source/Core/DolphinWX/Input/NunchukInputConfigDiag.h
Expand Up @@ -6,9 +6,11 @@

#include "DolphinWX/Input/InputConfigDiag.h"

class wxComboBox;

class NunchukInputConfigDialog final : public InputConfigDialog
{
public:
NunchukInputConfigDialog(wxWindow* parent, InputConfig& config, const wxString& name,
int port_num = 0);
wxComboBox* device_cbox_parent, int port_num = 0);
};
6 changes: 5 additions & 1 deletion Source/Core/DolphinWX/Input/TurntableInputConfigDiag.cpp
Expand Up @@ -8,11 +8,15 @@
#include "Core/HW/WiimoteEmu/WiimoteEmu.h"

TurntableInputConfigDialog::TurntableInputConfigDialog(wxWindow* const parent, InputConfig& config,
const wxString& name, const int port_num)
const wxString& name,
wxComboBox* device_cbox_parent,
const int port_num)
: InputConfigDialog(parent, config, name, port_num)
{
const int space5 = FromDIP(5);

device_cbox = device_cbox_parent;

auto* const group_box_stick = new ControlGroupBox(
Wiimote::GetTurntableGroup(port_num, WiimoteEmu::TurntableGroup::Stick), this, this);
auto* const group_box_effect_dial = new ControlGroupBox(
Expand Down
4 changes: 3 additions & 1 deletion Source/Core/DolphinWX/Input/TurntableInputConfigDiag.h
Expand Up @@ -6,9 +6,11 @@

#include "DolphinWX/Input/InputConfigDiag.h"

class wxComboBox;

class TurntableInputConfigDialog final : public InputConfigDialog
{
public:
TurntableInputConfigDialog(wxWindow* parent, InputConfig& config, const wxString& name,
int port_num = 0);
wxComboBox* device_cbox_parent, int port_num = 0);
};

0 comments on commit 96e83b5

Please sign in to comment.