Commit c2ccfda0 authored by Gus Grubba's avatar Gus Grubba

Allow plugin control of map scale visibility

parent b413f7f9
...@@ -476,7 +476,7 @@ FlightMap { ...@@ -476,7 +476,7 @@ FlightMap {
anchors.topMargin: ScreenTools.defaultFontPixelHeight * (0.33) + state === "bottomMode" ? 0 : ScreenTools.toolbarHeight anchors.topMargin: ScreenTools.defaultFontPixelHeight * (0.33) + state === "bottomMode" ? 0 : ScreenTools.toolbarHeight
anchors.bottomMargin: ScreenTools.defaultFontPixelHeight * (0.33) anchors.bottomMargin: ScreenTools.defaultFontPixelHeight * (0.33)
mapControl: flightMap mapControl: flightMap
visible: !ScreenTools.isTinyScreen visible: !ScreenTools.isTinyScreen && QGroundControl.corePlugin.options.enableMapScale
state: "bottomMode" state: "bottomMode"
states: [ states: [
State { State {
......
...@@ -110,21 +110,21 @@ Item { ...@@ -110,21 +110,21 @@ Item {
} }
function calculateScale() { function calculateScale() {
if(mapControl) {
var scaleLinePixelLength = 100 var scaleLinePixelLength = 100
var leftCoord = mapControl.toCoordinate(Qt.point(0, scale.y), false /* clipToViewPort */) var leftCoord = mapControl.toCoordinate(Qt.point(0, scale.y), false /* clipToViewPort */)
var rightCoord = mapControl.toCoordinate(Qt.point(scaleLinePixelLength, scale.y), false /* clipToViewPort */) var rightCoord = mapControl.toCoordinate(Qt.point(scaleLinePixelLength, scale.y), false /* clipToViewPort */)
var scaleLineMeters = Math.round(leftCoord.distanceTo(rightCoord)) var scaleLineMeters = Math.round(leftCoord.distanceTo(rightCoord))
if (QGroundControl.settingsManager.unitsSettings.distanceUnits.value === UnitsSettings.DistanceUnitsFeet) { if (QGroundControl.settingsManager.unitsSettings.distanceUnits.value === UnitsSettings.DistanceUnitsFeet) {
calculateFeetRatio(scaleLineMeters, scaleLinePixelLength) calculateFeetRatio(scaleLineMeters, scaleLinePixelLength)
} else { } else {
calculateMetersRatio(scaleLineMeters, scaleLinePixelLength) calculateMetersRatio(scaleLineMeters, scaleLinePixelLength)
} }
} }
}
Connections { Connections {
target: mapControl target: mapControl
onWidthChanged: scaleTimer.restart() onWidthChanged: scaleTimer.restart()
onHeightChanged: scaleTimer.restart() onHeightChanged: scaleTimer.restart()
onZoomLevelChanged: scaleTimer.restart() onZoomLevelChanged: scaleTimer.restart()
...@@ -135,7 +135,6 @@ Item { ...@@ -135,7 +135,6 @@ Item {
interval: 100 interval: 100
running: false running: false
repeat: false repeat: false
onTriggered: calculateScale() onTriggered: calculateScale()
} }
...@@ -145,7 +144,7 @@ Item { ...@@ -145,7 +144,7 @@ Item {
font.family: ScreenTools.demiboldFontFamily font.family: ScreenTools.demiboldFontFamily
anchors.left: parent.left anchors.left: parent.left
anchors.right: parent.right anchors.right: parent.right
horizontalAlignment: Text.AlignRight horizontalAlignment:Text.AlignRight
text: "0 m" text: "0 m"
} }
......
...@@ -63,6 +63,7 @@ public: ...@@ -63,6 +63,7 @@ public:
Q_PROPERTY(bool checkFirmwareVersion READ checkFirmwareVersion CONSTANT) Q_PROPERTY(bool checkFirmwareVersion READ checkFirmwareVersion CONSTANT)
Q_PROPERTY(bool showMavlinkLogOptions READ showMavlinkLogOptions CONSTANT) Q_PROPERTY(bool showMavlinkLogOptions READ showMavlinkLogOptions CONSTANT)
Q_PROPERTY(bool enableMultiVehicleList READ enableMultiVehicleList CONSTANT) Q_PROPERTY(bool enableMultiVehicleList READ enableMultiVehicleList CONSTANT)
Q_PROPERTY(bool enableMapScale READ enableMapScale CONSTANT)
/// Should QGC hide its settings menu and colapse it into one single menu (Settings and Vehicle Setup)? /// Should QGC hide its settings menu and colapse it into one single menu (Settings and Vehicle Setup)?
/// @return true if QGC should consolidate both menus into one. /// @return true if QGC should consolidate both menus into one.
...@@ -115,6 +116,7 @@ public: ...@@ -115,6 +116,7 @@ public:
virtual bool checkFirmwareVersion () const { return true; } virtual bool checkFirmwareVersion () const { return true; }
virtual bool showMavlinkLogOptions () const { return true; } virtual bool showMavlinkLogOptions () const { return true; }
virtual bool enableMultiVehicleList () const { return true; } virtual bool enableMultiVehicleList () const { return true; }
virtual bool enableMapScale () const { return true; }
#if defined(__mobile__) #if defined(__mobile__)
virtual bool useMobileFileDialog () const { return true;} virtual bool useMobileFileDialog () const { return true;}
......
...@@ -228,6 +228,7 @@ int main(int argc, char *argv[]) ...@@ -228,6 +228,7 @@ int main(int argc, char *argv[])
#endif #endif
#endif // QT_DEBUG #endif // QT_DEBUG
QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
QGCApplication* app = new QGCApplication(argc, argv, runUnitTests); QGCApplication* app = new QGCApplication(argc, argv, runUnitTests);
Q_CHECK_PTR(app); Q_CHECK_PTR(app);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment