Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/iNavFlight/inav-configurator.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/tabs
diff options
context:
space:
mode:
authorAlberto García Hierro <alberto@garciahierro.com>2019-02-18 04:00:42 +0300
committerAlberto García Hierro <alberto@garciahierro.com>2019-03-15 13:03:27 +0300
commit43e845805c1086d81d7dc4cca6ac680083dfbda4 (patch)
tree7932884dd486b09de39fe9d82f3203215c67210d /tabs
parent4c59b7dc436e4c3c86882d3a8085be1761ee8b53 (diff)
Add MAP_SCALE and MAP_REFERENCE elements
Allow moving the map scale and reference around instead of them being fixed on the screen.
Diffstat (limited to 'tabs')
-rw-r--r--tabs/osd.js51
1 files changed, 37 insertions, 14 deletions
diff --git a/tabs/osd.js b/tabs/osd.js
index bf0167d2..01686f1d 100644
--- a/tabs/osd.js
+++ b/tabs/osd.js
@@ -1132,6 +1132,26 @@ OSD.constants = {
min_version: '2.0.0',
positionable: false,
},
+ {
+ name: 'MAP_SCALE',
+ id: 98,
+ min_version: '2.1.1',
+ preview: function(osd_data) {
+ var scale;
+ if (OSD.data.preferences.units === 0) {
+ scale = FONT.embed_dot("0.10") + FONT.symbol(SYM.MI);
+ } else {
+ scale = "100" + FONT.symbol(SYM.M);
+ }
+ return FONT.symbol(SYM.SCALE) + scale;
+ },
+ },
+ {
+ name: 'MAP_REFERENCE',
+ id: 99,
+ min_version: '2.1.1',
+ preview: FONT.symbol(SYM.DIRECTION) + '\nN',
+ },
],
},
{
@@ -1982,21 +2002,24 @@ OSD.GUI.updateFields = function() {
OSD.GUI.updateMapPreview = function(mapCenter, name, directionSymbol, centerSymbol) {
if ($('input[name="' + name + '"]').prop('checked')) {
var mapInitialX = OSD.data.display_size.x - 2;
- if (directionSymbol) {
- OSD.GUI.checkAndProcessSymbolPosition(mapInitialX, SYM.DIRECTION);
- OSD.GUI.checkAndProcessSymbolPosition(mapInitialX + OSD.data.display_size.x, directionSymbol.charCodeAt(0));
- }
OSD.GUI.checkAndProcessSymbolPosition(mapCenter, centerSymbol);
- var scalePos = 1 + OSD.data.display_size.x * (OSD.data.display_size.y - 2);
- OSD.GUI.checkAndProcessSymbolPosition(scalePos, SYM.SCALE);
- var scale;
- if (OSD.data.preferences.units === 0) {
- scale = FONT.embed_dot("0.10") + FONT.symbol(SYM.MI);
- } else {
- scale = "100" + FONT.symbol(SYM.M);
- }
- for (var ii = 0; ii < scale.length; ii++) {
- OSD.GUI.checkAndProcessSymbolPosition(scalePos + ii + 1, scale.charCodeAt(ii));
+ if (semver.lt(CONFIG.flightControllerVersion, '2.1.1')) {
+ // INAV pre 2.1.1 had hardcoded map reference and scale
+ if (directionSymbol) {
+ OSD.GUI.checkAndProcessSymbolPosition(mapInitialX, SYM.DIRECTION);
+ OSD.GUI.checkAndProcessSymbolPosition(mapInitialX + OSD.data.display_size.x, directionSymbol.charCodeAt(0));
+ }
+ var scalePos = 1 + OSD.data.display_size.x * (OSD.data.display_size.y - 2);
+ OSD.GUI.checkAndProcessSymbolPosition(scalePos, SYM.SCALE);
+ var scale;
+ if (OSD.data.preferences.units === 0) {
+ scale = FONT.embed_dot("0.10") + FONT.symbol(SYM.MI);
+ } else {
+ scale = "100" + FONT.symbol(SYM.M);
+ }
+ for (var ii = 0; ii < scale.length; ii++) {
+ OSD.GUI.checkAndProcessSymbolPosition(scalePos + ii + 1, scale.charCodeAt(ii));
+ }
}
}
};