using System; using System.Windows.Media; namespace Ink_Canvas.Helpers.Plugins { /// /// 操作服务接口,统一所有执行操作相关的方法 /// public interface IActionService { #region 画布操作 /// /// 清除当前画布 /// void ClearCanvas(); /// /// 清除所有画布 /// void ClearAllCanvases(); /// /// 添加新页面 /// void AddNewPage(); /// /// 删除当前页面 /// void DeleteCurrentPage(); /// /// 切换到指定页面 /// /// 页面索引 void SwitchToPage(int pageIndex); /// /// 切换到下一页 /// void NextPage(); /// /// 切换到上一页 /// void PreviousPage(); #endregion #region 绘制操作 /// /// 设置绘制模式 /// /// 绘制模式 void SetDrawingMode(int mode); /// /// 设置笔触宽度 /// /// 宽度 void SetInkWidth(double width); /// /// 设置笔触颜色 /// /// 颜色 void SetInkColor(Color color); /// /// 设置高亮笔宽度 /// /// 宽度 void SetHighlighterWidth(double width); /// /// 设置橡皮擦大小 /// /// 大小 void SetEraserSize(int size); /// /// 设置橡皮擦类型 /// /// 类型 void SetEraserType(int type); /// /// 设置橡皮擦形状 /// /// 形状 void SetEraserShape(int shape); /// /// 设置笔触透明度 /// /// 透明度 void SetInkAlpha(double alpha); /// /// 设置笔触样式 /// /// 样式 void SetInkStyle(int style); /// /// 设置背景颜色 /// /// 颜色 void SetBackgroundColor(string color); #endregion #region 文件操作 /// /// 保存画布内容 /// /// 文件路径 void SaveCanvas(string filePath); /// /// 加载画布内容 /// /// 文件路径 void LoadCanvas(string filePath); /// /// 导出为图片 /// /// 文件路径 /// 图片格式 void ExportAsImage(string filePath, string format); /// /// 导出为PDF /// /// 文件路径 void ExportAsPDF(string filePath); #endregion #region 撤销重做操作 /// /// 撤销操作 /// void Undo(); /// /// 重做操作 /// void Redo(); #endregion #region 选择操作 /// /// 全选 /// void SelectAll(); /// /// 取消选择 /// void DeselectAll(); /// /// 删除选中内容 /// void DeleteSelected(); /// /// 复制选中内容 /// void CopySelected(); /// /// 剪切选中内容 /// void CutSelected(); /// /// 粘贴内容 /// void Paste(); #endregion #region 系统设置操作 /// /// 设置系统设置 /// /// 设置类型 /// 设置键 /// 设置值 void SetSetting(string key, T value); /// /// 保存设置到文件 /// void SaveSettings(); /// /// 从文件加载设置 /// void LoadSettings(); /// /// 重置设置为默认值 /// void ResetSettings(); #endregion #region 插件管理操作 /// /// 启用插件 /// /// 插件名称 void EnablePlugin(string pluginName); /// /// 禁用插件 /// /// 插件名称 void DisablePlugin(string pluginName); /// /// 卸载插件 /// /// 插件名称 void UnloadPlugin(string pluginName); #endregion #region 事件系统操作 /// /// 注册事件处理器 /// /// 事件名称 /// 事件处理器 void RegisterEventHandler(string eventName, EventHandler handler); /// /// 注销事件处理器 /// /// 事件名称 /// 事件处理器 void UnregisterEventHandler(string eventName, EventHandler handler); /// /// 触发事件 /// /// 事件名称 /// 事件发送者 /// 事件参数 void TriggerEvent(string eventName, object sender, EventArgs args); #endregion #region 应用程序操作 /// /// 重启应用程序 /// void RestartApplication(); /// /// 退出应用程序 /// void ExitApplication(); /// /// 检查更新 /// void CheckForUpdates(); /// /// 打开帮助文档 /// void OpenHelpDocument(); /// /// 打开关于页面 /// void OpenAboutPage(); #endregion } }