Browse Source

Avalonia updates

Ruben 1 year ago
parent
commit
3d5766ef64

+ 4 - 0
src/PicView.Avalonia.Win32/PicView.Avalonia.Win32.csproj

@@ -56,4 +56,8 @@
   <ItemGroup>
     <UpToDateCheckInput Remove="Views\ExifWindow.axaml" />
   </ItemGroup>
+
+  <ItemGroup>
+    <UpToDateCheckInput Remove="Views\SettingsWindow.axaml" />
+  </ItemGroup>
 </Project>

+ 178 - 0
src/PicView.Avalonia.Win32/Views/SettingsWindow.axaml

@@ -0,0 +1,178 @@
+<Window
+    x:Class="PicView.Avalonia.Win32.Views.SettingsWindow"
+    xmlns="https://github.com/avaloniaui"
+    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:viewModels="clr-namespace:PicView.Avalonia.ViewModels;assembly=PicView.Avalonia"
+    xmlns:views="clr-namespace:PicView.Avalonia.Views;assembly=PicView.Avalonia"
+    Title="Loading..."
+    Height="300"
+    x:DataType="viewModels:MainViewModel"
+    BorderBrush="{StaticResource MainBorderColor}"
+    BorderThickness="1"
+    ExtendClientAreaChromeHints="NoChrome"
+    ExtendClientAreaTitleBarHeightHint="-1"
+    SizeToContent="Width"
+    WindowStartupLocation="CenterOwner"
+    mc:Ignorable="d">
+    <Design.DataContext>
+        <viewModels:MainViewModel />
+    </Design.DataContext>
+    <StackPanel>
+
+        <Border
+            Background="{StaticResource SecondaryBackgroundColor}"
+            BorderBrush="{StaticResource MainBorderColor}"
+            BorderThickness="0,0,1,1">
+            <DockPanel
+                Height="28"
+                LastChildFill="True"
+                PointerPressed="MoveWindow">
+
+                <Border BorderBrush="{StaticResource MainBorderColor}" BorderThickness="0,0,1,0">
+                    <Image
+                        Width="20"
+                        Height="25"
+                        Margin="7,1,7,1"
+                        DockPanel.Dock="Left">
+                        <Image.Source>
+                            <DrawingImage>
+                                <DrawingImage.Drawing>
+                                    <DrawingGroup ClipGeometry="M0,0 V329.25937 H333.44974 V0 H0 Z">
+                                        <DrawingGroup>
+                                            <GeometryDrawing Brush="{StaticResource AccentColor}" Geometry="F1 M333.44974,329.25937z M0,0z M329.796,130.208L311.354,177.826 304.172,196.392 286.112,243.011 280.229,258.204C279.6,259.845,277.133,259.397,277.133,257.644L277.133,214.336C277.133,214.143,277.164,213.949,277.236,213.776L289.486,182.156 296.669,163.58 306.194,138.991C306.514,138.176,306.101,137.259,305.265,136.953L278.155,126.723C277.536,126.488,277.123,125.897,277.123,125.245L277.123,109.094C277.123,107.983,278.248,107.219,279.3,107.617L328.888,126.346C311.406,53.8949 245.461,0 166.74,0 121.569,0 80.6197,17.7714 50.5885,46.5785L255.368,46.5785C257.928,46.5785,260.012,48.6267,260.012,51.164L260.012,263.198C260.012,265.725,257.938,267.783,255.368,267.783L40.6298,267.783C38.0705,267.783,35.9858,265.735,35.9858,263.198L35.9858,62.5258C13.4779,90.5891 0,126.05 0,164.63 0,255.555 74.6445,329.259 166.73,329.259 184.625,329.259 201.849,326.447 218.01,321.291L210.972,318.631 203.531,315.819 120.971,284.648 269.971,284.648 269.207,286.594 264.935,297.63C306.452,267.681 333.449,219.279 333.449,164.62 333.47,152.819 332.18,141.315 329.796,130.208L329.796,130.208z" />
+                                            <GeometryDrawing Brush="{StaticResource LogoAccentColor}" Geometry="F0 M333.44974,329.25937z M0,0z M62.2502,219.656L73.9737,219.656C80.4857,212.339 86.9666,205.033 93.4579,197.717 95.0265,195.944 96.6261,194.211 98.0709,192.357 98.8862,191.348 99.5054,191.287 100.537,191.99 105.563,195.403 110.63,198.725 115.646,202.19 117.018,203.138 117.689,203.464 118.752,201.629 125.14,190.543 131.725,179.609 138.154,168.543 138.928,167.228 139.403,167.452 140.362,168.135 147.432,173.118 154.532,178.08 161.621,183.053 162.375,183.573 163.149,184.062 163.913,184.582 171.384,169.297 178.784,154.154 186.379,138.625 188.484,142.762 190.425,146.553 192.365,150.343 204.191,173.454 216.018,196.545 227.835,219.656L236.514,219.656C239.083,219.656,241.147,217.597,241.147,215.06L241.147,69.4041C241.147,67.3967 239.847,65.7051 238.031,65.0835 237.556,64.9205 237.05,64.8084 236.524,64.8084L62.2502,64.8084C59.6806,64.8084,57.6166,66.8668,57.6166,69.4041L57.6166,215.06C57.6166,216.15 58.0191,217.149 58.6589,217.933 59.5051,218.973 60.7848,219.656 62.2502,219.656L62.2502,219.656z M105.119,125.969C116.203,126.631 124.583,135.619 124.284,146.654 123.953,159.188 114.16,166.963 103.375,166.739 90.7024,166.474 82.9521,156.773 82.8282,145.992 83.2721,134.039 92.8696,125.245 105.119,125.969L105.119,125.969z" />
+                                        </DrawingGroup>
+                                    </DrawingGroup>
+                                </DrawingImage.Drawing>
+                            </DrawingImage>
+                        </Image.Source>
+                    </Image>
+                </Border>
+
+                <Button
+                    Width="35"
+                    Background="{StaticResource MainButtonBackgroundColor}"
+                    BorderBrush="{StaticResource MainBorderColor}"
+                    BorderThickness="0,0,1,0"
+                    Classes="hover"
+                    Click="Close"
+                    DockPanel.Dock="Right">
+                    <Path
+                        Width="10"
+                        Height="10"
+                        Data="M443.6,387.1L312.4,255.4l131.5-130c5.4-5.4,5.4-14.2,0-19.6l-37.4-37.6c-2.6-2.6-6.1-4-9.8-4c-3.7,0-7.2,1.5-9.8,4  L256,197.8L124.9,68.3c-2.6-2.6-6.1-4-9.8-4c-3.7,0-7.2,1.5-9.8,4L68,105.9c-5.4,5.4-5.4,14.2,0,19.6l131.5,130L68.4,387.1  c-2.6,2.6-4.1,6.1-4.1,9.8c0,3.7,1.4,7.2,4.1,9.8l37.4,37.6c2.7,2.7,6.2,4.1,9.8,4.1c3.5,0,7.1-1.3,9.8-4.1L256,313.1l130.7,131.1  c2.7,2.7,6.2,4.1,9.8,4.1c3.5,0,7.1-1.3,9.8-4.1l37.4-37.6c2.6-2.6,4.1-6.1,4.1-9.8C447.7,393.2,446.2,389.7,443.6,387.1z"
+                        Fill="{StaticResource MainIconColor}"
+                        Stretch="Fill" />
+                </Button>
+
+                <Button
+                    Name="RestoreButton"
+                    Width="35"
+                    Background="{StaticResource MainButtonBackgroundColor}"
+                    BorderBrush="{StaticResource MainBorderColor}"
+                    BorderThickness="0,0,1,0"
+                    Classes="hover"
+                    Click="Maximize"
+                    DockPanel.Dock="Right">
+                    <Path
+                        Width="12"
+                        Height="12"
+                        Data="M405.34 405.332H106.66V106.668H240V64H106.66C83.191 64 64 83.197 64 106.668v298.664C64 428.803 83.191 448 106.66 448h298.68c23.469 0 42.66-19.197 42.66-42.668V272h-42.66v133.332zM288 64v42.668h87.474L159.999 322.133l29.866 29.866 215.476-215.47V224H448V64H288z"
+                        Fill="{StaticResource MainIconColor}"
+                        Stretch="Fill" />
+                </Button>
+
+                <Button
+                    Width="35"
+                    Background="{StaticResource MainButtonBackgroundColor}"
+                    BorderBrush="{StaticResource MainBorderColor}"
+                    BorderThickness="1,0,1,0"
+                    Classes="hover"
+                    Click="Minimize"
+                    DockPanel.Dock="Right">
+                    <Viewbox Width="12" Height="12">
+                        <Path
+                            Data="M24,11c0-0.6-0.4-1-1-1H1c-0.6,0-1,0.4-1,1v2c0,0.6,0.4,1,1,1h22c0.6,0,1-0.4,1-1V11z"
+                            Fill="{StaticResource MainIconColor}"
+                            Stretch="Fill" />
+                    </Viewbox>
+                </Button>
+                <TabControl Margin="0" Padding="0">
+                    <TabItem x:Name="GeneralSettingsTabItem" PointerPressed="MoveWindow">
+
+                        <TabItem.Header>
+                            <StackPanel Orientation="Horizontal">
+                                <Path
+                                    Width="14"
+                                    Height="14"
+                                    Margin="0,0,5,0"
+                                    Data="{StaticResource CogGeometry}"
+                                    Fill="{StaticResource MainIconColor}"
+                                    Stretch="Fill" />
+                                <TextBlock
+                                    Classes="txt"
+                                    Text="{Binding GeneralSettings}"
+                                    TextAlignment="Center" />
+                            </StackPanel>
+                        </TabItem.Header>
+                    </TabItem>
+                    <TabItem>
+                        <TabItem.Header>
+                            <StackPanel Orientation="Horizontal">
+                                <Image
+                                    Width="14"
+                                    Height="14"
+                                    Margin="0,0,5,0"
+                                    Source="{StaticResource DisplayImage}" />
+                                <TextBlock
+                                    Classes="txt"
+                                    Text="{Binding UISettings}"
+                                    TextAlignment="Center" />
+                            </StackPanel>
+                        </TabItem.Header>
+                    </TabItem>
+                    <TabItem PointerPressed="MoveWindow">
+                        <TabItem.Header>
+                            <StackPanel Orientation="Horizontal">
+                                <Image
+                                    Width="14"
+                                    Height="14"
+                                    Margin="0,0,5,0"
+                                    Source="{StaticResource LanguageImage}" />
+                                <TextBlock
+                                    Classes="txt"
+                                    Text="{Binding Language}"
+                                    TextAlignment="Center" />
+                            </StackPanel>
+                        </TabItem.Header>
+                    </TabItem>
+                    <TabItem PointerPressed="MoveWindow">
+                        <TabItem.Header>
+                            <StackPanel Orientation="Horizontal">
+                                <Image
+                                    Width="14"
+                                    Height="14"
+                                    Margin="0,0,5,0"
+                                    Source="{StaticResource ShortcutsImage}" />
+                                <TextBlock
+                                    Classes="txt"
+                                    Text="{Binding ApplicationShortcuts}"
+                                    TextAlignment="Center" />
+                            </StackPanel>
+                        </TabItem.Header>
+                    </TabItem>
+                </TabControl>
+            </DockPanel>
+        </Border>
+        <Grid PointerPressed="MoveWindow">
+            <ScrollViewer
+                Height="{Binding $parent[StackPanel].Bounds.Height}"
+                Background="{StaticResource NoisyTexture}"
+                IsVisible="{Binding Path=IsSelected, ElementName=GeneralSettingsTabItem}">
+                <views:GeneralSettingsView />
+            </ScrollViewer>
+        </Grid>
+    </StackPanel>
+</Window>

