3 ms·
In Solvespace we use native GUI on Windows, MacOS, and Linux (GTK). This is probably not what you want to do, as we don't use any GUI widgets - only popup dialo
by phkahler 5y ago
In Solvespace we use native GUI on Windows, MacOS, and Linux (GTK). This is probably not what you want to do, as we don't use any GUI widgets - only popup dialogs and menus. Everything in the app itself is rendered using OpenGL. Even our "text window" is drawn using OpenGL and GNU unifont (this is something that really needs to change BTW).
The platform abstraction code is here:
https://github.com/solvespace/solvespace/tree/master/src/platform https://github.com/solvespace/solvespace/tree/master/src/pla...
There is no other platform specific code anywhere in the app, but like I said above we don't support widgets.
There is also an emscripten port in a branch, but it doesn't want to build recently.
- riskneutral 5y ago> our "text window" is drawn using OpenGL and GNU unifont (this is something that really needs to change BTW) What would you change it to? I've implemented a GUI toolkit from scratch a couple times, and text editing was the hardest part by far.
- phkahler 5y ago>> What would you change it to? I've implemented a GUI toolkit from scratch a couple times, and text editing was the hardest part by far. I have no idea. The biggest problem with it now is that it's not resizable. We could use pango or something to render text at different sizes but that'd be a new dependency. Also forgot: we do use a platform specific text entry widget. Also2: when I say "we" I mean the previous maintainer did all the cross platform code. Since then it just works.
- tomcam 5y agoHow’s accessibility?