Having read a bit into code called by --new-gui, I noticed that Inkscape::UI::View::Edit is rather the Gtkmm equivalent of SPDesktopWidget, while SPDesktop is used by both the Gtk+ and Gtkmm application code, and rightly so, as it no longer contains GUI specific code.
Since SPDesktopWidget and all other view widgets are now separated out of the resp. view classes, it would be time to apply a pattern, I believe it's called a Bridge by the gang of four:
View ViewWidget subclass ViewWidgetCImpl +Desktop uses +DesktopWidget ===+===> +DesktopWidgetCImpl +SVGView +SVGViewWidget | +SVGViewWidgetCImpl | (interface) | (real code, Gtk) == | (abstract base class) | | ViewWidgetCXXImpl +===> +DesktopWidgetCXXImpl +SVGViewWidgetCXXImpl
(real code, Gtkmm)
What do you say? Is the design sound? Are there better names?
ralf