This task is about how to present static override in our UI.
So far, you can create an override from active object or group in 3DView, using the search menu.
UI: ID Template
You can also use the ID templates of the data-blocks.
Now we stick to a single button, when data is directly linked, clicking on it will make a local copy, while shift-clicking on it will make a static override.
When data is a static override, icon is the DATA_OVERRIDE one, and clicking on the button will make it a fully boring local data-block.
In picture to the right: Location is overridden, Rotation and Scale are overridable but not overridden, everything else is not overridable.
Once you have created a local override of a linked data-block, that override data-block will show its properties either greyed-out (as when linked, meaning you cannot override them), normally shaded (meaning you can edit them, but currently they are not overridden), and in a new style-defined color (meaning that property is overridden from source linked data).
This is similar to the animated/driven coloring system. Note that animated/driven have priority over overridden status, since they effectively cancel any static override (animation and drivers can be seen as a specific case of dynamic override ;) ).
User can control overriding of properties from the RMB-menu, again in a similar way as animations/drivers are controlled.
So far there is no feedback about overriding in Outliner, this we'll most likely want to add at some point. Not sure how high priority it is though.
We'll want a replacement for the 'make proxy' button (that will take care of overriding sub-data as needed, and remapping pointers too).
Right now just added a dummy one inspired from the 'linked datablock' one,, but it should be possible to find a better one (also, that one might be too close to the classical 'download' down-arrow icon?).
Mostly to the User Interface team: do you think current system for user feedback (the coloring of whole prop) is good? Or do you see some crucial missing feature, or bad design, or…
E.g. maybe a single colored bar or frame would be better than full color of the widget, that would e.g. allow to display overridden and animated status at the same time - would this be really needed?
Also, do we want to convey somehow in UI the type of overriding (replacing, differential, etc.), or are we fine with having those info only in the RMB-menu?