add:快捷调色盘
This commit is contained in:
@@ -1227,6 +1227,14 @@
|
||||
Toggled="ToggleSwitchShowHideButton_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="ToggleSwitchShowQuickColorPalette"
|
||||
IsOn="False" FontFamily="Microsoft YaHei UI" FontWeight="Bold"
|
||||
Toggled="ToggleSwitchShowQuickColorPalette_Toggled" />
|
||||
</ui:SimpleStackPanel>
|
||||
|
||||
<ui:SimpleStackPanel Orientation="Horizontal" HorizontalAlignment="Left">
|
||||
<TextBlock Foreground="#fafafa" Text="橡皮按钮显示" VerticalAlignment="Center"
|
||||
FontSize="14" Margin="0,0,16,0" />
|
||||
@@ -6239,6 +6247,200 @@
|
||||
<TextBlock x:Name="PenToolbarTextBlock" Text="批注" Foreground="Black" FontSize="8"
|
||||
Margin="0,1,0,0" TextAlignment="Center" />
|
||||
</ui:SimpleStackPanel>
|
||||
|
||||
<!-- 快捷调色盘 -->
|
||||
<ui:SimpleStackPanel Name="QuickColorPalettePanel"
|
||||
Visibility="Collapsed"
|
||||
Orientation="Horizontal"
|
||||
HorizontalAlignment="Center"
|
||||
Margin="4,0,4,0">
|
||||
<!-- 白色 -->
|
||||
<Border Name="QuickColorWhite"
|
||||
Width="16" Height="16"
|
||||
Background="White"
|
||||
BorderBrush="#CCCCCC"
|
||||
BorderThickness="1"
|
||||
CornerRadius="8"
|
||||
Margin="1,0,1,0"
|
||||
MouseDown="FloatingBarToolBtnMouseDownFeedback_Panel"
|
||||
MouseLeave="FloatingBarToolBtnMouseLeaveFeedback_Panel"
|
||||
MouseUp="QuickColorWhite_Click"
|
||||
ToolTip="白色">
|
||||
<Border.Style>
|
||||
<Style TargetType="Border">
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="BorderThickness" Value="2"/>
|
||||
<Setter Property="BorderBrush" Value="#666666"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Border.Style>
|
||||
<Canvas>
|
||||
<Ellipse Name="QuickColorWhiteIndicator"
|
||||
Width="6" Height="6"
|
||||
Fill="Green"
|
||||
Canvas.Left="5" Canvas.Top="5"
|
||||
Visibility="Collapsed"/>
|
||||
</Canvas>
|
||||
</Border>
|
||||
|
||||
<!-- 橙色 -->
|
||||
<Border Name="QuickColorOrange"
|
||||
Width="16" Height="16"
|
||||
Background="#FFA500"
|
||||
BorderBrush="#CCCCCC"
|
||||
BorderThickness="1"
|
||||
CornerRadius="8"
|
||||
Margin="1,0,1,0"
|
||||
MouseDown="FloatingBarToolBtnMouseDownFeedback_Panel"
|
||||
MouseLeave="FloatingBarToolBtnMouseLeaveFeedback_Panel"
|
||||
MouseUp="QuickColorOrange_Click"
|
||||
ToolTip="橙色">
|
||||
<Border.Style>
|
||||
<Style TargetType="Border">
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="BorderThickness" Value="2"/>
|
||||
<Setter Property="BorderBrush" Value="#666666"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Border.Style>
|
||||
<Canvas>
|
||||
<Ellipse Name="QuickColorOrangeIndicator"
|
||||
Width="6" Height="6"
|
||||
Fill="Green"
|
||||
Canvas.Left="5" Canvas.Top="5"
|
||||
Visibility="Collapsed"/>
|
||||
</Canvas>
|
||||
</Border>
|
||||
|
||||
<!-- 黄色 -->
|
||||
<Border Name="QuickColorYellow"
|
||||
Width="16" Height="16"
|
||||
Background="#FFFF00"
|
||||
BorderBrush="#CCCCCC"
|
||||
BorderThickness="1"
|
||||
CornerRadius="8"
|
||||
Margin="1,0,1,0"
|
||||
MouseDown="FloatingBarToolBtnMouseDownFeedback_Panel"
|
||||
MouseLeave="FloatingBarToolBtnMouseLeaveFeedback_Panel"
|
||||
MouseUp="QuickColorYellow_Click"
|
||||
ToolTip="黄色">
|
||||
<Border.Style>
|
||||
<Style TargetType="Border">
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="BorderThickness" Value="2"/>
|
||||
<Setter Property="BorderBrush" Value="#666666"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Border.Style>
|
||||
<Canvas>
|
||||
<Ellipse Name="QuickColorYellowIndicator"
|
||||
Width="6" Height="6"
|
||||
Fill="Green"
|
||||
Canvas.Left="5" Canvas.Top="5"
|
||||
Visibility="Collapsed"/>
|
||||
</Canvas>
|
||||
</Border>
|
||||
|
||||
<!-- 黑色 -->
|
||||
<Border Name="QuickColorBlack"
|
||||
Width="16" Height="16"
|
||||
Background="Black"
|
||||
BorderBrush="#CCCCCC"
|
||||
BorderThickness="1"
|
||||
CornerRadius="8"
|
||||
Margin="1,0,1,0"
|
||||
MouseDown="FloatingBarToolBtnMouseDownFeedback_Panel"
|
||||
MouseLeave="FloatingBarToolBtnMouseLeaveFeedback_Panel"
|
||||
MouseUp="QuickColorBlack_Click"
|
||||
ToolTip="黑色">
|
||||
<Border.Style>
|
||||
<Style TargetType="Border">
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="BorderThickness" Value="2"/>
|
||||
<Setter Property="BorderBrush" Value="#666666"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Border.Style>
|
||||
<Canvas>
|
||||
<Ellipse Name="QuickColorBlackIndicator"
|
||||
Width="6" Height="6"
|
||||
Fill="Green"
|
||||
Canvas.Left="5" Canvas.Top="5"
|
||||
Visibility="Collapsed"/>
|
||||
</Canvas>
|
||||
</Border>
|
||||
|
||||
<!-- 蓝色 -->
|
||||
<Border Name="QuickColorBlue"
|
||||
Width="16" Height="16"
|
||||
Background="#0066FF"
|
||||
BorderBrush="#CCCCCC"
|
||||
BorderThickness="1"
|
||||
CornerRadius="8"
|
||||
Margin="1,0,1,0"
|
||||
MouseDown="FloatingBarToolBtnMouseDownFeedback_Panel"
|
||||
MouseLeave="FloatingBarToolBtnMouseLeaveFeedback_Panel"
|
||||
MouseUp="QuickColorBlue_Click"
|
||||
ToolTip="蓝色">
|
||||
<Border.Style>
|
||||
<Style TargetType="Border">
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="BorderThickness" Value="2"/>
|
||||
<Setter Property="BorderBrush" Value="#666666"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Border.Style>
|
||||
<Canvas>
|
||||
<Ellipse Name="QuickColorBlueIndicator"
|
||||
Width="6" Height="6"
|
||||
Fill="Green"
|
||||
Canvas.Left="5" Canvas.Top="5"
|
||||
Visibility="Collapsed"/>
|
||||
</Canvas>
|
||||
</Border>
|
||||
|
||||
<!-- 红色 -->
|
||||
<Border Name="QuickColorRed"
|
||||
Width="16" Height="16"
|
||||
Background="#FF0000"
|
||||
BorderBrush="#CCCCCC"
|
||||
BorderThickness="1"
|
||||
CornerRadius="8"
|
||||
Margin="1,0,1,0"
|
||||
MouseDown="FloatingBarToolBtnMouseDownFeedback_Panel"
|
||||
MouseLeave="FloatingBarToolBtnMouseLeaveFeedback_Panel"
|
||||
MouseUp="QuickColorRed_Click"
|
||||
ToolTip="红色">
|
||||
<Border.Style>
|
||||
<Style TargetType="Border">
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsMouseOver" Value="True">
|
||||
<Setter Property="BorderThickness" Value="2"/>
|
||||
<Setter Property="BorderBrush" Value="#666666"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</Border.Style>
|
||||
<Canvas>
|
||||
<Ellipse Name="QuickColorRedIndicator"
|
||||
Width="6" Height="6"
|
||||
Fill="Green"
|
||||
Canvas.Left="5" Canvas.Top="5"
|
||||
Visibility="Collapsed"/>
|
||||
</Canvas>
|
||||
</Border>
|
||||
</ui:SimpleStackPanel>
|
||||
|
||||
<ui:SimpleStackPanel Name="SymbolIconDelete"
|
||||
MouseDown="FloatingBarToolBtnMouseDownFeedback_Panel"
|
||||
MouseLeave="FloatingBarToolBtnMouseLeaveFeedback_Panel"
|
||||
|
||||
@@ -415,6 +415,12 @@ namespace Ink_Canvas
|
||||
BoardHighlighterPenViewboxBtnColorOrangeContent.Visibility = Visibility.Visible;
|
||||
break;
|
||||
}
|
||||
|
||||
// 更新快捷调色盘选择指示器
|
||||
if (penType == 0)
|
||||
{
|
||||
UpdateQuickColorPaletteIndicator(inkCanvas.DefaultDrawingAttributes.Color);
|
||||
}
|
||||
}
|
||||
|
||||
private void CheckLastColor(int inkColor, bool isHighlighter = false)
|
||||
|
||||
@@ -771,17 +771,31 @@ namespace Ink_Canvas
|
||||
|
||||
private void FloatingBarToolBtnMouseDownFeedback_Panel(object sender, MouseButtonEventArgs e)
|
||||
{
|
||||
var s = (Panel)sender;
|
||||
lastBorderMouseDownObject = sender;
|
||||
if (s == SymbolIconDelete) s.Background = new SolidColorBrush(Color.FromArgb(28, 127, 29, 29));
|
||||
else s.Background = new SolidColorBrush(Color.FromArgb(28, 24, 24, 27));
|
||||
if (sender is Panel panel)
|
||||
{
|
||||
lastBorderMouseDownObject = sender;
|
||||
if (panel == SymbolIconDelete) panel.Background = new SolidColorBrush(Color.FromArgb(28, 127, 29, 29));
|
||||
else panel.Background = new SolidColorBrush(Color.FromArgb(28, 24, 24, 27));
|
||||
}
|
||||
else if (sender is Border border)
|
||||
{
|
||||
lastBorderMouseDownObject = sender;
|
||||
border.Background = new SolidColorBrush(Color.FromArgb(28, 24, 24, 27));
|
||||
}
|
||||
}
|
||||
|
||||
private void FloatingBarToolBtnMouseLeaveFeedback_Panel(object sender, MouseEventArgs e)
|
||||
{
|
||||
var s = (Panel)sender;
|
||||
lastBorderMouseDownObject = null;
|
||||
s.Background = new SolidColorBrush(Colors.Transparent);
|
||||
if (sender is Panel panel)
|
||||
{
|
||||
lastBorderMouseDownObject = null;
|
||||
panel.Background = new SolidColorBrush(Colors.Transparent);
|
||||
}
|
||||
else if (sender is Border border)
|
||||
{
|
||||
lastBorderMouseDownObject = null;
|
||||
border.Background = new SolidColorBrush(Colors.Transparent);
|
||||
}
|
||||
}
|
||||
|
||||
private void SymbolIconSettings_Click(object sender, RoutedEventArgs e)
|
||||
@@ -1762,6 +1776,103 @@ namespace Ink_Canvas
|
||||
CursorIcon_Click(null, null);
|
||||
}
|
||||
|
||||
// 快捷调色盘事件处理方法
|
||||
private void QuickColorWhite_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
SetQuickColor(Colors.White);
|
||||
}
|
||||
|
||||
private void QuickColorOrange_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
SetQuickColor(Color.FromRgb(255, 165, 0)); // 橙色
|
||||
}
|
||||
|
||||
private void QuickColorYellow_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
SetQuickColor(Colors.Yellow);
|
||||
}
|
||||
|
||||
private void QuickColorBlack_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
SetQuickColor(Colors.Black);
|
||||
}
|
||||
|
||||
private void QuickColorBlue_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
SetQuickColor(Color.FromRgb(0, 102, 255)); // 蓝色
|
||||
}
|
||||
|
||||
private void QuickColorRed_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
SetQuickColor(Colors.Red);
|
||||
}
|
||||
|
||||
private void SetQuickColor(Color color)
|
||||
{
|
||||
// 确保当前处于批注模式
|
||||
if (inkCanvas.EditingMode != InkCanvasEditingMode.Ink)
|
||||
{
|
||||
PenIcon_Click(null, null);
|
||||
}
|
||||
|
||||
// 设置画笔颜色
|
||||
drawingAttributes.Color = color;
|
||||
inkCanvas.DefaultDrawingAttributes.Color = color;
|
||||
|
||||
// 更新颜色状态
|
||||
if (currentMode == 0)
|
||||
{
|
||||
// 桌面模式
|
||||
if (color == Colors.White) lastDesktopInkColor = 5;
|
||||
else if (color == Color.FromRgb(255, 165, 0)) lastDesktopInkColor = 8; // 橙色
|
||||
else if (color == Colors.Yellow) lastDesktopInkColor = 4;
|
||||
else if (color == Colors.Black) lastDesktopInkColor = 0;
|
||||
else if (color == Color.FromRgb(0, 102, 255)) lastDesktopInkColor = 3; // 蓝色
|
||||
else if (color == Colors.Red) lastDesktopInkColor = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
// 白板模式
|
||||
if (color == Colors.White) lastBoardInkColor = 5;
|
||||
else if (color == Color.FromRgb(255, 165, 0)) lastBoardInkColor = 8; // 橙色
|
||||
else if (color == Colors.Yellow) lastBoardInkColor = 4;
|
||||
else if (color == Colors.Black) lastBoardInkColor = 0;
|
||||
else if (color == Color.FromRgb(0, 102, 255)) lastBoardInkColor = 3; // 蓝色
|
||||
else if (color == Colors.Red) lastBoardInkColor = 1;
|
||||
}
|
||||
|
||||
// 更新快捷调色盘选择指示器
|
||||
UpdateQuickColorPaletteIndicator(color);
|
||||
|
||||
// 更新颜色显示
|
||||
ColorSwitchCheck();
|
||||
}
|
||||
|
||||
private void UpdateQuickColorPaletteIndicator(Color selectedColor)
|
||||
{
|
||||
// 隐藏所有指示器
|
||||
QuickColorWhiteIndicator.Visibility = Visibility.Collapsed;
|
||||
QuickColorOrangeIndicator.Visibility = Visibility.Collapsed;
|
||||
QuickColorYellowIndicator.Visibility = Visibility.Collapsed;
|
||||
QuickColorBlackIndicator.Visibility = Visibility.Collapsed;
|
||||
QuickColorBlueIndicator.Visibility = Visibility.Collapsed;
|
||||
QuickColorRedIndicator.Visibility = Visibility.Collapsed;
|
||||
|
||||
// 显示当前选中颜色的指示器
|
||||
if (selectedColor == Colors.White)
|
||||
QuickColorWhiteIndicator.Visibility = Visibility.Visible;
|
||||
else if (selectedColor == Color.FromRgb(255, 165, 0)) // 橙色
|
||||
QuickColorOrangeIndicator.Visibility = Visibility.Visible;
|
||||
else if (selectedColor == Colors.Yellow)
|
||||
QuickColorYellowIndicator.Visibility = Visibility.Visible;
|
||||
else if (selectedColor == Colors.Black)
|
||||
QuickColorBlackIndicator.Visibility = Visibility.Visible;
|
||||
else if (selectedColor == Color.FromRgb(0, 102, 255)) // 蓝色
|
||||
QuickColorBlueIndicator.Visibility = Visibility.Visible;
|
||||
else if (selectedColor == Colors.Red)
|
||||
QuickColorRedIndicator.Visibility = Visibility.Visible;
|
||||
}
|
||||
|
||||
private void SelectIcon_MouseUp(object sender, RoutedEventArgs e)
|
||||
{
|
||||
// 禁用高级橡皮擦系统
|
||||
|
||||
@@ -1861,6 +1861,7 @@ namespace Ink_Canvas
|
||||
Settings.Appearance.IsShowClearButton = true;
|
||||
Settings.Appearance.IsShowWhiteboardButton = true;
|
||||
Settings.Appearance.IsShowHideButton = true;
|
||||
Settings.Appearance.IsShowQuickColorPalette = false;
|
||||
Settings.Appearance.EraserDisplayOption = 0;
|
||||
|
||||
Settings.Automation.IsAutoFoldInEasiNote = true;
|
||||
@@ -2388,6 +2389,14 @@ namespace Ink_Canvas
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
private void ToggleSwitchShowQuickColorPalette_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
Settings.Appearance.IsShowQuickColorPalette = ToggleSwitchShowQuickColorPalette.IsOn;
|
||||
UpdateFloatingBarButtonsVisibility();
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
private void ComboBoxEraserDisplayOption_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
@@ -2425,6 +2434,10 @@ namespace Ink_Canvas
|
||||
if (Fold_Icon != null)
|
||||
Fold_Icon.Visibility = Settings.Appearance.IsShowHideButton ? Visibility.Visible : Visibility.Collapsed;
|
||||
|
||||
// 快捷调色盘
|
||||
if (QuickColorPalettePanel != null)
|
||||
QuickColorPalettePanel.Visibility = Settings.Appearance.IsShowQuickColorPalette ? Visibility.Visible : Visibility.Collapsed;
|
||||
|
||||
// 橡皮按钮显示控制
|
||||
if (Eraser_Icon != null && EraserByStrokes_Icon != null)
|
||||
{
|
||||
|
||||
@@ -313,8 +313,12 @@ namespace Ink_Canvas
|
||||
ToggleSwitchShowClearButton.IsOn = Settings.Appearance.IsShowClearButton;
|
||||
ToggleSwitchShowWhiteboardButton.IsOn = Settings.Appearance.IsShowWhiteboardButton;
|
||||
ToggleSwitchShowHideButton.IsOn = Settings.Appearance.IsShowHideButton;
|
||||
ToggleSwitchShowQuickColorPalette.IsOn = Settings.Appearance.IsShowQuickColorPalette;
|
||||
ComboBoxEraserDisplayOption.SelectedIndex = Settings.Appearance.EraserDisplayOption;
|
||||
|
||||
// 初始化快捷调色盘指示器
|
||||
UpdateQuickColorPaletteIndicator(inkCanvas.DefaultDrawingAttributes.Color);
|
||||
|
||||
// 应用浮动栏按钮可见性设置
|
||||
UpdateFloatingBarButtonsVisibility();
|
||||
|
||||
|
||||
@@ -210,7 +210,10 @@ namespace Ink_Canvas
|
||||
public bool IsShowHideButton { get; set; } = true;
|
||||
|
||||
[JsonProperty("eraserDisplayOption")]
|
||||
public int EraserDisplayOption { get; set; } = 0;
|
||||
public int EraserDisplayOption { get; set; } = 0;
|
||||
|
||||
[JsonProperty("isShowQuickColorPalette")]
|
||||
public bool IsShowQuickColorPalette { get; set; } = false;
|
||||
}
|
||||
|
||||
public class PowerPointSettings
|
||||
|
||||
Reference in New Issue
Block a user