diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-09-23 17:47:29 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-09-23 17:47:29 +0400 |
commit | c658b74db5a9b469393cb02133731fdcb01bcdf7 (patch) | |
tree | e1ad4c42d7700effa74529409a28722da85d52e5 /release | |
parent | f7c8ea702f4736371e50c4d3066de46d17f4d686 (diff) |
minor edits to recent fix for addons
Diffstat (limited to 'release')
-rw-r--r-- | release/scripts/modules/addon_utils.py | 6 | ||||
-rw-r--r-- | release/scripts/startup/bl_operators/wm.py | 28 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/__init__.py | 3 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/space_userpref.py | 2 |
4 files changed, 23 insertions, 16 deletions
diff --git a/release/scripts/modules/addon_utils.py b/release/scripts/modules/addon_utils.py index 9d0f540b08b..ef9a4615ff2 100644 --- a/release/scripts/modules/addon_utils.py +++ b/release/scripts/modules/addon_utils.py @@ -33,11 +33,7 @@ import bpy as _bpy error_duplicates = False error_encoding = False - -_addons_fake_modules = {} - -def module_get(mod_name): - return _addons_fake_modules[mod_name] +addons_fake_modules = {} def paths(): diff --git a/release/scripts/startup/bl_operators/wm.py b/release/scripts/startup/bl_operators/wm.py index 46227b2f48d..fd2b14658ad 100644 --- a/release/scripts/startup/bl_operators/wm.py +++ b/release/scripts/startup/bl_operators/wm.py @@ -26,9 +26,6 @@ from bpy.props import (StringProperty, FloatProperty, EnumProperty, ) - -import addon_utils -import os from rna_prop_ui import rna_idprop_ui_prop_get, rna_idprop_ui_prop_clear @@ -758,6 +755,7 @@ class WM_OT_path_open(Operator): def execute(self, context): import sys + import os import subprocess filepath = bpy.path.abspath(self.filepath) @@ -1102,6 +1100,7 @@ class WM_OT_appconfig_default(Operator): bl_label = "Default Application Configuration" def execute(self, context): + import os context.window_manager.keyconfigs.active = context.window_manager.keyconfigs.default @@ -1123,6 +1122,7 @@ class WM_OT_appconfig_activate(Operator): ) def execute(self, context): + import os bpy.utils.keyconfig_set(self.filepath) filepath = self.filepath.replace("keyconfig", "interaction") @@ -1150,6 +1150,7 @@ class WM_OT_copy_prev_settings(Operator): bl_label = "Copy Previous Settings" def execute(self, context): + import os import shutil ver = bpy.app.version ver_old = ((ver[0] * 100) + ver[1]) - 1 @@ -1608,6 +1609,8 @@ class WM_OT_addon_enable(Operator): ) def execute(self, context): + import addon_utils + mod = addon_utils.enable(self.module) if mod: @@ -1637,6 +1640,8 @@ class WM_OT_addon_disable(Operator): ) def execute(self, context): + import addon_utils + addon_utils.disable(self.module) return {'FINISHED'} @@ -1690,6 +1695,7 @@ class WM_OT_addon_install(Operator): os.remove(f_full) def execute(self, context): + import addon_utils import traceback import zipfile import shutil @@ -1725,7 +1731,7 @@ class WM_OT_addon_install(Operator): del pyfile_dir # done checking for exceptional case - addons_old = {mod.__name__ for mod in addon_utils.modules(addon_utils._addons_fake_modules)} + addons_old = {mod.__name__ for mod in addon_utils.modules(addon_utils.addons_fake_modules)} #check to see if the file is in compressed format (.zip) if zipfile.is_zipfile(pyfile): @@ -1774,7 +1780,7 @@ class WM_OT_addon_install(Operator): traceback.print_exc() return {'CANCELLED'} - addons_new = {mod.__name__ for mod in addon_utils.modules(addon_utils._addons_fake_modules)} - addons_old + addons_new = {mod.__name__ for mod in addon_utils.modules(addon_utils.addons_fake_modules)} - addons_old addons_new.discard("modules") # disable any addons we may have enabled previously and removed. @@ -1784,7 +1790,7 @@ class WM_OT_addon_install(Operator): # possible the zip contains multiple addons, we could disallow this # but for now just use the first - for mod in addon_utils.modules(addon_utils._addons_fake_modules): + for mod in addon_utils.modules(addon_utils.addons_fake_modules): if mod.__name__ in addons_new: info = addon_utils.module_bl_info(mod) @@ -1818,7 +1824,9 @@ class WM_OT_addon_remove(Operator): @staticmethod def path_from_addon(module): - for mod in addon_utils.modules(addon_utils._addons_fake_modules): + import addon_utils + + for mod in addon_utils.modules(addon_utils.addons_fake_modules): if mod.__name__ == module: filepath = mod.__file__ if os.path.exists(filepath): @@ -1829,6 +1837,8 @@ class WM_OT_addon_remove(Operator): return None, False def execute(self, context): + import addon_utils + path, isdir = WM_OT_addon_remove.path_from_addon(self.module) if path is None: self.report('WARNING', "Addon path %r could not be found" % path) @@ -1868,12 +1878,14 @@ class WM_OT_addon_expand(Operator): ) def execute(self, context): + import addon_utils + module_name = self.module # unlikely to fail, module should have already been imported try: # mod = __import__(module_name) - mod = addon_utils.module_get(module_name) + mod = addon_utils.addons_fake_modules.get(module_name) except: import traceback traceback.print_exc() diff --git a/release/scripts/startup/bl_ui/__init__.py b/release/scripts/startup/bl_ui/__init__.py index 04617243730..2e54631afa3 100644 --- a/release/scripts/startup/bl_ui/__init__.py +++ b/release/scripts/startup/bl_ui/__init__.py @@ -77,7 +77,6 @@ del _namespace import bpy -import addon_utils def register(): @@ -97,7 +96,7 @@ def register(): items_unique = set() - for mod in addon_utils.modules(addon_utils._addons_fake_modules): + for mod in addon_utils.modules(addon_utils.addons_fake_modules): info = addon_utils.module_bl_info(mod) items_unique.add(info["category"]) diff --git a/release/scripts/startup/bl_ui/space_userpref.py b/release/scripts/startup/bl_ui/space_userpref.py index 22c93e0d0e1..5670b912c7b 100644 --- a/release/scripts/startup/bl_ui/space_userpref.py +++ b/release/scripts/startup/bl_ui/space_userpref.py @@ -926,7 +926,7 @@ class USERPREF_PT_addons(Panel): used_ext = {ext.module for ext in userpref.addons} # collect the categories that can be filtered on - addons = [(mod, addon_utils.module_bl_info(mod)) for mod in addon_utils.modules(addon_utils._addons_fake_modules)] + addons = [(mod, addon_utils.module_bl_info(mod)) for mod in addon_utils.modules(addon_utils.addons_fake_modules)] split = layout.split(percentage=0.2) col = split.column() |