From 0045f9756964923fe3797715ea7f5ec80ff76734 Mon Sep 17 00:00:00 2001 From: PrefacedCorg <1876568293@qq.com> Date: Mon, 13 Apr 2026 13:33:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Ink Canvas/MainWindow.xaml | 378 +----------------- Ink Canvas/MainWindow_cs/MW_AutoTheme.cs | 20 + .../MainWindow_cs/MW_FloatingBarIcons.cs | 28 +- .../MainWindow_cs/MW_Save&OpenStrokes.cs | 4 +- .../MainWindow_cs/MW_SelectionGestures.cs | 10 +- Ink Canvas/MainWindow_cs/MW_Settings.cs | 4 +- Ink Canvas/MainWindow_cs/MW_SettingsToLoad.cs | 4 +- 7 files changed, 63 insertions(+), 385 deletions(-) diff --git a/Ink Canvas/MainWindow.xaml b/Ink Canvas/MainWindow.xaml index 0590b40f..be02188d 100644 --- a/Ink Canvas/MainWindow.xaml +++ b/Ink Canvas/MainWindow.xaml @@ -6430,192 +6430,21 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + @@ -9161,192 +8990,21 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + diff --git a/Ink Canvas/MainWindow_cs/MW_AutoTheme.cs b/Ink Canvas/MainWindow_cs/MW_AutoTheme.cs index a0476bfa..747654cd 100644 --- a/Ink Canvas/MainWindow_cs/MW_AutoTheme.cs +++ b/Ink Canvas/MainWindow_cs/MW_AutoTheme.cs @@ -168,6 +168,26 @@ namespace Ink_Canvas ToolsFloatingBarBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.ToolsFloatingBarBtnIcon); Fold_Icon.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.FoldIcon); + TimerToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.TimerIconGeometry); + RandomDrawToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.RandomDrawIconGeometry); + SingleDrawToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.SingleDrawIconGeometry); + SaveToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.SaveIconGeometry); + OpenToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.OpenIconGeometry); + ReplayToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.ReplayIconGeometry); + ScreenshotToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.ScreenshotIconGeometry); + ManualToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.ManualIconGeometry); + SettingsToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.SettingsIconGeometry); + + BoardTimerToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.TimerIconGeometry); + BoardRandomDrawToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.RandomDrawIconGeometry); + BoardSingleDrawToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.SingleDrawIconGeometry); + BoardSaveToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.SaveIconGeometry); + BoardOpenToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.OpenIconGeometry); + BoardReplayToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.ReplayIconGeometry); + BoardScreenshotToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.ScreenshotIconGeometry); + BoardManualToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.ManualIconGeometry); + BoardSettingsToolBtn.Icon.Geometry = Geometry.Parse(XamlGraphicsIconGeometries.SettingsIconGeometry); + bool isDarkTheme = IsCurrentThemeDark(); Color selectedColor = isDarkTheme ? Color.FromRgb(102, 204, 255) : Color.FromRgb(30, 58, 138); diff --git a/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs b/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs index 9a644844..0a2525f9 100644 --- a/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs +++ b/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs @@ -1101,8 +1101,8 @@ namespace Ink_Canvas /// 截图图标点击事件处理 /// /// 发送者 - /// 鼠标按钮事件参数 - private async void SymbolIconScreenshot_MouseUp(object sender, MouseButtonEventArgs e) + /// 路由事件参数 + private async void SymbolIconScreenshot_MouseUp(object sender, RoutedEventArgs e) { HideSubPanelsImmediately(); await Task.Delay(50); @@ -1122,8 +1122,8 @@ namespace Ink_Canvas /// 倒计时计时器图标点击事件处理 /// /// 发送者 - /// 鼠标按钮事件参数 - private void ImageCountdownTimer_MouseUp(object sender, MouseButtonEventArgs e) + /// 路由事件参数 + private void ImageCountdownTimer_MouseUp(object sender, RoutedEventArgs e) { LeftUnFoldButtonQuickPanel.Visibility = Visibility.Collapsed; RightUnFoldButtonQuickPanel.Visibility = Visibility.Collapsed; @@ -1176,8 +1176,8 @@ namespace Ink_Canvas /// 操作指南窗口图标点击事件处理 /// /// 发送者 - /// 鼠标按钮事件参数 - private void OperatingGuideWindowIcon_MouseUp(object sender, MouseButtonEventArgs e) + /// 路由事件参数 + private void OperatingGuideWindowIcon_MouseUp(object sender, RoutedEventArgs e) { AnimationsHelper.HideWithSlideAndFade(BorderTools); AnimationsHelper.HideWithSlideAndFade(BoardBorderTools); @@ -1190,11 +1190,11 @@ namespace Ink_Canvas /// 随机点名图标点击事件处理 /// /// 发送者 - /// 鼠标按钮事件参数 - private void SymbolIconRand_MouseUp(object sender, MouseButtonEventArgs e) + /// 路由事件参数 + private void SymbolIconRand_MouseUp(object sender, RoutedEventArgs e) { // 如果控件被隐藏,不处理事件 - if (RandomDrawPanel.Visibility != Visibility.Visible) return; + if (BoardRandomDrawToolBtn.Visibility != Visibility.Visible) return; LeftUnFoldButtonQuickPanel.Visibility = Visibility.Collapsed; RightUnFoldButtonQuickPanel.Visibility = Visibility.Collapsed; @@ -1323,11 +1323,11 @@ namespace Ink_Canvas /// 单次点名图标点击事件处理 /// /// 发送者 - /// 鼠标按钮事件参数 - private void SymbolIconRandOne_MouseUp(object sender, MouseButtonEventArgs e) + /// 路由事件参数 + private void SymbolIconRandOne_MouseUp(object sender, RoutedEventArgs e) { // 如果控件被隐藏,不处理事件 - if (SingleDrawPanel.Visibility != Visibility.Visible) return; + if (BoardSingleDrawToolBtn.Visibility != Visibility.Visible) return; LeftUnFoldButtonQuickPanel.Visibility = Visibility.Collapsed; RightUnFoldButtonQuickPanel.Visibility = Visibility.Collapsed; @@ -1398,8 +1398,8 @@ namespace Ink_Canvas /// 墨迹重播按钮点击事件处理 /// /// 发送者 - /// 鼠标按钮事件参数 - private void GridInkReplayButton_MouseUp(object sender, MouseButtonEventArgs e) + /// 路由事件参数 + private void GridInkReplayButton_MouseUp(object sender, RoutedEventArgs e) { //if (lastBorderMouseDownObject != sender) return; diff --git a/Ink Canvas/MainWindow_cs/MW_Save&OpenStrokes.cs b/Ink Canvas/MainWindow_cs/MW_Save&OpenStrokes.cs index bb42d7c5..e9892ceb 100644 --- a/Ink Canvas/MainWindow_cs/MW_Save&OpenStrokes.cs +++ b/Ink Canvas/MainWindow_cs/MW_Save&OpenStrokes.cs @@ -94,7 +94,7 @@ namespace Ink_Canvas /// 3. 隐藏通知面板 /// 4. 调用SaveInkCanvasStrokes方法保存墨迹 /// - private void SymbolIconSaveStrokes_MouseUp(object sender, MouseButtonEventArgs e) + private void SymbolIconSaveStrokes_MouseUp(object sender, RoutedEventArgs e) { if (lastBorderMouseDownObject != sender || inkCanvas.Visibility != Visibility.Visible) return; @@ -901,7 +901,7 @@ namespace Ink_Canvas /// - 其他:处理单个墨迹文件(二进制格式) /// 5. 如果墨迹画布不可见,切换到鼠标模式 /// - private void SymbolIconOpenStrokes_MouseUp(object sender, MouseButtonEventArgs e) + private void SymbolIconOpenStrokes_MouseUp(object sender, RoutedEventArgs e) { if (lastBorderMouseDownObject != sender) return; AnimationsHelper.HideWithSlideAndFade(BorderTools); diff --git a/Ink Canvas/MainWindow_cs/MW_SelectionGestures.cs b/Ink Canvas/MainWindow_cs/MW_SelectionGestures.cs index 92ee533c..2f2e640e 100644 --- a/Ink Canvas/MainWindow_cs/MW_SelectionGestures.cs +++ b/Ink Canvas/MainWindow_cs/MW_SelectionGestures.cs @@ -29,16 +29,16 @@ namespace Ink_Canvas /// 事件发送者 /// 鼠标按钮事件参数 /// - /// 如果发送者是 RandomDrawPanel 或 SingleDrawPanel,且它们被隐藏,则不处理事件 + /// 如果发送者是 BoardRandomDrawToolBtn 或 BoardSingleDrawToolBtn,且它们被隐藏,则不处理事件 /// 否则存储当前鼠标按下的对象 /// private void Border_MouseDown(object sender, MouseButtonEventArgs e) { - // 如果发送者是 RandomDrawPanel 或 SingleDrawPanel,且它们被隐藏,则不处理事件 - if (sender is SimpleStackPanel panel) + // 如果发送者是 BoardRandomDrawToolBtn 或 BoardSingleDrawToolBtn,且它们被隐藏,则不处理事件 + if (sender is FrameworkElement element) { - if ((panel == RandomDrawPanel || panel == SingleDrawPanel) && - panel.Visibility != Visibility.Visible) + if ((element == BoardRandomDrawToolBtn || element == BoardSingleDrawToolBtn) && + element.Visibility != Visibility.Visible) { return; } diff --git a/Ink Canvas/MainWindow_cs/MW_Settings.cs b/Ink Canvas/MainWindow_cs/MW_Settings.cs index e150e1c0..7c3207a4 100644 --- a/Ink Canvas/MainWindow_cs/MW_Settings.cs +++ b/Ink Canvas/MainWindow_cs/MW_Settings.cs @@ -4675,8 +4675,8 @@ namespace Ink_Canvas Settings.RandSettings.ShowRandomAndSingleDraw = isToggled; // 更新UI显示 - RandomDrawPanel.Visibility = isToggled ? Visibility.Visible : Visibility.Collapsed; - SingleDrawPanel.Visibility = isToggled ? Visibility.Visible : Visibility.Collapsed; + BoardRandomDrawToolBtn.Visibility = isToggled ? Visibility.Visible : Visibility.Collapsed; + BoardSingleDrawToolBtn.Visibility = isToggled ? Visibility.Visible : Visibility.Collapsed; // 保存设置到文件 SaveSettingsToFile(); diff --git a/Ink Canvas/MainWindow_cs/MW_SettingsToLoad.cs b/Ink Canvas/MainWindow_cs/MW_SettingsToLoad.cs index cc1cb82e..7ca4aea2 100644 --- a/Ink Canvas/MainWindow_cs/MW_SettingsToLoad.cs +++ b/Ink Canvas/MainWindow_cs/MW_SettingsToLoad.cs @@ -1100,8 +1100,8 @@ namespace Ink_Canvas ToggleSwitchEnableQuickDraw.IsOn = Settings.RandSettings.EnableQuickDraw; ToggleSwitchExternalCaller.IsOn = Settings.RandSettings.DirectCallCiRand; ComboBoxExternalCallerType.SelectedIndex = Settings.RandSettings.ExternalCallerType; - RandomDrawPanel.Visibility = Settings.RandSettings.ShowRandomAndSingleDraw ? Visibility.Visible : Visibility.Collapsed; - SingleDrawPanel.Visibility = Settings.RandSettings.ShowRandomAndSingleDraw ? Visibility.Visible : Visibility.Collapsed; + BoardRandomDrawToolBtn.Visibility = Settings.RandSettings.ShowRandomAndSingleDraw ? Visibility.Visible : Visibility.Collapsed; + BoardSingleDrawToolBtn.Visibility = Settings.RandSettings.ShowRandomAndSingleDraw ? Visibility.Visible : Visibility.Collapsed; // 计时器设置 ToggleSwitchUseLegacyTimerUI.IsOn = Settings.RandSettings.UseLegacyTimerUI;