GSoC 2019: Outliner Improvements Ideas

Right now we have to unfold the hierarchy of an object to select the Object Data icon to enter in Edit Mode, but this unfolding is unnecessary since the same icon is when the Object is folded.
What if we just click on the icon to enter to Edit Mode without unfolding it and click on the object to exit Edit Mode?


In some way I would like to get rid of those icons since some objects don’t have any use for it like the Camera, if you unfold it and click on the here image nothing happens and this goes for lights as well. so having this icon which is exactly the same as the object makes the Outliner with redundant visual information.
But… if you for example double click on that icon then the Object data tab gets open, then there is a use for that icon.

Hope it makes sense.


That would be awesome. It was something I tried to do but failed miserably. The one obvious Boolean doesn’t do it and I spent some time in vain trying to find what was keeping it from working on a collapsed row. Expecting a “well, duh” moment when someone does it right.

@jc4d I think clicking on those icons without unfolding would be great! I’m planning on making greater use of these icons as well, Just like edit mode and pose mode work for their data types, the others should have some functionality.


What if we just click on the icon to enter to Edit Mode without unfolding it and click on the object to exit Edit Mode?

this could be extended to any properties of an object like if you click on it, it go directly to the good panel in the properties editor


@natecraddock: Thanks for your already hard work! Now with your improvements the outliner becomes the attention it needs to deal with lots of geometry in a deep hirearchy! I have to work with such hierarchies every day and often it is a pain. Especially if you see, other software packages, have the features in their outliners, that you would need.
So I have one other thing, that you could maybe write on your outliner to do list.
In the moment it is only possilble to filter objects in the blender outliner: all/visible/selected/active
It would be nice to also have a filter for invisible objects.
Often in a very large nested hierarchies you hide something but later on you want only unhide a few of this objects. Because of the large nested hierarchy you can´t find the objects in the outliner anymore. Unhiding everything (alt+h) would ruin your overall configuration. So filtering only the hidden/invisible objects in the outliner would be really great! Maybe it isn´t a tought coding job?
All the best for your GSOC project!


Not know, Is something already is suggested. Just see a post and want to mention here:
Outliner Filters - Object filter affects parented Collections


This does have a use.
The “Camera.001” in your case is name of the Object Data block. You can have several camera objects use the same camera object data block, while using other data blocks for others. The same way you use the same material on different objects.
For example, I often use several cameras (let’s say 10) for different perspectives in the same scene. But I just use three different data blocks, not ten: “Camera_normal” is used by most of these cameras. And then I use a “Camera_panorama” data block for 360° panoramic shots, and a “Camera_wide_angle” for the places where I need to render a wider field of view. It’s not bad at all that I can see this information in the outliner.

I see, thanks for the clarification. But the unfolding is still unnecessary since you could click (double click) on it as I proposed to open the object data tab. If you want to see the name of it, then a tooltip would be enough.

A new guy is suggesting Automatic scrolling when dragging objects in outliner


Are some of those modifications as separate patches that we can try in our own builds? :slight_smile:

@machieb An invisible filter shouldn’t be too difficult to add, and I can see why that might be useful, adding to the list.

@AbidMaqbool Thanks for the links :slight_smile:

@Zsolt_St agreed. Those datablock names are useful, and tooltips could work as an alternative, but I think the nested datablock makes sense.

@JuanGea Yes, you can try these out in your own builds if you like. Either do

git checkout soc-2019-outliner

Or if you only want certain commits you could make a temporary branch and do some git cherry-picks from my branch to that temporary one.


Yeah, thanks, I’m still a bit new to getting things from other builds and such things, but I’ll get used to it, thanks for this! is what I needed :smiley:


Better handling of Constraints:

Would be nice to:

  • Add the new icons to the Outliner for both objects and bones
  • Add toggles to enable/disable constraints, just like you can with modifiers
  • Add ability to re-order constraints (and modifiers!) in the Outliner itself.



I expect adding the icons for all the object and bone types should be simple enough, same with adding the toggles for constraints (I imagine it would be similar to modifiers)

Reordering from the outliner would be more difficult, but would be a nice touch. I’ve had a few ideas with drag and drop floating in my head these past few days that I’m going to write down and share for feedback, and this would fit in nicely.


Hi! If you’ll try to add the constraints icons here you can find my previous poor attempt to do it: :slightly_smiling_face:

For bones I didn’t know how to get to the correct bone index in which the constraints are stored, so it doesn’t work, but at least you’ll have the switch already written down.

1 Like

A follow up regarding moving around modifiers. If you manage to get it to work, it would be even more awesome if you could make it so you can use copy, cut, and duplicate on modifiers that you can then transfer over to other objects that can use those modifiers, as well as moving them to other objects by dragging.

Also would be nice having the option to delete the entire stack of modifiers through the R click menu for the Modifiers group or using the basic shortcuts for it.


that is Max way and the right way to manage your modifiers. You have a mirror and subdivision modifiers applied to lets say a panel, then you model a bolt as a separate object and you position it into a hole on the half of the panel. You would then copy the panel modifiers and paste it to the bolt. It will automatically mirror that bold to the other panel perfectly in that hole.

That shouldn’t be that difficult. We already support reordering of collections. There is a chance the same code framework can be re-used.