Changeset View
Changeset View
Standalone View
Standalone View
release/scripts/modules/addon_utils.py
| Show First 20 Lines • Show All 346 Lines • ▼ Show 20 Lines | with RestrictBlend(): | ||||
| if default_set: | if default_set: | ||||
| _addon_remove(module_name) | _addon_remove(module_name) | ||||
| return None | return None | ||||
| # 2) try register collected modules | # 2) try register collected modules | ||||
| # removed, addons need to handle own registration now. | # removed, addons need to handle own registration now. | ||||
| from _bpy import _bl_origin_get, _bl_origin_set | |||||
| bl_origin_prev = _bl_origin_get() | |||||
| _bl_origin_set(module_name) | |||||
| # 3) try run the modules register function | # 3) try run the modules register function | ||||
| try: | try: | ||||
| mod.register() | mod.register() | ||||
| except Exception as ex: | except Exception as ex: | ||||
| print("Exception in module register(): %r" % | print("Exception in module register(): %r" % | ||||
| getattr(mod, "__file__", module_name)) | getattr(mod, "__file__", module_name)) | ||||
| handle_error(ex) | handle_error(ex) | ||||
| del sys.modules[module_name] | del sys.modules[module_name] | ||||
| if default_set: | if default_set: | ||||
| _addon_remove(module_name) | _addon_remove(module_name) | ||||
| return None | return None | ||||
| finally: | |||||
| _bl_origin_set(bl_origin_prev) | |||||
| # * OK loaded successfully! * | # * OK loaded successfully! * | ||||
| mod.__addon_enabled__ = True | mod.__addon_enabled__ = True | ||||
| mod.__addon_persistent__ = persistent | mod.__addon_persistent__ = persistent | ||||
| if _bpy.app.debug_python: | if _bpy.app.debug_python: | ||||
| print("\taddon_utils.enable", mod.__name__) | print("\taddon_utils.enable", mod.__name__) | ||||
| ▲ Show 20 Lines • Show All 121 Lines • Show Last 20 Lines | |||||