@@ -557,7 +557,7 @@ OSD.initData = function () {
557
557
right_sidebar_scroll : null ,
558
558
sidebar_scroll_arrows : null ,
559
559
units : null ,
560
- stats_energy_unit : null ,
560
+ adsb_warning_style : null ,
561
561
} ,
562
562
alarms : {
563
563
rssi : null ,
@@ -693,6 +693,11 @@ OSD.constants = {
693
693
AHISIDEBARWIDTHPOSITION : 7 ,
694
694
AHISIDEBARHEIGHTPOSITION : 3 ,
695
695
696
+ ADSB_WARNING_STYLE : {
697
+ 'COMPACT' : 0 ,
698
+ 'EXTENDED' : 1 ,
699
+ } ,
700
+
696
701
ALL_ALARMS : [
697
702
{
698
703
name : 'RSSI' ,
@@ -733,6 +738,7 @@ OSD.constants = {
733
738
min : 0 ,
734
739
max : altitude_alarm_max
735
740
} ,
741
+
736
742
{
737
743
name : 'DIST' ,
738
744
field : 'dist' ,
@@ -1744,7 +1750,43 @@ OSD.constants = {
1744
1750
name : 'ADSB_WARNING_MESSAGE' ,
1745
1751
id : 150 ,
1746
1752
min_version : '7.1.0' ,
1747
- preview : FONT . symbol ( SYM . ADSB ) + FONT . embed_dot ( '9.28' ) + FONT . symbol ( SYM . DIST_KM ) + FONT . symbol ( SYM . DIR_TO_HOME + 1 ) + FONT . embed_dot ( '-423' ) + FONT . symbol ( SYM . M ) ,
1753
+ preview : function ( osd_data ) {
1754
+
1755
+ var distanceSymbol ;
1756
+ var distanceSymbolSmaller ;
1757
+ var velocitySymbol ;
1758
+
1759
+ switch ( OSD . data . preferences . units ) {
1760
+ case 0 : // Imperial
1761
+ case 2 : // Metric + MPH
1762
+ distanceSymbol = SYM . KM ;
1763
+ distanceSymbolSmaller = SYM . M ;
1764
+ velocitySymbol = SYM . MPH ;
1765
+ break ;
1766
+ case 3 : // UK
1767
+ distanceSymbol = SYM . MI ;
1768
+ distanceSymbolSmaller = SYM . ALT_FT ;
1769
+ velocitySymbol = SYM . MPH ;
1770
+ break ;
1771
+ case 4 : // GA
1772
+ distanceSymbol = SYM . MI ;
1773
+ distanceSymbolSmaller = SYM . ALT_FT ;
1774
+ velocitySymbol = SYM . KT ;
1775
+ break ;
1776
+ default : // Metric
1777
+ distanceSymbol = SYM . KM ;
1778
+ distanceSymbolSmaller = SYM . M ;
1779
+ velocitySymbol = SYM . KMH ;
1780
+ break ;
1781
+ }
1782
+
1783
+ var el = FONT . symbol ( SYM . ADSB ) + FONT . embed_dot ( '9.28' ) + FONT . symbol ( distanceSymbol ) + FONT . symbol ( SYM . SYM_HUD_CARDINAL + 5 ) + FONT . embed_dot ( '-423' ) + FONT . symbol ( distanceSymbolSmaller ) ;
1784
+ if ( OSD . data . preferences . adsb_warning_style !== null && OSD . data . preferences . adsb_warning_style === OSD . constants . ADSB_WARNING_STYLE . EXTENDED ) {
1785
+ el += "\n" + "HEAVY " + FONT . symbol ( SYM . DIR_TO_HOME + 1 ) + FONT . embed_dot ( '653' ) + FONT . symbol ( velocitySymbol ) ;
1786
+ }
1787
+
1788
+ return el ;
1789
+ } ,
1748
1790
} ,
1749
1791
{
1750
1792
name : 'ADSB_INFO' ,
@@ -2536,7 +2578,8 @@ OSD.msp = {
2536
2578
result . push8 ( p . right_sidebar_scroll ) ;
2537
2579
result . push8 ( p . sidebar_scroll_arrows ) ;
2538
2580
result . push8 ( p . units ) ;
2539
- result . push8 ( p . stats_energy_unit )
2581
+ result . push8 ( p . stats_energy_unit ) ;
2582
+ result . push8 ( p . adsb_warning_style )
2540
2583
return result ;
2541
2584
} ,
2542
2585
@@ -2553,6 +2596,7 @@ OSD.msp = {
2553
2596
p . sidebar_scroll_arrows = prefs . readU8 ( ) ;
2554
2597
p . units = prefs . readU8 ( ) ;
2555
2598
p . stats_energy_unit = prefs . readU8 ( ) ;
2599
+ p . adsb_warning_style = prefs . readU8 ( ) ;
2556
2600
} ,
2557
2601
2558
2602
encodeLayoutItem : function ( layout , item , pos ) {
@@ -4207,4 +4251,4 @@ TABS.osd.cleanup = function (callback) {
4207
4251
$ ( '.jBox-wrapper' ) . remove ( ) ;
4208
4252
4209
4253
if ( callback ) callback ( ) ;
4210
- } ;
4254
+ } ;
0 commit comments