I want to get my programme running on Linux but I don't kow what to do about the UI. Right now I'm using WPF but it probably won't be supported by Mono too soon. The UI controls are edited directly by the non-UI code.
Switching to Windows Forms would be easiest but I think it doesn't really look good on Linux.
What I am dreaming of right now is having some kind of abstract UI that provides the standard controls (with the standard members) and keeps the non-UI code away from the rest. So I would have to translate changes in the abstract UI to the concrete UI. This would be a lot of work but the code would be highly re-usable.
What would you do and what do you think of the last idea?
(It would be good if it would not require anything new to be installed on Windows.)