envisage.egg_plugin_manager module

A plugin manager that gets its plugins from Eggs.

class envisage.egg_plugin_manager.EggPluginManager(**traits)[source]

Bases: PluginManager

A plugin manager that gets its plugins from Eggs.

To declare a plugin (or plugins) in your egg use an entry point in your ‘setup.py’ file, e.g.

[envisage.plugins] acme.foo = acme.foo.foo_plugin:FooPlugin

The left hand side of the entry point declaration must be the same as the ‘id’ trait of the plugin (e.g. the ‘FooPlugin’ would have its ‘id’ trait set to ‘acme.foo’). This allows the plugin manager to filter out plugins using the ‘include’ and ‘exclude’ lists (if specified) without having to import and instantiate them.

PLUGINS = 'envisage.plugins'