Files
community/Ink Canvas/Helpers/IPPTLinkManager.cs
T
2026-02-14 14:39:15 +08:00

47 lines
1.2 KiB
C#

using System;
using Microsoft.Office.Interop.PowerPoint;
namespace Ink_Canvas.Helpers
{
public interface IPPTLinkManager : IDisposable
{
event Action<object> SlideShowBegin;
event Action<object> SlideShowNextSlide;
event Action<object> SlideShowEnd;
event Action<object> PresentationOpen;
event Action<object> PresentationClose;
event Action<bool> PPTConnectionChanged;
event Action<bool> SlideShowStateChanged;
bool IsConnected { get; }
bool IsInSlideShow { get; }
bool IsSupportWPS { get; set; }
int SlidesCount { get; }
object PPTApplication { get; }
// 生命周期管理
void StartMonitoring();
void StopMonitoring();
void ReloadConnection();
// 放映控制
bool TryStartSlideShow();
bool TryEndSlideShow();
// 导航控制
bool TryNavigateToSlide(int slideNumber);
bool TryNavigateNext();
bool TryNavigatePrevious();
// 查询
int GetCurrentSlideNumber();
string GetPresentationName();
bool TryShowSlideNavigation();
object GetCurrentActivePresentation();
}
}