Skip to content
Snippets Groups Projects
  1. Sep 07, 2011
  2. Sep 04, 2011
  3. Aug 31, 2011
  4. Aug 30, 2011
  5. Jan 03, 2011
  6. Nov 05, 2010
  7. Nov 01, 2010
  8. Sep 21, 2010
  9. Sep 20, 2010
  10. Sep 19, 2010
  11. Sep 18, 2010
  12. Sep 17, 2010
  13. Sep 14, 2010
  14. Apr 07, 2010
  15. Aug 25, 2008
  16. 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
  17. Aug 11, 2008
  18. 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
  19. Aug 03, 2008
  20. Jul 31, 2008
  21. 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
  22. Jun 14, 2008
  23. Jun 08, 2008
  24. 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
  25. Jun 03, 2008
  26. Jun 02, 2008
  27. 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