Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 3 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -406,13 +406,8 @@ MigrationBackup/
# Fody - auto-generated XML schema
FodyWeavers.xsd

# VS Code files for those working on multiple tools
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
!.vscode/*.code-snippets
# VS Code local workspace files
.vscode/

# Local History for Visual Studio Code
.history/
Expand All @@ -436,3 +431,4 @@ telemetry_dsn.txt
SKILL_FloatingToolbarRefactoring.md
/Samples
/SamplePlugin
/_tmpbuild/
39 changes: 39 additions & 0 deletions Ink Canvas/Controls/PptNavBar.xaml.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,35 @@ namespace Ink_Canvas.Controls
/// </summary>
public partial class PptNavBar : UserControl
{
/// <summary>
/// 预览模式:禁用所有鼠标交互,仅用于设置界面展示
/// </summary>
public static readonly DependencyProperty IsPreviewModeProperty = DependencyProperty.Register(
nameof(IsPreviewMode), typeof(bool), typeof(PptNavBar),
new PropertyMetadata(false, OnIsPreviewModeChanged));

public bool IsPreviewMode
{
get => (bool)GetValue(IsPreviewModeProperty);
set => SetValue(IsPreviewModeProperty, value);
}

private static void OnIsPreviewModeChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
if (d is PptNavBar bar)
{
bool isPreview = (bool)e.NewValue;
bar.IsHitTestVisible = !isPreview;
if (isPreview)
{
bar.PreviewList.IsHitTestVisible = false;
bar.PreviewList.Visibility = Visibility.Collapsed;
// Set default values for preview display
bar.CurrentSlide = 1;
bar.TotalSlides = 10;
}
}
}
public sealed class PreviewItem
{
public int SlideNumber { get; set; }
Expand Down Expand Up @@ -291,13 +320,15 @@ private void SyncPreviewSelection()

private void PreviousButton_MouseDown(object sender, MouseButtonEventArgs e)
{
if (IsPreviewMode) return;
_lastDown = sender;
SetFeedback(PreviousButtonFeedbackBorder, 0.15);
PreviousPressedDown?.Invoke(this, EventArgs.Empty);
}

private void PreviousButton_MouseUp(object sender, MouseButtonEventArgs e)
{
if (IsPreviewMode) return;
SetFeedback(PreviousButtonFeedbackBorder, 0);
PressEnded?.Invoke(this, EventArgs.Empty);
if (_lastDown != sender) return;
Expand All @@ -307,20 +338,23 @@ private void PreviousButton_MouseUp(object sender, MouseButtonEventArgs e)

private void PreviousButton_MouseLeave(object sender, MouseEventArgs e)
{
if (IsPreviewMode) return;
SetFeedback(PreviousButtonFeedbackBorder, 0);
_lastDown = null;
PressEnded?.Invoke(this, EventArgs.Empty);
}

private void NextButton_MouseDown(object sender, MouseButtonEventArgs e)
{
if (IsPreviewMode) return;
_lastDown = sender;
SetFeedback(NextButtonFeedbackBorder, 0.15);
NextPressedDown?.Invoke(this, EventArgs.Empty);
}

private void NextButton_MouseUp(object sender, MouseButtonEventArgs e)
{
if (IsPreviewMode) return;
SetFeedback(NextButtonFeedbackBorder, 0);
PressEnded?.Invoke(this, EventArgs.Empty);
if (_lastDown != sender) return;
Expand All @@ -330,19 +364,22 @@ private void NextButton_MouseUp(object sender, MouseButtonEventArgs e)

private void NextButton_MouseLeave(object sender, MouseEventArgs e)
{
if (IsPreviewMode) return;
SetFeedback(NextButtonFeedbackBorder, 0);
_lastDown = null;
PressEnded?.Invoke(this, EventArgs.Empty);
}

private void PageButton_MouseDown(object sender, MouseButtonEventArgs e)
{
if (IsPreviewMode) return;
_lastDown = sender;
SetFeedback(PageButtonFeedbackBorder, 0.15);
}

private void PageButton_MouseUp(object sender, MouseButtonEventArgs e)
{
if (IsPreviewMode) return;
SetFeedback(PageButtonFeedbackBorder, 0);
if (_lastDown != sender) return;
_lastDown = null;
Expand All @@ -351,12 +388,14 @@ private void PageButton_MouseUp(object sender, MouseButtonEventArgs e)

private void PageButton_MouseLeave(object sender, MouseEventArgs e)
{
if (IsPreviewMode) return;
SetFeedback(PageButtonFeedbackBorder, 0);
_lastDown = null;
}

private void PreviewList_MouseUp(object sender, MouseButtonEventArgs e)
{
if (IsPreviewMode) return;
if (PreviewList.SelectedItem is PreviewItem item)
{
SlideSelected?.Invoke(this, item.SlideNumber);
Expand Down
2 changes: 2 additions & 0 deletions Ink Canvas/InkCanvasForClass.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -492,6 +492,7 @@
<None Remove="Resources\PresentationExample\bottombar-dark.png" />
<None Remove="Resources\PresentationExample\bottombar-white.png" />
<None Remove="Resources\PresentationExample\page.jpg" />
<None Remove="Resources\PresentationExample\ppt-preview-bg.png" />
<None Remove="Resources\PresentationExample\sidebar-dark.png" />
<None Remove="Resources\PresentationExample\sidebar-white.png" />
<None Remove="Resources\PresentationExample\toolbar.png" />
Expand All @@ -510,6 +511,7 @@
<Resource Include="Resources\PresentationExample\bottombar-dark.png" />
<Resource Include="Resources\PresentationExample\bottombar-white.png" />
<Resource Include="Resources\PresentationExample\page.jpg" />
<Resource Include="Resources\PresentationExample\ppt-preview-bg.png" />
<Resource Include="Resources\PresentationExample\sidebar-dark.png" />
<Resource Include="Resources\PresentationExample\sidebar-white.png" />
<Resource Include="Resources\PresentationExample\toolbar.png" />
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading