add:按钮显示控制

This commit is contained in:
2025-08-11 22:42:36 +08:00
parent 6b5a375542
commit 152be89860
6 changed files with 228 additions and 59 deletions
+154 -42
View File
@@ -1227,6 +1227,22 @@
Toggled="ToggleSwitchShowHideButton_Toggled" /> Toggled="ToggleSwitchShowHideButton_Toggled" />
</ui:SimpleStackPanel> </ui:SimpleStackPanel>
<ui:SimpleStackPanel Orientation="Horizontal" HorizontalAlignment="Left">
<TextBlock Foreground="#fafafa" Text="显示套索选择按钮" VerticalAlignment="Center"
FontSize="14" Margin="0,0,16,0" />
<ui:ToggleSwitch OnContent="" OffContent="" Name="ToggleSwitchShowLassoSelectButton"
IsOn="True" FontFamily="Microsoft YaHei UI" FontWeight="Bold"
Toggled="ToggleSwitchShowLassoSelectButton_Toggled" />
</ui:SimpleStackPanel>
<ui:SimpleStackPanel Orientation="Horizontal" HorizontalAlignment="Left">
<TextBlock Foreground="#fafafa" Text="显示清并鼠按钮" VerticalAlignment="Center"
FontSize="14" Margin="0,0,16,0" />
<ui:ToggleSwitch OnContent="" OffContent="" Name="ToggleSwitchShowClearAndMouseButton"
IsOn="True" FontFamily="Microsoft YaHei UI" FontWeight="Bold"
Toggled="ToggleSwitchShowClearAndMouseButton_Toggled" />
</ui:SimpleStackPanel>
<ui:SimpleStackPanel Orientation="Horizontal" HorizontalAlignment="Left"> <ui:SimpleStackPanel Orientation="Horizontal" HorizontalAlignment="Left">
<TextBlock Foreground="#fafafa" Text="显示快捷调色盘" VerticalAlignment="Center" <TextBlock Foreground="#fafafa" Text="显示快捷调色盘" VerticalAlignment="Center"
FontSize="14" Margin="0,0,16,0" /> FontSize="14" Margin="0,0,16,0" />
@@ -6276,13 +6292,29 @@
</Style.Triggers> </Style.Triggers>
</Style> </Style>
</Border.Style> </Border.Style>
<Canvas> <!-- 高光效果容器 -->
<Ellipse Name="QuickColorWhiteIndicator" <Grid>
Width="6" Height="6" <!-- 高光效果 -->
Fill="Green" <Ellipse Name="QuickColorWhiteGlow"
Canvas.Left="5" Canvas.Top="5" Width="22" Height="22"
Visibility="Collapsed"/> Fill="Transparent"
</Canvas> Stroke="White"
StrokeThickness="3"
Opacity="1.0"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
<!-- 外圈阴影效果 -->
<Ellipse Name="QuickColorWhiteGlowShadow"
Width="24" Height="24"
Fill="Transparent"
Stroke="#FFD700"
StrokeThickness="1"
Opacity="0.8"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
</Border> </Border>
<!-- 橙色 --> <!-- 橙色 -->
@@ -6307,13 +6339,29 @@
</Style.Triggers> </Style.Triggers>
</Style> </Style>
</Border.Style> </Border.Style>
<Canvas> <!-- 高光效果容器 -->
<Ellipse Name="QuickColorOrangeIndicator" <Grid>
Width="6" Height="6" <!-- 高光效果 -->
Fill="Green" <Ellipse Name="QuickColorOrangeGlow"
Canvas.Left="5" Canvas.Top="5" Width="22" Height="22"
Visibility="Collapsed"/> Fill="Transparent"
</Canvas> Stroke="White"
StrokeThickness="3"
Opacity="1.0"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
<!-- 外圈阴影效果 -->
<Ellipse Name="QuickColorOrangeGlowShadow"
Width="24" Height="24"
Fill="Transparent"
Stroke="#FFD700"
StrokeThickness="1"
Opacity="0.8"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
</Border> </Border>
<!-- 黄色 --> <!-- 黄色 -->
@@ -6338,13 +6386,29 @@
</Style.Triggers> </Style.Triggers>
</Style> </Style>
</Border.Style> </Border.Style>
<Canvas> <!-- 高光效果容器 -->
<Ellipse Name="QuickColorYellowIndicator" <Grid>
Width="6" Height="6" <!-- 高光效果 -->
Fill="Green" <Ellipse Name="QuickColorYellowGlow"
Canvas.Left="5" Canvas.Top="5" Width="22" Height="22"
Visibility="Collapsed"/> Fill="Transparent"
</Canvas> Stroke="White"
StrokeThickness="3"
Opacity="1.0"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
<!-- 外圈阴影效果 -->
<Ellipse Name="QuickColorYellowGlowShadow"
Width="24" Height="24"
Fill="Transparent"
Stroke="#FFD700"
StrokeThickness="1"
Opacity="0.8"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
</Border> </Border>
<!-- 黑色 --> <!-- 黑色 -->
@@ -6369,13 +6433,29 @@
</Style.Triggers> </Style.Triggers>
</Style> </Style>
</Border.Style> </Border.Style>
<Canvas> <!-- 高光效果容器 -->
<Ellipse Name="QuickColorBlackIndicator" <Grid>
Width="6" Height="6" <!-- 高光效果 -->
Fill="Green" <Ellipse Name="QuickColorBlackGlow"
Canvas.Left="5" Canvas.Top="5" Width="22" Height="22"
Visibility="Collapsed"/> Fill="Transparent"
</Canvas> Stroke="White"
StrokeThickness="3"
Opacity="1.0"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
<!-- 外圈阴影效果 -->
<Ellipse Name="QuickColorBlackGlowShadow"
Width="24" Height="24"
Fill="Transparent"
Stroke="#FFD700"
StrokeThickness="1"
Opacity="0.8"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
</Border> </Border>
<!-- 蓝色 --> <!-- 蓝色 -->
@@ -6400,13 +6480,29 @@
</Style.Triggers> </Style.Triggers>
</Style> </Style>
</Border.Style> </Border.Style>
<Canvas> <!-- 高光效果容器 -->
<Ellipse Name="QuickColorBlueIndicator" <Grid>
Width="6" Height="6" <!-- 高光效果 -->
Fill="Green" <Ellipse Name="QuickColorBlueGlow"
Canvas.Left="5" Canvas.Top="5" Width="22" Height="22"
Visibility="Collapsed"/> Fill="Transparent"
</Canvas> Stroke="White"
StrokeThickness="3"
Opacity="1.0"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
<!-- 外圈阴影效果 -->
<Ellipse Name="QuickColorBlueGlowShadow"
Width="24" Height="24"
Fill="Transparent"
Stroke="#FFD700"
StrokeThickness="1"
Opacity="0.8"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
</Border> </Border>
<!-- 红色 --> <!-- 红色 -->
@@ -6431,13 +6527,29 @@
</Style.Triggers> </Style.Triggers>
</Style> </Style>
</Border.Style> </Border.Style>
<Canvas> <!-- 高光效果容器 -->
<Ellipse Name="QuickColorRedIndicator" <Grid>
Width="6" Height="6" <!-- 高光效果 -->
Fill="Green" <Ellipse Name="QuickColorRedGlow"
Canvas.Left="5" Canvas.Top="5" Width="22" Height="22"
Visibility="Collapsed"/> Fill="Transparent"
</Canvas> Stroke="White"
StrokeThickness="3"
Opacity="1.0"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
<!-- 外圈阴影效果 -->
<Ellipse Name="QuickColorRedGlowShadow"
Width="24" Height="24"
Fill="Transparent"
Stroke="#FFD700"
StrokeThickness="1"
Opacity="0.8"
Visibility="Collapsed"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
</Border> </Border>
</ui:SimpleStackPanel> </ui:SimpleStackPanel>
+38 -14
View File
@@ -1892,37 +1892,61 @@ namespace Ink_Canvas
private void UpdateQuickColorPaletteIndicator(Color selectedColor) private void UpdateQuickColorPaletteIndicator(Color selectedColor)
{ {
// 隐藏所有指示器 // 隐藏所有高光效果和外圈阴影
QuickColorWhiteIndicator.Visibility = Visibility.Collapsed; QuickColorWhiteGlow.Visibility = Visibility.Collapsed;
QuickColorOrangeIndicator.Visibility = Visibility.Collapsed; QuickColorWhiteGlowShadow.Visibility = Visibility.Collapsed;
QuickColorYellowIndicator.Visibility = Visibility.Collapsed; QuickColorOrangeGlow.Visibility = Visibility.Collapsed;
QuickColorBlackIndicator.Visibility = Visibility.Collapsed; QuickColorOrangeGlowShadow.Visibility = Visibility.Collapsed;
QuickColorBlueIndicator.Visibility = Visibility.Collapsed; QuickColorYellowGlow.Visibility = Visibility.Collapsed;
QuickColorRedIndicator.Visibility = Visibility.Collapsed; QuickColorYellowGlowShadow.Visibility = Visibility.Collapsed;
QuickColorBlackGlow.Visibility = Visibility.Collapsed;
QuickColorBlackGlowShadow.Visibility = Visibility.Collapsed;
QuickColorBlueGlow.Visibility = Visibility.Collapsed;
QuickColorBlueGlowShadow.Visibility = Visibility.Collapsed;
QuickColorRedGlow.Visibility = Visibility.Collapsed;
QuickColorRedGlowShadow.Visibility = Visibility.Collapsed;
// 显示当前选中颜色的指示器 // 显示当前选中颜色的高光效果和外圈阴影
// 使用更精确的颜色匹配,减少容差范围避免误判 // 使用更精确的颜色匹配,减少容差范围避免误判
if (IsColorSimilar(selectedColor, Colors.White, 10) || IsColorSimilar(selectedColor, Color.FromRgb(250, 250, 250), 10)) if (IsColorSimilar(selectedColor, Colors.White, 10) || IsColorSimilar(selectedColor, Color.FromRgb(250, 250, 250), 10))
QuickColorWhiteIndicator.Visibility = Visibility.Visible; {
QuickColorWhiteGlow.Visibility = Visibility.Visible;
QuickColorWhiteGlowShadow.Visibility = Visibility.Visible;
}
else if (IsColorSimilar(selectedColor, Colors.Black, 10)) else if (IsColorSimilar(selectedColor, Colors.Black, 10))
QuickColorBlackIndicator.Visibility = Visibility.Visible; {
QuickColorBlackGlow.Visibility = Visibility.Visible;
QuickColorBlackGlowShadow.Visibility = Visibility.Visible;
}
else if (IsColorSimilar(selectedColor, Colors.Yellow, 15) || else if (IsColorSimilar(selectedColor, Colors.Yellow, 15) ||
IsColorSimilar(selectedColor, Color.FromRgb(234, 179, 8), 15) || IsColorSimilar(selectedColor, Color.FromRgb(234, 179, 8), 15) ||
IsColorSimilar(selectedColor, Color.FromRgb(250, 204, 21), 15) || IsColorSimilar(selectedColor, Color.FromRgb(250, 204, 21), 15) ||
IsColorSimilar(selectedColor, Color.FromRgb(253, 224, 71), 15)) IsColorSimilar(selectedColor, Color.FromRgb(253, 224, 71), 15))
QuickColorYellowIndicator.Visibility = Visibility.Visible; {
QuickColorYellowGlow.Visibility = Visibility.Visible;
QuickColorYellowGlowShadow.Visibility = Visibility.Visible;
}
else if (IsColorSimilar(selectedColor, Color.FromRgb(255, 165, 0), 15) || else if (IsColorSimilar(selectedColor, Color.FromRgb(255, 165, 0), 15) ||
IsColorSimilar(selectedColor, Color.FromRgb(249, 115, 22), 15) || IsColorSimilar(selectedColor, Color.FromRgb(249, 115, 22), 15) ||
IsColorSimilar(selectedColor, Color.FromRgb(234, 88, 12), 15)) IsColorSimilar(selectedColor, Color.FromRgb(234, 88, 12), 15))
QuickColorOrangeIndicator.Visibility = Visibility.Visible; {
QuickColorOrangeGlow.Visibility = Visibility.Visible;
QuickColorOrangeGlowShadow.Visibility = Visibility.Visible;
}
else if (IsColorSimilar(selectedColor, Color.FromRgb(0, 102, 255), 15) || else if (IsColorSimilar(selectedColor, Color.FromRgb(0, 102, 255), 15) ||
IsColorSimilar(selectedColor, Color.FromRgb(37, 99, 235), 15) || IsColorSimilar(selectedColor, Color.FromRgb(37, 99, 235), 15) ||
IsColorSimilar(selectedColor, Color.FromRgb(59, 130, 246), 15)) IsColorSimilar(selectedColor, Color.FromRgb(59, 130, 246), 15))
QuickColorBlueIndicator.Visibility = Visibility.Visible; {
QuickColorBlueGlow.Visibility = Visibility.Visible;
QuickColorBlueGlowShadow.Visibility = Visibility.Visible;
}
else if (IsColorSimilar(selectedColor, Colors.Red, 15) || else if (IsColorSimilar(selectedColor, Colors.Red, 15) ||
IsColorSimilar(selectedColor, Color.FromRgb(220, 38, 38), 15) || IsColorSimilar(selectedColor, Color.FromRgb(220, 38, 38), 15) ||
IsColorSimilar(selectedColor, Color.FromRgb(239, 68, 68), 15)) IsColorSimilar(selectedColor, Color.FromRgb(239, 68, 68), 15))
QuickColorRedIndicator.Visibility = Visibility.Visible; {
QuickColorRedGlow.Visibility = Visibility.Visible;
QuickColorRedGlowShadow.Visibility = Visibility.Visible;
}
} }
/// <summary> /// <summary>
+26
View File
@@ -1861,6 +1861,8 @@ namespace Ink_Canvas
Settings.Appearance.IsShowClearButton = true; Settings.Appearance.IsShowClearButton = true;
Settings.Appearance.IsShowWhiteboardButton = true; Settings.Appearance.IsShowWhiteboardButton = true;
Settings.Appearance.IsShowHideButton = true; Settings.Appearance.IsShowHideButton = true;
Settings.Appearance.IsShowLassoSelectButton = true;
Settings.Appearance.IsShowClearAndMouseButton = true;
Settings.Appearance.IsShowQuickColorPalette = false; Settings.Appearance.IsShowQuickColorPalette = false;
Settings.Appearance.EraserDisplayOption = 0; Settings.Appearance.EraserDisplayOption = 0;
@@ -2381,6 +2383,22 @@ namespace Ink_Canvas
SaveSettingsToFile(); SaveSettingsToFile();
} }
private void ToggleSwitchShowLassoSelectButton_Toggled(object sender, RoutedEventArgs e)
{
if (!isLoaded) return;
Settings.Appearance.IsShowLassoSelectButton = ToggleSwitchShowLassoSelectButton.IsOn;
UpdateFloatingBarButtonsVisibility();
SaveSettingsToFile();
}
private void ToggleSwitchShowClearAndMouseButton_Toggled(object sender, RoutedEventArgs e)
{
if (!isLoaded) return;
Settings.Appearance.IsShowClearAndMouseButton = ToggleSwitchShowClearAndMouseButton.IsOn;
UpdateFloatingBarButtonsVisibility();
SaveSettingsToFile();
}
private void ToggleSwitchShowHideButton_Toggled(object sender, RoutedEventArgs e) private void ToggleSwitchShowHideButton_Toggled(object sender, RoutedEventArgs e)
{ {
if (!isLoaded) return; if (!isLoaded) return;
@@ -2438,6 +2456,14 @@ namespace Ink_Canvas
if (QuickColorPalettePanel != null) if (QuickColorPalettePanel != null)
QuickColorPalettePanel.Visibility = Settings.Appearance.IsShowQuickColorPalette ? Visibility.Visible : Visibility.Collapsed; QuickColorPalettePanel.Visibility = Settings.Appearance.IsShowQuickColorPalette ? Visibility.Visible : Visibility.Collapsed;
// 套索选择按钮
if (SymbolIconSelect != null)
SymbolIconSelect.Visibility = Settings.Appearance.IsShowLassoSelectButton ? Visibility.Visible : Visibility.Collapsed;
// 清并鼠按钮
if (CursorWithDelFloatingBarBtn != null)
CursorWithDelFloatingBarBtn.Visibility = Settings.Appearance.IsShowClearAndMouseButton ? Visibility.Visible : Visibility.Collapsed;
// 橡皮按钮显示控制 // 橡皮按钮显示控制
if (Eraser_Icon != null && EraserByStrokes_Icon != null) if (Eraser_Icon != null && EraserByStrokes_Icon != null)
{ {
@@ -314,6 +314,8 @@ namespace Ink_Canvas
ToggleSwitchShowWhiteboardButton.IsOn = Settings.Appearance.IsShowWhiteboardButton; ToggleSwitchShowWhiteboardButton.IsOn = Settings.Appearance.IsShowWhiteboardButton;
ToggleSwitchShowHideButton.IsOn = Settings.Appearance.IsShowHideButton; ToggleSwitchShowHideButton.IsOn = Settings.Appearance.IsShowHideButton;
ToggleSwitchShowQuickColorPalette.IsOn = Settings.Appearance.IsShowQuickColorPalette; ToggleSwitchShowQuickColorPalette.IsOn = Settings.Appearance.IsShowQuickColorPalette;
ToggleSwitchShowLassoSelectButton.IsOn = Settings.Appearance.IsShowLassoSelectButton;
ToggleSwitchShowClearAndMouseButton.IsOn = Settings.Appearance.IsShowClearAndMouseButton;
ComboBoxEraserDisplayOption.SelectedIndex = Settings.Appearance.EraserDisplayOption; ComboBoxEraserDisplayOption.SelectedIndex = Settings.Appearance.EraserDisplayOption;
// 初始化快捷调色盘指示器 // 初始化快捷调色盘指示器
+8 -3
View File
@@ -207,13 +207,18 @@ namespace Ink_Canvas
[JsonProperty("isShowWhiteboardButton")] [JsonProperty("isShowWhiteboardButton")]
public bool IsShowWhiteboardButton { get; set; } = true; public bool IsShowWhiteboardButton { get; set; } = true;
[JsonProperty("isShowHideButton")] [JsonProperty("isShowHideButton")]
public bool IsShowHideButton { get; set; } = true; public bool IsShowHideButton { get; set; } = true;
[JsonProperty("isShowLassoSelectButton")]
public bool IsShowLassoSelectButton { get; set; } = true;
[JsonProperty("isShowClearAndMouseButton")]
public bool IsShowClearAndMouseButton { get; set; } = true;
[JsonProperty("eraserDisplayOption")] [JsonProperty("eraserDisplayOption")]
public int EraserDisplayOption { get; set; } = 0; public int EraserDisplayOption { get; set; } = 0;
[JsonProperty("isShowQuickColorPalette")] [JsonProperty("isShowQuickColorPalette")]
public bool IsShowQuickColorPalette { get; set; } = false; public bool IsShowQuickColorPalette { get; set; } = false;
} }
public class PowerPointSettings public class PowerPointSettings