Vixen
02b45cc4
csharp
public interface IEditorPlugin

What a plugin implements. One public type per assembly, with a parameterless constructor.

Read the guide page for this →

Remarks

Two methods, and the second is usually empty. Everything registered through PluginContext is undone for the plugin when it is unloaded, so a plugin that only adds commands, panels and menu entries needs no teardown at all. Deactivate is for what the context cannot know about: a file watcher, a socket, a background thread.

⚠ The constructor runs before Activate and should do nothing. A plugin whose constructor throws is a plugin the loader cannot report against as precisely, and one whose constructor touches the editor is one that ran before its dependencies did.

Methods (2)

  • void Activate(PluginContext context)

    Adds everything the plugin contributes.

  • void Deactivate()

    Releases what the registration scope does not know about.

Used by (12)

  • AssetEditorsModuleVixen.Editor.AssetEditors
  • BlockoutModuleVixen.Editor.Blockout
  • DiagnosticsModuleVixen.Editor.Diagnostics
  • EditorApplicationVixen.Editor.App
  • EditorModulesVixen.Editor.Host
  • LoadedPluginVixen.Editor.Plugin
  • LoadingTestsVixen.Editor.Plugin.Tests
  • ModuleVixen.Editor.Plugin.Tests
  • PluginHostVixen.Editor.Plugin
  • ScriptModuleVixen.Editor.Scripts
  • ScriptsModuleVixen.Editor.Scripts
  • TerrainModuleVixen.Editor.Terrain