mirror of
https://github.com/jayfunc/BetterLyrics.git
synced 2026-01-12 19:24:55 +08:00
241 lines
17 KiB
XML
241 lines
17 KiB
XML
<?xml version="1.0" encoding="utf-8" ?>
|
|
<UserControl
|
|
x:Class="BetterLyrics.WinUI3.Controls.LyricsStyleSettingsControl"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:controls="using:CommunityToolkit.WinUI.Controls"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:interactivity="using:Microsoft.Xaml.Interactivity"
|
|
xmlns:local="using:BetterLyrics.WinUI3.Controls"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:ui="using:CommunityToolkit.WinUI"
|
|
mc:Ignorable="d">
|
|
|
|
<Grid>
|
|
<ScrollViewer Style="{StaticResource SettingsScrollViewerStyle}">
|
|
<Grid Style="{StaticResource SettingsGridStyle}">
|
|
<StackPanel Spacing="{StaticResource SettingsCardSpacing}">
|
|
|
|
<!-- Lyrics style -->
|
|
|
|
<TextBlock x:Uid="SettingsPageLyricsStyle" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}" />
|
|
|
|
<controls:SettingsCard x:Uid="SettingsPageLyricsAlignment" HeaderIcon="{ui:FontIcon FontFamily={StaticResource IconFontFamily}, Glyph=}">
|
|
<ComboBox SelectedIndex="{x:Bind LyricsStyleSettings.LyricsAlignmentType, Mode=TwoWay, Converter={StaticResource EnumToIntConverter}}">
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsLeft" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsCenter" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsRight" />
|
|
</ComboBox>
|
|
</controls:SettingsCard>
|
|
|
|
<controls:SettingsExpander x:Uid="SettingsPageLyricsFontFamily" HeaderIcon="{ui:FontIcon FontFamily={StaticResource IconFontFamily}, Glyph=}">
|
|
<controls:SettingsExpander.Items>
|
|
<controls:SettingsCard x:Uid="SettingsPageCJK">
|
|
<local:FontFamilyAutoSuggestBox SelectedFontFamily="{x:Bind LyricsStyleSettings.LyricsCJKFontFamily, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
<controls:SettingsCard x:Uid="SettingsPageWesternChar">
|
|
<local:FontFamilyAutoSuggestBox SelectedFontFamily="{x:Bind LyricsStyleSettings.LyricsWesternFontFamily, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
</controls:SettingsExpander.Items>
|
|
</controls:SettingsExpander>
|
|
|
|
<controls:SettingsCard x:Uid="SettingsPageLyricsFontWeight" HeaderIcon="{ui:FontIcon FontFamily={StaticResource IconFontFamily}, Glyph=}">
|
|
<ComboBox SelectedIndex="{x:Bind LyricsStyleSettings.LyricsFontWeight, Mode=TwoWay, Converter={StaticResource EnumToIntConverter}}">
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsThin" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsExtraLight" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsLight" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsSemiLight" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsNormal" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsMedium" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsSemiBold" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsBold" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsExtraBold" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsBlack" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsExtraBlack" />
|
|
</ComboBox>
|
|
</controls:SettingsCard>
|
|
|
|
<controls:SettingsCard x:Uid="SettingsPageLyricsBgFontOpacity" HeaderIcon="{ui:FontIcon FontFamily={StaticResource IconFontFamily}, Glyph=}">
|
|
<local:ExtendedSlider
|
|
Default="30"
|
|
Maximum="100"
|
|
Minimum="0"
|
|
Unit="%"
|
|
Value="{x:Bind LyricsStyleSettings.LyricsBgFontOpacity, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
|
|
<controls:SettingsCard x:Uid="SettingsPageLyricsFontStrokeWidth" HeaderIcon="{ui:FontIcon FontFamily={StaticResource IconFontFamily}, Glyph=}">
|
|
<local:ExtendedSlider
|
|
Default="0"
|
|
Maximum="10"
|
|
Minimum="0"
|
|
Value="{x:Bind LyricsStyleSettings.LyricsFontStrokeWidth, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
|
|
<!-- 字体颜色 -->
|
|
<controls:SettingsExpander x:Uid="SettingsPageFontColor" HeaderIcon="{ui:FontIcon FontFamily={StaticResource IconFontFamily}, Glyph=}">
|
|
<controls:SettingsExpander.Items>
|
|
<controls:SettingsCard x:Uid="SettingsPageStrokeFontColor">
|
|
<ComboBox SelectedIndex="{x:Bind LyricsStyleSettings.LyricsStrokeFontColorType, Mode=TwoWay, Converter={StaticResource EnumToIntConverter}}">
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsFontColorAdaptiveColored" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsFontColorAdaptiveGrayed" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsFontColorCustom" />
|
|
</ComboBox>
|
|
</controls:SettingsCard>
|
|
|
|
<controls:SettingsCard HorizontalContentAlignment="Left">
|
|
<interactivity:Interaction.Behaviors>
|
|
<interactivity:DataTriggerBehavior
|
|
Binding="{x:Bind LyricsStyleSettings.LyricsStrokeFontColorType, Mode=OneWay, Converter={StaticResource EnumToIntConverter}}"
|
|
ComparisonCondition="Equal"
|
|
Value="2">
|
|
<interactivity:ChangePropertyAction PropertyName="Visibility" Value="Visible" />
|
|
</interactivity:DataTriggerBehavior>
|
|
<interactivity:DataTriggerBehavior
|
|
Binding="{x:Bind LyricsStyleSettings.LyricsStrokeFontColorType, Mode=OneWay, Converter={StaticResource EnumToIntConverter}}"
|
|
ComparisonCondition="NotEqual"
|
|
Value="2">
|
|
<interactivity:ChangePropertyAction PropertyName="Visibility" Value="Collapsed" />
|
|
</interactivity:DataTriggerBehavior>
|
|
</interactivity:Interaction.Behaviors>
|
|
<ColorPicker
|
|
ColorSpectrumShape="Box"
|
|
IsAlphaEnabled="True"
|
|
IsAlphaSliderVisible="True"
|
|
IsAlphaTextInputVisible="True"
|
|
IsColorChannelTextInputVisible="True"
|
|
IsColorSliderVisible="True"
|
|
IsHexInputVisible="True"
|
|
IsMoreButtonVisible="True"
|
|
Color="{x:Bind LyricsStyleSettings.LyricsCustomStrokeFontColor, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
|
|
<controls:SettingsCard x:Uid="SettingsPageLyricsBgFontColor">
|
|
<ComboBox SelectedIndex="{x:Bind LyricsStyleSettings.LyricsBgFontColorType, Mode=TwoWay, Converter={StaticResource EnumToIntConverter}}">
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsFontColorAdaptiveColored" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsFontColorAdaptiveGrayed" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsFontColorCustom" />
|
|
</ComboBox>
|
|
</controls:SettingsCard>
|
|
|
|
<controls:SettingsCard>
|
|
<interactivity:Interaction.Behaviors>
|
|
<interactivity:DataTriggerBehavior
|
|
Binding="{x:Bind LyricsStyleSettings.LyricsBgFontColorType, Mode=OneWay, Converter={StaticResource EnumToIntConverter}}"
|
|
ComparisonCondition="Equal"
|
|
Value="2">
|
|
<interactivity:ChangePropertyAction PropertyName="Visibility" Value="Visible" />
|
|
</interactivity:DataTriggerBehavior>
|
|
<interactivity:DataTriggerBehavior
|
|
Binding="{x:Bind LyricsStyleSettings.LyricsBgFontColorType, Mode=OneWay, Converter={StaticResource EnumToIntConverter}}"
|
|
ComparisonCondition="NotEqual"
|
|
Value="2">
|
|
<interactivity:ChangePropertyAction PropertyName="Visibility" Value="Collapsed" />
|
|
</interactivity:DataTriggerBehavior>
|
|
</interactivity:Interaction.Behaviors>
|
|
<ColorPicker
|
|
ColorSpectrumShape="Box"
|
|
IsAlphaEnabled="True"
|
|
IsAlphaSliderVisible="True"
|
|
IsAlphaTextInputVisible="True"
|
|
IsColorChannelTextInputVisible="True"
|
|
IsColorSliderVisible="True"
|
|
IsHexInputVisible="True"
|
|
IsMoreButtonVisible="True"
|
|
Color="{x:Bind LyricsStyleSettings.LyricsCustomBgFontColor, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
|
|
<controls:SettingsCard x:Uid="SettingsPageLyricsFgFontColor">
|
|
<ComboBox SelectedIndex="{x:Bind LyricsStyleSettings.LyricsFgFontColorType, Mode=TwoWay, Converter={StaticResource EnumToIntConverter}}">
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsFontColorAdaptiveColored" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsFontColorAdaptiveGrayed" />
|
|
<ComboBoxItem x:Uid="SettingsPageLyricsFontColorCustom" />
|
|
</ComboBox>
|
|
</controls:SettingsCard>
|
|
|
|
<controls:SettingsCard>
|
|
<interactivity:Interaction.Behaviors>
|
|
<interactivity:DataTriggerBehavior
|
|
Binding="{x:Bind LyricsStyleSettings.LyricsFgFontColorType, Mode=OneWay, Converter={StaticResource EnumToIntConverter}}"
|
|
ComparisonCondition="Equal"
|
|
Value="2">
|
|
<interactivity:ChangePropertyAction PropertyName="Visibility" Value="Visible" />
|
|
</interactivity:DataTriggerBehavior>
|
|
<interactivity:DataTriggerBehavior
|
|
Binding="{x:Bind LyricsStyleSettings.LyricsFgFontColorType, Mode=OneWay, Converter={StaticResource EnumToIntConverter}}"
|
|
ComparisonCondition="NotEqual"
|
|
Value="2">
|
|
<interactivity:ChangePropertyAction PropertyName="Visibility" Value="Collapsed" />
|
|
</interactivity:DataTriggerBehavior>
|
|
</interactivity:Interaction.Behaviors>
|
|
<ColorPicker
|
|
ColorSpectrumShape="Box"
|
|
IsAlphaEnabled="True"
|
|
IsAlphaSliderVisible="True"
|
|
IsAlphaTextInputVisible="True"
|
|
IsColorChannelTextInputVisible="True"
|
|
IsColorSliderVisible="True"
|
|
IsHexInputVisible="True"
|
|
IsMoreButtonVisible="True"
|
|
Color="{x:Bind LyricsStyleSettings.LyricsCustomFgFontColor, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
</controls:SettingsExpander.Items>
|
|
</controls:SettingsExpander>
|
|
|
|
<!-- 字体大小 -->
|
|
<controls:SettingsExpander x:Uid="SettingsPageLyricsFontSize" HeaderIcon="{ui:FontIcon FontFamily={StaticResource IconFontFamily}, Glyph=}">
|
|
<controls:SettingsExpander.Items>
|
|
<controls:SettingsCard x:Uid="SettingsPageAutoAdjust">
|
|
<ToggleSwitch IsOn="{x:Bind LyricsStyleSettings.IsDynamicLyricsFontSize, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
<controls:SettingsCard x:Uid="SettingsPagePhoneticText" IsEnabled="{x:Bind LyricsStyleSettings.IsDynamicLyricsFontSize, Converter={StaticResource BoolNegationConverter}, Mode=OneWay}">
|
|
<local:ExtendedSlider
|
|
Frequency="2"
|
|
Maximum="256"
|
|
Minimum="12"
|
|
ResetButtonVisibility="Collapsed"
|
|
Value="{x:Bind LyricsStyleSettings.PhoneticLyricsFontSize, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
<controls:SettingsCard x:Uid="SettingsPageOriginalText" IsEnabled="{x:Bind LyricsStyleSettings.IsDynamicLyricsFontSize, Converter={StaticResource BoolNegationConverter}, Mode=OneWay}">
|
|
<local:ExtendedSlider
|
|
Frequency="2"
|
|
Maximum="256"
|
|
Minimum="12"
|
|
ResetButtonVisibility="Collapsed"
|
|
Value="{x:Bind LyricsStyleSettings.OriginalLyricsFontSize, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
<controls:SettingsCard x:Uid="SettingsPageTranslatedText" IsEnabled="{x:Bind LyricsStyleSettings.IsDynamicLyricsFontSize, Converter={StaticResource BoolNegationConverter}, Mode=OneWay}">
|
|
<local:ExtendedSlider
|
|
Frequency="2"
|
|
Maximum="256"
|
|
Minimum="12"
|
|
ResetButtonVisibility="Collapsed"
|
|
Value="{x:Bind LyricsStyleSettings.TranslatedLyricsFontSize, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
</controls:SettingsExpander.Items>
|
|
</controls:SettingsExpander>
|
|
|
|
<controls:SettingsCard x:Uid="SettingsPageLyricsLineSpacingFactor" HeaderIcon="{ui:FontIcon FontFamily={StaticResource IconFontFamily}, Glyph=}">
|
|
<local:ExtendedSlider
|
|
x:Uid="SettingsPageLyricsLineSpacingFactorSlider"
|
|
Default="0.5"
|
|
Frequency="0.1"
|
|
Maximum="2"
|
|
Minimum="0"
|
|
Unit="x"
|
|
Value="{x:Bind LyricsStyleSettings.LyricsLineSpacingFactor, Mode=TwoWay}" />
|
|
</controls:SettingsCard>
|
|
|
|
<controls:SettingsCard x:Uid="SettingsPageLyricsTranslationSeparator" HeaderIcon="{ui:FontIcon FontFamily={StaticResource IconFontFamily}, Glyph=}">
|
|
<StackPanel Orientation="Horizontal" Spacing="6">
|
|
<TextBox AcceptsReturn="True" Text="{x:Bind LyricsStyleSettings.LyricsTranslationSeparator, Mode=TwoWay}" />
|
|
<Button Content="{ui:FontIcon FontFamily={StaticResource IconFontFamily}, FontSize=12, Glyph=}" Style="{StaticResource GhostButtonStyle}" />
|
|
</StackPanel>
|
|
</controls:SettingsCard>
|
|
|
|
</StackPanel>
|
|
</Grid>
|
|
</ScrollViewer>
|
|
</Grid>
|
|
</UserControl>
|