KeyboardInputView.axaml 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675
  1. <UserControl
  2. xmlns="https://github.com/avaloniaui"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:locale="clr-namespace:Ryujinx.Ava.Common.Locale"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  7. xmlns:viewModels="clr-namespace:Ryujinx.Ava.UI.ViewModels.Input"
  8. xmlns:helpers="clr-namespace:Ryujinx.Ava.UI.Helpers"
  9. HorizontalAlignment="Stretch"
  10. VerticalAlignment="Stretch"
  11. d:DesignHeight="800"
  12. d:DesignWidth="800"
  13. x:Class="Ryujinx.Ava.UI.Views.Input.KeyboardInputView"
  14. x:DataType="viewModels:KeyboardInputViewModel"
  15. x:CompileBindings="True"
  16. mc:Ignorable="d"
  17. Focusable="True">
  18. <Design.DataContext>
  19. <viewModels:KeyboardInputViewModel />
  20. </Design.DataContext>
  21. <UserControl.Resources>
  22. <helpers:KeyValueConverter x:Key="Key" />
  23. </UserControl.Resources>
  24. <UserControl.Styles>
  25. <Style Selector="ToggleButton">
  26. <Setter Property="Width" Value="90" />
  27. <Setter Property="Height" Value="27" />
  28. <Setter Property="HorizontalAlignment" Value="Stretch" />
  29. </Style>
  30. </UserControl.Styles>
  31. <StackPanel
  32. HorizontalAlignment="Stretch"
  33. VerticalAlignment="Stretch"
  34. Orientation="Vertical">
  35. <!-- Button / JoyStick Settings -->
  36. <Grid
  37. Name="SettingButtons"
  38. MinHeight="450">
  39. <Grid.ColumnDefinitions>
  40. <ColumnDefinition Width="Auto" />
  41. <ColumnDefinition Width="*" />
  42. <ColumnDefinition Width="Auto" />
  43. </Grid.ColumnDefinitions>
  44. <!-- Left Controls -->
  45. <StackPanel
  46. Orientation="Vertical"
  47. Margin="0,0,5,0"
  48. Grid.Column="0">
  49. <!-- Left Triggers -->
  50. <Border
  51. BorderBrush="{DynamicResource ThemeControlBorderColor}"
  52. BorderThickness="1"
  53. IsVisible="{Binding IsLeft}"
  54. MinHeight="90"
  55. CornerRadius="5">
  56. <Grid
  57. Margin="10"
  58. HorizontalAlignment="Stretch">
  59. <Grid.ColumnDefinitions>
  60. <ColumnDefinition />
  61. <ColumnDefinition />
  62. </Grid.ColumnDefinitions>
  63. <Grid.RowDefinitions>
  64. <RowDefinition />
  65. <RowDefinition />
  66. </Grid.RowDefinitions>
  67. <StackPanel
  68. Grid.Column="0"
  69. Grid.Row="0"
  70. Orientation="Horizontal">
  71. <TextBlock
  72. Width="20"
  73. HorizontalAlignment="Center"
  74. VerticalAlignment="Center"
  75. Text="{locale:Locale ControllerSettingsTriggerZL}"
  76. TextAlignment="Center" />
  77. <ToggleButton Name="ButtonZl">
  78. <TextBlock
  79. Text="{Binding Config.ButtonZl, Converter={StaticResource Key}}"
  80. TextAlignment="Center" />
  81. </ToggleButton>
  82. </StackPanel>
  83. <StackPanel
  84. Grid.Column="0"
  85. Grid.Row="1"
  86. Orientation="Horizontal">
  87. <TextBlock
  88. Width="20"
  89. HorizontalAlignment="Center"
  90. VerticalAlignment="Center"
  91. Text="{locale:Locale ControllerSettingsTriggerL}"
  92. TextAlignment="Center" />
  93. <ToggleButton Name="ButtonL">
  94. <TextBlock
  95. Text="{Binding Config.ButtonL, Converter={StaticResource Key}}"
  96. TextAlignment="Center" />
  97. </ToggleButton>
  98. </StackPanel>
  99. <StackPanel
  100. Grid.Column="1"
  101. Grid.Row="1"
  102. Orientation="Horizontal">
  103. <TextBlock
  104. Width="20"
  105. HorizontalAlignment="Center"
  106. VerticalAlignment="Center"
  107. Text="{locale:Locale ControllerSettingsButtonMinus}"
  108. TextAlignment="Center" />
  109. <ToggleButton Name="ButtonMinus">
  110. <TextBlock
  111. Text="{Binding Config.ButtonMinus, Converter={StaticResource Key}}"
  112. TextAlignment="Center" />
  113. </ToggleButton>
  114. </StackPanel>
  115. </Grid>
  116. </Border>
  117. <!-- Left Joystick -->
  118. <Border
  119. BorderBrush="{DynamicResource ThemeControlBorderColor}"
  120. BorderThickness="1"
  121. IsVisible="{Binding IsLeft}"
  122. Margin="0,5,0,0"
  123. CornerRadius="5">
  124. <StackPanel
  125. Margin="10"
  126. Orientation="Vertical">
  127. <TextBlock
  128. Margin="0,0,0,10"
  129. HorizontalAlignment="Center"
  130. Text="{locale:Locale ControllerSettingsLStick}" />
  131. <!-- Left Joystick Keyboard -->
  132. <StackPanel Orientation="Vertical">
  133. <!-- Left Joystick Button -->
  134. <StackPanel
  135. Margin="0,0,0,4"
  136. Orientation="Horizontal">
  137. <TextBlock
  138. Margin="0,0,10,0"
  139. Width="120"
  140. HorizontalAlignment="Center"
  141. VerticalAlignment="Center"
  142. Text="{locale:Locale ControllerSettingsStickButton}"
  143. TextAlignment="Center" />
  144. <ToggleButton Name="LeftStickButton">
  145. <TextBlock
  146. Text="{Binding Config.LeftStickButton, Converter={StaticResource Key}}"
  147. TextAlignment="Center" />
  148. </ToggleButton>
  149. </StackPanel>
  150. <!-- Left Joystick Up -->
  151. <StackPanel
  152. Margin="0,0,0,4"
  153. Orientation="Horizontal">
  154. <TextBlock
  155. Margin="0,0,10,0"
  156. Width="120"
  157. HorizontalAlignment="Center"
  158. VerticalAlignment="Center"
  159. Text="{locale:Locale ControllerSettingsStickUp}"
  160. TextAlignment="Center" />
  161. <ToggleButton Name="LeftStickUp">
  162. <TextBlock
  163. Text="{Binding Config.LeftStickUp, Converter={StaticResource Key}}"
  164. TextAlignment="Center" />
  165. </ToggleButton>
  166. </StackPanel>
  167. <!-- Left Joystick Down -->
  168. <StackPanel
  169. Margin="0,0,0,4"
  170. Orientation="Horizontal">
  171. <TextBlock
  172. Margin="0,0,10,0"
  173. Width="120"
  174. HorizontalAlignment="Center"
  175. VerticalAlignment="Center"
  176. Text="{locale:Locale ControllerSettingsStickDown}"
  177. TextAlignment="Center" />
  178. <ToggleButton Name="LeftStickDown">
  179. <TextBlock
  180. Text="{Binding Config.LeftStickDown, Converter={StaticResource Key}}"
  181. TextAlignment="Center" />
  182. </ToggleButton>
  183. </StackPanel>
  184. <!-- Left Joystick Left -->
  185. <StackPanel
  186. Margin="0,0,0,4"
  187. Orientation="Horizontal">
  188. <TextBlock
  189. Margin="0,0,10,0"
  190. Width="120"
  191. HorizontalAlignment="Center"
  192. VerticalAlignment="Center"
  193. Text="{locale:Locale ControllerSettingsStickLeft}"
  194. TextAlignment="Center" />
  195. <ToggleButton Name="LeftStickLeft">
  196. <TextBlock
  197. Text="{Binding Config.LeftStickLeft, Converter={StaticResource Key}}"
  198. TextAlignment="Center" />
  199. </ToggleButton>
  200. </StackPanel>
  201. <!-- Left Joystick Right -->
  202. <StackPanel
  203. Margin="0,0,0,4"
  204. Orientation="Horizontal">
  205. <TextBlock
  206. Margin="0,0,10,0"
  207. Width="120"
  208. HorizontalAlignment="Center"
  209. VerticalAlignment="Center"
  210. Text="{locale:Locale ControllerSettingsStickRight}"
  211. TextAlignment="Center" />
  212. <ToggleButton Name="LeftStickRight">
  213. <TextBlock
  214. Text="{Binding Config.LeftStickRight, Converter={StaticResource Key}}"
  215. TextAlignment="Center" />
  216. </ToggleButton>
  217. </StackPanel>
  218. </StackPanel>
  219. </StackPanel>
  220. </Border>
  221. <!-- Left DPad -->
  222. <Border
  223. BorderBrush="{DynamicResource ThemeControlBorderColor}"
  224. BorderThickness="1"
  225. VerticalAlignment="Top"
  226. IsVisible="{Binding IsLeft}"
  227. Margin="0,5,0,0"
  228. CornerRadius="5">
  229. <StackPanel
  230. Margin="10"
  231. Orientation="Vertical">
  232. <TextBlock
  233. Margin="0,0,0,10"
  234. HorizontalAlignment="Center"
  235. Text="{locale:Locale ControllerSettingsDPad}" />
  236. <StackPanel Orientation="Vertical">
  237. <!-- Left DPad Up -->
  238. <StackPanel
  239. Margin="0,0,0,4"
  240. Orientation="Horizontal">
  241. <TextBlock
  242. Margin="0,0,10,0"
  243. Width="120"
  244. HorizontalAlignment="Center"
  245. VerticalAlignment="Center"
  246. Text="{locale:Locale ControllerSettingsDPadUp}"
  247. TextAlignment="Center" />
  248. <ToggleButton Name="DpadUp">
  249. <TextBlock
  250. Text="{Binding Config.DpadUp, Converter={StaticResource Key}}"
  251. TextAlignment="Center" />
  252. </ToggleButton>
  253. </StackPanel>
  254. <!-- Left DPad Down -->
  255. <StackPanel
  256. Margin="0,0,0,4"
  257. Orientation="Horizontal">
  258. <TextBlock
  259. Margin="0,0,10,0"
  260. Width="120"
  261. HorizontalAlignment="Center"
  262. VerticalAlignment="Center"
  263. Text="{locale:Locale ControllerSettingsDPadDown}"
  264. TextAlignment="Center" />
  265. <ToggleButton Name="DpadDown">
  266. <TextBlock
  267. Text="{Binding Config.DpadDown, Converter={StaticResource Key}}"
  268. TextAlignment="Center" />
  269. </ToggleButton>
  270. </StackPanel>
  271. <!-- Left DPad Left -->
  272. <StackPanel
  273. Margin="0,0,0,4"
  274. Orientation="Horizontal">
  275. <TextBlock
  276. Margin="0,0,10,0"
  277. Width="120"
  278. HorizontalAlignment="Center"
  279. VerticalAlignment="Center"
  280. Text="{locale:Locale ControllerSettingsDPadLeft}"
  281. TextAlignment="Center" />
  282. <ToggleButton Name="DpadLeft">
  283. <TextBlock
  284. Text="{Binding Config.DpadLeft, Converter={StaticResource Key}}"
  285. TextAlignment="Center" />
  286. </ToggleButton>
  287. </StackPanel>
  288. <!-- Left DPad Right -->
  289. <StackPanel
  290. Margin="0,0,0,4"
  291. Orientation="Horizontal">
  292. <TextBlock
  293. Margin="0,0,10,0"
  294. Width="120"
  295. HorizontalAlignment="Center"
  296. VerticalAlignment="Center"
  297. Text="{locale:Locale ControllerSettingsDPadRight}"
  298. TextAlignment="Center" />
  299. <ToggleButton Name="DpadRight">
  300. <TextBlock
  301. Text="{Binding Config.DpadRight, Converter={StaticResource Key}}"
  302. TextAlignment="Center" />
  303. </ToggleButton>
  304. </StackPanel>
  305. </StackPanel>
  306. </StackPanel>
  307. </Border>
  308. </StackPanel>
  309. <!-- Triggers & Side Buttons -->
  310. <StackPanel
  311. Grid.Column="1"
  312. HorizontalAlignment="Stretch"
  313. VerticalAlignment="Stretch">
  314. <!-- Controller Picture -->
  315. <Image
  316. Margin="0,10"
  317. MaxHeight="300"
  318. HorizontalAlignment="Stretch"
  319. VerticalAlignment="Stretch"
  320. Source="{Binding Image}" />
  321. <Border
  322. BorderBrush="{DynamicResource ThemeControlBorderColor}"
  323. BorderThickness="1"
  324. CornerRadius="5"
  325. MinHeight="90"
  326. IsVisible="{Binding HasSides}">
  327. <StackPanel
  328. Margin="8"
  329. Orientation="Vertical">
  330. <StackPanel
  331. Margin="0,4,0,0"
  332. HorizontalAlignment="Center"
  333. VerticalAlignment="Center"
  334. IsVisible="{Binding IsLeft}"
  335. Orientation="Horizontal">
  336. <TextBlock
  337. Width="20"
  338. HorizontalAlignment="Center"
  339. VerticalAlignment="Center"
  340. Text="{locale:Locale ControllerSettingsLeftSR}"
  341. TextAlignment="Center" />
  342. <ToggleButton Name="LeftButtonSr">
  343. <TextBlock
  344. Text="{Binding Config.LeftButtonSr, Converter={StaticResource Key}}"
  345. TextAlignment="Center" />
  346. </ToggleButton>
  347. </StackPanel>
  348. <StackPanel
  349. Margin="0,4,0,0"
  350. HorizontalAlignment="Center"
  351. VerticalAlignment="Center"
  352. IsVisible="{Binding IsLeft}"
  353. Orientation="Horizontal">
  354. <TextBlock
  355. Width="20"
  356. HorizontalAlignment="Center"
  357. VerticalAlignment="Center"
  358. Text="{locale:Locale ControllerSettingsLeftSL}"
  359. TextAlignment="Center" />
  360. <ToggleButton Name="LeftButtonSl">
  361. <TextBlock
  362. Text="{Binding Config.LeftButtonSl, Converter={StaticResource Key}}"
  363. TextAlignment="Center" />
  364. </ToggleButton>
  365. </StackPanel>
  366. <StackPanel
  367. Margin="0,4,0,0"
  368. HorizontalAlignment="Center"
  369. VerticalAlignment="Center"
  370. IsVisible="{Binding IsRight}"
  371. Orientation="Horizontal">
  372. <TextBlock
  373. Width="20"
  374. HorizontalAlignment="Center"
  375. VerticalAlignment="Center"
  376. Text="{locale:Locale ControllerSettingsRightSR}"
  377. TextAlignment="Center" />
  378. <ToggleButton Name="RightButtonSr">
  379. <TextBlock
  380. Text="{Binding Config.RightButtonSr, Converter={StaticResource Key}}"
  381. TextAlignment="Center" />
  382. </ToggleButton>
  383. </StackPanel>
  384. <StackPanel
  385. Margin="0,4,0,0"
  386. HorizontalAlignment="Center"
  387. VerticalAlignment="Center"
  388. IsVisible="{Binding IsRight}"
  389. Orientation="Horizontal">
  390. <TextBlock
  391. Width="20"
  392. HorizontalAlignment="Center"
  393. VerticalAlignment="Center"
  394. Text="{locale:Locale ControllerSettingsRightSL}"
  395. TextAlignment="Center" />
  396. <ToggleButton Name="RightButtonSl">
  397. <TextBlock
  398. Text="{Binding Config.RightButtonSl, Converter={StaticResource Key}}"
  399. TextAlignment="Center" />
  400. </ToggleButton>
  401. </StackPanel>
  402. </StackPanel>
  403. </Border>
  404. </StackPanel>
  405. <!-- Right Controls -->
  406. <StackPanel
  407. Orientation="Vertical"
  408. Margin="5,0,0,0"
  409. Grid.Column="2">
  410. <!-- Right Triggers -->
  411. <Border
  412. BorderBrush="{DynamicResource ThemeControlBorderColor}"
  413. BorderThickness="1"
  414. IsVisible="{Binding IsRight}"
  415. MinHeight="90"
  416. CornerRadius="5">
  417. <Grid
  418. Margin="10"
  419. HorizontalAlignment="Stretch">
  420. <Grid.ColumnDefinitions>
  421. <ColumnDefinition />
  422. <ColumnDefinition />
  423. </Grid.ColumnDefinitions>
  424. <Grid.RowDefinitions>
  425. <RowDefinition />
  426. <RowDefinition />
  427. </Grid.RowDefinitions>
  428. <StackPanel
  429. Grid.Column="1"
  430. Grid.Row="0"
  431. Orientation="Horizontal">
  432. <TextBlock
  433. Width="20"
  434. HorizontalAlignment="Center"
  435. VerticalAlignment="Center"
  436. Text="{locale:Locale ControllerSettingsTriggerZR}"
  437. TextAlignment="Center" />
  438. <ToggleButton Name="ButtonZr">
  439. <TextBlock
  440. Text="{Binding Config.ButtonZr, Converter={StaticResource Key}}"
  441. TextAlignment="Center" />
  442. </ToggleButton>
  443. </StackPanel>
  444. <StackPanel
  445. Grid.Column="1"
  446. Grid.Row="1"
  447. HorizontalAlignment="Center"
  448. VerticalAlignment="Center"
  449. Orientation="Horizontal">
  450. <TextBlock
  451. Width="20"
  452. HorizontalAlignment="Center"
  453. VerticalAlignment="Center"
  454. Text="{locale:Locale ControllerSettingsTriggerR}"
  455. TextAlignment="Center" />
  456. <ToggleButton Name="ButtonR">
  457. <TextBlock
  458. Text="{Binding Config.ButtonR, Converter={StaticResource Key}}"
  459. TextAlignment="Center" />
  460. </ToggleButton>
  461. </StackPanel>
  462. <StackPanel
  463. Grid.Column="0"
  464. Grid.Row="1"
  465. HorizontalAlignment="Right"
  466. VerticalAlignment="Center"
  467. Orientation="Horizontal">
  468. <TextBlock
  469. Width="20"
  470. HorizontalAlignment="Center"
  471. VerticalAlignment="Center"
  472. Text="{locale:Locale ControllerSettingsButtonPlus}"
  473. TextAlignment="Center" />
  474. <ToggleButton Name="ButtonPlus">
  475. <TextBlock
  476. Text="{Binding Config.ButtonPlus, Converter={StaticResource Key}}"
  477. TextAlignment="Center" />
  478. </ToggleButton>
  479. </StackPanel>
  480. </Grid>
  481. </Border>
  482. <!-- Right Buttons -->
  483. <Border
  484. BorderBrush="{DynamicResource ThemeControlBorderColor}"
  485. BorderThickness="1"
  486. IsVisible="{Binding IsRight}"
  487. Margin="0,5,0,0"
  488. CornerRadius="5">
  489. <StackPanel
  490. Margin="10"
  491. Orientation="Vertical">
  492. <TextBlock
  493. Margin="0,0,0,10"
  494. HorizontalAlignment="Center"
  495. Text="{locale:Locale ControllerSettingsButtons}" />
  496. <StackPanel
  497. Orientation="Vertical">
  498. <!-- Right Buttons A -->
  499. <StackPanel
  500. Margin="0,0,0,4"
  501. Orientation="Horizontal">
  502. <TextBlock
  503. Width="120"
  504. Margin="0,0,10,0"
  505. HorizontalAlignment="Center"
  506. VerticalAlignment="Center"
  507. Text="{locale:Locale ControllerSettingsButtonA}"
  508. TextAlignment="Center" />
  509. <ToggleButton Name="ButtonA">
  510. <TextBlock
  511. Text="{Binding Config.ButtonA, Converter={StaticResource Key}}"
  512. TextAlignment="Center" />
  513. </ToggleButton>
  514. </StackPanel>
  515. <!-- Right Buttons B -->
  516. <StackPanel
  517. Margin="0,0,0,4"
  518. Orientation="Horizontal">
  519. <TextBlock
  520. Width="120"
  521. Margin="0,0,10,0"
  522. HorizontalAlignment="Center"
  523. VerticalAlignment="Center"
  524. Text="{locale:Locale ControllerSettingsButtonB}"
  525. TextAlignment="Center" />
  526. <ToggleButton Name="ButtonB">
  527. <TextBlock
  528. Text="{Binding Config.ButtonB, Converter={StaticResource Key}}"
  529. TextAlignment="Center" />
  530. </ToggleButton>
  531. </StackPanel>
  532. <!-- Right Buttons X -->
  533. <StackPanel
  534. Margin="0,0,0,4"
  535. Orientation="Horizontal">
  536. <TextBlock
  537. Width="120"
  538. Margin="0,0,10,0"
  539. HorizontalAlignment="Center"
  540. VerticalAlignment="Center"
  541. Text="{locale:Locale ControllerSettingsButtonX}"
  542. TextAlignment="Center" />
  543. <ToggleButton Name="ButtonX">
  544. <TextBlock
  545. Text="{Binding Config.ButtonX, Converter={StaticResource Key}}"
  546. TextAlignment="Center" />
  547. </ToggleButton>
  548. </StackPanel>
  549. <!-- Right Buttons Y -->
  550. <StackPanel
  551. Margin="0,0,0,4"
  552. Orientation="Horizontal">
  553. <TextBlock
  554. Width="120"
  555. Margin="0,0,10,0"
  556. HorizontalAlignment="Center"
  557. VerticalAlignment="Center"
  558. Text="{locale:Locale ControllerSettingsButtonY}"
  559. TextAlignment="Center" />
  560. <ToggleButton Name="ButtonY">
  561. <TextBlock
  562. Text="{Binding Config.ButtonY, Converter={StaticResource Key}}"
  563. TextAlignment="Center" />
  564. </ToggleButton>
  565. </StackPanel>
  566. </StackPanel>
  567. </StackPanel>
  568. </Border>
  569. <!-- Right DPad -->
  570. <Border
  571. Padding="10"
  572. BorderBrush="{DynamicResource ThemeControlBorderColor}"
  573. BorderThickness="1"
  574. CornerRadius="5"
  575. IsVisible="{Binding IsRight}"
  576. Margin="0,5,0,0">
  577. <StackPanel Orientation="Vertical">
  578. <TextBlock
  579. Margin="0,0,0,10"
  580. HorizontalAlignment="Center"
  581. Text="{locale:Locale ControllerSettingsRStick}" />
  582. <!-- Right Joystick Keyboard -->
  583. <StackPanel Orientation="Vertical">
  584. <!-- Right Joystick Button -->
  585. <StackPanel
  586. Margin="0,0,0,4"
  587. Orientation="Horizontal">
  588. <TextBlock
  589. Margin="0,0,10,0"
  590. Width="120"
  591. HorizontalAlignment="Center"
  592. VerticalAlignment="Center"
  593. Text="{locale:Locale ControllerSettingsStickButton}"
  594. TextAlignment="Center" />
  595. <ToggleButton Name="RightStickButton">
  596. <TextBlock
  597. Text="{Binding Config.RightStickButton, Converter={StaticResource Key}}"
  598. TextAlignment="Center" />
  599. </ToggleButton>
  600. </StackPanel>
  601. <!-- Right Joystick Up -->
  602. <StackPanel
  603. Margin="0,0,0,4"
  604. Orientation="Horizontal">
  605. <TextBlock
  606. Margin="0,0,10,0"
  607. Width="120"
  608. HorizontalAlignment="Center"
  609. VerticalAlignment="Center"
  610. Text="{locale:Locale ControllerSettingsStickUp}"
  611. TextAlignment="Center" />
  612. <ToggleButton Name="RightStickUp">
  613. <TextBlock
  614. Text="{Binding Config.RightStickUp, Converter={StaticResource Key}}"
  615. TextAlignment="Center" />
  616. </ToggleButton>
  617. </StackPanel>
  618. <!-- Right Joystick Down -->
  619. <StackPanel
  620. Margin="0,0,0,4"
  621. Orientation="Horizontal">
  622. <TextBlock
  623. Margin="0,0,10,0"
  624. Width="120"
  625. HorizontalAlignment="Center"
  626. VerticalAlignment="Center"
  627. Text="{locale:Locale ControllerSettingsStickDown}"
  628. TextAlignment="Center" />
  629. <ToggleButton Name="RightStickDown">
  630. <TextBlock
  631. Text="{Binding Config.RightStickDown, Converter={StaticResource Key}}"
  632. TextAlignment="Center" />
  633. </ToggleButton>
  634. </StackPanel>
  635. <!-- Right Joystick Left -->
  636. <StackPanel
  637. Margin="0,0,0,4"
  638. Orientation="Horizontal">
  639. <TextBlock
  640. Margin="0,0,10,0"
  641. Width="120"
  642. HorizontalAlignment="Center"
  643. VerticalAlignment="Center"
  644. Text="{locale:Locale ControllerSettingsStickLeft}"
  645. TextAlignment="Center" />
  646. <ToggleButton Name="RightStickLeft">
  647. <TextBlock
  648. Text="{Binding Config.RightStickLeft, Converter={StaticResource Key}}"
  649. TextAlignment="Center" />
  650. </ToggleButton>
  651. </StackPanel>
  652. <!-- Right Joystick Right -->
  653. <StackPanel
  654. Margin="0,0,0,4"
  655. Orientation="Horizontal">
  656. <TextBlock
  657. Margin="0,0,10,0"
  658. Width="120"
  659. HorizontalAlignment="Center"
  660. VerticalAlignment="Center"
  661. Text="{locale:Locale ControllerSettingsStickRight}"
  662. TextAlignment="Center" />
  663. <ToggleButton Name="RightStickRight">
  664. <TextBlock
  665. Text="{Binding Config.RightStickRight, Converter={StaticResource Key}}"
  666. TextAlignment="Center" />
  667. </ToggleButton>
  668. </StackPanel>
  669. </StackPanel>
  670. </StackPanel>
  671. </Border>
  672. </StackPanel>
  673. </Grid>
  674. </StackPanel>
  675. </UserControl>