Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(1264)

Unified Diff: release/scripts/startup/bl_ui/properties_render.py

Issue 7416049: Freestyle r54826 branch review Base URL: https://svn.blender.org/svnroot/bf-blender/trunk/blender/
Patch Set: Created 11 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: release/scripts/startup/bl_ui/properties_render.py
===================================================================
--- release/scripts/startup/bl_ui/properties_render.py (revision 54826)
+++ release/scripts/startup/bl_ui/properties_render.py (working copy)
@@ -19,7 +19,7 @@
# <pep8 compliant>
import bpy
-from bpy.types import Menu, Panel, UIList
+from bpy.types import Menu, Panel
class RENDER_MT_presets(Menu):
@@ -43,18 +43,6 @@
draw = Menu.draw_preset
-class RENDER_UL_renderlayers(UIList):
- def draw_item(self, context, layout, data, item, icon, active_data, active_propname, index):
- # assert(isinstance(item, bpy.types.SceneRenderLayer)
- layer = item
- if self.layout_type in {'DEFAULT', 'COMPACT'}:
- layout.label(text=layer.name, translate=False, icon_value=icon)
- layout.prop(layer, "use", text="", index=index)
- elif self.layout_type in {'GRID'}:
- layout.alignment = 'CENTER'
- layout.label(text="", icon_value=icon)
-
-
class RenderButtonsPanel():
bl_space_type = 'PROPERTIES'
bl_region_type = 'WINDOW'
@@ -63,10 +51,20 @@
@classmethod
def poll(cls, context):
- rd = context.scene.render
- return context.scene and (rd.engine in cls.COMPAT_ENGINES)
+ scene = context.scene
+ return scene and (scene.render.engine in cls.COMPAT_ENGINES)
+class RenderFreestyleButtonsPanel(RenderButtonsPanel):
+ # COMPAT_ENGINES must be defined in each subclass, external engines can add themselves here
+
+ @classmethod
+ def poll(cls, context):
+ if not super().poll(context):
+ return False
+ return bpy.app.build_options.freestyle
+
+
class RENDER_PT_render(RenderButtonsPanel, Panel):
bl_label = "Render"
COMPAT_ENGINES = {'BLENDER_RENDER'}
@@ -84,110 +82,6 @@
layout.prop(rd, "display_mode", text="Display")
-class RENDER_PT_layers(RenderButtonsPanel, Panel):
- bl_label = "Layers"
- bl_options = {'DEFAULT_CLOSED'}
- COMPAT_ENGINES = {'BLENDER_RENDER'}
-
- def draw(self, context):
- layout = self.layout
-
- scene = context.scene
- rd = scene.render
-
- row = layout.row()
- row.template_list("RENDER_UL_renderlayers", "", rd, "layers", rd.layers, "active_index", rows=2)
-
- col = row.column(align=True)
- col.operator("scene.render_layer_add", icon='ZOOMIN', text="")
- col.operator("scene.render_layer_remove", icon='ZOOMOUT', text="")
-
- row = layout.row()
- rl = rd.layers.active
- if rl:
- row.prop(rl, "name")
- row.prop(rd, "use_single_layer", text="", icon_only=True)
-
- split = layout.split()
-
- col = split.column()
- col.prop(scene, "layers", text="Scene")
- col.label(text="")
- col.prop(rl, "light_override", text="Light")
- col.prop(rl, "material_override", text="Material")
-
- col = split.column()
- col.prop(rl, "layers", text="Layer")
- col.label(text="Mask Layers:")
- col.prop(rl, "layers_zmask", text="")
-
- layout.separator()
- layout.label(text="Include:")
-
- split = layout.split()
-
- col = split.column()
- col.prop(rl, "use_zmask")
- row = col.row()
- row.prop(rl, "invert_zmask", text="Negate")
- row.active = rl.use_zmask
- col.prop(rl, "use_all_z")
-
- col = split.column()
- col.prop(rl, "use_solid")
- col.prop(rl, "use_halo")
- col.prop(rl, "use_ztransp")
-
- col = split.column()
- col.prop(rl, "use_sky")
- col.prop(rl, "use_edge_enhance")
- col.prop(rl, "use_strand")
-
- layout.separator()
-
- split = layout.split()
-
- col = split.column()
- col.label(text="Passes:")
- col.prop(rl, "use_pass_combined")
- col.prop(rl, "use_pass_z")
- col.prop(rl, "use_pass_vector")
- col.prop(rl, "use_pass_normal")
- col.prop(rl, "use_pass_uv")
- col.prop(rl, "use_pass_mist")
- col.prop(rl, "use_pass_object_index")
- col.prop(rl, "use_pass_material_index")
- col.prop(rl, "use_pass_color")
-
- col = split.column()
- col.label()
- col.prop(rl, "use_pass_diffuse")
- row = col.row()
- row.prop(rl, "use_pass_specular")
- row.prop(rl, "exclude_specular", text="")
- row = col.row()
- row.prop(rl, "use_pass_shadow")
- row.prop(rl, "exclude_shadow", text="")
- row = col.row()
- row.prop(rl, "use_pass_emit")
- row.prop(rl, "exclude_emit", text="")
- row = col.row()
- row.prop(rl, "use_pass_ambient_occlusion")
- row.prop(rl, "exclude_ambient_occlusion", text="")
- row = col.row()
- row.prop(rl, "use_pass_environment")
- row.prop(rl, "exclude_environment", text="")
- row = col.row()
- row.prop(rl, "use_pass_indirect")
- row.prop(rl, "exclude_indirect", text="")
- row = col.row()
- row.prop(rl, "use_pass_reflection")
- row.prop(rl, "exclude_reflection", text="")
- row = col.row()
- row.prop(rl, "use_pass_refraction")
- row.prop(rl, "exclude_refraction", text="")
-
-
class RENDER_PT_dimensions(RenderButtonsPanel, Panel):
bl_label = "Dimensions"
COMPAT_ENGINES = {'BLENDER_RENDER'}
@@ -414,6 +308,29 @@
sub.prop(rd, "edge_color", text="")
+class RENDER_PT_freestyle(RenderFreestyleButtonsPanel, Panel):
sergey.vfx 2013/03/18 16:38:04 If freestyle is considered to be optional, it does
kjym3 2013/03/23 22:46:08 Moved the panel definition to new module "bl_ui.pr
+ bl_label = "Freestyle"
+ bl_options = {'DEFAULT_CLOSED'}
+ COMPAT_ENGINES = {'BLENDER_RENDER'}
+
+ def draw_header(self, context):
+ rd = context.scene.render
+ self.layout.prop(rd, "use_freestyle", text="")
+
+ def draw(self, context):
+ rd = context.scene.render
+
+ layout = self.layout
+ layout.active = rd.use_freestyle
+
+ row = layout.row()
+ row.label(text="Line Thickness:")
+ row.prop(rd, "line_thickness_mode", expand=True)
+ row = layout.row()
+ row.active = (rd.line_thickness_mode == 'ABSOLUTE')
+ row.prop(rd, "unit_line_thickness")
+
+
class RENDER_PT_stamp(RenderButtonsPanel, Panel):
bl_label = "Stamp"
bl_options = {'DEFAULT_CLOSED'}

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b