def register():

    # register the classes
    for cls in classes_to_register:
        bpy.utils.register_class(cls)

    # add the property to the edit bones
    bpy.types.EditBone.editboneconstraint = bpy.props.PointerProperty(
        type=EditBoneConstraintProperties,
        name="Edit Bone Constraint Properties")

    # handle the keymap
    wm = bpy.context.window_manager
    km = wm.keyconfigs.addon.keymaps.new(name="3D View", space_type="VIEW_3D")
    kmi = km.keymap_items.new("editbone.constraint_add_with_targets",
                              "C",
                              "PRESS",
                              ctrl=True,
                              shift=True)
    addon_keymaps.append((km, kmi))
    kmi = km.keymap_items.new("editbone.clear_constraints",
                              "C",
                              "PRESS",
                              ctrl=True,
                              alt=True)
    addon_keymaps.append((km, kmi))

    # Timers
    if not timers.is_registered(auto_evaluate_timer):
        timers.register(auto_evaluate_timer, persistent=True)
示例#2
0
 def execute(self, context):
     package_name = __package__.split(".")[0]
     prefs = bpy.context.preferences.addons[package_name].preferences
     if timers.is_registered(auto_evaluate_timer):
         timers.unregister(auto_evaluate_timer)
     prefs.auto_evaluation = False
     return {"FINISHED"}
def unregister():
    # unregister the classes
    for cls in classes_to_register:
        bpy.utils.unregister_class(cls)

    # delete the edit bones property
    del bpy.types.EditBone.editboneconstraint

    # handle the keymap
    for keymap, keymap_item in addon_keymaps:
        keymap.keymap_items.remove(keymap_item)
    addon_keymaps.clear()

    # Timers
    if timers.is_registered(auto_evaluate_timer):
        timers.unregister(auto_evaluate_timer)
def _update_cycles():
    if timers.is_registered(_timer):
        global _again
        _again = True
        return

    global _first
    _first = True

    global _old
    _old = node().interpolation

    global _new

    if _old == 'Linear':
        _new = 'Cubic'
    else:
        _new = 'Linear'

    timers.register(_timer)