Browse Source

fix rendering of advanced parameters editors

QGC4.4
tstellanova 12 years ago
parent
commit
d6801ac6bb
  1. 2
      src/ui/QGCBaseParamWidget.cc
  2. 18
      src/ui/QGCPX4VehicleConfig.cc

2
src/ui/QGCBaseParamWidget.cc

@ -25,6 +25,7 @@ QGCBaseParamWidget* QGCBaseParamWidget::initWithUAS(UASInterface *uas)
void QGCBaseParamWidget::setUAS(UASInterface* uas) void QGCBaseParamWidget::setUAS(UASInterface* uas)
{ {
if (uas != mav) {
if (mav) { if (mav) {
//TODO disconnect any connections as needed //TODO disconnect any connections as needed
disconnectViewSignalsAndSlots(); disconnectViewSignalsAndSlots();
@ -42,6 +43,7 @@ void QGCBaseParamWidget::setUAS(UASInterface* uas)
paramMgr->requestParameterListIfEmpty(); paramMgr->requestParameterListIfEmpty();
} }
}
} }

18
src/ui/QGCPX4VehicleConfig.cc

@ -84,15 +84,16 @@ QGCPX4VehicleConfig::QGCPX4VehicleConfig(QWidget *parent) :
//connect(ui->setTrimButton, SIGNAL(clicked()), this, SLOT(setTrimPositions())); //connect(ui->setTrimButton, SIGNAL(clicked()), this, SLOT(setTrimPositions()));
//TODO connect buttons here to save/clear actions? //TODO connect buttons here to save/clear actions?
mav = UASManager::instance()->getActiveUAS(); UASInterface* tmpMav = UASManager::instance()->getActiveUAS();
if (!mav) { if (tmpMav) {
qWarning() << "No active mav! "; ui->pendingCommitsWidget->initWithUAS(tmpMav);
}
else {
ui->pendingCommitsWidget->initWithUAS(mav);
ui->pendingCommitsWidget->update(); ui->pendingCommitsWidget->update();
setActiveUAS(tmpMav);
} }
connect(UASManager::instance(), SIGNAL(activeUASSet(UASInterface*)),
this, SLOT(setActiveUAS(UASInterface*)));
//TODO the following methods are not yet implemented //TODO the following methods are not yet implemented
// Connect RC mapping assignments // Connect RC mapping assignments
@ -115,9 +116,9 @@ QGCPX4VehicleConfig::QGCPX4VehicleConfig(QWidget *parent) :
// connect(ui->invertCheckBox_7, SIGNAL(clicked(bool)), this, SLOT(setAux2Inverted(bool))); // connect(ui->invertCheckBox_7, SIGNAL(clicked(bool)), this, SLOT(setAux2Inverted(bool)));
// connect(ui->invertCheckBox_8, SIGNAL(clicked(bool)), this, SLOT(setAux3Inverted(bool))); // connect(ui->invertCheckBox_8, SIGNAL(clicked(bool)), this, SLOT(setAux3Inverted(bool)));
connect(UASManager::instance(), SIGNAL(activeUASSet(UASInterface*)), this, SLOT(setActiveUAS(UASInterface*)));
setActiveUAS(UASManager::instance()->getActiveUAS());
for (unsigned int i = 0; i < chanMax; i++) { for (unsigned int i = 0; i < chanMax; i++) {
rcValue[i] = UINT16_MAX; rcValue[i] = UINT16_MAX;
@ -1248,6 +1249,7 @@ void QGCPX4VehicleConfig::parameterChanged(int uas, int component, QString param
return; return;
} }
//TODO this may introduce a bug with param editor widgets not receiving param updates
if (parameterName.startsWith("RC")) { if (parameterName.startsWith("RC")) {
handleRcParameterChange(parameterName,value); handleRcParameterChange(parameterName,value);
return; return;

Loading…
Cancel
Save