[Bf-extensions-cvs] [0a6d3d72] master: animation_animall: workaround for data refresh: T68332 T68666
Damien Picard
noreply at git.blender.org
Tue Sep 3 14:56:25 CEST 2019
Commit: 0a6d3d725f0b6edc99198f6afa91138968580caf
Author: Damien Picard
Date: Tue Sep 3 14:47:18 2019 +0200
Branches: master
https://developer.blender.org/rBA0a6d3d725f0b6edc99198f6afa91138968580caf
animation_animall: workaround for data refresh: T68332 T68666
===================================================================
M animation_animall.py
===================================================================
diff --git a/animation_animall.py b/animation_animall.py
index df658ff3..f919bbb9 100644
--- a/animation_animall.py
+++ b/animation_animall.py
@@ -44,6 +44,7 @@ from bpy.props import (
BoolProperty,
StringProperty,
)
+from bpy.app.handlers import persistent
# Property Definitions
@@ -563,6 +564,15 @@ class AnimallAddonPreferences(AddonPreferences):
col.prop(self, "category", text="")
+ at persistent
+def animall_update_handler(scene):
+ '''Force data refresh on frame change.
+ To be removed when T68666 is fixed, probably.'''
+ for obj in scene.objects:
+ if obj.data is not None:
+ obj.update_tag(refresh={'DATA'})
+
+
def register():
bpy.utils.register_class(AnimallProperties)
bpy.types.WindowManager.animall_properties = bpy.props.PointerProperty(type=AnimallProperties)
@@ -572,6 +582,7 @@ def register():
bpy.utils.register_class(ANIM_OT_clear_animation_animall)
bpy.utils.register_class(AnimallAddonPreferences)
update_panel(None, bpy.context)
+ bpy.app.handlers.frame_change_post.append(animall_update_handler)
def unregister():
@@ -582,6 +593,7 @@ def unregister():
bpy.utils.unregister_class(ANIM_OT_delete_keyframe_animall)
bpy.utils.unregister_class(ANIM_OT_clear_animation_animall)
bpy.utils.unregister_class(AnimallAddonPreferences)
+ bpy.app.handlers.frame_change_post.remove(animall_update_handler)
if __name__ == "__main__":
register()
More information about the Bf-extensions-cvs
mailing list