Merge branch 'master' of https://github.com/WXRIW/Ink-Canvas into feat/TimeMachine
# Conflicts: # Ink Canvas/MainWindow.xaml.cs
This commit is contained in:
commit
2baa23fcc8
@ -381,11 +381,6 @@
|
||||
<Button Content="立即退出" Width="168" FontFamily="Microsoft YaHei UI" Click="BtnExit_Click" Margin="0,0,0,10"/>
|
||||
</ui:SimpleStackPanel>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchRunAtStartup" Header="开机时运行" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchRunAtStartup_Toggled"/>
|
||||
<TextBlock Text="我们并不推荐使用 WPS Office,因为其对于触摸设备的较差支持。" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchSupportPowerPoint" Header="Microsoft PowerPoint 支持" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchSupportPowerPoint_Toggled"/>
|
||||
<TextBlock Text="对 WPS Office 支持时会导致 WPS Office 关闭时卡顿,仅测试用。" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchSupportWPS" Header="WPS Office 支持" IsOn="False" IsEnabled="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchSupportWPS_Toggled"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchShowCanvasAtNewSlideShow" Header="开始放映时自动显示画板" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchShowCanvasAtNewSlideShow_Toggled"/>
|
||||
</ui:SimpleStackPanel>
|
||||
</GroupBox>
|
||||
<GroupBox Header="启动">
|
||||
@ -436,9 +431,6 @@
|
||||
<ui:ToggleSwitch Name="ToggleSwitchEnableTwoFingerRotation" Header="允许双指旋转" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchEnableTwoFingerRotation_Toggled"/>
|
||||
<TextBlock Text="允许选中墨迹后对墨迹进行双指或多指缩放操作(此设置不受“允许双指旋转”设置的影响)" TextWrapping="Wrap" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchEnableTwoFingerRotationOnSelection" Header="允许双指旋转选中的墨迹" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchEnableTwoFingerRotation_Toggled"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchEnableTwoFingerGestureInPresentationMode" Header="允许幻灯片模式下的双指手势" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchEnableTwoFingerGestureInPresentationMode_Toggled"/>
|
||||
<TextBlock Text="允许开启画板时使用手指手势进行幻灯片翻页(启用后,在幻灯片放映模式下,当画板无墨迹时,使用手指(笔尖或手掌无法识别)左右滑动即可控制幻灯片翻页。)" TextWrapping="Wrap" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchEnableFingerGestureSlideShowControl" Header="允许使用手指手势进行幻灯片翻页" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" IsOn="True" Toggled="ToggleSwitchEnableFingerGestureSlideShowControl_Toggled"/>
|
||||
</ui:SimpleStackPanel>
|
||||
</GroupBox>
|
||||
<GroupBox Header="墨迹识别 (Beta)">
|
||||
@ -477,10 +469,49 @@
|
||||
<ui:ToggleSwitch Name="ToggleSwitchShowButtonPPTNavigation" Header="显示 PPT 浏览切页按钮" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchShowButtonPPTNavigation_OnToggled"/>
|
||||
</ui:SimpleStackPanel>
|
||||
</GroupBox>
|
||||
<GroupBox Header="PowerPoint 集成">
|
||||
<ui:SimpleStackPanel Spacing="12">
|
||||
<TextBlock Text="此分区的设置项将会在幻灯片播放时使用,优先级高于其他设置项" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchSupportPowerPoint" Header="Microsoft PowerPoint 支持" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchSupportPowerPoint_Toggled"/>
|
||||
<TextBlock Text="我们并不推荐使用 WPS Office,因为其对于触摸设备的较差支持。" Foreground="#666666"/>
|
||||
<TextBlock Text="对 WPS Office 支持时会导致 WPS Office 关闭时卡顿,仅测试用。" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchSupportWPS" Header="WPS Office 支持" IsOn="False" IsEnabled="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchSupportWPS_Toggled"/>
|
||||
<Grid />
|
||||
<ui:ToggleSwitch Name="ToggleSwitchShowCanvasAtNewSlideShow" Header="开始放映时自动启动画板" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchShowCanvasAtNewSlideShow_Toggled"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchEnableTwoFingerGestureInPresentationMode" Header="允许幻灯片模式下的双指手势" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchEnableTwoFingerGestureInPresentationMode_Toggled"/>
|
||||
<TextBlock Text="允许开启画板时使用手指手势进行幻灯片翻页(启用后,在幻灯片放映模式下,当画板无墨迹时,使用手指(笔尖或手掌无法识别)左右滑动即可控制幻灯片翻页。)" TextWrapping="Wrap" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchEnableFingerGestureSlideShowControl" Header="允许使用手指手势进行幻灯片翻页" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" IsOn="True" Toggled="ToggleSwitchEnableFingerGestureSlideShowControl_Toggled"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchAutoSaveScreenShotInPowerPoint" Header="自动幻灯片截屏" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchAutoSaveScreenShotInPowerPoint_Toggled"/>
|
||||
<TextBlock Text="开启后将在结束幻灯片放映时自动将已有墨迹保存至此电脑,并在下次打开时自动加载(文件名和幻灯片页数都要相同)" TextWrapping="Wrap" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchAutoSaveStrokesInPowerPoint" Header="自动保存幻灯片墨迹" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchAutoSaveStrokesInPowerPoint_Toggled"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchNotifyPreviousPage" Header="记忆并提示上次播放位置" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchNotifyPreviousPage_Toggled"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchNotifyHiddenPage" Header="提示隐藏幻灯片" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchNotifyHiddenPage_Toggled"/>
|
||||
|
||||
<ui:ToggleSwitch Name="ToggleSwitchNoStrokeClearInPowerPoint" Header="进入鼠标模式不清除笔迹" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchNoStrokeClearInPowerPoint_Toggled"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchShowStrokeOnSelectInPowerPoint" Header="进入鼠标模式不隐藏笔迹" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchShowStrokeOnSelectInPowerPoint_Toggled"/>
|
||||
</ui:SimpleStackPanel>
|
||||
|
||||
</GroupBox>
|
||||
<GroupBox Header="高级">
|
||||
<ui:SimpleStackPanel Spacing="12">
|
||||
<TextBlock Text="可在手指触摸画板时显示圆形橡皮或手掌触摸画板时显示的橡皮比
手掌大很多时开启" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchIsSpecialScreen" Header="特殊屏幕模式" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchIsSpecialScreen_Toggled"/>
|
||||
<TextBlock Text="可在手指触摸画板时显示圆形橡皮或手掌触摸画板时显示的橡皮比
手掌大很多时调整" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchIsSpecialScreen" Header="特殊屏幕模式" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchIsSpecialScreen_OnToggled"/>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Slider x:Name="TouchMultiplierSlider"
|
||||
HorizontalAlignment="Left"
|
||||
Minimum="0" Maximum="1"
|
||||
Width="300" FontFamily="Microsoft YaHei UI"
|
||||
ui:ControlHelper.Header="触摸大小倍数"
|
||||
IsSnapToTickEnabled="True"
|
||||
TickFrequency="0.05" TickPlacement="Both"
|
||||
ValueChanged="TouchMultiplierSlider_ValueChanged"
|
||||
Visibility="Collapsed"/>
|
||||
<TextBlock Text="{Binding Value, ElementName=TouchMultiplierSlider, Mode=OneWay}"
|
||||
VerticalAlignment="Bottom" Margin="10,0,0,8"
|
||||
FontSize="14" Width="30" HorizontalAlignment="Center"
|
||||
Visibility="{Binding Path=Visibility, ElementName=TouchMultiplierSlider, Mode=OneWay}"/>
|
||||
</StackPanel>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchEraserBindTouchMultiplier" Header="橡皮擦绑定触摸大小倍数" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" IsOn="False" Toggled="ToggleSwitchEraserBindTouchMultiplier_Toggled" Visibility="{Binding Path=Visibility, ElementName=TouchMultiplierSlider, Mode=OneWay}"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchIsLogEnabled" Header="记录日志" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" IsOn="True" Toggled="ToggleSwitchIsLogEnabled_Toggled"/>
|
||||
</ui:SimpleStackPanel>
|
||||
</GroupBox>
|
||||
@ -511,9 +542,6 @@
|
||||
<ui:ToggleSwitch Name="ToggleSwitchAutoSaveStrokesAtScreenshot" Header="截图时自动保存墨迹" IsOn="False" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchAutoSaveStrokesAtScreenshot_Toggled"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchAutoSaveStrokesAtClear" Header="清屏时自动截图" IsOn="False" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchAutoSaveStrokesAtClear_Toggled"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchClearExitingWritingMode" Header="切换到鼠标模式后自动清屏" IsOn="False" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchExitingWritingMode_Toggled"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchAutoSaveScreenShotInPowerPoint" Header="自动幻灯片截屏" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchAutoSaveScreenShotInPowerPoint_Toggled"/>
|
||||
<TextBlock Text="开启后将在结束幻灯片放映时自动将已有墨迹保存至此电脑,并在下次打开时自动加载(文件名和幻灯片页数都要相同)" TextWrapping="Wrap" Foreground="#666666"/>
|
||||
<ui:ToggleSwitch Name="ToggleSwitchAutoSaveStrokesInPowerPoint" Header="自动保存幻灯片墨迹" IsOn="True" FontFamily="Microsoft YaHei UI" OnContent="开" OffContent="关" Toggled="ToggleSwitchAutoSaveStrokesInPowerPoint_Toggled"/>
|
||||
<Slider x:Name="SideControlMinimumAutomationSlider"
|
||||
HorizontalAlignment="Left"
|
||||
Minimum="0" Maximum="10"
|
||||
@ -539,7 +567,7 @@
|
||||
<Bold>开发者:</Bold> XY Wang (WXRIW)
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="14">
|
||||
<Bold>贡献者:</Bold> Kengwang, jiajiaxd, CN-Ironegg
|
||||
<Bold>贡献者:</Bold> Kengwang, jiajiaxd, CN-Ironegg, Raspberry Kan
|
||||
</TextBlock>
|
||||
<TextBlock FontSize="14">
|
||||
<Bold>开源地址:</Bold>
|
||||
|
@ -25,6 +25,7 @@ using System.Windows.Input;
|
||||
using System.Windows.Input.StylusPlugIns;
|
||||
using System.Windows.Media;
|
||||
using System.Windows.Media.Animation;
|
||||
using System.Windows.Threading;
|
||||
using Application = System.Windows.Application;
|
||||
using File = System.IO.File;
|
||||
using MessageBox = System.Windows.MessageBox;
|
||||
@ -626,8 +627,8 @@ namespace Ink_Canvas
|
||||
}
|
||||
|
||||
PptNavigationBtn.Visibility =
|
||||
Settings.Appearance.IsShowPPTNavigation ? Visibility.Visible : Visibility.Collapsed;
|
||||
ToggleSwitchShowButtonPPTNavigation.IsOn = Settings.Appearance.IsShowPPTNavigation;
|
||||
Settings.PowerPointSettings.IsShowPPTNavigation ? Visibility.Visible : Visibility.Collapsed;
|
||||
ToggleSwitchShowButtonPPTNavigation.IsOn = Settings.PowerPointSettings.IsShowPPTNavigation;
|
||||
if (Settings.Appearance.IsShowHideControlButton)
|
||||
{
|
||||
BtnHideControl.Visibility = Visibility.Visible;
|
||||
@ -676,7 +677,7 @@ namespace Ink_Canvas
|
||||
}
|
||||
}
|
||||
|
||||
if (Settings.Behavior.PowerPointSupport)
|
||||
if (Settings.PowerPointSettings.PowerPointSupport)
|
||||
{
|
||||
ToggleSwitchSupportPowerPoint.IsOn = true;
|
||||
timerCheckPPT.Start();
|
||||
@ -686,7 +687,7 @@ namespace Ink_Canvas
|
||||
ToggleSwitchSupportPowerPoint.IsOn = false;
|
||||
timerCheckPPT.Stop();
|
||||
}
|
||||
if (Settings.Behavior.IsShowCanvasAtNewSlideShow)
|
||||
if (Settings.PowerPointSettings.IsShowCanvasAtNewSlideShow)
|
||||
{
|
||||
ToggleSwitchShowCanvasAtNewSlideShow.IsOn = true;
|
||||
}
|
||||
@ -723,7 +724,7 @@ namespace Ink_Canvas
|
||||
{
|
||||
ToggleSwitchEnableTwoFingerRotationOnSelection.IsOn = false;
|
||||
}
|
||||
if (Settings.Gesture.IsEnableTwoFingerGestureInPresentationMode)
|
||||
if (Settings.PowerPointSettings.IsEnableTwoFingerGestureInPresentationMode)
|
||||
{
|
||||
ToggleSwitchEnableTwoFingerGestureInPresentationMode.IsOn = true;
|
||||
}
|
||||
@ -731,7 +732,7 @@ namespace Ink_Canvas
|
||||
{
|
||||
ToggleSwitchEnableTwoFingerGestureInPresentationMode.IsOn = false;
|
||||
}
|
||||
if (Settings.Gesture.IsEnableFingerGestureSlideShowControl)
|
||||
if (Settings.PowerPointSettings.IsEnableFingerGestureSlideShowControl)
|
||||
{
|
||||
ToggleSwitchEnableFingerGestureSlideShowControl.IsOn = true;
|
||||
}
|
||||
@ -831,7 +832,7 @@ namespace Ink_Canvas
|
||||
ToggleSwitchAutoSaveStrokesAtScreenshot.IsOn = false;
|
||||
}
|
||||
|
||||
if (Settings.Automation.IsAutoSaveStrokesInPowerPoint)
|
||||
if (Settings.PowerPointSettings.IsAutoSaveStrokesInPowerPoint)
|
||||
{
|
||||
ToggleSwitchAutoSaveStrokesInPowerPoint.IsOn = true;
|
||||
}
|
||||
@ -840,6 +841,42 @@ namespace Ink_Canvas
|
||||
ToggleSwitchAutoSaveStrokesInPowerPoint.IsOn = false;
|
||||
}
|
||||
|
||||
if (Settings.PowerPointSettings.IsNotifyPreviousPage)
|
||||
{
|
||||
ToggleSwitchNotifyPreviousPage.IsOn = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
ToggleSwitchNotifyPreviousPage.IsOn = false;
|
||||
}
|
||||
|
||||
if (Settings.PowerPointSettings.IsNotifyHiddenPage)
|
||||
{
|
||||
ToggleSwitchNotifyHiddenPage.IsOn = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
ToggleSwitchNotifyHiddenPage.IsOn = false;
|
||||
}
|
||||
|
||||
if (Settings.PowerPointSettings.IsNoClearStrokeOnSelectWhenInPowerPoint)
|
||||
{
|
||||
ToggleSwitchNoStrokeClearInPowerPoint.IsOn = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
ToggleSwitchNoStrokeClearInPowerPoint.IsOn = false;
|
||||
}
|
||||
|
||||
if (Settings.PowerPointSettings.IsShowStrokeOnSelectInPowerPoint)
|
||||
{
|
||||
ToggleSwitchShowStrokeOnSelectInPowerPoint.IsOn = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
ToggleSwitchShowStrokeOnSelectInPowerPoint.IsOn = false;
|
||||
}
|
||||
|
||||
SideControlMinimumAutomationSlider.Value = Settings.Automation.MinimumAutomationStrokeNumber;
|
||||
|
||||
if (Settings.Canvas.HideStrokeWhenSelecting)
|
||||
@ -867,8 +904,8 @@ namespace Ink_Canvas
|
||||
{
|
||||
BtnSwitchTheme.Content = "深色";
|
||||
}
|
||||
BtnSwitchTheme_Click(null, null);
|
||||
if (Settings.Automation.IsAutoSaveScreenShotInPowerPoint)
|
||||
BtnSwitchTheme_Click(null , null);
|
||||
if (Settings.PowerPointSettings.IsAutoSaveScreenShotInPowerPoint)
|
||||
{
|
||||
ToggleSwitchAutoSaveScreenShotInPowerPoint.IsOn = true;
|
||||
}
|
||||
@ -884,14 +921,7 @@ namespace Ink_Canvas
|
||||
|
||||
if (Settings.Advanced != null)
|
||||
{
|
||||
if (Settings.Advanced.IsSpecialScreen)
|
||||
{
|
||||
ToggleSwitchIsSpecialScreen.IsOn = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
ToggleSwitchIsSpecialScreen.IsOn = false;
|
||||
}
|
||||
TouchMultiplierSlider.Value=Settings.Advanced.TouchMultiplier;
|
||||
if (Settings.Advanced.IsLogEnabled)
|
||||
{
|
||||
ToggleSwitchIsLogEnabled.IsOn = true;
|
||||
@ -900,6 +930,24 @@ namespace Ink_Canvas
|
||||
{
|
||||
ToggleSwitchIsLogEnabled.IsOn = false;
|
||||
}
|
||||
if (Settings.Advanced.EraserBindTouchMultiplier)
|
||||
{
|
||||
ToggleSwitchEraserBindTouchMultiplier.IsOn = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
ToggleSwitchEraserBindTouchMultiplier.IsOn = false;
|
||||
}
|
||||
|
||||
if (Settings.Advanced.IsSpecialScreen)
|
||||
{
|
||||
ToggleSwitchIsSpecialScreen.IsOn = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
ToggleSwitchIsSpecialScreen.IsOn = false;
|
||||
}
|
||||
TouchMultiplierSlider.Visibility = ToggleSwitchIsSpecialScreen.IsOn ? Visibility.Visible : Visibility.Collapsed;
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1304,28 +1352,71 @@ namespace Ink_Canvas
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
|
||||
// Auto-clear Strokes
|
||||
// 很烦, 要重新来, 要等待截图完成再清理笔记
|
||||
if (isLoaded && Settings.Automation.IsAutoClearWhenExitingWritingMode)
|
||||
if (BtnPPTSlideShowEnd.Visibility != Visibility.Visible)
|
||||
{
|
||||
if (inkCanvas.Strokes.Count > 0)
|
||||
if (isLoaded && Settings.Automation.IsAutoClearWhenExitingWritingMode)
|
||||
{
|
||||
if (Settings.Automation.IsAutoSaveStrokesAtClear && inkCanvas.Strokes.Count > Settings.Automation.MinimumAutomationStrokeNumber)
|
||||
if (inkCanvas.Strokes.Count > 0)
|
||||
{
|
||||
SaveScreenShot(true);
|
||||
if (Settings.Automation.IsAutoSaveStrokesAtClear && inkCanvas.Strokes.Count >
|
||||
Settings.Automation.MinimumAutomationStrokeNumber)
|
||||
{
|
||||
SaveScreenShot(true);
|
||||
}
|
||||
|
||||
BtnClear_Click(BtnClear, null);
|
||||
}
|
||||
}
|
||||
if (Settings.Canvas.HideStrokeWhenSelecting)
|
||||
inkCanvas.Visibility = Visibility.Collapsed;
|
||||
else
|
||||
{
|
||||
inkCanvas.IsHitTestVisible = false;
|
||||
inkCanvas.Visibility = Visibility.Visible;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (isLoaded && Settings.Automation.IsAutoClearWhenExitingWritingMode && !Settings.PowerPointSettings.IsNoClearStrokeOnSelectWhenInPowerPoint)
|
||||
{
|
||||
if (inkCanvas.Strokes.Count > 0)
|
||||
{
|
||||
if (Settings.Automation.IsAutoSaveStrokesAtClear && inkCanvas.Strokes.Count >
|
||||
Settings.Automation.MinimumAutomationStrokeNumber)
|
||||
{
|
||||
SaveScreenShot(true);
|
||||
}
|
||||
|
||||
BtnClear_Click(BtnClear, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (Settings.PowerPointSettings.IsShowStrokeOnSelectInPowerPoint)
|
||||
{
|
||||
inkCanvas.Visibility = Visibility.Visible;
|
||||
inkCanvas.IsHitTestVisible = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Settings.Canvas.HideStrokeWhenSelecting)
|
||||
inkCanvas.Visibility = Visibility.Collapsed;
|
||||
else
|
||||
{
|
||||
inkCanvas.IsHitTestVisible = false;
|
||||
inkCanvas.Visibility = Visibility.Visible;
|
||||
}
|
||||
BtnClear_Click(BtnClear, null);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Main_Grid.Background = Brushes.Transparent;
|
||||
if (Settings.Canvas.HideStrokeWhenSelecting)
|
||||
inkCanvas.Visibility = Visibility.Collapsed;
|
||||
else
|
||||
{
|
||||
inkCanvas.IsHitTestVisible = false;
|
||||
inkCanvas.Visibility = Visibility.Visible;
|
||||
}
|
||||
|
||||
|
||||
GridBackgroundCoverHolder.Visibility = Visibility.Collapsed;
|
||||
if (currentMode != 0)
|
||||
@ -1730,8 +1821,9 @@ namespace Ink_Canvas
|
||||
MouseTouchMove(iniP);
|
||||
}
|
||||
inkCanvas.Opacity = 1;
|
||||
|
||||
double boundsWidth = GetTouchBoundWidth(e);
|
||||
var eraserMultiplier = 1d;
|
||||
if (!Settings.Advanced.EraserBindTouchMultiplier && Settings.Advanced.IsSpecialScreen) eraserMultiplier = 1 / Settings.Advanced.TouchMultiplier;
|
||||
if (boundsWidth > BoundsWidth)
|
||||
{
|
||||
isLastTouchEraser = true;
|
||||
@ -1754,12 +1846,12 @@ namespace Ink_Canvas
|
||||
k = 1.8;
|
||||
break;
|
||||
}
|
||||
inkCanvas.EraserShape = new EllipseStylusShape(boundsWidth * 1.5 * k, boundsWidth * 1.5 * k);
|
||||
inkCanvas.EraserShape = new EllipseStylusShape(boundsWidth * 1.5 * k * eraserMultiplier, boundsWidth * 1.5 * k * eraserMultiplier);
|
||||
inkCanvas.EditingMode = InkCanvasEditingMode.EraseByPoint;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (StackPanelPPTControls.Visibility == Visibility.Visible && inkCanvas.Strokes.Count == 0 && Settings.Gesture.IsEnableFingerGestureSlideShowControl)
|
||||
if (StackPanelPPTControls.Visibility == Visibility.Visible && inkCanvas.Strokes.Count == 0 && Settings.PowerPointSettings.IsEnableFingerGestureSlideShowControl)
|
||||
{
|
||||
isLastTouchEraser = false;
|
||||
inkCanvas.EditingMode = InkCanvasEditingMode.GestureOnly;
|
||||
@ -1785,8 +1877,9 @@ namespace Ink_Canvas
|
||||
|
||||
public double GetTouchBoundWidth(TouchEventArgs e)
|
||||
{
|
||||
double value = e.GetTouchPoint(null).Bounds.Width;
|
||||
if (Settings.Advanced.IsSpecialScreen) value /= 3.75;
|
||||
var args = e.GetTouchPoint(null).Bounds;
|
||||
double value = args.Width;
|
||||
if (Settings.Advanced.IsSpecialScreen) value *= Settings.Advanced.TouchMultiplier;
|
||||
return value;
|
||||
}
|
||||
|
||||
@ -1871,7 +1964,7 @@ namespace Ink_Canvas
|
||||
private void Main_Grid_ManipulationDelta(object sender, ManipulationDeltaEventArgs e)
|
||||
{
|
||||
if (isInMultiTouchMode || !Settings.Gesture.IsEnableTwoFingerZoom) return;
|
||||
if ((dec.Count >= 2 && (Settings.Gesture.IsEnableTwoFingerGestureInPresentationMode || StackPanelPPTControls.Visibility != Visibility.Visible || StackPanelPPTButtons.Visibility == Visibility.Collapsed)) || isSingleFingerDragMode)
|
||||
if ((dec.Count >= 2 && (Settings.PowerPointSettings.IsEnableTwoFingerGestureInPresentationMode || StackPanelPPTControls.Visibility != Visibility.Visible || StackPanelPPTButtons.Visibility == Visibility.Collapsed)) || isSingleFingerDragMode)
|
||||
{
|
||||
ManipulationDelta md = e.DeltaManipulation;
|
||||
Vector trans = md.Translation; // 获得位移矢量
|
||||
@ -2052,68 +2145,76 @@ namespace Ink_Canvas
|
||||
}
|
||||
}
|
||||
|
||||
if (pptApplication == null) throw new Exception();
|
||||
if (pptApplication == null) return;
|
||||
//BtnCheckPPT.Visibility = Visibility.Collapsed;
|
||||
|
||||
// 跳转到上次播放页
|
||||
Application.Current.Dispatcher.Invoke(() =>
|
||||
{
|
||||
string defaultFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\Ink Canvas Strokes\Auto Saved\Presentations\";
|
||||
string folderPath = defaultFolderPath + presentation.Name + "_" + presentation.Slides.Count;
|
||||
if (File.Exists(folderPath + "/position"))
|
||||
if (Settings.PowerPointSettings.IsNotifyPreviousPage)
|
||||
Application.Current.Dispatcher.BeginInvoke(() =>
|
||||
{
|
||||
if (int.TryParse(File.ReadAllText(folderPath + "/position"), out var page))
|
||||
string defaultFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) +
|
||||
@"\Ink Canvas Strokes\Auto Saved\Presentations\";
|
||||
string folderPath = defaultFolderPath + presentation.Name + "_" + presentation.Slides.Count;
|
||||
if (File.Exists(folderPath + "/position"))
|
||||
{
|
||||
IsShowingRestoreHiddenSlidesWindow = true;
|
||||
new YesOrNoNotificationWindow($"上次播放到了第 {page} 页, 是否立即跳转", () =>
|
||||
if (int.TryParse(File.ReadAllText(folderPath + "/position"), out var page))
|
||||
{
|
||||
if (pptApplication.SlideShowWindows.Count >= 1)
|
||||
if (page <= 0 ) return;
|
||||
new YesOrNoNotificationWindow($"上次播放到了第 {page} 页, 是否立即跳转", () =>
|
||||
{
|
||||
// 如果已经播放了的话, 跳转
|
||||
presentation.SlideShowWindow.View.GotoSlide(page);
|
||||
}
|
||||
else
|
||||
{
|
||||
presentation.Windows[1].View.GotoSlide(page);
|
||||
}
|
||||
}).ShowDialog();
|
||||
if (pptApplication.SlideShowWindows.Count >= 1)
|
||||
{
|
||||
// 如果已经播放了的话, 跳转
|
||||
presentation.SlideShowWindow.View.GotoSlide(page);
|
||||
}
|
||||
else
|
||||
{
|
||||
presentation.Windows[1].View.GotoSlide(page);
|
||||
}
|
||||
}).ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}, DispatcherPriority.Normal);
|
||||
|
||||
|
||||
//检查是否有隐藏幻灯片
|
||||
bool isHaveHiddenSlide = false;
|
||||
foreach (Slide slide in slides)
|
||||
if (Settings.PowerPointSettings.IsNotifyHiddenPage)
|
||||
{
|
||||
if (slide.SlideShowTransition.Hidden == Microsoft.Office.Core.MsoTriState.msoTrue)
|
||||
bool isHaveHiddenSlide = false;
|
||||
foreach (Slide slide in slides)
|
||||
{
|
||||
isHaveHiddenSlide = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
Application.Current.Dispatcher.Invoke(() =>
|
||||
{
|
||||
if (isHaveHiddenSlide && !IsShowingRestoreHiddenSlidesWindow)
|
||||
{
|
||||
IsShowingRestoreHiddenSlidesWindow = true;
|
||||
new YesOrNoNotificationWindow("检测到此演示文档中包含隐藏的幻灯片,是否取消隐藏?",
|
||||
() =>
|
||||
if (slide.SlideShowTransition.Hidden == Microsoft.Office.Core.MsoTriState.msoTrue)
|
||||
{
|
||||
foreach (Slide slide in slides)
|
||||
{
|
||||
if (slide.SlideShowTransition.Hidden == Microsoft.Office.Core.MsoTriState.msoTrue)
|
||||
{
|
||||
slide.SlideShowTransition.Hidden = Microsoft.Office.Core.MsoTriState.msoFalse;
|
||||
}
|
||||
}
|
||||
}).ShowDialog();
|
||||
isHaveHiddenSlide = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Application.Current.Dispatcher.BeginInvoke(() =>
|
||||
{
|
||||
if (isHaveHiddenSlide && !IsShowingRestoreHiddenSlidesWindow)
|
||||
{
|
||||
IsShowingRestoreHiddenSlidesWindow = true;
|
||||
new YesOrNoNotificationWindow("检测到此演示文档中包含隐藏的幻灯片,是否取消隐藏?",
|
||||
() =>
|
||||
{
|
||||
foreach (Slide slide in slides)
|
||||
{
|
||||
if (slide.SlideShowTransition.Hidden ==
|
||||
Microsoft.Office.Core.MsoTriState.msoTrue)
|
||||
{
|
||||
slide.SlideShowTransition.Hidden =
|
||||
Microsoft.Office.Core.MsoTriState.msoFalse;
|
||||
}
|
||||
}
|
||||
}).ShowDialog();
|
||||
}
|
||||
|
||||
|
||||
BtnPPTSlideShow.Visibility = Visibility.Visible;
|
||||
});
|
||||
|
||||
BtnPPTSlideShow.Visibility = Visibility.Visible;
|
||||
}, DispatcherPriority.Normal);
|
||||
}
|
||||
|
||||
//如果检测到已经开始放映,则立即进入画板模式
|
||||
if (pptApplication.SlideShowWindows.Count >= 1)
|
||||
@ -2195,7 +2296,7 @@ namespace Ink_Canvas
|
||||
LogHelper.NewLog("Slides Count: " + slidescount.ToString());
|
||||
|
||||
//检查是否有已有墨迹,并加载
|
||||
if (Settings.Automation.IsAutoSaveStrokesInPowerPoint)
|
||||
if (Settings.PowerPointSettings.IsAutoSaveStrokesInPowerPoint)
|
||||
{
|
||||
string defaultFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\Ink Canvas Strokes\Auto Saved\Presentations\";
|
||||
if (Directory.Exists(defaultFolderPath + Wn.Presentation.Name + "_" + Wn.Presentation.Slides.Count))
|
||||
@ -2234,7 +2335,7 @@ namespace Ink_Canvas
|
||||
BtnPPTSlideShowEnd.Visibility = Visibility.Visible;
|
||||
ViewBoxStackPanelMain.Margin = new Thickness(10, 10, 10, 10);
|
||||
|
||||
if (Settings.Behavior.IsShowCanvasAtNewSlideShow && Main_Grid.Background == Brushes.Transparent)
|
||||
if (Settings.PowerPointSettings.IsShowCanvasAtNewSlideShow && Main_Grid.Background == Brushes.Transparent)
|
||||
{
|
||||
if (currentMode != 0)
|
||||
{
|
||||
@ -2268,7 +2369,7 @@ namespace Ink_Canvas
|
||||
BorderFloatingBarMainControls.Visibility = Visibility.Visible;
|
||||
BorderPenColorRed_MouseUp(BorderPenColorRed, null);
|
||||
|
||||
if (Settings.Behavior.IsShowCanvasAtNewSlideShow == false)
|
||||
if (Settings.PowerPointSettings.IsShowCanvasAtNewSlideShow == false)
|
||||
{
|
||||
BtnHideInkCanvas_Click(BtnHideInkCanvas, null);
|
||||
}
|
||||
@ -2317,7 +2418,7 @@ namespace Ink_Canvas
|
||||
return;
|
||||
}
|
||||
isEnteredSlideShowEndEvent = true;
|
||||
if (Settings.Automation.IsAutoSaveStrokesInPowerPoint)
|
||||
if (Settings.PowerPointSettings.IsAutoSaveStrokesInPowerPoint)
|
||||
{
|
||||
string defaultFolderPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + @"\Ink Canvas Strokes\Auto Saved\Presentations\";
|
||||
string folderPath = defaultFolderPath + Pres.Name + "_" + Pres.Slides.Count;
|
||||
@ -2429,7 +2530,7 @@ namespace Ink_Canvas
|
||||
ms.Position = 0;
|
||||
memoryStreams[previousSlideID] = ms;
|
||||
|
||||
if (inkCanvas.Strokes.Count > Settings.Automation.MinimumAutomationStrokeNumber && Settings.Automation.IsAutoSaveScreenShotInPowerPoint && !_isPptClickingBtnTurned)
|
||||
if (inkCanvas.Strokes.Count > Settings.Automation.MinimumAutomationStrokeNumber && Settings.PowerPointSettings.IsAutoSaveScreenShotInPowerPoint && !_isPptClickingBtnTurned)
|
||||
SaveScreenShot(true, Wn.Presentation.Name + "/" + Wn.View.CurrentShowPosition);
|
||||
_isPptClickingBtnTurned = false;
|
||||
|
||||
@ -2465,7 +2566,7 @@ namespace Ink_Canvas
|
||||
|
||||
_isPptClickingBtnTurned = true;
|
||||
if (inkCanvas.Strokes.Count > Settings.Automation.MinimumAutomationStrokeNumber &&
|
||||
Settings.Automation.IsAutoSaveScreenShotInPowerPoint)
|
||||
Settings.PowerPointSettings.IsAutoSaveScreenShotInPowerPoint)
|
||||
SaveScreenShot(true, pptApplication.SlideShowWindows[1].Presentation.Name + "/" + pptApplication.SlideShowWindows[1].View.CurrentShowPosition);
|
||||
try
|
||||
{
|
||||
@ -2491,7 +2592,7 @@ namespace Ink_Canvas
|
||||
}
|
||||
_isPptClickingBtnTurned = true;
|
||||
if (inkCanvas.Strokes.Count > Settings.Automation.MinimumAutomationStrokeNumber &&
|
||||
Settings.Automation.IsAutoSaveScreenShotInPowerPoint)
|
||||
Settings.PowerPointSettings.IsAutoSaveScreenShotInPowerPoint)
|
||||
SaveScreenShot(true, pptApplication.SlideShowWindows[1].Presentation.Name + "/" + pptApplication.SlideShowWindows[1].View.CurrentShowPosition);
|
||||
try
|
||||
{
|
||||
@ -2583,10 +2684,10 @@ namespace Ink_Canvas
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
|
||||
Settings.Behavior.PowerPointSupport = ToggleSwitchSupportPowerPoint.IsOn;
|
||||
Settings.PowerPointSettings.PowerPointSupport = ToggleSwitchSupportPowerPoint.IsOn;
|
||||
SaveSettingsToFile();
|
||||
|
||||
if (Settings.Behavior.PowerPointSupport)
|
||||
if (Settings.PowerPointSettings.PowerPointSupport)
|
||||
{
|
||||
timerCheckPPT.Start();
|
||||
}
|
||||
@ -2600,7 +2701,7 @@ namespace Ink_Canvas
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
|
||||
Settings.Behavior.IsShowCanvasAtNewSlideShow = ToggleSwitchShowCanvasAtNewSlideShow.IsOn;
|
||||
Settings.PowerPointSettings.IsShowCanvasAtNewSlideShow = ToggleSwitchShowCanvasAtNewSlideShow.IsOn;
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
@ -2671,11 +2772,11 @@ namespace Ink_Canvas
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
|
||||
Settings.Appearance.IsShowPPTNavigation = ToggleSwitchShowButtonPPTNavigation.IsOn;
|
||||
Settings.PowerPointSettings.IsShowPPTNavigation = ToggleSwitchShowButtonPPTNavigation.IsOn;
|
||||
SaveSettingsToFile();
|
||||
|
||||
PptNavigationBtn.Visibility =
|
||||
Settings.Appearance.IsShowPPTNavigation ? Visibility.Visible : Visibility.Collapsed;
|
||||
Settings.PowerPointSettings.IsShowPPTNavigation ? Visibility.Visible : Visibility.Collapsed;
|
||||
}
|
||||
|
||||
private void ToggleSwitchShowButtonHideControl_Toggled(object sender, RoutedEventArgs e)
|
||||
@ -2881,7 +2982,36 @@ namespace Ink_Canvas
|
||||
private void ToggleSwitchAutoSaveStrokesInPowerPoint_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
Settings.Automation.IsAutoSaveStrokesInPowerPoint = ToggleSwitchAutoSaveStrokesInPowerPoint.IsOn;
|
||||
Settings.PowerPointSettings.IsAutoSaveStrokesInPowerPoint = ToggleSwitchAutoSaveStrokesInPowerPoint.IsOn;
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
private void ToggleSwitchNotifyPreviousPage_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
Settings.PowerPointSettings.IsNotifyPreviousPage = ToggleSwitchNotifyPreviousPage.IsOn;
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
private void ToggleSwitchNotifyHiddenPage_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
Settings.PowerPointSettings.IsNotifyHiddenPage = ToggleSwitchNotifyHiddenPage.IsOn;
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
private void ToggleSwitchNoStrokeClearInPowerPoint_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
Settings.PowerPointSettings.IsNoClearStrokeOnSelectWhenInPowerPoint = ToggleSwitchNoStrokeClearInPowerPoint.IsOn;
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
|
||||
private void ToggleSwitchShowStrokeOnSelectInPowerPoint_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
Settings.PowerPointSettings.IsShowStrokeOnSelectInPowerPoint = ToggleSwitchShowStrokeOnSelectInPowerPoint.IsOn;
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
@ -2895,7 +3025,7 @@ namespace Ink_Canvas
|
||||
private void ToggleSwitchAutoSaveScreenShotInPowerPoint_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
Settings.Automation.IsAutoSaveScreenShotInPowerPoint = ToggleSwitchAutoSaveScreenShotInPowerPoint.IsOn;
|
||||
Settings.PowerPointSettings.IsAutoSaveScreenShotInPowerPoint = ToggleSwitchAutoSaveScreenShotInPowerPoint.IsOn;
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
@ -2908,7 +3038,7 @@ namespace Ink_Canvas
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
|
||||
Settings.Gesture.IsEnableFingerGestureSlideShowControl = ToggleSwitchEnableFingerGestureSlideShowControl.IsOn;
|
||||
Settings.PowerPointSettings.IsEnableFingerGestureSlideShowControl = ToggleSwitchEnableFingerGestureSlideShowControl.IsOn;
|
||||
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
@ -2936,7 +3066,7 @@ namespace Ink_Canvas
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
|
||||
Settings.Gesture.IsEnableTwoFingerGestureInPresentationMode = ToggleSwitchEnableTwoFingerGestureInPresentationMode.IsOn;
|
||||
Settings.PowerPointSettings.IsEnableTwoFingerGestureInPresentationMode = ToggleSwitchEnableTwoFingerGestureInPresentationMode.IsOn;
|
||||
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
@ -3021,10 +3151,25 @@ namespace Ink_Canvas
|
||||
|
||||
#region Advanced
|
||||
|
||||
private void ToggleSwitchIsSpecialScreen_Toggled(object sender, RoutedEventArgs e)
|
||||
private void ToggleSwitchIsSpecialScreen_OnToggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
Settings.Advanced.IsSpecialScreen = ToggleSwitchIsSpecialScreen.IsOn;
|
||||
TouchMultiplierSlider.Visibility = ToggleSwitchIsSpecialScreen.IsOn ? Visibility.Visible : Visibility.Collapsed;
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
private void TouchMultiplierSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
Settings.Advanced.TouchMultiplier = e.NewValue;
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
private void ToggleSwitchEraserBindTouchMultiplier_Toggled(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (!isLoaded) return;
|
||||
Settings.Advanced.EraserBindTouchMultiplier= ToggleSwitchEraserBindTouchMultiplier.IsOn;
|
||||
SaveSettingsToFile();
|
||||
}
|
||||
|
||||
@ -3506,10 +3651,24 @@ namespace Ink_Canvas
|
||||
{
|
||||
forceEraser = true;
|
||||
drawingShapeMode = 0;
|
||||
if (inkCanvas.EditingMode == InkCanvasEditingMode.Select)
|
||||
inkCanvas.Select(inkCanvas.Strokes);
|
||||
inkCanvas.EditingMode = InkCanvasEditingMode.Select;
|
||||
inkCanvas.IsManipulationEnabled = false;
|
||||
if (inkCanvas.EditingMode == InkCanvasEditingMode.Select)
|
||||
{
|
||||
if (inkCanvas.GetSelectedStrokes().Count == inkCanvas.Strokes.Count)
|
||||
{
|
||||
inkCanvas.EditingMode = InkCanvasEditingMode.Ink;
|
||||
inkCanvas.IsManipulationEnabled = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
inkCanvas.Select(inkCanvas.Strokes);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
inkCanvas.EditingMode = InkCanvasEditingMode.Select;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
double BorderStrokeSelectionControlWidth = 490.0;
|
||||
@ -6357,7 +6516,10 @@ namespace Ink_Canvas
|
||||
{
|
||||
if (Settings.Automation.IsAutoSaveStrokesAtClear && inkCanvas.Strokes.Count > Settings.Automation.MinimumAutomationStrokeNumber)
|
||||
{
|
||||
SaveScreenShot(true, null);
|
||||
if (BtnPPTSlideShowEnd.Visibility == Visibility.Visible)
|
||||
SaveScreenShot(true, $"{pptName}/{previousSlideID}_{DateTime.Now:HH-mm-ss}");
|
||||
else
|
||||
SaveScreenShot(true);
|
||||
}
|
||||
BtnClear_Click(BtnClear, null);
|
||||
}
|
||||
|
@ -10,8 +10,8 @@ namespace Ink_Canvas
|
||||
public Appearance Appearance { get; set; } = new Appearance();
|
||||
[JsonProperty("automation")]
|
||||
public Automation Automation { get; set; } = new Automation();
|
||||
[JsonProperty("behavior")]
|
||||
public Behavior Behavior { get; set; } = new Behavior();
|
||||
[JsonProperty("powerpoint")]
|
||||
public PowerPointSettings PowerPointSettings { get; set; } = new PowerPointSettings();
|
||||
[JsonProperty("canvas")]
|
||||
public Canvas Canvas { get; set; } = new Canvas();
|
||||
[JsonProperty("gesture")]
|
||||
@ -22,14 +22,6 @@ namespace Ink_Canvas
|
||||
public Startup Startup { get; set; } = new Startup();
|
||||
}
|
||||
|
||||
public class Behavior
|
||||
{
|
||||
[JsonProperty("powerPointSupport")]
|
||||
public bool PowerPointSupport { get; set; } = true;
|
||||
[JsonProperty("isShowCanvasAtNewSlideShow")]
|
||||
public bool IsShowCanvasAtNewSlideShow { get; set; } = true;
|
||||
}
|
||||
|
||||
public class Canvas
|
||||
{
|
||||
[JsonProperty("inkWidth")]
|
||||
@ -56,10 +48,7 @@ namespace Ink_Canvas
|
||||
public bool IsEnableTwoFingerRotation { get; set; } = false;
|
||||
[JsonProperty("isEnableTwoFingerRotationOnSelection")]
|
||||
public bool IsEnableTwoFingerRotationOnSelection { get; set; } = false;
|
||||
[JsonProperty("isEnableTwoFingerGestureInPresentationMode")]
|
||||
public bool IsEnableTwoFingerGestureInPresentationMode { get; set; } = false;
|
||||
[JsonProperty("isEnableFingerGestureSlideShowControl")]
|
||||
public bool IsEnableFingerGestureSlideShowControl { get; set; } = true;
|
||||
|
||||
}
|
||||
|
||||
public class Startup
|
||||
@ -84,8 +73,34 @@ namespace Ink_Canvas
|
||||
public bool IsShowLRSwitchButton { get; set; } = false;
|
||||
[JsonProperty("isShowModeFingerToggleSwitch")]
|
||||
public bool IsShowModeFingerToggleSwitch { get; set; } = true;
|
||||
|
||||
}
|
||||
|
||||
|
||||
public class PowerPointSettings
|
||||
{
|
||||
[JsonProperty("isShowPPTNavigation")]
|
||||
public bool IsShowPPTNavigation { get; set; } = true;
|
||||
[JsonProperty("powerPointSupport")]
|
||||
public bool PowerPointSupport { get; set; } = true;
|
||||
[JsonProperty("isShowCanvasAtNewSlideShow")]
|
||||
public bool IsShowCanvasAtNewSlideShow { get; set; } = true;
|
||||
[JsonProperty("isNoClearStrokeOnSelectWhenInPowerPoint")]
|
||||
public bool IsNoClearStrokeOnSelectWhenInPowerPoint { get; set; } = true;
|
||||
[JsonProperty("isShowStrokeOnSelectInPowerPoint")]
|
||||
public bool IsShowStrokeOnSelectInPowerPoint { get; set; } = false;
|
||||
[JsonProperty("isAutoSaveStrokesInPowerPoint")]
|
||||
public bool IsAutoSaveStrokesInPowerPoint { get; set; } = true;
|
||||
[JsonProperty("isAutoSaveScreenShotInPowerPoint")]
|
||||
public bool IsAutoSaveScreenShotInPowerPoint { get; set; } = false;
|
||||
[JsonProperty("isNotifyPreviousPage")]
|
||||
public bool IsNotifyPreviousPage { get; set; } = true;
|
||||
[JsonProperty("isNotifyHiddenPage")]
|
||||
public bool IsNotifyHiddenPage { get; set; } = true;
|
||||
[JsonProperty("isEnableTwoFingerGestureInPresentationMode")]
|
||||
public bool IsEnableTwoFingerGestureInPresentationMode { get; set; } = false;
|
||||
[JsonProperty("isEnableFingerGestureSlideShowControl")]
|
||||
public bool IsEnableFingerGestureSlideShowControl { get; set; } = true;
|
||||
}
|
||||
|
||||
public class Automation
|
||||
@ -98,10 +113,7 @@ namespace Ink_Canvas
|
||||
public bool IsAutoSaveStrokesAtScreenshot { get; set; } = false;
|
||||
[JsonProperty("isAutoSaveStrokesAtClear")]
|
||||
public bool IsAutoSaveStrokesAtClear { get; set; } = false;
|
||||
[JsonProperty("isAutoSaveStrokesInPowerPoint")]
|
||||
public bool IsAutoSaveStrokesInPowerPoint { get; set; } = true;
|
||||
[JsonProperty("isAutoSaveScreenShotInPowerPoint")]
|
||||
public bool IsAutoSaveScreenShotInPowerPoint { get; set; } = false;
|
||||
|
||||
[JsonProperty("isAutoClearWhenExitingWritingMode")]
|
||||
public bool IsAutoClearWhenExitingWritingMode { get; set; } = false;
|
||||
|
||||
@ -114,6 +126,10 @@ namespace Ink_Canvas
|
||||
{
|
||||
[JsonProperty("isSpecialScreen")]
|
||||
public bool IsSpecialScreen { get; set; } = false;
|
||||
[JsonProperty("touchMultiplier")]
|
||||
public double TouchMultiplier { get; set; } = 0.25;
|
||||
[JsonProperty("eraserBindTouchMultiplier")]
|
||||
public bool EraserBindTouchMultiplier { get; set; } = false;
|
||||
[JsonProperty("isLogEnabled")]
|
||||
public bool IsLogEnabled { get; set; } = true;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user