Porting a 600k line codebase to a different GUI is a fool's game (the vast majority of Ardour's code and complexity is in the GUI, not the backend).
We did it once before, from GTK1 to GTK2, which should have been easy. And indeed, the actual GUI toolkit switchover was relatively easy. The problem is that along the way, you keep running into other issues and ideas. We likely could have done GTK1 to GTK2 in a month, but it took nearly a year.
We have no need of traditional desktop GUI toolkits (or SDL) except for the 4 widget classes I mentioned. We have our own internal canvas-based "toolkit" that is Cairo-based, and thus only requires a window+rgba-buffer+event abstraction.
We did it once before, from GTK1 to GTK2, which should have been easy. And indeed, the actual GUI toolkit switchover was relatively easy. The problem is that along the way, you keep running into other issues and ideas. We likely could have done GTK1 to GTK2 in a month, but it took nearly a year.
We have no need of traditional desktop GUI toolkits (or SDL) except for the 4 widget classes I mentioned. We have our own internal canvas-based "toolkit" that is Cairo-based, and thus only requires a window+rgba-buffer+event abstraction.