From a1be80f34117f8a4033e0647c5917d4825ce51cb Mon Sep 17 00:00:00 2001 From: yangjiaxuan <171295266@qq.com> Date: Fri, 19 Jan 2024 09:10:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=AE=BE=E7=BD=AE=E5=9B=BA?= =?UTF-8?q?=E4=BB=B6=E8=AF=AD=E8=A8=80=E6=A8=A1=E5=BC=8F=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/HGProductionTool/ProductionTool_zh_CN.qm | Bin 18277 -> 18530 bytes app/HGProductionTool/ProductionTool_zh_CN.ts | 49 +++++++++++++------ app/HGProductionTool/dialog_userinput.cpp | 20 ++++---- app/HGProductionTool/dialog_userinput.h | 1 + app/HGProductionTool/hgscanner.cpp | 5 ++ code/base/test_base.cpp | 40 ++++++++++++++- code/base/test_base.h | 8 ++- 7 files changed, 97 insertions(+), 26 deletions(-) diff --git a/app/HGProductionTool/ProductionTool_zh_CN.qm b/app/HGProductionTool/ProductionTool_zh_CN.qm index 3c3564a0c47a84652b47ced907f50e86a0dc71be..2a7c16ceee801229351de1ec4a1918e88d5a3a6d 100644 GIT binary patch delta 2050 zcmZ8hYgAO_8h-c8zVAJIEV;>L7zQb2V1N)55W&g_Q!a{$W|+W$W256?&=Oq^-V=qy zk+ed)h?gZQr7Kso$RtRFIvq{Ak(pW^Qfrk*PbtUnJUDB$TK(AT+3$CG-}if-=ld?# zF_*S5Tl`Y;i0Cn*==XtBh^#F@jK$6YP9w6F60yBRBkO%=T}{Nr5&3;sKQ-KQ4M7@F z&JJOX40|gHx_0Zax~|&k(mUlPK<05{BaBG7|P3Ac|b)oyvrJ zu9NVV8|~Q(NFU3zIbw)XE13Sl0-`h{bEORY1x(Xvajy^=b-L<6jE6G1_rCiHysElR zTMdq7)P0_lhjm+ZcWS|TdY}IBpsPer^JW#Uv&qA zU#tEbcR31X>n}8*u)dEqXRaa|RmessVE%zjHn|gyG4Ekh$G!=EEo|k^Dx$F|?9wZC zqVdnLn|m)3#qaPQ(%FK8ir5|5Z8-3^Y;zrCOL>QFevtw8dH<`MU_=nP$U{g1rcn-zV8u_GmokUtK zpSq$KmWt!cT{mEXPQJYPCXAQBFA={7LH&HqWE_gC;T!e=#UB3PzZ#%m8sF~1zVY4s z`SAtFlO@DGSx6od&I&2>apjT%h0HnYpu~VM>1QaDa#tv7nT)GgB$O|OWtdpO{cl{q zuup`Va;%GO6`J@~qQs5Dy;G0dDRd=O!XiHly~nfQ)kvZ5&Nei9O1LWZ!-7{t-P;5U zz9t%t3-MDd-XFWn1BnO3;McKG?H6-aWg|W!Zko{qCa#FP(uQO>Cw45mj4NrDv=lU| z{3KcT=EFL>r6;l`5+!^pO}m7K$0SS6((AC;L22pN@Z@l(V{}sExy2~_v9z~c zhG+Imdpm$8K{{FG-NN~exGeprjD>k~rGXp!K~bX|u7R@1Z14MAxaV7Wc775BctkFh z;Z&tbb}ay!lI7wf29RF#VT4IOJOS}AqkLr858(H<+|~y5Wl26+ zBoU39BKNe8##Op1pY77XcbVLm0p}Z{_s&v{wuubTh;tqV90V>oqf6wZ)B)CcODAH^{Um@2v~8ty4h5NN8yzEN*5erSgXF3 zjd*mT+J2Woo?`XO<%tl|q~0zD?=j2O+pcIhuh;P4rUW=7ezGCC0~7{+XviAeMWjnN zl$}C?s1FQ_58@FQ1Vi>!^XToSaO)5tpkndzA)TfH3@RG!n6Vl!M344a2s8^>tNqVo2i3nA znH`wACn-?l8T&0eC)4@jtQ!;PU>Zf`Z**E0; smScFTaOS8#i}~kOxXK((yV>D3FLG6y?a#X%m2Pi+RKU^nk)tC24~TmkDF6Tf delta 1881 zcmX9;cU0476n#m4BfpWvDgq)QfZ$*c1sS5$qg1PC6bBA$*;s6BK|CU-0Z}|GSHxBI z*otCBMWu&2a8MM~9;+xW%2Bi`4q9u$I_l_6^ViLn?|tvxci(-#dutRARw>rlg#{4N zSfU{vzzIZNSAdg=e9XWpM7}GDm{y_zKibf17ZK}EWVdeZM1%P_4iQ9-gKTK{7C4)z zk2UBtQQ)sc{3IfWROGgxNF8!k5!vG|{tS_N9?{&LM1Adu%#DbvAbK>P$kUCOt*eOo z-5{nC1YNs{*#&fS1-65vnwZ@4CXT84`zW*h7H~C z*wEvM4MShpFlsJ&PRs@UL*%*Nik&od?t3Dq2AWxvjqG_e^IZ=#ZKs4DmT2g5%0HWg z_M;SYjO&S9Dioi+nt?7@#iB1>qpK=KPT@L8<9$o9*!~1j)N;joDW6E?tEkWLAquNd zbiR)x3J+2|PK9oLk1DnPTZnW@WxfOc@1L$bcBhNT!(VyEuLSJ`DX+y&M%-)V+j2jm z$aktw9G?&cZ&M|?;GN@7s-oJRA2nwM z(Lg;v<_}CJ%$-lD8IRQ~;L~zo6@@RK^)MdYJmX8!5a-j*S8_)&;(h%8U5B3Ln}=m% zQ+n~OCu88zv3%Rx^-$NJeRvtj-Lxt?tyS{ypWmv z9K?gkOd@r$s#5vcbPnsO~WSi62|;qO!iCa)9T zbnk&gr$mDmlDTJEF0uwQiL;EuFo0AsS%g!iO3^eQsE-#HXIQaZ-1uZK2Jlim;PM9P zy=~|kEgp!%xtC5n-0ME>oyGckOkWhlrUU_Po5Tx8hu{-t6t6aGVclY}Z6utp@e*%O zYatrETAGxJyk>oaH2DJbiA>NzCvxTjgTF93_jYw}yZfir&46i;@51%oy9jUb}DuK7?f21>bU z!?TevnA1);iUs8YwTW>WDD_mEwDK^V7NAYB5_EiFLswQ?{JTLvQpYOnOi zh@75k|22<{X9lv2-L-v$dKHqOL-4#dnfAh ziZU=$58!#s{)lCS+C^vgP}h)OfUjy6?nd^vbO?IODQ9)取消 - + + simpleCN + 简体中文 + + + + trodiCN + 繁体中文 + + + + English + 英文 + + + tips 提示 - + please input valid contents 请输入有效内容 @@ -789,33 +804,39 @@ 登录 - - - - + + + + + Prompt 提示 - + Account dose not exist 账户不存在 - + Password can not be empty 密码不能为空 - + Password error 密码错误 - + Please select a profile first 请先选择配置文件 + + + Profile is not exsits + 配置文件不存在 + Select profile 选择配置文件 @@ -1884,19 +1905,19 @@ QObject - + success: success 成功: - - + + failed: 失败: - + Not find test item 没有找到该测试项 diff --git a/app/HGProductionTool/dialog_userinput.cpp b/app/HGProductionTool/dialog_userinput.cpp index d2bce64..9a54628 100644 --- a/app/HGProductionTool/dialog_userinput.cpp +++ b/app/HGProductionTool/dialog_userinput.cpp @@ -28,14 +28,7 @@ Dialog_UserInput::Dialog_UserInput(ui_helper::value_type type, const QString &ti } else if (type == ui_helper::VAL_TYPE_TIPS_VAL) { - ui_helper::PINFOTIPS p = (ui_helper::PINFOTIPS)desc; - while(*(p->desc) != '\0') - { - ui->comboBox->addItem(QString::number(*(p->desc))); - p->desc++; - } - - ui->label->setText(QString::fromStdWString(p->info)); + ui->label->setText(QString::fromStdWString(desc)); ui->comboBox->setVisible(true); } @@ -77,7 +70,7 @@ parameter *Dialog_UserInput::getParam() } else if (m_type == ui_helper::VAL_TYPE_TIPS_VAL) { - param->m_iData = ui->comboBox->currentText().toInt(); + param->m_iData = ui->comboBox->currentIndex(); } return param; @@ -89,6 +82,15 @@ void Dialog_UserInput::setDistortValue(double value) ui->lineEdit->selectAll(); } +void Dialog_UserInput::setFwLanguageMode() +{ + QStringList mode = { tr("simpleCN"), tr("trodiCN"), tr("English") }; + for (int i = 0; i < mode.size(); i++) + { + ui->comboBox->addItem(mode[i]); + } +} + void Dialog_UserInput::on_pbtn_yes_clicked() { if (ui->lineEdit->text().isEmpty() && (m_type == ui_helper::VAL_TYPE_INT || m_type == ui_helper::VAL_TYPE_FLOAT || m_type == ui_helper::VAL_TYPE_STRING)) diff --git a/app/HGProductionTool/dialog_userinput.h b/app/HGProductionTool/dialog_userinput.h index de6f4db..a084727 100644 --- a/app/HGProductionTool/dialog_userinput.h +++ b/app/HGProductionTool/dialog_userinput.h @@ -35,6 +35,7 @@ public: parameter *getParam(); void setDistortValue(double value); + void setFwLanguageMode(); private slots: void on_pbtn_yes_clicked(); diff --git a/app/HGProductionTool/hgscanner.cpp b/app/HGProductionTool/hgscanner.cpp index 2f9dbd3..762195f 100644 --- a/app/HGProductionTool/hgscanner.cpp +++ b/app/HGProductionTool/hgscanner.cpp @@ -36,6 +36,11 @@ parameter* hgscanner::get_user_input(data_from from, value_type type, const wcha { dlg.setDistortValue(m_distortValue); } + if (wcscmp(L"SET_FIRMWARE_LANGUAGE", title) == 0) + { + dlg.setFwLanguageMode(); + } + if (dlg.exec()) { return dlg.getParam(); diff --git a/code/base/test_base.cpp b/code/base/test_base.cpp index fb3c28f..6d5fe26 100644 --- a/code/base/test_base.cpp +++ b/code/base/test_base.cpp @@ -48,7 +48,8 @@ static struct Test_Map {HGPDTTOOLDB_NAME_GET_DEVICE_CONFIG ,HGPDTTOOLDB_TITLE_GET_DEVICE_CONFIG}, {HGPDTTOOLDB_NAME_GET_DEVICE_CPU_DISK ,HGPDTTOOLDB_TITLE_GET_DEVICE_CPU_DISK}, {HGPDTTOOLDB_NAME_BACKUP ,HGPDTTOOLDB_TITLE_BACKUP}, - {HGPDTTOOLDB_NAME_SHUTDOWN ,HGPDTTOOLDB_TITLE_SHUTDOWN} + {HGPDTTOOLDB_NAME_SHUTDOWN ,HGPDTTOOLDB_TITLE_SHUTDOWN}, + {HGPDTTOOLDB_NAME_SET_FIRMWARE_LANGUAGE ,HGPDTTOOLDB_TITLE_SET_FIRMWARE_LANGUAGE} }; static std::string StringToUtf(std::string strValue) @@ -592,6 +593,7 @@ public: test_map_[HGPDTTOOLDB_NAME_GET_DEVICE_CPU_DISK] = &test::test_get_device_cpu_disk; test_map_[HGPDTTOOLDB_NAME_BACKUP] = &test::test_backup; test_map_[HGPDTTOOLDB_NAME_SHUTDOWN] = &test::test_shutdown; + test_map_[HGPDTTOOLDB_NAME_SET_FIRMWARE_LANGUAGE] = &test::test_set_firmware_language; } int set_test(const wchar_t* name,const wchar_t* oper) { @@ -1534,6 +1536,42 @@ public: int ret = helper_->io_control(IO_CTRL_CODE_SET_DEVS_SHUTDOWN, &val, &len); return ret; } + /* 设置固件语言模式 */ + int test_set_firmware_language(void* data) + { + int mode = 0; + void* get_data = nullptr; + + parameter* ptr = helper_->get_user_input(ui_helper::DATA_FROM_USER, ui_helper::VAL_TYPE_TIPS_VAL, set_test_name_.c_str(), L"请设置固件语言模式"); + if (ptr) + { + get_data = ptr->get_data(); + if (!get_data) + { + helper_->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_RESULT, (void*)L"已退出设置固件语言模式流程", false); + return -1; + } + mode = *((int*)get_data); + } + else + { + helper_->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_RESULT, (void*)L"已退出设置固件语言模式流程", false); + return -1; + } + + int ret = helper_->io_control(IO_CTRL_CODE_SET_FIRMWARE_LANGUAGE, &mode, NULL); + if (ret != SCANNER_ERR_OK) + { + helper_->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_RESULT, (void*)L"不支持设置固件语言模式", false); + return -1; + } + else + { + helper_->test_callback(set_test_name_.c_str(), ui_helper::TEST_EVENT_RESULT, (void*)L"设置固件语言模式成功,重启设备生效", true); + } + + return ret; + } /*设置设备型号*/ int test_set_devs_model(void* data) { diff --git a/code/base/test_base.h b/code/base/test_base.h index ef683b4..ada88db 100644 --- a/code/base/test_base.h +++ b/code/base/test_base.h @@ -96,6 +96,8 @@ #define HGPDTTOOLDB_TITLE_BACKUP L"备份设备配置" /*关机*/ #define HGPDTTOOLDB_TITLE_SHUTDOWN L"关机" +/*设置固件语言模式*/ +#define HGPDTTOOLDB_TITLE_SET_FIRMWARE_LANGUAGE L"设置固件语言模式" //////////////////////////////////////NAME////////////////////////////////////// #define WRITE_CFG_NAME L"write-cfg" /* 设置json序列号 */ @@ -161,7 +163,7 @@ /* 设置畸变修正值 */ #define HGPDTTOOLDB_NAME_SET_DISTORTION_VAL L"SET_DISTORTION_VAL" /* 确认畸变修正值 */ -#define HGPDTTOOLDB_NAME_CONFIRM_DISTORTION_VAL L"CONFIRM_DISTORTION_VAL" +#define HGPDTTOOLDB_NAME_CONFIRM_DISTORTION_VAL L"CONFIRM_DISTORTION_VAL" /* 设置休眠 */ #define HGPDTTOOLDB_NAME_DORMANCY L"DORMANCY" /* 歪斜挡位检测 */ @@ -193,11 +195,13 @@ /*获取设备配置*/ #define HGPDTTOOLDB_NAME_GET_DEVICE_CONFIG L"GET_DEVICE_CONFIG" /*获取设备内存和硬盘容量大小*/ -#define HGPDTTOOLDB_NAME_GET_DEVICE_CPU_DISK L"GET_DEVICE_CPU_DISK" +#define HGPDTTOOLDB_NAME_GET_DEVICE_CPU_DISK L"GET_DEVICE_CPU_DISK" /*备份设备配置*/ #define HGPDTTOOLDB_NAME_BACKUP L"BACKUP" /*关机*/ #define HGPDTTOOLDB_NAME_SHUTDOWN L"SHUTDOWN" +/*设置固件语言模式*/ +#define HGPDTTOOLDB_NAME_SET_FIRMWARE_LANGUAGE L"SET_FIRMWARE_LANGUAGE" #define TEST_DLL #ifdef TEST_DLL