[Bf-blender-cvs] [f30056d512a] temp-dynamic-overrides: Update the UI to use bl_parent_id

Dalai Felinto noreply at git.blender.org
Tue Jun 12 11:11:43 CEST 2018


Commit: f30056d512a739d4b0a7c4ac095e21f538c0ae84
Author: Dalai Felinto
Date:   Tue Jun 12 11:11:13 2018 +0200
Branches: temp-dynamic-overrides
https://developer.blender.org/rBf30056d512a739d4b0a7c4ac095e21f538c0ae84

Update the UI to use bl_parent_id

Also remove the DNA/RNA settings that were added for that.

===================================================================

M	release/scripts/startup/bl_ui/properties_view_layer.py
M	source/blender/makesdna/DNA_scene_types.h
M	source/blender/makesrna/intern/rna_scene.c

===================================================================

diff --git a/release/scripts/startup/bl_ui/properties_view_layer.py b/release/scripts/startup/bl_ui/properties_view_layer.py
index c30a868a3c2..58638df12bf 100644
--- a/release/scripts/startup/bl_ui/properties_view_layer.py
+++ b/release/scripts/startup/bl_ui/properties_view_layer.py
@@ -76,11 +76,6 @@ class VIEWLAYER_PT_eevee_layer_passes(ViewLayerButtonsPanel, Panel):
         row.prop(view_layer, "use_pass_subsurface_color", text="Color", toggle=True)
 
 
-class VIEWLAYER_UL_override_set_collections(UIList):
-    def draw_item(self, context, layout, data, item, icon, active_data, active_propname, index):
-        layout.row().label(text=item.name, icon_value=icon)
-
-
 class VIEWLAYER_UL_override_sets(UIList):
     def draw_item(self, context, layout, data, item, icon, active_data, active_propname, index):
         row = layout.row(align=True)
@@ -88,67 +83,10 @@ class VIEWLAYER_UL_override_sets(UIList):
         row.prop(item, "name", text="", index=index, icon_value=icon, emboss=False)
 
 
-class VIEWLAYER_OT_overrides(ViewLayerButtonsPanel, Panel):
-    bl_label = "Overrides"
-    COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_CLAY', 'BLENDER_EEVEE', 'BLENDER_WORKBENCH'}
-
-    def draw(self, context):
-        layout = self.layout
-
-        scene = context.scene
-        view_layer = context.view_layer
-
-        row = layout.row(align=True)
-        row.label(text="Override Sets")
-
-        row = layout.row()
-        col = row.column()
-
-        col.template_list("VIEWLAYER_UL_override_sets", "name", view_layer, "override_sets", view_layer.override_sets, "active_index", rows=2)
-
-        col = row.column(align=True)
-        col.operator("scene.view_layer_override_set_add", icon='ZOOMIN', text="")
-        col.operator("scene.view_layer_override_set_remove", icon='ZOOMOUT', text="")
-
-        override_set = view_layer.override_sets.active
-        if not override_set:
-            return
-
-        row = layout.row(align=True)
-        row.prop(scene, "show_view_layer_overrides_scene_property", emboss=False, text="")
-        row.label(text="Scene Properties")
-
-        if scene.show_view_layer_overrides_scene_property:
-            if override_set.scene_properties:
-                for i, dyn_prop in enumerate(override_set.scene_properties):
-                    self._draw_property(layout, dyn_prop, i, 'SCENE')
-            else:
-                layout.label(text="No scene property")
-
-        row = layout.row(align=True)
-        row.prop(scene, "show_view_layer_overrides_affected_collections", emboss=False, text="")
-        row.label(text="Affected Collections")
-
-        if scene.show_view_layer_overrides_affected_collections:
-            row = layout.row()
-            col = row.column()
-
-            col.template_list("VIEWLAYER_UL_override_set_collections", "", override_set, "affected_collections", override_set.affected_collections, "active_index", rows=1)
-
-            col = row.column(align=True)
-            col.operator("scene.override_set_collection_link", icon='ZOOMIN', text="")
-            col.operator("scene.override_set_collection_unlink", icon='ZOOMOUT', text="")
-
-        row = layout.row(align=True)
-        row.prop(scene, "show_view_layer_overrides_collections_property", emboss=False, text="")
-        row.label(text="Collection Properties")
-
-        if scene.show_view_layer_overrides_collections_property:
-            if override_set.collection_properties:
-                for i, dyn_prop in enumerate(override_set.collection_properties):
-                    self._draw_property(layout, dyn_prop, i, 'COLLECTION')
-            else:
-                layout.label(text="No collection property")
+class ViewLayerOverridesPanel():
+    @classmethod
+    def poll(cls, context):
+        return context.view_layer.override_sets.active
 
     @staticmethod
     def _icon_from_id_type(id_type):
