diff --git a/files/images/devices/BR-0004-03-2.jpg b/files/images/devices/BR-0004-03-2.jpg
new file mode 100644
index 0000000..0126646
Binary files /dev/null and b/files/images/devices/BR-0004-03-2.jpg differ
diff --git a/qgroundcontrol.qrc b/qgroundcontrol.qrc
index 2f8034f..c9e4ccb 100644
--- a/qgroundcontrol.qrc
+++ b/qgroundcontrol.qrc
@@ -112,6 +112,7 @@
files/images/devices/BR-HMC5883-01-2.jpg
files/images/devices/BR-APMPWRDEAN-2.jpg
files/images/devices/AC-0004-11-2.jpg
+ files/images/devices/BR-0004-03-2.jpg
files/styles/Vera.ttf
diff --git a/src/ui/configuration/AirspeedConfig.cc b/src/ui/configuration/AirspeedConfig.cc
index bff387f..8402622 100644
--- a/src/ui/configuration/AirspeedConfig.cc
+++ b/src/ui/configuration/AirspeedConfig.cc
@@ -1,11 +1,82 @@
#include "AirspeedConfig.h"
+#include
-
-AirspeedConfig::AirspeedConfig(QWidget *parent) : QWidget(parent)
+AirspeedConfig::AirspeedConfig(QWidget *parent) : AP2ConfigWidget(parent)
{
ui.setupUi(this);
+ connect(ui.enableCheckBox,SIGNAL(toggled(bool)),this,SLOT(enableCheckBoxClicked(bool)));
+ connect(ui.useAirspeedCheckBox,SIGNAL(toggled(bool)),this,SLOT(useCheckBoxClicked(bool)));
}
AirspeedConfig::~AirspeedConfig()
{
}
+void AirspeedConfig::parameterChanged(int uas, int component, QString parameterName, QVariant value)
+{
+ if (parameterName == "ARSPD_ENABLE")
+ {
+ if (value.toInt() == 0)
+ {
+ disconnect(ui.enableCheckBox,SIGNAL(toggled(bool)),this,SLOT(enableCheckBoxClicked(bool)));
+ ui.enableCheckBox->setChecked(false);
+ connect(ui.enableCheckBox,SIGNAL(toggled(bool)),this,SLOT(enableCheckBoxClicked(bool)));
+ ui.useAirspeedCheckBox->setEnabled(false);
+ }
+ else
+ {
+ disconnect(ui.enableCheckBox,SIGNAL(toggled(bool)),this,SLOT(enableCheckBoxClicked(bool)));
+ ui.enableCheckBox->setChecked(true);
+ connect(ui.enableCheckBox,SIGNAL(toggled(bool)),this,SLOT(enableCheckBoxClicked(bool)));
+ ui.useAirspeedCheckBox->setEnabled(true);
+ }
+ }
+ else if (parameterName == "ARSPD_USE")
+ {
+ if (value.toInt() == 0)
+ {
+ disconnect(ui.useAirspeedCheckBox,SIGNAL(toggled(bool)),this,SLOT(useCheckBoxClicked(bool)));
+ ui.useAirspeedCheckBox->setChecked(false);
+ connect(ui.useAirspeedCheckBox,SIGNAL(toggled(bool)),this,SLOT(useCheckBoxClicked(bool)));
+ }
+ else
+ {
+ disconnect(ui.useAirspeedCheckBox,SIGNAL(toggled(bool)),this,SLOT(useCheckBoxClicked(bool)));
+ ui.useAirspeedCheckBox->setChecked(true);
+ connect(ui.useAirspeedCheckBox,SIGNAL(toggled(bool)),this,SLOT(useCheckBoxClicked(bool)));
+ }
+ }
+}
+
+void AirspeedConfig::useCheckBoxClicked(bool checked)
+{
+ if (!m_uas)
+ {
+ QMessageBox::information(0,tr("Error"),tr("Please connect to a MAV before attempting to set configuration"));
+ return;
+ }
+ if (checked)
+ {
+ m_uas->setParameter(0,"ARSPD_USE",1);
+ }
+ else
+ {
+ m_uas->setParameter(0,"ARSPD_USE",0);
+ }
+}
+
+void AirspeedConfig::enableCheckBoxClicked(bool checked)
+{
+ if (!m_uas)
+ {
+ QMessageBox::information(0,tr("Error"),tr("Please connect to a MAV before attempting to set configuration"));
+ return;
+ }
+ if (checked)
+ {
+ m_uas->setParameter(0,"ARSPD_ENABLE",1);
+ }
+ else
+ {
+ m_uas->setParameter(0,"ARSPD_ENABLE",0);
+ }
+}
diff --git a/src/ui/configuration/AirspeedConfig.h b/src/ui/configuration/AirspeedConfig.h
index cd67ba4..1646b36 100644
--- a/src/ui/configuration/AirspeedConfig.h
+++ b/src/ui/configuration/AirspeedConfig.h
@@ -2,16 +2,20 @@
#define AIRSPEEDCONFIG_H
#include
+#include "AP2ConfigWidget.h"
#include "ui_AirspeedConfig.h"
-class AirspeedConfig : public QWidget
+class AirspeedConfig : public AP2ConfigWidget
{
Q_OBJECT
public:
explicit AirspeedConfig(QWidget *parent = 0);
~AirspeedConfig();
-
+private slots:
+ void parameterChanged(int uas, int component, QString parameterName, QVariant value);
+ void useCheckBoxClicked(bool checked);
+ void enableCheckBoxClicked(bool checked);
private:
Ui::AirspeedConfig ui;
};
diff --git a/src/ui/configuration/AirspeedConfig.ui b/src/ui/configuration/AirspeedConfig.ui
index 07c9724..7d33cae 100644
--- a/src/ui/configuration/AirspeedConfig.ui
+++ b/src/ui/configuration/AirspeedConfig.ui
@@ -29,7 +29,54 @@
false
+
+
+
+ 20
+ 60
+ 71
+ 71
+
+
+
+
+
+
+ :/files/images/devices/BR-0004-03-2.jpg
+
+
+ true
+
+
+
+
+
+ 110
+ 70
+ 70
+ 17
+
+
+
+ Enable
+
+
+
+
+
+ 110
+ 100
+ 91
+ 17
+
+
+
+ Use Airspeed
+
+
-
+
+
+