Invalid Driver Targets are now indicated appropriately (using Red Backgrounds)
authorJoshua Leung <aligorith@gmail.com>
Thu, 28 Feb 2013 07:13:33 +0000 (07:13 +0000)
committerJoshua Leung <aligorith@gmail.com>
Thu, 28 Feb 2013 07:13:33 +0000 (07:13 +0000)
commitac6c218cf423ab2ea059ea169df54250ed81af97
tree423c33a956a61f0e3f922a48a650a8e6587bcecd
parent2afca3e317d7b545757864071a53889223cf0ff6
Invalid Driver Targets are now indicated appropriately (using Red Backgrounds)
in the UI

This is the second part of the fixes for [#32492], making it easier to identify
which part of a driver (i.e. which of its targets) is causing problems

A number of additional/related changes needed to be made:
* Red-alert status for layouts is now propagated down to child layouts when they
are created. This is needed as otherwise some of the templates used in the Graph
Editor driver settings won't actually get the red-alert status flushed down to
them. Also, note that this status needs to be set before any widgets are added
to the layout, or else the settings aren't applied when the relevant widgets get
created.

* "Single Property" RNA-Paths resulting in out of bounds array access will now
trigger an error status and appropriate warnings

TODO:
* The error tagging doesn't get applied immediately after variables are created,
or their types changed
* There was also some other weirdness involved when a higher-value flag (1<<10)
was used for this setting, which needs further attention
source/blender/blenkernel/intern/fcurve.c
source/blender/editors/interface/interface_layout.c
source/blender/editors/space_graph/graph_buttons.c
source/blender/makesdna/DNA_anim_types.h