PUI: Difference between revisions

Jump to navigation Jump to search
550 bytes added ,  7 October 2017
no edit summary
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]]
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>




Navigation menu