Guest User

Untitled

a guest
Jun 22nd, 2018
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 64.90 KB | None | 0 0
  1. Index: ConfigBasicDlg.cpp
  2. ===================================================================
  3. --- ConfigBasicDlg.cpp (revision 3718)
  4. +++ ConfigBasicDlg.cpp (working copy)
  5. @@ -178,7 +178,7 @@
  6. arrayStringFor_extension.Add(wxT("None"));
  7. arrayStringFor_extension.Add(wxT("Nunchuck"));
  8. arrayStringFor_extension.Add(wxT("Classic Controller"));
  9. - //arrayStringFor_extension.Add(wxT("Guitar Hero 3 Guitar"));
  10. + arrayStringFor_extension.Add(wxT("Guitar Hero 3 Guitar"));
  11. //arrayStringFor_extension.Add(wxT("Guitar Hero World Tour Drums Connected"));
  12. // Prolly needs to be a separate plugin
  13. //arrayStringFor_extension.Add(wxT("Balance Board"));
  14. Index: ConfigGamepad.cpp
  15. ===================================================================
  16. --- ConfigGamepad.cpp (revision 3718)
  17. +++ ConfigGamepad.cpp (working copy)
  18. @@ -155,54 +155,50 @@
  19. m_bWmPitchL[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Wm.keyForControls[12]).c_str()));
  20. m_bWmPitchR[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Wm.keyForControls[13]).c_str()));
  21.  
  22. - // Nunchuck
  23. - m_bNcZ[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[0]).c_str()));
  24. - m_bNcC[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[1]).c_str()));
  25. - m_bNcL[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[2]).c_str()));
  26. - m_bNcR[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[3]).c_str()));
  27. - m_bNcU[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[4]).c_str()));
  28. - m_bNcD[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[5]).c_str()));
  29. - m_bNcShake[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[6]).c_str()));
  30. -
  31. - // Classic Controller
  32. - m_bCcA[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[0]).c_str()));
  33. - m_bCcB[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[1]).c_str()));
  34. - m_bCcX[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[2]).c_str()));
  35. - m_bCcY[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[3]).c_str()));
  36. - m_bCcP[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[4]).c_str()));
  37. - m_bCcM[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[5]).c_str()));
  38. - m_bCcH[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[6]).c_str()));
  39. - m_bCcTl[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[7]).c_str()));
  40. - m_bCcZl[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[8]).c_str()));
  41. - m_bCcZr[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[9]).c_str()));
  42. - m_bCcTr[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[10]).c_str()));
  43. - m_bCcDl[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[11]).c_str()));
  44. - m_bCcDu[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[12]).c_str()));
  45. - m_bCcDr[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[13]).c_str()));
  46. - m_bCcDd[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[14]).c_str()));
  47. - m_bCcLl[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[15]).c_str()));
  48. - m_bCcLu[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[16]).c_str()));
  49. - m_bCcLr[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[17]).c_str()));
  50. - m_bCcLd[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[18]).c_str()));
  51. - m_bCcRl[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[19]).c_str()));
  52. - m_bCcRu[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[20]).c_str()));
  53. - m_bCcRr[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[21]).c_str()));
  54. - m_bCcRd[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[22]).c_str()));
  55. - m_bGH3_Green[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[0]).c_str()));
  56. - m_bGH3_Red[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[1]).c_str()));
  57. - m_bGH3_Yellow[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[2]).c_str()));
  58. - m_bGH3_Blue[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[3]).c_str()));
  59. - m_bGH3_Orange[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[4]).c_str()));
  60. - m_bGH3_Plus[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[5]).c_str()));
  61. - m_bGH3_Minus[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[6]).c_str()));
  62. - m_bGH3_Whammy[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[7]).c_str()));
  63. - m_bGH3_ALeft[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[8]).c_str()));
  64. - m_bGH3_AUp[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[9]).c_str()));
  65. - m_bGH3_ARight[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[10]).c_str()));
  66. - m_bGH3_ADown[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[11]).c_str()));
  67. - m_bGH3_StrumUp[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[12]).c_str()));
  68. - m_bGH3_StrumDown[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[13]).c_str()));
  69. -
  70. + if(g_Config.iExtensionConnected == EXT_NUNCHUCK)
  71. + {
  72. + // Nunchuck
  73. + m_bNcZ[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[0]).c_str()));
  74. + m_bNcC[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[1]).c_str()));
  75. + m_bNcL[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[2]).c_str()));
  76. + m_bNcR[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[3]).c_str()));
  77. + m_bNcU[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[4]).c_str()));
  78. + m_bNcD[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[5]).c_str()));
  79. + m_bNcShake[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Nc.keyForControls[6]).c_str()));
  80. + }
  81. + else if(g_Config.iExtensionConnected == EXT_CLASSIC_CONTROLLER)
  82. + {
  83. + // Classic Controller
  84. + m_bCcA[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[0]).c_str()));
  85. + m_bCcB[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[1]).c_str()));
  86. + m_bCcX[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[2]).c_str()));
  87. + m_bCcY[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[3]).c_str()));
  88. + m_bCcP[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[4]).c_str()));
  89. + m_bCcM[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[5]).c_str()));
  90. + m_bCcH[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[6]).c_str()));
  91. + m_bCcTl[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[7]).c_str()));
  92. + m_bCcZl[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[8]).c_str()));
  93. + m_bCcZr[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[9]).c_str()));
  94. + m_bCcTr[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[10]).c_str()));
  95. + m_bCcDl[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[11]).c_str()));
  96. + m_bCcDu[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[12]).c_str()));
  97. + m_bCcDr[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[13]).c_str()));
  98. + m_bCcDd[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[14]).c_str()));
  99. + m_bCcLl[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[15]).c_str()));
  100. + m_bCcLu[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[16]).c_str()));
  101. + m_bCcLr[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[17]).c_str()));
  102. + m_bCcLd[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[18]).c_str()));
  103. + m_bCcRl[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[19]).c_str()));
  104. + m_bCcRu[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[20]).c_str()));
  105. + m_bCcRr[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[21]).c_str()));
  106. + m_bCcRd[controller]->SetLabel(wxString::FromAscii(InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Cc.keyForControls[22]).c_str()));
  107. + }
  108. + else if(g_Config.iExtensionConnected == EXT_GUITARHERO3_CONTROLLER)
  109. + {
  110. + for (int x = 0; x < GH3_CONTROLS; x++)
  111. + m_Button_GH3[x][controller]->SetLabel(wxString::FromAscii(
  112. + InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].GH3c.keyForControls[x]).c_str()));
  113. + }
  114. #endif
  115.  
  116. //INFO_LOG(CONSOLE, "m_bWmA[%i] = %i = %s\n", controller, WiiMoteEmu::PadMapping[controller].Wm.keyForControls[0], InputCommon::VKToString(WiiMoteEmu::PadMapping[controller].Wm.keyForControls[0]).c_str());
  117. @@ -315,6 +311,9 @@
  118. // Set controller value
  119. int controller;
  120. if (_Page == -1) controller = Page; else controller = _Page;
  121. +
  122. + if (IDB_GH3_GREEN <= id && id <= IDB_GH3_STRUM_DOWN)
  123. + m_Button_GH3[id - IDB_GH3_GREEN][controller]->SetLabel(wxString::FromAscii(text));
  124.  
  125. switch(id)
  126. {
  127. @@ -376,49 +375,6 @@
  128. case IDB_CC_RR: m_bCcRr[controller]->SetLabel(wxString::FromAscii(text)); break;
  129. case IDB_CC_RD: m_bCcRd[controller]->SetLabel(wxString::FromAscii(text)); break;
  130.  
  131. - // GH3 Controller
  132. - case IDB_GH3_GREEN:
  133. - m_bGH3_Green[controller]->SetLabel(wxString::FromAscii(text));
  134. - break;
  135. - case IDB_GH3_RED:
  136. - m_bGH3_Red[controller]->SetLabel(wxString::FromAscii(text));
  137. - break;
  138. - case IDB_GH3_YELLOW:
  139. - m_bGH3_Yellow[controller]->SetLabel(wxString::FromAscii(text));
  140. - break;
  141. - case IDB_GH3_BLUE:
  142. - m_bGH3_Blue[controller]->SetLabel(wxString::FromAscii(text));
  143. - break;
  144. - case IDB_GH3_ORANGE:
  145. - m_bGH3_Orange[controller]->SetLabel(wxString::FromAscii(text));
  146. - break;
  147. - case IDB_GH3_PLUS:
  148. - m_bGH3_Plus[controller]->SetLabel(wxString::FromAscii(text));
  149. - break;
  150. - case IDB_GH3_MINUS:
  151. - m_bGH3_Minus[controller]->SetLabel(wxString::FromAscii(text));
  152. - break;
  153. - case IDB_GH3_WHAMMY:
  154. - m_bGH3_Whammy[controller]->SetLabel(wxString::FromAscii(text));
  155. - break;
  156. - case IDB_GH3_ANALOG_LEFT:
  157. - m_bGH3_ALeft[controller]->SetLabel(wxString::FromAscii(text));
  158. - break;
  159. - case IDB_GH3_ANALOG_RIGHT:
  160. - m_bGH3_ARight[controller]->SetLabel(wxString::FromAscii(text));
  161. - break;
  162. - case IDB_GH3_ANALOG_UP:
  163. - m_bGH3_AUp[controller]->SetLabel(wxString::FromAscii(text));
  164. - break;
  165. - case IDB_GH3_ANALOG_DOWN:
  166. - m_bGH3_ADown[controller]->SetLabel(wxString::FromAscii(text));
  167. - break;
  168. - case IDB_GH3_STRUM_UP:
  169. - m_bGH3_StrumUp[controller]->SetLabel(wxString::FromAscii(text));
  170. - break;
  171. - case IDB_GH3_STRUM_DOWN:
  172. - m_bGH3_StrumDown[controller]->SetLabel(wxString::FromAscii(text));
  173. - break;
  174. default: break;
  175. }
  176. //INFO_LOG(CONSOLE, "SetButtonText: %s\n", text);
  177. Index: ConfigPadDlg.cpp
  178. ===================================================================
  179. --- ConfigPadDlg.cpp (revision 3718)
  180. +++ ConfigPadDlg.cpp (working copy)
  181. @@ -753,392 +753,329 @@
  182. m_gWiimote[i]->AddSpacer(1);
  183.  
  184. // Nunchuck
  185. - // Stick controls
  186. - m_NunchuckTextStick[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Stick"));
  187. - m_NunchuckComboStick[i] = new wxComboBox(m_Controller[i], IDCB_NUNCHUCK_STICK, StrNunchuck[0], wxDefaultPosition, wxDefaultSize, StrNunchuck, wxCB_READONLY);
  188. + if(g_Config.iExtensionConnected == EXT_NUNCHUCK)
  189. + {
  190. + // Stick controls
  191. + m_NunchuckTextStick[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Stick"));
  192. + m_NunchuckComboStick[i] = new wxComboBox(m_Controller[i], IDCB_NUNCHUCK_STICK, StrNunchuck[0], wxDefaultPosition, wxDefaultSize, StrNunchuck, wxCB_READONLY);
  193.  
  194. - m_tNcZ[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Z"));
  195. - m_tNcC[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("C"));
  196. - m_tNcL[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Left"));
  197. - m_tNcR[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Right"));
  198. - m_tNcU[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Up"));
  199. - m_tNcD[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Down"));
  200. - m_tNcShake[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Shake"));
  201. + m_tNcZ[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Z"));
  202. + m_tNcC[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("C"));
  203. + m_tNcL[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Left"));
  204. + m_tNcR[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Right"));
  205. + m_tNcU[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Up"));
  206. + m_tNcD[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Down"));
  207. + m_tNcShake[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Shake"));
  208.  
  209. - m_bNcZ[i] = new wxButton(m_Controller[i], IDB_NC_Z, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  210. - m_bNcC[i] = new wxButton(m_Controller[i], IDB_NC_C, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  211. - m_bNcL[i] = new wxButton(m_Controller[i], IDB_NC_L, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  212. - m_bNcR[i] = new wxButton(m_Controller[i], IDB_NC_R, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  213. - m_bNcU[i] = new wxButton(m_Controller[i], IDB_NC_U, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  214. - m_bNcD[i] = new wxButton(m_Controller[i], IDB_NC_D, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  215. - m_bNcShake[i] = new wxButton(m_Controller[i], IDB_NC_SHAKE, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  216. + m_bNcZ[i] = new wxButton(m_Controller[i], IDB_NC_Z, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  217. + m_bNcC[i] = new wxButton(m_Controller[i], IDB_NC_C, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  218. + m_bNcL[i] = new wxButton(m_Controller[i], IDB_NC_L, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  219. + m_bNcR[i] = new wxButton(m_Controller[i], IDB_NC_R, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  220. + m_bNcU[i] = new wxButton(m_Controller[i], IDB_NC_U, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  221. + m_bNcD[i] = new wxButton(m_Controller[i], IDB_NC_D, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  222. + m_bNcShake[i] = new wxButton(m_Controller[i], IDB_NC_SHAKE, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  223.  
  224. - // Set small font
  225. - m_bNcShake[i]->SetFont(m_SmallFont);
  226. - m_bNcZ[i]->SetFont(m_SmallFont);
  227. - m_bNcC[i]->SetFont(m_SmallFont);
  228. - m_bNcL[i]->SetFont(m_SmallFont); m_bNcR[i]->SetFont(m_SmallFont);
  229. - m_bNcU[i]->SetFont(m_SmallFont); m_bNcD[i]->SetFont(m_SmallFont);
  230. - m_bNcShake[i]->SetFont(m_SmallFont);
  231. + // Set small font
  232. + m_bNcShake[i]->SetFont(m_SmallFont);
  233. + m_bNcZ[i]->SetFont(m_SmallFont);
  234. + m_bNcC[i]->SetFont(m_SmallFont);
  235. + m_bNcL[i]->SetFont(m_SmallFont); m_bNcR[i]->SetFont(m_SmallFont);
  236. + m_bNcU[i]->SetFont(m_SmallFont); m_bNcD[i]->SetFont(m_SmallFont);
  237. + m_bNcShake[i]->SetFont(m_SmallFont);
  238.  
  239. - // Sizers
  240. - m_NunchuckStick[i] = new wxBoxSizer(wxHORIZONTAL);
  241. - m_NunchuckStick[i]->Add(m_NunchuckTextStick[i], 0, (wxUP), 4);
  242. - m_NunchuckStick[i]->Add(m_NunchuckComboStick[i], 0, (wxLEFT), 2);
  243. + // Sizers
  244. + m_NunchuckStick[i] = new wxBoxSizer(wxHORIZONTAL);
  245. + m_NunchuckStick[i]->Add(m_NunchuckTextStick[i], 0, (wxUP), 4);
  246. + m_NunchuckStick[i]->Add(m_NunchuckComboStick[i], 0, (wxLEFT), 2);
  247.  
  248. - m_SNcZ[i] = new wxBoxSizer(wxHORIZONTAL); m_SNcC[i] = new wxBoxSizer(wxHORIZONTAL);
  249. - m_SNcL[i] = new wxBoxSizer(wxHORIZONTAL); m_SNcR[i] = new wxBoxSizer(wxHORIZONTAL);
  250. - m_SNcU[i] = new wxBoxSizer(wxHORIZONTAL); m_SNcD[i] = new wxBoxSizer(wxHORIZONTAL);
  251. - m_SNcShake[i] = new wxBoxSizer(wxHORIZONTAL);
  252. + m_SNcZ[i] = new wxBoxSizer(wxHORIZONTAL); m_SNcC[i] = new wxBoxSizer(wxHORIZONTAL);
  253. + m_SNcL[i] = new wxBoxSizer(wxHORIZONTAL); m_SNcR[i] = new wxBoxSizer(wxHORIZONTAL);
  254. + m_SNcU[i] = new wxBoxSizer(wxHORIZONTAL); m_SNcD[i] = new wxBoxSizer(wxHORIZONTAL);
  255. + m_SNcShake[i] = new wxBoxSizer(wxHORIZONTAL);
  256.  
  257. - m_SNcZ[i]->Add(m_tNcZ[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcZ[i]->Add(m_bNcZ[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  258. - m_SNcC[i]->Add(m_tNcC[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcC[i]->Add(m_bNcC[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  259. - m_SNcL[i]->Add(m_tNcL[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcL[i]->Add(m_bNcL[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  260. - m_SNcR[i]->Add(m_tNcR[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcR[i]->Add(m_bNcR[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  261. - m_SNcU[i]->Add(m_tNcU[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcU[i]->Add(m_bNcU[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  262. - m_SNcD[i]->Add(m_tNcD[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcD[i]->Add(m_bNcD[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  263. - m_SNcShake[i]->Add(m_tNcShake[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcShake[i]->Add(m_bNcShake[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  264. + m_SNcZ[i]->Add(m_tNcZ[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcZ[i]->Add(m_bNcZ[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  265. + m_SNcC[i]->Add(m_tNcC[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcC[i]->Add(m_bNcC[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  266. + m_SNcL[i]->Add(m_tNcL[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcL[i]->Add(m_bNcL[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  267. + m_SNcR[i]->Add(m_tNcR[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcR[i]->Add(m_bNcR[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  268. + m_SNcU[i]->Add(m_tNcU[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcU[i]->Add(m_bNcU[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  269. + m_SNcD[i]->Add(m_tNcD[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcD[i]->Add(m_bNcD[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  270. + m_SNcShake[i]->Add(m_tNcShake[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SNcShake[i]->Add(m_bNcShake[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  271.  
  272. - // The parent sizer
  273. - m_gNunchuck[i] = new wxStaticBoxSizer (wxVERTICAL, m_Controller[i], wxT("Nunchuck"));
  274. - m_gNunchuck[i]->Add(m_NunchuckStick[i], 0, wxALIGN_CENTER | (wxALL), 2);
  275. - m_gNunchuck[i]->AddSpacer(2);
  276. - m_gNunchuck[i]->Add(m_SNcShake[i], 0, wxALIGN_RIGHT | (wxALL), 1);
  277. - m_gNunchuck[i]->Add(m_SNcZ[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  278. - m_gNunchuck[i]->Add(m_SNcC[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  279. - m_gNunchuck[i]->Add(m_SNcL[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  280. - m_gNunchuck[i]->Add(m_SNcR[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  281. - m_gNunchuck[i]->Add(m_SNcU[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  282. - m_gNunchuck[i]->Add(m_SNcD[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  283. + // The parent sizer
  284. + m_gNunchuck[i] = new wxStaticBoxSizer (wxVERTICAL, m_Controller[i], wxT("Nunchuck"));
  285. + m_gNunchuck[i]->Add(m_NunchuckStick[i], 0, wxALIGN_CENTER | (wxALL), 2);
  286. + m_gNunchuck[i]->AddSpacer(2);
  287. + m_gNunchuck[i]->Add(m_SNcShake[i], 0, wxALIGN_RIGHT | (wxALL), 1);
  288. + m_gNunchuck[i]->Add(m_SNcZ[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  289. + m_gNunchuck[i]->Add(m_SNcC[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  290. + m_gNunchuck[i]->Add(m_SNcL[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  291. + m_gNunchuck[i]->Add(m_SNcR[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  292. + m_gNunchuck[i]->Add(m_SNcU[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  293. + m_gNunchuck[i]->Add(m_SNcD[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  294.  
  295. - //Set values
  296. - m_NunchuckComboStick[i]->SetSelection(g_Config.Nunchuck.Type);
  297. + //Set values
  298. + m_NunchuckComboStick[i]->SetSelection(g_Config.Nunchuck.Type);
  299. + }
  300. + else if(g_Config.iExtensionConnected == EXT_CLASSIC_CONTROLLER)
  301. + {
  302. + // Classic Controller
  303. +
  304. + // Stick controls
  305. + m_CcTextLeftStick[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Left stick"));
  306. + m_CcComboLeftStick[i] = new wxComboBox(m_Controller[i], IDCB_CC_LEFT_STICK, StrNunchuck[0], wxDefaultPosition, wxDefaultSize, StrNunchuck, wxCB_READONLY);
  307. + m_CcTextRightStick[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Right stick"));
  308. + m_CcComboRightStick[i] = new wxComboBox(m_Controller[i], IDCB_CC_RIGHT_STICK, StrNunchuck[0], wxDefaultPosition, wxDefaultSize, StrNunchuck, wxCB_READONLY);
  309. + m_CcTextTriggers[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Triggers"));
  310. + m_CcComboTriggers[i] = new wxComboBox(m_Controller[i], IDCB_CC_TRIGGERS, StrCcTriggers[0], wxDefaultPosition, wxDefaultSize, StrCcTriggers, wxCB_READONLY);
  311.  
  312. - // Classic Controller
  313. + m_tCcA[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("A"));
  314. + m_tCcB[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("B"));
  315. + m_tCcX[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("X"));
  316. + m_tCcY[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Y"));
  317. + m_tCcP[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("+"));
  318. + m_tCcM[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("- "));
  319. + m_tCcH[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Home"));
  320.  
  321. - // Stick controls
  322. - m_CcTextLeftStick[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Left stick"));
  323. - m_CcComboLeftStick[i] = new wxComboBox(m_Controller[i], IDCB_CC_LEFT_STICK, StrNunchuck[0], wxDefaultPosition, wxDefaultSize, StrNunchuck, wxCB_READONLY);
  324. - m_CcTextRightStick[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Right stick"));
  325. - m_CcComboRightStick[i] = new wxComboBox(m_Controller[i], IDCB_CC_RIGHT_STICK, StrNunchuck[0], wxDefaultPosition, wxDefaultSize, StrNunchuck, wxCB_READONLY);
  326. - m_CcTextTriggers[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Triggers"));
  327. - m_CcComboTriggers[i] = new wxComboBox(m_Controller[i], IDCB_CC_TRIGGERS, StrCcTriggers[0], wxDefaultPosition, wxDefaultSize, StrCcTriggers, wxCB_READONLY);
  328. + m_tCcTl[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Left trigger"));
  329. + m_tCcZl[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Left Z"));
  330. + m_tCcZr[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Right Z"));
  331. + m_tCcTr[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Right trigger"));
  332.  
  333. - m_tCcA[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("A"));
  334. - m_tCcB[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("B"));
  335. - m_tCcX[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("X"));
  336. - m_tCcY[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Y"));
  337. - m_tCcP[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("+"));
  338. - m_tCcM[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("- "));
  339. - m_tCcH[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Home"));
  340. + m_tCcDl[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Digital Left")); // Digital pad
  341. + m_tCcDu[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Digital Up"));
  342. + m_tCcDr[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Digital Right"));
  343. + m_tCcDd[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Digital Down"));
  344. + m_tCcLl[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("L Left")); // Left analog stick
  345. + m_tCcLu[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("L Up"));
  346. + m_tCcLr[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("L Right"));
  347. + m_tCcLd[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("L Down"));
  348. + m_tCcRl[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("R Left")); // Right analog stick
  349. + m_tCcRu[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("R Up"));
  350. + m_tCcRr[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("R Right"));
  351. + m_tCcRd[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("R Down"));
  352.  
  353. - m_tCcTl[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Left trigger"));
  354. - m_tCcZl[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Left Z"));
  355. - m_tCcZr[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Right Z"));
  356. - m_tCcTr[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Right trigger"));
  357. + m_bCcA[i] = new wxButton(m_Controller[i], IDB_CC_A, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  358. + m_bCcB[i] = new wxButton(m_Controller[i], IDB_CC_B, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  359. + m_bCcX[i] = new wxButton(m_Controller[i], IDB_CC_X, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  360. + m_bCcY[i] = new wxButton(m_Controller[i], IDB_CC_Y, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  361. + m_bCcP[i] = new wxButton(m_Controller[i], IDB_CC_P, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  362. + m_bCcM[i] = new wxButton(m_Controller[i], IDB_CC_M, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  363. + m_bCcH[i] = new wxButton(m_Controller[i], IDB_CC_H, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  364.  
  365. - m_tCcDl[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Digital Left")); // Digital pad
  366. - m_tCcDu[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Digital Up"));
  367. - m_tCcDr[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Digital Right"));
  368. - m_tCcDd[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Digital Down"));
  369. - m_tCcLl[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("L Left")); // Left analog stick
  370. - m_tCcLu[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("L Up"));
  371. - m_tCcLr[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("L Right"));
  372. - m_tCcLd[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("L Down"));
  373. - m_tCcRl[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("R Left")); // Right analog stick
  374. - m_tCcRu[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("R Up"));
  375. - m_tCcRr[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("R Right"));
  376. - m_tCcRd[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("R Down"));
  377. + m_bCcTl[i] = new wxButton(m_Controller[i], IDB_CC_TL, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  378. + m_bCcZl[i] = new wxButton(m_Controller[i], IDB_CC_ZL, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  379. + m_bCcZr[i] = new wxButton(m_Controller[i], IDB_CC_ZR, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  380. + m_bCcTr[i] = new wxButton(m_Controller[i], IDB_CC_TR, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  381.  
  382. - m_bCcA[i] = new wxButton(m_Controller[i], IDB_CC_A, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  383. - m_bCcB[i] = new wxButton(m_Controller[i], IDB_CC_B, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  384. - m_bCcX[i] = new wxButton(m_Controller[i], IDB_CC_X, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  385. - m_bCcY[i] = new wxButton(m_Controller[i], IDB_CC_Y, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  386. - m_bCcP[i] = new wxButton(m_Controller[i], IDB_CC_P, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  387. - m_bCcM[i] = new wxButton(m_Controller[i], IDB_CC_M, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  388. - m_bCcH[i] = new wxButton(m_Controller[i], IDB_CC_H, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  389. + m_bCcDl[i] = new wxButton(m_Controller[i], IDB_CC_DL, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH)); // Digital pad
  390. + m_bCcDu[i] = new wxButton(m_Controller[i], IDB_CC_DU, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  391. + m_bCcDr[i] = new wxButton(m_Controller[i], IDB_CC_DR, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  392. + m_bCcDd[i] = new wxButton(m_Controller[i], IDB_CC_DD, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  393. + m_bCcLl[i] = new wxButton(m_Controller[i], IDB_CC_LL, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH)); // Left analog stick
  394. + m_bCcLu[i] = new wxButton(m_Controller[i], IDB_CC_LU, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  395. + m_bCcLr[i] = new wxButton(m_Controller[i], IDB_CC_LR, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  396. + m_bCcLd[i] = new wxButton(m_Controller[i], IDB_CC_LD, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  397. + m_bCcRl[i] = new wxButton(m_Controller[i], IDB_CC_RL, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH)); // Right analog stick
  398. + m_bCcRu[i] = new wxButton(m_Controller[i], IDB_CC_RU, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  399. + m_bCcRr[i] = new wxButton(m_Controller[i], IDB_CC_RR, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  400. + m_bCcRd[i] = new wxButton(m_Controller[i], IDB_CC_RD, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  401.  
  402. - m_bCcTl[i] = new wxButton(m_Controller[i], IDB_CC_TL, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  403. - m_bCcZl[i] = new wxButton(m_Controller[i], IDB_CC_ZL, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  404. - m_bCcZr[i] = new wxButton(m_Controller[i], IDB_CC_ZR, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  405. - m_bCcTr[i] = new wxButton(m_Controller[i], IDB_CC_TR, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  406. + // Set small font
  407. + m_bCcA[i]->SetFont(m_SmallFont); m_bCcB[i]->SetFont(m_SmallFont);
  408. + m_bCcX[i]->SetFont(m_SmallFont); m_bCcY[i]->SetFont(m_SmallFont);
  409. + m_bCcP[i]->SetFont(m_SmallFont); m_bCcM[i]->SetFont(m_SmallFont); m_bCcH[i]->SetFont(m_SmallFont);
  410. + m_bCcTl[i]->SetFont(m_SmallFont); m_bCcZl[i]->SetFont(m_SmallFont); m_bCcZr[i]->SetFont(m_SmallFont); m_bCcTr[i]->SetFont(m_SmallFont);
  411. + m_bCcDl[i]->SetFont(m_SmallFont); m_bCcDu[i]->SetFont(m_SmallFont); m_bCcDr[i]->SetFont(m_SmallFont); m_bCcDd[i]->SetFont(m_SmallFont);
  412. + m_bCcLl[i]->SetFont(m_SmallFont); m_bCcLu[i]->SetFont(m_SmallFont); m_bCcLr[i]->SetFont(m_SmallFont); m_bCcLd[i]->SetFont(m_SmallFont);
  413. + m_bCcRl[i]->SetFont(m_SmallFont); m_bCcRu[i]->SetFont(m_SmallFont); m_bCcRr[i]->SetFont(m_SmallFont); m_bCcRd[i]->SetFont(m_SmallFont);
  414.  
  415. - m_bCcDl[i] = new wxButton(m_Controller[i], IDB_CC_DL, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH)); // Digital pad
  416. - m_bCcDu[i] = new wxButton(m_Controller[i], IDB_CC_DU, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  417. - m_bCcDr[i] = new wxButton(m_Controller[i], IDB_CC_DR, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  418. - m_bCcDd[i] = new wxButton(m_Controller[i], IDB_CC_DD, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  419. - m_bCcLl[i] = new wxButton(m_Controller[i], IDB_CC_LL, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH)); // Left analog stick
  420. - m_bCcLu[i] = new wxButton(m_Controller[i], IDB_CC_LU, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  421. - m_bCcLr[i] = new wxButton(m_Controller[i], IDB_CC_LR, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  422. - m_bCcLd[i] = new wxButton(m_Controller[i], IDB_CC_LD, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  423. - m_bCcRl[i] = new wxButton(m_Controller[i], IDB_CC_RL, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH)); // Right analog stick
  424. - m_bCcRu[i] = new wxButton(m_Controller[i], IDB_CC_RU, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  425. - m_bCcRr[i] = new wxButton(m_Controller[i], IDB_CC_RR, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  426. - m_bCcRd[i] = new wxButton(m_Controller[i], IDB_CC_RD, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  427. -
  428. - // Set small font
  429. - m_bCcA[i]->SetFont(m_SmallFont); m_bCcB[i]->SetFont(m_SmallFont);
  430. - m_bCcX[i]->SetFont(m_SmallFont); m_bCcY[i]->SetFont(m_SmallFont);
  431. - m_bCcP[i]->SetFont(m_SmallFont); m_bCcM[i]->SetFont(m_SmallFont); m_bCcH[i]->SetFont(m_SmallFont);
  432. - m_bCcTl[i]->SetFont(m_SmallFont); m_bCcZl[i]->SetFont(m_SmallFont); m_bCcZr[i]->SetFont(m_SmallFont); m_bCcTr[i]->SetFont(m_SmallFont);
  433. - m_bCcDl[i]->SetFont(m_SmallFont); m_bCcDu[i]->SetFont(m_SmallFont); m_bCcDr[i]->SetFont(m_SmallFont); m_bCcDd[i]->SetFont(m_SmallFont);
  434. - m_bCcLl[i]->SetFont(m_SmallFont); m_bCcLu[i]->SetFont(m_SmallFont); m_bCcLr[i]->SetFont(m_SmallFont); m_bCcLd[i]->SetFont(m_SmallFont);
  435. - m_bCcRl[i]->SetFont(m_SmallFont); m_bCcRu[i]->SetFont(m_SmallFont); m_bCcRr[i]->SetFont(m_SmallFont); m_bCcRd[i]->SetFont(m_SmallFont);
  436. -
  437. - // Sizers
  438. - m_SCcLeftStick[i] = new wxBoxSizer(wxHORIZONTAL);
  439. - m_SCcLeftStick[i]->Add(m_CcTextLeftStick[i], 0, (wxUP), 4);
  440. - m_SCcLeftStick[i]->Add(m_CcComboLeftStick[i], 0, (wxLEFT), 2);
  441. -
  442. - m_SCcRightStick[i] = new wxBoxSizer(wxHORIZONTAL);
  443. - m_SCcRightStick[i]->Add(m_CcTextRightStick[i], 0, (wxUP), 4);
  444. - m_SCcRightStick[i]->Add(m_CcComboRightStick[i], 0, (wxLEFT), 2);
  445. -
  446. - m_SCcTriggers[i] = new wxBoxSizer(wxHORIZONTAL);
  447. - m_SCcTriggers[i]->Add(m_CcTextTriggers[i], 0, (wxUP), 4);
  448. - m_SCcTriggers[i]->Add(m_CcComboTriggers[i], 0, (wxLEFT), 2);
  449. -
  450. - m_SCcA[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcB[i] = new wxBoxSizer(wxHORIZONTAL);
  451. - m_SCcX[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcY[i] = new wxBoxSizer(wxHORIZONTAL);
  452. - m_SCcP[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcM[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcH[i] = new wxBoxSizer(wxHORIZONTAL);
  453. - m_SCcTl[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcZl[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcZr[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcTr[i] = new wxBoxSizer(wxHORIZONTAL);
  454. - m_SCcDl[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcDu[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcDr[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcDd[i] = new wxBoxSizer(wxHORIZONTAL);
  455. - m_SCcLl[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcLu[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcLr[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcLd[i] = new wxBoxSizer(wxHORIZONTAL);
  456. - m_SCcRl[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcRu[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcRr[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcRd[i] = new wxBoxSizer(wxHORIZONTAL);
  457. -
  458. - m_SCcA[i]->Add(m_tCcA[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcA[i]->Add(m_bCcA[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  459. - m_SCcB[i]->Add(m_tCcB[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcB[i]->Add(m_bCcB[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  460. - m_SCcX[i]->Add(m_tCcX[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcX[i]->Add(m_bCcX[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  461. - m_SCcY[i]->Add(m_tCcY[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcY[i]->Add(m_bCcY[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  462. - m_SCcP[i]->Add(m_tCcP[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcP[i]->Add(m_bCcP[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  463. - m_SCcM[i]->Add(m_tCcM[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcM[i]->Add(m_bCcM[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  464. - m_SCcH[i]->Add(m_tCcH[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcH[i]->Add(m_bCcH[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  465. - m_SCcTl[i]->Add(m_tCcTl[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcTl[i]->Add(m_bCcTl[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  466. - m_SCcZl[i]->Add(m_tCcZl[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcZl[i]->Add(m_bCcZl[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  467. - m_SCcZr[i]->Add(m_tCcZr[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcZr[i]->Add(m_bCcZr[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  468. - m_SCcTr[i]->Add(m_tCcTr[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcTr[i]->Add(m_bCcTr[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  469. -
  470. - m_SCcDl[i]->Add(m_tCcDl[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcDl[i]->Add(m_bCcDl[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  471. - m_SCcDu[i]->Add(m_tCcDu[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcDu[i]->Add(m_bCcDu[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  472. - m_SCcDr[i]->Add(m_tCcDr[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcDr[i]->Add(m_bCcDr[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  473. - m_SCcDd[i]->Add(m_tCcDd[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcDd[i]->Add(m_bCcDd[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  474. -
  475. - m_SCcLl[i]->Add(m_tCcLl[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcLl[i]->Add(m_bCcLl[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  476. - m_SCcLu[i]->Add(m_tCcLu[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcLu[i]->Add(m_bCcLu[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  477. - m_SCcLr[i]->Add(m_tCcLr[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcLr[i]->Add(m_bCcLr[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  478. - m_SCcLd[i]->Add(m_tCcLd[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcLd[i]->Add(m_bCcLd[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  479. -
  480. - m_SCcRl[i]->Add(m_tCcRl[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcRl[i]->Add(m_bCcRl[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  481. - m_SCcRu[i]->Add(m_tCcRu[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcRu[i]->Add(m_bCcRu[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  482. - m_SCcRr[i]->Add(m_tCcRr[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcRr[i]->Add(m_bCcRr[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  483. - m_SCcRd[i]->Add(m_tCcRd[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcRd[i]->Add(m_bCcRd[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  484. -
  485. - // The left parent
  486. - m_SCcVertLeft[i] = new wxBoxSizer(wxVERTICAL);
  487. - m_SCcVertLeft[i]->Add(m_SCcLeftStick[i], 0, wxALIGN_RIGHT | (wxALL), 2);
  488. - m_SCcVertLeft[i]->Add(m_SCcRightStick[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 2);
  489. - m_SCcVertLeft[i]->AddSpacer(2);
  490. - m_SCcVertLeft[i]->Add(m_SCcDl[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  491. - m_SCcVertLeft[i]->Add(m_SCcDu[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  492. - m_SCcVertLeft[i]->Add(m_SCcDr[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  493. - m_SCcVertLeft[i]->Add(m_SCcDd[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  494. - m_SCcVertLeft[i]->Add(m_SCcTl[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  495. - m_SCcVertLeft[i]->Add(m_SCcTr[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  496. -
  497. - // The middle parent
  498. - m_SCcVertMiddle[i] = new wxBoxSizer(wxVERTICAL);
  499. - m_SCcVertMiddle[i]->Add(m_SCcTriggers[i], 0, wxALIGN_RIGHT | (wxALL), 1);
  500. - m_SCcVertLeft[i]->AddSpacer(2);
  501. - m_SCcVertMiddle[i]->Add(m_SCcLl[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  502. - m_SCcVertMiddle[i]->Add(m_SCcLu[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  503. - m_SCcVertMiddle[i]->Add(m_SCcLr[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  504. - m_SCcVertMiddle[i]->Add(m_SCcLd[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  505. - m_SCcVertMiddle[i]->Add(m_SCcRl[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  506. - m_SCcVertMiddle[i]->Add(m_SCcRd[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  507. - m_SCcVertMiddle[i]->Add(m_SCcRr[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  508. - m_SCcVertMiddle[i]->Add(m_SCcRu[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  509. -
  510. - // The right parent
  511. - m_SCcVertRight[i] = new wxBoxSizer(wxVERTICAL);
  512. - m_SCcVertRight[i]->Add(m_SCcA[i], 0, wxALIGN_RIGHT | (wxALL), 1);
  513. - m_SCcVertRight[i]->Add(m_SCcB[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  514. - m_SCcVertRight[i]->Add(m_SCcX[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  515. - m_SCcVertRight[i]->Add(m_SCcY[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  516. - m_SCcVertRight[i]->Add(m_SCcP[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  517. - m_SCcVertRight[i]->Add(m_SCcM[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  518. - m_SCcVertRight[i]->Add(m_SCcH[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  519. - m_SCcVertRight[i]->Add(m_SCcZl[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  520. - m_SCcVertRight[i]->Add(m_SCcZr[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  521. -
  522. -
  523. - // The parent sizer
  524. - m_gClassicController[i] = new wxStaticBoxSizer (wxHORIZONTAL, m_Controller[i], wxT("Classic Controller"));
  525. - m_gClassicController[i]->Add(m_SCcVertLeft[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  526. - m_gClassicController[i]->Add(m_SCcVertMiddle[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  527. - m_gClassicController[i]->Add(m_SCcVertRight[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  528. -
  529. - //Set values
  530. - m_CcComboLeftStick[i]->SetSelection(g_Config.ClassicController.LType);
  531. - m_CcComboRightStick[i]->SetSelection(g_Config.ClassicController.RType);
  532. - m_CcComboTriggers[i]->SetSelection(g_Config.ClassicController.TType);
  533. -
  534. - //GH3
  535. - // Stick controls
  536. - m_tGH3_Analog[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("stick"));
  537. - m_GH3ComboAnalog[i] = new wxComboBox(m_Controller[i], IDCB_GH3_ANALOG_STICK, StrNunchuck[0], wxDefaultPosition, wxDefaultSize, StrNunchuck, wxCB_READONLY);
  538. -
  539. -
  540. -
  541. - m_tGH3_Green[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Green"));
  542. - m_tGH3_Red[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Red"));
  543. - m_tGH3_Yellow[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Yellow"));
  544. - m_tGH3_Blue[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Blue"));
  545. - m_tGH3_Orange[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Orange"));
  546. - m_tGH3_Plus[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("+"));
  547. - m_tGH3_Minus[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("- "));
  548. - m_tGH3_Whammy[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Whammy"));
  549. -
  550. - m_tGH3_ALeft[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Left")); //analog stick
  551. - m_tGH3_ARight[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Up"));
  552. - m_tGH3_AUp[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Right"));
  553. - m_tGH3_ADown[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Down"));
  554. -
  555. - m_tGH3_StrumUp[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Strum Up"));
  556. - m_tGH3_StrumDown[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Strum Down"));
  557. -
  558. - m_bGH3_Green[i] = new wxButton(m_Controller[i], IDB_GH3_GREEN, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  559. - m_bGH3_Red[i] = new wxButton(m_Controller[i], IDB_GH3_RED, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  560. - m_bGH3_Yellow[i] = new wxButton(m_Controller[i], IDB_GH3_YELLOW, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  561. - m_bGH3_Blue[i] = new wxButton(m_Controller[i], IDB_GH3_BLUE, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  562. - m_bGH3_Orange[i] = new wxButton(m_Controller[i], IDB_GH3_ORANGE, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  563. - m_bGH3_Plus[i] = new wxButton(m_Controller[i], IDB_GH3_PLUS, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  564. - m_bGH3_Minus[i] = new wxButton(m_Controller[i], IDB_GH3_MINUS, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  565. -
  566. - m_bGH3_Whammy[i] = new wxButton(m_Controller[i], IDB_GH3_WHAMMY, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  567. + // Sizers
  568. + m_SCcLeftStick[i] = new wxBoxSizer(wxHORIZONTAL);
  569. + m_SCcLeftStick[i]->Add(m_CcTextLeftStick[i], 0, (wxUP), 4);
  570. + m_SCcLeftStick[i]->Add(m_CcComboLeftStick[i], 0, (wxLEFT), 2);
  571.  
  572. - m_bGH3_ALeft[i] = new wxButton(m_Controller[i], IDB_GH3_ANALOG_LEFT, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH)); // Left analog stick
  573. - m_bGH3_AUp[i] = new wxButton(m_Controller[i], IDB_GH3_ANALOG_UP, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  574. - m_bGH3_ARight[i] = new wxButton(m_Controller[i], IDB_GH3_ANALOG_RIGHT, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  575. - m_bGH3_ADown[i] = new wxButton(m_Controller[i], IDB_GH3_ANALOG_DOWN, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  576. + m_SCcRightStick[i] = new wxBoxSizer(wxHORIZONTAL);
  577. + m_SCcRightStick[i]->Add(m_CcTextRightStick[i], 0, (wxUP), 4);
  578. + m_SCcRightStick[i]->Add(m_CcComboRightStick[i], 0, (wxLEFT), 2);
  579.  
  580. - m_bGH3_StrumUp[i] = new wxButton(m_Controller[i], IDB_GH3_STRUM_UP, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  581. - m_bGH3_StrumDown[i] = new wxButton(m_Controller[i], IDB_GH3_STRUM_DOWN, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  582. -
  583. - m_GH3ComboAnalog[i]->Disable();
  584. - m_bGH3_Whammy[i]->Disable();
  585. - m_bGH3_ALeft[i]->Disable();
  586. - m_bGH3_AUp[i]->Disable();
  587. - m_bGH3_ARight[i]->Disable();
  588. - m_bGH3_ADown[i]->Disable();
  589. + m_SCcTriggers[i] = new wxBoxSizer(wxHORIZONTAL);
  590. + m_SCcTriggers[i]->Add(m_CcTextTriggers[i], 0, (wxUP), 4);
  591. + m_SCcTriggers[i]->Add(m_CcComboTriggers[i], 0, (wxLEFT), 2);
  592.  
  593. - // Sizers
  594. - m_sGH3_Analog[i] = new wxBoxSizer(wxHORIZONTAL);
  595. - m_sGH3_Analog[i]->Add(m_tGH3_Analog[i], 0, (wxUP), 4);
  596. - m_sGH3_Analog[i]->Add(m_GH3ComboAnalog[i], 0, (wxLEFT), 2);
  597. + m_SCcA[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcB[i] = new wxBoxSizer(wxHORIZONTAL);
  598. + m_SCcX[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcY[i] = new wxBoxSizer(wxHORIZONTAL);
  599. + m_SCcP[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcM[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcH[i] = new wxBoxSizer(wxHORIZONTAL);
  600. + m_SCcTl[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcZl[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcZr[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcTr[i] = new wxBoxSizer(wxHORIZONTAL);
  601. + m_SCcDl[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcDu[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcDr[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcDd[i] = new wxBoxSizer(wxHORIZONTAL);
  602. + m_SCcLl[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcLu[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcLr[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcLd[i] = new wxBoxSizer(wxHORIZONTAL);
  603. + m_SCcRl[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcRu[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcRr[i] = new wxBoxSizer(wxHORIZONTAL); m_SCcRd[i] = new wxBoxSizer(wxHORIZONTAL);
  604.  
  605. + m_SCcA[i]->Add(m_tCcA[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcA[i]->Add(m_bCcA[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  606. + m_SCcB[i]->Add(m_tCcB[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcB[i]->Add(m_bCcB[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  607. + m_SCcX[i]->Add(m_tCcX[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcX[i]->Add(m_bCcX[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  608. + m_SCcY[i]->Add(m_tCcY[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcY[i]->Add(m_bCcY[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  609. + m_SCcP[i]->Add(m_tCcP[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcP[i]->Add(m_bCcP[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  610. + m_SCcM[i]->Add(m_tCcM[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcM[i]->Add(m_bCcM[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  611. + m_SCcH[i]->Add(m_tCcH[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcH[i]->Add(m_bCcH[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  612. + m_SCcTl[i]->Add(m_tCcTl[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcTl[i]->Add(m_bCcTl[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  613. + m_SCcZl[i]->Add(m_tCcZl[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcZl[i]->Add(m_bCcZl[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  614. + m_SCcZr[i]->Add(m_tCcZr[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcZr[i]->Add(m_bCcZr[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  615. + m_SCcTr[i]->Add(m_tCcTr[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcTr[i]->Add(m_bCcTr[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  616.  
  617. - m_sGH3_Whammy[i] = new wxBoxSizer(wxHORIZONTAL);
  618. - m_sGH3_Whammy[i]->Add(m_tGH3_Whammy[i], 0, (wxUP), 4);
  619. - m_sGH3_Whammy[i]->Add(m_bGH3_Whammy[i], 0, (wxLEFT), 2);
  620. + m_SCcDl[i]->Add(m_tCcDl[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcDl[i]->Add(m_bCcDl[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  621. + m_SCcDu[i]->Add(m_tCcDu[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcDu[i]->Add(m_bCcDu[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  622. + m_SCcDr[i]->Add(m_tCcDr[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcDr[i]->Add(m_bCcDr[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  623. + m_SCcDd[i]->Add(m_tCcDd[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcDd[i]->Add(m_bCcDd[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  624.  
  625. - m_sGH3_StrumUp[i] = new wxBoxSizer(wxHORIZONTAL);
  626. - m_sGH3_StrumDown[i] = new wxBoxSizer(wxHORIZONTAL);
  627. + m_SCcLl[i]->Add(m_tCcLl[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcLl[i]->Add(m_bCcLl[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  628. + m_SCcLu[i]->Add(m_tCcLu[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcLu[i]->Add(m_bCcLu[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  629. + m_SCcLr[i]->Add(m_tCcLr[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcLr[i]->Add(m_bCcLr[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  630. + m_SCcLd[i]->Add(m_tCcLd[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcLd[i]->Add(m_bCcLd[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  631.  
  632. - m_sGH3_Green[i] = new wxBoxSizer(wxHORIZONTAL);
  633. - m_sGH3_Green[i]->Add(m_tGH3_Green[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  634. - m_sGH3_Green[i]->Add(m_bGH3_Green[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  635. + m_SCcRl[i]->Add(m_tCcRl[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcRl[i]->Add(m_bCcRl[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  636. + m_SCcRu[i]->Add(m_tCcRu[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcRu[i]->Add(m_bCcRu[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  637. + m_SCcRr[i]->Add(m_tCcRr[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcRr[i]->Add(m_bCcRr[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  638. + m_SCcRd[i]->Add(m_tCcRd[i], 0, wxALIGN_RIGHT | (wxUP), 4); m_SCcRd[i]->Add(m_bCcRd[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  639.  
  640. - m_sGH3_Red[i] = new wxBoxSizer(wxHORIZONTAL);
  641. - m_sGH3_Red[i]->Add(m_tGH3_Red[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  642. - m_sGH3_Red[i]->Add(m_bGH3_Red[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  643. + // The left parent
  644. + m_SCcVertLeft[i] = new wxBoxSizer(wxVERTICAL);
  645. + m_SCcVertLeft[i]->Add(m_SCcLeftStick[i], 0, wxALIGN_RIGHT | (wxALL), 2);
  646. + m_SCcVertLeft[i]->Add(m_SCcRightStick[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 2);
  647. + m_SCcVertLeft[i]->AddSpacer(2);
  648. + m_SCcVertLeft[i]->Add(m_SCcDl[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  649. + m_SCcVertLeft[i]->Add(m_SCcDu[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  650. + m_SCcVertLeft[i]->Add(m_SCcDr[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  651. + m_SCcVertLeft[i]->Add(m_SCcDd[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  652. + m_SCcVertLeft[i]->Add(m_SCcTl[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  653. + m_SCcVertLeft[i]->Add(m_SCcTr[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  654.  
  655. - m_sGH3_Yellow[i] = new wxBoxSizer(wxHORIZONTAL);
  656. - m_sGH3_Yellow[i]->Add(m_tGH3_Yellow[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  657. - m_sGH3_Yellow[i]->Add(m_bGH3_Yellow[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  658. + // The middle parent
  659. + m_SCcVertMiddle[i] = new wxBoxSizer(wxVERTICAL);
  660. + m_SCcVertMiddle[i]->Add(m_SCcTriggers[i], 0, wxALIGN_RIGHT | (wxALL), 1);
  661. + m_SCcVertLeft[i]->AddSpacer(2);
  662. + m_SCcVertMiddle[i]->Add(m_SCcLl[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  663. + m_SCcVertMiddle[i]->Add(m_SCcLu[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  664. + m_SCcVertMiddle[i]->Add(m_SCcLr[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  665. + m_SCcVertMiddle[i]->Add(m_SCcLd[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  666. + m_SCcVertMiddle[i]->Add(m_SCcRl[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  667. + m_SCcVertMiddle[i]->Add(m_SCcRd[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  668. + m_SCcVertMiddle[i]->Add(m_SCcRr[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  669. + m_SCcVertMiddle[i]->Add(m_SCcRu[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  670.  
  671. - m_sGH3_Blue[i] = new wxBoxSizer(wxHORIZONTAL);
  672. - m_sGH3_Blue[i]->Add(m_tGH3_Blue[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  673. - m_sGH3_Blue[i]->Add(m_bGH3_Blue[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  674. + // The right parent
  675. + m_SCcVertRight[i] = new wxBoxSizer(wxVERTICAL);
  676. + m_SCcVertRight[i]->Add(m_SCcA[i], 0, wxALIGN_RIGHT | (wxALL), 1);
  677. + m_SCcVertRight[i]->Add(m_SCcB[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  678. + m_SCcVertRight[i]->Add(m_SCcX[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  679. + m_SCcVertRight[i]->Add(m_SCcY[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  680. + m_SCcVertRight[i]->Add(m_SCcP[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  681. + m_SCcVertRight[i]->Add(m_SCcM[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  682. + m_SCcVertRight[i]->Add(m_SCcH[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  683. + m_SCcVertRight[i]->Add(m_SCcZl[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  684. + m_SCcVertRight[i]->Add(m_SCcZr[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  685.  
  686. - m_sGH3_Orange[i] = new wxBoxSizer(wxHORIZONTAL);
  687. - m_sGH3_Orange[i]->Add(m_tGH3_Orange[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  688. - m_sGH3_Orange[i]->Add(m_bGH3_Orange[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  689.  
  690. - m_sGH3_Plus[i] = new wxBoxSizer(wxHORIZONTAL);
  691. - m_sGH3_Plus[i]->Add(m_tGH3_Plus[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  692. - m_sGH3_Plus[i]->Add(m_bGH3_Plus[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  693. + // The parent sizer
  694. + m_gClassicController[i] = new wxStaticBoxSizer (wxHORIZONTAL, m_Controller[i], wxT("Classic Controller"));
  695. + m_gClassicController[i]->Add(m_SCcVertLeft[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  696. + m_gClassicController[i]->Add(m_SCcVertMiddle[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  697. + m_gClassicController[i]->Add(m_SCcVertRight[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  698.  
  699. - m_sGH3_Minus[i] = new wxBoxSizer(wxHORIZONTAL);
  700. - m_sGH3_Minus[i]->Add(m_tGH3_Minus[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  701. - m_sGH3_Minus[i]->Add(m_bGH3_Minus[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  702. + //Set values
  703. + m_CcComboLeftStick[i]->SetSelection(g_Config.ClassicController.LType);
  704. + m_CcComboRightStick[i]->SetSelection(g_Config.ClassicController.RType);
  705. + m_CcComboTriggers[i]->SetSelection(g_Config.ClassicController.TType);
  706. + }
  707. + else if(g_Config.iExtensionConnected == EXT_GUITARHERO3_CONTROLLER)
  708. + {
  709. + // Stick controls
  710. + m_tGH3_Analog[i] = new wxStaticText(m_Controller[i], wxID_ANY, wxT("Analog joystick"));
  711. + m_GH3ComboAnalog[i] = new wxComboBox(m_Controller[i], IDCB_GH3_ANALOG_STICK, StrNunchuck[0], wxDefaultPosition, wxDefaultSize, StrNunchuck, wxCB_READONLY);
  712.  
  713. - m_sGH3_ALeft[i] = new wxBoxSizer(wxHORIZONTAL);
  714. - m_sGH3_ALeft[i]->Add(m_tGH3_ALeft[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  715. - m_sGH3_ALeft[i]->Add(m_bGH3_ALeft[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  716. + static const wxChar* gh3Text[] =
  717. + {
  718. + wxT("Green"),
  719. + wxT("Red"),
  720. + wxT("Yellow"),
  721. + wxT("Blue"),
  722. + wxT("Orange"),
  723. + wxT("+"),
  724. + wxT("- "),
  725. + wxT("Whammy"),
  726. + wxT("Left"), //analog stick
  727. + wxT("Up"),
  728. + wxT("Right"),
  729. + wxT("Down"),
  730. + wxT("Strum Up"),
  731. + wxT("Strum Down"),
  732. + };
  733.  
  734. - m_sGH3_ARight[i] = new wxBoxSizer(wxHORIZONTAL);
  735. - m_sGH3_ARight[i]->Add(m_tGH3_ARight[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  736. - m_sGH3_ARight[i]->Add(m_bGH3_ARight[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  737. + for ( int x = 0; x < GH3_CONTROLS; x++)
  738. + m_statictext_GH3[x][i] = new wxStaticText(m_Controller[i], wxID_ANY, gh3Text[x]);
  739.  
  740. - m_sGH3_AUp[i] = new wxBoxSizer(wxHORIZONTAL);
  741. - m_sGH3_AUp[i]->Add(m_tGH3_AUp[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  742. - m_sGH3_AUp[i]->Add(m_bGH3_AUp[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  743. + for ( int x = IDB_GH3_GREEN; x <= IDB_GH3_STRUM_DOWN; x++)
  744. + {
  745. + m_Button_GH3[x - IDB_GH3_GREEN][i] = new wxButton(m_Controller[i], x, wxEmptyString, wxDefaultPosition, wxSize(BtW, BtH));
  746. + if (IDB_GH3_WHAMMY <= x && x <= IDB_GH3_ANALOG_DOWN)
  747. + m_Button_GH3[x - IDB_GH3_GREEN][i]->Disable();
  748. + }
  749. + m_GH3ComboAnalog[i]->Disable();
  750.  
  751. - m_sGH3_ADown[i] = new wxBoxSizer(wxHORIZONTAL);
  752. - m_sGH3_ADown[i]->Add(m_tGH3_ADown[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  753. - m_sGH3_ADown[i]->Add(m_bGH3_ADown[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  754. + // Sizers
  755. + m_sGH3_Analog[i] = new wxBoxSizer(wxHORIZONTAL);
  756. + m_sGH3_Analog[i]->Add(m_tGH3_Analog[i], 0, (wxUP), 4);
  757. + m_sGH3_Analog[i]->Add(m_GH3ComboAnalog[i], 0, (wxLEFT), 2);
  758.  
  759. - m_sGH3_StrumUp[i] = new wxBoxSizer(wxHORIZONTAL);
  760. - m_sGH3_StrumUp[i]->Add(m_tGH3_StrumUp[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  761. - m_sGH3_StrumUp[i]->Add(m_bGH3_StrumUp[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  762. + for ( int x = 0; x < GH3_CONTROLS; x++)
  763. + {
  764. + m_sizer_GH3[x][i] = new wxBoxSizer(wxHORIZONTAL);
  765. + m_sizer_GH3[x][i]->Add(m_statictext_GH3[x][i], 0, (wxUP), 4);
  766. + m_sizer_GH3[x][i]->Add(m_Button_GH3[x][i], 0, (wxLEFT), 2);
  767. + }
  768.  
  769. - m_sGH3_StrumDown[i] = new wxBoxSizer(wxHORIZONTAL);
  770. - m_sGH3_StrumDown[i]->Add(m_tGH3_StrumDown[i], 0, wxALIGN_RIGHT | (wxUP), 4);
  771. - m_sGH3_StrumDown[i]->Add(m_bGH3_StrumDown[i], 0, wxALIGN_RIGHT | (wxLEFT), 2);
  772. + // The left parent
  773. + m_SGH3VertLeft[i] = new wxBoxSizer(wxVERTICAL);
  774. + m_SGH3VertLeft[i]->Add(m_sGH3_Analog[i], 0, wxALIGN_RIGHT | (wxALL), 2);
  775.  
  776. - // The left parent
  777. - m_SGH3VertLeft[i] = new wxBoxSizer(wxVERTICAL);
  778. - m_SGH3VertLeft[i]->Add(m_sGH3_Analog[i], 0, wxALIGN_RIGHT | (wxALL), 2);
  779. - m_SGH3VertLeft[i]->Add(m_sGH3_Whammy[i], 0, wxALIGN_RIGHT | (wxALL), 2);
  780. - m_SGH3VertLeft[i]->Add(m_sGH3_ALeft[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  781. - m_SGH3VertLeft[i]->Add(m_sGH3_AUp[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  782. - m_SGH3VertLeft[i]->Add(m_sGH3_ARight[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  783. - m_SGH3VertLeft[i]->Add(m_sGH3_ADown[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  784. + for (int x = IDB_GH3_WHAMMY - IDB_GH3_GREEN; x <= IDB_GH3_ANALOG_DOWN - IDB_GH3_GREEN; x++)
  785. + m_SGH3VertLeft[i]->Add(m_sizer_GH3[x][i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  786.  
  787. - // The right parent
  788. - m_SGH3VertRight[i] = new wxBoxSizer(wxVERTICAL);
  789. + // The right parent
  790. + m_SGH3VertRight[i] = new wxBoxSizer(wxVERTICAL);
  791.  
  792. - m_SGH3VertRight[i]->Add(m_sGH3_Green[i], 0, wxALIGN_RIGHT | (wxALL), 1);
  793. - m_SGH3VertRight[i]->Add(m_sGH3_Red[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  794. - m_SGH3VertRight[i]->Add(m_sGH3_Yellow[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  795. - m_SGH3VertRight[i]->Add(m_sGH3_Blue[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  796. - m_SGH3VertRight[i]->Add(m_sGH3_Orange[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  797. - m_SGH3VertRight[i]->Add(m_sGH3_Plus[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  798. - m_SGH3VertRight[i]->Add(m_sGH3_Minus[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  799. - m_SGH3VertRight[i]->Add(m_sGH3_StrumUp[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  800. - m_SGH3VertRight[i]->Add(m_sGH3_StrumDown[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  801. + for (int x = 0; x <= IDB_GH3_MINUS - IDB_GH3_GREEN; x++)
  802. + m_SGH3VertRight[i]->Add(m_sizer_GH3[x][i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  803.  
  804. - // The parent sizer
  805. - m_gGuitarHero3Controller[i] = new wxStaticBoxSizer (wxHORIZONTAL, m_Controller[i], wxT("Guitar Hero 3 Controller"));
  806. - m_gGuitarHero3Controller[i]->Add(m_SGH3VertLeft[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  807. - // m_gGuitarHero3Controller[i]->Add(m_SGH3VertMiddle[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  808. - m_gGuitarHero3Controller[i]->Add(m_SGH3VertRight[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  809. + m_SGH3VertRight[i]->Add(m_sizer_GH3[IDB_GH3_STRUM_UP - IDB_GH3_GREEN][i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  810. + m_SGH3VertRight[i]->Add(m_sizer_GH3[IDB_GH3_STRUM_DOWN - IDB_GH3_GREEN][i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  811.  
  812. - //Set values
  813. - m_CcComboLeftStick[i]->SetSelection(g_Config.ClassicController.LType);
  814. - m_CcComboRightStick[i]->SetSelection(g_Config.ClassicController.RType);
  815. - m_CcComboTriggers[i]->SetSelection(g_Config.ClassicController.TType);
  816. + // The parent sizer
  817. + m_gGuitarHero3Controller[i] = new wxStaticBoxSizer (wxHORIZONTAL, m_Controller[i], wxT("Guitar Hero 3 Controller"));
  818. + m_gGuitarHero3Controller[i]->Add(m_SGH3VertLeft[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  819. + m_gGuitarHero3Controller[i]->Add(m_SGH3VertRight[i], 0, wxALIGN_RIGHT | (wxLEFT | wxRIGHT | wxDOWN), 1);
  820. + }
  821.  
  822. -
  823. // Row 4 Sizers
  824.  
  825. m_HorizControllerMapping[i] = new wxBoxSizer(wxHORIZONTAL);
  826. m_HorizControllerMapping[i]->Add(m_gWiimote[i], 0, (wxLEFT), 5);
  827. + switch(g_Config.iExtensionConnected)
  828. + {
  829. + case EXT_NUNCHUCK:
  830. + m_HorizControllerMapping[i]->AddStretchSpacer(2);
  831. + m_HorizControllerMapping[i]->Add(m_gNunchuck[i], 0, (wxLEFT), 5);
  832. + break;
  833. + case EXT_CLASSIC_CONTROLLER:
  834. + m_HorizControllerMapping[i]->Add(m_gClassicController[i], 0, (wxLEFT), 5);
  835. + break;
  836. + case EXT_GUITARHERO3_CONTROLLER:
  837. + m_HorizControllerMapping[i]->Add(m_gGuitarHero3Controller[i], 0, (wxLEFT), 5);
  838. + break;
  839. + case EXT_GUITARHEROWT_DRUMS:
  840. + default:
  841. + break;
  842. + }
  843. m_HorizControllerMapping[i]->AddStretchSpacer(2);
  844. - m_HorizControllerMapping[i]->Add(m_gNunchuck[i], 0, (wxLEFT), 5);
  845. - m_HorizControllerMapping[i]->Add(m_gClassicController[i], 0, (wxLEFT), 5);
  846. - m_HorizControllerMapping[i]->Add(m_gGuitarHero3Controller[i], 0, (wxLEFT), 5);
  847. - m_HorizControllerMapping[i]->AddStretchSpacer(2);
  848.  
  849. // Set up sizers and layout
  850. m_SizeParent[i] = new wxBoxSizer(wxVERTICAL);
  851. Index: ConfigPadDlg.h
  852. ===================================================================
  853. --- ConfigPadDlg.h (revision 3718)
  854. +++ ConfigPadDlg.h (working copy)
  855. @@ -164,21 +164,8 @@
  856. wxBoxSizer *m_SGH3VertLeft[4],
  857. *m_SGH3VertMiddle[4],
  858. *m_SGH3VertRight[4],
  859. - *m_sGH3_Green[4],
  860. - *m_sGH3_Red[4],
  861. - *m_sGH3_Yellow[4],
  862. - *m_sGH3_Blue[4],
  863. - *m_sGH3_Orange[4],
  864. - *m_sGH3_Plus[4],
  865. - *m_sGH3_Minus[4],
  866. - *m_sGH3_Whammy[4],
  867. - *m_sGH3_Analog[4],
  868. - *m_sGH3_ALeft[4],
  869. - *m_sGH3_ARight[4],
  870. - *m_sGH3_AUp[4],
  871. - *m_sGH3_ADown[4],
  872. - *m_sGH3_StrumUp[4],
  873. - *m_sGH3_StrumDown[4];
  874. + *m_sizer_GH3[GH3_CONTROLS][4],
  875. + *m_sGH3_Analog[4];
  876.  
  877. wxGridBagSizer *m_SizeAnalogTriggerHorizConfig[4], *m_SizeAnalogTriggerStatusBox[4], *m_TiltGrid[4],
  878. *m_GridLeftStick[4], *m_GridRightStick[4];
  879. @@ -199,21 +186,8 @@
  880. *m_bCcLl[4], *m_bCcLu[4], *m_bCcLr[4], *m_bCcLd[4],
  881. *m_bCcRl[4], *m_bCcRu[4], *m_bCcRr[4], *m_bCcRd[4];
  882. //GH3
  883. - wxButton *m_bGH3_Green[4],
  884. - *m_bGH3_Red[4],
  885. - *m_bGH3_Yellow[4],
  886. - *m_bGH3_Blue[4],
  887. - *m_bGH3_Orange[4],
  888. - *m_bGH3_Plus[4],
  889. - *m_bGH3_Minus[4],
  890. - *m_bGH3_Whammy[4],
  891. - *m_bGH3_Analog[4],
  892. - *m_bGH3_ALeft[4],
  893. - *m_bGH3_ARight[4],
  894. - *m_bGH3_AUp[4],
  895. - *m_bGH3_ADown[4],
  896. - *m_bGH3_StrumUp[4],
  897. - *m_bGH3_StrumDown[4];
  898. + wxButton *m_Button_GH3[GH3_CONTROLS][4],
  899. + *m_bGH3_Analog[4];
  900.  
  901. wxStaticText *m_TextScreenWidth[4], *m_TextScreenHeight[4], *m_TextScreenLeft[4], *m_TextScreenTop[4], *m_TextAR[4],
  902. *m_tAnalogX[8], *m_tAnalogY[8], *m_TiltTextRoll[4], *m_TiltTextPitch[4],
  903. @@ -234,21 +208,8 @@
  904. *m_tCcRl[4], *m_tCcRu[4], *m_tCcRr[4], *m_tCcRd[4],
  905. *m_CcTextLeftStick[4], *m_CcTextRightStick[4], *m_CcTextTriggers[4],
  906. // GH3
  907. - *m_tGH3_Green[4],
  908. - *m_tGH3_Red[4],
  909. - *m_tGH3_Yellow[4],
  910. - *m_tGH3_Blue[4],
  911. - *m_tGH3_Orange[4],
  912. - *m_tGH3_Plus[4],
  913. - *m_tGH3_Minus[4],
  914. - *m_tGH3_Whammy[4],
  915. - *m_tGH3_Analog[4],
  916. - *m_tGH3_ALeft[4],
  917. - *m_tGH3_ARight[4],
  918. - *m_tGH3_AUp[4],
  919. - *m_tGH3_ADown[4],
  920. - *m_tGH3_StrumUp[4],
  921. - *m_tGH3_StrumDown[4];
  922. + *m_statictext_GH3[GH3_CONTROLS][4],
  923. + *m_tGH3_Analog[4];
  924.  
  925. wxButton
Add Comment
Please, Sign In to add comment