diff options
author | mathieui <mathieui@mathieui.net> | 2013-01-18 23:08:40 +0100 |
---|---|---|
committer | mathieui <mathieui@mathieui.net> | 2013-01-18 23:25:33 +0100 |
commit | 3755b51430f5532e2cf3934f027537b832c07b2a (patch) | |
tree | f5f172d116771772ced1fb8a05a038f866c81e21 | |
parent | b3341c63272be3322a7276a3f1ff34598888ce0a (diff) | |
download | poezio-3755b51430f5532e2cf3934f027537b832c07b2a.tar.gz poezio-3755b51430f5532e2cf3934f027537b832c07b2a.tar.bz2 poezio-3755b51430f5532e2cf3934f027537b832c07b2a.tar.xz poezio-3755b51430f5532e2cf3934f027537b832c07b2a.zip |
Use the new command scheme in plugins too
(while staying backwards-compatible)
-rw-r--r-- | src/plugin.py | 10 | ||||
-rw-r--r-- | src/plugin_manager.py | 11 |
2 files changed, 12 insertions, 9 deletions
diff --git a/src/plugin.py b/src/plugin.py index bd5c88be..537f7b61 100644 --- a/src/plugin.py +++ b/src/plugin.py @@ -113,12 +113,13 @@ class BasePlugin(object, metaclass=SafetyMetaclass): def unload(self): self.cleanup() - def add_command(self, name, handler, help, completion=None): + def add_command(self, name, handler, help, completion=None, short='', usage=''): """ Add a global command. You cannot overwrite the existing commands. """ - return self.plugin_manager.add_command(self.__module__, name, handler, help, completion) + return self.plugin_manager.add_command(self.__module__, name, handler, help, + completion=completion, short=short, usage=usage) def del_command(self, name): """ @@ -151,11 +152,12 @@ class BasePlugin(object, metaclass=SafetyMetaclass): """ return self.plugin_manager.del_tab_key(self.__module__, tab_type, key) - def add_tab_command(self, tab_type, name, handler, help, completion=None): + def add_tab_command(self, tab_type, name, handler, help, completion=None, short='', usage=''): """ Add a command only for a type of tab. """ - return self.plugin_manager.add_tab_command(self.__module__, tab_type, name, handler, help, completion) + return self.plugin_manager.add_tab_command(self.__module__, tab_type, name, handler, help, + completion=completion, short=short, usage=usage) def del_tab_command(self, tab_type, name): """ diff --git a/src/plugin_manager.py b/src/plugin_manager.py index a1782e1b..5f848ec2 100644 --- a/src/plugin_manager.py +++ b/src/plugin_manager.py @@ -12,6 +12,7 @@ import sys import logging from gettext import gettext as _ +import core import tabs from config import config @@ -126,7 +127,7 @@ class PluginManager(object): log.debug("Could not unload plugin: \n%s", traceback.format_exc()) self.core.information("Could not unload plugin: %s" % e, 'Error') - def add_command(self, module_name, name, handler, help, completion=None): + def add_command(self, module_name, name, handler, help, completion=None, short='', usage=''): """ Add a global command. """ @@ -134,8 +135,8 @@ class PluginManager(object): raise Exception(_("Command '%s' already exists") % (name,)) commands = self.commands[module_name] - commands[name] = (handler, help, completion) - self.core.commands[name] = (handler, help, completion) + commands[name] = core.Command(handler, help, completion, short, usage) + self.core.commands[name] = commands[name] def del_command(self, module_name, name): """ @@ -146,7 +147,7 @@ class PluginManager(object): if name in self.core.commands: del self.core.commands[name] - def add_tab_command(self, module_name, tab_type, name, handler, help, completion=None): + def add_tab_command(self, module_name, tab_type, name, handler, help, completion=None, short='', usage=''): """ Add a command only for a type of Tab. """ @@ -157,7 +158,7 @@ class PluginManager(object): if not t in commands: commands[t] = [] commands[t].append((name, handler, help, completion)) - tab_type.plugin_commands[name] = (handler, help, completion) + tab_type.plugin_commands[name] = core.Command(handler, help, completion, short, usage) for tab in self.core.tabs: if isinstance(tab, tab_type): tab.update_commands() |