调整选择设备源崩溃

This commit is contained in:
yangjiaxuan 2023-05-24 18:00:21 +08:00
parent 969ef17c5a
commit 0d3b7857f2
5 changed files with 15 additions and 118 deletions

View File

@ -652,17 +652,7 @@ void MainWindow::on_AcquireInto2()
ret = m_devUser->StartScan();
}
if (ret != HGBASE_ERR_OK)
{
m_wndStatusBar->setDeviceStatusInfo(tr("start failed"), true);
HGBase_WriteInfo(HGBASE_INFOTYPE_ERROR, "%s", getStdString(tr("start failed")).c_str());
}
else
{
// m_isScanning = true;
m_thumb->setAcceptDrops(false);
// updateActionStatus();
}
m_thumb->setAcceptDrops(false);
}
}
@ -2892,16 +2882,7 @@ void MainWindow::on_act_acquire_triggered()
ret = m_devUser->StartScan();
}
if (ret != HGBASE_ERR_OK)
{
m_wndStatusBar->setDeviceStatusInfo(tr("start failed"), true);
HGBase_WriteInfo(HGBASE_INFOTYPE_ERROR, "%s", getStdString(tr("start failed")).c_str());
}
else
{
m_thumb->setAcceptDrops(false);
updateActionStatus();
}
m_thumb->setAcceptDrops(false);
}
void MainWindow::on_act_acquireSingle_triggered()
@ -2937,17 +2918,7 @@ void MainWindow::on_act_acquireSingle_triggered()
ret = m_devUser->StartSingleScan();
}
if (ret != HGBASE_ERR_OK)
{
m_wndStatusBar->setDeviceStatusInfo(tr("start failed"), true);
HGBase_WriteInfo(HGBASE_INFOTYPE_ERROR, "%s", getStdString(tr("start failed")).c_str());
}
else
{
// m_isScanning = true;
m_thumb->setAcceptDrops(false);
// updateActionStatus();
}
m_thumb->setAcceptDrops(false);
}
void MainWindow::on_act_acquireInto_triggered()
@ -3002,17 +2973,7 @@ void MainWindow::on_act_acquireInto_triggered()
ret = m_devUser->StartScan();
}
if (ret != HGBASE_ERR_OK)
{
m_wndStatusBar->setDeviceStatusInfo(tr("start failed"), true);
HGBase_WriteInfo(HGBASE_INFOTYPE_ERROR, "%s", getStdString(tr("start failed")).c_str());
}
else
{
// m_isScanning = true;
m_thumb->setAcceptDrops(false);
// updateActionStatus();
}
m_thumb->setAcceptDrops(false);
}
}
@ -3063,17 +3024,7 @@ void MainWindow::on_act_insertFromScanner_triggered()
ret = m_devUser->StartScan();
}
if (ret != HGBASE_ERR_OK)
{
m_wndStatusBar->setDeviceStatusInfo(tr("start failed"), true);
HGBase_WriteInfo(HGBASE_INFOTYPE_ERROR, "%s", getStdString(tr("start failed")).c_str());
}
else
{
// m_isScanning = true;
m_thumb->setAcceptDrops(false);
// updateActionStatus();
}
m_thumb->setAcceptDrops(false);
}
}

View File

