<?xml version="1.0" encoding="utf-8"?>
<Page
x:Class="HaloPixelToolBox.Client.Views.CloudMusicLyricsToolPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:HaloPixelToolBox.Client.Views"
xmlns:controls="using:CommunityToolkit.WinUI.Controls"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<Page.Resources>
<Style x:Key="SettingsSectionHeaderTextBlockStyle"
BasedOn="{StaticResource BodyStrongTextBlockStyle}"
TargetType="TextBlock">
<Style.Setters>
<Setter Property="Margin" Value="1,30,0,6" />
</Style.Setters>
</Style>
</Page.Resources>
<Grid>
<ScrollView>
<StackPanel Orientation="Vertical" Spacing="10" Margin="0,0,0,20">
<TextBlock Text="设备状态" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
<Grid RowSpacing="10" ColumnSpacing="5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="花再 Halo Pixel 状态:" VerticalAlignment="Center" HorizontalAlignment="Right" Style="{ThemeResource BodyStrongTextBlockStyle}"/>
<Grid Grid.Column="1">
<Border CornerRadius="90" Height="25" Width="25" Visibility="{x:Bind ViewModel.DeviceReady, Mode=OneWay, Converter={StaticResource BooleanInverseConverter}}" Background="{ThemeResource SystemFillColorCriticalBrush}"/>
<Border CornerRadius="90" Height="25" Width="25" Visibility="{x:Bind ViewModel.DeviceReady, Mode=OneWay}" Background="{ThemeResource SystemFillColorSuccessBrush}"/>
</Grid>
<TextBlock Grid.Row="1" Text="网易云音乐 状态:" VerticalAlignment="Center" HorizontalAlignment="Right" Style="{ThemeResource BodyStrongTextBlockStyle}"/>
<Grid Grid.Column="1" Grid.Row="1">
<Border CornerRadius="90" Height="25" Width="25" Visibility="{x:Bind ViewModel.CloudMusicReady, Mode=OneWay, Converter={StaticResource BooleanInverseConverter}}" Background="{ThemeResource SystemFillColorCriticalBrush}"/>
<Border CornerRadius="90" Height="25" Width="25" Visibility="{x:Bind ViewModel.CloudMusicReady, Mode=OneWay}" Background="{ThemeResource SystemFillColorSuccessBrush}"/>
</Grid>
</Grid>
<TextBlock Text="{x:Bind ViewModel.SupportedVersion, Mode=OneWay, Converter={StaticResource StringFormatConverter}, ConverterParameter='网易云版本 (当前支持版本 (0) )'}" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
<TextBlock Text="{x:Bind ViewModel.CloudMusicVersion, Mode=OneWay}" Style="{StaticResource BodyTextBlockStyle}"/>
<TextBlock Text="功能" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
<controls:SettingsCard Header="启用歌词同步" Description="启用后,网易云的歌词会实时显示在花再 Halo Pixel 音响上">
<ToggleSwitch IsOn="{x:Bind ViewModel.EnableCloudMusicLyrics, Mode=TwoWay}"/>
</controls:SettingsCard>
<controls:SettingsCard Header="开启屏幕颜色同步" Description="自动提取当前歌曲专辑封面主色并应用到像素屏歌词文本颜色">
<ToggleSwitch IsOn="{x:Bind ViewModel.EnableScreenColorSync, Mode=TwoWay}"/>
</controls:SettingsCard>
<controls:SettingsExpander Header="开启氛围灯颜色同步" Description="自动提取当前歌曲专辑封面主色并应用到音响氛围灯/底座灯颜色">
<ToggleSwitch x:Name="enableAmbientColorSyncToggleSwitch" IsOn="{x:Bind ViewModel.EnableAmbientColorSync, Mode=TwoWay}"/>
<controls:SettingsExpander.Items>
<controls:SettingsCard Header="氛围灯同步效果" Description="设置专辑颜色同步时的灯光效果模式" IsEnabled="{x:Bind enableAmbientColorSyncToggleSwitch.IsOn, Mode=OneWay}">
<ComboBox x:Name="syncAmbientLightEffectComboBox" Tag="HaloPixelToolBox.Client.Profiles.CrossVersionProfiles.CloudMusicLyricsProfile.SyncAmbientLightEffect">
<ComboBoxItem Content="常亮" Tag="Static"/>
<ComboBoxItem Content="呼吸" Tag="Breathing"/>
</ComboBox>
</controls:SettingsCard>
<controls:SettingsCard Header="氛围灯同步亮度" Description="设置专辑颜色同步时的灯光亮度模式" IsEnabled="{x:Bind enableAmbientColorSyncToggleSwitch.IsOn, Mode=OneWay}">
<StackPanel Orientation="Horizontal" Spacing="15">
<RadioButton x:Name="brightnessLowRadio" Content="低" GroupName="BrightnessSyncGroup" Checked="OnBrightnessRadioChecked"/>
<RadioButton x:Name="brightnessMediumRadio" Content="中" GroupName="BrightnessSyncGroup" Checked="OnBrightnessRadioChecked"/>
<RadioButton x:Name="brightnessHighRadio" Content="高" GroupName="BrightnessSyncGroup" Checked="OnBrightnessRadioChecked"/>
</StackPanel>
</controls:SettingsCard>
<controls:SettingsCard Header="氛围灯同步速度" Description="设置呼吸或动态灯效的变化速度 (1-10)" IsEnabled="{x:Bind enableAmbientColorSyncToggleSwitch.IsOn, Mode=OneWay}">
<Slider Minimum="1" Maximum="10" StepFrequency="1" Width="150" Value="{x:Bind ViewModel.SyncAmbientLightSpeed, Mode=TwoWay}"/>
</controls:SettingsCard>
</controls:SettingsExpander.Items>
</controls:SettingsExpander>
<controls:SettingsExpander Header="手动输入内存地址" Description="解析使用手动输入的内存地址">
<ToggleSwitch x:Name="useInputedAddressToggleSwitch" IsOn="{x:Bind ViewModel.UseInputedAddress, Mode=TwoWay}"/>
<controls:SettingsExpander.Items>
<controls:SettingsCard Header="内存地址" Description="设置要解析的内存地址" IsEnabled="{x:Bind useInputedAddressToggleSwitch.IsOn, Mode=OneWay}">
<TextBox Text="{x:Bind ViewModel.InputedAddress, Mode=TwoWay}"/>
</controls:SettingsCard>
</controls:SettingsExpander.Items>
</controls:SettingsExpander>
<TextBlock Text="个性化" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
<controls:SettingsExpander Header="暂停后切换回默认界面" Description="一段时间后自动切换回时钟界面等音响自带页面">
<ToggleSwitch x:Name="switchBackWhenPauseToggleSwitch" IsOn="{x:Bind ViewModel.SwitchBackWhenPause, Mode=TwoWay}"/>
<controls:SettingsExpander.Items>
<controls:SettingsCard Header="暂停延迟" Description="设置多长时间后,音响切换回默认界面" IsEnabled="{x:Bind switchBackWhenPauseToggleSwitch.IsOn, Mode=OneWay}">
<NumberBox SpinButtonPlacementMode="Compact" Value="{x:Bind ViewModel.SwitchBackTimeout, Mode=TwoWay}"/>
</controls:SettingsCard>
<controls:SettingsCard Header="暂停界面" Description="设置暂停后切换回的默认界面" IsEnabled="{x:Bind switchBackWhenPauseToggleSwitch.IsOn, Mode=OneWay}">
<ComboBox x:Name="defaultHaloPixelUIModelComboBox" Tag="HaloPixelToolBox.Client.Profiles.CrossVersionProfiles.CloudMusicLyricsProfile.DefaultHaloPixelUIModel">
<ComboBoxItem Content="时钟类" Tag="Clock"/>
<ComboBoxItem Content="游戏类" Tag="Game"/>
<ComboBoxItem Content="打工类" Tag="Work"/>
<ComboBoxItem Content="读书类" Tag="Read"/>
<ComboBoxItem Content="猫咪类" Tag="Cats"/>
<ComboBoxItem Content="狗狗类" Tag="Dogs"/>
<ComboBoxItem Content="热更类" Tag="Memes"/>
<ComboBoxItem Content="赛博类" Tag="Cyber"/>
<ComboBoxItem Content="频谱类" Tag="Waves"/>
</ComboBox>
</controls:SettingsCard>
</controls:SettingsExpander.Items>
</controls:SettingsExpander>
<controls:SettingsCard Header="歌词位置" Description="设置歌词的默认显示位置">
<ComboBox x:Name="defaultHaloPixelTextLayoutComboBox" Tag="HaloPixelToolBox.Client.Profiles.CrossVersionProfiles.CloudMusicLyricsProfile.DefaultHaloPixelTextLayout">
<ComboBoxItem Content="左对齐" Tag="Left"/>
<ComboBoxItem Content="右对齐" Tag="Right"/>
<ComboBoxItem Content="居中" Tag="Center"/>
<ComboBoxItem Content="伸展" Tag="Stretch"/>
</ComboBox>
</controls:SettingsCard>
</StackPanel>
</ScrollView>
</Grid>
</Page>
<?xml version="1.0" encoding="utf-8"?>
<Page
x:Class="HaloPixelToolBox.Client.Views.CloudMusicLyricsToolPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:HaloPixelToolBox.Client.Views"
xmlns:controls="using:CommunityToolkit.WinUI.Controls"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<Page.Resources>
<Style x:Key="SettingsSectionHeaderTextBlockStyle"
BasedOn="{StaticResource BodyStrongTextBlockStyle}"
TargetType="TextBlock">
<Style.Setters>
<Setter Property="Margin" Value="1,30,0,6" />
</Style.Setters>
</Style>
</Page.Resources>
<Grid>
<ScrollView>
<StackPanel Orientation="Vertical" Spacing="10" Margin="0,0,0,20">
<TextBlock Text="设备状态" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
<Grid RowSpacing="10" ColumnSpacing="5">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="花再 Halo Pixel 状态:" VerticalAlignment="Center" HorizontalAlignment="Right" Style="{ThemeResource BodyStrongTextBlockStyle}"/>
<Grid Grid.Column="1">
<Border CornerRadius="90" Height="25" Width="25" Visibility="{x:Bind ViewModel.DeviceReady, Mode=OneWay, Converter={StaticResource BooleanInverseConverter}}" Background="{ThemeResource SystemFillColorCriticalBrush}"/>
<Border CornerRadius="90" Height="25" Width="25" Visibility="{x:Bind ViewModel.DeviceReady, Mode=OneWay}" Background="{ThemeResource SystemFillColorSuccessBrush}"/>
</Grid>
<TextBlock Grid.Row="1" Text="网易云音乐 状态:" VerticalAlignment="Center" HorizontalAlignment="Right" Style="{ThemeResource BodyStrongTextBlockStyle}"/>
<Grid Grid.Column="1" Grid.Row="1">
<Border CornerRadius="90" Height="25" Width="25" Visibility="{x:Bind ViewModel.CloudMusicReady, Mode=OneWay, Converter={StaticResource BooleanInverseConverter}}" Background="{ThemeResource SystemFillColorCriticalBrush}"/>
<Border CornerRadius="90" Height="25" Width="25" Visibility="{x:Bind ViewModel.CloudMusicReady, Mode=OneWay}" Background="{ThemeResource SystemFillColorSuccessBrush}"/>
</Grid>
</Grid>
<TextBlock Text="{x:Bind ViewModel.SupportedVersion, Mode=OneWay, Converter={StaticResource StringFormatConverter}, ConverterParameter='网易云版本 (当前支持版本 (0) )'}" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
<TextBlock Text="{x:Bind ViewModel.CloudMusicVersion, Mode=OneWay}" Style="{StaticResource BodyTextBlockStyle}"/>
<TextBlock Text="功能" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
<controls:SettingsCard Header="启用歌词同步" Description="启用后,网易云的歌词会实时显示在花再 Halo Pixel 音响上">
<ToggleSwitch IsOn="{x:Bind ViewModel.EnableCloudMusicLyrics, Mode=TwoWay}"/>
</controls:SettingsCard>
<controls:SettingsCard Header="开启屏幕颜色同步" Description="自动提取当前歌曲专辑封面主色并应用到像素屏歌词文本颜色">
<ToggleSwitch IsOn="{x:Bind ViewModel.EnableScreenColorSync, Mode=TwoWay}"/>
</controls:SettingsCard>
<controls:SettingsExpander Header="开启氛围灯颜色同步" Description="自动提取当前歌曲专辑封面主色并应用到音响氛围灯/底座灯颜色">
<ToggleSwitch x:Name="enableAmbientColorSyncToggleSwitch" IsOn="{x:Bind ViewModel.EnableAmbientColorSync, Mode=TwoWay}"/>
<controls:SettingsExpander.Items>
<controls:SettingsCard Header="氛围灯同步效果" Description="设置专辑颜色同步时的灯光效果模式" IsEnabled="{x:Bind enableAmbientColorSyncToggleSwitch.IsOn, Mode=OneWay}">
<ComboBox x:Name="syncAmbientLightEffectComboBox" Tag="HaloPixelToolBox.Client.Profiles.CrossVersionProfiles.CloudMusicLyricsProfile.SyncAmbientLightEffect">
<ComboBoxItem Content="常亮" Tag="Static"/>
<ComboBoxItem Content="呼吸" Tag="Breathing"/>
</ComboBox>
</controls:SettingsCard>
<controls:SettingsCard Header="氛围灯同步亮度" Description="设置专辑颜色同步时的灯光亮度模式" IsEnabled="{x:Bind enableAmbientColorSyncToggleSwitch.IsOn, Mode=OneWay}">
<StackPanel Orientation="Horizontal" Spacing="15">
<RadioButton x:Name="brightnessLowRadio" Content="低" GroupName="BrightnessSyncGroup" Checked="OnBrightnessRadioChecked"/>
<RadioButton x:Name="brightnessMediumRadio" Content="中" GroupName="BrightnessSyncGroup" Checked="OnBrightnessRadioChecked"/>
<RadioButton x:Name="brightnessHighRadio" Content="高" GroupName="BrightnessSyncGroup" Checked="OnBrightnessRadioChecked"/>
</StackPanel>
</controls:SettingsCard>
<controls:SettingsCard Header="氛围灯同步速度" Description="设置呼吸或动态灯效的变化速度 (1-10)" IsEnabled="{x:Bind enableAmbientColorSyncToggleSwitch.IsOn, Mode=OneWay}">
<Slider Minimum="1" Maximum="10" StepFrequency="1" Width="150" Value="{x:Bind ViewModel.SyncAmbientLightSpeed, Mode=TwoWay}"/>
</controls:SettingsCard>
</controls:SettingsExpander.Items>
</controls:SettingsExpander>
<controls:SettingsExpander Header="手动输入内存地址" Description="解析使用手动输入的内存地址">
<ToggleSwitch x:Name="useInputedAddressToggleSwitch" IsOn="{x:Bind ViewModel.UseInputedAddress, Mode=TwoWay}"/>
<controls:SettingsExpander.Items>
<controls:SettingsCard Header="内存地址" Description="设置要解析的内存地址" IsEnabled="{x:Bind useInputedAddressToggleSwitch.IsOn, Mode=OneWay}">
<TextBox Text="{x:Bind ViewModel.InputedAddress, Mode=TwoWay}"/>
</controls:SettingsCard>
</controls:SettingsExpander.Items>
</controls:SettingsExpander>
<TextBlock Text="个性化" Style="{StaticResource SettingsSectionHeaderTextBlockStyle}"/>
<controls:SettingsExpander Header="暂停后切换回默认界面" Description="一段时间后自动切换回时钟界面等音响自带页面">
<ToggleSwitch x:Name="switchBackWhenPauseToggleSwitch" IsOn="{x:Bind ViewModel.SwitchBackWhenPause, Mode=TwoWay}"/>
<controls:SettingsExpander.Items>
<controls:SettingsCard Header="暂停延迟" Description="设置多长时间后,音响切换回默认界面" IsEnabled="{x:Bind switchBackWhenPauseToggleSwitch.IsOn, Mode=OneWay}">
<NumberBox SpinButtonPlacementMode="Compact" Value="{x:Bind ViewModel.SwitchBackTimeout, Mode=TwoWay}"/>
</controls:SettingsCard>
<controls:SettingsCard Header="暂停界面" Description="设置暂停后切换回的默认界面" IsEnabled="{x:Bind switchBackWhenPauseToggleSwitch.IsOn, Mode=OneWay}">
<ComboBox x:Name="defaultHaloPixelUIModelComboBox" Tag="HaloPixelToolBox.Client.Profiles.CrossVersionProfiles.CloudMusicLyricsProfile.DefaultHaloPixelUIModel">
<ComboBoxItem Content="时钟类" Tag="Clock"/>
<ComboBoxItem Content="游戏类" Tag="Game"/>
<ComboBoxItem Content="打工类" Tag="Work"/>
<ComboBoxItem Content="读书类" Tag="Read"/>
<ComboBoxItem Content="猫咪类" Tag="Cats"/>
<ComboBoxItem Content="狗狗类" Tag="Dogs"/>
<ComboBoxItem Content="热更类" Tag="Memes"/>
<ComboBoxItem Content="赛博类" Tag="Cyber"/>
<ComboBoxItem Content="频谱类" Tag="Waves"/>
</ComboBox>
</controls:SettingsCard>
</controls:SettingsExpander.Items>
</controls:SettingsExpander>
<controls:SettingsCard Header="歌词位置" Description="设置歌词的默认显示位置">
<ComboBox x:Name="defaultHaloPixelTextLayoutComboBox" Tag="HaloPixelToolBox.Client.Profiles.CrossVersionProfiles.CloudMusicLyricsProfile.DefaultHaloPixelTextLayout">
<ComboBoxItem Content="左对齐" Tag="Left"/>
<ComboBoxItem Content="右对齐" Tag="Right"/>
<ComboBoxItem Content="居中" Tag="Center"/>
<ComboBoxItem Content="伸展" Tag="Stretch"/>
</ComboBox>
</controls:SettingsCard>
</StackPanel>
</ScrollView>
</Grid>
</Page>