调整中晶关于信息

This commit is contained in:
yangjiaxuan 2023-02-03 17:38:13 +08:00
parent 7832505767
commit bd4adef350
1 changed files with 58 additions and 17 deletions

View File

@ -47,6 +47,8 @@
#include "app_cfg.h"
#include <assert.h>
#include "dialog_wrong_img.h"
#include "../../code_device/hgdriver/hgdev/char_const.h"
#include "lang/app_language.h"
#define PASSWORD_KEY 4
#define MY_URL_SCHEME "inscanner"
@ -3096,25 +3098,11 @@ void MainWindow::my_url_handler(const QUrl& url)
}
void MainWindow::on_act_about_triggered()
{
QString company;
QString appName;
QString copyRight;
QString developer;
QString website;
QString contact;
QString afterSelesContact;
QString address;
QString navigation;
SANE_About *about = nullptr;
unsigned int len = 0;
QString title(tr("About %1").arg(company)),
content(tr("<p>%1</p>"
"<p>Version: %2"
"<br>CopyRight: &#169; %3</p>"
"<p>%4%5%6%7%8%9</p>")
.arg(appName).arg("v2.0.9.061").arg(copyRight).arg(developer).arg(website).arg(contact).arg(afterSelesContact).arg(address).arg(navigation));
QString title;
QString content;
std::list<QString> info;
QDesktopServices::setUrlHandler(MY_URL_SCHEME, this, "my_url_handler");
if (sane_io_control(dev_que_.handle(), IO_CTRL_CODE_ABOUT_INFO, about, &len) == SANE_STATUS_NO_MEM)
{
@ -3124,6 +3112,57 @@ void MainWindow::on_act_about_triggered()
memset(about, 0, len + 128);
if (sane_io_control(dev_que_.handle(), IO_CTRL_CODE_ABOUT_INFO, about, &len) == SANE_STATUS_GOOD)
{
#if defined(OEM_ZHONGJING)
title = tr("about %1").arg(QString::fromStdString(about->title));
info.push_back(tr("<p>Version: %1</p>").arg(QString::fromStdString(about->version)));
for (int i = 0; about->appendix[i].key; ++i)
{
if(about->appendix[i].url)
info.push_back(tr("<p>%1: <a href='%2'>%3</a>").arg(about->appendix[i].key).arg(about->appendix[i].url).arg(about->appendix[i].content) + "</p>");
else
info.push_back(tr("<p>%1: %2").arg(about->appendix[i].key).arg(about->appendix[i].content) + "</p>");
}
info.push_back(tr("<p>CopyRight: &#169; %1</p>").arg(QString::fromStdString(about->copyright)));
const char* cmp[] = {
about->version,
BRAND_TITLE_FIRM_VERSION,
BRAND_TITLE_SERIAL_NUM,
BRAND_TITLE_ROLLER_COUNT,
BRAND_TITLE_HISTORY_COUNT,
BRAND_TITLE_IP,
BRAND_TITE_MANUFACTOR,
BRAND_COMPANY_ADDRESS,
BRAND_TITLE_TEL,
BRAND_TITLE_URL,
BRAND_TITLE_GPS,
about->copyright
};
for (int i = 0; i < sizeof(cmp) / sizeof(const char *); ++i)
{
std::list<QString>::iterator iter = info.begin();
while (iter != info.end())
{
if (iter->contains(from_default_language(cmp[i], nullptr)))
{
content += *iter;
info.erase(iter);
break;
}
else
{
++iter;
}
}
}
std::list<QString>::iterator iter = info.begin();
while (iter != info.end())
{
content += *iter;
++iter;
}
#else
title = tr("about %1").arg(QString::fromStdString(about->title));
content = tr("<p>Version: %1</p>").arg(QString::fromStdString(about->version));
content += tr("<p>CopyRight: &#169; %1</p>").arg(QString::fromStdString(about->copyright));
@ -3143,10 +3182,12 @@ void MainWindow::on_act_about_triggered()
}
content += "</p>";
}
#endif
}
free(about);
}
}
QMessageBox::about(this, title, content);
QDesktopServices::unsetUrlHandler(MY_URL_SCHEME);
}