using System;
using System.Windows.Controls;
namespace Ink_Canvas.Helpers.Plugins
{
///
/// 定义插件的基本接口
///
public interface IPlugin
{
///
/// 插件名称
///
string Name { get; }
///
/// 插件描述
///
string Description { get; }
///
/// 插件版本
///
Version Version { get; }
///
/// 插件作者
///
string Author { get; }
///
/// 是否为内置插件
///
bool IsBuiltIn { get; }
///
/// 初始化插件
/// 此方法在插件加载时被调用,用于执行一些初始化工作
///
void Initialize();
///
/// 启用插件
/// 此方法在插件被用户或系统启用时调用,激活插件功能
///
void Enable();
///
/// 禁用插件
/// 此方法在插件被用户或系统禁用时调用,停用插件功能
///
void Disable();
///
/// 获取插件设置界面
/// 此方法返回插件的设置界面控件,用于展示在设置窗口
///
/// 插件设置界面
UserControl GetSettingsView();
///
/// 插件卸载时的清理工作
/// 此方法在插件被卸载前调用,用于释放资源和执行清理
///
void Cleanup();
}
}