Commit 89bd433c authored by DoinLakeFlyer's avatar DoinLakeFlyer

parent d5085157
...@@ -11,6 +11,7 @@ Note: This file only contains high level features or important fixes. ...@@ -11,6 +11,7 @@ Note: This file only contains high level features or important fixes.
### 4.0.6 - Not yet released ### 4.0.6 - Not yet released
* Plan: Much better conversion of missions to KML for 3d visualization/verification of missions * Plan: Much better conversion of missions to KML for 3d visualization/verification of missions
* Analyze/Log Download - Fix download on mobile versions of QGC
### 4.0.5 - Stable ### 4.0.5 - Stable
......
...@@ -519,19 +519,9 @@ void ...@@ -519,19 +519,9 @@ void
LogDownloadController::download(QString path) LogDownloadController::download(QString path)
{ {
QString dir = path; QString dir = path;
#if defined(__mobile__) if (dir.isEmpty()) {
if(dir.isEmpty()) {
dir = qgcApp()->toolbox()->settingsManager()->appSettings()->logSavePath(); dir = qgcApp()->toolbox()->settingsManager()->appSettings()->logSavePath();
} }
#else
if(dir.isEmpty()) {
dir = QString(); //-- TODO: QGCQFileDialog::getExistingDirectory(
// MainWindow::instance(),
// tr("Log Download Directory"),
// QDir::homePath(),
// QGCQFileDialog::ShowDirsOnly | QGCQFileDialog::DontResolveSymlinks);
}
#endif
downloadToDirectory(dir); downloadToDirectory(dir);
} }
......
...@@ -147,11 +147,16 @@ AnalyzePage { ...@@ -147,11 +147,16 @@ AnalyzePage {
var o = logController.model.get(rowIndex) var o = logController.model.get(rowIndex)
if (o) o.selected = true if (o) o.selected = true
}) })
fileDialog.title = qsTr("Select save directory") if (ScreenTools.isMobile) {
fileDialog.selectExisting = true // You can't pick folders in mobile, only default location is used
fileDialog.folder = QGroundControl.settingsManager.appSettings.logSavePath logController.download()
fileDialog.selectFolder = true } else {
fileDialog.openForLoad() fileDialog.title = qsTr("Select save directory")
fileDialog.selectExisting = true
fileDialog.folder = QGroundControl.settingsManager.appSettings.logSavePath
fileDialog.selectFolder = true
fileDialog.openForLoad()
}
} }
QGCFileDialog { QGCFileDialog {
id: fileDialog id: fileDialog
......
...@@ -31,7 +31,8 @@ MapQuickItem { ...@@ -31,7 +31,8 @@ MapQuickItem {
MissionItemIndexLabel { MissionItemIndexLabel {
id: _label id: _label
checked: _isCurrentItem checked: _isCurrentItem
label: missionItem ? missionItem.abbreviation : "" label: missionItem.abbreviation
index: missionItem.abbreviation.charAt(0) > 'A' && missionItem.abbreviation.charAt(0) < 'z' ? -1 : missionItem.sequenceNumber
gimbalYaw: missionItem.missionGimbalYaw gimbalYaw: missionItem.missionGimbalYaw
vehicleYaw: missionItem.missionVehicleYaw vehicleYaw: missionItem.missionVehicleYaw
showGimbalYaw: !isNaN(missionItem.missionGimbalYaw) showGimbalYaw: !isNaN(missionItem.missionGimbalYaw)
......
...@@ -99,12 +99,32 @@ Rectangle { ...@@ -99,12 +99,32 @@ Rectangle {
checked: object.isCurrentItem checked: object.isCurrentItem
label: object.abbreviation.charAt(0) label: object.abbreviation.charAt(0)
index: object.abbreviation.charAt(0) > 'A' && object.abbreviation.charAt(0) < 'z' ? -1 : object.sequenceNumber index: object.abbreviation.charAt(0) > 'A' && object.abbreviation.charAt(0) < 'z' ? -1 : object.sequenceNumber
showSequenceNumbers: true showSequenceNumbers: false
visible: true }
onClicked: root.setCurrentSeqNum(object.sequenceNumber)
Rectangle {
id: indexBackground
anchors.leftMargin: -2
anchors.rightMargin: -2
anchors.fill: indexLabel
color: qgcPal.window
opacity: 0.3
visible: indexLabel.visible
transform: Rotation { angle: 90; origin.x: indexBackground.width / 2; origin.y: indexBackground.height / 2 }
}
QGCLabel {
id: indexLabel
anchors.centerIn: parent
text: object.sequenceNumber
visible: indicator.index != -1
transform: Rotation { angle: 90; origin.x: indexLabel.width / 2; origin.y: indexLabel.height / 2 }
}
MouseArea {
anchors.fill: parent
onClicked: root.setCurrentSeqNum(object.sequenceNumber)
} }
} }
} }
} }
...@@ -25,7 +25,7 @@ Canvas { ...@@ -25,7 +25,7 @@ Canvas {
property real gimbalYaw property real gimbalYaw
property real vehicleYaw property real vehicleYaw
property bool showGimbalYaw: false property bool showGimbalYaw: false
property bool showSequenceNumbers: false property bool showSequenceNumbers: true
property real _width: showGimbalYaw ? Math.max(_gimbalYawWidth, labelControl.visible ? labelControl.width : indicator.width) : (labelControl.visible ? labelControl.width : indicator.width) property real _width: showGimbalYaw ? Math.max(_gimbalYawWidth, labelControl.visible ? labelControl.width : indicator.width) : (labelControl.visible ? labelControl.width : indicator.width)
property real _height: showGimbalYaw ? _gimbalYawWidth : (labelControl.visible ? labelControl.height : indicator.height) property real _height: showGimbalYaw ? _gimbalYawWidth : (labelControl.visible ? labelControl.height : indicator.height)
......
...@@ -3287,7 +3287,7 @@ void Vehicle::setCurrentMissionSequence(int seq) ...@@ -3287,7 +3287,7 @@ void Vehicle::setCurrentMissionSequence(int seq)
&msg, &msg,
static_cast<uint8_t>(id()), static_cast<uint8_t>(id()),
_compID, _compID,
static_cast<uint8_t>(seq)); static_cast<uint16_t>(seq));
sendMessageOnLink(priorityLink(), msg); sendMessageOnLink(priorityLink(), msg);
} }
......
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