diff options
| author | Isaac Marovitz <42140194+IsaacMarovitz@users.noreply.github.com> | 2023-05-22 00:16:20 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-22 01:16:20 +0200 |
| commit | b53e7ffd46b5c4ac5c4ac3dcc24385b2c9dc4fa4 (patch) | |
| tree | e2579164c7c81ab47413d30663224fbbd75e024b /src/Ryujinx.Ava/UI/Windows/ControllerSettingsWindow.axaml | |
| parent | ac66643346df76561ff85be741e2998290d43646 (diff) | |
Ava UI: Input Menu Redesign (#4990)
* Cleanup
* Remove redundant locales
* Start SVG Fixes…
Better +/- buttons
Fix the grips
Bumpers
Better directional pad
More SVG stuff
Grip adjustments
Final stuff
* Make image bigger
* Border radius
* More cleanup
* Restructure
* Restructure Rumble View
* Use compiled bindings where possible
* Round those pesky corners
* Ack Suggestions
* More suggestions
* Update src/Ryujinx.Ava/UI/Views/Input/RumbleInputView.axaml.cs
Co-authored-by: Ac_K <Acoustik666@gmail.com>
---------
Co-authored-by: Ac_K <Acoustik666@gmail.com>
Diffstat (limited to 'src/Ryujinx.Ava/UI/Windows/ControllerSettingsWindow.axaml')
| -rw-r--r-- | src/Ryujinx.Ava/UI/Windows/ControllerSettingsWindow.axaml | 1122 |
1 files changed, 0 insertions, 1122 deletions
diff --git a/src/Ryujinx.Ava/UI/Windows/ControllerSettingsWindow.axaml b/src/Ryujinx.Ava/UI/Windows/ControllerSettingsWindow.axaml deleted file mode 100644 index 1a11a8ff..00000000 --- a/src/Ryujinx.Ava/UI/Windows/ControllerSettingsWindow.axaml +++ /dev/null @@ -1,1122 +0,0 @@ -<UserControl - x:Class="Ryujinx.Ava.UI.Windows.ControllerSettingsWindow" - xmlns="https://github.com/avaloniaui" - xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" - xmlns:ui="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia" - xmlns:locale="clr-namespace:Ryujinx.Ava.Common.Locale" - xmlns:d="http://schemas.microsoft.com/expression/blend/2008" - xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" - xmlns:viewModels="clr-namespace:Ryujinx.Ava.UI.ViewModels" - xmlns:helpers="clr-namespace:Ryujinx.Ava.UI.Helpers" - HorizontalAlignment="Stretch" - VerticalAlignment="Stretch" - d:DesignHeight="800" - d:DesignWidth="800" - x:CompileBindings="False" - mc:Ignorable="d" - Focusable="True"> - <Design.DataContext> - <viewModels:ControllerSettingsViewModel /> - </Design.DataContext> - <UserControl.Resources> - <helpers:KeyValueConverter x:Key="Key" /> - </UserControl.Resources> - <UserControl.Styles> - <Style Selector="ToggleButton"> - <Setter Property="Width" Value="90" /> - <Setter Property="Height" Value="27" /> - <Setter Property="HorizontalAlignment" Value="Stretch" /> - </Style> - </UserControl.Styles> - - <StackPanel - HorizontalAlignment="Stretch" - VerticalAlignment="Stretch" - Orientation="Vertical"> - <Grid Margin="0,2,0,5" HorizontalAlignment="Stretch"> - <Grid.ColumnDefinitions> - <ColumnDefinition Width="*" /> - <ColumnDefinition Width="*" /> - </Grid.ColumnDefinitions> - <Grid.RowDefinitions> - <RowDefinition Height="Auto" /> - <RowDefinition Height="Auto" /> - </Grid.RowDefinitions> - - <!-- Player selection --> - <Border - Grid.Row="0" - Grid.Column="0" - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - Padding="2"> - <Grid - Margin="2" - HorizontalAlignment="Stretch" - VerticalAlignment="Center"> - <Grid.ColumnDefinitions> - <ColumnDefinition Width="Auto"/> - <ColumnDefinition Width="*" /> - </Grid.ColumnDefinitions> - <TextBlock - Margin="5,0,10,0" - Width="90" - HorizontalAlignment="Left" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsPlayer}" /> - <ComboBox - Grid.Column="1" - Name="PlayerIndexBox" - HorizontalAlignment="Stretch" - VerticalAlignment="Center" - SelectionChanged="PlayerIndexBox_OnSelectionChanged" - Items="{Binding PlayerIndexes}" - SelectedIndex="{Binding PlayerId}"> - <ComboBox.ItemTemplate> - <DataTemplate> - <TextBlock Text="{Binding Name}" /> - </DataTemplate> - </ComboBox.ItemTemplate> - </ComboBox> - </Grid> - </Border> - <!-- Profile selection --> - <Border - Grid.Row="1" - Grid.Column="0" - Margin="0,-1,0,0" - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - Padding="2"> - <Grid - Margin="2" - HorizontalAlignment="Stretch" - VerticalAlignment="Center"> - <Grid.ColumnDefinitions> - <ColumnDefinition Width="Auto"/> - <ColumnDefinition Width="*" /> - <ColumnDefinition Width="Auto"/> - <ColumnDefinition Width="Auto"/> - <ColumnDefinition Width="Auto"/> - </Grid.ColumnDefinitions> - <TextBlock - Margin="5,0,10,0" - Width="90" - HorizontalAlignment="Left" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsProfile}" /> - <ui:ComboBox - Grid.Column="1" - IsEditable="True" - Name="ProfileBox" - HorizontalAlignment="Stretch" - VerticalAlignment="Center" - SelectedIndex="0" - Items="{Binding ProfilesList}" - Text="{Binding ProfileName}" /> - <Button - Grid.Column="2" - MinWidth="0" - Margin="5,0,0,0" - VerticalAlignment="Center" - ToolTip.Tip="{locale:Locale ControllerSettingsLoadProfileToolTip}" - Command="{Binding LoadProfile}"> - <ui:SymbolIcon - Symbol="Upload" - FontSize="15" - Height="20" /> - </Button> - <Button - Grid.Column="3" - MinWidth="0" - Margin="5,0,0,0" - VerticalAlignment="Center" - ToolTip.Tip="{locale:Locale ControllerSettingsSaveProfileToolTip}" - Command="{Binding SaveProfile}"> - <ui:SymbolIcon - Symbol="Save" - FontSize="15" - Height="20" /> - </Button> - <Button - Grid.Column="4" - MinWidth="0" - Margin="5,0,0,0" - VerticalAlignment="Center" - ToolTip.Tip="{locale:Locale ControllerSettingsRemoveProfileToolTip}" - Command="{Binding RemoveProfile}"> - <ui:SymbolIcon - Symbol="Delete" - FontSize="15" - Height="20" /> - </Button> - </Grid> - </Border> - - <!-- Input device --> - <Border - Grid.Row="0" - Grid.Column="1" - Margin="-1,0,0,0" - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - Padding="2"> - <Grid Margin="2" HorizontalAlignment="Stretch"> - <Grid.ColumnDefinitions> - <ColumnDefinition Width="Auto"/> - <ColumnDefinition Width="*"/> - <ColumnDefinition Width="Auto" /> - </Grid.ColumnDefinitions> - <TextBlock - Grid.Column="0" - Margin="5,0,10,0" - Width="90" - HorizontalAlignment="Left" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsInputDevice}" /> - <ComboBox - Grid.Column="1" - Name="DeviceBox" - HorizontalAlignment="Stretch" - VerticalAlignment="Center" - Items="{Binding DeviceList}" - SelectedIndex="{Binding Device}" /> - <Button - Grid.Column="2" - MinWidth="0" - Margin="5,0,0,0" - VerticalAlignment="Center" - Command="{Binding LoadDevices}"> - <ui:SymbolIcon - Symbol="Refresh" - FontSize="15" - Height="20"/> - </Button> - </Grid> - </Border> - - <!-- Controler type --> - <Border - Grid.Row="1" - Grid.Column="1" - Margin="-1,-1,0,0" - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - Padding="2"> - <Grid - Margin="2" - HorizontalAlignment="Stretch" - VerticalAlignment="Center"> - <Grid.ColumnDefinitions> - <ColumnDefinition Width="Auto"/> - <ColumnDefinition Width="*" /> - </Grid.ColumnDefinitions> - <TextBlock - Margin="5,0,10,0" - Width="90" - HorizontalAlignment="Left" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsControllerType}" /> - <ComboBox - Grid.Column="1" - HorizontalAlignment="Stretch" - Items="{Binding Controllers}" - SelectedIndex="{Binding Controller}"> - <ComboBox.ItemTemplate> - <DataTemplate> - <TextBlock Text="{Binding Name}" /> - </DataTemplate> - </ComboBox.ItemTemplate> - </ComboBox> - </Grid> - </Border> - </Grid> - - <!-- Button / JoyStick Settings --> - <Grid - Name="SettingButtons" - MinHeight="450" - IsVisible="{Binding ShowSettings}"> - <Grid.ColumnDefinitions> - <ColumnDefinition Width="Auto" /> - <ColumnDefinition Width="*" /> - <ColumnDefinition Width="Auto" /> - </Grid.ColumnDefinitions> - - <!-- Left --> - <Grid - Margin="0,0,5,0" - Grid.Column="0" - VerticalAlignment="Stretch" - DockPanel.Dock="Left"> - <Grid.RowDefinitions> - <RowDefinition Height="Auto" /> - <RowDefinition Height="Auto" /> - <RowDefinition Height="Auto" /> - </Grid.RowDefinitions> - - <!-- Left Triggers --> - <Border - Grid.Row="0" - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - IsVisible="{Binding IsLeft}" - MinHeight="90"> - <Grid Margin="10" HorizontalAlignment="Stretch"> - <Grid.ColumnDefinitions> - <ColumnDefinition /> - <ColumnDefinition /> - </Grid.ColumnDefinitions> - <Grid.RowDefinitions> - <RowDefinition /> - <RowDefinition /> - </Grid.RowDefinitions> - <StackPanel - Grid.Column="0" - Grid.Row="0" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="20" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsTriggerZL}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.ButtonZl, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <StackPanel - Grid.Column="0" - Grid.Row="1" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="20" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsTriggerL}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.ButtonL, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <StackPanel - Grid.Column="1" - Grid.Row="1" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="20" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsButtonMinus}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.ButtonMinus, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - </Grid> - </Border> - - <!-- Left Joystick --> - <Border - Grid.Row="1" - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - IsVisible="{Binding IsLeft}" - Margin="0,5,0,0"> - <StackPanel Margin="10" Orientation="Vertical"> - <TextBlock - Margin="0,0,0,10" - HorizontalAlignment="Center" - Text="{locale:Locale ControllerSettingsLStick}" /> - - <!-- Left Joystick Keyboard --> - <StackPanel IsVisible="{Binding !IsController}" Orientation="Vertical"> - - <!-- Left Joystick Button --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsLStickButton}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.LeftKeyboardStickButton, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Left Joystick Up --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsLStickUp}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.LeftStickUp, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Left Joystick Down --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsLStickDown}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.LeftStickDown, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Left Joystick Left --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsLStickLeft}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.LeftStickLeft, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Left Joystick Right --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsLStickRight}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.LeftStickRight, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - </StackPanel> - - <!-- Left Joystick Controller --> - <StackPanel IsVisible="{Binding IsController}" Orientation="Vertical"> - - <!-- Left Joystick Button --> - <StackPanel Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsLStickButton}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.LeftControllerStickButton, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Left Joystick Stick --> - <StackPanel Margin="0,4,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsLStickStick}" - TextAlignment="Center" /> - <ToggleButton Tag="stick"> - <TextBlock - Text="{Binding Configuration.LeftJoystick, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <Separator Margin="0,8,0,8" Height="1" /> - <CheckBox IsChecked="{Binding Configuration.LeftInvertStickX}"> - <TextBlock Text="{locale:Locale ControllerSettingsLStickInvertXAxis}" /> - </CheckBox> - <CheckBox IsChecked="{Binding Configuration.LeftInvertStickY}"> - <TextBlock Text="{locale:Locale ControllerSettingsLStickInvertYAxis}" /> - </CheckBox> - <CheckBox IsChecked="{Binding Configuration.LeftRotate90}"> - <TextBlock Text="{locale:Locale ControllerSettingsRotate90}" /> - </CheckBox> - <Separator Margin="0,8,0,8" Height="1" /> - <StackPanel Orientation="Vertical"> - <TextBlock - HorizontalAlignment="Center" - Text="{locale:Locale ControllerSettingsLStickDeadzone}" /> - <StackPanel - HorizontalAlignment="Center" - VerticalAlignment="Center" - Orientation="Horizontal"> - <Slider - Width="130" - Maximum="1" - TickFrequency="0.01" - IsSnapToTickEnabled="True" - Minimum="0" - Value="{Binding Configuration.DeadzoneLeft, Mode=TwoWay}" /> - <TextBlock - VerticalAlignment="Center" - Width="25" - Text="{Binding Configuration.DeadzoneLeft, StringFormat=\{0:0.00\}}" /> - </StackPanel> - <TextBlock - HorizontalAlignment="Center" - Text="{locale:Locale ControllerSettingsStickRange}" /> - <StackPanel - HorizontalAlignment="Center" - VerticalAlignment="Center" - Orientation="Horizontal"> - <Slider - Width="130" - Maximum="2" - TickFrequency="0.01" - IsSnapToTickEnabled="True" - Minimum="0" - Value="{Binding Configuration.RangeLeft, Mode=TwoWay}" /> - <TextBlock - VerticalAlignment="Center" - Width="25" - Text="{Binding Configuration.RangeLeft, StringFormat=\{0:0.00\}}" /> - </StackPanel> - </StackPanel> - </StackPanel> - </StackPanel> - </Border> - - <!-- Left DPad --> - <Border - Grid.Row="2" - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - VerticalAlignment="Top" - IsVisible="{Binding IsLeft}" - Margin="0,5,0,0"> - <StackPanel Margin="10" Orientation="Vertical"> - <TextBlock - Margin="0,0,0,10" - HorizontalAlignment="Center" - Text="{locale:Locale ControllerSettingsDPad}" /> - <StackPanel Orientation="Vertical"> - <!-- Left DPad Up --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsDPadUp}" - TextAlignment="Center" /> - <ToggleButton - HorizontalAlignment="Stretch"> - <TextBlock - Text="{Binding Configuration.DpadUp, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Left DPad Down --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsDPadDown}" - TextAlignment="Center" /> - <ToggleButton - HorizontalAlignment="Stretch"> - <TextBlock - Text="{Binding Configuration.DpadDown, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Left DPad Left --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsDPadLeft}" - TextAlignment="Center" /> - <ToggleButton - HorizontalAlignment="Stretch"> - <TextBlock - Text="{Binding Configuration.DpadLeft, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Left DPad Right --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsDPadRight}" - TextAlignment="Center" /> - <ToggleButton - HorizontalAlignment="Stretch"> - <TextBlock - Text="{Binding Configuration.DpadRight, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - </StackPanel> - </StackPanel> - </Border> - </Grid> - - <!-- Triggers And Side Buttons--> - <StackPanel Grid.Column="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"> - <Border - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" MinHeight="90"> - <StackPanel Margin="8" Orientation="Vertical"> - <TextBlock HorizontalAlignment="Center" Text="{locale:Locale ControllerSettingsTriggerThreshold}" /> - <StackPanel HorizontalAlignment="Center" Orientation="Horizontal"> - <Slider - Width="130" - Maximum="1" - TickFrequency="0.01" - IsSnapToTickEnabled="True" - Minimum="0" - Value="{Binding Configuration.TriggerThreshold, Mode=TwoWay}" /> - <TextBlock - Width="25" - Text="{Binding Configuration.TriggerThreshold, StringFormat=\{0:0.00\}}" /> - </StackPanel> - <StackPanel - Margin="0,4,0,0" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Background="{DynamicResource ThemeDarkColor}" - IsVisible="{Binding !IsRight}" - Orientation="Horizontal"> - <TextBlock - Width="20" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsLeftSR}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.LeftButtonSr, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <StackPanel - Margin="0,4,0,0" - HorizontalAlignment="Center" - VerticalAlignment="Center" - IsVisible="{Binding !IsRight}" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="20" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsLeftSL}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.LeftButtonSl, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <StackPanel - Margin="0,4,0,0" - HorizontalAlignment="Center" - VerticalAlignment="Center" - IsVisible="{Binding !IsLeft}" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="20" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsRightSR}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.RightButtonSr, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <StackPanel - Margin="0,4,0,0" - HorizontalAlignment="Center" - VerticalAlignment="Center" - IsVisible="{Binding !IsLeft}" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="20" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsRightSL}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.RightButtonSl, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - </StackPanel> - </Border> - - <!-- Controller Picture --> - <Image - Margin="0,10,0,0" - MaxHeight="250" - HorizontalAlignment="Stretch" - VerticalAlignment="Stretch" - Source="{Binding Image}" /> - - <!-- Motion+Rumble --> - <StackPanel Margin="0,10,0,0" Orientation="Vertical" VerticalAlignment="Bottom"> - <Border - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - VerticalAlignment="Bottom" - HorizontalAlignment="Stretch" - IsVisible="{Binding IsController}"> - <Grid> - <Grid.ColumnDefinitions> - <ColumnDefinition Width="*" /> - <ColumnDefinition Width="Auto" /> - </Grid.ColumnDefinitions> - <CheckBox - Margin="10" - MinWidth="0" - Grid.Column="0" - IsChecked="{Binding Configuration.EnableMotion, Mode=TwoWay}"> - <TextBlock Text="{locale:Locale ControllerSettingsMotion}" /> - </CheckBox> - <Button Margin="10" Grid.Column="1" Command="{Binding ShowMotionConfig}"> - <TextBlock Text="{locale:Locale ControllerSettingsConfigureGeneral}" /> - </Button> - </Grid> - </Border> - <Border - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - HorizontalAlignment="Stretch" - IsVisible="{Binding IsController}" - Margin="0,-1,0,0"> - <Grid> - <Grid.ColumnDefinitions> - <ColumnDefinition Width="*" /> - <ColumnDefinition Width="Auto" /> - </Grid.ColumnDefinitions> - <CheckBox - Margin="10" - MinWidth="0" - Grid.Column="0" - IsChecked="{Binding Configuration.EnableRumble, Mode=TwoWay}"> - <TextBlock Text="{locale:Locale ControllerSettingsRumble}" /> - </CheckBox> - <Button Margin="10" Grid.Column="1" Command="{Binding ShowRumbleConfig}"> - <TextBlock Text="{locale:Locale ControllerSettingsConfigureGeneral}" /> - </Button> - </Grid> - </Border> - </StackPanel> - </StackPanel> - - <!--Right Controls--> - <Grid - Margin="5,0,0,0" - Grid.Column="2" - VerticalAlignment="Top" - HorizontalAlignment="Stretch" > - <Grid.RowDefinitions> - <RowDefinition /> - <RowDefinition /> - <RowDefinition /> - <RowDefinition /> - </Grid.RowDefinitions> - <Border - Grid.Row="0" - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - IsVisible="{Binding IsRight}" - MinHeight="90"> - <Grid Margin="10" HorizontalAlignment="Stretch"> - <Grid.ColumnDefinitions> - <ColumnDefinition /> - <ColumnDefinition /> - </Grid.ColumnDefinitions> - <Grid.RowDefinitions> - <RowDefinition /> - <RowDefinition /> - </Grid.RowDefinitions> - <StackPanel - Grid.Column="1" - Grid.Row="0" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="20" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsTriggerZR}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.ButtonZr, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <StackPanel - Grid.Column="1" - Grid.Row="1" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="20" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsTriggerR}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.ButtonR, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <StackPanel - Grid.Column="0" - Grid.Row="1" - HorizontalAlignment="Right" - VerticalAlignment="Center" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="20" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsButtonPlus}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.ButtonPlus, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - </Grid> - </Border> - <Border - Grid.Row="1" - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - IsVisible="{Binding IsRight}" - Margin="0,5,0,0"> - <StackPanel Margin="10" Orientation="Vertical"> - <TextBlock - Margin="0,0,0,10" - HorizontalAlignment="Center" - Text="{locale:Locale ControllerSettingsButtons}" /> - <StackPanel Orientation="Vertical"> - <!-- Right Buttons A --> - <StackPanel - Margin="0,0,0,4" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="120" - Margin="0,0,10,0" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsButtonA}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.ButtonA, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <!-- Right Buttons B --> - <StackPanel - Margin="0,0,0,4" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="120" - Margin="0,0,10,0" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsButtonB}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.ButtonB, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <!-- Right Buttons X --> - <StackPanel - Margin="0,0,0,4" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="120" - Margin="0,0,10,0" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsButtonX}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.ButtonX, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <!-- Right Buttons Y --> - <StackPanel - Margin="0,0,0,4" - Background="{DynamicResource ThemeDarkColor}" - Orientation="Horizontal"> - <TextBlock - Width="120" - Margin="0,0,10,0" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsButtonY}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.ButtonY, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - </StackPanel> - </StackPanel> - </Border> - <Border - Grid.Row="2" - Padding="10" - BorderBrush="{DynamicResource ThemeControlBorderColor}" - BorderThickness="1" - IsVisible="{Binding IsRight}" - Margin="0,5,0,0"> - <StackPanel Orientation="Vertical"> - <TextBlock - Margin="0,0,0,10" - HorizontalAlignment="Center" - Text="{locale:Locale ControllerSettingsRStick}" /> - - <!-- Right Joystick Keyboard --> - <StackPanel IsVisible="{Binding !IsController}" Orientation="Vertical"> - - <!-- Right Joystick Button --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsRStickButton}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.RightKeyboardStickButton, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Right Joystick Up --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsRStickUp}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.RightStickUp, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Right Joystick Down --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsRStickDown}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.RightStickDown, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Right Joystick Left --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsRStickLeft}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.RightStickLeft, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - <!-- Right Joystick Right --> - <StackPanel Margin="0,0,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsRStickRight}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.RightStickRight, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - </StackPanel> - - <!-- Right Joystick Controller --> - <StackPanel IsVisible="{Binding IsController}" Orientation="Vertical"> - - <!-- Right Joystick Button --> - <StackPanel Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsRStickButton}" - TextAlignment="Center" /> - <ToggleButton> - <TextBlock - Text="{Binding Configuration.RightControllerStickButton, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - - - <!-- Right Joystick Stick --> - <StackPanel Margin="0,4,0,4" Background="{DynamicResource ThemeDarkColor}" Orientation="Horizontal"> - <TextBlock - Margin="0,0,10,0" - Width="120" - HorizontalAlignment="Center" - VerticalAlignment="Center" - Text="{locale:Locale ControllerSettingsRStickStick}" - TextAlignment="Center" /> - <ToggleButton Tag="stick"> - <TextBlock - Text="{Binding Configuration.RightJoystick, Mode=TwoWay, Converter={StaticResource Key}}" - TextAlignment="Center" /> - </ToggleButton> - </StackPanel> - <Separator Margin="0,8,0,8" Height="1" /> - <CheckBox IsChecked="{Binding Configuration.RightInvertStickX}"> - <TextBlock Text="{locale:Locale ControllerSettingsRStickInvertXAxis}" /> - </CheckBox> - <CheckBox IsChecked="{Binding Configuration.RightInvertStickY}"> - <TextBlock Text="{locale:Locale ControllerSettingsRStickInvertYAxis}" /> - </CheckBox> - <CheckBox IsChecked="{Binding Configuration.RightRotate90}"> - <TextBlock Text="{locale:Locale ControllerSettingsRotate90}" /> - </CheckBox> - <Separator Margin="0,8,0,8" Height="1" /> - <StackPanel Orientation="Vertical"> - <TextBlock - HorizontalAlignment="Center" - Text="{locale:Locale ControllerSettingsRStickDeadzone}" /> - <StackPanel - HorizontalAlignment="Center" - VerticalAlignment="Center" - Orientation="Horizontal"> - <Slider - Width="130" - Maximum="1" - TickFrequency="0.01" - IsSnapToTickEnabled="True" - Padding="0" - VerticalAlignment="Center" - Minimum="0" - Value="{Binding Configuration.DeadzoneRight, Mode=TwoWay}" /> - <TextBlock - VerticalAlignment="Center" - Width="25" - Text="{Binding Configuration.DeadzoneRight, StringFormat=\{0:0.00\}}" /> - </StackPanel> - <TextBlock - HorizontalAlignment="Center" - Text="{locale:Locale ControllerSettingsStickRange}" /> - <StackPanel - HorizontalAlignment="Center" - VerticalAlignment="Center" - Orientation="Horizontal"> - <Slider - Width="130" - Maximum="2" - TickFrequency="0.01" - IsSnapToTickEnabled="True" - Minimum="0" - Value="{Binding Configuration.RangeRight, Mode=TwoWay}" /> - <TextBlock - VerticalAlignment="Center" - Width="25" - Text="{Binding Configuration.RangeRight, StringFormat=\{0:0.00\}}" /> - </StackPanel> - </StackPanel> - </StackPanel> - </StackPanel> - </Border> - </Grid> - - </Grid> - - </StackPanel> - -</UserControl>
\ No newline at end of file |
