diff --git a/src/AutoPilotPlugins/PX4/PX4Component.cc b/src/AutoPilotPlugins/PX4/PX4Component.cc index 6fea92ca7c0b4dce3d3987743fbd1e55598151a3..bcf264028196c721de037c5b0d7e6d21ea21668c 100644 --- a/src/AutoPilotPlugins/PX4/PX4Component.cc +++ b/src/AutoPilotPlugins/PX4/PX4Component.cc @@ -44,7 +44,7 @@ void PX4Component::_parameterUpdated(int compId, QString paramName, QVariant val while (*prgTriggers != NULL) { if (paramName == *prgTriggers) { - emit setupCompleteChanged(); + emit setupCompleteChanged(setupComplete()); return; } prgTriggers++; diff --git a/src/VehicleSetup/VehicleComponent.h b/src/VehicleSetup/VehicleComponent.h index 3dddff7873043ff88d7d64ae2f891d12587f6ced..19fe8a59668256d0a48a1d2fd9a94d0fb95178af 100644 --- a/src/VehicleSetup/VehicleComponent.h +++ b/src/VehicleSetup/VehicleComponent.h @@ -50,6 +50,7 @@ class VehicleComponent : public QObject Q_PROPERTY(QString icon READ icon CONSTANT) Q_PROPERTY(QWidget* setupWidget READ setupWidget STORED false) Q_PROPERTY(QUrl summaryQmlSource READ summaryQmlSource CONSTANT); + Q_PROPERTY(QString prerequisiteSetup READ prerequisiteSetup) public: VehicleComponent(UASInterface* uas, AutoPilotPlugin* autopilot, QObject* parent = NULL); @@ -64,11 +65,12 @@ public: virtual QWidget* setupWidget(void) const = 0; virtual QStringList paramFilterList(void) const = 0; virtual QUrl summaryQmlSource(void) const = 0; + virtual QString prerequisiteSetup(void) const = 0; virtual void addSummaryQmlComponent(QQmlContext* context, QQuickItem* parent); signals: - void setupCompleteChanged(void); + void setupCompleteChanged(bool setupComplete); protected: UASInterface* _uas;