Skip to content

Commit 5183e90

Browse files
committed
bendy_eye: paired eye taken from dropdown
1 parent 9793a15 commit 5183e90

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

rigs/experimental/bendy_eye.py

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -945,6 +945,7 @@ def set_paired(self, value):
945945
return
946946

947947
if obj.pose.bones[value].rigify_parameters.paired_eye != name:
948+
obj.pose.bones[value].rigify_parameters.clustered_eye = False
948949
obj.pose.bones[value].rigify_parameters.paired_eye = name
949950

950951
def get_paired(self):
@@ -953,6 +954,14 @@ def get_paired(self):
953954
else:
954955
return ''
955956

957+
class EyeName(bpy.types.PropertyGroup):
958+
name = bpy.props.StringProperty()
959+
960+
bpy.utils.register_class(EyeName)
961+
962+
IDStore = bpy.types.WindowManager
963+
IDStore.other_eyes = bpy.props.CollectionProperty(type=EyeName)
964+
956965
params.set_paired = set_paired
957966
params.get_paired = get_paired
958967

@@ -980,8 +989,20 @@ def parameters_ui(layout, params):
980989
r = layout.row()
981990
r.prop(params, "clustered_eye")
982991

992+
id_store = bpy.context.window_manager
993+
994+
for i in range(0, len(id_store.other_eyes)):
995+
id_store.other_eyes.remove(0)
996+
997+
bones = bpy.context.active_object.pose.bones
998+
for t in bones:
999+
if t.rigify_type == 'experimental.bendy_eye':
1000+
id_store.other_eyes.add()
1001+
id_store.other_eyes[-1].name = t.name
1002+
9831003
r = layout.row()
984-
r.prop(params, "paired_eye")
1004+
r.prop_search(params, "paired_eye", id_store, "other_eyes", text="Paired eye", icon='BONE_DATA')
1005+
9851006
if params.clustered_eye:
9861007
r.enabled = False
9871008

0 commit comments

Comments
 (0)