From 9be9ac9181c42c27839889e9ec6af1f9cf3120f4 Mon Sep 17 00:00:00 2001 From: yangjiaxuan <171295266@qq.com> Date: Thu, 2 Feb 2023 11:44:17 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E8=AE=BE=E5=A4=87=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E6=A0=8F=E8=8B=B1=E6=96=87=E9=85=8D=E7=BD=AE=E4=B8=8D?= =?UTF-8?q?=E7=94=9F=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/scanner/device_menu.h | 7 +++++-- app/scanner/hg_settingdialog.cpp | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/scanner/device_menu.h b/app/scanner/device_menu.h index 0c34ea54..316f2bcf 100644 --- a/app/scanner/device_menu.h +++ b/app/scanner/device_menu.h @@ -8,6 +8,7 @@ #include "../../../sdk/include/huagao/hgscanner_error.h" #include "cfg/gb_json.h" +#include "lang/app_language.h" typedef struct _scanner { @@ -232,7 +233,8 @@ public: char *buf = new char[opt->size + 4]; memset(buf, 0, opt->size + 4); sane_io_control(h, IO_CTRL_CODE_GET_DEFAULT_VALUE, buf, &n); - schm->set_default_value(i, opt->name, buf, strlen(buf)); + std::string langCN(to_default_language(buf, nullptr)); + schm->set_default_value(i, opt->name, &langCN[0], langCN.length()); delete[] buf; } } @@ -262,7 +264,8 @@ public: char *buf = new char[opt->size + 4]; memset(buf, 0, opt->size + 4); strcpy(buf, val.c_str()); - sane_control_option(h, id, SANE_ACTION_SET_VALUE, buf, &none); + std::string langCN(from_default_language(buf, nullptr)); + sane_control_option(h, id, SANE_ACTION_SET_VALUE, &langCN[0], &none); delete[] buf; } else { diff --git a/app/scanner/hg_settingdialog.cpp b/app/scanner/hg_settingdialog.cpp index 6d8be19c..f1092634 100644 --- a/app/scanner/hg_settingdialog.cpp +++ b/app/scanner/hg_settingdialog.cpp @@ -150,7 +150,8 @@ void hg_settingdialog::updateOpt() unsigned int n = i; int err = sane_io_control(m_handle, IO_CTRL_CODE_GET_DEFAULT_VALUE, init, &n); (void)err; - cur_scheme_->set_default_value(i, opt->name, init, strlen(init)); + std::string langCN(to_default_language(init, nullptr)); + cur_scheme_->set_default_value(i, opt->name, &langCN[0], langCN.length()); } free(init); } @@ -158,7 +159,6 @@ void hg_settingdialog::updateOpt() { m_list_defaultOptions.append(QPair(opt, QVariant(0))); } - } } }