diff --git a/src/Waypoint.cc b/src/Waypoint.cc index d17d85f096175c69975d5044ba800aecd614000c..4bd0bd5aaf6cf69798d6b8f120f9ae210e6f7cda 100644 --- a/src/Waypoint.cc +++ b/src/Waypoint.cc @@ -206,18 +206,36 @@ void Waypoint::setParam2(double param2) void Waypoint::setParam3(double param3) { - if (this->x != param3) + if (this->orbit != param3) { - this->x = param3; + this->orbit = param3; emit changed(this); } } void Waypoint::setParam4(double param4) { - if (this->y != param4) + if (this->x != param4) { - this->y = param4; + this->x = param4; + emit changed(this); + } +} + +void Waypoint::setParam5(double param5) +{ + if (this->y != param5) + { + this->y = param5; + emit changed(this); + } +} + +void Waypoint::setParam6(double param6) +{ + if (this->z != param6) + { + this->z = param6; emit changed(this); } } diff --git a/src/Waypoint.h b/src/Waypoint.h index a35e49c24810e557cd8a099639791227a8f32a52..7c1f866f477a812a7229fb6d8edca4b9f95ee3b4 100644 --- a/src/Waypoint.h +++ b/src/Waypoint.h @@ -60,8 +60,10 @@ public: double getHoldTime() const { return param2; } double getParam1() const { return param1; } double getParam2() const { return param2; } - double getParam3() const { return x; } - double getParam4() const { return y; } + double getParam3() const { return orbit; } + double getParam4() const { return x; } + double getParam5() const { return y; } + double getParam6() const { return z; } int getTurns() const { return param1; } MAV_FRAME getFrame() const { return frame; } MAV_ACTION getAction() const { return action; } @@ -105,6 +107,8 @@ public slots: void setParam2(double param2); void setParam3(double param3); void setParam4(double param4); + void setParam5(double param5); + void setParam6(double param6); void setAcceptanceRadius(double radius); void setHoldTime(int holdTime); /** @brief Number of turns for loiter waypoints */ diff --git a/src/comm/MAVLinkProtocol.cc b/src/comm/MAVLinkProtocol.cc index e8b0965dc339f06fe04807fd78cbc3badd579327..6cc6640e22d71d248a67896fcc89b1a650f5b399 100644 --- a/src/comm/MAVLinkProtocol.cc +++ b/src/comm/MAVLinkProtocol.cc @@ -82,6 +82,10 @@ void MAVLinkProtocol::loadSettings() { m_logfile = new QFile(settings.value("LOGFILE_NAME").toString()); } + else if (m_logfile == NULL) + { + m_logfile = new QFile(QDesktopServices::storageLocation(QDesktopServices::HomeLocation) + "/qgroundcontrol_packetlog.mavlink"); + } // Enable logging enableLogging(settings.value("LOGGING_ENABLED", m_loggingEnabled).toBool()); @@ -143,7 +147,7 @@ QString MAVLinkProtocol::getLogfileName() } else { - return QDesktopServices::storageLocation(QDesktopServices::HomeLocation) + "/qgrouncontrol_packetlog.mavlink"; + return QDesktopServices::storageLocation(QDesktopServices::HomeLocation) + "/qgroundcontrol_packetlog.mavlink"; } } diff --git a/src/ui/WaypointList.cc b/src/ui/WaypointList.cc index a1ac9451a7a3c5dc351ee36cb283fa7d52a4c4aa..ac39970c95d4bc42f38275ae37e897946cd318e3 100644 --- a/src/ui/WaypointList.cc +++ b/src/ui/WaypointList.cc @@ -129,8 +129,8 @@ void WaypointList::setUAS(UASInterface* uas) connect(uas->getWaypointManager(), SIGNAL(waypointListChanged(void)), this, SLOT(waypointListChanged(void))); connect(uas->getWaypointManager(), SIGNAL(waypointChanged(int,Waypoint*)), this, SLOT(updateWaypoint(int,Waypoint*))); connect(uas->getWaypointManager(), SIGNAL(currentWaypointChanged(quint16)), this, SLOT(currentWaypointChanged(quint16))); - connect(uas->getWaypointManager(),SIGNAL(loadWPFile()),this,SLOT(setIsLoadFileWP())); - connect(uas->getWaypointManager(),SIGNAL(readGlobalWPFromUAS(bool)),this,SLOT(setIsReadGlobalWP(bool))); + //connect(uas->getWaypointManager(),SIGNAL(loadWPFile()),this,SLOT(setIsLoadFileWP())); + //connect(uas->getWaypointManager(),SIGNAL(readGlobalWPFromUAS(bool)),this,SLOT(setIsReadGlobalWP(bool))); } } @@ -148,11 +148,9 @@ void WaypointList::loadWaypoints() { if (uas) { - - QString fileName = QFileDialog::getOpenFileName(this, tr("Load File"), ".", tr("Waypoint File (*.txt)")); uas->getWaypointManager()->loadWaypoints(fileName); - } + } } void WaypointList::transmit() diff --git a/src/ui/WaypointView.cc b/src/ui/WaypointView.cc index 7dc3b71d840c20ca893359389e7e8922f5dd02ee..89e99577251d71922d6050993eb561be979f6a8c 100644 --- a/src/ui/WaypointView.cc +++ b/src/ui/WaypointView.cc @@ -103,6 +103,8 @@ WaypointView::WaypointView(Waypoint* wp, QWidget* parent) : connect(customCommand->param2SpinBox, SIGNAL(valueChanged(double)), wp, SLOT(setParam2(double))); connect(customCommand->param3SpinBox, SIGNAL(valueChanged(double)), wp, SLOT(setParam3(double))); connect(customCommand->param4SpinBox, SIGNAL(valueChanged(double)), wp, SLOT(setParam4(double))); + connect(customCommand->param5SpinBox, SIGNAL(valueChanged(double)), wp, SLOT(setParam5(double))); + connect(customCommand->param6SpinBox, SIGNAL(valueChanged(double)), wp, SLOT(setParam6(double))); // MISSION ELEMENT WIDGET // TODO @@ -126,7 +128,7 @@ void WaypointView::moveDown() void WaypointView::remove() { emit removeWaypoint(wp); - delete this; + deleteLater(); } void WaypointView::changedAutoContinue(int state) @@ -473,8 +475,6 @@ void WaypointView::updateValues() // UPDATE CUSTOM ACTION WIDGET - qDebug() << "UPDATING CUSTOM ACTION WIDGET"; - if (customCommand->commandSpinBox->value() != wp->getAction()) { customCommand->commandSpinBox->setValue(wp->getAction()); @@ -500,6 +500,16 @@ void WaypointView::updateValues() { customCommand->param4SpinBox->setValue(wp->getParam4()); } + // Param 5 + if (customCommand->param5SpinBox->value() != wp->getParam5()) + { + customCommand->param5SpinBox->setValue(wp->getParam5()); + } + // Param 6 + if (customCommand->param6SpinBox->value() != wp->getParam6()) + { + customCommand->param6SpinBox->setValue(wp->getParam6()); + } wp->blockSignals(false); } diff --git a/src/ui/mission/QGCCustomWaypointAction.ui b/src/ui/mission/QGCCustomWaypointAction.ui index 2135283e87ffef4dd32feb071c8c77f9635daaeb..4d1780157ee98de4c559172f5bf7b10b943e1c04 100644 --- a/src/ui/mission/QGCCustomWaypointAction.ui +++ b/src/ui/mission/QGCCustomWaypointAction.ui @@ -6,7 +6,7 @@ 0 0 - 791 + 1105 25 @@ -102,7 +102,7 @@ - + Z/P6