Show
Ignore:
Timestamp:
06/02/08 01:33:51 (6 months ago)
Author:
vardo
Message:

Initial commit related to plug-in system:
- basic PluginManager? class that loads plugins from *.py files

in given directories

- Singleton metaclass was created to use with PluginManager?;

notice: init of class is called only once (not like in code

that is included in Python Cookbook)

- variable to keep paths of plugin directories has been created

(common.gajim.PLUGINS_DIRS); also added initilization of these
paths to common.ConfigPaths?

- added global variable with PluginManager? object:

common.gajim.plugin_manager

- created customized logger for plugin system ('gajim.plugin_system')
- created function decorator plugins.helpers.log_calls which logs

each call of function/method; it also logs when function is left

- base class Plugin for plug-in implementation added; not much

here - only empty class attributes: name, short_name, authors,

version, description

- based on Plugin class, first plugin was created named

LengthNotifierPlugin?; it is used to notify users when they
exceed given length of message during writing it (text entry
field highlights)

- first GUI extension points works when ChatControl? object

is created (it is used in mentioned plugin)

- added 'epydoc.conf' file customized a little bit (file

is also in trunk now)

- fixed indentation in common.sleepy module (also in trunk

now)

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • branches/plugin-system/src/chat_control.py

    r9695 r9737  
    11401140                # restore previous conversation 
    11411141                self.restore_conversation() 
     1142                 
     1143                gajim.plugin_manager.gui_extension_point('chat_control', self) 
    11421144 
    11431145        def on_avatar_eventbox_enter_notify_event(self, widget, event):