Skip to content
QGCUASFileView.cc 1.44 KiB
Newer Older
#include "QGCUASFileView.h"
#include "uas/QGCUASFileManager.h"
#include "ui_QGCUASFileView.h"

Lorenz Meier's avatar
Lorenz Meier committed
#include <QFileDialog>
#include <QDir>

QGCUASFileView::QGCUASFileView(QWidget *parent, QGCUASFileManager *manager) :
    QWidget(parent),
    _manager(manager),
    ui(new Ui::QGCUASFileView)
{
    ui->setupUi(this);

    connect(ui->testButton, SIGNAL(clicked()), _manager, SLOT(nothingMessage()));
Lorenz Meier's avatar
Lorenz Meier committed
    connect(ui->listFilesButton, SIGNAL(clicked()), this, SLOT(listFiles()));
    connect(ui->downloadButton, SIGNAL(clicked()), this, SLOT(downloadFiles()));

    connect(_manager, SIGNAL(statusMessage(QString)), ui->messageArea, SLOT(appendPlainText(QString)));
Don Gagne's avatar
Don Gagne committed
    connect(_manager, SIGNAL(errorMessage(QString)), ui->messageArea, SLOT(appendPlainText(QString)));
    connect(_manager, SIGNAL(resetStatusMessages()), ui->messageArea, SLOT(clear()));
}

QGCUASFileView::~QGCUASFileView()
{
    delete ui;
}
Lorenz Meier's avatar
Lorenz Meier committed

void QGCUASFileView::listFiles()
{
    _manager->listDirectory(ui->pathLineEdit->text());
Lorenz Meier's avatar
Lorenz Meier committed
}

void QGCUASFileView::downloadFiles()
{
    QString dir = QFileDialog::getExistingDirectory(this, tr("Download Directory"),
Lorenz Meier's avatar
Lorenz Meier committed
                                                     QDir::homePath(),
                                                     QFileDialog::ShowDirsOnly
                                                     | QFileDialog::DontResolveSymlinks);
    // And now download to this location
    _manager->downloadPath(ui->pathLineEdit->text(), QDir(dir));
Lorenz Meier's avatar
Lorenz Meier committed
}