Files
MesenCE/UI/Views/WsPcv2ControllerView.axaml
Takumi Grainger c8f8bc31c3 NES: Add FCNS controller (#193)
Also fixes presets/clear buttons for NTT, Pachinko & Hypershot, and improves layout for all controller config popups (buttons/borders are aligned, etc.)
2026-06-28 13:34:30 +09:00

64 lines
3.3 KiB
XML

<UserControl
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:vm="using:Mesen.ViewModels"
xmlns:l="using:Mesen.Localization"
xmlns:c="using:Mesen.Controls"
xmlns:cfg="using:Mesen.Config"
mc:Ignorable="d" d:DesignWidth="610" d:DesignHeight="430"
VerticalAlignment="Stretch"
HorizontalAlignment="Stretch"
x:Name="root"
x:DataType="vm:KeyMappingViewModel"
x:Class="Mesen.Views.WsPcv2ControllerView"
>
<Design.DataContext>
<vm:KeyMappingViewModel />
</Design.DataContext>
<Border BorderBrush="{StaticResource MesenGrayBorderColor}" BorderThickness="1" Width="610" Height="230" HorizontalAlignment="Left" VerticalAlignment="Top">
<Canvas>
<Panel Canvas.Top="20" Canvas.Left="5">
<Ellipse Width="200" Height="200" Stroke="{StaticResource MesenGrayBorderColor}" StrokeThickness="2" />
<Grid ColumnDefinitions="*,*" RowDefinitions="*,*,*" Width="200" Height="200">
<c:KeyBindingButton KeyBinding="{Binding Mapping.Up}" Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Width="80" Height="40" HorizontalAlignment="Center" />
<c:KeyBindingButton KeyBinding="{Binding Mapping.Left}" Grid.Row="1" Grid.Column="0" Width="80" Height="40" HorizontalAlignment="Center" />
<c:KeyBindingButton KeyBinding="{Binding Mapping.Right}" Grid.Row="1" Grid.Column="1" Width="80" Height="40" HorizontalAlignment="Center" />
<c:KeyBindingButton KeyBinding="{Binding Mapping.Down}" Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Width="80" Height="40" HorizontalAlignment="Center" />
</Grid>
</Panel>
<StackPanel Canvas.Bottom="75" Canvas.Right="5">
<TextBlock Text="Clear" FontSize="18" HorizontalAlignment="Center" Margin="0 0 0 0" />
<c:KeyBindingButton KeyBinding="{Binding Mapping.A}" Width="60" Height="40" />
<c:KeyBindingButton KeyBinding="{Binding Mapping.TurboA}" Width="60" Height="20" />
<TextBlock Text="Turbo" FontSize="14" HorizontalAlignment="Center" />
</StackPanel>
<StackPanel Canvas.Bottom="40" Canvas.Right="85">
<TextBlock Text="Circle" FontSize="18" HorizontalAlignment="Center" Margin="0 0 0 0" />
<c:KeyBindingButton KeyBinding="{Binding Mapping.B}" Width="60" Height="40" />
<c:KeyBindingButton KeyBinding="{Binding Mapping.TurboB}" Width="60" Height="20" />
<TextBlock Text="Turbo" FontSize="14" HorizontalAlignment="Center" />
</StackPanel>
<StackPanel Canvas.Bottom="5" Canvas.Right="165">
<TextBlock Text="Pass" FontSize="18" HorizontalAlignment="Center" Margin="0 0 0 0" />
<c:KeyBindingButton KeyBinding="{Binding Mapping.X}" Width="60" Height="40" />
<c:KeyBindingButton KeyBinding="{Binding Mapping.TurboX}" Width="60" Height="20" />
<TextBlock Text="Turbo" FontSize="14" HorizontalAlignment="Center" />
</StackPanel>
<StackPanel Canvas.Top="30" Canvas.Left="200">
<c:KeyBindingButton KeyBinding="{Binding Mapping.Select}" Width="80" />
<TextBlock Text="Esc" FontSize="14" HorizontalAlignment="Center" />
</StackPanel>
<StackPanel Canvas.Top="30" Canvas.Right="150">
<c:KeyBindingButton KeyBinding="{Binding Mapping.Start}" Width="80" />
<TextBlock Text="View" FontSize="14" HorizontalAlignment="Center" />
</StackPanel>
</Canvas>
</Border>
</UserControl>