As I was writing this question, I realized a much more clean approach.
The problem with what is described above is that I was intent on re-using the first Presenter, Presenter1
.
It would be much cleaner to abstract out the Editor portion of the EditorView1
code into a re-usable Editor widget (Editor1
) which could be used by both EditorView1
and EditorView2
. Now, I have one presenter, one view, and one EditorDriver. There is no need to juggle nested presenters or multiple EditorDrivers.