namespace Ink_Canvas.Helpers.Plugins { /// /// 窗口服务接口,统一所有窗口操作相关的方法 /// public interface IWindowService { #region 窗口显示和隐藏 /// /// 显示设置窗口 /// void ShowSettingsWindow(); /// /// 隐藏设置窗口 /// void HideSettingsWindow(); /// /// 显示插件设置窗口 /// void ShowPluginSettingsWindow(); /// /// 隐藏插件设置窗口 /// void HidePluginSettingsWindow(); /// /// 显示帮助窗口 /// void ShowHelpWindow(); /// /// 隐藏帮助窗口 /// void HideHelpWindow(); /// /// 显示关于窗口 /// void ShowAboutWindow(); /// /// 隐藏关于窗口 /// void HideAboutWindow(); #endregion #region 对话框和通知 /// /// 显示通知消息 /// /// 消息内容 /// 消息类型 void ShowNotification(string message, NotificationType type = NotificationType.Info); /// /// 显示确认对话框 /// /// 消息内容 /// 标题 /// 用户选择结果 bool ShowConfirmDialog(string message, string title = "确认"); /// /// 显示输入对话框 /// /// 提示消息 /// 标题 /// 默认值 /// 用户输入内容 string ShowInputDialog(string message, string title = "输入", string defaultValue = ""); #endregion #region 窗口状态控制 /// /// 设置窗口全屏状态 /// /// 是否全屏 void SetFullScreen(bool isFullScreen); /// /// 设置窗口置顶状态 /// /// 是否置顶 void SetTopMost(bool isTopMost); /// /// 设置窗口可见性 /// /// 是否可见 void SetWindowVisibility(bool isVisible); /// /// 最小化窗口 /// void MinimizeWindow(); /// /// 最大化窗口 /// void MaximizeWindow(); /// /// 恢复窗口 /// void RestoreWindow(); /// /// 关闭窗口 /// void CloseWindow(); #endregion #region 窗口位置和大小 /// /// 设置窗口位置 /// /// X坐标 /// Y坐标 void SetWindowPosition(double x, double y); /// /// 设置窗口大小 /// /// 宽度 /// 高度 void SetWindowSize(double width, double height); /// /// 获取窗口位置 /// /// 窗口位置 (double x, double y) GetWindowPosition(); /// /// 获取窗口大小 /// /// 窗口大小 (double width, double height) GetWindowSize(); #endregion } }