Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Gavrilov <angavrilov@gmail.com>2022-11-13 00:54:17 +0300
committerAlexander Gavrilov <angavrilov@gmail.com>2022-11-13 16:23:29 +0300
commit01e8af3348fac2babe3b5218dbe4ecdaa0e1eace (patch)
tree3a6239133282569da143ce22bda34f14f98af473 /rigify/rigs/basic/copy_chain.py
parent68419fb3659f09e8447d351a25b1bd8e56211a5a (diff)
Rigify: annotate and fix warnings in basic rig components.HEADmaster
Introduce a method to annotate types and names of entries in the `bones` container of rig components and apply it, and other type annotations, to a number of not very complex rig classes. - Introduce BaseRigMixin as a typed base class for mixins intended for use in rig classes (using BaseRig as a parent causes issues). - Introduce TypedBoneDict that does not suppress the unknown attribute analysis in PyCharm, and use it in a system of subclasses to annotate the bones in various rigs. BaseBoneDict is necessary because the annotation affects all subclasses, so TypedBoneDict cannot inherit from BoneDict with the annotation. - Add or adjust other type annotations of rig methods and utilities. - Fix other warnings, e.g. undeclared attributes, excessively long lines, whitespace style issues and typos.
Diffstat (limited to 'rigify/rigs/basic/copy_chain.py')
-rw-r--r--rigify/rigs/basic/copy_chain.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/rigify/rigs/basic/copy_chain.py b/rigify/rigs/basic/copy_chain.py
index cf77a834..3dbf79d4 100644
--- a/rigify/rigs/basic/copy_chain.py
+++ b/rigify/rigs/basic/copy_chain.py
@@ -11,6 +11,10 @@ class Rig(SimpleChainRig):
and constrain it.
This is a control and deformation rig.
"""
+
+ make_controls: bool
+ make_deforms: bool
+
def initialize(self):
super().initialize()
@@ -72,15 +76,17 @@ class Rig(SimpleChainRig):
# Parameter UI
@classmethod
- def add_parameters(self, params):
+ def add_parameters(cls, params):
""" Add the parameters of this rig type to the
RigifyParameters PropertyGroup
"""
- params.make_controls = bpy.props.BoolProperty(name="Controls", default=True, description="Create control bones for the copy")
- params.make_deforms = bpy.props.BoolProperty(name="Deform", default=True, description="Create deform bones for the copy")
+ params.make_controls = bpy.props.BoolProperty(
+ name="Controls", default=True, description="Create control bones for the copy")
+ params.make_deforms = bpy.props.BoolProperty(
+ name="Deform", default=True, description="Create deform bones for the copy")
@classmethod
- def parameters_ui(self, layout, params):
+ def parameters_ui(cls, layout, params):
""" Create the ui for the rig parameters.
"""
r = layout.row()