[Bf-blender-cvs] [50154a52cbb] modifier-panels-ui: Add UI for recently added bone properties
Hans Goudey
noreply at git.blender.org
Fri Apr 10 21:58:07 CEST 2020
Commit: 50154a52cbb492bcea47d8ba50f629c070b23f6a
Author: Hans Goudey
Date: Fri Apr 10 14:57:58 2020 -0500
Branches: modifier-panels-ui
https://developer.blender.org/rB50154a52cbb492bcea47d8ba50f629c070b23f6a
Add UI for recently added bone properties
===================================================================
M source/blender/modifiers/intern/MOD_displace.c
M source/blender/modifiers/intern/MOD_hook.c
M source/blender/modifiers/intern/MOD_warp.c
M source/blender/modifiers/intern/MOD_wave.c
===================================================================
diff --git a/source/blender/modifiers/intern/MOD_displace.c b/source/blender/modifiers/intern/MOD_displace.c
index a29bd229bdf..148317f66e7 100644
--- a/source/blender/modifiers/intern/MOD_displace.c
+++ b/source/blender/modifiers/intern/MOD_displace.c
@@ -446,6 +446,18 @@ static void panel_draw(const bContext *C, Panel *panel)
int texture_coords = RNA_enum_get(&ptr, "texture_coords");
if (texture_coords == MOD_DISP_MAP_OBJECT) {
uiItemR(col, &ptr, "texture_coords_object", 0, NULL, ICON_NONE);
+ PointerRNA texture_coords_obj_ptr = RNA_pointer_get(&ptr, "texture_coords_object");
+ if (!RNA_pointer_is_null(&texture_coords_obj_ptr) &&
+ (RNA_enum_get(&texture_coords_obj_ptr, "type") == OB_ARMATURE)) {
+ PointerRNA texture_coords_obj_data_ptr = RNA_pointer_get(&texture_coords_obj_ptr, "data");
+ uiItemPointerR(layout,
+ &ptr,
+ "texture_coords_bone",
+ &texture_coords_obj_data_ptr,
+ "bones",
+ IFACE_("Bone"),
+ ICON_NONE);
+ }
}
else if (texture_coords == MOD_DISP_MAP_UV && RNA_enum_get(&ob_ptr, "type") == OB_MESH) {
uiItemR(col, &ptr, "uv_layer", 0, NULL, ICON_NONE);
diff --git a/source/blender/modifiers/intern/MOD_hook.c b/source/blender/modifiers/intern/MOD_hook.c
index 1769ffdb146..8dd986664d0 100644
--- a/source/blender/modifiers/intern/MOD_hook.c
+++ b/source/blender/modifiers/intern/MOD_hook.c
@@ -419,7 +419,8 @@ static void panel_draw(const bContext *C, Panel *panel)
if (!RNA_pointer_is_null(&hook_object_ptr) &&
RNA_enum_get(&hook_object_ptr, "type") == OB_ARMATURE) {
PointerRNA hook_object_data_ptr = RNA_pointer_get(&hook_object_ptr, "data");
- uiItemPointerR(col, &ptr, "subtarget", &hook_object_data_ptr, "bones", "Bone", ICON_NONE);
+ uiItemPointerR(
+ col, &ptr, "subtarget", &hook_object_data_ptr, "bones", IFACE_("Bone"), ICON_NONE);
}
col = uiLayoutColumn(layout, false);
row = uiLayoutRow(col, true);
diff --git a/source/blender/modifiers/intern/MOD_warp.c b/source/blender/modifiers/intern/MOD_warp.c
index cba0945c677..0ed80506a19 100644
--- a/source/blender/modifiers/intern/MOD_warp.c
+++ b/source/blender/modifiers/intern/MOD_warp.c
@@ -488,6 +488,18 @@ static void texture_panel_draw(const bContext *C, Panel *panel)
if (texture_coords == MOD_DISP_MAP_OBJECT) {
uiItemR(layout, &ptr, "texture_coords_object", 0, "Object", ICON_NONE);
+ PointerRNA texture_coords_obj_ptr = RNA_pointer_get(&ptr, "texture_coords_object");
+ if (!RNA_pointer_is_null(&texture_coords_obj_ptr) &&
+ (RNA_enum_get(&texture_coords_obj_ptr, "type") == OB_ARMATURE)) {
+ PointerRNA texture_coords_obj_data_ptr = RNA_pointer_get(&texture_coords_obj_ptr, "data");
+ uiItemPointerR(layout,
+ &ptr,
+ "texture_coords_bone",
+ &texture_coords_obj_data_ptr,
+ "bones",
+ IFACE_("Bone"),
+ ICON_NONE);
+ }
}
else if (texture_coords == MOD_DISP_MAP_UV && RNA_enum_get(&ob_ptr, "type") == OB_MESH) {
PointerRNA obj_data_ptr = RNA_pointer_get(&ob_ptr, "data");
diff --git a/source/blender/modifiers/intern/MOD_wave.c b/source/blender/modifiers/intern/MOD_wave.c
index 34edf7b040f..dd57a5f5bed 100644
--- a/source/blender/modifiers/intern/MOD_wave.c
+++ b/source/blender/modifiers/intern/MOD_wave.c
@@ -114,12 +114,10 @@ static void updateDepsgraph(ModifierData *md, const ModifierUpdateDepsgraphConte
}
if (wmd->map_object != NULL) {
if (wmd->map_bone[0] && wmd->map_object->type == OB_ARMATURE) {
- DEG_add_object_relation(
- ctx->node, wmd->map_object, DEG_OB_COMP_EVAL_POSE, "Wave Modifier");
+ DEG_add_object_relation(ctx->node, wmd->map_object, DEG_OB_COMP_EVAL_POSE, "Wave Modifier");
}
else {
- DEG_add_object_relation(
- ctx->node, wmd->map_object, DEG_OB_COMP_TRANSFORM, "Wave Modifier");
+ DEG_add_object_relation(ctx->node, wmd->map_object, DEG_OB_COMP_TRANSFORM, "Wave Modifier");
}
}
if (wmd->objectcenter != NULL || wmd->map_object != NULL) {
@@ -480,6 +478,18 @@ static void texture_panel_draw(const bContext *C, Panel *panel)
uiItemR(layout, &ptr, "texture_coords", 0, NULL, ICON_NONE);
if (texture_coords == MOD_DISP_MAP_OBJECT) {
uiItemR(layout, &ptr, "texture_coords_object", 0, NULL, ICON_NONE);
+ PointerRNA texture_coords_obj_ptr = RNA_pointer_get(&ptr, "texture_coords_object");
+ if (!RNA_pointer_is_null(&texture_coords_obj_ptr) &&
+ (RNA_enum_get(&texture_coords_obj_ptr, "type") == OB_ARMATURE)) {
+ PointerRNA texture_coords_obj_data_ptr = RNA_pointer_get(&texture_coords_obj_ptr, "data");
+ uiItemPointerR(layout,
+ &ptr,
+ "texture_coords_bone",
+ &texture_coords_obj_data_ptr,
+ "bones",
+ IFACE_("Bone"),
+ ICON_NONE);
+ }
}
else if (texture_coords == MOD_DISP_MAP_UV && RNA_enum_get(&ob_ptr, "type") == OB_MESH) {
PointerRNA obj_data_ptr = RNA_pointer_get(&ob_ptr, "data");
More information about the Bf-blender-cvs
mailing list