[fix] 修復鼠標的形狀繪製Bug

This commit is contained in:
Dubi906w 2024-05-05 13:11:40 +08:00
parent 58af55147b
commit 0b798cea4f
8 changed files with 245 additions and 58 deletions

View File

@ -632,5 +632,9 @@
<ItemGroup> <ItemGroup>
<Resource Include="Resources\Icons-Fluent\party.png" /> <Resource Include="Resources\Icons-Fluent\party.png" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Resource Include="Resources\new-icons\redo.png" />
<Resource Include="Resources\new-icons\undo.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project> </Project>

View File

@ -1867,12 +1867,12 @@
</ui:SimpleStackPanel> </ui:SimpleStackPanel>
</Border> </Border>
</Grid> </Grid>
<ui:SimpleStackPanel MouseDown="Border_MouseDown" MouseUp="SymbolIconUndo_MouseUp" Background="Transparent" Orientation="Vertical" HorizontalAlignment="Center" Margin="0,-2" IsEnabled="{Binding ElementName=BtnUndo, Path=IsEnabled}" Width="28"> <ui:SimpleStackPanel MouseLeave="FloatingBarIcons_MouseUp_MouseLeave" MouseDown="FloatingBarIcons_MouseDown_New" MouseUp="SymbolIconUndo_MouseUp" IsHitTestVisible="{Binding ElementName=BtnUndo, Path=IsEnabled}" Background="Transparent" Orientation="Vertical" HorizontalAlignment="Center" Margin="0,-2" IsEnabled="{Binding ElementName=BtnUndo, Path=IsEnabled}" Width="28">
<Image Source="/Resources/Icons-png/undo.png" RenderOptions.BitmapScalingMode="HighQuality" Width="28" Opacity="{Binding ElementName=BtnUndo, Path=IsEnabled, Converter={StaticResource IsEnabledToOpacityConverter}}" Height="17" Margin="0,3,0,0"/> <Image Source="/Resources/new-icons/undo.png" RenderOptions.BitmapScalingMode="HighQuality" Width="28" Opacity="{Binding ElementName=BtnUndo, Path=IsEnabled, Converter={StaticResource IsEnabledToOpacityConverter}}" Height="17" Margin="0,3,0,0"/>
<TextBlock x:Name="UndoToolbarTextBlock" Text="撤销" Opacity="{Binding ElementName=BtnUndo, Path=IsEnabled, Converter={StaticResource IsEnabledToOpacityConverter}}" Foreground="Black" FontSize="8" Margin="0,1,0,0" TextAlignment="Center"/> <TextBlock x:Name="UndoToolbarTextBlock" Text="撤销" Opacity="{Binding ElementName=BtnUndo, Path=IsEnabled, Converter={StaticResource IsEnabledToOpacityConverter}}" Foreground="Black" FontSize="8" Margin="0,1,0,0" TextAlignment="Center"/>
</ui:SimpleStackPanel> </ui:SimpleStackPanel>
<ui:SimpleStackPanel MouseDown="Border_MouseDown" MouseUp="SymbolIconRedo_MouseUp" Background="Transparent" Orientation="Vertical" HorizontalAlignment="Center" IsEnabled="{Binding ElementName=BtnRedo, Path=IsEnabled}" Width="28" Margin="0,-2"> <ui:SimpleStackPanel MouseLeave="FloatingBarIcons_MouseUp_MouseLeave" MouseDown="FloatingBarIcons_MouseDown_New" MouseUp="SymbolIconRedo_MouseUp" IsHitTestVisible="{Binding ElementName=BtnUndo, Path=IsEnabled}" Background="Transparent" Orientation="Vertical" HorizontalAlignment="Center" IsEnabled="{Binding ElementName=BtnRedo, Path=IsEnabled}" Width="28" Margin="0,-2">
<Image Source="/Resources/Icons-png/redo.png" RenderOptions.BitmapScalingMode="HighQuality" Width="28" Opacity="{Binding ElementName=BtnRedo, Path=IsEnabled, Converter={StaticResource IsEnabledToOpacityConverter}}" Height="17" Margin="0,3,0,0"/> <Image Source="/Resources/new-icons/redo.png" RenderOptions.BitmapScalingMode="HighQuality" Width="28" Opacity="{Binding ElementName=BtnRedo, Path=IsEnabled, Converter={StaticResource IsEnabledToOpacityConverter}}" Height="17" Margin="0,3,0,0"/>
<TextBlock x:Name="RedoToolbarTextBlock" Text="重做" Opacity="{Binding ElementName=BtnRedo, Path=IsEnabled, Converter={StaticResource IsEnabledToOpacityConverter}}" Foreground="Black" FontSize="8" Margin="0,1,0,0" TextAlignment="Center"/> <TextBlock x:Name="RedoToolbarTextBlock" Text="重做" Opacity="{Binding ElementName=BtnRedo, Path=IsEnabled, Converter={StaticResource IsEnabledToOpacityConverter}}" Foreground="Black" FontSize="8" Margin="0,1,0,0" TextAlignment="Center"/>
</ui:SimpleStackPanel> </ui:SimpleStackPanel>
<ui:SimpleStackPanel MouseLeave="FloatingBarIcons_MouseUp_MouseLeave" MouseDown="FloatingBarIcons_MouseDown_New" MouseUp="CursorWithDelIcon_Click" <ui:SimpleStackPanel MouseLeave="FloatingBarIcons_MouseUp_MouseLeave" MouseDown="FloatingBarIcons_MouseDown_New" MouseUp="CursorWithDelIcon_Click"

