#include "form_maininterface.h" #include "ui_form_maininterface.h" #include #include #include #include "base/HGBase.h" #include "imgfmt/HGImgFmt.h" #include "HGUIGlobal.h" #include "form_texttips.h" #include "test_base.h" #include "hgscanner.h" #include "mainwindow.h" Form_mainInterface::Form_mainInterface(class MainWindow *mainwnd, SANE_Handle handle, HGPdtToolDbUserMgr pdtToolDbuserMgr, HGPdtToolDbDevice pdtToolDbDevice, const QString &serialNum, const QString &devType) : QWidget(mainwnd) , ui(new Ui::Form_mainInterface) , m_mainwnd(mainwnd) , m_handle(handle) , m_pdtToolDbuserMgr(pdtToolDbuserMgr) , m_pdtToolDbDevice(pdtToolDbDevice) , m_serialNum(serialNum) , m_devType(devType) { ui->setupUi(this); ui->label_sn->setText(serialNum); this->setMinimumWidth(400); m_textTips = new Form_textTips(); m_view = new HGImgView(); ui->stackedWidget->addWidget(m_textTips); ui->stackedWidget->addWidget(m_view); ui->listWidget->setMinimumWidth(200); ui->listWidget->setCurrentRow(0); ui->pbtn_preStep->setEnabled(false); downloadCfgFile(); } Form_mainInterface::~Form_mainInterface() { //sane_close(m_handle); HGPdtToolDb_CloseDevice(m_pdtToolDbDevice); delete ui; } QString Form_mainInterface::getSn() { return m_serialNum; } void Form_mainInterface::paintEvent(QPaintEvent *event) { (void)event; QPainter p(this); p.setPen(QColor("gray")); p.drawRect(0, 0, width() -1, height() -1); } void Form_mainInterface::on_listWidget_currentTextChanged(const QString ¤tText) { ui->pbtn_preStep->setEnabled(ui->listWidget->currentRow() != 0); ui->pbtn_nextStep->setEnabled(ui->listWidget->currentRow() != ui->listWidget->count() - 1); QString testName; if (currentText == HGPDTTOOLDB_TITLE_DIAL_SWITCH) { m_textTips->setViewContent(m_map_title_name.value(currentText).desc); testName = m_map_title_name.value(currentText).name; ui->stackedWidget->setCurrentWidget(m_textTips); } else if (currentText == HGPDTTOOLDB_NAME_SINGLE_PAGE_TEST_1) { //addImg testName = m_map_title_name.value(currentText).name; ui->stackedWidget->setCurrentWidget(m_view); } ui_helper* helper; hgscanner* hg = new hgscanner(m_handle); helper = dynamic_cast(hg); QString s("test-31"); // func_test_go(s.toStdWString().c_str(), L"null", helper); } void Form_mainInterface::on_pbtn_preStep_clicked() { ui->listWidget->setCurrentRow(ui->listWidget->currentRow() - 1); } void Form_mainInterface::on_pbtn_nextStep_clicked() { ui->listWidget->setCurrentRow(ui->listWidget->currentRow() + 1); } void Form_mainInterface::on_pbtn_fail_clicked() { ui->listWidget->item(ui->listWidget->currentRow())->setBackgroundColor("red"); } void Form_mainInterface::on_pbtn_pass_clicked() { ui->listWidget->item(ui->listWidget->currentRow())->setBackgroundColor("yellow"); on_pbtn_nextStep_clicked(); } void Form_mainInterface::downloadCfgFile() { HGChar cfgPath[512] = {0}; HGBase_GetConfigPath(cfgPath, 512); HGBase_CreateDir(cfgPath); strcat(cfgPath, m_devType.toStdString().c_str()); strcat(cfgPath, ".json"); HGResult ret = HGPdtToolDb_DownloadFile(m_pdtToolDbuserMgr, m_devType.toStdString().c_str(), cfgPath); // if(ret == HGBASE_ERR_OK) // { AnalysisJson analysisJson(QString::fromStdString(cfgPath)); std::vector list_jsonNode = analysisJson.GetNode(); for(int i = 0; i < (int)list_jsonNode.size(); ++i) { AnalysisJson::json_node node = list_jsonNode[i]; ui->listWidget->addItem(node.title); m_map_title_name.insert(node.title, node); } // } } void Form_mainInterface::on_pbtn_stop_clicked() { m_mainwnd->RemoveInterface(this); }