@ -10,11 +10,9 @@ Manager::Manager()
, m_progressUiCallback(std::function<void(ui_result)>())
, m_notify(nullptr)
, m_settingUiCallback(std::function<void(ui_result)>())
, m_deviceSelectUi(nullptr)
, m_settingUi(nullptr)
, m_progressUi(nullptr)
, m_msgBoxUi(nullptr)
, m_twainSrcUi(nullptr)
{
HGBase_CreateEvent(HGFALSE, HGFALSE, &m_event);
@ -29,7 +27,6 @@ Manager::Manager()
connect(this, SIGNAL(deleteSettingUi()), this, SLOT(on_deleteSettingUi()));
connect(this, SIGNAL(deleteProgressUi()), this, SLOT(on_deleteProgressUi()));
connect(this, SIGNAL(deleteMessageBoxUi()), this, SLOT(on_deleteMessageBoxUi()));
connect(this, SIGNAL(deleteTwainSrcUi()), this, SLOT(on_deleteTwainSrcUi()));
connect(this, SIGNAL(deleteManager()), this, SLOT(on_deleteManager()));
emit init();
@ -148,11 +145,6 @@ int Manager::showTwainSrcUi(bool qt, DSMENTRYPROC dsmProc, const TW_IDENTITY *ap
return 0;
}
void Manager::closeDeviceSelectUi()
{
emit deleteDeviceSelectUi();
}
void Manager::closeSettingUi()
{
emit deleteSettingUi();
@ -168,11 +160,6 @@ void Manager::closeMessageBoxUi()
emit deleteMessageBoxUi();
}
void Manager::closeTwainSrcUi()
{
emit deleteTwainSrcUi();
}
void Manager::closeManager()
{
emit deleteManager();
@ -183,7 +170,7 @@ void Manager::clear_functions(void)
m_settingUiCallback = std::function<void(ui_result)>();
m_progressUiCallback = std::function<void(ui_result)>();
m_notify = nullptr;
if (this->m_progressUi)
if (m_progressUi)
m_progressUi->clear_callback();
if (m_settingUi)
m_settingUi->clear_callback();
@ -209,10 +196,9 @@ void Manager::on_init()
void Manager::on_createDeviceSelect(bool qt)
{
if (m_deviceSelectUi == nullptr)
m_deviceSelectUi = new Dialog_device_select(m_DeviceSelectDevs);
m_deviceSelectUi->exec();
m_DeviceSelectResult = m_deviceSelectUi->getDevId();
Dialog_device_select *dlg = new Dialog_device_select(m_DeviceSelectDevs);
dlg->exec();
m_DeviceSelectResult = dlg->getDevId();
if (!qt)
{
@ -267,7 +253,9 @@ void Manager::on_createProgressUi(bool qt)
m_progressUi = nullptr;
if(m_progressUiCallback)
m_progressUiCallback(r);
m_progressUiCallback = std::function<void(ui_result)>();
if(r == UI_RESULT_CLOSE_NORMAL)
m_progressUiCallback = std::function<void(ui_result)>();
};
if (m_progressUi == nullptr)
m_progressUi = new Dialog_progress_ui(close_prog, m_notify, qParent);
@ -315,11 +303,10 @@ void Manager::on_createTwainSrcUi(bool qt)
qParent = m_TwainSrcUiparent;
#endif
if (m_twainSrcUi == nullptr)
m_twainSrcUi = new Dialog_Twain_Source_Select (m_dsmProc, &m_appId, qParent);
if (m_twainSrcUi->exec())
Dialog_Twain_Source_Select *dlg = new Dialog_Twain_Source_Select (m_dsmProc, &m_appId, qParent);
if (dlg->exec())
{
m_twainSrcUi->GetIdentify(&m_ds);
dlg->GetIdentify(&m_ds);
}
if (!qt)
@ -328,15 +315,6 @@ void Manager::on_createTwainSrcUi(bool qt)
}
}
void Manager::on_deleteDeviceSelectUi()
{
if (m_deviceSelectUi != nullptr)
{
delete m_deviceSelectUi;
m_deviceSelectUi = nullptr;
}
}
void Manager::on_deleteSettingUi()
{
if (m_settingUi != nullptr)
@ -366,15 +344,6 @@ void Manager::on_deleteMessageBoxUi()
}
}
void Manager::on_deleteTwainSrcUi()
{
if (m_twainSrcUi != nullptr)
{
delete m_twainSrcUi;
m_twainSrcUi = nullptr;
}
}
void Manager::on_deleteManager()
{
if (NULL != g_manager)

View File

@ -38,11 +38,9 @@ signals:
void createMessageBoxUi(bool qt);
void createTwainSrcUi(bool qt);
void deleteDeviceSelectUi();
void deleteSettingUi();
void deleteProgressUi();
void deleteMessageBoxUi();
void deleteTwainSrcUi();
void deleteManager();
private slots:
@ -53,11 +51,9 @@ private slots:
void on_createMessageBoxUi(bool qt);
void on_createTwainSrcUi(bool qt);
void on_deleteDeviceSelectUi();
void on_deleteSettingUi();
void on_deleteProgressUi();
void on_deleteMessageBoxUi();
void on_deleteTwainSrcUi();
void on_deleteManager();
private:
@ -67,7 +63,6 @@ private:
HGEvent m_event;
Dialog_device_select *m_deviceSelectUi;
std::vector<DEVQUEUI> m_DeviceSelectDevs;
unsigned long m_DeviceSelectThreadId;
int m_DeviceSelectResult;
@ -94,7 +89,6 @@ private:
std::string m_message;
int m_flag;
Dialog_Twain_Source_Select *m_twainSrcUi;
unsigned long m_twainSrcUiThreadId;
DSMENTRYPROC m_dsmProc;
TW_IDENTITY m_appId;

View File

@ -40,20 +40,6 @@ Dialog_progress_ui::~Dialog_progress_ui()
delete ui;
}
void Dialog_progress_ui::closeEvent(QCloseEvent *e)
{
if (m_isScanning)
{
if (e->spontaneous())
{
if(!quit_)
m_callback(UI_RESULT_CLOSE_CANCEL);
}
e->ignore();
}
}
void Dialog_progress_ui::on_pbtn_cancelScan_clicked()
{
if (!quit_)

View File

@ -25,9 +25,6 @@ signals:
void scan_status(QString finishInfo, bool isScanning);
void scan_finish(int flag, QString finishInfo);
protected:
void closeEvent(QCloseEvent *e) override;
private slots:
void on_pbtn_cancelScan_clicked();
void on_pbtn_close_clicked();