Changeset View
Changeset View
Standalone View
Standalone View
rigify/metarig_menu.py
| Show First 20 Lines • Show All 153 Lines • ▼ Show 20 Lines | for metarig_class in metarig_classes: | ||||
| armature_submenus[-1].bl_idname = 'ARMATURE_MT_%s_class' % metarig_class | armature_submenus[-1].bl_idname = 'ARMATURE_MT_%s_class' % metarig_class | ||||
| armature_submenus[-1].operators = [] | armature_submenus[-1].operators = [] | ||||
| menu_funcs += [make_submenu_func(armature_submenus[-1].bl_idname, metarig_class)] | menu_funcs += [make_submenu_func(armature_submenus[-1].bl_idname, metarig_class)] | ||||
| for mop, name in metarig_ops[metarig_class]: | for mop, name in metarig_ops[metarig_class]: | ||||
| arm_sub = next((e for e in armature_submenus if e.bl_label == metarig_class + ' (submenu)'), '') | arm_sub = next((e for e in armature_submenus if e.bl_label == metarig_class + ' (submenu)'), '') | ||||
| arm_sub.operators.append((mop.bl_idname, name,)) | arm_sub.operators.append((mop.bl_idname, name,)) | ||||
| ### Registering ### | |||||
| def register(): | def register(): | ||||
| from bpy.utils import register_class | |||||
| for cl in metarig_ops: | for cl in metarig_ops: | ||||
| for mop, name in metarig_ops[cl]: | for mop, name in metarig_ops[cl]: | ||||
| bpy.utils.register_class(mop) | register_class(mop) | ||||
| for arm_sub in armature_submenus: | for arm_sub in armature_submenus: | ||||
| bpy.utils.register_class(arm_sub) | register_class(arm_sub) | ||||
| for mf in menu_funcs: | for mf in menu_funcs: | ||||
| bpy.types.INFO_MT_armature_add.append(mf) | bpy.types.VIEW3D_MT_armature_add.append(mf) | ||||
| def unregister(): | def unregister(): | ||||
| from bpy.utils import unregister_class | |||||
| for cl in metarig_ops: | for cl in metarig_ops: | ||||
| for mop, name in metarig_ops[cl]: | for mop, name in metarig_ops[cl]: | ||||
| bpy.utils.unregister_class(mop) | unregister_class(mop) | ||||
| for arm_sub in armature_submenus: | for arm_sub in armature_submenus: | ||||
| bpy.utils.unregister_class(arm_sub) | unregister_class(arm_sub) | ||||
| for mf in menu_funcs: | for mf in menu_funcs: | ||||
| bpy.types.INFO_MT_armature_add.remove(mf) | bpy.types.VIEW3D_MT_armature_add.remove(mf) | ||||