调整界面流程
This commit is contained in:
parent
d4433e1d0b
commit
cac3f6cabb
Binary file not shown.
|
@ -6,61 +6,69 @@
|
|||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="14"/>
|
||||
<source>Dialog</source>
|
||||
<translation>输入序列号</translation>
|
||||
<translation>设备标识</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="35"/>
|
||||
<source>Input SN:</source>
|
||||
<translation>输入序列号:</translation>
|
||||
<translation type="vanished">序列号:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="82"/>
|
||||
<source>Select devType:</source>
|
||||
<translation>设备型号:</translation>
|
||||
<translation type="vanished">设备型号:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="96"/>
|
||||
<location filename="dialog_inputserialnum.ui" line="59"/>
|
||||
<source>G100</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="101"/>
|
||||
<location filename="dialog_inputserialnum.ui" line="64"/>
|
||||
<source>G200</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="106"/>
|
||||
<location filename="dialog_inputserialnum.ui" line="69"/>
|
||||
<source>G300</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="111"/>
|
||||
<location filename="dialog_inputserialnum.ui" line="74"/>
|
||||
<source>G400</source>
|
||||
<translation></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="149"/>
|
||||
<location filename="dialog_inputserialnum.ui" line="88"/>
|
||||
<source>devType :</source>
|
||||
<translation>设备型号:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="101"/>
|
||||
<source>serialNum:</source>
|
||||
<translation>序列号:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="26"/>
|
||||
<source>OK</source>
|
||||
<translation>确定</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.ui" line="156"/>
|
||||
<location filename="dialog_inputserialnum.ui" line="39"/>
|
||||
<source>Cancel</source>
|
||||
<translation>取消</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.cpp" line="43"/>
|
||||
<location filename="dialog_inputserialnum.cpp" line="49"/>
|
||||
<location filename="dialog_inputserialnum.cpp" line="47"/>
|
||||
<location filename="dialog_inputserialnum.cpp" line="53"/>
|
||||
<source>tips</source>
|
||||
<translation>提示</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.cpp" line="43"/>
|
||||
<location filename="dialog_inputserialnum.cpp" line="47"/>
|
||||
<source>Serial num is empty</source>
|
||||
<translation>序列号为空</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="dialog_inputserialnum.cpp" line="49"/>
|
||||
<location filename="dialog_inputserialnum.cpp" line="53"/>
|
||||
<source>The device is testing</source>
|
||||
<translation>该设备正在进行测试</translation>
|
||||
</message>
|
||||
|
@ -428,47 +436,62 @@
|
|||
<translation>下一步</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="71"/>
|
||||
<location filename="form_maininterface.cpp" line="75"/>
|
||||
<source>Device has connected</source>
|
||||
<translation>设备已连接</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="77"/>
|
||||
<source>Device hasnot connected</source>
|
||||
<translation>设备未连接</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="78"/>
|
||||
<source>Device type:</source>
|
||||
<translation>设备型号:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="71"/>
|
||||
<location filename="form_maininterface.cpp" line="78"/>
|
||||
<source> SerialNum:</source>
|
||||
<translation> 序列号:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="185"/>
|
||||
<location filename="form_maininterface.cpp" line="78"/>
|
||||
<source> connect status:</source>
|
||||
<translation> 设备连接状态:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="180"/>
|
||||
<source>ID</source>
|
||||
<translation>序号</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="185"/>
|
||||
<location filename="form_maininterface.cpp" line="180"/>
|
||||
<source>Test items</source>
|
||||
<translation>测试项</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="185"/>
|
||||
<location filename="form_maininterface.cpp" line="180"/>
|
||||
<source>status</source>
|
||||
<translation>测试状态</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="272"/>
|
||||
<location filename="form_maininterface.cpp" line="323"/>
|
||||
<source>not test</source>
|
||||
<translation>未测试</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="272"/>
|
||||
<location filename="form_maininterface.cpp" line="323"/>
|
||||
<source>not pass</source>
|
||||
<translation>不通过</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="272"/>
|
||||
<location filename="form_maininterface.cpp" line="323"/>
|
||||
<source>not support</source>
|
||||
<translation>不支持</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="form_maininterface.cpp" line="272"/>
|
||||
<location filename="form_maininterface.cpp" line="323"/>
|
||||
<source>pass</source>
|
||||
<translation>通过</translation>
|
||||
</message>
|
||||
|
@ -534,7 +557,7 @@
|
|||
<translation>上传配置文件</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="284"/>
|
||||
<location filename="mainwindow.cpp" line="330"/>
|
||||
<source>Account login elsewhere</source>
|
||||
<translation>账户在其他地方登录</translation>
|
||||
</message>
|
||||
|
@ -543,76 +566,94 @@
|
|||
<translation type="vanished">网络连接断开</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="287"/>
|
||||
<location filename="mainwindow.cpp" line="333"/>
|
||||
<source>You have been forced offline by the administrator account</source>
|
||||
<translation>你已被管理员账户强制下线</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="290"/>
|
||||
<location filename="mainwindow.cpp" line="336"/>
|
||||
<source>Data base error</source>
|
||||
<translation>数据库错误</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="239"/>
|
||||
<location filename="mainwindow.cpp" line="259"/>
|
||||
<location filename="mainwindow.cpp" line="298"/>
|
||||
<location filename="mainwindow.cpp" line="279"/>
|
||||
<location filename="mainwindow.cpp" line="300"/>
|
||||
<location filename="mainwindow.cpp" line="316"/>
|
||||
<location filename="mainwindow.cpp" line="344"/>
|
||||
<location filename="mainwindow.cpp" line="362"/>
|
||||
<location filename="mainwindow.cpp" line="387"/>
|
||||
<location filename="mainwindow.cpp" line="391"/>
|
||||
<source>tips</source>
|
||||
<translation>提示</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="240"/>
|
||||
<location filename="mainwindow.cpp" line="280"/>
|
||||
<source>Are you sure to connect the new device</source>
|
||||
<translation>检测到设备连接,是否启动测试?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="242"/>
|
||||
<location filename="mainwindow.cpp" line="282"/>
|
||||
<source>yes</source>
|
||||
<translation>确定</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="243"/>
|
||||
<location filename="mainwindow.cpp" line="283"/>
|
||||
<source>no</source>
|
||||
<translation>取消</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="259"/>
|
||||
<location filename="mainwindow.cpp" line="316"/>
|
||||
<location filename="mainwindow.cpp" line="300"/>
|
||||
<location filename="mainwindow.cpp" line="362"/>
|
||||
<source>cannot create more table</source>
|
||||
<translation>不能创建更多项目</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="336"/>
|
||||
<location filename="mainwindow.cpp" line="316"/>
|
||||
<source>The device has disconnected</source>
|
||||
<translation>设备已断开连接</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="382"/>
|
||||
<source>save</source>
|
||||
<translation>保存</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="336"/>
|
||||
<location filename="mainwindow.cpp" line="382"/>
|
||||
<source>xls(*.xls)</source>
|
||||
<translation>xls表格(*.xls)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="360"/>
|
||||
<location filename="mainwindow.cpp" line="387"/>
|
||||
<source>export succeed</source>
|
||||
<translation>导出成功</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="391"/>
|
||||
<source>export failed</source>
|
||||
<translation>导出失败</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="413"/>
|
||||
<source>Illegal user</source>
|
||||
<translation>非法的用户</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="364"/>
|
||||
<location filename="mainwindow.cpp" line="417"/>
|
||||
<source>Wrong password</source>
|
||||
<translation>密码错误</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="368"/>
|
||||
<location filename="mainwindow.cpp" line="421"/>
|
||||
<source>Database error</source>
|
||||
<translation>数据库错误</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="372"/>
|
||||
<location filename="mainwindow.cpp" line="425"/>
|
||||
<source>connect error</source>
|
||||
<translation>连接错误</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="mainwindow.cpp" line="376"/>
|
||||
<location filename="mainwindow.cpp" line="429"/>
|
||||
<source>Failed</source>
|
||||
<translation>错误</translation>
|
||||
</message>
|
||||
|
|
|
@ -14,11 +14,15 @@ Dialog_InputSerialNum::Dialog_InputSerialNum(class MainWindow *mainWnd, const QS
|
|||
setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint);
|
||||
|
||||
ui->lineEdit_sn->setValidator(new QRegExpValidator(QRegExp("[a-zA-Z0-9]+$")));
|
||||
ui->lineEdit_sn->setText(serialNum);
|
||||
if (devType.isEmpty())
|
||||
ui->lineEdit_sn->setText(m_serialNum);
|
||||
if (m_devType.isEmpty() || m_serialNum.isEmpty())
|
||||
ui->cbox_devType->setCurrentIndex(0);
|
||||
else
|
||||
{
|
||||
ui->cbox_devType->setCurrentText(devType);
|
||||
ui->lineEdit_sn->setEnabled(false);
|
||||
ui->cbox_devType->setEnabled(false);
|
||||
}
|
||||
}
|
||||
|
||||
Dialog_InputSerialNum::~Dialog_InputSerialNum()
|
||||
|
|
|
@ -6,85 +6,48 @@
|
|||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>413</width>
|
||||
<height>175</height>
|
||||
<width>474</width>
|
||||
<height>206</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>Dialog</string>
|
||||
</property>
|
||||
<layout class="QVBoxLayout" name="verticalLayout">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<spacer name="horizontalSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
<widget class="QPushButton" name="pbtn_ok">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>210</x>
|
||||
<y>150</y>
|
||||
<width>75</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_sn">
|
||||
<property name="text">
|
||||
<string>Input SN:</string>
|
||||
<string>OK</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLineEdit" name="lineEdit_sn">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>130</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
<widget class="QPushButton" name="pbtn_cancel">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>330</x>
|
||||
<y>150</y>
|
||||
<width>75</width>
|
||||
<height>23</height>
|
||||
</rect>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_2">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_4">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="label_type">
|
||||
<property name="text">
|
||||
<string>Select devType:</string>
|
||||
<string>Cancel</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QComboBox" name="cbox_devType">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>190</x>
|
||||
<y>80</y>
|
||||
<width>150</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>130</width>
|
||||
|
@ -112,54 +75,48 @@
|
|||
</property>
|
||||
</item>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_3">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
<widget class="QLabel" name="label_type">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>120</x>
|
||||
<y>80</y>
|
||||
<width>61</width>
|
||||
<height>16</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="horizontalLayout_3">
|
||||
<item>
|
||||
<spacer name="horizontalSpacer_5">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>40</width>
|
||||
<height>20</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="pbtn_ok">
|
||||
<property name="text">
|
||||
<string>OK</string>
|
||||
<string>devType :</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="pbtn_cancel">
|
||||
<widget class="QLabel" name="label_sn">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>123</x>
|
||||
<y>30</y>
|
||||
<width>61</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>Cancel</string>
|
||||
<string>serialNum:</string>
|
||||
</property>
|
||||
</widget>
|
||||
<widget class="QLineEdit" name="lineEdit_sn">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>190</x>
|
||||
<y>30</y>
|
||||
<width>150</width>
|
||||
<height>20</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>130</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<resources/>
|
||||
<connections/>
|
||||
|
|
|
@ -56,7 +56,7 @@ static const RELA Rela[] = {
|
|||
};
|
||||
|
||||
Form_mainInterface::Form_mainInterface(class MainWindow *mainwnd, SANE_Handle handle, HGPdtToolDbUserMgr pdtToolDbuserMgr, HGPdtToolDbDevice pdtToolDbDevice,
|
||||
const QString &serialNum, const QString &devType)
|
||||
const QString &serialNum, const QString &devType, const QString &devName, const QString &devFwNum)
|
||||
: QWidget(mainwnd)
|
||||
, ui(new Ui::Form_mainInterface)
|
||||
, m_mainwnd(mainwnd)
|
||||
|
@ -65,22 +65,36 @@ Form_mainInterface::Form_mainInterface(class MainWindow *mainwnd, SANE_Handle ha
|
|||
, m_pdtToolDbDevice(pdtToolDbDevice)
|
||||
, m_serialNum(serialNum)
|
||||
, m_devType(devType)
|
||||
, m_devName(devName)
|
||||
, m_devFwNum(devFwNum)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
ui->label_sn->setText(tr("Device type:") + m_devType + tr(" SerialNum:") + m_serialNum);
|
||||
this->setMinimumWidth(400);
|
||||
QString str;
|
||||
if (m_handle)
|
||||
str = tr("Device has connected");
|
||||
else
|
||||
str = tr("Device hasnot connected");
|
||||
ui->label_sn->setText(tr("Device type:") + m_devType + tr(" SerialNum:") + m_serialNum + tr(" connect status:") + str);
|
||||
|
||||
setMinimumWidth(500);
|
||||
ui->tableWidget->setMinimumWidth(300);
|
||||
ui->tableWidget->setMaximumWidth(300);
|
||||
m_textTips = new Form_textTips();
|
||||
m_view = new HGImgView();
|
||||
ui->stackedWidget->addWidget(m_textTips);
|
||||
ui->stackedWidget->addWidget(m_view);
|
||||
|
||||
initTableWidgetUi();
|
||||
|
||||
HGPdtToolDb_SetDeviceType(m_pdtToolDbDevice, m_devType.toStdString().c_str());
|
||||
HGPdtToolDb_SetDeviceVersion(m_pdtToolDbDevice, m_devFwNum.toStdString().c_str());
|
||||
HGPdtToolDb_SetDeviceName(m_pdtToolDbDevice, m_devName.toStdString().c_str());
|
||||
}
|
||||
|
||||
Form_mainInterface::~Form_mainInterface()
|
||||
{
|
||||
//sane_close(m_handle);
|
||||
sane_close(m_handle);
|
||||
HGPdtToolDb_CloseDevice(m_pdtToolDbDevice);
|
||||
|
||||
delete ui;
|
||||
|
@ -91,6 +105,11 @@ QString Form_mainInterface::getSn()
|
|||
return m_serialNum;
|
||||
}
|
||||
|
||||
QString Form_mainInterface::getDevName()
|
||||
{
|
||||
return m_devName;
|
||||
}
|
||||
|
||||
void Form_mainInterface::paintEvent(QPaintEvent *event)
|
||||
{
|
||||
(void)event;
|
||||
|
@ -189,6 +208,14 @@ void Form_mainInterface::initTableWidgetUi()
|
|||
{
|
||||
AnalysisJson analysisJson(QString::fromStdString(cfgPath));
|
||||
|
||||
std::map<HGUInt, bool> dbEntryItems;
|
||||
for (int i = HGPDTTOOLDB_ENTRYNAME_DIAL_SWITCH; i <= HGPDTTOOLDB_ENTRYNAME_SCANNING_SENSOR; ++i)
|
||||
dbEntryItems[i] = false;
|
||||
for (int i = HGPDTTOOLDB_ENTRYNAME_CONFIGURE_SPEED_MODE; i <= HGPDTTOOLDB_ENTRYNAME_MECH_PAPER_FEEDING_INCLINATION; ++i)
|
||||
dbEntryItems[i] = false;
|
||||
for (int i = HGPDTTOOLDB_ENTRYNAME_SINGLE_PAGE_TEST_1; i <= HGPDTTOOLDB_ENTRYNAME_CLEAR_ROLLER_COUNT; ++i)
|
||||
dbEntryItems[i] = false;
|
||||
|
||||
std::vector<AnalysisJson::json_node> list_jsonNode = analysisJson.GetNode();
|
||||
int count = list_jsonNode.size();
|
||||
ui->tableWidget->setRowCount(count);
|
||||
|
@ -219,12 +246,47 @@ void Form_mainInterface::initTableWidgetUi()
|
|||
{
|
||||
ui->tableWidget->item(i, 2)->setBackgroundColor(QColor(0,255,0));
|
||||
}
|
||||
|
||||
HGUInt entry = getTestItem(node.title);
|
||||
std::map<HGUInt, bool>::iterator iter;
|
||||
for (iter = dbEntryItems.begin(); iter != dbEntryItems.end(); ++iter)
|
||||
{
|
||||
if (entry == iter->first)
|
||||
{
|
||||
iter->second = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
std::map<HGUInt, bool>::iterator iter;
|
||||
for (iter = dbEntryItems.begin(); iter != dbEntryItems.end(); ++iter)
|
||||
{
|
||||
if (!iter->second)
|
||||
{
|
||||
HGPdtToolDb_SetDeviceEntryStatus(m_pdtToolDbDevice, iter->first, HGPDTTOOLDB_ENTRYSTATUS_NOTSUPP);
|
||||
}
|
||||
}
|
||||
|
||||
ui->tableWidget->selectRow(0);
|
||||
}
|
||||
}
|
||||
|
||||
HGUInt Form_mainInterface::getTestItem(const QString &title)
|
||||
{
|
||||
HGUInt entry = 0;
|
||||
for (int i = 0; i < sizeof(Rela) / sizeof(RELA); ++i)
|
||||
{
|
||||
if (0 == wcscmp(title.toStdWString().c_str(), Rela[i].title))
|
||||
{
|
||||
entry = Rela[i].entryName;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return entry;
|
||||
}
|
||||
|
||||
HGUInt Form_mainInterface::getTestItemStatus(const QString &title)
|
||||
{
|
||||
HGUInt status = 0;
|
||||
|
|
|
@ -20,10 +20,11 @@ class Form_mainInterface : public QWidget
|
|||
|
||||
public:
|
||||
explicit Form_mainInterface(class MainWindow *mainwnd, SANE_Handle handle, HGPdtToolDbUserMgr pdtToolDbuserMgr, HGPdtToolDbDevice pdtToolDbDevice,
|
||||
const QString &serialNum, const QString &devType);
|
||||
const QString &serialNum, const QString &devType, const QString &devName, const QString &devFwNum);
|
||||
~Form_mainInterface();
|
||||
|
||||
QString getSn();
|
||||
QString getDevName();
|
||||
|
||||
protected:
|
||||
void paintEvent(QPaintEvent *event) override;
|
||||
|
@ -43,6 +44,7 @@ private slots:
|
|||
|
||||
private:
|
||||
void initTableWidgetUi();
|
||||
HGUInt getTestItem(const QString &title);
|
||||
HGUInt getTestItemStatus(const QString &title);
|
||||
bool setTestItemStatus(const QString &title, HGUInt status);
|
||||
QString getItemStatusStr(HGUInt status);
|
||||
|
@ -60,6 +62,8 @@ private:
|
|||
HGPdtToolDbDevice m_pdtToolDbDevice;
|
||||
QString m_serialNum;
|
||||
QString m_devType;
|
||||
QString m_devName;
|
||||
QString m_devFwNum;
|
||||
|
||||
QMap<QString, AnalysisJson::json_node> m_map_title_name;
|
||||
};
|
||||
|
|
|
@ -27,6 +27,10 @@ MainWindow::MainWindow(HGPdtToolDbUserMgr pdtToolDbuserMgr, QWidget *parent)
|
|||
|
||||
m_top_splitter = new QSplitter(Qt::Horizontal);
|
||||
m_bot_splitter = new QSplitter(Qt::Horizontal);
|
||||
m_top_splitter->setMinimumWidth(600);
|
||||
m_bot_splitter->setMinimumWidth(600);
|
||||
m_top_splitter->setChildrenCollapsible(false);
|
||||
m_bot_splitter->setChildrenCollapsible(false);
|
||||
|
||||
QVBoxLayout *vLayout = new QVBoxLayout;
|
||||
vLayout->addWidget(m_top_splitter);
|
||||
|
@ -72,7 +76,7 @@ MainWindow::~MainWindow()
|
|||
delete interface;
|
||||
}
|
||||
|
||||
//sane_exit();
|
||||
sane_exit();
|
||||
|
||||
HGPdtToolDb_DestroyUserMgr(m_pdtToolDbuserMgr);
|
||||
m_pdtToolDbuserMgr = NULL;
|
||||
|
@ -132,6 +136,29 @@ Form_mainInterface* MainWindow::FindInterface(const QString &sn)
|
|||
return nullptr;
|
||||
}
|
||||
|
||||
Form_mainInterface *MainWindow::FindInterfaceByDevName(const QString &devName)
|
||||
{
|
||||
for (int i = 0; i < m_top_splitter->count(); ++i)
|
||||
{
|
||||
Form_mainInterface *interface = (Form_mainInterface *)m_top_splitter->widget(i);
|
||||
if (devName == interface->getDevName())
|
||||
{
|
||||
return interface;
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < m_bot_splitter->count(); ++i)
|
||||
{
|
||||
Form_mainInterface *interface = (Form_mainInterface *)m_bot_splitter->widget(i);
|
||||
if (devName == interface->getDevName())
|
||||
{
|
||||
return interface;
|
||||
}
|
||||
}
|
||||
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool MainWindow::AddInterface(Form_mainInterface *interface)
|
||||
{
|
||||
assert(nullptr != interface);
|
||||
|
@ -181,11 +208,11 @@ int MainWindow::sane_ex_callback(SANE_Handle hdev, int code, void *data, unsigne
|
|||
break;
|
||||
}
|
||||
|
||||
if (!hdev)
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
p->hg->cb_(hdev, code, data, len, NULL);
|
||||
// if (!hdev)
|
||||
// {
|
||||
// return -1;
|
||||
// }
|
||||
// p->hg->cb_(hdev, code, data, len, NULL);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -234,6 +261,19 @@ QString MainWindow::getDevType(SANE_Handle handle)
|
|||
return str.left(2) + "00";
|
||||
}
|
||||
|
||||
QString MainWindow::getDevFwNum(SANE_Handle handle)
|
||||
{
|
||||
std::string firmWareNum;
|
||||
unsigned int firmWareNumLen = 0;
|
||||
if(SANE_STATUS_NO_MEM == sane_io_control(handle, IO_CTRL_CODE_GET_HARDWARE_VERSION, nullptr, &firmWareNumLen) && firmWareNumLen)
|
||||
{
|
||||
firmWareNum.resize(firmWareNumLen);
|
||||
sane_io_control(handle, IO_CTRL_CODE_GET_HARDWARE_VERSION, &firmWareNum[0], &firmWareNumLen);
|
||||
}
|
||||
|
||||
return QString::fromStdString(firmWareNum.c_str());
|
||||
}
|
||||
|
||||
void MainWindow::on_sane_dev_arrive(QString devName)
|
||||
{
|
||||
QMessageBox msg(QMessageBox::Question, tr("tips"),
|
||||
|
@ -253,7 +293,8 @@ void MainWindow::on_sane_dev_arrive(QString devName)
|
|||
HGPdtToolDbDevice pdtToolDbDevice = nullptr;
|
||||
HGPdtToolDb_OpenDevice(m_pdtToolDbuserMgr, dlg.GetSn().toStdString().c_str(), &pdtToolDbDevice);
|
||||
|
||||
Form_mainInterface *mainInterface = new Form_mainInterface(this, devHandle, m_pdtToolDbuserMgr, pdtToolDbDevice, dlg.GetSn(), dlg.GetDevType());
|
||||
Form_mainInterface *mainInterface = new Form_mainInterface(this, devHandle, m_pdtToolDbuserMgr, pdtToolDbDevice,
|
||||
dlg.GetSn(), dlg.GetDevType(), devName, getDevFwNum(devHandle));
|
||||
if (!AddInterface(mainInterface))
|
||||
{
|
||||
QMessageBox::information(this, tr("tips"), tr("cannot create more table"));
|
||||
|
@ -262,14 +303,19 @@ void MainWindow::on_sane_dev_arrive(QString devName)
|
|||
}
|
||||
else
|
||||
{
|
||||
// sane_close(devHandle);
|
||||
sane_close(devHandle);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::on_sane_dev_remove(QString devName)
|
||||
{
|
||||
|
||||
Form_mainInterface *interface = FindInterfaceByDevName(devName);
|
||||
if (interface != nullptr)
|
||||
{
|
||||
QMessageBox::information(this, tr("tips"), tr("The device has disconnected"));
|
||||
RemoveInterface(interface);
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindow::on_update_userStatus()
|
||||
|
@ -310,7 +356,7 @@ void MainWindow::on_act_newDevice_triggered()
|
|||
HGPdtToolDbDevice pdtToolDbDevice = nullptr;
|
||||
HGPdtToolDb_OpenDevice(m_pdtToolDbuserMgr, dlg.GetSn().toStdString().c_str(), &pdtToolDbDevice);
|
||||
|
||||
Form_mainInterface *mainInterface = new Form_mainInterface(this, nullptr, m_pdtToolDbuserMgr, pdtToolDbDevice, dlg.GetSn(), dlg.GetDevType());
|
||||
Form_mainInterface *mainInterface = new Form_mainInterface(this, nullptr, m_pdtToolDbuserMgr, pdtToolDbDevice, dlg.GetSn(), dlg.GetDevType(), nullptr, nullptr);
|
||||
if (!AddInterface(mainInterface))
|
||||
{
|
||||
QMessageBox::information(this, tr("tips"), tr("cannot create more table"));
|
||||
|
@ -336,7 +382,14 @@ void MainWindow::on_act_export_triggered()
|
|||
QString filename = QFileDialog::getSaveFileName(this, tr("save"), "test.xls", tr("xls(*.xls)"));
|
||||
if (!filename.isEmpty())
|
||||
{
|
||||
HGPdtToolDb_Export(m_pdtToolDbuserMgr, getStdString(filename).c_str());
|
||||
if (HGBASE_ERR_OK == HGPdtToolDb_Export(m_pdtToolDbuserMgr, getStdString(filename).c_str()))
|
||||
{
|
||||
QMessageBox::information(this, tr("tips"), tr("export succeed"));
|
||||
}
|
||||
else
|
||||
{
|
||||
QMessageBox::information(this, tr("tips"), tr("export failed"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -25,6 +25,7 @@ public:
|
|||
|
||||
void updateSplitter();
|
||||
Form_mainInterface* FindInterface(const QString &sn);
|
||||
Form_mainInterface* FindInterfaceByDevName(const QString &devName);
|
||||
bool AddInterface(Form_mainInterface *interface);
|
||||
bool RemoveInterface(Form_mainInterface *interface);
|
||||
|
||||
|
@ -34,6 +35,7 @@ private:
|
|||
std::vector<std::string> getDevices();
|
||||
QString getDevSn(SANE_Handle handle);
|
||||
QString getDevType(SANE_Handle handle);
|
||||
QString getDevFwNum(SANE_Handle handle);
|
||||
|
||||
signals:
|
||||
void sane_dev_arrive(QString devName);
|
||||
|
|
Loading…
Reference in New Issue