![]() ![]() Then you can access the package system from pkg.root in the Nasal console, using the API defined at the bottom of HTTPClient.cxx. There is a #define flag you can toggle (in HTTPClient.cxx) to enable the code including the Nasal API it will download / refresh a catalog, which is generated by the scripts I committed to fgmeta a week ago. Thomas Geymayer and I are working on it, I am not sure where’s he go to with the UI, the backend pieces are mostly there but will need some intensive testing. ![]() Thus, adopting Canvas is going to address a number of long-standing issues, but it's obviously a process that only just got started, and it will not happen overnight - 2-3 release cycles are not far-fetched, that's how long the whole migration could very well take, unless there are more people interested in helping. This is something that is currently being addressed by TheTom and Zakalawe, who've both been working on a new Canvas GUI, and a new Canvas GUI dialog called "Aircraft Center", which -while still experimental- is intended to eventually allow end-users to easily download/install aircraft right within the simulator, and also switch between aircraft at run-time without having to exit/restart the simulator. Re: About FlightGear being user-friendly or not.Īnd yes, even the legacy FG GUI is entirely based on XML and configurable through just editiing XML files - but the collection of "widgets" (GUI controls like buttons, checkboxes, labels etc) is extremely small and very inflexible. Still, people have been asking for this for years, and it's thanks to pretty much a single person, Zakalawe, that switching aircraft is going to become possible pretty soon - he handled all the ugly work of cleaning up the simulator internals to make this happen - it's not exactly glamorous work, you gotta touch a ton of places, and you inevitably introduce a ton of regressions along the way. So it's there for a reason - fgrun uses the FLTK GUI library, which while relatively simple, is much more powerful than our legacy GUI engine, PUI. kind of a "remote control" using command line arguments. run-time reinitialization, in mind - thus, things like "fgrun" (and a plethora of other external launchers) were developed, which acted as a front-end on top of FG, so that FG itself wouldn't need to be changed - i.e. The "built-in" GUI/launcher is one of the longest-standing feature requests - but it's not just about the GUI (which is rather straightforward in comparison), but about the simulator never having been developed with this requirement, i.e. The fetched files are to be found in $FG_HOME/Aircraft/org.flightgear.* If there are errors related to fetching/using those files, they shoudl show up in $FG_HOME/fgfs.log (look for Catalog.cxx). Thus, the list itself will be populated based on XML files that are automatically downloaded. All the package manager functionality lives in SimGear and is triggered in the form of so called fgcommands. Internally, the launcher is implemented in the form of a Nasal script that resides in $FG_ROOT/Nasal/canvas/gui/dialogs/AircraftCenter.nas using the Canvas GUI APIs and a handful of widgets. ![]() The Aircraft Center is primarily written in Nasal and Canvas, as its back-end it is using SimGear http binding for downloading aircraft, and a few fgcommands for dealing with the package manager subsystem. Since then, many things have changed - Zakalawe is now working on an integrated Qt5 launcher, which is intended to remain an optional feature, but which is also intended to provide an in-sim replacement for the built-in PUI GUI.Īlso, TheTom is not currently as actively involved as Zakalawe, so that the Aircaft Center has not seen much attention recently - and Zakalawe stated on the devel list that he is now considering the "Aircraft Center" an "experimental feature" that is likely to be deprecated due to this ongoing Qt5 launcher/GUI efforts. The Canvas-based Aircraft Center dialog was originally prototyped by TheTom in response to Zakalawe announcing on the devel list that he was going to come up with a front-end for his still ongoing package manager subsystem, by creating a hard-coded PUI dialog.
0 Comments
Leave a Reply. |