Merge branch 'master' of http://192.168.100.140:8099/sane/code_app
This commit is contained in:
commit
08a7ac14a5
|
@ -39,6 +39,7 @@
|
|||
#include "app_cfg.h"
|
||||
|
||||
#define PASSWORD_KEY 4
|
||||
#define MY_URL_SCHEME "inscanner"
|
||||
|
||||
MainWindow::MainWindow(QWidget *parent)
|
||||
: QMainWindow(parent)
|
||||
|
@ -2066,6 +2067,31 @@ void MainWindow::on_act_help_triggered()
|
|||
QDesktopServices::openUrl(QUrl::fromLocalFile(filename));
|
||||
}
|
||||
|
||||
void MainWindow::my_url_handler(const QUrl& url)
|
||||
{
|
||||
QMessageBox::about(this, "hello", url.url());
|
||||
|
||||
std::string to(url.url().toStdString());
|
||||
|
||||
if(to.find("://clear-roller") != std::string::npos)
|
||||
{
|
||||
unsigned int count = 0;
|
||||
int ret = sane_io_control(cur_dev_.handle(), IO_CTRL_CODE_CLEAR_ROLLER_COUNT, nullptr, &count);
|
||||
|
||||
QString info;
|
||||
if(ret == SANE_STATUS_GOOD)
|
||||
{
|
||||
info = tr("Roller scanned count has been set to 0.");
|
||||
|
||||
// +请重新进入关于界面以获取最新值
|
||||
info += QString::fromStdString("\350\257\267\351\207\215\346\226\260\350\277\233\345\205\245\345\205\263\344\272\216\347\225\214\351\235\242\344\273\245\350\216\267\345\217\226\346\234\200\346\226\260\345\200\274");
|
||||
}
|
||||
else
|
||||
info = tr("Roller scanned count reset failed.");
|
||||
|
||||
QMessageBox::information(this, tr("hint"), info);
|
||||
}
|
||||
}
|
||||
void MainWindow::on_act_about_triggered()
|
||||
{
|
||||
QString company;
|
||||
|
@ -2087,6 +2113,7 @@ void MainWindow::on_act_about_triggered()
|
|||
"<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));
|
||||
|
||||
QDesktopServices::setUrlHandler(MY_URL_SCHEME, this, "my_url_handler");
|
||||
if (sane_io_control(cur_dev_.handle(), IO_CTRL_CODE_ABOUT_INFO, about, &len) == SANE_STATUS_NO_MEM)
|
||||
{
|
||||
about = (SANE_About*)malloc(len + 128);
|
||||
|
@ -2101,15 +2128,23 @@ void MainWindow::on_act_about_triggered()
|
|||
for (int i = 0; about->appendix[i].key; ++i)
|
||||
{
|
||||
if(about->appendix[i].url)
|
||||
content += tr("<p>%1: <a href='%2'>%3</a></p>").arg(about->appendix[i].key).arg(about->appendix[i].url).arg(about->appendix[i].content);
|
||||
content += tr("<p>%1: <a href='%2'>%3</a>").arg(about->appendix[i].key).arg(about->appendix[i].url).arg(about->appendix[i].content);
|
||||
else
|
||||
content += tr("<p>%1: %2</p>").arg(about->appendix[i].key).arg(about->appendix[i].content);
|
||||
content += tr("<p>%1: %2").arg(about->appendix[i].key).arg(about->appendix[i].content);
|
||||
if(strcmp(about->appendix[i].key, "\346\273\232\350\275\264\345\274\240\346\225\260") == 0)
|
||||
{
|
||||
char url[128] = {0};
|
||||
sprintf(url, " <a href=%s://clear-roller>\346\270\205\351\231\244</a>", MY_URL_SCHEME);
|
||||
content += QString::fromStdString(url);
|
||||
}
|
||||
content += "</p>";
|
||||
}
|
||||
}
|
||||
free(about);
|
||||
}
|
||||
}
|
||||
QMessageBox::about(this, title, content);
|
||||
QDesktopServices::unsetUrlHandler(MY_URL_SCHEME);
|
||||
}
|
||||
|
||||
void MainWindow::on_act_scannerSettings_triggered()
|
||||
|
|
|
@ -192,6 +192,9 @@ private slots:
|
|||
|
||||
void on_scanOptions_changed(const QString &device, const QString &option, bool checked_now);
|
||||
|
||||
public slots:
|
||||
void my_url_handler(const QUrl& url);
|
||||
|
||||
protected:
|
||||
virtual void closeEvent(QCloseEvent *e) override;
|
||||
|
||||
|
|
Loading…
Reference in New Issue