beeware / toga

A Python native, OS native GUI toolkit.
https://toga.readthedocs.io/en/latest/
BSD 3-Clause "New" or "Revised" License
4.37k stars 683 forks source link

Add OpenGL support #51

Open larsoner opened 9 years ago

larsoner commented 9 years ago

Is there any plan to support OpenGL contexts / widgets in toga? There is code for creating them for OSX/Linux/Windows in Pyglet, so there is some guideline available. Just curious to know if I should keep an eye on it, because if OpenGL contexts are available then it could be made to operate with / as a backend for vispy.

freakboy3742 commented 9 years ago

Eventually - sure. It's not a high priority for myself personally, but I know 3D visualizations can be very significant for others, and most platforms are now providing relatively simple canvases for OpenGL. So, if some widgets were to mysteriously appear in the pull request queue... :-)

Completely seriously, it's actually not as hard to write a Toga widget as you may think - if there's a good base widget with an obvious API to expose, writing the wrapper API is a relatively simple proposition. The code for the Button widget is a good place to start if you're interested in contributing.

jr-garcia commented 1 month ago

Honestly, the lack of an OpenGL widget is what made me consider another toolkit. But that toolkit's support for Android is very poor, so it's still a pending decision. Probably grabbing some code from Kivy could speed up the development, since they already have a working cross platform implementation.