FlightGear Newsletter June 2014: Difference between revisions

Jump to navigation Jump to search
m
add content as per Gijs' request
m (→‎GUI launcher: add some content for images as per Gijs' comments ...)
m (add content as per Gijs' request)
Line 245: Line 245:
Learn more at [[Canvas EFB Framework]] ...
Learn more at [[Canvas EFB Framework]] ...


=== Canvas Garmin GPSMap196 Updates ===
 
 
=== Towards an Aircraft-agnostic MFD Framework ===


[[File:Gpsmap196-canvas-panel-page.png|thumb|F-JJTH has updated the SVG file implementing the panel page for the [[Garmin GPSMap 196]]]]
[[File:Gpsmap196-canvas-panel-page.png|thumb|F-JJTH has updated the SVG file implementing the panel page for the [[Garmin GPSMap 196]]]]


=== Towards an Aircraft-agnostic MFD Framework ===
 
{{cquote
  |<nowiki>Given the recent trend of having several MFD-related efforts without any kind of collaboration/code reuse going on here among our contributors (PFD, ND, Avidyne Entegra R9, EFB), I have started prototyping a generic MFD framework that is purely XML-based, inspired by discussions we've had over the last couple of weeks, and lessons learnt from the missions subsystem.</nowiki>
  |{{cite web |url=http://forum.flightgear.org/viewtopic.php?p=212029#p212029
    |title=<nowiki>Framework-centric aircraft-agnostic avionics development</nowiki>
    |author=<nowiki>Hooray</nowiki>
    |date=<nowiki>Sat Jun 07</nowiki>
  }}
}}
 
{{cquote
  |<nowiki>It is intended to:</nowiki><br/>
*<nowiki> support multiple independent instances</nowiki><br/>
*<nowiki> be totally aircraft agnostic</nowiki><br/>
*<nowiki> support a pure dialog-driven mode</nowiki><br/>
*<nowiki> support skinning/theming</nowiki>
  |{{cite web |url=http://forum.flightgear.org/viewtopic.php?p=212029#p212029
    |title=<nowiki>Framework-centric aircraft-agnostic avionics development</nowiki>
    |author=<nowiki>Hooray</nowiki>
    |date=<nowiki>Sat Jun 07</nowiki>
  }}
}}
 
{{cquote
  |<nowiki>This is supposed to support modeling complex avionics like a PFD, ND, EFB, CDU etc - and, eventually, also the Avidyne Entegra R9.</nowiki><br/><nowiki>
</nowiki><br/><nowiki>
It's currently just a prototype, but it gets away with very little code and we really only need a few more "skins" for common avionics.</nowiki><br/><nowiki>
I am willing to extend this over time and help maintain it if people can agree to use something like this.</nowiki><br/><nowiki>
</nowiki><br/><nowiki>
It should be straightforward to allow such "MFDs" to be reloaded from disk at run-time, i.e. for more rapid prototyping.</nowiki><br/><nowiki>
</nowiki>
  |{{cite web |url=http://forum.flightgear.org/viewtopic.php?p=212029#p212029
    |title=<nowiki>Framework-centric aircraft-agnostic avionics development</nowiki>
    |author=<nowiki>Hooray</nowiki>
    |date=<nowiki>Sat Jun 07</nowiki>
  }}
}}
 
{{Note|This is work in progress - the idea is to identify required building blocks to easily specify most MFD functionality in a generic fashion, without requiring a ton of custom Nasal code and without being specific to a single type of MFD. The whole concept is based on [[FlightGear_Missions_and_Adventures#XML_Extension_Framework]], i.e. providing a Nasal-space mechanism to expose and re-define building blocks to XML space.
 
The Nasal/Canvas data structures will be transparently created and compiled for each MFD. Each MFD consists of an arbitrary number of buttons, modes and pages. Each MFD can be instantiated multiple times, and each MFD is designed to be aircraft/instrument agnostic, i.e. also works just in a conventional Canvas dialog. Buttons can trigger and switch between modes, and modes may have pages (conventionally implemented through a single SVG file). Each page consists of an arbitrary number of page elements, which can in turn be animated/updated via listeners and timers.  Should look at existing displays, especially the [[NavDisplay]] and the update() method in navdisplay.mfd, but the most complete test-case would probably be the [[Avidyne Entegra R9]] }}
 


[[File:Canvas-mfd-framework-prototyping.png|thumb|This is an adapted version of the [[Garmin GPSMap 196]] that is currently being developed by F-JJTH. Here, the whole instrument is entirely set up in XML space, including buttons/event handling, but also the embedded canvas region that serves as the 'screen'. The idea is to allow arbitrary MFDs to be specified in an aircraft-agnostic fashion, including displays like a PFD, [[NavDisplay]] or EFB. For details, please see [[Canvas Glass Cockpit Efforts]].]]
[[File:Canvas-mfd-framework-prototyping.png|thumb|This is an adapted version of the [[Garmin GPSMap 196]] that is currently being developed by F-JJTH. Here, the whole instrument is entirely set up in XML space, including buttons/event handling, but also the embedded canvas region that serves as the 'screen'. The idea is to allow arbitrary MFDs to be specified in an aircraft-agnostic fashion, including displays like a PFD, [[NavDisplay]] or EFB. For details, please see [[Canvas Glass Cockpit Efforts]].]]

Navigation menu