1
0
Fork 0
Commit graph

6 commits

Author SHA1 Message Date
Stuart Buchanan
3d31775ff3 Initial commit of FG1000 MFD 2017-11-24 23:04:46 +00:00
Stuart Buchanan
1e69f3eb75 Fix handling of multiple MFDs
Found by chance during code read.  Untested, but surely correct.
2017-11-17 15:53:26 +00:00
Richard Harrison
8dafff9933 MFD framework - add support for Emesary
Allow a MFD to be controlled via Emesary notifications (notifications.PFDEventNotification);

Notification needs to be constructed with the following parameters;

1 - MFD designation (text; name of MFD)
2 - MFD identity (int, id of the MFD within the model). Default 1; same as used when creating the MFD
3 - Event type (PFDEventNotification.SoftKeyPushed, notifications.PFDEventNotification.ChangeMenuText
4 - Event parameter.
  a) for PFDEventNotification.SoftKeyPushed an int identifying the button
  b) for notifications.PFDEventNotification.ChangeMenuText a hash array containing the menu ID and the new text (e.g. [{ Id: 1, Text: "NNN"}])

Method obj.PFD.RegisterWithEmesary(emesary.GlobalTransmitter) need to be called to connect the MFD to a transmitter
2017-11-16 02:57:13 +01:00
Richard Harrison
ea32a92fe7 Generic MFD : Added optional parameter to update method
When using a data provider, or Emesary it is useful to be able to pass an optional element into the update method for the pages.
2017-01-04 02:19:32 +01:00
Richard Harrison
94334ec5fc Generic MFD: Add Canvas NavDisplay
This links together the generic MFD and the NavDisplay; it allows a fairly easy method to add a Map page to an MFD device.

----------------------
See: http://wiki.flightgear.org/Canvas_MFD_Framework
----------------------
Instantiate parameters:
  1. pfd_device (instance of PFD_Device)
  2. instrument display ident (e.g. mfd-map, or mfd-map-left mfd-map-right for multiple displays) - used to map to the property tree
  3. layer_id: main layer  in the SVG
  4. nd_group_ident : group (usually within the main layer) to place the NavDisplay
  5. [optional] switches - used to connect the property tree to the nav display. see the canvas nav display.

To add a canvas nav display page simply do

me.some_page =  PFD_NavDisplay.new(me.PFD,"Situation", "mpcd-sit", "ID", "jtids_main");
2016-05-17 11:15:53 +02:00
Erik Hofman
34315227c1 Richard Harrison:
Add  generic version of a canvas MFD (based on the F-15)

It has a fairly simple class structure and hopefully is reasonably easy to understand; Thorsten's using it on the Shuttle and Hooray mentioned that it'd be a good idea to make it generic. It provides a device, that has pages and a set of buttons. The set of buttons control the page that is selected (i.e. a menu). Each page has its own set of menus. A menu defines a label and a page that is displayed. I intend to document it on the wiki once its added.
2015-10-26 12:56:11 +01:00