mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2025-02-18 08:54:15 +01:00
Forgot a small change to make sure that in case the request times out, we get an error.
This commit is contained in:
parent
ce6987ffab
commit
921fe640a8
@ -121,6 +121,7 @@ void ConfigPlugin::eraseAllSettings()
|
||||
if (msgBox.exec() != QMessageBox::Ok)
|
||||
return;
|
||||
|
||||
settingsErased = false;
|
||||
ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance();
|
||||
UAVObjectManager * objMngr = pm->getObject<UAVObjectManager>();
|
||||
Q_ASSERT(objMngr);
|
||||
@ -132,9 +133,27 @@ void ConfigPlugin::eraseAllSettings()
|
||||
data.Selection = ObjectPersistence::SELECTION_ALLSETTINGS;
|
||||
objper->setData(data);
|
||||
objper->updated();
|
||||
QTimer::singleShot(1500,this,SLOT(eraseFailed()));
|
||||
|
||||
}
|
||||
|
||||
void ConfigPlugin::eraseFailed()
|
||||
{
|
||||
if (settingsErased)
|
||||
return;
|
||||
ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance();
|
||||
UAVObjectManager * objMngr = pm->getObject<UAVObjectManager>();
|
||||
Q_ASSERT(objMngr);
|
||||
ObjectPersistence* objper = dynamic_cast<ObjectPersistence*>( objMngr->getObject(ObjectPersistence::NAME));
|
||||
disconnect(objper, SIGNAL(objectUpdated(UAVObject*)), this, SLOT(eraseDone(UAVObject *)));
|
||||
QMessageBox msgBox;
|
||||
msgBox.setText(tr("Error trying to erase settings."));
|
||||
msgBox.setInformativeText(tr("Power-cycle your board. Settings might be inconsistent."));
|
||||
msgBox.setStandardButtons(QMessageBox::Ok);
|
||||
msgBox.setDefaultButton(QMessageBox::Ok);
|
||||
msgBox.exec();
|
||||
}
|
||||
|
||||
void ConfigPlugin::eraseDone(UAVObject * obj)
|
||||
{
|
||||
QMessageBox msgBox;
|
||||
@ -147,6 +166,7 @@ void ConfigPlugin::eraseDone(UAVObject * obj)
|
||||
|
||||
disconnect(objper, SIGNAL(objectUpdated(UAVObject*)), this, SLOT(eraseDone(UAVObject *)));
|
||||
if (obj->getField("Operation")->getValue().toString().compare(QString("Completed")) == 0) {
|
||||
settingsErased = true;
|
||||
msgBox.setText(tr("Settings erased."));
|
||||
msgBox.setInformativeText(tr("Please now power-cycle your board to complete reset."));
|
||||
} else {
|
||||
|
@ -57,10 +57,12 @@ private slots:
|
||||
void onAutopilotConnect();
|
||||
void onAutopilotDisconnect();
|
||||
void eraseDone(UAVObject *);
|
||||
void eraseFailed();
|
||||
|
||||
private:
|
||||
ConfigGadgetFactory *cf;
|
||||
Core::Command* cmd;
|
||||
bool settingsErased;
|
||||
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user