Commit graph

67 commits

Author SHA1 Message Date
Denis Fomin
bb5db97546 plugin system. checking the type of stored data. Fix #7220 2012-08-22 22:21:26 +04:00
Denis Fomin
dbdb3cf035 plugin system. add plugin icon support 2012-08-16 17:58:00 +04:00
Denis Fomin
74b6ba5ca1 coding style 2012-08-16 16:56:02 +04:00
Denis Fomin
40edf1d0f2 typo 2012-08-09 21:55:35 +04:00
Denis Fomin
8295089b95 first load the plugins of the user directory. does not load the module twice. 2012-08-09 21:48:00 +04:00
Yann Leboulanger
d8f4a75ec5 set plugin error dialog transient for Plugins Window. Fixes #7184 2012-07-15 22:44:02 +02:00
Denis Fomin
926b7d8514 Select root iter in the PluginsWindow treeview. set focus on close button when switch page. 2012-06-28 13:37:55 +04:00
Yann Leboulanger
971e0502c0 don't load unactivatable plugins 2012-04-30 21:04:37 +02:00
Yann Leboulanger
3fe07c9a14 ability for plugins to be activatable. True by default, but plugin can be non-activatable is a dep is missing for example. 2012-04-30 00:43:18 +02:00
Denis Fomin
71e6f991e0 Prevent traceback 2012-01-07 12:00:04 +04:00
Denis Fomin
4564c2c558 Use set_rules_hint(True) in the installed plugins treeview 2011-11-26 22:52:04 +03:00
Denis Fomin
b4acd70336 catch the error in the plugins manifest file 2011-10-16 22:40:42 +03:00
Yann Leboulanger
d37bdc7a89 tryin to unpickle a GNU dbm file doesn't produce the same exception as bsddb. Handle both. Fixes #7013 2011-10-13 22:23:40 +02:00
Yann Leboulanger
8305f6d68e fix upgrading from old plugin config files 2011-10-11 21:44:02 +02:00
Denis Fomin
71aeb800da prevent traceback 2011-10-11 22:27:41 +03:00
Denis Fomin
572248b077 fix previos commit 2011-10-10 22:06:30 +03:00
Yann Leboulanger
c0330a8685 stop using shelve, it cannot work when upgrading python version. Fixes #6988 2011-10-10 16:43:22 +02:00
Denis Fomin
2e648d06be New gui_extension_point added. Do not use all args in remove_gui_extension_point() to identify elements to be removed. Use only first one 2011-09-26 20:47:33 +03:00
Yann Leboulanger
08a584b8b6 add missing function. Fixes #6985 2011-09-23 19:00:32 +02:00
Denis Fomin
2512f29076 pluginmanager.better exception handling when importing modules 2011-09-07 10:31:34 +03:00
Denis Fomin
4dd234321e translate all modules in the plugin dir(whiteboard plugin for example. translate plugin.py and whiteboard_widget.py) 2011-09-04 23:23:38 +03:00
Yann Leboulanger
2b11c7f8d9 make plugins translation work under windows. 2011-09-02 19:41:09 +02:00
Yann Leboulanger
195d0121ed fix uninstalling plugins 2011-08-31 14:29:13 +02:00
Denis Fomin
e194394479 imported patch 2011-08-27_00-06-54_r13163+.diff 2011-08-30 15:23:16 +03:00
Yann Leboulanger
d598cbb041 remove old way of doing advanced notification. 2011-06-13 23:06:43 +02:00
Denis Fomin
5bc571053c use standard format for plugin_system logger output 2011-01-04 00:30:42 +03:00
Denis Fomin
f13989927b remove unused pass 2011-01-04 00:12:07 +03:00
Denis Fomin
acdf6571b7 use logger if plugin manifest file is wrong formated 2011-01-04 00:04:11 +03:00
Denis Fomin
de559df7c0 pluginmanager. completely remove plugin 2010-11-05 14:56:31 +03:00
Yann Leboulanger
5fa8dab30f show warning dialog when trying to enable a plugin that raise an exception when activate is called. 2010-11-01 21:22:43 +01:00
Yann Leboulanger
ebde7d4333 [Dicson] ellipsize plugins homepage button. Fixes #6025 2010-11-01 14:35:32 +01:00
Yann Leboulanger
8ce99327bd [Dicson] some error dialogs improvements. Fixes #5930 2010-09-21 21:44:04 +02:00
Yann Leboulanger
2c95192037 [Dicson] check for manifest file when installing a plugin. Fixes #5925 2010-09-20 07:08:47 +02:00
Alexander Cherniuk
0a2458c69b A better fix for nonexistent plugins directories. 2010-09-19 11:03:25 +03:00
Alexander Cherniuk
07af278d0b Ignore nonexistent plugins directories 2010-09-19 10:59:44 +03:00
Alexander Cherniuk
ba5725cb5d Can not break a string like that. 2010-09-19 10:37:40 +03:00
Yann Leboulanger
0b448cfb10 [Dicson] use manifest.ini files in plugins to have a separate file for plugin's information. Fixes #5920 2010-09-18 23:00:43 +02:00
Yann Leboulanger
90d1ee3176 [Dicson] remove plugin entry in global config when removing the plugin. Fixes #5918 2010-09-17 21:16:17 +02:00
Yann Leboulanger
409038784a dont' load plugin config file twice. Fixes #5914 2010-09-17 10:00:25 +02:00
Yann Leboulanger
096b8f3d91 [Dicson] ability to install from zip / uninstall plugin. Fixes #5906 2010-09-14 19:31:35 +02:00
Yann Leboulanger
96de172951 Fix running Gajim under windows for users with non-ascii char in account name. Fixes #5852 2010-09-10 21:31:25 +02:00
Éric Araujo
9b5ee1e13b convert tabs to spaces in source code thanks to reindent.py
Also use sed to remove now unneeded Vim lines, 2to3 -f ws_comma to fix
some whitespace, and fix some other madness manually.
2010-04-08 01:20:17 +02:00
Yann Leboulanger
fa05d88b2b merge from default branch 2010-02-08 22:25:41 +01:00
Mateusz Biliński
018bda5a5f Merged default branch with plugin-system branch. Not all elements are fully
functional. This should be considered as sync commit.
2009-06-07 00:00:03 +02:00
Mateusz Biliński
06b6809b29 Added basic exception classes for handling plugins-related errors. 2009-04-28 15:14:38 +00:00
Yann Leboulanger
af5afb2c2d use set_transient_for instead of reparent. We don't reparent a window, but a widget 2008-08-29 11:58:27 +00:00
Yann Leboulanger
fbcc091db0 sort plugins by name 2008-08-29 11:54:34 +00:00
Mateusz Biliński
8c75ed38b1 Google Translation plugin added (proof-of-concept) that translates incoming chat messages from English to French using Google Translate service.
Plugin object that registered new event is accessible in that event now, through self.plugin.
2008-08-25 17:20:16 +00:00
Mateusz Biliński
c0a26be684 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).
2008-08-18 16:35:14 +00:00
Mateusz Biliński
8ec03d822e Added Events Dump plugin, that prints out to console info about selected events when they occur. 2008-08-11 15:22:56 +00:00