[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