Browse Source

Fixed APM toolbar assumptions about link count

QGC4.4
Lorenz Meier 12 years ago
parent
commit
1d28f60486
  1. 16
      src/ui/apmtoolbar.cpp

16
src/ui/apmtoolbar.cpp

@ -96,20 +96,22 @@ void APMToolBar::connectMAV()
{ {
qDebug() << "APMToolBar: connectMAV "; qDebug() << "APMToolBar: connectMAV ";
bool connected = LinkManager::instance()->getLinks().last()->isConnected(); bool connected = false;
if (LinkManager::instance()->getSerialLinks().count() > 0)
connected = LinkManager::instance()->getSerialLinks().last()->isConnected();
bool result; bool result;
if (!connected && LinkManager::instance()->getLinks().count() < 3) if (!connected && LinkManager::instance()->getSerialLinks().count() == 0)
{ {
// No Link so prompt to connect one // No Link so prompt to connect one
MainWindow::instance()->addLink(); MainWindow::instance()->addLink();
} else if (!connected) { } else if (!connected) {
// Need to Connect Link // Need to Connect Link
result = LinkManager::instance()->getLinks().last()->connect(); result = LinkManager::instance()->getSerialLinks().last()->connect();
} else if (connected && LinkManager::instance()->getLinks().count() > 2) { } else if (connected && LinkManager::instance()->getSerialLinks().count() > 0) {
// result need to be the opposite of success. // result need to be the opposite of success.
result = !LinkManager::instance()->getLinks().last()->disconnect(); result = !LinkManager::instance()->getSerialLinks().last()->disconnect();
} }
qDebug() << "result = " << result; qDebug() << "result = " << result;
@ -137,11 +139,11 @@ void APMToolBar::showConnectionDialog()
qDebug() << "APMToolBar: showConnectionDialog link count =" qDebug() << "APMToolBar: showConnectionDialog link count ="
<< LinkManager::instance()->getLinks().count(); << LinkManager::instance()->getLinks().count();
LinkInterface *link = LinkManager::instance()->getLinks().last();
bool result; bool result;
if (link && LinkManager::instance()->getLinks().count() >= 3) if (LinkManager::instance()->getSerialLinks().count() > 0)
{ {
SerialLink *link = LinkManager::instance()->getSerialLinks().last();
// Serial Link so prompt to config it // Serial Link so prompt to config it
connect(link, SIGNAL(updateLink(LinkInterface*)), connect(link, SIGNAL(updateLink(LinkInterface*)),
this, SLOT(updateLinkDisplay(LinkInterface*))); this, SLOT(updateLinkDisplay(LinkInterface*)));

Loading…
Cancel
Save