+ 36 - 0
src/PicView.Avalonia.Win32/Views/SettingsWindow.axaml.cs

@@ -0,0 +1,36 @@
+using Avalonia.Controls;
+using Avalonia.Input;
+using Avalonia.Interactivity;
+
+namespace PicView.Avalonia.Win32.Views;
+
+public partial class SettingsWindow : Window
+{
+    public SettingsWindow()
+    {
+        InitializeComponent();
+    }
+
+    private void MoveWindow(object? sender, PointerPressedEventArgs e)
+    {
+        if (VisualRoot is null) { return; }
+
+        var hostWindow = (Window)VisualRoot;
+        hostWindow?.BeginMoveDrag(e);
+    }
+
+    private void Close(object? sender, RoutedEventArgs e)
+    {
+        Close();
+    }
+
+    private void Minimize(object? sender, RoutedEventArgs e)
+    {
+        WindowState = WindowState.Minimized;
+    }
+
+    private void Maximize(object? sender, RoutedEventArgs e)
+    {
+        WindowState = WindowState == WindowState.Maximized ? WindowState.Normal : WindowState.Maximized;
+    }
+}

+ 21 - 0
src/PicView.Avalonia.Win32/Views/WinMainWindow.axaml.cs

@@ -16,6 +16,7 @@ public partial class WinMainWindow : Window
     private bool _nextButtonClicked;
     private bool _prevButtonClicked;
     private ExifWindow? _exifWindow;
+    private SettingsWindow? _settingsWindow;
 
     public WinMainWindow()
     {
@@ -117,6 +118,26 @@ public partial class WinMainWindow : Window
                     }
                     wm.CloseMenuCommand.Execute(null);
                 });
+
+                wm.ShowSettingsWindowCommand = ReactiveCommand.Create(() =>
+                {
+                    if (_settingsWindow is null)
+                    {
+                        _settingsWindow = new SettingsWindow
+                        {
+                            DataContext = wm,
+                            WindowStartupLocation = WindowStartupLocation.Manual,
+                            Position = new PixelPoint(Position.X, Position.Y + (int)Height / 3)
+                        };
+                        _settingsWindow.Show();
+                        _settingsWindow.Closing += (s, e) => _settingsWindow = null;
+                    }
+                    else
+                    {
+                        _settingsWindow.Activate();
+                    }
+                    wm.CloseMenuCommand.Execute(null);
+                });
             });
         };
     }

+ 48 - 0
src/PicView.Avalonia/DarkTheme/Controls/TabItem.axaml

@@ -0,0 +1,48 @@
+<ResourceDictionary
+    xmlns="https://github.com/avaloniaui"
+    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+    x:ClassModifier="internal">
+    <ControlTheme x:Key="{x:Type TabItem}" TargetType="TabItem">
+        <Setter Property="Background" Value="Transparent" />
+        <Setter Property="FontSize" Value="{DynamicResource FontSizeLarge}" />
+        <Setter Property="Foreground" Value="{DynamicResource ThemeForegroundLowBrush}" />
+        <Setter Property="HorizontalContentAlignment" Value="Left" />
+        <Setter Property="Padding" Value="14,9" />
+        <Setter Property="Template">
+            <ControlTemplate>
+                <ContentPresenter
+                    Name="PART_ContentPresenter"
+                    Padding="{TemplateBinding Padding}"
+                    HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
+                    VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
+                    Background="{TemplateBinding Background}"
+                    BorderBrush="{StaticResource MainBorderColor}"
+                    BorderThickness="0,0,1,0"
+                    Content="{TemplateBinding Header}"
+                    ContentTemplate="{TemplateBinding HeaderTemplate}"
+                    CornerRadius="{TemplateBinding CornerRadius}" />
+            </ControlTemplate>
+        </Setter>
+        <Style Selector="^:disabled /template/ ContentPresenter#PART_ContentPresenter">
+            <Setter Property="Opacity" Value="{DynamicResource ThemeDisabledOpacity}" />
+        </Style>
+        <Style Selector="^:pointerover /template/ ContentPresenter#PART_ContentPresenter">
+            <Setter Property="Background" Value="{StaticResource AltBackgroundHoverColor}" />
+        </Style>
+        <Style Selector="^:selected /template/ ContentPresenter#PART_ContentPresenter">
+            <Setter Property="Background" Value="{DynamicResource AccentColor}" />
+        </Style>
+        <Style Selector="^:selected:focus /template/ ContentPresenter#PART_ContentPresenter">
+            <Setter Property="Background" Value="{DynamicResource AccentColor}" />
+        </Style>
+        <Style Selector="^:selected:pointerover /template/ ContentPresenter#PART_ContentPresenter">
+            <Setter Property="Background" Value="{DynamicResource AccentColor}" />
+        </Style>
+        <Style Selector="^:selected:focus:pointerover /template/ ContentPresenter#PART_ContentPresenter">
+            <Setter Property="Background" Value="{DynamicResource AccentColor}" />
+        </Style>
+        <Style Selector="^[TabStripPlacement=Right]">
+            <Setter Property="HorizontalContentAlignment" Value="Right" />
+        </Style>
+    </ControlTheme>
+</ResourceDictionary>

File diff suppressed because it is too large
+ 29 - 0
src/PicView.Avalonia/DarkTheme/Main.axaml


+ 3 - 0
src/PicView.Avalonia/PicView.Avalonia.csproj

@@ -54,6 +54,9 @@
     <Compile Update="Views\ExifView.axaml.cs">
       <DependentUpon>ExifView.axaml</DependentUpon>
     </Compile>
+    <Compile Update="Views\GeneralSettingsView.axaml.cs">
+      <DependentUpon>GeneralSettingsView.axaml</DependentUpon>
+    </Compile>
     <Compile Update="Views\UC\Buttons\StarOutlineButtons.axaml.cs">
       <DependentUpon>StarOutlineButtons.axaml</DependentUpon>
     </Compile>

+ 15 - 8
src/PicView.Avalonia/ViewModels/MainViewModel.cs

@@ -1,11 +1,4 @@
-using System.Diagnostics;
-using System.Globalization;
-using System.IO;
-using System.Reactive;
-using System.Reactive.Disposables;
-using System.Runtime.InteropServices;
-using System.Windows.Input;
-using Avalonia;
+using Avalonia;
 using Avalonia.Controls;
 using Avalonia.Controls.ApplicationLifetimes;
 using Avalonia.Controls.Primitives;
@@ -28,6 +21,12 @@ using PicView.Core.Localization;
 using PicView.Core.Navigation;
 using PicView.Core.ProcessHandling;
 using ReactiveUI;
+using System.Diagnostics;
+using System.Globalization;
+using System.Reactive;
+using System.Reactive.Disposables;
+using System.Runtime.InteropServices;
+using System.Windows.Input;
 
 namespace PicView.Avalonia.ViewModels
 {
@@ -98,6 +97,14 @@ namespace PicView.Avalonia.ViewModels
             set => this.RaiseAndSetIfChanged(ref _showExifWindowCommand, value);
         }
 
+        private ICommand? _showSettingsWindowCommand;
+
+        public ICommand? ShowSettingsWindowCommand
+        {
+            get => _showSettingsWindowCommand;
+            set => this.RaiseAndSetIfChanged(ref _showSettingsWindowCommand, value);
+        }
+
         public ICommand? SetExifRating1Command { get; }
         public ICommand? SetExifRating2Command { get; }
         public ICommand? SetExifRating3Command { get; }

+ 27 - 0
src/PicView.Avalonia/ViewModels/ViewModelBase.cs

@@ -136,6 +136,33 @@ public class ViewModelBase : ReactiveObject
         FileCopyPath = TranslationHelper.GetTranslation("FileCopyPath");
         FileCut = TranslationHelper.GetTranslation("FileCut");
         CtrlToZoom = TranslationHelper.GetTranslation("CtrlToZoom");
