Change recon page can refresh transfer progress automaticly.
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
#include <QVBoxLayout>
|
||||
#include <QHeaderView>
|
||||
#include <QSqlRecord>
|
||||
#include <QTimer>
|
||||
|
||||
#include "components/SlideTableView.h"
|
||||
#include "db/SQLHelper.h"
|
||||
@@ -23,6 +24,7 @@ ReconFormWidget::ReconFormWidget(QWidget *parent)
|
||||
, mScanTable(new SlideTableView(this))
|
||||
, mSearchWidget(new ScanSearchCriteriaForm(this))
|
||||
, mModel(nullptr)
|
||||
, mRefreshTimer(new QTimer(this))
|
||||
{
|
||||
auto layout = new QHBoxLayout(ui->commandWidget);
|
||||
layout->setAlignment(Qt::AlignmentFlag::AlignLeft);
|
||||
@@ -51,8 +53,10 @@ ReconFormWidget::ReconFormWidget(QWidget *parent)
|
||||
|
||||
connect(mBtnRefresh, &QToolButton::clicked, DeviceManager::Default(), &DeviceManager::updateReconState);
|
||||
connect(DeviceManager::Default(), &DeviceManager::updateReconStateFinished, mModel, &QSqlTableModel::select);
|
||||
connect(DeviceManager::Default(), &DeviceManager::transferStatusUpdated, mModel, &QSqlTableModel::select);
|
||||
connect(mSearchWidget, &ScanSearchCriteriaForm::searchFilterUpdated, this, &ReconFormWidget::updateSearchFilter);
|
||||
connect(mBtnDelete, &QToolButton::clicked, this, &ReconFormWidget::deleteReconRecord);
|
||||
connect(mRefreshTimer, &QTimer::timeout, this, &ReconFormWidget::refreshTransferprogress);
|
||||
|
||||
}
|
||||
|
||||
@@ -116,6 +120,13 @@ void ReconFormWidget::showEvent(QShowEvent *aEvent)
|
||||
{
|
||||
TabFormWidget::showEvent(aEvent);
|
||||
DeviceManager::Default()->updateReconState();
|
||||
mRefreshTimer->start(1000);
|
||||
}
|
||||
|
||||
void ReconFormWidget::hideEvent(QHideEvent *aEvent)
|
||||
{
|
||||
mRefreshTimer->stop();
|
||||
TabFormWidget::hideEvent(aEvent);
|
||||
}
|
||||
|
||||
void ReconFormWidget::deleteReconRecord()
|
||||
@@ -159,3 +170,11 @@ int ReconFormWidget::getTableColumnIndex(const QString& aColumnName)
|
||||
{
|
||||
return mModel->record().indexOf(aColumnName);
|
||||
}
|
||||
|
||||
void ReconFormWidget::refreshTransferprogress()
|
||||
{
|
||||
if(DeviceManager::Default()->updateTransferProgress())
|
||||
{
|
||||
mScanTable->viewport()->update();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ class QToolButton;
|
||||
class SlideTableView;
|
||||
class QSqlTableModel;
|
||||
class ScanSearchCriteriaForm;
|
||||
class QTimer;
|
||||
|
||||
class ReconFormWidget: public TabFormWidget
|
||||
{
|
||||
@@ -19,10 +20,12 @@ public:
|
||||
|
||||
protected:
|
||||
void showEvent(QShowEvent *aEvent) override;
|
||||
void hideEvent(QHideEvent *aEvent) override;
|
||||
|
||||
private slots:
|
||||
void updateSearchFilter();
|
||||
void deleteReconRecord();
|
||||
void refreshTransferprogress();
|
||||
|
||||
private:
|
||||
int getTableColumnIndex(const QString& aColumnName);
|
||||
@@ -34,6 +37,7 @@ private:
|
||||
SlideTableView* mScanTable;
|
||||
ScanSearchCriteriaForm* mSearchWidget;
|
||||
QSqlTableModel *mModel;
|
||||
QTimer* mRefreshTimer;
|
||||
|
||||
void initTableView(QHBoxLayout *contentLayout);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user