723c0b9cdc
实现工具栏配置页面,允许用户调整工具栏按钮的顺序和可见性 包含主工具栏、画布控制和尾部按钮三个区域的配置 支持恢复默认布局功能
369 lines
17 KiB
XML
369 lines
17 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"
|
|
xmlns:i18n="clr-namespace:Ink_Canvas.MarkupExtensions"
|
|
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
|
|
x:Name="SecurityPageItem"
|
|
Content="{i18n:I18n Key=Settings_Nav_Security}"
|
|
Tag="SecurityPage"
|
|
ToolTipService.ToolTip="{i18n:I18n Key=Settings_Nav_Security_Tooltip}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Permissions}"/>
|
|
</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
|
|
x:Name="HotkeyPageItem"
|
|
Content="{i18n:I18n Key=Settings_Nav_Hotkey}"
|
|
Tag="HotkeyPage"
|
|
ToolTipService.ToolTip="{i18n:I18n Key=Settings_Nav_Hotkey_Tooltip}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.KeyboardStandard}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<ui:NavigationViewItem
|
|
x:Name="ToolbarPageItem"
|
|
Content="工具栏"
|
|
Tag="ToolbarPage"
|
|
ToolTipService.ToolTip="工具栏按钮排序与可见性">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Rename}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
</ui:NavigationViewItem.MenuItems>
|
|
</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>
|
|
|
|
<!-- PowerPoint -->
|
|
<ui:NavigationViewItem
|
|
x:Name="PowerPointPageItem"
|
|
Content="PowerPoint"
|
|
Tag="PowerPointPage"
|
|
ToolTipService.ToolTip="PowerPoint 设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Slideshow}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</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.InfoBadge>
|
|
<ui:InfoBadge Style="{DynamicResource AttentionDotInfoBadgeStyle}"
|
|
MinWidth="8" MinHeight="8"
|
|
Visibility="Collapsed"/>
|
|
</ui:NavigationViewItem.InfoBadge>
|
|
</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="AdvancedPageItem"
|
|
Content="高级"
|
|
Tag="AdvancedPage"
|
|
ToolTipService.ToolTip="高级设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Settings}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
|
|
<!-- 存储管理 -->
|
|
<ui:NavigationViewItem
|
|
x:Name="StoragePageItem"
|
|
Content="{i18n:I18n Key=Storage_Title}"
|
|
Tag="StoragePage"
|
|
ToolTipService.ToolTip="{i18n:I18n Key=Storage_NavTooltip}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.HardDrive}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
|
|
<!-- 自动化 -->
|
|
<ui:NavigationViewItem
|
|
x:Name="AutomationPageItem"
|
|
Content="自动化"
|
|
Tag="AutomationPage"
|
|
ToolTipService.ToolTip="自动化设置">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.Sync}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
|
|
<!-- 随机点名 -->
|
|
<ui:NavigationViewItem
|
|
x:Name="RandomDrawPageItem"
|
|
Content="随机点名"
|
|
Tag="RandomDrawPage"
|
|
ToolTipService.ToolTip="随机点名与计时器">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:FontIcon Icon="{x:Static ui:SegoeFluentIcons.People}"/>
|
|
</ui:NavigationViewItem.Icon>
|
|
</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>
|