1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2025-02-20 10:54:14 +01:00

LP-245 config: consolidate update from widgets logic in base class

This commit is contained in:
Philippe Renon 2016-09-02 23:25:21 +02:00
parent 6c210e4ef0
commit 25020f230a
24 changed files with 31 additions and 63 deletions

View File

@ -125,7 +125,7 @@ void VehicleConfig::refreshWidgetsValuesImpl(UAVObject *obj)
Q_UNUSED(obj);
}
void VehicleConfig::updateObjectsFromWidgets()
void VehicleConfig::updateObjectsFromWidgetsImpl()
{}
void VehicleConfig::resetActuators(GUIConfigDataUnion *configData)

View File

@ -245,9 +245,7 @@ protected:
double getCurveMax(QList<double> *curve);
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
protected slots:
virtual void updateObjectsFromWidgets();
virtual void updateObjectsFromWidgetsImpl();
private:
static UAVObjectManager *getUAVObjectManager();

View File

@ -160,7 +160,7 @@ void ConfigAutotuneWidget::refreshWidgetsValuesImpl(UAVObject *obj)
}
}
void ConfigAutotuneWidget::updateObjectsFromWidgets()
void ConfigAutotuneWidget::updateObjectsFromWidgetsImpl()
{
HwSettings *hwSettings = HwSettings::GetInstance(getObjectManager());
HwSettings::DataFields hwSettingsData = hwSettings->getData();
@ -168,5 +168,4 @@ void ConfigAutotuneWidget::updateObjectsFromWidgets()
hwSettingsData.OptionalModules[HwSettings::OPTIONALMODULES_AUTOTUNE] =
m_autotune->enableAutoTune->isChecked() ? HwSettings::OPTIONALMODULES_ENABLED : HwSettings::OPTIONALMODULES_DISABLED;
hwSettings->setData(hwSettingsData);
ConfigTaskWidget::updateObjectsFromWidgets();
}

View File

@ -52,9 +52,7 @@ private:
protected:
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
protected slots:
virtual void updateObjectsFromWidgets();
virtual void updateObjectsFromWidgetsImpl();
private slots:
void recomputeStabilization();

View File

@ -175,7 +175,7 @@ void ConfigCameraStabilizationWidget::refreshWidgetsValuesImpl(UAVObject *obj)
* to any of widgets. Aftewards it calls base class function to take care of
* other object to widget relations which were dynamically added.
*/
void ConfigCameraStabilizationWidget::updateObjectsFromWidgets()
void ConfigCameraStabilizationWidget::updateObjectsFromWidgetsImpl()
{
// Save state of the module enable checkbox first.
// Do not use setData() member on whole object, if possible, since it triggers
@ -253,8 +253,6 @@ void ConfigCameraStabilizationWidget::updateObjectsFromWidgets()
// FIXME: Should not use setData() to prevent double updates.
// It should be refactored after the reformatting of MixerSettings UAVObject.
mixerSettings->setData(mixerSettingsData);
ConfigTaskWidget::updateObjectsFromWidgets();
}
/*

View File

@ -45,9 +45,7 @@ public:
protected:
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
protected slots:
virtual void updateObjectsFromWidgets();
virtual void updateObjectsFromWidgetsImpl();
private:
Ui_CameraStabilizationWidget *ui;

View File

@ -242,9 +242,7 @@ void ConfigCCAttitudeWidget::enableControls(bool enable)
ConfigTaskWidget::enableControls(enable);
}
void ConfigCCAttitudeWidget::updateObjectsFromWidgets()
void ConfigCCAttitudeWidget::updateObjectsFromWidgetsImpl()
{
ConfigTaskWidget::updateObjectsFromWidgets();
ui->zeroBiasProgress->setValue(0);
}

View File

@ -44,7 +44,8 @@ public:
explicit ConfigCCAttitudeWidget(QWidget *parent = 0);
~ConfigCCAttitudeWidget();
virtual void updateObjectsFromWidgets();
protected:
virtual void updateObjectsFromWidgetsImpl();
private slots:
void sensorsUpdated(UAVObject *obj);

View File

@ -425,10 +425,8 @@ void ConfigOutputWidget::refreshWidgetsValuesImpl(UAVObject *obj)
/**
* Sends the config to the board, without saving to the SD card (RC Output)
*/
void ConfigOutputWidget::updateObjectsFromWidgets()
void ConfigOutputWidget::updateObjectsFromWidgetsImpl()
{
ConfigTaskWidget::updateObjectsFromWidgets();
ActuatorSettings *actuatorSettings = ActuatorSettings::GetInstance(getObjectManager());
Q_ASSERT(actuatorSettings);

View File

@ -88,10 +88,9 @@ public:
protected:
void enableControls(bool enable);
void setWarning(QString message);
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
protected slots:
virtual void updateObjectsFromWidgets();
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
virtual void updateObjectsFromWidgetsImpl();
private:
Ui_OutputWidget *m_ui;

View File

@ -113,10 +113,8 @@ void ConfigRevoHWWidget::refreshWidgetsValuesImpl(UAVObject *obj)
rcvrPortChanged(0);
}
void ConfigRevoHWWidget::updateObjectsFromWidgets()
void ConfigRevoHWWidget::updateObjectsFromWidgetsImpl()
{
ConfigTaskWidget::updateObjectsFromWidgets();
HwSettings *hwSettings = HwSettings::GetInstance(getObjectManager());
HwSettings::DataFields data = hwSettings->getData();

View File

@ -44,9 +44,7 @@ public:
protected:
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
protected slots:
virtual void updateObjectsFromWidgets();
virtual void updateObjectsFromWidgetsImpl();
private:
Ui_RevoHWWidget *m_ui;

View File

@ -106,10 +106,8 @@ void ConfigRevoNanoHWWidget::refreshWidgetsValuesImpl(UAVObject *obj)
rcvrPortChanged(0);
}
void ConfigRevoNanoHWWidget::updateObjectsFromWidgets()
void ConfigRevoNanoHWWidget::updateObjectsFromWidgetsImpl()
{
ConfigTaskWidget::updateObjectsFromWidgets();
HwSettings *hwSettings = HwSettings::GetInstance(getObjectManager());
HwSettings::DataFields data = hwSettings->getData();

View File

@ -44,9 +44,7 @@ public:
protected:
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
protected slots:
virtual void updateObjectsFromWidgets();
virtual void updateObjectsFromWidgetsImpl();
private:
Ui_RevoNanoHWWidget *m_ui;

View File

@ -431,10 +431,8 @@ void ConfigRevoWidget::refreshWidgetsValuesImpl(UAVObject *obj)
onBoardAuxMagError();
}
void ConfigRevoWidget::updateObjectsFromWidgets()
void ConfigRevoWidget::updateObjectsFromWidgetsImpl()
{
ConfigTaskWidget::updateObjectsFromWidgets();
if (m_accelCalibrationModel->dirty()) {
m_accelCalibrationModel->save();
}

View File

@ -50,9 +50,7 @@ public:
protected:
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
protected slots:
virtual void updateObjectsFromWidgets();
virtual void updateObjectsFromWidgetsImpl();
private:
OpenPilot::SixPointCalibrationModel *m_accelCalibrationModel;

View File

@ -108,10 +108,8 @@ void ConfigSparky2HWWidget::refreshWidgetsValuesImpl(UAVObject *obj)
flexiPortChanged(0);
}
void ConfigSparky2HWWidget::updateObjectsFromWidgets()
void ConfigSparky2HWWidget::updateObjectsFromWidgetsImpl()
{
ConfigTaskWidget::updateObjectsFromWidgets();
HwSettings *hwSettings = HwSettings::GetInstance(getObjectManager());
HwSettings::DataFields data = hwSettings->getData();

View File

@ -45,9 +45,7 @@ public:
protected:
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
protected slots:
virtual void updateObjectsFromWidgets();
virtual void updateObjectsFromWidgetsImpl();
private:
Ui_Sparky2HWWidget *m_ui;

View File

@ -269,10 +269,9 @@ void ConfigStabilizationWidget::refreshWidgetsValuesImpl(UAVObject *obj)
}
}
void ConfigStabilizationWidget::updateObjectsFromWidgets()
void ConfigStabilizationWidget::updateObjectsFromWidgetsImpl()
{
updateObjectFromThrottleCurve();
ConfigTaskWidget::updateObjectsFromWidgets();
}
void ConfigStabilizationWidget::updateThrottleCurveFromObject()

