Outliner/Properties syncing #63991

Closed
opened 2019-04-29 16:46:32 +02:00 by William Reynish · 32 comments

From inside the Outliner, it would be useful to be able to sync with the Properties editor, so that it would reflect whatever data you have selected there:

Screenshot 2019-08-06 at 21.40.06.png
In this example clicking on the Material data would open the Material Properties.

However, this has other implications:

  • Currently, selecting obData (mesh, curve etc) switches the mode to Edit mode. But, this would conflict with Outliner-Properties syncing.
  • If we use selecting for switching Properties contexts, mode switching by clicking on data must be removed. In my estimation, making selection change the mode is not what you would expect anyway. Instead, switching modes could be done by holding a modifier key or via the Context Menu.

This can work as follows:

  • Selecting any data in the Outliner will make the parent object active, then switch to the correct tab depending on the data type
  • The mode doesn't change when you select odData (mesh, curve etc)
From inside the Outliner, it would be useful to be able to sync with the Properties editor, so that it would reflect whatever data you have selected there: ![Screenshot 2019-08-06 at 21.40.06.png](https://archive.blender.org/developer/F7652129/Screenshot_2019-08-06_at_21.40.06.png) *In this example clicking on the Material data would open the Material Properties.* However, this has other implications: - Currently, selecting obData (mesh, curve etc) switches the mode to Edit mode. But, this would conflict with Outliner-Properties syncing. - If we use selecting for switching Properties contexts, mode switching by clicking on data must be removed. In my estimation, making selection change the mode is not what you would expect anyway. Instead, switching modes could be done by holding a modifier key or via the Context Menu. This can work as follows: - Selecting any data in the Outliner will make the parent object active, then switch to the correct tab depending on the data type - The mode doesn't change when you select odData (mesh, curve etc)

Added subscriber: @WilliamReynish

Added subscriber: @WilliamReynish

#82668 was marked as duplicate of this issue

#82668 was marked as duplicate of this issue

Added subscriber: @DuarteRamos

Added subscriber: @DuarteRamos

Added subscriber: @1D_Inc

Added subscriber: @1D_Inc

What if to draw them in place of Selectability while edit mode?

What if to draw them in place of Selectability while edit mode?

@1D_Inc
I can’t see why it would, that would be rather arbitrary.

@1D_Inc I can’t see why it would, that would be rather arbitrary.
Member

Added subscriber: @Harley

Added subscriber: @Harley
Member

My patch with Outliner changes includes marking objects that are being edited. If you open up those rows you can click on the mesh icon to put it into edit mode, click again to leave edit mode, and you can shift-click to add or remove multiples. But for some reason we are not allowing to do so when the rows are collapsed. That would be an easy change...

OutlinerEditing.png

My patch with [Outliner changes ](https://developer.blender.org/D4650) includes marking objects that are being edited. If you open up those rows you can click on the mesh icon to put it into edit mode, click again to leave edit mode, and you can shift-click to add or remove multiples. But for some reason we are not allowing to do so when the rows are collapsed. That would be an easy change... ![OutlinerEditing.png](https://archive.blender.org/developer/F6993328/OutlinerEditing.png)

In #63991#668200, @WilliamReynish wrote:
@1D_Inc
I can’t see why it would, that would be rather arbitrary.

The reason is they are logically interchangeable.

  • You don't ever need to manage or even view selectability while editing (because you have already made a selection and are editing something)
  • You can't view editing state while you are in object mode (because you are in object mode).

Thus, the middle [Selectability] column can be edit/object mode-dependent with no loss, providing all it's space for the current mode.
Nice to view, easy to scroll.

> In #63991#668200, @WilliamReynish wrote: > @1D_Inc > I can’t see why it would, that would be rather arbitrary. The reason is they are logically interchangeable. - You don't ever need to manage or even view selectability while editing (because you have already made a selection and are editing something) - You can't view editing state while you are in object mode (because you are in object mode). Thus, the middle [Selectability] column can be edit/object mode-dependent with no loss, providing all it's space for the current mode. Nice to view, easy to scroll.

@Harley that’s already quite nice I think. As you say, if that could also be done when collapsed, it starts to become compelling.

@Harley that’s already quite nice I think. As you say, if that could also be done when collapsed, it starts to become compelling.

Pretty much clean solution)

1D_Switch_OBJECT-EDIT.png

Pretty much clean solution) ![1D_Switch_OBJECT-EDIT.png](https://archive.blender.org/developer/F6998524/1D_Switch_OBJECT-EDIT.png)
William Reynish changed title from Outliner: Mode switching to Outliner: Syncing with Properties & Mode switching 2019-08-06 22:03:04 +02:00

Added subscriber: @natecraddock

Added subscriber: @natecraddock
Nathan Craddock self-assigned this 2019-08-10 06:37:04 +02:00

I like this proposal, here are some thoughts I've had after reading through suggestions on devtalk :

  • The way I see this working is an outliner selection of an object, or any of its data subtree elements (vertex groups, mesh data, modifiers, materials, bones, etc.) would activate the object. This is necessary because the properties editor is based on the active object. Then the properties editor can be switched to the correct tab.
  • I agree that mode switching would make more sense from a context menu rather than by clicking on outliner data elements. (Though I would argue that mode switching isn't even necessary in the outliner, with a dropdown, keyboard shortcuts, a pie menu, and workspaces we aren't really lacking in ways to switch modes.)
  • There shouldn't be any need for a toggle to enable properties syncing. The properties editor has a pinning feature if a user wants to keep a properties editor from changing.
  • The proposed solution for managing objects within edit mode is good, though I feel that it is distinct enough from outliner datablock to properties syncing that it could use it's own task.
I like this proposal, here are some thoughts I've had after reading through suggestions on [devtalk ](https://devtalk.blender.org/t/gsoc-2019-outliner-improvements-ideas/7185/): * The way I see this working is an outliner selection of an object, or any of its data subtree elements (vertex groups, mesh data, modifiers, materials, bones, etc.) would activate the object. This is necessary because the properties editor is based on the active object. Then the properties editor can be switched to the correct tab. * I agree that mode switching would make more sense from a context menu rather than by clicking on outliner data elements. (Though I would argue that mode switching isn't even necessary in the outliner, with a dropdown, keyboard shortcuts, a pie menu, and workspaces we aren't really lacking in ways to switch modes.) * There shouldn't be any need for a toggle to enable properties syncing. The properties editor has a pinning feature if a user wants to keep a properties editor from changing. * The proposed solution for managing objects within edit mode is good, though I feel that it is distinct enough from outliner datablock to properties syncing that it could use it's own task.

@Zachman agreed on all points. I will update this task.

@Zachman agreed on all points. I will update this task.
William Reynish changed title from Outliner: Syncing with Properties & Mode switching to Outliner - Properties syncing 2019-08-10 09:31:58 +02:00

Added subscriber: @Pinnhead

Added subscriber: @Pinnhead

Maybe when clicking on light/camera icon is select an object and automatic open properties for light/camera?

44b703e27a217393a7df6a685d86cdf1ea58eba3.jpeg

Maybe when clicking on light/camera icon is select an object and automatic open properties for light/camera? ![44b703e27a217393a7df6a685d86cdf1ea58eba3.jpeg](https://archive.blender.org/developer/F7668083/44b703e27a217393a7df6a685d86cdf1ea58eba3.jpeg)
William Reynish changed title from Outliner - Properties syncing to Outliner/Properties syncing 2020-01-13 00:10:03 +01:00

Added subscriber: @ThinkingPolygons

Added subscriber: @ThinkingPolygons

Yo, is it dead? This is a must have. 🙁

Yo, is it dead? This is a must have. 🙁

In #63991#861301, @ThinkingPolygons wrote:
Yo, is it dead? This is a must have. 🙁

Gsoc is over.
Curfew is in a progress.

> In #63991#861301, @ThinkingPolygons wrote: > Yo, is it dead? This is a must have. 🙁 Gsoc is over. Curfew is in a progress.

Added subscriber: @ckohl_art

Added subscriber: @ckohl_art

Added subscriber: @AlexeyPerminov

Added subscriber: @AlexeyPerminov

Added subscriber: @Oskar3d

Added subscriber: @Oskar3d

Changed status from 'Confirmed' to: 'Resolved'

Changed status from 'Confirmed' to: 'Resolved'

Closed by 0e47e57eb7

Closed by 0e47e57eb7

Added subscribers: @essercizi, @mano-wii

Added subscribers: @essercizi, @mano-wii

I have to say I'm not a big fan of this change. I'm relatively new to Blender (after a long gap from pre-Cycles days), so apologies if I'm talking nonsense here, but ...

The behaviour, and especially the "only if touching" aspect, seems quite unintuitive and likely to confuse many users (at least it confused me - I initially reported it as a bug). Previously I could open a property editor, select the required tab, and then switch between objects quickly in the outliner, but now I'll have to expand each object and drill down to the required property in the outliner before selecting it, otherwise it'll keep resetting to the Object tab. Unfortunately even that won't work consistently: for example, selecting a fluid modifier will sync to the modifier tab and expand that, but of course all the fluid settings are actually in the Physics tab, not the modifiers, so that's not helpful. Similarly, rigid body settings are in the Physics tab, but they don't have a modifier to select in the outliner. Even if you have a touching editor open on the physics tab, selecting the new object will reset that to the object properties tab. Pinning a property editor doesn't really solve this - the object then can't be changed, even though the selected tab does still sync with the outliner if the pinned object is selected.

I do feel that making this a user preference, e.g. "Sync property editors with outliner: none/touching/all" and defaulting to the existing behaviour of "none", would avoid confusing many users, but in the meantime I think I'll end up putting a dummy editor between the outliner and property editors to disable this feature, even though that will waste precious screen space. At the moment I'm using 2.92 because of the fantastic GPU+CPU tile stealing, but if it wasn't for that I think I'd stick with 2.90 to be honest!

Anyway, rant over, thank you to everyone for making Blender so amazing :-)

I have to say I'm not a big fan of this change. I'm relatively new to Blender (after a long gap from pre-Cycles days), so apologies if I'm talking nonsense here, but ... The behaviour, and especially the "only if touching" aspect, seems quite unintuitive and likely to confuse many users (at least it confused me - I initially reported it as a bug). Previously I could open a property editor, select the required tab, and then switch between objects quickly in the outliner, but now I'll have to expand each object and drill down to the required property in the outliner before selecting it, otherwise it'll keep resetting to the Object tab. Unfortunately even that won't work consistently: for example, selecting a fluid modifier will sync to the modifier tab and expand that, but of course all the fluid settings are actually in the Physics tab, not the modifiers, so that's not helpful. Similarly, rigid body settings are in the Physics tab, but they don't have a modifier to select in the outliner. Even if you have a touching editor open on the physics tab, selecting the new object will reset that to the object properties tab. Pinning a property editor doesn't really solve this - the object then can't be changed, even though the selected tab *does* still sync with the outliner if the pinned object is selected. I do feel that making this a user preference, e.g. "Sync property editors with outliner: none/touching/all" and defaulting to the existing behaviour of "none", would avoid confusing many users, but in the meantime I think I'll end up putting a dummy editor between the outliner and property editors to disable this feature, even though that will waste precious screen space. At the moment I'm using 2.92 because of the fantastic GPU+CPU tile stealing, but if it wasn't for that I think I'd stick with 2.90 to be honest! Anyway, rant over, thank you to everyone for making Blender so amazing :-)

@essercizi Thank you for the feedback. I've been collecting other feedback on this change over the last few weeks, and I plan to talk with the other UI developers next week on the best solution. Here are some of the ideas so far:

  • Don't change tabs when selecting objects
  • Always sync and disable syncing in each properties editor
  • Never sync and enable syncing in each properties editor

I hadn't considered a user pref before, so I'll bring that up too. Thanks again!

@essercizi Thank you for the feedback. I've been collecting other feedback on this change over the last few weeks, and I plan to talk with the other UI developers next week on the best solution. Here are some of the ideas so far: * Don't change tabs when selecting objects * Always sync and disable syncing in each properties editor * Never sync and enable syncing in each properties editor I hadn't considered a user pref before, so I'll bring that up too. Thanks again!

Thanks Nathan, I really appreciate your generous reply! I was feeling a bit of a fool for reporting it as a bug, so you've made me feel a lot better about it. I'm sure I'll get used to the behaviour however it works out. I'm a retired developer and still dabble with Visual Studio, .NET and C#, so perhaps I'll get more involved with the "other side" of Blender someday :-)

If I can impose on you further, can I ask what is the best way to provide feedback on beta and alpha releases? I have some concerns about the new Property Search feature introduced in 2.91 (because it pushes the object name and pin icon down into the scrollable area, so they're often hidden) but it's not a bug or a feature request so I'm not quite sure where to comment on it. I'd be grateful for any advice from you or other contributors here.

Thanks again, Ross

Thanks Nathan, I really appreciate your generous reply! I was feeling a bit of a fool for reporting it as a bug, so you've made me feel a lot better about it. I'm sure I'll get used to the behaviour however it works out. I'm a retired developer and still dabble with Visual Studio, .NET and C#, so perhaps I'll get more involved with the "other side" of Blender someday :-) If I can impose on you further, can I ask what is the best way to provide feedback on beta and alpha releases? I have some concerns about the new Property Search feature introduced in 2.91 (because it pushes the object name and pin icon down into the scrollable area, so they're often hidden) but it's not a bug or a feature request so I'm not quite sure where to comment on it. I'd be grateful for any advice from you or other contributors here. Thanks again, Ross
Member

@essercizi - I'm a retired developer and still dabble with Visual Studio, .NET and C#, so perhaps I'll get more involved with the "other side" of Blender someday :-)

Ross,

There are quite a few of us retired (or nearly retired) developers involved as spare-time contributors and I highly recommend it as a fun and interesting hobby. Just start by get it compiling. https://wiki.blender.org/wiki/Building_Blender/Windows

Cheers, Harley

> @essercizi - I'm a retired developer and still dabble with Visual Studio, .NET and C#, so perhaps I'll get more involved with the "other side" of Blender someday :-) Ross, There are quite a few of us retired (or nearly retired) developers involved as spare-time contributors and I highly recommend it as a fun and interesting hobby. Just start by get it compiling. https://wiki.blender.org/wiki/Building_Blender/Windows Cheers, Harley
Member

Added subscriber: @HooglyBoogly

Added subscriber: @HooglyBoogly
Member

@essercizi Try #user-interface-module on blender.chat. You might find D9235 interesting. Basically we had the same concerns as you, but there are some complexities to it that aren't obvious at first and some very annoying button layout code making this sort of layout very complicated code wise.

Let's not continue this off topic discussion here though.

@essercizi Try #user-interface-module on blender.chat. You might find [D9235](https://archive.blender.org/developer/D9235) interesting. Basically we had the same concerns as you, but there are some complexities to it that aren't obvious at first and some very annoying button layout code making this sort of layout very complicated code wise. Let's not continue this off topic discussion here though.

Thanks Harley,
Will give it a go. Already have VS2019 installed, and I've used Subversion in the past (and even C and make in earlier Unix days!) Just need to clear out a few hundred GB of Mantaflow cache files to make room first ;-)

Likewise, thanks Hans, will do...

Thanks Harley, Will give it a go. Already have VS2019 installed, and I've used Subversion in the past (and even C and make in earlier Unix days!) Just need to clear out a few hundred GB of Mantaflow cache files to make room first ;-) Likewise, thanks Hans, will do...
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
14 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#63991
No description provided.