Browse Source

Onboard Files is PX4 only

QGC4.4
Don Gagne 10 years ago
parent
commit
4e77230156
  1. 40
      src/ui/QGCUASFileView.cc
  2. 3
      src/ui/QGCUASFileView.h
  3. 2
      src/ui/QGCUASFileViewMulti.cc

40
src/ui/QGCUASFileView.cc

@ -24,31 +24,37 @@ @@ -24,31 +24,37 @@
#include "QGCUASFileView.h"
#include "FileManager.h"
#include "QGCFileDialog.h"
#include "UAS.h"
#include <QFileDialog>
#include <QDir>
#include <QDebug>
QGCUASFileView::QGCUASFileView(QWidget *parent, FileManager *manager) :
QWidget(parent),
_manager(manager),
_currentCommand(commandNone)
QGCUASFileView::QGCUASFileView(QWidget *parent, Vehicle* vehicle)
: QWidget(parent)
, _manager(vehicle->uas()->getFileManager())
, _currentCommand(commandNone)
{
_ui.setupUi(this);
_ui.progressBar->reset();
// Connect UI signals
connect(_ui.listFilesButton, &QPushButton::clicked, this, &QGCUASFileView::_refreshTree);
connect(_ui.downloadButton, &QPushButton::clicked, this, &QGCUASFileView::_downloadFile);
connect(_ui.uploadButton, &QPushButton::clicked, this, &QGCUASFileView::_uploadFile);
connect(_ui.treeWidget, &QTreeWidget::currentItemChanged, this, &QGCUASFileView::_currentItemChanged);
// Connect signals from FileManager
connect(_manager, &FileManager::commandProgress, this, &QGCUASFileView::_commandProgress);
connect(_manager, &FileManager::commandComplete, this, &QGCUASFileView::_commandComplete);
connect(_manager, &FileManager::commandError, this, &QGCUASFileView::_commandError);
connect(_manager, &FileManager::listEntry, this, &QGCUASFileView::_listEntryReceived);
if (vehicle->px4Firmware()) {
_ui.progressBar->reset();
// Connect UI signals
connect(_ui.listFilesButton, &QPushButton::clicked, this, &QGCUASFileView::_refreshTree);
connect(_ui.downloadButton, &QPushButton::clicked, this, &QGCUASFileView::_downloadFile);
connect(_ui.uploadButton, &QPushButton::clicked, this, &QGCUASFileView::_uploadFile);
connect(_ui.treeWidget, &QTreeWidget::currentItemChanged, this, &QGCUASFileView::_currentItemChanged);
// Connect signals from FileManager
connect(_manager, &FileManager::commandProgress, this, &QGCUASFileView::_commandProgress);
connect(_manager, &FileManager::commandComplete, this, &QGCUASFileView::_commandComplete);
connect(_manager, &FileManager::commandError, this, &QGCUASFileView::_commandError);
connect(_manager, &FileManager::listEntry, this, &QGCUASFileView::_listEntryReceived);
} else {
_setAllButtonsEnabled(false);
_ui.statusText->setText(QStringLiteral("Onboard Files not supported by this Vehicle"));
}
}
/// @brief Downloads the file currently selected in the tree view

3
src/ui/QGCUASFileView.h

@ -27,6 +27,7 @@ @@ -27,6 +27,7 @@
#include <QWidget>
#include <QTreeWidgetItem>
#include "Vehicle.h"
#include "uas/FileManager.h"
#include "ui_QGCUASFileView.h"
@ -35,7 +36,7 @@ class QGCUASFileView : public QWidget @@ -35,7 +36,7 @@ class QGCUASFileView : public QWidget
Q_OBJECT
public:
explicit QGCUASFileView(QWidget *parent, FileManager *manager);
explicit QGCUASFileView(QWidget *parent, Vehicle* vehicle);
protected:
FileManager* _manager;

2
src/ui/QGCUASFileViewMulti.cc

@ -41,7 +41,7 @@ void QGCUASFileViewMulti::_vehicleAdded(Vehicle* vehicle) @@ -41,7 +41,7 @@ void QGCUASFileViewMulti::_vehicleAdded(Vehicle* vehicle)
UAS* uas = vehicle->uas();
if (!lists.contains(uas)) {
QGCUASFileView* list = new QGCUASFileView(ui->stackedWidget, uas->getFileManager());
QGCUASFileView* list = new QGCUASFileView(ui->stackedWidget, vehicle);
lists.insert(uas, list);
ui->stackedWidget->addWidget(list);
}

Loading…
Cancel
Save