Mesen2/UI/Views/SnesInputConfigView.axaml

137 lines
5 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="500" d:DesignHeight="450"
VerticalAlignment="Stretch"
HorizontalAlignment="Stretch"
x:DataType="vm:SnesInputConfigViewModel"
x:Class="Mesen.Views.SnesInputConfigView"
>
<Design.DataContext>
<vm:SnesInputConfigViewModel />
</Design.DataContext>
<ScrollViewer AllowAutoHide="False" HorizontalScrollBarVisibility="Auto" Padding="0 0 2 0">
<StackPanel HorizontalAlignment="Left">
<c:OptionSection Header="{l:Translate grpControllers}" Margin="0">
<Grid ColumnDefinitions="Auto,*,Auto" RowDefinitions="Auto,Auto,Auto,Auto">
<TextBlock Grid.Row="0" Grid.Column="0" Text="{l:Translate lblPort1}" Margin="5 0 30 0" />
<c:InputComboBox
Grid.Row="0" Grid.Column="1"
Config="{Binding Config.Port1}"
ControllerType="{Binding Config.Port1.Type}"
AvailableValues="{Binding AvailableControllerTypesP12}"
/>
<c:GroupBox
Header="{l:Translate grpMultitap}"
IsVisible="{Binding HasMultitap1}"
HorizontalAlignment="Right"
Margin="0 5 -6 5"
Grid.Row="1"
Grid.Column="0"
Grid.ColumnSpan="3"
>
<Grid ColumnDefinitions="Auto,*,Auto" RowDefinitions="Auto,Auto,Auto,Auto">
<TextBlock Grid.Row="0" Grid.Column="0" Text="{l:Translate lblMultitap1A}" />
<c:InputComboBox
Grid.Row="0" Grid.Column="1"
Config="{Binding Config.Port1}"
ControllerType="{Binding Config.Port1A.Type}"
AvailableValues="{Binding AvailableControllerTypesMultitap}"
/>
<TextBlock Grid.Row="1" Grid.Column="0" Text="{l:Translate lblMultitap1B}" />
<c:InputComboBox
Grid.Row="1" Grid.Column="1"
Config="{Binding Config.Port1B}"
ControllerType="{Binding Config.Port1B.Type}"
AvailableValues="{Binding AvailableControllerTypesMultitap}"
/>
<TextBlock Grid.Row="2" Grid.Column="0" Text="{l:Translate lblMultitap1C}" />
<c:InputComboBox
Grid.Row="2" Grid.Column="1"
Config="{Binding Config.Port1C}"
ControllerType="{Binding Config.Port1C.Type}"
AvailableValues="{Binding AvailableControllerTypesMultitap}"
/>
<TextBlock Grid.Row="3" Grid.Column="0" Text="{l:Translate lblMultitap1D}" />
<c:InputComboBox
Grid.Row="3" Grid.Column="1"
Config="{Binding Config.Port1D}"
ControllerType="{Binding Config.Port1D.Type}"
AvailableValues="{Binding AvailableControllerTypesMultitap}"
/>
</Grid>
</c:GroupBox>
<TextBlock Grid.Row="2" Grid.Column="0" Text="{l:Translate lblPort2}" Margin="5 0 30 0" />
<c:InputComboBox
Grid.Row="2" Grid.Column="1"
Config="{Binding Config.Port2}"
ControllerType="{Binding Config.Port2.Type}"
AvailableValues="{Binding AvailableControllerTypesP12}"
/>
<c:GroupBox
Header="{l:Translate grpMultitap}"
IsVisible="{Binding HasMultitap2}"
HorizontalAlignment="Right"
Margin="0 5 -6 5"
Grid.Row="3"
Grid.Column="0"
Grid.ColumnSpan="3"
>
<Grid ColumnDefinitions="Auto,*,Auto" RowDefinitions="Auto,Auto,Auto,Auto">
<TextBlock Grid.Row="0" Grid.Column="0" Text="{l:Translate lblMultitap2A}" />
<c:InputComboBox
Grid.Row="0" Grid.Column="1"
Config="{Binding Config.Port2}"
ControllerType="{Binding Config.Port2A.Type}"
AvailableValues="{Binding AvailableControllerTypesMultitap}"
/>
<TextBlock Grid.Row="1" Grid.Column="0" Text="{l:Translate lblMultitap2B}" />
<c:InputComboBox
Grid.Row="1" Grid.Column="1"
Config="{Binding Config.Port2B}"
ControllerType="{Binding Config.Port2B.Type}"
AvailableValues="{Binding AvailableControllerTypesMultitap}"
/>
<TextBlock Grid.Row="2" Grid.Column="0" Text="{l:Translate lblMultitap2C}" />
<c:InputComboBox
Grid.Row="2" Grid.Column="1"
Config="{Binding Config.Port2C}"
ControllerType="{Binding Config.Port2C.Type}"
AvailableValues="{Binding AvailableControllerTypesMultitap}"
/>
<TextBlock Grid.Row="3" Grid.Column="0" Text="{l:Translate lblMultitap2D}" />
<c:InputComboBox
Grid.Row="3" Grid.Column="1"
Config="{Binding Config.Port2D}"
ControllerType="{Binding Config.Port2D.Type}"
AvailableValues="{Binding AvailableControllerTypesMultitap}"
/>
</Grid>
</c:GroupBox>
</Grid>
</c:OptionSection>
<c:OptionSection Header="{l:Translate grpGeneral}">
<StackPanel>
<c:CheckBoxWarning IsChecked="{Binding Config.AllowInvalidInput}" Text="{l:Translate chkAllowInvalidInput}" />
</StackPanel>
</c:OptionSection>
</StackPanel>
</ScrollViewer>
</UserControl>