mirror of
https://github.com/SourMesen/Mesen2.git
synced 2025-04-02 10:21:44 -04:00
154 lines
6.3 KiB
XML
154 lines
6.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:c="using:Mesen.Controls"
|
|
xmlns:dc="using:Mesen.Debugger.Controls"
|
|
xmlns:cfg="using:Mesen.Config"
|
|
xmlns:v="using:Mesen.Views"
|
|
xmlns:l="using:Mesen.Localization"
|
|
mc:Ignorable="d" d:DesignWidth="450" d:DesignHeight="350"
|
|
VerticalAlignment="Stretch"
|
|
HorizontalAlignment="Stretch"
|
|
x:DataType="vm:SmsConfigViewModel"
|
|
x:Class="Mesen.Views.SmsConfigView"
|
|
>
|
|
<Design.DataContext>
|
|
<vm:SmsConfigViewModel />
|
|
</Design.DataContext>
|
|
|
|
<TabControl TabStripPlacement="Top" SelectedIndex="{Binding SelectedTab}">
|
|
<TabItem Header="{l:Translate tpgGeneral}">
|
|
<ScrollViewer AllowAutoHide="False" HorizontalScrollBarVisibility="Auto" Padding="0 0 2 0">
|
|
<StackPanel>
|
|
<Grid ColumnDefinitions="Auto,Auto,*" RowDefinitions="Auto,Auto,Auto">
|
|
<TextBlock Text="{l:Translate lblRegionSms}"/>
|
|
<c:EnumComboBox
|
|
SelectedItem="{Binding Config.Region}"
|
|
Grid.Column="1"
|
|
MinWidth="130"
|
|
AvailableValues="{Binding AvailableRegionsSms}"
|
|
/>
|
|
<TextBlock Grid.Row="1" Text="{l:Translate lblRegionGg}"/>
|
|
<c:EnumComboBox
|
|
SelectedItem="{Binding Config.GameGearRegion}"
|
|
Grid.Row="1"
|
|
Grid.Column="1"
|
|
MinWidth="130"
|
|
AvailableValues="{Binding AvailableRegionsGg}"
|
|
/>
|
|
</Grid>
|
|
</StackPanel>
|
|
</ScrollViewer>
|
|
</TabItem>
|
|
<TabItem Header="{l:Translate tpgAudio}">
|
|
<ScrollViewer AllowAutoHide="False" HorizontalScrollBarVisibility="Auto" Padding="0 0 2 0">
|
|
<StackPanel>
|
|
<CheckBox Content="{l:Translate chkEnableFmAudio}" IsChecked="{Binding Config.EnableFmAudio}" />
|
|
<c:GroupBox Header="{l:Translate grpVolume}" HorizontalAlignment="Left">
|
|
<StackPanel Orientation="Horizontal" Height="150">
|
|
<StackPanel.Styles>
|
|
<Style Selector="c|MesenSlider">
|
|
<Setter Property="Minimum" Value="0" />
|
|
<Setter Property="Maximum" Value="100" />
|
|
<Setter Property="Orientation" Value="Vertical" />
|
|
<Setter Property="Margin" Value="5 0" />
|
|
</Style>
|
|
</StackPanel.Styles>
|
|
|
|
<c:MesenSlider Text="{l:Translate lblChannel1}" Value="{Binding Config.Tone1Vol}" />
|
|
<c:MesenSlider Text="{l:Translate lblChannel2}" Value="{Binding Config.Tone2Vol}" />
|
|
<c:MesenSlider Text="{l:Translate lblChannel3}" Value="{Binding Config.Tone3Vol}" />
|
|
<c:MesenSlider Text="{l:Translate lblChannel4}" Value="{Binding Config.NoiseVol}" />
|
|
<c:MesenSlider
|
|
Text="{l:Translate lblChannel5}"
|
|
IsEnabled="{Binding Config.EnableFmAudio}"
|
|
Value="{Binding Config.FmAudioVolume}"
|
|
/>
|
|
</StackPanel>
|
|
</c:GroupBox>
|
|
</StackPanel>
|
|
</ScrollViewer>
|
|
</TabItem>
|
|
|
|
<TabItem Header="{l:Translate tpgEmulation}">
|
|
<ScrollViewer AllowAutoHide="False" HorizontalScrollBarVisibility="Auto" Padding="0 0 2 0">
|
|
<StackPanel>
|
|
<c:OptionSection Header="{l:Translate lblDeveloperSettings}" Margin="0">
|
|
<StackPanel Orientation="Horizontal">
|
|
<TextBlock Text="{l:Translate lblRamPowerOnState}" />
|
|
<c:EnumComboBox SelectedItem="{Binding Config.RamPowerOnState}" Width="200" />
|
|
</StackPanel>
|
|
</c:OptionSection>
|
|
<c:OptionSection Header="{l:Translate lblMiscSettings}">
|
|
<StackPanel Orientation="Horizontal">
|
|
<TextBlock Text="{l:Translate lblSmsRevision}" />
|
|
<c:EnumComboBox SelectedItem="{Binding Config.Revision}" Width="200" />
|
|
</StackPanel>
|
|
</c:OptionSection>
|
|
</StackPanel>
|
|
</ScrollViewer>
|
|
</TabItem>
|
|
|
|
<TabItem Header="{l:Translate tpgInput}">
|
|
<v:SmsInputConfigView DataContext="{Binding Input}" />
|
|
</TabItem>
|
|
|
|
<TabItem Header="{l:Translate tpgVideo}">
|
|
<ScrollViewer AllowAutoHide="False" HorizontalScrollBarVisibility="Auto" Padding="0 0 2 0">
|
|
<StackPanel>
|
|
<v:VideoConfigOverrideView
|
|
DataContext="{Binding Config.ConfigOverrides}"
|
|
Header="{l:Translate lblSmsOverrides}"
|
|
/>
|
|
<v:VideoConfigOverrideView
|
|
DataContext="{Binding Config.GgConfigOverrides}"
|
|
Header="{l:Translate lblGgOverrides}"
|
|
Margin="0 10 0 0"
|
|
/>
|
|
|
|
<c:OptionSection Header="{l:Translate lblMiscSettings}">
|
|
<CheckBox IsChecked="{Binding Config.GgBlendFrames}" Content="{l:Translate chkGgBlendFrames}" />
|
|
<CheckBox IsChecked="{Binding Config.UseSgPalette}" Content="{l:Translate chkUseSgPalette}" />
|
|
<CheckBox IsChecked="{Binding Config.RemoveSpriteLimit}" Content="{l:Translate chkRemoveSpriteLimit}" />
|
|
<c:CheckBoxWarning IsChecked="{Binding Config.DisableBackground}" Text="{l:Translate chkDisableBackground}" />
|
|
<c:CheckBoxWarning IsChecked="{Binding Config.DisableSprites}" Text="{l:Translate chkDisableSprites}" />
|
|
</c:OptionSection>
|
|
|
|
<c:OptionSection Header="{l:Translate lblOverscan}" HorizontalAlignment="Left">
|
|
<Border BorderBrush="{StaticResource MesenGrayBorderColor}" BorderThickness="1" Margin="0 0 0 5">
|
|
<TabControl>
|
|
<TabItem Header="{l:Translate lblOverscanNtsc}">
|
|
<c:OverscanInput Overscan="{Binding Config.NtscOverscan}" Margin="5" />
|
|
</TabItem>
|
|
<TabItem Header="{l:Translate lblOverscanPal}">
|
|
<c:OverscanInput Overscan="{Binding Config.PalOverscan}" Margin="5" />
|
|
</TabItem>
|
|
<TabItem Header="{l:Translate lblOverscanGameGear}">
|
|
<StackPanel Orientation="Vertical">
|
|
<Button
|
|
Grid.Column="2"
|
|
Content="{l:Translate btnSelectPreset}"
|
|
Click="btnSelectPreset_OnClick"
|
|
>
|
|
<Button.ContextMenu>
|
|
<ContextMenu Placement="BottomEdgeAlignedLeft">
|
|
<MenuItem Header="{l:Translate lblGameGearPreset}" Click="mnuGameGearPreset_Click" />
|
|
<MenuItem Header="{l:Translate lblFullFramePreset}" Click="mnuFullFramePreset_Click" />
|
|
<MenuItem Header="{l:Translate lblFullFrameFirstColumnPreset}" Click="mnuFullFrameFirstColumnPreset_Click" />
|
|
</ContextMenu>
|
|
</Button.ContextMenu>
|
|
</Button>
|
|
<c:OverscanInput Overscan="{Binding Config.GameGearOverscan}" Margin="5" />
|
|
</StackPanel>
|
|
</TabItem>
|
|
</TabControl>
|
|
</Border>
|
|
</c:OptionSection>
|
|
</StackPanel>
|
|
</ScrollViewer>
|
|
</TabItem>
|
|
</TabControl>
|
|
</UserControl>
|