20,741
edits
m (→2022: Shiva Alternatives) |
m (→2022: pui2canvas / XMLDialog.nas) |
||
Line 6: | Line 6: | ||
== 2022 == | == 2022 == | ||
=== XMLDialog.nas === | |||
=== 2022 === | |||
{{Main article|pui2canvas}} | |||
There's now an XML to Nasal bridge, to keep PUI dialogs working (Disabled by a CMake option) | |||
This is implemented on top of the [[Canvas]] system. | |||
James reported having something in progress locally, and that should even be something we can try in March/April 2022. Hopefully that’s quick enough, knowing it has been a long time coming.<ref>https://sourceforge.net/p/flightgear/mailman/message/37606439/</ref> | |||
The new code builds equivalent C++ objects to what the [[PUI]] dialogs build, with properties exposed to [[Nasal]]. | |||
Peer objects are created by Nasal [[callbacks]], which can implement the various dialog functions needed to keep compatibility, especially the ‘update’ and ‘apply’ hooks.<ref>https://sourceforge.net/p/flightgear/flightgear/ci/cbd5ef9e7b8f433dbc1ba97bae7d7cfc894e7cef/</ref> | |||
Use the following [[Building using CMake|cmake option]] to enable this code: <code>-DENABLE_PUICOMPAT=ON</code> | |||
The new Compatibility files can now be found in $FG_SRC/GUI: | |||
* {{flightgear file|src/GUI/FGPUICompatDialog.cxx }} | |||
* {{flightgear file|src/GUI/FGPUICompatDialog.hxx }} | |||
* {{flightgear file|src/GUI/PUICompatObject.cxx }} | |||
The corresponding Nasal/Canvas module to dynamically "translate" legacy PUI/XML dialogs into Canvas dialogs (at runtime), is to be found in {{fgdata file|Nasal/gui/XMLDialog.nas}} <ref>https://sourceforge.net/p/flightgear/fgdata/ci/fe7c87b21a69f88ddb87d89453c48d12b69660e2/</ref> | |||
=== Core Profile support / replacing ShivaVG === | === Core Profile support / replacing ShivaVG === | ||
[[File:ShivaVG.jpg|thumb|Here is a comparison between ShivaVG and ShaderVG.Look at the Canvas Dialog top left and particularly the vertical airspeed bars <ref>https://sourceforge.net/p/flightgear/mailman/message/37610774/</ref>]] | [[File:ShivaVG.jpg|thumb|Here is a comparison between ShivaVG and ShaderVG.Look at the Canvas Dialog top left and particularly the vertical airspeed bars <ref>https://sourceforge.net/p/flightgear/mailman/message/37610774/</ref>]] | ||
Line 23: | Line 49: | ||
* For one the x,y positions are off comapared to ShivaVG making things slightly bigger (maybe too big for the screen). | * For one the x,y positions are off comapared to ShivaVG making things slightly bigger (maybe too big for the screen). | ||
* and one issue with the "title bar" being opaque.<ref>https://sourceforge.net/p/flightgear/mailman/message/37610740/</ref> | * and one issue with the "title bar" being opaque.<ref>https://sourceforge.net/p/flightgear/mailman/message/37610740/</ref> | ||
== 2021 == | == 2021 == |