Clone wiki

eoPlugins / Home

开发文档

此项目是为 ElectronicObserver 制作插件而建立的。

插件位置

dll 库文件,存放在主程序的 Plugins 目录下。74eo 在启动时会加载这些插件。

现目前拥有的插件:

  • TrayIcon - 托盘图标插件,点击时显示/隐藏主界面,最小化主界面时自动隐藏。
  • ExpCalculator - 经验计算插件。

实现

每个插件都需要实现 ElectronicObserver.Window.Plugins.IPluginHost 接口

string MenuTitle { get; }            // 显示在菜单上的文字
PluginType PluginType { get; }       // 插件类型
string Version { get; }              // 插件版本

PluginSettingControl GetSettings();  // 插件的设置面板(继承自UserControl)
Form GetToolWindow();                // 插件的弹出窗口
bool RunService( FormMain main );    // 服务类插件的启动方法

PluginType 为插件类型,现目前共有3种类型:

public enum PluginType
{
    DockContent = 0,  // 浮动面板类
    Dialog = 1,       // 弹出窗口类
    Service = 2       // 服务类
}

PluginSettingControl 为该插件的设置面板(如果有),在“插件设置”窗口点击OK时会调用已打开面板的 Save 方法。

public virtual bool Save();

其他

程序内置了3种插件的基本实现,分别继承 DockContentPluginDialogPluginServerPlugin 即可。

Updated