From 02366bf36896762f96327be3a3451e5eb373b790 Mon Sep 17 00:00:00 2001 From: edouard Date: Sat, 27 Nov 2010 13:44:16 +0000 Subject: [PATCH] OP-35 Further cleanup of Uploader gadget, better debug messages, more reliable. git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2169 ebee16cc-31ac-478f-84a7-5cbb03baadba --- ground/src/plugins/uploader/devicewidget.cpp | 6 ++- ground/src/plugins/uploader/op_dfu.cpp | 53 ++++++++------------ 2 files changed, 25 insertions(+), 34 deletions(-) diff --git a/ground/src/plugins/uploader/devicewidget.cpp b/ground/src/plugins/uploader/devicewidget.cpp index b3aac8312..b52d12695 100644 --- a/ground/src/plugins/uploader/devicewidget.cpp +++ b/ground/src/plugins/uploader/devicewidget.cpp @@ -224,6 +224,7 @@ void deviceWidget::downloadFirmware() void deviceWidget::downloadFinished() { disconnect(m_dfu, SIGNAL(downloadFinished()), this, SLOT(downloadFinished())); + disconnect(m_dfu, SIGNAL(progressUpdated(int)), this, SLOT(setProgress(int))); status("Download successful"); // Now save the result (use the utility function from OP_DFU) m_dfu->SaveByteArrayToFile(filename, downloadedFirmware); @@ -236,6 +237,8 @@ void deviceWidget::downloadFinished() void deviceWidget::uploadFinished(OP_DFU::Status retstatus) { disconnect(m_dfu, SIGNAL(uploadFinished(OP_DFU::Status)), this, SLOT(uploadFinished(OP_DFU::Status))); + disconnect(m_dfu, SIGNAL(progressUpdated(int)), this, SLOT(setProgress(int))); + disconnect(m_dfu, SIGNAL(operationProgress(QString)), this, SLOT(status(QString))); if(retstatus != OP_DFU::Last_operation_Success) { status(QString("Upload failed with code: ") + m_dfu->StatusToString(retstatus).toLatin1().data()); return; @@ -253,7 +256,6 @@ void deviceWidget::uploadFinished(OP_DFU::Status retstatus) } - /** Slot to update the progress bar */ @@ -274,7 +276,7 @@ QString deviceWidget::setOpenFileName() QString fileName = QFileDialog::getOpenFileName(this, tr("Select firmware file"), "", - tr("All Files (*);;Firmware Files (*.bin)"), + tr("Firmware Files (*.bin)"), &selectedFilter, options); return fileName; diff --git a/ground/src/plugins/uploader/op_dfu.cpp b/ground/src/plugins/uploader/op_dfu.cpp index 076833382..95b0d2a78 100644 --- a/ground/src/plugins/uploader/op_dfu.cpp +++ b/ground/src/plugins/uploader/op_dfu.cpp @@ -210,11 +210,11 @@ OP_DFU::Status DFUObject::UploadDescription(QString description) { return OP_DFU::abort; } - int ret=StatusRequest(); + OP_DFU::Status ret = StatusRequest(); if(debug) - qDebug()<<"Upload description Status="<> 2; // /4 Size passed in as a byte count, assumed to be a multiple of 4