ef5377f85c
重构主题和语言设置功能,将相关代码从主窗口迁移至新增的个性化设置页面 优化浮动工具栏图标选择逻辑,移除冗余代码 统一设置页面中开关控件的样式和行为 修复设置页面导航项的选择状态问题
281 lines
13 KiB
XML
281 lines
13 KiB
XML
<Window
|
|
x:Class="Ink_Canvas.Windows.SettingsViews.SettingsWindow"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
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:ui="http://schemas.inkore.net/lib/ui/wpf/modern"
|
|
xmlns:ikw="http://schemas.inkore.net/lib/ui/wpf"
|
|
Title="InkCanvasForClass 设置"
|
|
Width="1138" Height="750"
|
|
MinWidth="270" MinHeight="220"
|
|
WindowStartupLocation="CenterScreen"
|
|
ui:ThemeManager.IsThemeAware="True"
|
|
ui:TitleBar.ExtendViewIntoTitleBar="True"
|
|
ui:WindowHelper.SystemBackdropType="Mica"
|
|
ui:WindowHelper.UseModernWindowStyle="True"
|
|
ui:TitleBar.Height="48"
|
|
mc:Ignorable="d">
|
|
|
|
<Window.Resources>
|
|
<ResourceDictionary>
|
|
<ResourceDictionary.MergedDictionaries>
|
|
<ui:ThemeResources CanBeAccessedAcrossThreads="True">
|
|
<ui:ThemeResources.ThemeDictionaries>
|
|
</ui:ThemeResources.ThemeDictionaries>
|
|
</ui:ThemeResources>
|
|
</ResourceDictionary.MergedDictionaries>
|
|
<!-- L-Pattern Overwriting resources -->
|
|
<Thickness x:Key="NavigationViewContentMargin">0,48,0,0</Thickness>
|
|
<Thickness x:Key="NavigationViewContentGridBorderThickness">1,1,0,0</Thickness>
|
|
<CornerRadius x:Key="NavigationViewContentGridCornerRadius">8,0,0,0</CornerRadius>
|
|
<Thickness x:Key="NavigationViewHeaderMargin">56,34,0,0</Thickness>
|
|
</ResourceDictionary>
|
|
</Window.Resources>
|
|
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="13*"/>
|
|
<RowDefinition Height="134*"/>
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto" />
|
|
<ColumnDefinition />
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<Border
|
|
x:Name="AppTitleBar"
|
|
Grid.Column="1"
|
|
Height="{Binding ElementName=NavigationViewControl, Path=CompactPaneLength}"
|
|
VerticalAlignment="Top"
|
|
Background="Transparent"
|
|
IsHitTestVisible="True"
|
|
Canvas.ZIndex="10">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="Auto"/>
|
|
<ColumnDefinition/>
|
|
<ColumnDefinition Width="137"/>
|
|
</Grid.ColumnDefinitions>
|
|
<ikw:SimpleStackPanel x:Name="AppTitle" Grid.Column="0" Orientation="Horizontal" Spacing="12" VerticalAlignment="Center">
|
|
<Image Source="\Resources\icc.ico" Width="20" RenderOptions.BitmapScalingMode="HighQuality"/>
|
|
<TextBlock x:Name="AppTitleText"
|
|
VerticalAlignment="Center"
|
|
Text="应用设置" TextWrapping="NoWrap"/>
|
|
</ikw:SimpleStackPanel>
|
|
</Grid>
|
|
</Border>
|
|
|
|
<ui:NavigationView
|
|
x:Name="NavigationViewControl"
|
|
Grid.Column="1"
|
|
AlwaysShowHeader="True"
|
|
Canvas.ZIndex="0"
|
|
Header=" "
|
|
IsFooterSeparatorVisible="True"
|
|
PaneTitle=""
|
|
IsTabStop="False"
|
|
IsTitleBarAutoPaddingEnabled="False"
|
|
PaneDisplayMode="Auto"
|
|
SelectionChanged="OnNavigationViewSelectionChanged"
|
|
BackRequested="OnNavigationViewBackRequested"
|
|
DisplayModeChanged="NavigationViewControl_DisplayModeChanged"
|
|
IsSettingsVisible="False"
|
|
IsBackButtonVisible="Visible"
|
|
IsBackEnabled="True"
|
|
OpenPaneLength="240"
|
|
ScrollViewer.VerticalScrollBarVisibility="Auto"
|
|
ScrollViewer.HorizontalScrollBarVisibility="Disabled" Grid.RowSpan="2">
|
|
|
|
<ui:NavigationView.HeaderTemplate>
|
|
<DataTemplate>
|
|
<Grid Margin="0,8,0,12">
|
|
<TextBlock
|
|
Text="{Binding}"
|
|
FontSize="20"
|
|
FontWeight="SemiBold"/>
|
|
</Grid>
|
|
</DataTemplate>
|
|
</ui:NavigationView.HeaderTemplate>
|
|
|
|
<ui:NavigationView.AutoSuggestBox>
|
|
<ui:AutoSuggestBox
|
|
x:Name="controlsSearchBox"
|
|
MinWidth="200"
|
|
VerticalAlignment="Center"
|
|
x:FieldModifier="public"
|
|
PlaceholderText="查找设置"
|
|
QuerySubmitted="OnControlsSearchBoxQuerySubmitted"
|
|
TextChanged="OnControlsSearchBoxTextChanged">
|
|
<ui:AutoSuggestBox.QueryIcon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Search}" FontSize="12"/>
|
|
</ui:AutoSuggestBox.QueryIcon>
|
|
</ui:AutoSuggestBox>
|
|
</ui:NavigationView.AutoSuggestBox>
|
|
|
|
<ui:NavigationView.MenuItems>
|
|
<ui:NavigationViewItem
|
|
x:Name="HomeItem"
|
|
Content="首页"
|
|
Tag="HomePage"
|
|
ToolTipService.ToolTip="快速导航">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Home}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<ui:NavigationViewItemHeader Content="ICC CE 设置"/>
|
|
<!-- 基本设置 -->
|
|
<ui:NavigationViewItem
|
|
x:Name="BasicItem"
|
|
Content="基本"
|
|
SelectsOnInvoked="False"
|
|
ToolTipService.ToolTip="基本设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Home}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
<ui:NavigationViewItem.MenuItems>
|
|
<ui:NavigationViewItem
|
|
x:Name="StartupPageItem"
|
|
Content="启动"
|
|
Tag="StartupPage"
|
|
ToolTipService.ToolTip="启动设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Play}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<ui:NavigationViewItem
|
|
x:Name="PrivacyPageItem"
|
|
Content="隐私"
|
|
Tag="PrivacyPage"
|
|
ToolTipService.ToolTip="隐私与遥测设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Shield}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
</ui:NavigationViewItem.MenuItems>
|
|
</ui:NavigationViewItem>
|
|
|
|
<!-- 主界面 -->
|
|
<ui:NavigationViewItem
|
|
x:Name="MainInterfaceItem"
|
|
Content="主界面"
|
|
SelectsOnInvoked="False"
|
|
ToolTipService.ToolTip="主界面设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.TVMonitor}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
<ui:NavigationViewItem.MenuItems>
|
|
<ui:NavigationViewItem
|
|
x:Name="WindowPageItem"
|
|
Content="窗口"
|
|
Tag="WindowPage"
|
|
ToolTipService.ToolTip="窗口设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Pinned}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<ui:NavigationViewItem
|
|
x:Name="AppearancePageItem"
|
|
Content="个性化"
|
|
Tag="AppearancePage"
|
|
ToolTipService.ToolTip="个性化设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Personalize}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
</ui:NavigationViewItem.MenuItems>
|
|
</ui:NavigationViewItem>
|
|
|
|
<!-- 更新设置 -->
|
|
<ui:NavigationViewItem
|
|
x:Name="UpdatePageItem"
|
|
Content="更新"
|
|
Tag="UpdatePage"
|
|
ToolTipService.ToolTip="更新设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Sync}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
|
|
<!-- 实验性选项 -->
|
|
<ui:NavigationViewItem
|
|
x:Name="ExperimentalPageItem"
|
|
Content="实验性选项"
|
|
Tag="ExperimentalPage"
|
|
ToolTipService.ToolTip="实验性选项">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.DeveloperTools}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
|
|
<!-- 画板设置 -->
|
|
<ui:NavigationViewItem
|
|
x:Name="CanvasPageItem"
|
|
Content="画板"
|
|
SelectsOnInvoked="False"
|
|
ToolTipService.ToolTip="画板与墨迹设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
<ui:NavigationViewItem.MenuItems>
|
|
<ui:NavigationViewItem
|
|
x:Name="CanvasSubPageItem"
|
|
Content="画板"
|
|
Tag="CanvasPage"
|
|
ToolTipService.ToolTip="画板设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Edit}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<ui:NavigationViewItem
|
|
x:Name="InkRecognitionPageItem"
|
|
Content="墨迹纠正"
|
|
Tag="InkRecognitionPage"
|
|
ToolTipService.ToolTip="墨迹纠正设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Draw}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
</ui:NavigationViewItem.MenuItems>
|
|
</ui:NavigationViewItem>
|
|
|
|
<!-- Debug -->
|
|
<ui:NavigationViewItem
|
|
x:Name="DebugPageItem"
|
|
Content="Debug"
|
|
Tag="DebugPage"
|
|
ToolTipService.ToolTip="Debug">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.DeveloperTools}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
|
|
<ui:NavigationViewItemHeader Content="插件设置"/>
|
|
<ui:NavigationViewItem
|
|
x:Name="PluginItem"
|
|
Content="插件"
|
|
Tag="PluginPage"
|
|
ToolTipService.ToolTip="插件管理">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Puzzle}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
</ui:NavigationView.MenuItems>
|
|
|
|
<ui:NavigationView.FooterMenuItems>
|
|
<ui:NavigationViewItem
|
|
x:Name="AboutItem"
|
|
Content="关于 InkCanvasForClass"
|
|
Tag="AboutPage">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="Help" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
</ui:NavigationView.FooterMenuItems>
|
|
|
|
<ui:Frame x:Name="rootFrame" Navigated="OnRootFrameNavigated" NavigationUIVisibility="Hidden" />
|
|
<!--我要玩原神-->
|
|
</ui:NavigationView>
|
|
</Grid>
|
|
</Window>
|