@@ -207,12 +145,99 @@ class VIEWLAYER_OT_overrides(ViewLayerButtonsPanel, Panel):
         ops.property_type = property_type
 
 
+class VIEWLAYER_OT_overrides(ViewLayerButtonsPanel, Panel):
+    bl_label = "Overrides"
+    COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_CLAY', 'BLENDER_EEVEE', 'BLENDER_WORKBENCH'}
+
+    def draw(self, context):
+        layout = self.layout
+
+        scene = context.scene
+        view_layer = context.view_layer
+
+        row = layout.row(align=True)
+        row.label(text="Override Sets")
+
+        row = layout.row()
+        col = row.column()
+
+        col.template_list("VIEWLAYER_UL_override_sets", "name", view_layer, "override_sets", view_layer.override_sets, "active_index", rows=2)
+
+        col = row.column(align=True)
+        col.operator("scene.view_layer_override_set_add", icon='ZOOMIN', text="")
+        col.operator("scene.view_layer_override_set_remove", icon='ZOOMOUT', text="")
+
+        override_set = view_layer.override_sets.active
+
+
+class VIEWLAYER_OT_overrides_scene_properties(ViewLayerOverridesPanel, ViewLayerButtonsPanel, Panel):
+    bl_label = "Scene Properties"
+    bl_parent_id = "VIEWLAYER_OT_overrides"
+    bl_options = {'DEFAULT_CLOSED'}
+    COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_CLAY', 'BLENDER_EEVEE', 'BLENDER_WORKBENCH'}
+
+    def draw(self, context):
+        layout = self.layout
+        override_set = context.view_layer.override_sets.active
+
+        if override_set.scene_properties:
+            for i, dyn_prop in enumerate(override_set.scene_properties):
+                self._draw_property(layout, dyn_prop, i, 'SCENE')
+        else:
+            layout.label(text="No scene property")
+
+
+class VIEWLAYER_UL_override_set_collections(UIList):
+    def draw_item(self, context, layout, data, item, icon, active_data, active_propname, index):
+        layout.row().label(text=item.name, icon_value=icon)
+
+
+class VIEWLAYER_OT_overrides_affected_collections(ViewLayerOverridesPanel, ViewLayerButtonsPanel, Panel):
+    bl_label = "Affected Collections"
+    bl_parent_id = "VIEWLAYER_OT_overrides"
+    bl_options = {'DEFAULT_CLOSED'}
+    COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_CLAY', 'BLENDER_EEVEE', 'BLENDER_WORKBENCH'}
+
+    def draw(self, context):
+        layout = self.layout
+        override_set = context.view_layer.override_sets.active
+
+        row = layout.row()
+        col = row.column()
+
+        col.template_list("VIEWLAYER_UL_override_set_collections", "", override_set, "affected_collections", override_set.affected_collections, "active_index", rows=1)
+
+        col = row.column(align=True)
+        col.operator("scene.override_set_collection_link", icon='ZOOMIN', text="")
+        col.operator("scene.override_set_collection_unlink", icon='ZOOMOUT', text="")
+
+
+class VIEWLAYER_OT_overrides_collection_properties(ViewLayerOverridesPanel, ViewLayerButtonsPanel, Panel):
+    bl_label = "Collection Properties"
+    bl_parent_id = "VIEWLAYER_OT_overrides"
+    bl_options = {'DEFAULT_CLOSED'}
+    COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_CLAY', 'BLENDER_EEVEE', 'BLENDER_WORKBENCH'}
+
+    def draw(self, context):
+        layout = self.layout
+        override_set = context.view_layer.override_sets.active
+
+        if override_set.collection_properties:
+            for i, dyn_prop in enumerate(override_set.collection_properties):
+                self._draw_property(layout, dyn_prop, i, 'COLLECTION')
+        else:
+            layout.label(text="No collection property")
+
+
 classes = (
     VIEWLAYER_PT_layer,
     VIEWLAYER_PT_eevee_layer_passes,
     VIEWLAYER_UL_override_set_collections,
     VIEWLAYER_UL_override_sets,
     VIEWLAYER_OT_overrides,
+    VIEWLAYER_OT_overrides_scene_properties,
+    VIEWLAYER_OT_overrides_affected_collections,
+    VIEWLAYER_OT_overrides_collection_properties,
 )
 
 if __name__ == "__main__":  # only for live edit.
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 70e4c660014..0c2169072d3 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -1871,9 +1871,6 @@ typedef enum eVGroupSelect {
 #define SCE_NLA_EDIT_ON			(1<<2)
 #define SCE_FRAME_DROP			(1<<3)
 #define SCE_KEYS_NO_SELONLY	    (1<<4)
-#define SCE_DYN_OVERRIDE_HIDE_SCENE_PROPS	(1 << 5)
-#define SCE_DYN_OVERRIDE_HIDE_COLLECTIONS	(1 << 6)
-#define SCE_DYN_OVERRIDE_HIDE_COLL_PROPS	(1 << 7)
 
 	/* return flag BKE_scene_base_iter_next functions */
 /* #define F_ERROR			-1 */  /* UNUSED */
diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c
index 3a92397665c..e9f6c4c14b3 100644
--- a/source/blender/makesrna/intern/rna_scene.c
+++ b/source/blender/makesrna/intern/rna_scene.c
@@ -6606,31 +6606,6 @@ void RNA_def_scene(BlenderRNA *brna)
 	RNA_def_property_struct_type(prop, "Collection");
 	RNA_def_property_ui_text(prop, "Collection", "Scene master collection that objects and other collections in the scene");
 
-	/* Interface */
-	prop = RNA_def_property(srna, "show_view_layer_overrides_scene_property", PROP_BOOLEAN, PROP_NONE);
-	RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", SCE_DYN_OVERRIDE_HIDE_SCENE_PROPS);
-	RNA_def_property_ui_text(prop,
-	                         "Scene Properties",
-	                         "Show scene properties overrides for active set");
-	RNA_def_property_ui_icon(prop, ICON_TRIA_RIGHT, 1);
-	RNA_def_property_update(prop, NC_SCENE | ND_DYN_OVERRIDES, NULL);
-
-	prop = RNA_def_property(srna, "show_view_layer_overrides_affected_collections", PROP_BOOLEAN, PROP_NONE);
-	RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", SCE_DYN_OVERRIDE_HIDE_COLLECTIONS);
-	RNA_def_property_ui_text(prop,
-	                         "Affected Collections",
-	                         "Show affected collections overriden for active set");
-	RNA_def_property_ui_icon(prop, ICON_TRIA_RIGHT, 1);
-	RNA_def_property_update(prop, NC_SCENE | ND_DYN_OVERRIDES, NULL);
-
-	prop = RNA_def_property(srna, "show_view_layer_overrides_collections_property", PROP_BOOLEAN, PROP_NONE);
-	RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", SCE_DYN_OVERRIDE_HIDE_COLL_PROPS);
-	RNA_def_property_ui_text(prop,
-	                         "Collection Properties",
-	         

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list