mirror of
https://github.com/babalae/better-genshin-impact.git
synced 2026-03-19 08:19:48 +08:00
197 lines
10 KiB
XML
197 lines
10 KiB
XML
<ui:FluentWindow x:Class="BetterGenshinImpact.View.MainWindow"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
|
|
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
|
xmlns:helpers="clr-namespace:BetterGenshinImpact.Helpers"
|
|
xmlns:markup="clr-namespace:BetterGenshinImpact.Markup"
|
|
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
|
xmlns:pages="clr-namespace:BetterGenshinImpact.View.Pages"
|
|
xmlns:tray="http://schemas.lepo.co/wpfui/2022/xaml/tray"
|
|
xmlns:ui="http://schemas.lepo.co/wpfui/2022/xaml"
|
|
xmlns:viewModel="clr-namespace:BetterGenshinImpact.ViewModel"
|
|
Title="更好的原神"
|
|
Width="900"
|
|
Height="600"
|
|
d:Background="#D2D2D2"
|
|
d:DataContext="{d:DesignInstance Type=viewModel:MainWindowViewModel}"
|
|
ui:Design.Background="{DynamicResource ApplicationBackgroundBrush}"
|
|
ui:Design.Foreground="{DynamicResource TextFillColorPrimaryBrush}"
|
|
ExtendsContentIntoTitleBar="True"
|
|
FontFamily="{StaticResource TextThemeFontFamily}"
|
|
Visibility="{Binding IsVisible, Mode=TwoWay, Converter={StaticResource BooleanToVisibilityConverter}}"
|
|
WindowStartupLocation="CenterScreen"
|
|
WindowState="{Binding WindowState, Mode=TwoWay}"
|
|
mc:Ignorable="d">
|
|
<Window.Resources>
|
|
<BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter" />
|
|
</Window.Resources>
|
|
<b:Interaction.Triggers>
|
|
<b:EventTrigger EventName="Loaded">
|
|
<b:InvokeCommandAction Command="{Binding LoadedCommand}" CommandParameter="{Binding}" />
|
|
</b:EventTrigger>
|
|
<b:EventTrigger EventName="Closing">
|
|
<b:InvokeCommandAction Command="{Binding ClosingCommand}" PassEventArgsToCommand="True" />
|
|
</b:EventTrigger>
|
|
</b:Interaction.Triggers>
|
|
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto" />
|
|
<RowDefinition Height="*" />
|
|
</Grid.RowDefinitions>
|
|
|
|
<ui:NavigationView x:Name="RootNavigation"
|
|
Grid.Row="1"
|
|
IsBackButtonVisible="Collapsed"
|
|
IsPaneToggleVisible="True"
|
|
OpenPaneLength="160">
|
|
<ui:NavigationView.MenuItems>
|
|
<ui:NavigationViewItem Content="启动"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:HomePage}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="Play24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
|
|
<ui:NavigationViewItem Content="实时触发"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:TriggerSettingsPage}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="Timer24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<ui:NavigationViewItem Content="独立任务"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:TaskSettingsPage}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="TaskListSquareLtr24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<ui:NavigationViewItem Content="辅助操控"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:MacroSettingsPage}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="XboxController24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<!--<ui:NavigationViewItemSeparator />-->
|
|
|
|
<ui:NavigationViewItem Content="全自动">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="Bot24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
<ui:NavigationViewItem.MenuItems>
|
|
|
|
<!--<ui:NavigationViewItemSeparator />-->
|
|
<!-- ConvertRange20 -->
|
|
<ui:NavigationViewItem Content="调度器"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:ScriptControlPage}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="DeveloperBoard24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<!-- WebAsset24 | DocumentJs16 | Script16 -->
|
|
<ui:NavigationViewItem Content="脚本"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:JsListPage}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="DocumentJs16" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<!-- Map24 -->
|
|
<ui:NavigationViewItem Content="地图追踪"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:ScriptControlPage}"
|
|
Visibility="{markup:Converter Value={x:Static helpers:RuntimeHelper.IsDebuggerAttached},
|
|
Converter={StaticResource BooleanToVisibilityConverter}}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="Map24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<!-- Script16 -->
|
|
<ui:NavigationViewItem Content="录制回放"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:KeyMouseRecordPage}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="Record24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
</ui:NavigationViewItem.MenuItems>
|
|
</ui:NavigationViewItem>
|
|
|
|
<ui:NavigationViewItem Content="快捷键"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:HotKeyPage}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="Flash24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
<ui:NavigationViewItem Content="通知"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:NotificationSettingsPage}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="Alert24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
</ui:NavigationView.MenuItems>
|
|
<ui:NavigationView.FooterMenuItems>
|
|
<ui:NavigationViewItem Content="设置"
|
|
NavigationCacheMode="Enabled"
|
|
TargetPageType="{x:Type pages:CommonSettingsPage}">
|
|
<ui:NavigationViewItem.Icon>
|
|
<ui:SymbolIcon Symbol="Settings24" />
|
|
</ui:NavigationViewItem.Icon>
|
|
</ui:NavigationViewItem>
|
|
</ui:NavigationView.FooterMenuItems>
|
|
|
|
<ui:NavigationView.ContentOverlay>
|
|
<Grid>
|
|
<ui:SnackbarPresenter x:Name="SnackbarPresenter" />
|
|
</Grid>
|
|
</ui:NavigationView.ContentOverlay>
|
|
</ui:NavigationView>
|
|
|
|
<ui:TitleBar Title="{Binding Title, Mode=OneWay}" Grid.Row="0">
|
|
<ui:TitleBar.Icon>
|
|
<ui:ImageIcon Source="pack://application:,,,/Assets/Kirara.png" />
|
|
</ui:TitleBar.Icon>
|
|
<ui:TitleBar.Header>
|
|
<StackPanel>
|
|
<ui:Button Width="44"
|
|
Height="30"
|
|
Background="Transparent"
|
|
BorderBrush="Transparent"
|
|
Command="{Binding HideCommand}"
|
|
CornerRadius="0"
|
|
Icon="{ui:SymbolIcon CaretDown24}"
|
|
ToolTip="最小化到托盘" />
|
|
</StackPanel>
|
|
</ui:TitleBar.Header>
|
|
</ui:TitleBar>
|
|
|
|
<tray:NotifyIcon Grid.Row="0"
|
|
FocusOnLeftClick="False"
|
|
Icon="pack://application:,,,/Assets/logo.ico"
|
|
LeftDoubleClick="OnNotifyIconLeftDoubleClick"
|
|
MenuOnRightClick="True"
|
|
TooltipText="BetterGI">
|
|
<tray:NotifyIcon.Menu>
|
|
<ContextMenu>
|
|
<ContextMenu.DataContext>
|
|
<markup:ServiceLocator Type="{x:Type viewModel:NotifyIconViewModel}" />
|
|
</ContextMenu.DataContext>
|
|
<ui:MenuItem Command="{Binding CheckUpdateCommand}"
|
|
Header="检查更新"
|
|
Icon="{ui:SymbolIcon ArrowAutofitUp24}" />
|
|
<Separator />
|
|
<ui:MenuItem Command="{Binding ExitCommand}"
|
|
Header="退出"
|
|
Icon="{ui:SymbolIcon Dismiss24}" />
|
|
</ContextMenu>
|
|
</tray:NotifyIcon.Menu>
|
|
</tray:NotifyIcon>
|
|
</Grid>
|
|
</ui:FluentWindow> |