+        GeneralSettings = TranslationHelper.GetTranslation("GeneralSettings");
+        UISettings = TranslationHelper.GetTranslation("UISettings");
+        Language = TranslationHelper.GetTranslation("Language");
+    }
+
+    private string? _language;
+
+    public string? Language
+    {
+        get => _language;
+        set => this.RaiseAndSetIfChanged(ref _language, value);
+    }
+
+    private string? _UISettings;
+
+    public string? UISettings
+    {
+        get => _UISettings;
+        set => this.RaiseAndSetIfChanged(ref _UISettings, value);
+    }
+
+    private string? _generalSettings;
+
+    public string? GeneralSettings
+    {
+        get => _generalSettings;
+        set => this.RaiseAndSetIfChanged(ref _generalSettings, value);
     }
 
     private string? _ctrlToZoom;

+ 11 - 0
src/PicView.Avalonia/Views/GeneralSettingsView.axaml

@@ -0,0 +1,11 @@
+<UserControl
+    x:Class="PicView.Avalonia.Views.GeneralSettingsView"
+    xmlns="https://github.com/avaloniaui"
+    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"
+    d:DesignHeight="450"
+    d:DesignWidth="800"
+    mc:Ignorable="d">
+    Welcome to Avalonia!
+</UserControl>

+ 11 - 0
src/PicView.Avalonia/Views/GeneralSettingsView.axaml.cs

@@ -0,0 +1,11 @@
+using Avalonia.Controls;
+
+namespace PicView.Avalonia.Views;
+
+public partial class GeneralSettingsView : UserControl
+{
+    public GeneralSettingsView()
+    {
+        InitializeComponent();
+    }
+}

+ 2 - 8
src/PicView.Avalonia/Views/MainView.axaml

@@ -16,12 +16,6 @@
         -->
         <vm:MainViewModel />
     </Design.DataContext>
-    <UserControl.Resources>
-        <StreamGeometry x:Key="ImageGeometry">
-            M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm32-48h224V288l-23.5-23.5c-4.7-4.7-12.3-4.7-17 0L176 352l-39.5-39.5c-4.7-4.7-12.3-4.7-17 0L80 352v64zm48-240c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48z
-        </StreamGeometry>
-        <StreamGeometry x:Key="CopyGeometry">M384 336H192c-8.8 0-16-7.2-16-16V64c0-8.8 7.2-16 16-16l140.1 0L400 115.9V320c0 8.8-7.2 16-16 16zM192 384H384c35.3 0 64-28.7 64-64V115.9c0-12.7-5.1-24.9-14.1-33.9L366.1 14.1c-9-9-21.2-14.1-33.9-14.1H192c-35.3 0-64 28.7-64 64V320c0 35.3 28.7 64 64 64zM64 128c-35.3 0-64 28.7-64 64V448c0 35.3 28.7 64 64 64H256c35.3 0 64-28.7 64-64V416H272v32c0 8.8-7.2 16-16 16H64c-8.8 0-16-7.2-16-16V192c0-8.8 7.2-16 16-16H96V128H64z</StreamGeometry>
-    </UserControl.Resources>
     <UserControl.ContextMenu>
         <ContextMenu>
             <MenuItem Command="{Binding OpenFileCommand}" Header="{Binding Open}">
@@ -29,7 +23,7 @@
                     <Path
                         Width="15"
                         Height="12.14"
-                        Data="M384 480h48c11.4 0 21.9-6 27.6-15.9l112-192c5.8-9.9 5.8-22.1 .1-32.1S555.5 224 544 224H144c-11.4 0-21.9 6-27.6 15.9L48 357.1V96c0-8.8 7.2-16 16-16H181.5c4.2 0 8.3 1.7 11.3 4.7l26.5 26.5c21 21 49.5 32.8 79.2 32.8H416c8.8 0 16 7.2 16 16v32h48V160c0-35.3-28.7-64-64-64H298.5c-17 0-33.3-6.7-45.3-18.7L226.7 50.7c-12-12-28.3-18.7-45.3-18.7H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H87.7 384z"
+                        Data="{StaticResource AltFolderGeometry}"
                         Fill="{StaticResource MainIconColor}"
                         Stretch="Fill" />
                 </MenuItem.Icon>
