PUI: Difference between revisions

Jump to navigation Jump to search
11 bytes added ,  23 May 2021
m
no edit summary
mNo edit summary
mNo edit summary
Line 11: Line 11:


[[File:Custom-autopilot-dialog.png|right|200px]]
[[File:Custom-autopilot-dialog.png|right|200px]]
'''PUI''' is the standard GUI engine used in FlightGear, it is part of [[PLIB]] and is using raw, fixed-pipeline, [[OpenGL]] code internally (no [[OpenSceneGraph]]). PUI provides a fairly basic, but robust, set of widgets. PUI is also used for rendering the [[Menubar]].
[[PUI]] is the standard GUI engine used in FlightGear, it is part of [[PLIB]] and is using raw, fixed-pipeline, [[OpenGL]] code internally (no [[OpenSceneGraph]]). PUI provides a fairly basic, but robust, set of widgets. PUI is also used for rendering the [[Menubar]].


pui already is a separate distinct library within plib.  It depends on some central utility stuff, but that's about it.  So it is pretty stripped down and separate already.<ref>https://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg26011.html</ref>
[[PUI]] already is a separate distinct library within Plib.  It depends on some central utility stuff, but that's about it.  So it is pretty stripped down and separate already.<ref>https://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg26011.html</ref>


FlightGear uses a gui widget set that is implemented on top of OpenGL.  This has many advantages from a portability standpoint and from the standpoint of integrating with window systems.  "Pui" doesn't have every feature under the sun, but it was never meant to.  It's relatively small, lean, mean, and written on top of OpenGL which makes life *much* easier for us.
FlightGear uses a GUI widget set that is implemented on top of [[OpenGL]].  This has many advantages from a portability standpoint and from the standpoint of integrating with window systems.  [[PUI]] doesn't have every feature under the sun, but it was never meant to.  It's relatively small, lean, mean, and written on top of [[OpenGL]] which makes life *much* easier for us.


We are to some extent hamstrung by the rather old GUI toolkit we use. However, replacing that is going to be non-trivial, and it would affect not just the core GUI but also all the dialog boxes that have been set up for particular aircraft.<ref>https://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg25985.html</ref>
We are to some extent hamstrung by the rather old GUI toolkit we use. However, replacing that is going to be non-trivial, and it would affect not just the core GUI but also all the dialog boxes that have been set up for particular aircraft.<ref>https://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg25985.html</ref>


 
If you know something about GUI systems, something about portability of code across all our supported platforms, and something about FlightGear.  Then post a proposal for a change.  Better yet, post patches with a new GUI system that doesn't suck, runs efficiently, supports all platforms, integrates cleanly with FlightGear, doesn't add a nightmare of new library dependencies, isn't chock full of bugs, does everything the current system does, and does everything you think a GUI system should do, etc. etc.<ref>https://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg25995.html</ref>
If you know something about gui systems, something about portability of code across all our supported platforms, and something about flightgear.  Then post a proposal for a change.  Better yet, post patches with a new gui system that doesn't suck, runs efficiently, supports all platforms, integrates cleanly with FlightGear, doesn't add a nightmare of new library dependencies, isn't chock full of bugs, does everything the current system does, and does everything you think a gui system should do, etc. etc.<ref>https://www.mail-archive.com/flightgear-devel@lists.sourceforge.net/msg25995.html</ref>


[[File:menubar2.jpg|517px]]
[[File:menubar2.jpg|517px]]

Navigation menu