20,741
edits
mNo edit summary |
No edit summary |
||
Line 15: | Line 15: | ||
[[File:menubar2.jpg|517px]] | [[File:menubar2.jpg|517px]] | ||
== Replacement status == | |||
James is hoping to land the PUI replacement GUI in this dev cycle (at least as a proof-of-concept, probably not as the default UI), so wouldn’t expend lots of effort on things like collapsible sections which might be a lot of work with the current approaches, but are trivial with the new UI scheme.<ref>{{cite web | |||
|url = https://sourceforge.net/p/flightgear/mailman/message/36059822/ | |||
|title = <nowiki> Re: [Flightgear-devel] Canvas MapLayer for OpenStreetMap, OpenAIP, | |||
VFR Sectionals </nowiki> | |||
|author = <nowiki> James Turner </nowiki> | |||
|date = Oct 1st, 2017 | |||
|added = Oct 1st, 2017 | |||
|script_version = 0.40 | |||
}}</ref> | |||
Once the basic new UI is in place we can experiment with different re-arrangements easily, without being limited by PUI. (I expect PUI to live on as the default / alternate UI while this happens)<ref>{{cite web | |||
|url = https://sourceforge.net/p/flightgear/mailman/message/36061229/ | |||
|title = <nowiki> Re: [Flightgear-devel] FGFS macOS Menubar </nowiki> | |||
|author = <nowiki> James Turner </nowiki> | |||
|date = Oct 2nd, 2017 | |||
|added = Oct 2nd, 2017 | |||
|script_version = 0.40 | |||
}}</ref> | |||
James is getting really close to having the PUI replacement UI suitable for beta-testing, so if this is for ‘nice to have’ things, it’s maybe not worth the effort.<ref>{{cite web | |||
|url = https://sourceforge.net/p/flightgear/mailman/message/36067646/ | |||
|title = <nowiki> Re: [Flightgear-devel] PLIB features in plib svn but not in any | |||
release </nowiki> | |||
|author = <nowiki> James Turner </nowiki> | |||
|date = Oct 7th, 2017 | |||
|added = Oct 7th, 2017 | |||
|script_version = 0.40 | |||
}}</ref> | |||
== Background == | |||
In FlightGear, PUI dialogs are standard [[PropertyList XML File]]s that are stored in $FG_ROOT/gui/dialogs, they can contain the widgets mentioned in {{readme file|gui}}, using a simple layout engine discussed in {{readme file|layout}}, and bindings using a combination of so called fgcommands (see {{readme file|commands}}) and custom [[Nasal]] code. In addition, each PUI/XML dialog may contain Nasal sections that are executed when opening/closing the dialog, a feature which is commonly used for procedurally creating/updating widgets using the cmdarg() API, which allows the dialog tree to be traversed and manipulated prior to the dialog being rendered. | In FlightGear, PUI dialogs are standard [[PropertyList XML File]]s that are stored in $FG_ROOT/gui/dialogs, they can contain the widgets mentioned in {{readme file|gui}}, using a simple layout engine discussed in {{readme file|layout}}, and bindings using a combination of so called fgcommands (see {{readme file|commands}}) and custom [[Nasal]] code. In addition, each PUI/XML dialog may contain Nasal sections that are executed when opening/closing the dialog, a feature which is commonly used for procedurally creating/updating widgets using the cmdarg() API, which allows the dialog tree to be traversed and manipulated prior to the dialog being rendered. | ||
Widgets can be conditionally hidden/shown using a wrapper for SGCondition in props.nas | Widgets can be conditionally hidden/shown using a wrapper for SGCondition in props.nas | ||
Line 56: | Line 89: | ||
|script_version = 0.40 | |script_version = 0.40 | ||
}}</ref> | }}</ref> | ||
Line 66: | Line 98: | ||
[[File:Canvas-menubar-jabberwocky-09-2014.png]] | [[File:Canvas-menubar-jabberwocky-09-2014.png]] | ||