Skip to content
Snippets Groups Projects
  1. Apr 29, 2012
  2. Oct 13, 2011
  3. Oct 11, 2011
  4. Oct 10, 2011
  5. Jun 13, 2011
  6. Sep 17, 2010
  7. Sep 10, 2010
  8. Apr 07, 2010
  9. Apr 28, 2009
  10. Aug 18, 2008
    • Mateusz Biliński's avatar
      Three core (raw) events (iq, message, presence) go also through Network Events... · c0a26be6
      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).
      c0a26be6
  11. Aug 10, 2008
    • Mateusz Biliński's avatar
      Initial version of Global Events Dispatcher. · 06aee9d2
      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.
      06aee9d2
  12. Aug 03, 2008
  13. Jul 29, 2008
  14. Jul 18, 2008
  15. Jul 05, 2008
  16. Jun 19, 2008
  17. Jun 18, 2008
    • Mateusz Biliński's avatar
      Added new 'init' method to Plugin class that plugins can implement to make... · 8581b862
      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.
      8581b862
  18. Jun 14, 2008
  19. Jun 12, 2008
  20. Jun 07, 2008
    • Mateusz Biliński's avatar
      Added first version of 'Plugins' window. It's accessible through... · e1279259
      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.
      e1279259
  21. Jun 02, 2008
  22. Jun 01, 2008
    • Mateusz Biliński's avatar
      Initial commit related to plug-in system: · 95b1e459
      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)
      95b1e459
Loading