Outliner: Remove list of library overrides from general display modes
There is a dedicated Library Override display mode now, and showing these elsewhere just adds noise and makes the code problematic to maintain (since the same element hierarchy will be used in two entirely different contexts). The corresponding filter settings are removed too. Part of T95802. Reviewed by: Bastien Montagne Differential Revision: https://developer.blender.org/D14411
This commit is contained in:
@@ -344,7 +344,6 @@ url_manual_mapping = (
|
||||
("bpy.types.sequencerpreviewoverlay.show_metadata*", "editors/video_sequencer/preview/display/overlays.html#bpy-types-sequencerpreviewoverlay-show-metadata"),
|
||||
("bpy.types.sequencertimelineoverlay.show_fcurves*", "editors/video_sequencer/sequencer/display.html#bpy-types-sequencertimelineoverlay-show-fcurves"),
|
||||
("bpy.types.spaceclipeditor.use_grayscale_preview*", "editors/clip/display/clip_display.html#bpy-types-spaceclipeditor-use-grayscale-preview"),
|
||||
("bpy.types.spaceoutliner.use_filter_lib_override*", "editors/outliner/interface.html#bpy-types-spaceoutliner-use-filter-lib-override"),
|
||||
("bpy.types.spaceoutliner.use_filter_object_empty*", "editors/outliner/interface.html#bpy-types-spaceoutliner-use-filter-object-empty"),
|
||||
("bpy.types.spaceoutliner.use_filter_object_light*", "editors/outliner/interface.html#bpy-types-spaceoutliner-use-filter-object-light"),
|
||||
("bpy.types.spacesequenceeditor.proxy_render_size*", "video_editing/preview/sidebar.html#bpy-types-spacesequenceeditor-proxy-render-size"),
|
||||
|
||||
@@ -442,15 +442,6 @@ class OUTLINER_PT_filter(Panel):
|
||||
row.label(icon='BLANK1')
|
||||
row.prop(space, "use_filter_object_others", text="Others")
|
||||
|
||||
if bpy.data.libraries:
|
||||
col.separator()
|
||||
row = col.row()
|
||||
row.label(icon='LIBRARY_DATA_OVERRIDE')
|
||||
row.prop(space, "use_filter_lib_override", text="Library Overrides")
|
||||
row = col.row()
|
||||
row.label(icon='LIBRARY_DATA_OVERRIDE')
|
||||
row.prop(space, "use_filter_lib_override_system", text="System Overrides")
|
||||
|
||||
|
||||
classes = (
|
||||
OUTLINER_HT_header,
|
||||
|
||||
@@ -2446,5 +2446,16 @@ void blo_do_versions_300(FileData *fd, Library *UNUSED(lib), Main *bmain)
|
||||
scene->toolsettings->curves_sculpt->curve_length = 0.3f;
|
||||
}
|
||||
}
|
||||
|
||||
for (bScreen *screen = bmain->screens.first; screen; screen = screen->id.next) {
|
||||
LISTBASE_FOREACH (ScrArea *, area, &screen->areabase) {
|
||||
LISTBASE_FOREACH (SpaceLink *, sl, &area->spacedata) {
|
||||
if (sl->spacetype == SPACE_OUTLINER) {
|
||||
SpaceOutliner *space_outliner = (SpaceOutliner *)sl;
|
||||
space_outliner->filter &= ~SO_FILTER_CLEARED_1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -900,7 +900,6 @@ TreeElement *outliner_add_element(SpaceOutliner *space_outliner,
|
||||
/* ID types not (fully) ported to new design yet. */
|
||||
if (te->abstract_element->expandPoll(*space_outliner)) {
|
||||
outliner_add_id_contents(space_outliner, te, tselem, id);
|
||||
te->abstract_element->postExpand(*space_outliner);
|
||||
}
|
||||
}
|
||||
else if (ELEM(type,
|
||||
|
||||
@@ -154,15 +154,6 @@ void TreeDisplayViewLayer::add_layer_collections_recursive(ListBase &tree,
|
||||
if (!exclude && show_objects_) {
|
||||
add_layer_collection_objects(ten->subtree, *lc, *ten);
|
||||
}
|
||||
|
||||
const bool lib_overrides_visible = !exclude && (!SUPPORT_FILTER_OUTLINER(&space_outliner_) ||
|
||||
((space_outliner_.filter &
|
||||
SO_FILTER_NO_LIB_OVERRIDE) == 0));
|
||||
|
||||
if (lib_overrides_visible && ID_IS_OVERRIDE_LIBRARY_REAL(&lc->collection->id)) {
|
||||
outliner_add_element(
|
||||
&space_outliner_, &ten->subtree, &lc->collection->id, ten, TSE_LIBRARY_OVERRIDE_BASE, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -107,7 +107,6 @@ void tree_element_expand(const AbstractTreeElement &tree_element, SpaceOutliner
|
||||
return;
|
||||
}
|
||||
tree_element.expand(space_outliner);
|
||||
tree_element.postExpand(space_outliner);
|
||||
}
|
||||
|
||||
bool tree_element_warnings_get(TreeElement *te, int *r_icon, const char **r_message)
|
||||
|
||||
@@ -40,9 +40,6 @@ class AbstractTreeElement {
|
||||
{
|
||||
return true;
|
||||
}
|
||||
virtual void postExpand(SpaceOutliner &) const
|
||||
{
|
||||
}
|
||||
|
||||
/**
|
||||
* Just while transitioning to the new tree-element design: Some types are only partially ported,
|
||||
|
||||
@@ -93,17 +93,6 @@ TreeElementID::TreeElementID(TreeElement &legacy_te, ID &id)
|
||||
legacy_te_.idcode = GS(id.name);
|
||||
}
|
||||
|
||||
void TreeElementID::postExpand(SpaceOutliner &space_outliner) const
|
||||
{
|
||||
const bool lib_overrides_visible = !SUPPORT_FILTER_OUTLINER(&space_outliner) ||
|
||||
((space_outliner.filter & SO_FILTER_NO_LIB_OVERRIDE) == 0);
|
||||
|
||||
if (lib_overrides_visible && ID_IS_OVERRIDE_LIBRARY_REAL(&id_)) {
|
||||
outliner_add_element(
|
||||
&space_outliner, &legacy_te_.subtree, &id_, &legacy_te_, TSE_LIBRARY_OVERRIDE_BASE, 0);
|
||||
}
|
||||
}
|
||||
|
||||
bool TreeElementID::expandPoll(const SpaceOutliner &space_outliner) const
|
||||
{
|
||||
const TreeStoreElem *tsepar = legacy_te_.parent ? TREESTORE(legacy_te_.parent) : nullptr;
|
||||
|
||||
@@ -24,7 +24,6 @@ class TreeElementID : public AbstractTreeElement {
|
||||
|
||||
static std::unique_ptr<TreeElementID> createFromID(TreeElement &legacy_te, ID &id);
|
||||
|
||||
void postExpand(SpaceOutliner &) const override;
|
||||
bool expandPoll(const SpaceOutliner &) const override;
|
||||
|
||||
/**
|
||||
|
||||
@@ -309,7 +309,6 @@ typedef enum eSpaceOutliner_Flag {
|
||||
typedef enum eSpaceOutliner_Filter {
|
||||
SO_FILTER_SEARCH = (1 << 0), /* Run-time flag. */
|
||||
SO_FILTER_CLEARED_1 = (1 << 1),
|
||||
SO_FILTER_NO_LIB_OVERRIDE = SO_FILTER_CLEARED_1, /* re-use */
|
||||
SO_FILTER_NO_OBJECT = (1 << 2),
|
||||
SO_FILTER_NO_OB_CONTENT = (1 << 3), /* Not only mesh, but modifiers, constraints, ... */
|
||||
SO_FILTER_NO_CHILDREN = (1 << 4),
|
||||
@@ -345,7 +344,7 @@ typedef enum eSpaceOutliner_Filter {
|
||||
|
||||
#define SO_FILTER_ANY \
|
||||
(SO_FILTER_NO_OB_CONTENT | SO_FILTER_NO_CHILDREN | SO_FILTER_OB_TYPE | SO_FILTER_OB_STATE | \
|
||||
SO_FILTER_NO_COLLECTION | SO_FILTER_NO_VIEW_LAYERS | SO_FILTER_NO_LIB_OVERRIDE)
|
||||
SO_FILTER_NO_COLLECTION | SO_FILTER_NO_VIEW_LAYERS)
|
||||
|
||||
/** #SpaceOutliner.filter_state */
|
||||
typedef enum eSpaceOutliner_StateFilter {
|
||||
|
||||
@@ -3773,13 +3773,6 @@ static void rna_def_space_outliner(BlenderRNA *brna)
|
||||
RNA_def_property_ui_text(prop, "Filter by Type", "Data-block type to show");
|
||||
RNA_def_property_translation_context(prop, BLT_I18NCONTEXT_ID_ID);
|
||||
|
||||
prop = RNA_def_property(srna, "use_filter_lib_override", PROP_BOOLEAN, PROP_NONE);
|
||||
RNA_def_property_boolean_negative_sdna(prop, NULL, "filter", SO_FILTER_NO_LIB_OVERRIDE);
|
||||
RNA_def_property_ui_text(prop,
|
||||
"Show Library Overrides",
|
||||
"For libraries with overrides created, show the overridden values");
|
||||
RNA_def_property_update(prop, NC_SPACE | ND_SPACE_OUTLINER, NULL);
|
||||
|
||||
prop = RNA_def_property(srna, "use_filter_lib_override_system", PROP_BOOLEAN, PROP_NONE);
|
||||
RNA_def_property_boolean_sdna(prop, NULL, "filter", SO_FILTER_SHOW_SYSTEM_OVERRIDES);
|
||||
RNA_def_property_ui_text(
|
||||
|
||||
Reference in New Issue
Block a user