View File

@ -55,10 +55,9 @@ public:
protected:
QString mapObjectName(const QString objectName);
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
protected slots:
virtual void updateObjectsFromWidgets();
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
virtual void updateObjectsFromWidgetsImpl();
private:
Ui_StabilizationWidget *ui;

View File

@ -239,11 +239,8 @@ void ConfigVehicleTypeWidget::refreshWidgetsValuesImpl(UAVObject *obj)
We do all the tasks common to all airframes, or family of airframes, and
we call additional methods for specific frames, so that we do not have a code
that is too heavy.
Note: The default behavior of ConfigTaskWidget is bypassed.
Therefore no automatic synchronization of UI to UAV Objects is done.
*/
void ConfigVehicleTypeWidget::updateObjectsFromWidgets()
void ConfigVehicleTypeWidget::updateObjectsFromWidgetsImpl()
{
// Airframe type defaults to Custom
QString airframeType = "Custom";
@ -275,8 +272,8 @@ void ConfigVehicleTypeWidget::updateObjectsFromWidgets()
}
// call refreshWidgetsValues() to reflect actual saved values
// TODO is this needed ?
refreshWidgetsValues();
ConfigTaskWidget::updateObjectsFromWidgets();
}
int ConfigVehicleTypeWidget::frameCategory(QString frameType)

View File

@ -62,9 +62,7 @@ public:
protected:
virtual void refreshWidgetsValuesImpl(UAVObject *obj);
protected slots:
virtual void updateObjectsFromWidgets();
virtual void updateObjectsFromWidgetsImpl();
private:
Ui_AircraftWidget *m_aircraft;

View File

@ -375,6 +375,9 @@ void ConfigTaskWidget::updateObjectsFromWidgets()
binding->updateObjectFieldFromValue();
}
}
// call specific implementation
updateObjectsFromWidgetsImpl();
}
void ConfigTaskWidget::helpButtonPressed()

View File

@ -252,6 +252,7 @@ private:
protected:
virtual void refreshWidgetsValuesImpl(UAVObject *) {};
virtual void updateObjectsFromWidgetsImpl() {};
protected slots:
virtual void disableObjectUpdates();
@ -260,7 +261,7 @@ protected slots:
virtual void widgetsContentsChanged();
virtual void populateWidgets();
void refreshWidgetsValues(UAVObject *obj = NULL);
virtual void updateObjectsFromWidgets();
void updateObjectsFromWidgets();
virtual void helpButtonPressed();
protected: