canonicalName

The name a model element is actually stored under, given the name it was constructed with.

A model element's name cannot contain a ., because the controls framework keys a control as elementName.propertyName and splits it on that character. A supplied name therefore has its dots replaced with _, and it is the result that is stored, reported, and used as the key in the model's element map.

Every name-based lookup on Model passes its argument through here before searching, so a caller may ask by either form and get the same answer. This function is public so that code building a key for something outside the model — a results table, an external index — can canonicalize the same way rather than reimplementing the rule.

Return

the name as it will be stored

Parameters

name

the name as supplied