For what we care about we can think of the two (sub)classes MWTransclusionDialog and MWTemplateDialog as a single dialog. The code is split because of a 3rd subclass in Cite.
- Remove template
- Remove parameter
- Closest part is selected after remove
- Add template
- Add parameter
- Added part is selected
- Unknown param input shows up in the correct circumstances