From fe69f6a5b0d1065cf4c3f4bffed7328a33a9742a Mon Sep 17 00:00:00 2001 From: yangjiaxuan <171295266@qq.com> Date: Fri, 30 Dec 2022 18:30:02 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E5=BC=95=E7=94=A8=E8=AE=A1=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E4=B8=8A=E6=8A=A5=E6=A0=A1=E6=AD=A3=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/HGProductionTool/form_maininterface.cpp | 39 +++++++------- app/HGProductionTool/form_maininterface.h | 2 - app/HGProductionTool/form_texttips.cpp | 1 + app/HGProductionTool/hgscanner.cpp | 28 +++++----- app/HGProductionTool/mainwindow.cpp | 52 +++++++++++-------- app/HGProductionTool/mainwindow.h | 3 ++ cfg-tools/solution/Release/config/stored.txt | Bin 5812 -> 5792 bytes 7 files changed, 66 insertions(+), 59 deletions(-) diff --git a/app/HGProductionTool/form_maininterface.cpp b/app/HGProductionTool/form_maininterface.cpp index 6d583cb..1d9d519 100644 --- a/app/HGProductionTool/form_maininterface.cpp +++ b/app/HGProductionTool/form_maininterface.cpp @@ -81,8 +81,8 @@ Form_mainInterface::Form_mainInterface(class MainWindow *mainwnd, SANE_Handle ha connect(this, SIGNAL(testResult(QString)), this, SLOT(on_testResult(QString)), Qt::QueuedConnection); connect(this, SIGNAL(testResultImg(void*)), this, SLOT(on_testResultImg(void*)), Qt::QueuedConnection); + connect(this, SIGNAL(testDistortion(QString,void*)), this, SLOT(on_testDistortion(QString,void*)), Qt::QueuedConnection); connect(this, SIGNAL(testCorrectInfo(QString)), this, SLOT(on_testCorrectInfo(QString)), Qt::QueuedConnection); - connect(this, SIGNAL(testFinish()), this, SLOT(on_testFinish()), Qt::QueuedConnection); QString str; if (m_handle) @@ -160,7 +160,12 @@ void Form_mainInterface::paintEvent(QPaintEvent *event) void Form_mainInterface::on_testResult(QString text) { - QMessageBox::information(this, tr("tips"), text); + if (!text.isEmpty()) + QMessageBox::information(this, tr("tips"), text); + + updateUiEnabled(true); + m_isTesting = false; + m_mainwnd->releaseTesting(); } void Form_mainInterface::on_testResultImg(void *img) @@ -185,12 +190,12 @@ void Form_mainInterface::on_testDistortion(QString name, void *data) { func_test_go(HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_1, L"null", m_hg); } -} - -void Form_mainInterface::on_testFinish() -{ - updateUiEnabled(true); - m_isTesting = false; + else + { + updateUiEnabled(true); + m_isTesting = false; + m_mainwnd->releaseTesting(); + } } void Form_mainInterface::on_testCorrectInfo(QString info) @@ -541,17 +546,11 @@ void Form_mainInterface::on_pbtn_start_clicked() QTableWidgetItem *item = ui->tableWidget->item(row, 1); QString title = item->text(); QString name = m_map_title_name.value(title).name; - int ret = func_test_go(name.toStdWString().c_str(), L"null", m_hg); - if (SCANNER_ERR_OK == ret) - { - updateUiEnabled(false); - m_isTesting = true; - } - else - { - updateUiEnabled(true); - m_isTesting = false; - } + func_test_go(name.toStdWString().c_str(), L"null", m_hg); + + updateUiEnabled(false); + m_isTesting = true; + m_mainwnd->addTestingRef(); } void Form_mainInterface::on_pbtn_showImg_clicked() @@ -568,7 +567,7 @@ void Form_mainInterface::on_pbtn_showImg_clicked() ui->pbtn_leftRotate->setVisible(true); ui->pbtn_rightRotate->setVisible(true); ui->stackedWidget->setCurrentWidget(m_view); - HGImage img; + HGImage img = nullptr; HGImgFmt_LoadImage(fileName.toStdString().c_str(), 0, 0, 0, 0, &img); m_view->addImage(img); QFile file(fileName); diff --git a/app/HGProductionTool/form_maininterface.h b/app/HGProductionTool/form_maininterface.h index 90419d9..2d5e851 100644 --- a/app/HGProductionTool/form_maininterface.h +++ b/app/HGProductionTool/form_maininterface.h @@ -38,13 +38,11 @@ signals: void testResultImg(void* img); void testDistortion(QString title, void *data); void testCorrectInfo(QString info); - void testFinish(); private slots: void on_testResult(QString text); void on_testResultImg(void* img); void on_testDistortion(QString title, void *data); - void on_testFinish(); void on_testCorrectInfo(QString info); private slots: diff --git a/app/HGProductionTool/form_texttips.cpp b/app/HGProductionTool/form_texttips.cpp index 13ec633..9f49a48 100644 --- a/app/HGProductionTool/form_texttips.cpp +++ b/app/HGProductionTool/form_texttips.cpp @@ -25,6 +25,7 @@ void Form_textTips::setViewContent(QString content) void Form_textTips::addContent(QString content) { ui->textBrowser->insertPlainText(content); + ui->textBrowser->moveCursor(QTextCursor::End); } diff --git a/app/HGProductionTool/hgscanner.cpp b/app/HGProductionTool/hgscanner.cpp index d8de6d0..436e102 100644 --- a/app/HGProductionTool/hgscanner.cpp +++ b/app/HGProductionTool/hgscanner.cpp @@ -39,37 +39,36 @@ void hgscanner::test_callback(const wchar_t* name, test_event ev, void* data, si { QString info = QObject::tr("Not find test item"); emit m_interface->testResult(info); - emit m_interface->testFinish(); } else if (ev == TEST_EVENT_IO_FAIL) { + QString info; if (data != nullptr) { - QString info = QString::fromStdWString((const wchar_t*)data); - info = QObject::tr("failed: ") + info; - emit m_interface->testResult(info); + info = QObject::tr("failed: ") + QString::fromStdWString((const wchar_t*)data); } - emit m_interface->testFinish(); + emit m_interface->testResult(info); } else if (ev == TEST_EVENT_MANUAL_CONFIRMATION) { - QString info = QString::fromStdWString((const wchar_t*)data); + QString info; + if (data != nullptr) + { + info = QString::fromStdWString((const wchar_t*)data); + } emit m_interface->testResult(info); - emit m_interface->testFinish(); } else if (ev == TEST_EVENT_RESULT) { + QString info; if (data != nullptr) { - QString info = QString::fromStdWString((const wchar_t*)data); if (flag) - info = QObject::tr("success: ") + info; + info = QObject::tr("success: ") + QString::fromStdWString((const wchar_t*)data); else - info = QObject::tr("failed: ") + info; - - emit m_interface->testResult(info); + info = QObject::tr("failed: ") + QString::fromStdWString((const wchar_t*)data); } - emit m_interface->testFinish(); + emit m_interface->testResult(info); } else if (ev == TEST_EVENT_DISTORTION) { @@ -78,9 +77,10 @@ void hgscanner::test_callback(const wchar_t* name, test_event ev, void* data, si } else if (ev == TEST_EVENT_FALT_INFO) { + QString info; if (data != nullptr) { - QString info = QString::fromStdWString((const wchar_t*)data); + info = QString::fromStdWString((const wchar_t*)data); emit m_interface->testCorrectInfo(info); } } diff --git a/app/HGProductionTool/mainwindow.cpp b/app/HGProductionTool/mainwindow.cpp index e2d33a9..8c814ba 100644 --- a/app/HGProductionTool/mainwindow.cpp +++ b/app/HGProductionTool/mainwindow.cpp @@ -17,6 +17,7 @@ MainWindow::MainWindow(HGPdtToolDbUserMgr pdtToolDbuserMgr, const QString &ftpHo , m_ftpHost(ftpHost) , m_ftpPort(ftpPort) , m_lock(nullptr) + , m_testingRef(0) , m_top_splitter(nullptr) , m_bot_splitter(nullptr) , m_isLogOut(false) @@ -232,31 +233,36 @@ bool MainWindow::RemoveInterface(Form_mainInterface *interface) return true; } +void MainWindow::addTestingRef() +{ + ++m_testingRef; + + ui->act_close->setEnabled(false); + ui->act_manage->setEnabled(false); + ui->act_logOut->setEnabled(false); + ui->act_changePwd->setEnabled(false); + ui->act_export->setEnabled(false); + ui->act_upload->setEnabled(false); +} + +void MainWindow::releaseTesting() +{ + --m_testingRef; + + if (0 == m_testingRef) + { + ui->act_close->setEnabled(true); + ui->act_manage->setEnabled(true); + ui->act_logOut->setEnabled(true); + ui->act_changePwd->setEnabled(true); + ui->act_export->setEnabled(true); + ui->act_upload->setEnabled(true); + } +} + bool MainWindow::isTesting() { - bool isTesting = false; - for (int i = 0; i < m_top_splitter->count(); ++i) - { - Form_mainInterface *interface = (Form_mainInterface *)m_top_splitter->widget(i); - if (interface->isTesting()) - { - isTesting = true; - break; - } - } - if (!isTesting) - { - for (int i = 0; i < m_bot_splitter->count(); ++i) - { - Form_mainInterface *interface = (Form_mainInterface *)m_bot_splitter->widget(i); - if (interface->isTesting()) - { - isTesting = true; - break; - } - } - } - return isTesting; + return (m_testingRef != 0); } void MainWindow::closeEvent(QCloseEvent *event) diff --git a/app/HGProductionTool/mainwindow.h b/app/HGProductionTool/mainwindow.h index 31cd0dd..6dcba52 100644 --- a/app/HGProductionTool/mainwindow.h +++ b/app/HGProductionTool/mainwindow.h @@ -30,6 +30,8 @@ public: Form_mainInterface* FindInterface(SANE_Handle handle); bool AddInterface(Form_mainInterface *interface); bool RemoveInterface(Form_mainInterface *interface); + void addTestingRef(); + void releaseTesting(); bool isTesting(); protected: @@ -76,6 +78,7 @@ private: Ui::MainWindow *ui; HGPdtToolDbUserMgr m_pdtToolDbuserMgr; HGLock m_lock; + int m_testingRef; public: QString m_ftpHost; diff --git a/cfg-tools/solution/Release/config/stored.txt b/cfg-tools/solution/Release/config/stored.txt index c531df30f6164c59801fd1b11b7ef409ddfbb884..67bdcb2115885b465262a7463e0751090ec6064a 100644 GIT binary patch delta 34 ncmdm@yFhmX6aQom{=CVv1VT2q@QX2W#4zMBfbiyT0{d72zDx>^ delta 50 zcmZ3WyG3^c6F+M-gCRrgWJdmc&KQO~hG+&OhS<&f`K1{r7x0I06vtVGD`q5TZ+;}O Gj}-t<+YVU( From f4e2cd71814b0f4f69b2617dc2c9ba8dba9fc093 Mon Sep 17 00:00:00 2001 From: yangjiaxuan <171295266@qq.com> Date: Sat, 31 Dec 2022 10:03:51 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E8=B0=83=E6=95=B4json?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cfg-tools/solution/Release/config/stored.txt | Bin 5792 -> 5800 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/cfg-tools/solution/Release/config/stored.txt b/cfg-tools/solution/Release/config/stored.txt index 67bdcb2115885b465262a7463e0751090ec6064a..63451f266d01251d938e058840c8679396c45c66 100644 GIT binary patch delta 48 zcmZ3WyFz!vCdSEM*rhg~V-(<@tR?8gsmBn*kO#t(Zwdr*oSmp2vag#xa&v{C1}gxV Ch!64r delta 42 zcmV+_0M-AfEuby1vH_E%3mmh|0T2(9ED=nT+z>(x4FAoMFI2vZ2U!9zvw#sO1zOM# ABme*a