[Bf-blender-cvs] [b07e983b613] master: PyAPI: Add bpy.utils.register_classes_factory
Campbell Barton
noreply at git.blender.org
Mon Sep 4 16:17:14 CEST 2017
Commit: b07e983b613b9dd61262d4ff45908c33b0b9e8a1
Author: Campbell Barton
Date: Tue Sep 5 00:22:31 2017 +1000
Branches: master
https://developer.blender.org/rBb07e983b613b9dd61262d4ff45908c33b0b9e8a1
PyAPI: Add bpy.utils.register_classes_factory
Avoids having boiler plate register/unregister functions.
===================================================================
M release/scripts/modules/bpy/utils/__init__.py
===================================================================
diff --git a/release/scripts/modules/bpy/utils/__init__.py b/release/scripts/modules/bpy/utils/__init__.py
index 966a1fe877c..185a0e73279 100644
--- a/release/scripts/modules/bpy/utils/__init__.py
+++ b/release/scripts/modules/bpy/utils/__init__.py
@@ -37,6 +37,7 @@ __all__ = (
"register_module",
"register_manual_map",
"unregister_manual_map",
+ "register_classes_factory",
"register_submodule_factory",
"make_rna_paths",
"manual_map",
@@ -702,6 +703,24 @@ def unregister_module(module, verbose=False):
print("done.\n")
+def register_classes_factory(classes):
+ """
+ Utility function to create register and unregister functions
+ which simply registers and unregisters a sequence of classes.
+ """
+ def register():
+ from bpy.utils import register_class
+ for cls in classes:
+ register_class(cls)
+
+ def unregister():
+ from bpy.utils import unregister_class
+ for cls in reversed(classes):
+ unregister_class(cls)
+
+ return register, unregister
+
+
def register_submodule_factory(module_name, submodule_names):
"""
Utility function to create register and unregister functions
More information about the Bf-blender-cvs
mailing list