Showing 5 changed files with 51 additions and 6 deletions
+2
Nasal/core.nas
... ...
@@ -91,6 +91,8 @@ var setListeners = func {
91 91
     setlistener('/gear/gear/wow',
92 92
             func device[0].display.updateXPDR(),
93 93
             0, 0);
94
+    setlistener('/instrumentation/altimeter/setting-inhg',
95
+            func device[0].display.updateBARO(), 0, 2);
94 96
 }
95 97
 
96 98
 var deviceClass = {
+18 -1
Nasal/display.nas
... ...
@@ -106,6 +106,7 @@ var displayClass = {
106 106
                     'IAS-bg',
107 107
                     'TAS',
108 108
                     'GSPD',
109
+                    'BARO-bg',
109 110
                 );
110 111
                 append(groups.hide,
111 112
                     'EIS',
... ...
@@ -124,7 +125,6 @@ var displayClass = {
124 125
                     'SelectedALT', 'SelectedALT-bug', 'SelectedALT-bg', 'SelectedALT-symbol',
125 126
                     'TAS',
126 127
                     'GSPD',
127
-                    'BARO',
128 128
                     'WindData',
129 129
                     'Reversionnary',
130 130
                     'Annunciation',
... ...
@@ -152,6 +152,7 @@ var displayClass = {
152 152
                     'Speed110',
153 153
                     'Alt11100',
154 154
                     'HDG-text',
155
+                    'BARO-text',
155 156
                     'CDI-SRC-text', 'CDI-GPS-ANN-text', 'CDI-GPS-XTK-text',
156 157
                     'BRG1-pointer', 'BRG1-SRC-text', 'BRG1-DST-text', 'BRG1-WPID-text',
157 158
                     'BRG2-pointer', 'BRG2-SRC-text', 'BRG2-DST-text', 'BRG2-WPID-text',
... ...
@@ -194,6 +195,7 @@ var displayClass = {
194 195
                 me.updateTAS();
195 196
                 me.updateBRG();
196 197
                 me.updateXPDR();
198
+                me.updateBARO();
197 199
                 me.timerTrigger();
198 200
             }
199 201
             else {
... ...
@@ -349,6 +351,9 @@ var displayClass = {
349 351
         'CDI-SRC-text' : {
350 352
             visible : 0
351 353
         },
354
+        'BARO-text' : {
355
+            alignment : 'left-bottom',
356
+        }
352 357
 #        'TAS-text' : {
353 358
 #            alignment : 'right-bottom',
354 359
 #        },
... ...
@@ -663,6 +668,18 @@ var displayClass = {
663 668
     _last_alt_s  : systime(),
664 669
 #}}}
665 670
 
671
+    updateBARO : func () {
672
+# update BARO widget {{{
673
+        var fmt = me._baro_unit == 'inhg' ? '%.2f%s' : '%i%s';
674
+        me.screenElements['BARO-text']
675
+            .setText(sprintf(fmt,
676
+                        getprop('/instrumentation/altimeter/setting-' ~ me._baro_unit),
677
+                        me._baro_unit == 'inhg' ? 'in' : 'hPa')
678
+                );
679
+    },
680
+    _baro_unit : 'inhg',
681
+#}}}
682
+
666 683
     updateHSI : func () {
667 684
 # rotates the compass (PFD) {{{
668 685
         var hdg = me._updated_hdg;
+14 -4
Nasal/softkeys.nas
... ...
@@ -70,10 +70,6 @@ var softkeysClass = {
70 70
                 },
71 71
             },
72 72
             PFD: {
73
-                'STD BARO': func {
74
-                    pop(me.path);
75
-                    me.device.display.updateSoftKeys();
76
-                },
77 73
                 'AOA/WIND' : {
78 74
                     WIND : {
79 75
                         OPTN1 : func {
... ...
@@ -114,6 +110,20 @@ var softkeysClass = {
114 110
                 BRG2 : func {
115 111
                     call(me.bindings.PFD.PFD.BRG1, [ 2 ], me);
116 112
                 },
113
+                'STD BARO' : func {
114
+                    setprop('/instrumentation/altimeter/setting-inhg', 29.92);
115
+                    me.device.display.updateBARO();
116
+                    pop(me.path);
117
+                    me.device.display.updateSoftKeys();
118
+                },
119
+                IN :  func {
120
+                    me.device.display._baro_unit = 'inhg';
121
+                    me.device.display.updateBARO();
122
+                },
123
+                HPA : func {
124
+                    me.device.display._baro_unit = 'hpa';
125
+                    me.device.display.updateBARO();
126
+                },
117 127
             },
118 128
             XPDR: {
119 129
                 STBY : func {
+5 -1
README.md
... ...
@@ -61,6 +61,8 @@ Please report bug at <seb.marque@free.fr>.
61 61
   * map display on inflight page (with online maps downloading and caching)
62 62
   * display of NavAids on map
63 63
   * XPDR from SoftKeys
64
+  * Selected altitude bug (widget off if IA within 100ft)
65
+  * baro settings
64 66
 * ![][90%]
65 67
   * SoftKeys menus navigation for PFD and MFD, not yet implemented function are logged in console (not yet 100% because it lackss the 45sec timer of inactivity on every level, actually done only for XPDR menu, that can easily be extended ![][ongoing])
66 68
   * Radio stack, including ID for NAV (bug: NAV1 ID isn't displayed ![][pause])
... ...
@@ -86,7 +88,6 @@ Please report bug at <seb.marque@free.fr>.
86 88
   * some aircraft specific data to retrieve from aircraft XML files (VNE, etc)
87 89
   * display of specific speeds in ruler
88 90
   * angle of attack display
89
-  * baro settings ![][ongoing]
90 91
   * Alerts
91 92
   * Flight planning (MFD)
92 93
   * Setting pages (MFD)
... ...
@@ -94,6 +95,9 @@ Please report bug at <seb.marque@free.fr>.
94 95
   * PFD settings
95 96
   * texture for some MFD buttons
96 97
   * rotation and zooming of online maps in-flight ![][pending]
98
+  * OMI
99
+  * VS guidance
100
+  * VNAV
97 101
   * tutorials
98 102
   * many more...
99 103
 
+12
Systems/screen.svg
... ...
@@ -7181,6 +7181,18 @@
7181 7181
          width="104.944"
7182 7182
          id="BARO-bg"
7183 7183
          style="opacity:1;fill:#000000;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
7184
+      <text
7185
+         xml:space="preserve"
7186
+         style="font-style:normal;font-weight:normal;font-size:18.66666603px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;text-anchor:middle;text-align:center;"
7187
+         x="755.6665"
7188
+         y="475.64999"
7189
+         id="BARO-text"
7190
+         inkscape:label="BARO-text"><tspan
7191
+           sodipodi:role="line"
7192
+           id="tspan5943"
7193
+           x="703.73163"
7194
+           y="475.64999"
7195
+           style="fill:#00ffff;text-anchor:middle;text-align:center;">   XX.XXin   </tspan></text>
7184 7196
     </g>
7185 7197
     <rect
7186 7198
        style="display:none;opacity:1;fill:#000000;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"