Merged changes in the trunk up to revision 31440.
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Wed, 18 Aug 2010 13:16:34 +0000 (13:16 +0000)
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>
Wed, 18 Aug 2010 13:16:34 +0000 (13:16 +0000)
1  2 
release/scripts/ui/properties_render.py
release/scripts/ui/space_userpref.py
source/blender/blenkernel/intern/idcode.c
source/blender/editors/interface/interface_templates.c
source/blender/editors/space_outliner/outliner.c
source/blender/editors/transform/transform.c
source/blender/makesrna/RNA_enum_types.h
source/blender/makesrna/intern/rna_ID.c
source/blender/makesrna/intern/rna_main.c
source/blender/makesrna/intern/rna_scene.c
source/blender/python/doc/sphinx_doc_gen.py

index 7568af9ce433f983e4804f0218d4ae8d9b6c25db,a0e284ab1f3d95900e0a9efd0aceb250d69ed5c1..ed8a97808d8511f8c1138f448595c258b770cbd2
@@@ -109,22 -109,21 +109,22 @@@ class RENDER_PT_layers(RenderButtonsPan
          split = layout.split()
  
          col = split.column()
-         col.prop(rl, "zmask")
+         col.prop(rl, "use_zmask")
          row = col.row()
-         row.prop(rl, "zmask_negate", text="Negate")
-         row.active = rl.zmask
-         col.prop(rl, "all_z")
+         row.prop(rl, "invert_zmask", text="Negate")
+         row.active = rl.use_zmask
+         col.prop(rl, "use_all_z")
  
          col = split.column()
-         col.prop(rl, "solid")
-         col.prop(rl, "halo")
-         col.prop(rl, "ztransp")
-         col.prop(rl, "sky")
+         col.prop(rl, "use_solid")
+         col.prop(rl, "use_halo")
+         col.prop(rl, "use_ztransp")
 -
 -        col = split.column()
+         col.prop(rl, "use_sky")
 +              
 +        col = split.column()
-         col.prop(rl, "edge")
-         col.prop(rl, "strand")
+         col.prop(rl, "use_edge_enhance")
+         col.prop(rl, "use_strand")
 +        col.prop(rl, "freestyle")
  
          layout.separator()
  
  
          col = split.column()
          col.label()
-         col.prop(rl, "pass_diffuse")
+         col.prop(rl, "use_pass_diffuse")
          row = col.row()
-         row.prop(rl, "pass_specular")
-         row.prop(rl, "pass_specular_exclude", text="")
+         row.prop(rl, "use_pass_specular")
+         row.prop(rl, "exclude_specular", text="")
          row = col.row()
-         row.prop(rl, "pass_shadow")
-         row.prop(rl, "pass_shadow_exclude", text="")
+         row.prop(rl, "use_pass_shadow")
+         row.prop(rl, "exclude_shadow", text="")
          row = col.row()
-         row.prop(rl, "pass_emit")
-         row.prop(rl, "pass_emit_exclude", text="")
+         row.prop(rl, "use_pass_emit")
+         row.prop(rl, "exclude_emit", text="")
          row = col.row()
-         row.prop(rl, "pass_ao")
-         row.prop(rl, "pass_ao_exclude", text="")
+         row.prop(rl, "use_pass_ambient_occlusion")
+         row.prop(rl, "exclude_ambient_occlusion", text="")
          row = col.row()
-         row.prop(rl, "pass_environment")
-         row.prop(rl, "pass_environment_exclude", text="")
+         row.prop(rl, "use_pass_environment")
+         row.prop(rl, "exclude_environment", text="")
          row = col.row()
-         row.prop(rl, "pass_indirect")
-         row.prop(rl, "pass_indirect_exclude", text="")
+         row.prop(rl, "use_pass_indirect")
+         row.prop(rl, "exclude_indirect", text="")
          row = col.row()
-         row.prop(rl, "pass_reflection")
-         row.prop(rl, "pass_reflection_exclude", text="")
+         row.prop(rl, "use_pass_reflection")
+         row.prop(rl, "exclude_reflection", text="")
          row = col.row()
-         row.prop(rl, "pass_refraction")
-         row.prop(rl, "pass_refraction_exclude", text="")
+         row.prop(rl, "use_pass_refraction")
+         row.prop(rl, "exclude_refraction", text="")
  
  
 +class RENDER_PT_freestyle(RenderButtonsPanel, bpy.types.Panel):
 +    bl_label = "Freestyle"
 +    COMPAT_ENGINES = {'BLENDER_RENDER'}
 +
 +    @classmethod
 +    def poll(cls, context):
 +        rd = context.scene.render
 +        rl = rd.layers[rd.active_layer_index]
 +        return rl and rl.freestyle
 +
 +    def draw(self, context):
 +        layout = self.layout
 +
 +        rd = context.scene.render
 +        rl = rd.layers[rd.active_layer_index]
 +        freestyle = rl.freestyle_settings
 +
 +        split = layout.split()
 +
 +        col = split.column()
 +        col.prop(freestyle, "mode", text="Control Mode")
 +
 +        if freestyle.mode == "EDITOR":
 +            col.label(text="Edge Detection Options:")
 +            col.prop(freestyle, "crease_angle")
 +            col.prop(freestyle, "sphere_radius")
 +            col.prop(freestyle, "dkr_epsilon")
 +
 +            lineset = freestyle.active_lineset
 +
 +            col.label(text="Line Sets:")
 +            row = col.row()
 +            rows = 2
 +            if lineset:
 +                rows = 5
 +            # FIXME: scrollbar does not work correctly
 +            row.template_list(freestyle, "linesets", freestyle, "active_lineset_index", rows=rows)
 +
 +            sub = row.column()
 +            subsub = sub.column(align=True)
 +            subsub.operator("scene.freestyle_lineset_add", icon='ZOOMIN', text="")
 +            subsub.operator("scene.freestyle_lineset_remove", icon='ZOOMOUT', text="")
 +            if lineset:
 +                sub.separator()
 +                subsub = sub.column(align=True)
 +                subsub.operator("scene.freestyle_lineset_move", icon='TRIA_UP', text="").direction = 'UP'
 +                subsub.operator("scene.freestyle_lineset_move", icon='TRIA_DOWN', text="").direction = 'DOWN'
 +
 +            if lineset:
 +                col.prop(lineset, "name")
 +                col.prop(lineset, "select_by_visibility")
 +                col.prop(lineset, "select_by_edge_types")
 +
 +                if lineset.select_by_visibility:
 +                    col.label(text="Visibility:")
 +                    sub = col.row(align=True)
 +                    sub.prop(lineset, "visibility", expand=True)
 +                    if lineset.visibility == "RANGE":
 +                        sub = col.row(align=True)
 +                        sub.prop(lineset, "qi_start")
 +                        sub.prop(lineset, "qi_end")
 +
 +                if lineset.select_by_edge_types:
 +                    col.label(text="Edge Types:")
 +                    row = col.row()
 +                    row.prop(lineset, "edge_type_negation", expand=True)
 +                    row = col.row()
 +                    row.prop(lineset, "edge_type_combination", expand=True)
 +
 +                    row = col.row()
 +                    sub = row.column()
 +                    sub.prop(lineset, "select_silhouette")
 +                    sub.prop(lineset, "select_border")
 +                    sub.prop(lineset, "select_crease")
 +                    sub.prop(lineset, "select_ridge")
 +                    sub.prop(lineset, "select_valley")
 +                    sub.prop(lineset, "select_suggestive_contour")
 +                    sub.prop(lineset, "select_material_boundary")
 +                    sub = row.column()
 +                    sub.prop(lineset, "select_contour")
 +                    sub.prop(lineset, "select_external_contour")
 +
 +        else: # freestyle.mode == "SCRIPT"
 +
 +            col.prop(freestyle, "crease_angle")
 +            col.prop(freestyle, "sphere_radius")
 +            col.prop(freestyle, "ridges_and_valleys")
 +            col.prop(freestyle, "suggestive_contours")
 +            sub = col.row()
 +            sub.prop(freestyle, "dkr_epsilon")
 +            sub.active = freestyle.suggestive_contours
 +            col.prop(freestyle, "material_boundaries")
 +            col.operator("scene.freestyle_module_add")
 +
 +            for i, module in enumerate(freestyle.modules):
 +                    box = layout.box()
 +                    box.set_context_pointer("freestyle_module", module)
 +                    row = box.row(align=True)
 +                    row.prop(module, "is_displayed", text="")
 +                    row.prop(module, "module_path", text="")
 +                    row.operator("scene.freestyle_module_remove", icon='X', text="")
 +                    row.operator("scene.freestyle_module_move", icon='TRIA_UP', text="").direction = 'UP'
 +                    row.operator("scene.freestyle_module_move", icon='TRIA_DOWN', text="").direction = 'DOWN'
 +
 +
 +class RENDER_PT_freestyle_linestyle(RenderButtonsPanel, bpy.types.Panel):
 +    bl_label = "Freestyle: Line Style"
 +    COMPAT_ENGINES = {'BLENDER_RENDER'}
 +
 +    @classmethod
 +    def poll(cls, context):
 +        rd = context.scene.render
 +        rl = rd.layers[rd.active_layer_index]
 +        if rl and rl.freestyle:
 +            freestyle = rl.freestyle_settings
 +            return freestyle.mode == "EDITOR" and freestyle.active_lineset
 +        return False
 +
 +    def draw_modifier_box_header(self, box, modifier):
 +        row = box.row()
 +        row.set_context_pointer("modifier", modifier)
 +        if modifier.expanded:
 +            icon = "TRIA_DOWN"
 +        else:
 +            icon = "TRIA_RIGHT"
 +        row.operator("scene.freestyle_modifier_toggle_fold", icon=icon, text="", emboss=False)
 +        row.label(text=modifier.rna_type.name)
 +        row.prop(modifier, "name", text="")
 +        row.prop(modifier, "enabled", text="")
 +        sub = row.row(align=True)
 +        sub.operator("scene.freestyle_modifier_move", icon='TRIA_UP', text="").direction = 'UP'
 +        sub.operator("scene.freestyle_modifier_move", icon='TRIA_DOWN', text="").direction = 'DOWN'
 +        row.operator("scene.freestyle_modifier_remove", icon='X', text="")
 +
 +    def draw_color_modifier(self, context, modifier):
 +        layout = self.layout
 +
 +        col = layout.column(align=True)
 +        self.draw_modifier_box_header(col.box(), modifier)
 +        if modifier.expanded:
 +            box = col.box()
 +            row = box.row()
 +            row.prop(modifier, "blend", text="")
 +            row.prop(modifier, "influence")
 +            if modifier.type == "DISTANCE_FROM_OBJECT":
 +                box.prop(modifier, "target")
 +            box.template_color_ramp(modifier, "color_ramp", expand=True)
 +            if modifier.type not in ["ALONG_STROKE"]:
 +                row = box.row(align=True)
 +                row.prop(modifier, "range_min")
 +                row.prop(modifier, "range_max")
 +
 +    def draw_alpha_modifier(self, context, modifier):
 +        layout = self.layout
 +
 +        col = layout.column(align=True)
 +        self.draw_modifier_box_header(col.box(), modifier)
 +        if modifier.expanded:
 +            box = col.box()
 +            row = box.row()
 +            row.prop(modifier, "blend", text="")
 +            row.prop(modifier, "influence")
 +            if modifier.type == "DISTANCE_FROM_OBJECT":
 +                box.prop(modifier, "target")
 +            row = box.row()
 +            row.prop(modifier, "mapping", text="")
 +            sub = row.column()
 +            sub.prop(modifier, "invert")
 +            if modifier.mapping == "CURVE":
 +                sub.enabled = False
 +                box.template_curve_mapping(modifier, "curve")
 +            if modifier.type not in ["ALONG_STROKE"]:
 +                row = box.row(align=True)
 +                row.prop(modifier, "range_min")
 +                row.prop(modifier, "range_max")
 +
 +    def draw_thickness_modifier(self, context, modifier):
 +        layout = self.layout
 +
 +        col = layout.column(align=True)
 +        self.draw_modifier_box_header(col.box(), modifier)
 +        if modifier.expanded:
 +            box = col.box()
 +            row = box.row()
 +            row.prop(modifier, "blend", text="")
 +            row.prop(modifier, "influence")
 +            if modifier.type == "DISTANCE_FROM_OBJECT":
 +                box.prop(modifier, "target")
 +            row = box.row()
 +            row.prop(modifier, "mapping", text="")
 +            sub = row.column()
 +            sub.prop(modifier, "invert")
 +            if modifier.mapping == "CURVE":
 +                sub.enabled = False
 +                box.template_curve_mapping(modifier, "curve")
 +            if modifier.type not in ["ALONG_STROKE"]:
 +                row = box.row(align=True)
 +                row.prop(modifier, "range_min")
 +                row.prop(modifier, "range_max")
 +            row = box.row(align=True)
 +            row.prop(modifier, "value_min")
 +            row.prop(modifier, "value_max")
 +
 +    def draw(self, context):
 +        layout = self.layout
 +
 +        rd = context.scene.render
 +        rl = rd.layers[rd.active_layer_index]
 +        lineset = rl.freestyle_settings.active_lineset
 +        linestyle = lineset.linestyle
 +
 +        split = layout.split()
 +        col = split.column()
 +        col.template_ID(lineset, "linestyle", new="scene.freestyle_linestyle_new")
 +
 +        col.separator()
 +        sub = col.row(align=True)
 +        sub.prop(linestyle, "panel", expand=True)
 +
 +        if linestyle.panel == "COLOR":
 +            col.label(text="Base Color:")
 +            col.prop(linestyle, "color", text="")
 +            col.label(text="Modifiers:")
 +            layout.operator_menu_enum("scene.freestyle_color_modifier_add", "type", text="Add Modifier")
 +            for modifier in linestyle.color_modifiers:
 +                self.draw_color_modifier(context, modifier)
 +        elif linestyle.panel == "ALPHA":
 +            col.label(text="Base Transparency:")
 +            col.prop(linestyle, "alpha")
 +            col.label(text="Modifiers:")
 +            layout.operator_menu_enum("scene.freestyle_alpha_modifier_add", "type", text="Add Modifier")
 +            for modifier in linestyle.alpha_modifiers:
 +                self.draw_alpha_modifier(context, modifier)
 +        elif linestyle.panel == "THICKNESS":
 +            col.label(text="Base Thickness:")
 +            col.prop(linestyle, "thickness")
 +            col.label(text="Modifiers:")
 +            layout.operator_menu_enum("scene.freestyle_thickness_modifier_add", "type", text="Add Modifier")
 +            for modifier in linestyle.thickness_modifiers:
 +                self.draw_thickness_modifier(context, modifier)
 +        elif linestyle.panel == "STROKES":
 +            pass
 +        elif linestyle.panel == "DISTORT":
 +            pass
 +        elif linestyle.panel == "MISC":
 +            pass
 +
 +
  class RENDER_PT_shading(RenderButtonsPanel, bpy.types.Panel):
      bl_label = "Shading"
      COMPAT_ENGINES = {'BLENDER_RENDER'}
@@@ -864,24 -609,24 +864,24 @@@ class RENDER_PT_bake(RenderButtonsPanel
          if rd.bake_type == 'NORMALS':
              layout.prop(rd, "bake_normal_space")
          elif rd.bake_type in ('DISPLACEMENT', 'AO'):
-             layout.prop(rd, "bake_normalized")
+             layout.prop(rd, "use_bake_normalize")
 -
 +        
          # col.prop(rd, "bake_aa_mode")
-         # col.prop(rd, "bake_enable_aa")
+         # col.prop(rd, "use_bake_antialiasing")
 -
 +        
          layout.separator()
 -
 +        
          split = layout.split()
  
          col = split.column()
-         col.prop(rd, "bake_clear")
+         col.prop(rd, "use_bake_clear")
          col.prop(rd, "bake_margin")
          col.prop(rd, "bake_quad_split", text="Split")
 -
 +        
          col = split.column()
-         col.prop(rd, "bake_active")
+         col.prop(rd, "use_bake_selected_to_active")
          sub = col.column()
-         sub.active = rd.bake_active
+         sub.active = rd.use_bake_selected_to_active
          sub.prop(rd, "bake_distance")
          sub.prop(rd, "bake_bias")
  
index 21f98145e8aa8357118fa5e2943eb5a2d33ffd51,0806eceaf47fa58c8e64051ffa12959669c9b083..9fd0748d69dd22b0d8a5e1a3d981e15b22fc12e0
@@@ -185,17 -182,10 +182,17 @@@ class USERPREF_PT_interface(bpy.types.P
  
          col.separator()
  
-         col.prop(view, "auto_perspective")
+         col.prop(view, "use_auto_perspective")
          col.prop(view, "smooth_view")
          col.prop(view, "rotation_angle")
 -
 +        
 +        col.separator()
 +        col.separator()
 +        
 +        col.label(text="2D Viewports:")
 +        col.prop(view, "view2d_grid_minimum_spacing", text="Minimum Grid Spacing")
 +        col.prop(view, "timecode_style")
 +        
          col.separator()
          col.separator()
  
index 36d43910860cfcad1db26b32bdd0a63537c12177,7c363a17d74280c8da808b52ceeff36e1cb9cab8..19af504ecb61f3c3e5eb7362e3fad589630bef75
@@@ -94,32 -94,30 +94,32 @@@ void uiTemplateDopeSheetFilter(uiLayou
        /* datatype based - only available datatypes are shown */
        row= uiLayoutRow(layout, 1);
  
-       uiItemR(row, ptr, "display_scene", 0, "", 0);
-       uiItemR(row, ptr, "display_world", 0, "", 0);
-       uiItemR(row, ptr, "display_node", 0, "", 0);
+       uiItemR(row, ptr, "show_scenes", 0, "", 0);
+       uiItemR(row, ptr, "show_worlds", 0, "", 0);
+       uiItemR(row, ptr, "show_nodes", 0, "", 0);
        
        if (mainptr && mainptr->mesh.first)
-               uiItemR(row, ptr, "display_mesh", 0, "", 0);
+               uiItemR(row, ptr, "show_meshes", 0, "", 0);
        if (mainptr && mainptr->key.first)
-               uiItemR(row, ptr, "display_shapekeys", 0, "", 0);
+               uiItemR(row, ptr, "show_shapekeys", 0, "", 0);
        if (mainptr && mainptr->mat.first)
-               uiItemR(row, ptr, "display_material", 0, "", 0);
+               uiItemR(row, ptr, "show_materials", 0, "", 0);
        if (mainptr && mainptr->lamp.first)
-               uiItemR(row, ptr, "display_lamp", 0, "", 0);
+               uiItemR(row, ptr, "show_lamps", 0, "", 0);
        if (mainptr && mainptr->tex.first)
-               uiItemR(row, ptr, "display_texture", 0, "", 0);
+               uiItemR(row, ptr, "show_textures", 0, "", 0);
        if (mainptr && mainptr->camera.first)
-               uiItemR(row, ptr, "display_camera", 0, "", 0);
+               uiItemR(row, ptr, "show_cameras", 0, "", 0);
        if (mainptr && mainptr->curve.first)
-               uiItemR(row, ptr, "display_curve", 0, "", 0);
+               uiItemR(row, ptr, "show_curves", 0, "", 0);
        if (mainptr && mainptr->mball.first)
-               uiItemR(row, ptr, "display_metaball", 0, "", 0);
+               uiItemR(row, ptr, "show_metaballs", 0, "", 0);
        if (mainptr && mainptr->armature.first)
-               uiItemR(row, ptr, "display_armature", 0, "", 0);
+               uiItemR(row, ptr, "show_armatures", 0, "", 0);
        if (mainptr && mainptr->particle.first)
-               uiItemR(row, ptr, "display_particle", 0, "", 0);
+               uiItemR(row, ptr, "show_particles", 0, "", 0);
 +      if (mainptr && mainptr->linestyle.first)
 +              uiItemR(row, ptr, "display_linestyle", 0, "", 0);
        
        /* group-based filtering (only when groups are available */
        if (mainptr && mainptr->group.first) {
@@@ -2078,10 -2076,10 +2078,10 @@@ static void list_item_row(bContext *C, 
                uiBlockSetEmboss(block, UI_EMBOSS);
                uiDefButR(block, OPTION, 0, "", 0, 0, UI_UNIT_X, UI_UNIT_Y, ptr, "use_textures", i, 0, 0, 0, 0,  NULL);
        }
 -      else if(RNA_struct_is_a(itemptr->type, &RNA_SceneRenderLayer)) {
 +      else if(RNA_struct_is_a(itemptr->type, &RNA_SceneRenderLayer) || itemptr->type == &RNA_FreestyleLineSet) {
                uiItemL(sub, name, icon);
                uiBlockSetEmboss(block, UI_EMBOSS);
-               uiDefButR(block, OPTION, 0, "", 0, 0, UI_UNIT_X, UI_UNIT_Y, itemptr, "enabled", 0, 0, 0, 0, 0,  NULL);
+               uiDefButR(block, OPTION, 0, "", 0, 0, UI_UNIT_X, UI_UNIT_Y, itemptr, "use", 0, 0, 0, 0, 0,  NULL);
        }
        else if(itemptr->type == &RNA_ShapeKey) {
                ob= (Object*)activeptr->data;
index b37ac913b363c9c067d72a85b72700a9a5b61c4c,38ba44f2c2bbaf01eab4502a5e2eba2951aa7a26..bb4fb21f3a1ca00b998213e5a7039400b481a16a
@@@ -90,12 -90,8 +90,12 @@@ extern EnumPropertyItem wm_report_items
  extern EnumPropertyItem property_type_items[];
  extern EnumPropertyItem property_unit_items[];
  
- extern EnumPropertyItem viewport_shading_items[];
+ extern EnumPropertyItem viewport_shade_items[];
  
 +extern EnumPropertyItem linestyle_color_modifier_type_items[];
 +extern EnumPropertyItem linestyle_alpha_modifier_type_items[];
 +extern EnumPropertyItem linestyle_thickness_modifier_type_items[];
 +
  struct bContext;
  struct PointerRNA;
  EnumPropertyItem *rna_TransformOrientation_itemf(struct bContext *C, struct PointerRNA *ptr, int *free);
index 0fc569acf832681af5291f932eadaa5b0dd206c7,6e44b02834ee2739b85af2dfaeba3893a0fbbfcf..e7688101691037438674342b473f0cde762b812a
@@@ -305,8 -299,7 +305,8 @@@ void RNA_def_main(BlenderRNA *brna
                {"armatures", "Armature", "rna_Main_armature_begin", "Armatures", "Armature datablocks.", RNA_def_main_armatures},
                {"actions", "Action", "rna_Main_action_begin", "Actions", "Action datablocks.", RNA_def_main_actions},
                {"particles", "ParticleSettings", "rna_Main_particle_begin", "Particles", "Particle datablocks.", RNA_def_main_particles},
-               {"gpencil", "GreasePencil", "rna_Main_gpencil_begin", "Grease Pencil", "Grease Pencil datablocks.", RNA_def_main_gpencil},
+               {"grease_pencil", "GreasePencil", "rna_Main_gpencil_begin", "Grease Pencil", "Grease Pencil datablocks.", RNA_def_main_gpencil},
 +              {"linestyles", "FreestyleLineStyle", "rna_Main_linestyle_begin", "Line Styles", "Line Style datablocks.", RNA_def_main_linestyles},
                {NULL, NULL, NULL, NULL, NULL, NULL}};
  
        int i;
index 47a0a84bb445f37f6cf28c24a08e962e84ff711e,86dae51b17531bc4dcf64b2300dcc7ecae2db55a..242316faff7891483213cec9f020a35da5a35738
@@@ -1397,14 -1351,8 +1397,14 @@@ void rna_def_render_layer_common(Struct
        if(scene) RNA_def_property_update(prop, NC_SCENE|ND_RENDER_OPTIONS, NULL);
        else RNA_def_property_clear_flag(prop, PROP_EDITABLE);
  
 +      prop= RNA_def_property(srna, "freestyle", PROP_BOOLEAN, PROP_NONE);
 +      RNA_def_property_boolean_sdna(prop, NULL, "layflag", SCE_LAY_FRS);
 +      RNA_def_property_ui_text(prop, "Freestyle", "Render stylized strokes in this Layer.");
 +      if(scene) RNA_def_property_update(prop, NC_SCENE|ND_RENDER_OPTIONS, NULL);
 +      else RNA_def_property_clear_flag(prop, PROP_EDITABLE);
 +
        /* passes */
-       prop= RNA_def_property(srna, "pass_combined", PROP_BOOLEAN, PROP_NONE);
+       prop= RNA_def_property(srna, "use_pass_combined", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "passflag", SCE_PASS_COMBINED);
        RNA_def_property_ui_text(prop, "Combined", "Deliver full combined RGBA buffer");
        if(scene) RNA_def_property_update(prop, NC_SCENE|ND_RENDER_OPTIONS, "rna_SceneRenderLayer_pass_update");