From 69a01104221249ecbd497a01ea2e78d0dceb6777 Mon Sep 17 00:00:00 2001 From: Sindre Wetjen Date: Sun, 27 Sep 2015 00:55:15 +0200 Subject: [PATCH] [Addons] Make it possible to distribute addons in a directory. with addons that are large and e.g. use git, it is very inconvenient to have any files that is outside the addon directory. This patch makes it possible to create an executable dir that is loaded as an addon. --- aqt/addons.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/aqt/addons.py b/aqt/addons.py index 45f1bcd7d..dad787fad 100644 --- a/aqt/addons.py +++ b/aqt/addons.py @@ -35,12 +35,21 @@ class AddonManager(object): return [f for f in os.listdir(self.addonsFolder()) if f.endswith(".py")] + def directories(self): + return [d for d in os.listdir(self.addonsFolder()) + if not d.startswith('.') and os.path.isdir(os.path.join(self.addonsFolder(), d))] + def loadAddons(self): for file in self.files(): try: __import__(file.replace(".py", "")) except: traceback.print_exc() + for directory in self.directories(): + try: + __import__(directory) + except: + traceback.print_exc() self.rebuildAddonsMenu() # Menus