2015-05-23 22:32:32 -06:00
|
|
|
// Copyright 2010 Dolphin Emulator Project
|
|
|
|
// Licensed under GPLv2+
|
|
|
|
// Refer to the license.txt file included.
|
|
|
|
|
2014-02-10 11:54:46 -07:00
|
|
|
#pragma once
|
2010-07-03 02:04:10 -06:00
|
|
|
|
2014-11-22 13:29:13 -07:00
|
|
|
#include <array>
|
2014-02-17 03:18:15 -07:00
|
|
|
#include <map>
|
2014-02-22 15:36:30 -07:00
|
|
|
#include <wx/dialog.h>
|
2010-07-03 02:04:10 -06:00
|
|
|
|
2014-02-22 15:36:30 -07:00
|
|
|
#include "Common/SysConf.h"
|
2014-02-17 03:18:15 -07:00
|
|
|
#include "Core/ConfigManager.h"
|
2015-04-26 15:53:36 -06:00
|
|
|
#include "Core/HW/SI_GCAdapter.h"
|
2014-02-17 03:18:15 -07:00
|
|
|
#include "Core/HW/Wiimote.h"
|
2014-02-22 15:36:30 -07:00
|
|
|
|
2014-08-30 22:04:15 -06:00
|
|
|
class InputConfig;
|
2014-02-22 15:36:30 -07:00
|
|
|
class wxButton;
|
2014-11-21 09:55:18 -07:00
|
|
|
class wxStaticBoxSizer;
|
2011-08-06 08:38:23 -06:00
|
|
|
|
2014-11-22 14:39:48 -07:00
|
|
|
class ControllerConfigDiag : public wxDialog
|
2010-07-03 02:04:10 -06:00
|
|
|
{
|
|
|
|
public:
|
2014-11-22 14:39:48 -07:00
|
|
|
ControllerConfigDiag(wxWindow* const parent);
|
2015-04-26 15:53:36 -06:00
|
|
|
~ControllerConfigDiag();
|
2011-08-06 08:38:23 -06:00
|
|
|
|
2015-04-27 18:48:04 -06:00
|
|
|
private:
|
2011-08-06 08:38:23 -06:00
|
|
|
void RefreshRealWiimotes(wxCommandEvent& event);
|
|
|
|
|
2015-04-27 18:48:04 -06:00
|
|
|
void ConfigEmulatedWiimote(wxCommandEvent& event);
|
|
|
|
|
2010-07-03 02:04:10 -06:00
|
|
|
void SelectSource(wxCommandEvent& event);
|
2011-02-22 20:06:16 -07:00
|
|
|
void RevertSource();
|
2010-07-03 02:04:10 -06:00
|
|
|
|
2011-08-06 08:38:23 -06:00
|
|
|
void Save(wxCommandEvent& event);
|
2011-06-02 13:32:34 -06:00
|
|
|
|
|
|
|
void OnSensorBarPos(wxCommandEvent& event)
|
|
|
|
{
|
|
|
|
SConfig::GetInstance().m_SYSCONF->SetData("BT.BAR", event.GetInt());
|
|
|
|
event.Skip();
|
|
|
|
}
|
2015-04-27 18:48:04 -06:00
|
|
|
|
2011-06-02 13:32:34 -06:00
|
|
|
void OnSensorBarSensitivity(wxCommandEvent& event)
|
|
|
|
{
|
|
|
|
SConfig::GetInstance().m_SYSCONF->SetData("BT.SENS", event.GetInt());
|
|
|
|
event.Skip();
|
|
|
|
}
|
2015-04-27 18:48:04 -06:00
|
|
|
|
2011-06-02 13:32:34 -06:00
|
|
|
void OnSpeakerVolume(wxCommandEvent& event)
|
|
|
|
{
|
|
|
|
SConfig::GetInstance().m_SYSCONF->SetData("BT.SPKV", event.GetInt());
|
|
|
|
event.Skip();
|
|
|
|
}
|
2015-04-27 18:48:04 -06:00
|
|
|
|
2011-06-02 13:32:34 -06:00
|
|
|
void OnMotor(wxCommandEvent& event)
|
|
|
|
{
|
|
|
|
SConfig::GetInstance().m_SYSCONF->SetData("BT.MOT", event.GetInt());
|
|
|
|
event.Skip();
|
|
|
|
}
|
2015-04-27 18:48:04 -06:00
|
|
|
|
2013-02-11 16:58:56 -07:00
|
|
|
void OnContinuousScanning(wxCommandEvent& event)
|
|
|
|
{
|
|
|
|
SConfig::GetInstance().m_WiimoteContinuousScanning = event.IsChecked();
|
|
|
|
WiimoteReal::Initialize();
|
|
|
|
event.Skip();
|
|
|
|
}
|
2015-04-27 18:48:04 -06:00
|
|
|
|
2013-02-15 02:00:31 -07:00
|
|
|
void OnEnableSpeaker(wxCommandEvent& event)
|
|
|
|
{
|
|
|
|
SConfig::GetInstance().m_WiimoteEnableSpeaker = event.IsChecked();
|
|
|
|
event.Skip();
|
|
|
|
}
|
2015-04-27 18:48:04 -06:00
|
|
|
|
2014-12-10 02:45:45 -07:00
|
|
|
void OnGameCubeAdapter(wxCommandEvent& event)
|
|
|
|
{
|
|
|
|
SConfig::GetInstance().m_GameCubeAdapter = event.IsChecked();
|
2015-07-17 23:41:12 -06:00
|
|
|
#ifdef __LIBUSB__
|
2015-07-14 04:34:16 -06:00
|
|
|
if (event.IsChecked())
|
|
|
|
SI_GCAdapter::StartScanThread();
|
|
|
|
else
|
|
|
|
SI_GCAdapter::StopScanThread();
|
2015-07-17 23:41:12 -06:00
|
|
|
#endif
|
2014-12-10 02:45:45 -07:00
|
|
|
event.Skip();
|
|
|
|
}
|
2015-04-26 16:42:12 -06:00
|
|
|
void OnAdapterRumble(wxCommandEvent& event)
|
|
|
|
{
|
|
|
|
SConfig::GetInstance().m_AdapterRumble = event.IsChecked();
|
|
|
|
}
|
|
|
|
|
2011-06-02 13:32:34 -06:00
|
|
|
|
2014-11-21 09:55:18 -07:00
|
|
|
wxStaticBoxSizer* CreateGamecubeSizer();
|
2014-11-21 11:01:22 -07:00
|
|
|
wxStaticBoxSizer* CreateWiimoteConfigSizer();
|
|
|
|
wxStaticBoxSizer* CreateBalanceBoardSizer();
|
|
|
|
wxStaticBoxSizer* CreateRealWiimoteSizer();
|
|
|
|
wxStaticBoxSizer* CreateGeneralWiimoteSettingsSizer();
|
2014-11-22 13:29:13 -07:00
|
|
|
|
2011-03-15 08:37:04 -06:00
|
|
|
void Cancel(wxCommandEvent& event);
|
2014-11-22 13:29:13 -07:00
|
|
|
void OnGameCubePortChanged(wxCommandEvent& event);
|
|
|
|
void OnGameCubeConfigButton(wxCommandEvent& event);
|
2015-04-26 15:53:36 -06:00
|
|
|
void ScheduleAdapterUpdate();
|
|
|
|
void UpdateAdapter(wxCommandEvent& ev);
|
2010-07-03 02:04:10 -06:00
|
|
|
|
2014-11-22 13:29:13 -07:00
|
|
|
std::map<wxWindowID, unsigned int> m_gc_port_choice_ids;
|
|
|
|
std::map<wxWindowID, unsigned int> m_gc_port_config_ids;
|
2015-06-06 21:32:29 -06:00
|
|
|
std::array<wxString, 8> m_gc_pad_type_strs;
|
2011-08-06 08:38:23 -06:00
|
|
|
|
|
|
|
std::map<wxWindowID, unsigned int> m_wiimote_index_from_ctrl_id;
|
2013-05-18 06:30:20 -06:00
|
|
|
unsigned int m_orig_wiimote_sources[MAX_BBMOTES];
|
2011-08-06 08:38:23 -06:00
|
|
|
|
2015-04-26 15:53:36 -06:00
|
|
|
wxStaticText* m_adapter_status;
|
2013-05-18 02:31:37 -06:00
|
|
|
wxButton* wiimote_configure_bt[MAX_WIIMOTES];
|
2015-01-04 22:30:44 -07:00
|
|
|
wxButton* gamecube_configure_bt[4];
|
2011-08-06 08:38:23 -06:00
|
|
|
std::map<wxWindowID, unsigned int> m_wiimote_index_from_conf_bt_id;
|
2010-07-03 02:04:10 -06:00
|
|
|
};
|