@@ -109,7 +103,7 @@
                     <Path
                         Width="12"
                         Height="12"
-                        Data="M393.87 190a32.1 32.1 0 01-45.25 0l-26.57-26.57a32.09 32.09 0 010-45.26L382.19 58a1 1 0 00-.3-1.64c-38.82-16.64-89.15-8.16-121.11 23.57-30.58 30.35-32.32 76-21.12 115.84a31.93 31.93 0 01-9.06 32.08L64 380a48.17 48.17 0 1068 68l153.86-167a31.93 31.93 0 0131.6-9.13c39.54 10.59 84.54 8.6 114.72-21.19 32.49-32 39.5-88.56 23.75-120.93a1 1 0 00-1.6-.26"
+                        Data="{StaticResource WrenchGeometry}"
                         Fill="{StaticResource MainIconColor}"
                         Stretch="Fill" />
                 </MenuItem.Icon>

+ 1 - 1
src/PicView.Avalonia/Views/UC/BottomBar.axaml

@@ -128,7 +128,7 @@
                     <Path
                         Width="18"
                         Height="18"
-                        Data="M413.967,276.8c1.06-6.235,1.06-13.518,1.06-20.8s-1.06-13.518-1.06-20.8l44.667-34.318   c4.26-3.118,5.319-8.317,2.13-13.518L418.215,115.6c-2.129-4.164-8.507-6.235-12.767-4.164l-53.186,20.801   c-10.638-8.318-23.394-15.601-36.16-20.801l-7.448-55.117c-1.06-4.154-5.319-8.318-10.638-8.318h-85.098   c-5.318,0-9.577,4.164-10.637,8.318l-8.508,55.117c-12.767,5.2-24.464,12.482-36.171,20.801l-53.186-20.801   c-5.319-2.071-10.638,0-12.767,4.164l-42.549,71.765c-2.119,4.153-1.061,10.399,2.129,13.518L96.97,235.2   c0,7.282-1.06,13.518-1.06,20.8s1.06,13.518,1.06,20.8l-44.668,34.318c-4.26,3.118-5.318,8.317-2.13,13.518L92.721,396.4   c2.13,4.164,8.508,6.235,12.767,4.164l53.187-20.801c10.637,8.318,23.394,15.601,36.16,20.801l8.508,55.117   c1.069,5.2,5.318,8.318,10.637,8.318h85.098c5.319,0,9.578-4.164,10.638-8.318l8.518-55.117c12.757-5.2,24.464-12.482,36.16-20.801   l53.187,20.801c5.318,2.071,10.637,0,12.767-4.164l42.549-71.765c2.129-4.153,1.06-10.399-2.13-13.518L413.967,276.8z    M255.468,328.8c-41.489,0-74.46-32.235-74.46-72.8s32.971-72.8,74.46-72.8s74.461,32.235,74.461,72.8S296.957,328.8,255.468,328.8   z"
+                        Data="{StaticResource CogGeometry}"
                         Fill="{StaticResource MainIconColor}"
                         Stretch="Fill" />
                 </Button>

+ 1 - 0
src/PicView.Avalonia/Views/UC/Menus/SettingsMenu.axaml

@@ -36,6 +36,7 @@
                     BorderBrush="{StaticResource MainBorderColor}"
                     BorderThickness="0,0,1,0"
                     Classes="noBorderHover"
+                    Command="{Binding ShowSettingsWindowCommand}"
                     CornerRadius="8,0,0,0"
                     ToolTip.Tip="{Binding ShowAllSettingsWindow}">
                     <StackPanel Orientation="Horizontal">

File diff suppressed because it is too large
+ 2 - 23
src/PicView.Avalonia/Views/UC/Menus/ToolsMenu.axaml


Some files were not shown because too many files changed in this diff