- Apr 29, 2012
-
-
Yann Leboulanger authored
ability for plugins to be activatable. True by default, but plugin can be non-activatable is a dep is missing for example.
-
- Oct 13, 2011
-
-
Yann Leboulanger authored
tryin to unpickle a GNU dbm file doesn't produce the same exception as bsddb. Handle both. Fixes #7013
-
- Oct 11, 2011
-
-
Yann Leboulanger authored
-
Dicson authored
-
- Oct 10, 2011
-
-
Dicson authored
-
Yann Leboulanger authored
-
- Jun 13, 2011
-
-
Yann Leboulanger authored
-
- Sep 17, 2010
-
-
Yann Leboulanger authored
-
- Sep 10, 2010
-
-
Yann Leboulanger authored
-
- Apr 07, 2010
-
-
Éric Araujo authored
Also use sed to remove now unneeded Vim lines, 2to3 -f ws_comma to fix some whitespace, and fix some other madness manually.
-
- Apr 28, 2009
-
-
Mateusz Biliński authored
-
- Aug 18, 2008
-
-
Mateusz Biliński authored
Three core (raw) events (iq, message, presence) go also through Network Events Controller (layer between network library and Global Events Dispatcher, newly added) and from there they are dispatched through Global Events Dispatcher. Ability to register new incoming network events (based on exisiting one) added. Modify-only network events are possible (eg. add some text each message, but don't create any new global event). Events creation can be chained. Examples of new network events classes are in New Events Example plugin. Events from src/gajim.py now all go through Global Events Dispatcher and only through it (easy to modify, in chain, data passed with them).
-
- Aug 10, 2008
-
-
Mateusz Biliński authored
Events previously generated for D-Bus support in remote_control.py go through Global Events Dispatcher now - this means any plugin can subscribe to them. Implemented D-Bus support plugin based on remote_control.py.
-
- Aug 03, 2008
-
-
Mateusz Biliński authored
-
Mateusz Biliński authored
Improvements to GUI extension points handling - added method to remove these from PluginManager (memory optimization). Removed logging from most of the code.
-
- Jul 29, 2008
-
-
Mateusz Biliński authored
Length Notifier Plugin has configuration dialog (added entry with JIDs to be included when plugin is working) - fully usable. Default values of configuration key has been added to GajimPlugin. Some other minor changes/fixes.
-
- Jul 18, 2008
-
-
Mateusz Biliński authored
-
- Jul 05, 2008
-
-
Mateusz Biliński authored
-
- Jun 19, 2008
-
-
Mateusz Biliński authored
Added GajimPluginConfigDialog class - dialog that plugins should use to present configuration to user. Now, 'Configure' button is invoked only for plug-ins that have config_dialog.
-
- Jun 18, 2008
-
-
Mateusz Biliński authored
Added new 'init' method to Plugin class that plugins can implement to make actions that need to be done only once - when plugin is added (not activated) to Gajim. In this method plugins should declare handlers for GUI extension points. This was created so that __init__ method doesn't have to be reimplemented in specific way (create config, load config) - it is all done by __init__ in Plugin class. If __init__ is reimplemented, it must call Plugin __init__ (eg. using super() ) to plugin work properly. Example plug-ins were modified to use init() instead of __init__(). Added new category in configuration - 'plugins'. It only holds one option for each plugin - 'active', which determines whether plugin should be activated on startup. Now, Gajim remembers which plugins are active on exit, and activates them on next startup.
-
- Jun 14, 2008
-
-
Mateusz Biliński authored
Plugin can be a package (directory) now. Added example plugin that modifies roster window (with glade file). Added activate and deactivate methods to Plugin (used in forementioned RosterButtonsPlugin).
-
- Jun 12, 2008
-
-
Mateusz Biliński authored
-
- Jun 07, 2008
-
-
Mateusz Biliński authored
Added first version of 'Plugins' window. It's accessible through 'Edit/Plugins' item in roster menu. It seems that you can successfully (de)activate plug-ins through GUI now. Added 'homepage' attribute to Plugin class. Added (commented out) calls of pycallgraph in src/gajim.py for later use. [xbright] Changed 'python' to 'python2.5' because code uses modules not available in previous versions of Python.
-
- Jun 02, 2008
-
-
Mateusz Biliński authored
Added docstrings in reST format (also with todos). Commented out 'print' statements related to roster window. A few modifications to make code prettier (PyLint driven).
-
- Jun 01, 2008
-
-
Mateusz Biliński authored
- 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)
-