Package Gnumed :: Package wxpython :: Module gmPlugin |
[frames] | no frames]

# Module gmPlugin

source code

gmPlugin - base classes for GNUmed Horst space notebook plugins.

Copyright: author

Author: H.Herb, I.Haywood, K.Hilbert

License: GPL v2 or later (details at http://www.gnu.org)

Classes
| cLoadProgressBar
| cNotebookPlugin Base class for plugins which provide a full notebook page.
| cPatientChange_PluginMixin This mixin adds listening to patient change signals.

Functions
instantiate_plugin(aPackage='xxxDEFAULTxxx', plugin_name='xxxDEFAULTxxx') Instantiates a plugin object from a package directory, returning the object. | source code
get_installed_plugins(plugin_dir='') Looks for installed plugins in the filesystem. | source code
GetPluginLoadList(option, plugin_dir='', defaults=None, workplace=None) Get a list of plugins to load. | source code
UnloadPlugin(set, name) Unloads the named plugin | source code

Imports: os, sys, glob, logging, wx, gmExceptions, gmGuiBroker, gmCfg, gmCfg2, gmDispatcher, gmTools, gmPerson, gmPraxis

Function Details

### instantiate_plugin(aPackage='xxxDEFAULTxxx', plugin_name='xxxDEFAULTxxx') | source code
    Instantiates a plugin object from a package directory, returning the object.

    NOTE: it does NOT call register() for you !!!!

    - "set" specifies the subdirectory in which to find the plugin
    - this knows nothing of databases, all it does is instantiate a named plugin

    There will be a general 'gui' directory for large GUI
    components: prescritions, etc., then several others for more
    specific types: export/import filters, crypto algorithms
    guibroker, dbbroker are broker objects provided
    defaults are the default set of plugins to be loaded

    FIXME: we should inform the user about failing plugins

### get_installed_plugins(plugin_dir='') | source code
Looks for installed plugins in the filesystem. The first directory in sys.path which contains a wxpython/gui/ is considered the one -- because that's where the import will get it from.

### GetPluginLoadList(option, plugin_dir='', defaults=None, workplace=None) | source code
Get a list of plugins to load. 1) from database if option is not None 2) from list of defaults 3) if 2 is None, from source directory (then stored in database) FIXME: NOT from files in directories (important for py2exe)