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:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2013-06-10 23:01:40 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2013-06-10 23:01:40 +0400
commit6322f017835f86e96b8e082f66595debd9de1da9 (patch)
tree40389174a5684800ea2f49b36d40a8450d5571a7
parent2ce0ecd9563b6e209ff05cdeb7db5ddb6ffb7098 (diff)
Cycles lamp specials menu now includes separate X/Y size for area lamps
and strength (for the basic default node setup, this can't work with with arbitrary nodes).
-rw-r--r--release/scripts/startup/bl_ui/space_view3d.py36
1 files changed, 30 insertions, 6 deletions
diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index e8531db3e23..c61b07800ca 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -959,27 +959,51 @@ class VIEW3D_MT_object_specials(Menu):
props.header_text = "Empty Draw Size: %.3f"
if obj.type == 'LAMP':
+ lamp = obj.data
+
layout.operator_context = 'INVOKE_REGION_WIN'
if scene.render.use_shading_nodes:
- props = layout.operator("wm.context_modal_mouse", text="Size")
- props.data_path_iter = "selected_editable_objects"
- props.data_path_item = "data.shadow_soft_size"
- props.header_text = "Lamp Size: %.3f"
+ try:
+ value = lamp.node_tree.nodes["Emission"].inputs["Strength"].default_value
+
+ props = layout.operator("wm.context_modal_mouse", text="Strength")
+ props.data_path_iter = "selected_editable_objects"
+ props.data_path_item = "data.node_tree.nodes[\"Emission\"].inputs[\"Strength\"].default_value"
+ props.header_text = "Lamp Strength: %.3f"
+ props.input_scale = 0.1
+ except AttributeError:
+ pass
+
+ if lamp.type == 'AREA' and lamp.shape == 'RECTANGLE':
+ props = layout.operator("wm.context_modal_mouse", text="Size X")
+ props.data_path_iter = "selected_editable_objects"
+ props.data_path_item = "data.size"
+ props.header_text = "Lamp Size X: %.3f"
+
+ props = layout.operator("wm.context_modal_mouse", text="Size Y")
+ props.data_path_iter = "selected_editable_objects"
+ props.data_path_item = "data.size"
+ props.header_text = "Lamp Size Y: %.3f"
+ elif lamp.type in {'SPOT', 'AREA', 'POINT', 'SUN'}:
+ props = layout.operator("wm.context_modal_mouse", text="Size")
+ props.data_path_iter = "selected_editable_objects"
+ props.data_path_item = "data.shadow_soft_size"
+ props.header_text = "Lamp Size: %.3f"
else:
props = layout.operator("wm.context_modal_mouse", text="Energy")
props.data_path_iter = "selected_editable_objects"
props.data_path_item = "data.energy"
props.header_text = "Lamp Energy: %.3f"
- if obj.data.type in {'SPOT', 'AREA', 'POINT'}:
+ if lamp.type in {'SPOT', 'AREA', 'POINT'}:
props = layout.operator("wm.context_modal_mouse", text="Falloff Distance")
props.data_path_iter = "selected_editable_objects"
props.data_path_item = "data.distance"
props.input_scale = 0.1
props.header_text = "Lamp Falloff Distance: %.1f"
- if obj.data.type == 'SPOT':
+ if lamp.type == 'SPOT':
layout.separator()
props = layout.operator("wm.context_modal_mouse", text="Spot Size")
props.data_path_iter = "selected_editable_objects"