Newer
Older
Lorenz Meier
committed
#include "QGCHilConfiguration.h"
#include "ui_QGCHilConfiguration.h"
Lorenz Meier
committed
#include "QGCXPlaneLink.h"
Lorenz Meier
committed
QGCHilConfiguration::QGCHilConfiguration(QGCHilLink* link, QWidget *parent) :
QWidget(parent),
link(link),
ui(new Ui::QGCHilConfiguration)
{
ui->setupUi(this);
connect(ui->startButton, SIGNAL(clicked(bool)), this, SLOT(toggleSimulation(bool)));
connect(ui->hostComboBox, SIGNAL(activated(QString)), link, SLOT(setRemoteHost(QString)));
connect(link, SIGNAL(remoteChanged(QString)), ui->hostComboBox, SLOT(setEditText(QString)));
connect(link, SIGNAL(statusMessage(QString)), this, SLOT(receiveStatusMessage(QString)));
connect(link, SIGNAL(versionChanged(QString)), ui->simComboBox, SLOT(setEditText(QString)));
connect(ui->simComboBox, SIGNAL(activated(QString)), link, SLOT(setVersion(QString)));
ui->simComboBox->setEditText(link->getVersion());
Lorenz Meier
committed
ui->startButton->setText(tr("Connect"));
Lorenz Meier
committed
QGCXPlaneLink* xplane = dynamic_cast<QGCXPlaneLink*>(link);
if (xplane)
{
connect(ui->randomAttitudeButton, SIGNAL(clicked()), link, SLOT(setRandomAttitude()));
connect(ui->randomPositionButton, SIGNAL(clicked()), link, SLOT(setRandomPosition()));
connect(ui->airframeComboBox, SIGNAL(activated(QString)), link, SLOT(setAirframe(QString)));
ui->airframeComboBox->setCurrentIndex(link->getAirFrameIndex());
Lorenz Meier
committed
}
ui->hostComboBox->clear();
ui->hostComboBox->addItem(link->getRemoteHost());
Lorenz Meier
committed
// connect(ui->)
Lorenz Meier
committed
}
void QGCHilConfiguration::receiveStatusMessage(const QString& message)
{
ui->statusLabel->setText(message);
}
Lorenz Meier
committed
void QGCHilConfiguration::toggleSimulation(bool connect)
{
Q_UNUSED(connect);
if (!link->isConnected())
{
link->setRemoteHost(ui->hostComboBox->currentText());
link->connectSimulation();
ui->startButton->setText(tr("Disconnect"));
}
else
{
link->disconnectSimulation();
ui->startButton->setText(tr("Connect"));
}
}
QGCHilConfiguration::~QGCHilConfiguration()
{
delete ui;
}