Description of the need
This request arose from #3292. The solution proposed there by @bugfolder alters to the core radio/checkbox widget form used for displaying the taxonomy term widget. But there was discussion about the possibility of adding a
#indentation property to make this feature available to all checkbox and radio elements beyond the taxonomy term widget.
#indentation property that would further theme the element using
theme_indentation(). This function adds
<div> elements with css class
indentation to create indentation.
#indentation property would take an integer >= 0.
Alternatives that have been considered
The alternative is to manually add indentations to the
#options values before outputting the form element. This is the current solution used in #3292.
Alternatively, it may be possible to add different css classes to each element depending on their depths. This was an earlier approach in #3292, but it was cumbersome, as it required the creation of several css classes, one for each level.
I will try to provide a PR later today.