解决设备菜单栏英文配置不生效

This commit is contained in:
yangjiaxuan 2023-02-02 11:44:17 +08:00
parent 9322502d09
commit 9be9ac9181
2 changed files with 7 additions and 4 deletions

View File

@ -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 {

View File

@ -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<const void*, QVariant>(opt, QVariant(0)));
}
}
}
}