forked from bartvdbraak/blender
1c3f2354f8
- converted 3 options in keying sets to use bl_options like panels & operators - removed function arguments for new keying sets, better adjust these after to avoid duplicating properties in function arguments (they were not used).
226 lines
5.9 KiB
Python
226 lines
5.9 KiB
Python
# Built-In Keying Sets
|
|
# None of these Keying Sets should be removed, as these
|
|
# are needed by various parts of Blender in order for them
|
|
# to work correctly.
|
|
|
|
import bpy
|
|
from keyingsets_utils import *
|
|
|
|
###############################
|
|
# Built-In KeyingSets
|
|
|
|
# Location
|
|
class BUILTIN_KSI_Location(bpy.types.KeyingSetInfo):
|
|
bl_label = "Location"
|
|
|
|
# poll - use predefined callback for selected bones/objects
|
|
poll = RKS_POLL_selected_items
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
generate = RKS_GEN_location
|
|
|
|
# Rotation
|
|
class BUILTIN_KSI_Rotation(bpy.types.KeyingSetInfo):
|
|
bl_label = "Rotation"
|
|
|
|
# poll - use predefined callback for selected bones/objects
|
|
poll = RKS_POLL_selected_items
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
generate = RKS_GEN_rotation
|
|
|
|
# Scale
|
|
class BUILTIN_KSI_Scaling(bpy.types.KeyingSetInfo):
|
|
bl_label = "Scaling"
|
|
|
|
# poll - use predefined callback for selected bones/objects
|
|
poll = RKS_POLL_selected_items
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
generate = RKS_GEN_scaling
|
|
|
|
# ------------
|
|
|
|
# LocRot
|
|
class BUILTIN_KSI_LocRot(bpy.types.KeyingSetInfo):
|
|
bl_label = "LocRot"
|
|
|
|
# poll - use predefined callback for selected bones/objects
|
|
poll = RKS_POLL_selected_items
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
def generate(self, context, ks, data):
|
|
# location
|
|
RKS_GEN_location(self, context, ks, data)
|
|
# rotation
|
|
RKS_GEN_rotation(self, context, ks, data)
|
|
|
|
# LocScale
|
|
class BUILTIN_KSI_LocScale(bpy.types.KeyingSetInfo):
|
|
bl_label = "LocScale"
|
|
|
|
# poll - use predefined callback for selected bones/objects
|
|
poll = RKS_POLL_selected_items
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
def generate(self, context, ks, data):
|
|
# location
|
|
RKS_GEN_location(self, context, ks, data)
|
|
# scale
|
|
RKS_GEN_scaling(self, context, ks, data)
|
|
|
|
# LocRotScale
|
|
class BUILTIN_KSI_LocRotScale(bpy.types.KeyingSetInfo):
|
|
bl_label = "LocRotScale"
|
|
|
|
# poll - use predefined callback for selected bones/objects
|
|
poll = RKS_POLL_selected_items
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
def generate(self, context, ks, data):
|
|
# location
|
|
RKS_GEN_location(self, context, ks, data)
|
|
# rotation
|
|
RKS_GEN_rotation(self, context, ks, data)
|
|
# scale
|
|
RKS_GEN_scaling(self, context, ks, data)
|
|
|
|
# RotScale
|
|
class BUILTIN_KSI_RotScale(bpy.types.KeyingSetInfo):
|
|
bl_label = "RotScale"
|
|
|
|
# poll - use predefined callback for selected bones/objects
|
|
poll = RKS_POLL_selected_items
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
def generate(self, context, ks, data):
|
|
# rotation
|
|
RKS_GEN_rotation(self, context, ks, data)
|
|
# scaling
|
|
RKS_GEN_scaling(self, context, ks, data)
|
|
|
|
# ------------
|
|
|
|
# Location
|
|
class BUILTIN_KSI_VisualLoc(bpy.types.KeyingSetInfo):
|
|
bl_label = "Visual Location"
|
|
|
|
insertkey_visual = True
|
|
|
|
# poll - use predefined callback for selected bones/objects
|
|
poll = RKS_POLL_selected_items
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
generate = RKS_GEN_location
|
|
|
|
# Rotation
|
|
class BUILTIN_KSI_VisualRot(bpy.types.KeyingSetInfo):
|
|
bl_label = "Visual Rotation"
|
|
|
|
bl_options = {'INSERTKEY_VISUAL'}
|
|
|
|
# poll - use predefined callback for selected bones/objects
|
|
poll = RKS_POLL_selected_items
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
generate = RKS_GEN_rotation
|
|
|
|
# VisualLocRot
|
|
class BUILTIN_KSI_VisualLocRot(bpy.types.KeyingSetInfo):
|
|
bl_label = "Visual LocRot"
|
|
|
|
bl_options = {'INSERTKEY_VISUAL'}
|
|
|
|
# poll - use predefined callback for selected bones/objects
|
|
poll = RKS_POLL_selected_items
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
def generate(self, context, ks, data):
|
|
# location
|
|
RKS_GEN_location(self, context, ks, data)
|
|
# rotation
|
|
RKS_GEN_rotation(self, context, ks, data)
|
|
|
|
# ------------
|
|
|
|
# Available
|
|
class BUILTIN_KSI_Available(bpy.types.KeyingSetInfo):
|
|
bl_label = "Available"
|
|
|
|
# poll - use predefined callback for selected objects
|
|
# TODO: this should really check whether the selected object (or datablock)
|
|
# has any animation data defined yet
|
|
poll = RKS_POLL_selected_objects
|
|
|
|
# iterator - use callback for selected bones/objects
|
|
iterator = RKS_ITER_selected_item
|
|
|
|
# generator - use callback for location
|
|
generate = RKS_GEN_available
|
|
|
|
###############################
|
|
|
|
classes = [
|
|
BUILTIN_KSI_Location,
|
|
BUILTIN_KSI_Rotation,
|
|
BUILTIN_KSI_Scaling,
|
|
|
|
BUILTIN_KSI_LocRot,
|
|
BUILTIN_KSI_LocScale,
|
|
BUILTIN_KSI_LocRotScale,
|
|
BUILTIN_KSI_RotScale,
|
|
|
|
BUILTIN_KSI_VisualLoc,
|
|
BUILTIN_KSI_VisualRot,
|
|
BUILTIN_KSI_VisualLocRot,
|
|
|
|
BUILTIN_KSI_Available,
|
|
]
|
|
|
|
|
|
def register():
|
|
register = bpy.types.register
|
|
for cls in classes:
|
|
register(cls)
|
|
|
|
|
|
def unregister():
|
|
unregister = bpy.types.unregister
|
|
for cls in classes:
|
|
unregister(cls)
|
|
|
|
if __name__ == "__main__":
|
|
register()
|
|
|
|
###############################
|