Commit 6b3769f4 authored by Michael Carpenter's avatar Michael Carpenter

Implemented Airspeed configuration

parent 1142b6f3
...@@ -112,6 +112,7 @@ ...@@ -112,6 +112,7 @@
<file>files/images/devices/BR-HMC5883-01-2.jpg</file> <file>files/images/devices/BR-HMC5883-01-2.jpg</file>
<file>files/images/devices/BR-APMPWRDEAN-2.jpg</file> <file>files/images/devices/BR-APMPWRDEAN-2.jpg</file>
<file>files/images/devices/AC-0004-11-2.jpg</file> <file>files/images/devices/AC-0004-11-2.jpg</file>
<file>files/images/devices/BR-0004-03-2.jpg</file>
</qresource> </qresource>
<qresource prefix="/general"> <qresource prefix="/general">
<file alias="vera.ttf">files/styles/Vera.ttf</file> <file alias="vera.ttf">files/styles/Vera.ttf</file>
......
#include "AirspeedConfig.h" #include "AirspeedConfig.h"
#include <QMessageBox>
AirspeedConfig::AirspeedConfig(QWidget *parent) : AP2ConfigWidget(parent)
AirspeedConfig::AirspeedConfig(QWidget *parent) : QWidget(parent)
{ {
ui.setupUi(this); 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() 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);
}
}
...@@ -2,16 +2,20 @@ ...@@ -2,16 +2,20 @@
#define AIRSPEEDCONFIG_H #define AIRSPEEDCONFIG_H
#include <QWidget> #include <QWidget>
#include "AP2ConfigWidget.h"
#include "ui_AirspeedConfig.h" #include "ui_AirspeedConfig.h"
class AirspeedConfig : public QWidget class AirspeedConfig : public AP2ConfigWidget
{ {
Q_OBJECT Q_OBJECT
public: public:
explicit AirspeedConfig(QWidget *parent = 0); explicit AirspeedConfig(QWidget *parent = 0);
~AirspeedConfig(); ~AirspeedConfig();
private slots:
void parameterChanged(int uas, int component, QString parameterName, QVariant value);
void useCheckBoxClicked(bool checked);
void enableCheckBoxClicked(bool checked);
private: private:
Ui::AirspeedConfig ui; Ui::AirspeedConfig ui;
}; };
......
...@@ -29,7 +29,54 @@ ...@@ -29,7 +29,54 @@
<bool>false</bool> <bool>false</bool>
</property> </property>
</widget> </widget>
<widget class="QLabel" name="label_2">
<property name="geometry">
<rect>
<x>20</x>
<y>60</y>
<width>71</width>
<height>71</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap resource="../../../qgroundcontrol.qrc">:/files/images/devices/BR-0004-03-2.jpg</pixmap>
</property>
<property name="scaledContents">
<bool>true</bool>
</property>
</widget>
<widget class="QCheckBox" name="enableCheckBox">
<property name="geometry">
<rect>
<x>110</x>
<y>70</y>
<width>70</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>Enable</string>
</property>
</widget>
<widget class="QCheckBox" name="useAirspeedCheckBox">
<property name="geometry">
<rect>
<x>110</x>
<y>100</y>
<width>91</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>Use Airspeed</string>
</property>
</widget>
</widget> </widget>
<resources/> <resources>
<include location="../../../qgroundcontrol.qrc"/>
</resources>
<connections/> <connections/>
</ui> </ui>
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