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

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/modifiers/intern/MOD_uvproject.c')
-rw-r--r--source/blender/modifiers/intern/MOD_uvproject.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/source/blender/modifiers/intern/MOD_uvproject.c b/source/blender/modifiers/intern/MOD_uvproject.c
index a6b83ed60ea..487250eb4e3 100644
--- a/source/blender/modifiers/intern/MOD_uvproject.c
+++ b/source/blender/modifiers/intern/MOD_uvproject.c
@@ -331,12 +331,24 @@ static void panel_draw(const bContext *UNUSED(C), Panel *panel)
uiItemPointerR(layout, ptr, "uv_layer", &obj_data_ptr, "uv_layers", NULL, ICON_NONE);
+ /* Aspect and Scale are only used for camera projectors. */
+ bool has_camera = false;
+ RNA_BEGIN (ptr, projector_ptr, "projectors") {
+ PointerRNA ob_projector = RNA_pointer_get(&projector_ptr, "object");
+ if (!RNA_pointer_is_null(&ob_projector) && RNA_enum_get(&ob_projector, "type") == OB_CAMERA) {
+ has_camera = true;
+ }
+ }
+ RNA_END;
+
sub = uiLayoutColumn(layout, true);
- uiItemR(sub, ptr, "aspect_x", 0, IFACE_("Aspect X"), ICON_NONE);
+ uiLayoutSetActive(sub, has_camera);
+ uiItemR(sub, ptr, "aspect_x", 0, NULL, ICON_NONE);
uiItemR(sub, ptr, "aspect_y", 0, IFACE_("Y"), ICON_NONE);
sub = uiLayoutColumn(layout, true);
- uiItemR(sub, ptr, "scale_x", 0, IFACE_("Scale X"), ICON_NONE);
+ uiLayoutSetActive(sub, has_camera);
+ uiItemR(sub, ptr, "scale_x", 0, NULL, ICON_NONE);
uiItemR(sub, ptr, "scale_y", 0, IFACE_("Y"), ICON_NONE);
uiItemR(layout, ptr, "projector_count", 0, IFACE_("Projectors"), ICON_NONE);