View File

@ -309,6 +309,7 @@ namespace Ink_Canvas {
private void SymbolIconUndo_MouseUp(object sender, MouseButtonEventArgs e) { private void SymbolIconUndo_MouseUp(object sender, MouseButtonEventArgs e) {
if (lastBorderMouseDownObject != sender) return; if (lastBorderMouseDownObject != sender) return;
FloatingBarIcons_MouseUp_New(sender);
if (!BtnUndo.IsEnabled) return; if (!BtnUndo.IsEnabled) return;
BtnUndo_Click(BtnUndo, null); BtnUndo_Click(BtnUndo, null);
HideSubPanels(); HideSubPanels();
@ -316,6 +317,7 @@ namespace Ink_Canvas {
private void SymbolIconRedo_MouseUp(object sender, MouseButtonEventArgs e) { private void SymbolIconRedo_MouseUp(object sender, MouseButtonEventArgs e) {
if (lastBorderMouseDownObject != sender) return; if (lastBorderMouseDownObject != sender) return;
FloatingBarIcons_MouseUp_New(sender);
if (!BtnRedo.IsEnabled) return; if (!BtnRedo.IsEnabled) return;
BtnRedo_Click(BtnRedo, null); BtnRedo_Click(BtnRedo, null);
HideSubPanels(); HideSubPanels();

View File

@ -91,7 +91,7 @@ namespace Ink_Canvas {
private void KeyDrawLine(object sender, ExecutedRoutedEventArgs e) { private void KeyDrawLine(object sender, ExecutedRoutedEventArgs e) {
if (StackPanelCanvasControls.Visibility == Visibility.Visible) { if (StackPanelCanvasControls.Visibility == Visibility.Visible) {
BtnDrawLine_Click(lastMouseDownSender, e); BtnDrawLine_Click(lastMouseDownSender, null);
} }
} }

View File

@ -27,9 +27,15 @@ namespace Ink_Canvas {
if ((ssp.Name == "Pen_Icon" && inkCanvas.EditingMode == InkCanvasEditingMode.Ink) || (ssp.Name == "Eraser_Icon" && inkCanvas.EditingMode == InkCanvasEditingMode.EraseByPoint) || (ssp.Name == "EraserByStrokes_Icon" && inkCanvas.EditingMode == InkCanvasEditingMode.EraseByStroke) || (ssp.Name == "SymbolIconSelect" && inkCanvas.EditingMode == InkCanvasEditingMode.Select)) if ((ssp.Name == "Pen_Icon" && inkCanvas.EditingMode == InkCanvasEditingMode.Ink) || (ssp.Name == "Eraser_Icon" && inkCanvas.EditingMode == InkCanvasEditingMode.EraseByPoint) || (ssp.Name == "EraserByStrokes_Icon" && inkCanvas.EditingMode == InkCanvasEditingMode.EraseByStroke) || (ssp.Name == "SymbolIconSelect" && inkCanvas.EditingMode == InkCanvasEditingMode.Select))
{ {
ssp.Background = new ImageBrush(new BitmapImage(new Uri("pack://application:,,,/Resources/Icons-png/check-box-background.png"))) { Opacity = 1 }; ssp.Background = new ImageBrush(new BitmapImage(new Uri("pack://application:,,,/Resources/Icons-png/check-box-background.png"))) { Opacity = 1 };
} else }
else if (ssp.Name == "SymbolIconDelete")
{ {
ssp.Background = new ImageBrush(new BitmapImage(new Uri("pack://application:,,,/Resources/Icons-png/pressdown-background.png"))) { Opacity = 1 }; ssp.Background = new SolidColorBrush(Color.FromArgb(26, 153, 27, 27));
}
else
{
// ssp.Background = new ImageBrush(new BitmapImage(new Uri("pack://application:,,,/Resources/Icons-png/pressdown-background.png"))) { Opacity = 1 };
ssp.Background = new SolidColorBrush(Color.FromArgb(20, 0,0,0));
} }
} }
} }

View File

@ -89,14 +89,21 @@ namespace Ink_Canvas {
isLongPressSelected = false; isLongPressSelected = false;
} }
private void BtnDrawLine_Click(object sender, EventArgs e) { private void BtnDrawLine_Click(object sender, MouseButtonEventArgs e) {
if (lastMouseDownSender == sender) { if (lastMouseDownSender == sender) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 1; drawingShapeMode = 1;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e == null || e.StylusDevice == null)
{ // e == null: 快捷键 alt + L
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
} }
}
lastMouseDownSender = null; lastMouseDownSender = null;
if (isLongPressSelected) { if (isLongPressSelected) {
if (ToggleSwitchDrawShapeBorderAutoHide.IsOn) { if (ToggleSwitchDrawShapeBorderAutoHide.IsOn) {
@ -108,14 +115,21 @@ namespace Ink_Canvas {
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawDashedLine_Click(object sender, EventArgs e) { private void BtnDrawDashedLine_Click(object sender, MouseButtonEventArgs e) {
if (lastMouseDownSender == sender) { if (lastMouseDownSender == sender) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 8; drawingShapeMode = 8;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
} }
}
lastMouseDownSender = null; lastMouseDownSender = null;
if (isLongPressSelected) { if (isLongPressSelected) {
if (ToggleSwitchDrawShapeBorderAutoHide.IsOn) { if (ToggleSwitchDrawShapeBorderAutoHide.IsOn) {
@ -127,14 +141,21 @@ namespace Ink_Canvas {
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawDotLine_Click(object sender, EventArgs e) { private void BtnDrawDotLine_Click(object sender, MouseButtonEventArgs e) {
if (lastMouseDownSender == sender) { if (lastMouseDownSender == sender) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 18; drawingShapeMode = 18;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
} }
}
lastMouseDownSender = null; lastMouseDownSender = null;
if (isLongPressSelected) { if (isLongPressSelected) {
if (ToggleSwitchDrawShapeBorderAutoHide.IsOn) { if (ToggleSwitchDrawShapeBorderAutoHide.IsOn) {
@ -146,14 +167,21 @@ namespace Ink_Canvas {
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawArrow_Click(object sender, EventArgs e) { private void BtnDrawArrow_Click(object sender, MouseButtonEventArgs e) {
if (lastMouseDownSender == sender) { if (lastMouseDownSender == sender) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 2; drawingShapeMode = 2;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
} }
}
lastMouseDownSender = null; lastMouseDownSender = null;
if (isLongPressSelected) { if (isLongPressSelected) {
if (ToggleSwitchDrawShapeBorderAutoHide.IsOn) { if (ToggleSwitchDrawShapeBorderAutoHide.IsOn) {
@ -165,14 +193,21 @@ namespace Ink_Canvas {
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawParallelLine_Click(object sender, EventArgs e) { private void BtnDrawParallelLine_Click(object sender, MouseButtonEventArgs e) {
if (lastMouseDownSender == sender) { if (lastMouseDownSender == sender) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 15; drawingShapeMode = 15;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
} }
}
lastMouseDownSender = null; lastMouseDownSender = null;
if (isLongPressSelected) { if (isLongPressSelected) {
if (ToggleSwitchDrawShapeBorderAutoHide.IsOn) { if (ToggleSwitchDrawShapeBorderAutoHide.IsOn) {
@ -184,180 +219,313 @@ namespace Ink_Canvas {
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCoordinate1_Click(object sender, EventArgs e) { private void BtnDrawCoordinate1_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 11; drawingShapeMode = 11;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCoordinate2_Click(object sender, EventArgs e) { private void BtnDrawCoordinate2_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 12; drawingShapeMode = 12;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCoordinate3_Click(object sender, EventArgs e) { private void BtnDrawCoordinate3_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 13; drawingShapeMode = 13;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCoordinate4_Click(object sender, EventArgs e) { private void BtnDrawCoordinate4_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 14; drawingShapeMode = 14;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCoordinate5_Click(object sender, EventArgs e) { private void BtnDrawCoordinate5_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 17; drawingShapeMode = 17;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawRectangle_Click(object sender, EventArgs e) { private void BtnDrawRectangle_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 3; drawingShapeMode = 3;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawRectangleCenter_Click(object sender, EventArgs e) { private void BtnDrawRectangleCenter_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 19; drawingShapeMode = 19;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawEllipse_Click(object sender, EventArgs e) { private void BtnDrawEllipse_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 4; drawingShapeMode = 4;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode(); CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCircle_Click(object sender, EventArgs e) { private void BtnDrawCircle_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 5; drawingShapeMode = 5;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode(); CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCenterEllipse_Click(object sender, EventArgs e) { private void BtnDrawCenterEllipse_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 16; drawingShapeMode = 16;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCenterEllipseWithFocalPoint_Click(object sender, EventArgs e) { private void BtnDrawCenterEllipseWithFocalPoint_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 23; drawingShapeMode = 23;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawDashedCircle_Click(object sender, EventArgs e) { private void BtnDrawDashedCircle_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 10; drawingShapeMode = 10;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawHyperbola_Click(object sender, EventArgs e) { private void BtnDrawHyperbola_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 24; drawingShapeMode = 24;
drawMultiStepShapeCurrentStep = 0; drawMultiStepShapeCurrentStep = 0;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawHyperbolaWithFocalPoint_Click(object sender, EventArgs e) { private void BtnDrawHyperbolaWithFocalPoint_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 25; drawingShapeMode = 25;
drawMultiStepShapeCurrentStep = 0; drawMultiStepShapeCurrentStep = 0;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawParabola1_Click(object sender, EventArgs e) { private void BtnDrawParabola1_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 20; drawingShapeMode = 20;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawParabolaWithFocalPoint_Click(object sender, EventArgs e) { private void BtnDrawParabolaWithFocalPoint_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 22; drawingShapeMode = 22;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawParabola2_Click(object sender, EventArgs e) { private void BtnDrawParabola2_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 21; drawingShapeMode = 21;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCylinder_Click(object sender, EventArgs e) { private void BtnDrawCylinder_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 6; drawingShapeMode = 6;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCone_Click(object sender, EventArgs e) { private void BtnDrawCone_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 7; drawingShapeMode = 7;
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }
private void BtnDrawCuboid_Click(object sender, EventArgs e) { private void BtnDrawCuboid_Click(object sender, MouseButtonEventArgs e) {
forceEraser = true; forceEraser = true;
drawingShapeMode = 9; drawingShapeMode = 9;
isFirstTouchCuboid = true; isFirstTouchCuboid = true;
@ -365,7 +533,14 @@ namespace Ink_Canvas {
CuboidFrontRectEndP = new Point(); CuboidFrontRectEndP = new Point();
inkCanvas.EditingMode = InkCanvasEditingMode.None; inkCanvas.EditingMode = InkCanvasEditingMode.None;
inkCanvas.IsManipulationEnabled = true; inkCanvas.IsManipulationEnabled = true;
if (e.StylusDevice == null)
{
CancelSingleFingerDragMode();
}
else
{
CancelSingleFingerDragMode(true); CancelSingleFingerDragMode(true);
}
DrawShapePromptToPen(); DrawShapePromptToPen();
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB