Animation Editors: Object datablocks are now sorted alphabetically by default
authorJoshua Leung <aligorith@gmail.com>
Sun, 3 Jul 2016 14:50:10 +0000 (02:50 +1200)
committerJoshua Leung <aligorith@gmail.com>
Thu, 7 Jul 2016 13:49:23 +0000 (01:49 +1200)
commit92c9bdbbb9d506e5f8a3d8877fbe018ff8a7b599
tree03b3873c52855673dc08247cd6fb3e335a9d256e
parent2910e288ab920446e7caebb0f56caea6d17d6d47
Animation Editors: Object datablocks are now sorted alphabetically by default

A long requested feature has been to have objects appear in alphabetical order
in the animation editors, so that it is easier to find where they occur. This
commit implements support for this.

The main sticking point has been the performance impact of having this sorting
happening all the time (as the actual list of "bases" cannot be modified, as the
old depsgraph still needs random-looking unsorted order of objects for scheduling
updates). However, it recently occurred to me that perhaps by restricting it to
the one case where the ordering actually matters (i.e. when we're getting the channel
list for drawing all channels, vs operating on them), and adding a toggle to turn the
sorting off in heavy scenes when it might bog down things, that it will probably
be acceptable enough in general.  Furthermore, if things get really bad, we can investigate
putting in place some sort of caching scheme for this too - though hopefully the
new depsgraph will make that unnecessary (i.e. it doesn't sort the bases directly anymore).
release/scripts/startup/bl_ui/space_dopesheet.py
source/blender/editors/animation/anim_filter.c
source/blender/makesdna/DNA_action_types.h
source/blender/makesrna/intern/rna_action.c