PUI: Difference between revisions

Jump to navigation Jump to search
2 bytes removed ,  19 April 2023
Line 95: Line 95:


One of the major things slowing down James' work on the popup-menu and combo box is time to restart the simulator for each change, he is looking for some solution to re-load the widget Nasal code independently. <ref><https://sourceforge.net/p/flightgear/mailman/message/37756183/</ref>
One of the major things slowing down James' work on the popup-menu and combo box is time to restart the simulator for each change, he is looking for some solution to re-load the widget Nasal code independently. <ref><https://sourceforge.net/p/flightgear/mailman/message/37756183/</ref>
James has done about 75% (hah!) of the C++ work to enable live reloading of modules this way, but unfortunately there are some code paths that would become crashy if you use the feature for the Canvas: because it would reference the ‘old’ (pre-reload) Nasal code, and not the new one, and therefore you’d get a weird mix of old and new, and then just crash the sim. To fix it properly I need to track down those places that store a reference to Canvas and give them a re-init method, so we don’t keep the stale references.
The general non-fun-ness of that kind of debugging is James has been making such slow progress on my PUI replacement widgets recently <ref>https://sourceforge.net/p/flightgear/mailman/message/37756263/</ref>


=== Todo ===
=== Todo ===
Line 106: Line 110:


Global menu keybindings won’t worry but don’t touch that, I have a separate plan for it.<ref>https://sourceforge.net/p/flightgear/mailman/message/37805736/</ref>
Global menu keybindings won’t worry but don’t touch that, I have a separate plan for it.<ref>https://sourceforge.net/p/flightgear/mailman/message/37805736/</ref>
James has done about 75% (hah!) of the C++ work to enable live reloading of modules this way, but unfortunately there are some code paths that would become crashy if you use the feature for the Canvas: because it would reference the ‘old’ (pre-reload) Nasal code, and not the new one, and therefore you’d get a weird mix of old and new, and then just crash the sim. To fix it properly I need to track down those places that store a reference to Canvas and give them a re-init method, so we don’t keep the stale references.
The general non-fun-ness of that kind of debugging is James has been making such slow progress on my PUI replacement widgets recently <ref>https://sourceforge.net/p/flightgear/mailman/message/37756263/</ref>


As of 04/2023, remaining items on the todo list are: <ref>https://sourceforge.net/p/flightgear/mailman/message/37805060/</ref>
As of 04/2023, remaining items on the todo list are: <ref>https://sourceforge.net/p/flightgear/mailman/message/37805060/</ref>

Navigation menu