Merge branch 'master' of http://192.168.100.140:8099/sane/code_app
This commit is contained in:
commit
1f44d5c4d6
Binary file not shown.
File diff suppressed because it is too large
Load Diff
|
@ -40,6 +40,11 @@ Dialog_AquireInto::Dialog_AquireInto(QWidget* parent) :
|
||||||
#else
|
#else
|
||||||
ui->lineEdit_fileName->setText(getCfgValue("aquire", "namePrefix", QString("HGScan")));
|
ui->lineEdit_fileName->setText(getCfgValue("aquire", "namePrefix", QString("HGScan")));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(OEM_LISICHENG)
|
||||||
|
ui->cbox_format->removeItem(7);
|
||||||
|
ui->cbox_format->removeItem(6);
|
||||||
|
#endif
|
||||||
ui->spin_index->setValue(getCfgValue("aquire", "startIndex", 1));
|
ui->spin_index->setValue(getCfgValue("aquire", "startIndex", 1));
|
||||||
ui->cbox_digit->setCurrentIndex(getCfgValue("aquire", "digit", 2));
|
ui->cbox_digit->setCurrentIndex(getCfgValue("aquire", "digit", 2));
|
||||||
ui->cbox_evenOdd->setCurrentIndex(getCfgValue("aquire", "evenOdd", 0));
|
ui->cbox_evenOdd->setCurrentIndex(getCfgValue("aquire", "evenOdd", 0));
|
||||||
|
@ -62,6 +67,7 @@ Dialog_AquireInto::Dialog_AquireInto(QWidget* parent) :
|
||||||
|
|
||||||
ui->spin_index->setFixedWidth(160);
|
ui->spin_index->setFixedWidth(160);
|
||||||
ui->cbox_digit->setFixedWidth(80);
|
ui->cbox_digit->setFixedWidth(80);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Dialog_AquireInto::~Dialog_AquireInto()
|
Dialog_AquireInto::~Dialog_AquireInto()
|
||||||
|
|
|
@ -25,6 +25,14 @@ static struct
|
||||||
int attr;
|
int attr;
|
||||||
}g_support_type[] =
|
}g_support_type[] =
|
||||||
{
|
{
|
||||||
|
#if defined(OEM_LISICHENG)
|
||||||
|
{".jpg", "JPG - JPEG / JFIF", FILE_TYPE_ATTR_MORE_OPTIONS}
|
||||||
|
, {".bmp", "BMP - Windows Bitmap", FILE_TYPE_ATTR_NO_MORE_OPTION}
|
||||||
|
, {".png", "PNG - Portable Network Graphics", FILE_TYPE_ATTR_NO_MORE_OPTION}
|
||||||
|
, {".tif", "TIF - TIFF Revision 6", FILE_TYPE_ATTR_CONTAIN_MULTI_PAGES | FILE_TYPE_ATTR_MORE_OPTIONS}
|
||||||
|
, {".pdf", "PDF - Portable Document Format", FILE_TYPE_ATTR_CONTAIN_MULTI_PAGES}
|
||||||
|
, {".ofd", "OFD - Open Fixed-layout Document", FILE_TYPE_ATTR_CONTAIN_MULTI_PAGES}
|
||||||
|
#else
|
||||||
{".jpg", "JPG - JPEG / JFIF", FILE_TYPE_ATTR_MORE_OPTIONS}
|
{".jpg", "JPG - JPEG / JFIF", FILE_TYPE_ATTR_MORE_OPTIONS}
|
||||||
, {".bmp", "BMP - Windows Bitmap", FILE_TYPE_ATTR_NO_MORE_OPTION}
|
, {".bmp", "BMP - Windows Bitmap", FILE_TYPE_ATTR_NO_MORE_OPTION}
|
||||||
, {".png", "PNG - Portable Network Graphics", FILE_TYPE_ATTR_NO_MORE_OPTION}
|
, {".png", "PNG - Portable Network Graphics", FILE_TYPE_ATTR_NO_MORE_OPTION}
|
||||||
|
@ -33,6 +41,7 @@ static struct
|
||||||
, {".ofd", "OFD - Open Fixed-layout Document", FILE_TYPE_ATTR_CONTAIN_MULTI_PAGES}
|
, {".ofd", "OFD - Open Fixed-layout Document", FILE_TYPE_ATTR_CONTAIN_MULTI_PAGES}
|
||||||
, {".pdf", "OCR->PDF - Portable Document Format", FILE_TYPE_ATTR_THIRD_HANDLER}
|
, {".pdf", "OCR->PDF - Portable Document Format", FILE_TYPE_ATTR_THIRD_HANDLER}
|
||||||
, {".ofd", "OCR->OFD - Open Fixed-layout Document", FILE_TYPE_ATTR_THIRD_HANDLER}
|
, {".ofd", "OCR->OFD - Open Fixed-layout Document", FILE_TYPE_ATTR_THIRD_HANDLER}
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
Dialog_Export::Dialog_Export(int total, const std::vector<int> &selectedIndexs, QWidget *parent) :
|
Dialog_Export::Dialog_Export(int total, const std::vector<int> &selectedIndexs, QWidget *parent) :
|
||||||
|
|
|
@ -15,7 +15,14 @@ Dialog_SaveAs::Dialog_SaveAs(QWidget *parent) :
|
||||||
ui->fileDialog->setWindowFlags(ui->fileDialog->windowFlags() & ~Qt::Dialog);
|
ui->fileDialog->setWindowFlags(ui->fileDialog->windowFlags() & ~Qt::Dialog);
|
||||||
ui->fileDialog->setOption(QFileDialog::DontUseNativeDialog, true);
|
ui->fileDialog->setOption(QFileDialog::DontUseNativeDialog, true);
|
||||||
ui->fileDialog->setSizeGripEnabled(false);
|
ui->fileDialog->setSizeGripEnabled(false);
|
||||||
|
#if defined(OEM_LISICHENG)
|
||||||
|
ui->fileDialog->setNameFilter("JPG - JPEG / JFIF(*.jpg);;"
|
||||||
|
"BMP - Windows Bitmap(*.bmp);;"
|
||||||
|
"PNG - Portable Network Graphics(*.png);;"
|
||||||
|
"TIF - TIFF Revision 6(*.tif);;"
|
||||||
|
"PDF - Portable Document Format(*.pdf);;"
|
||||||
|
"OFD - Open Fixed-layout Document(*.ofd)");
|
||||||
|
#else
|
||||||
ui->fileDialog->setNameFilter("JPG - JPEG / JFIF(*.jpg);;"
|
ui->fileDialog->setNameFilter("JPG - JPEG / JFIF(*.jpg);;"
|
||||||
"BMP - Windows Bitmap(*.bmp);;"
|
"BMP - Windows Bitmap(*.bmp);;"
|
||||||
"PNG - Portable Network Graphics(*.png);;"
|
"PNG - Portable Network Graphics(*.png);;"
|
||||||
|
@ -24,6 +31,7 @@ Dialog_SaveAs::Dialog_SaveAs(QWidget *parent) :
|
||||||
"OFD - Open Fixed-layout Document(*.ofd);;"
|
"OFD - Open Fixed-layout Document(*.ofd);;"
|
||||||
"OCR->PDF - Portable Document Format(*.pdf);;"
|
"OCR->PDF - Portable Document Format(*.pdf);;"
|
||||||
"OCR->OFD - Open Fixed-layout Document(*.ofd)");
|
"OCR->OFD - Open Fixed-layout Document(*.ofd)");
|
||||||
|
#endif
|
||||||
|
|
||||||
connect(ui->fileDialog, SIGNAL(accepted()), this, SLOT(on_dialog_accepted()));
|
connect(ui->fileDialog, SIGNAL(accepted()), this, SLOT(on_dialog_accepted()));
|
||||||
connect(ui->fileDialog, SIGNAL(rejected()), this, SLOT(close()));
|
connect(ui->fileDialog, SIGNAL(rejected()), this, SLOT(close()));
|
||||||
|
|
|
@ -78,7 +78,7 @@ void Dialog_updateProgress::ThreadFunc(HGThread thread, HGPointer param)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
emit p->finish();
|
emit p->finish();
|
||||||
emit p->upgradeApp(p->m_savePath);
|
emit p->upgrade(p->m_savePath);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -25,7 +25,7 @@ private:
|
||||||
signals:
|
signals:
|
||||||
void updateProgress(int value);
|
void updateProgress(int value);
|
||||||
void finish();
|
void finish();
|
||||||
void upgradeApp(QString pkgPath);
|
void upgrade(QString pkgPath);
|
||||||
private slots:
|
private slots:
|
||||||
void on_updateProgress(int value);
|
void on_updateProgress(int value);
|
||||||
void on_finish();
|
void on_finish();
|
||||||
|
|
|
@ -0,0 +1,158 @@
|
||||||
|
#include "dialog_upgrade.h"
|
||||||
|
#include "ui_dialog_upgrade.h"
|
||||||
|
#include "base/HGUtility.h"
|
||||||
|
#include <QCryptographicHash>
|
||||||
|
#include <QMessageBox>
|
||||||
|
#include <QDir>
|
||||||
|
#include <QFile>
|
||||||
|
|
||||||
|
Dialog_upgrade::Dialog_upgrade(class VersionDll *versionDll, QWidget *parent) :
|
||||||
|
QDialog(parent)
|
||||||
|
, ui(new Ui::Dialog_upgrade)
|
||||||
|
, m_versionDll(versionDll)
|
||||||
|
{
|
||||||
|
ui->setupUi(this);
|
||||||
|
setWindowTitle(tr("upgrade online"));
|
||||||
|
setWindowFlags(Qt::Dialog | Qt::WindowCloseButtonHint);
|
||||||
|
this->layout()->setSizeConstraint(QLayout::SetFixedSize);
|
||||||
|
|
||||||
|
ui->listWidget->setVisible(false);
|
||||||
|
ui->pbtn_upgrade->setVisible(false);
|
||||||
|
ui->pbtn_install->setVisible(false);
|
||||||
|
ui->pbtn_cancel->setVisible(false);
|
||||||
|
ui->label->setVisible(false);
|
||||||
|
|
||||||
|
HGVersionInfo *versionInfo = NULL;
|
||||||
|
HGUInt versionCount = 0;
|
||||||
|
m_versionDll->GetVersionList(HGVERSION_APPNAME_SCANNER, &versionInfo, &versionCount);
|
||||||
|
|
||||||
|
for(HGUInt i = 0; i < versionCount; ++i)
|
||||||
|
{
|
||||||
|
QListWidgetItem *listwidgetItem = new QListWidgetItem;
|
||||||
|
listwidgetItem->setText(QString(versionInfo[i].version));
|
||||||
|
listwidgetItem->setData(Qt::UserRole, versionInfo[i].url);
|
||||||
|
listwidgetItem->setData(Qt::UserRole+1, versionInfo[i].md5);
|
||||||
|
listwidgetItem->setToolTip(tr("upgrade contents: ") + versionInfo[i].desc + tr(" bug description: ") + versionInfo[i].bugInfo);
|
||||||
|
ui->listWidget->addItem(listwidgetItem);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(ui->listWidget->count() > 0)
|
||||||
|
{
|
||||||
|
QListWidgetItem *item = ui->listWidget->item(0);
|
||||||
|
item->setSelected(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
HGChar currVersion[64] = {0};
|
||||||
|
m_versionDll->GetCurrVersion(HGVERSION_APPNAME_SCANNER, currVersion, 64);
|
||||||
|
HGInt result = 0;
|
||||||
|
std::string newestVersionNum = ui->listWidget->item(0)->text().toStdString().c_str();
|
||||||
|
m_versionDll->CompareVersion(currVersion, newestVersionNum.c_str(), &result);
|
||||||
|
if(result == 0)
|
||||||
|
{
|
||||||
|
ui->label_detectResult->setText(tr("The current version is the latest! The current version number is : ") + currVersion);
|
||||||
|
ui->pbtn_upgrade->setVisible(false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ui->pbtn_upgrade->setVisible(true);
|
||||||
|
ui->label_detectResult->setText(tr("Discover the new version : ") +
|
||||||
|
ui->listWidget->item(0)->text().toStdString().c_str() +
|
||||||
|
tr(" ,the current version is : ") + currVersion);
|
||||||
|
}
|
||||||
|
|
||||||
|
connect(ui->listWidget, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(on_listWidget_itemDoubleClicked(QListWidgetItem*)), Qt::QueuedConnection);
|
||||||
|
|
||||||
|
m_versionDll->ReleaseVersionList(versionInfo, versionCount);
|
||||||
|
}
|
||||||
|
|
||||||
|
Dialog_upgrade::~Dialog_upgrade()
|
||||||
|
{
|
||||||
|
delete ui;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Dialog_upgrade::on_pbtn_install_clicked()
|
||||||
|
{
|
||||||
|
QListWidgetItem *item = ui->listWidget->currentItem();
|
||||||
|
on_listWidget_itemDoubleClicked(item);
|
||||||
|
close();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Dialog_upgrade::on_pbtn_cancel_clicked()
|
||||||
|
{
|
||||||
|
close();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Dialog_upgrade::on_listWidget_itemDoubleClicked(QListWidgetItem *item)
|
||||||
|
{
|
||||||
|
close();
|
||||||
|
|
||||||
|
HGChar currVersion[64] = {0};
|
||||||
|
m_versionDll->GetCurrVersion(HGVERSION_APPNAME_SCANNER, currVersion, 64);
|
||||||
|
|
||||||
|
std::string selectVersionNum = item->text().toStdString().c_str();
|
||||||
|
HGInt result = 0;
|
||||||
|
m_versionDll->CompareVersion(currVersion, selectVersionNum.c_str(), &result);
|
||||||
|
if(result == 0)
|
||||||
|
{
|
||||||
|
QMessageBox::information(this, tr("tip"), tr("Already in current version"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
QString url = item->data(Qt::UserRole).toString();
|
||||||
|
QString versionNum = item->text();
|
||||||
|
QString md5 = item->data(Qt::UserRole+1).toString();
|
||||||
|
|
||||||
|
HGChar savePath[512];
|
||||||
|
HGBase_GetConfigPath(savePath, 512);
|
||||||
|
HGBase_CreateDir(savePath);
|
||||||
|
strcat(savePath, (versionNum + QString("%1").arg(".exe")).toLatin1().data());
|
||||||
|
|
||||||
|
QFile saveFile(savePath);
|
||||||
|
saveFile.open(QFile::ReadOnly);
|
||||||
|
QByteArray fileMsg = saveFile.readAll();
|
||||||
|
saveFile.close();
|
||||||
|
QString md5_2 = QCryptographicHash::hash(fileMsg , QCryptographicHash::Md5).toHex();
|
||||||
|
|
||||||
|
QFile f(savePath);
|
||||||
|
if(!f.exists() || md5 != md5_2)
|
||||||
|
{
|
||||||
|
Dialog_updateProgress *dlg = new Dialog_updateProgress(m_versionDll, url, savePath);
|
||||||
|
dlg->exec();
|
||||||
|
connect(dlg, SIGNAL(upgrade(QString)), this, SLOT(on_upgrade(QString)), Qt::QueuedConnection);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
on_upgrade(savePath);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Dialog_upgrade::on_upgrade(QString pkgPath)
|
||||||
|
{
|
||||||
|
emit upgradeApp(pkgPath);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Dialog_upgrade::on_pbtn_selectVersion_clicked()
|
||||||
|
{
|
||||||
|
if(ui->listWidget->count() == 0)
|
||||||
|
{
|
||||||
|
ui->pbtn_install->setVisible(false);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ui->pbtn_install->setVisible(true);
|
||||||
|
}
|
||||||
|
ui->pbtn_selectVersion->setVisible(false);
|
||||||
|
ui->listWidget->setVisible(true);
|
||||||
|
ui->pbtn_cancel->setVisible(true);
|
||||||
|
ui->label->setVisible(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Dialog_upgrade::on_pbtn_upgrade_clicked()
|
||||||
|
{
|
||||||
|
QListWidgetItem *item = ui->listWidget->item(0);
|
||||||
|
on_listWidget_itemDoubleClicked(item);
|
||||||
|
close();
|
||||||
|
}
|
|
@ -0,0 +1,41 @@
|
||||||
|
#ifndef DIALOG_UPGRADE_H
|
||||||
|
#define DIALOG_UPGRADE_H
|
||||||
|
|
||||||
|
#include <QDialog>
|
||||||
|
#include "VersionDll.h"
|
||||||
|
#include "dialog_updateprogress.h"
|
||||||
|
|
||||||
|
namespace Ui {
|
||||||
|
class Dialog_upgrade;
|
||||||
|
}
|
||||||
|
|
||||||
|
class Dialog_upgrade : public QDialog
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit Dialog_upgrade(class VersionDll *versionDll, QWidget *parent = nullptr);
|
||||||
|
~Dialog_upgrade();
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
void on_pbtn_install_clicked();
|
||||||
|
|
||||||
|
void on_pbtn_cancel_clicked();
|
||||||
|
|
||||||
|
void on_listWidget_itemDoubleClicked(QListWidgetItem *item);
|
||||||
|
void on_upgrade(QString pkgPath);
|
||||||
|
|
||||||
|
void on_pbtn_selectVersion_clicked();
|
||||||
|
|
||||||
|
void on_pbtn_upgrade_clicked();
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void upgradeApp(QString pkgPath);
|
||||||
|
|
||||||
|
private:
|
||||||
|
Ui::Dialog_upgrade *ui;
|
||||||
|
|
||||||
|
VersionDll *m_versionDll;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // DIALOG_UPGRADE_H
|
|
@ -0,0 +1,113 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<ui version="4.0">
|
||||||
|
<class>Dialog_upgrade</class>
|
||||||
|
<widget class="QDialog" name="Dialog_upgrade">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>431</width>
|
||||||
|
<height>253</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="windowTitle">
|
||||||
|
<string>Dialog</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label_detectResult">
|
||||||
|
<property name="text">
|
||||||
|
<string>detect result. versionNum:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_2">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="pbtn_upgrade">
|
||||||
|
<property name="text">
|
||||||
|
<string>upgrade the latest version</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="pbtn_selectVersion">
|
||||||
|
<property name="text">
|
||||||
|
<string>select version</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_3">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="label">
|
||||||
|
<property name="text">
|
||||||
|
<string>Detected installable versions:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QListWidget" name="listWidget"/>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="pbtn_install">
|
||||||
|
<property name="text">
|
||||||
|
<string>install</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="pbtn_cancel">
|
||||||
|
<property name="text">
|
||||||
|
<string>cancel</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<resources/>
|
||||||
|
<connections/>
|
||||||
|
</ui>
|
|
@ -29,6 +29,7 @@
|
||||||
#include "dialog_moveto.h"
|
#include "dialog_moveto.h"
|
||||||
#include "dialog_imageeditor.h"
|
#include "dialog_imageeditor.h"
|
||||||
#include "dialog_updateprogress.h"
|
#include "dialog_updateprogress.h"
|
||||||
|
#include "dialog_upgrade.h"
|
||||||
#include "hg_settingdialog.h"
|
#include "hg_settingdialog.h"
|
||||||
#include "base/HGInfo.h"
|
#include "base/HGInfo.h"
|
||||||
#include "imgfmt/HGPdf.h"
|
#include "imgfmt/HGPdf.h"
|
||||||
|
@ -1092,52 +1093,6 @@ void MainWindow::on_statusInfoDblClick()
|
||||||
m_dialogLog->show();
|
m_dialogLog->show();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::on_upgrade(QListWidgetItem *item)
|
|
||||||
{
|
|
||||||
HGChar currVersion[64] = {0};
|
|
||||||
m_versionDll->GetCurrVersion(HGVERSION_APPNAME_SCANNER, currVersion, 64);
|
|
||||||
|
|
||||||
std::string selectVersionNum = item->text().toStdString().c_str();
|
|
||||||
|
|
||||||
m_listwidget->close();
|
|
||||||
HGInt result = 0;
|
|
||||||
m_versionDll->CompareVersion(currVersion, selectVersionNum.c_str(), &result);
|
|
||||||
if(result == 0)
|
|
||||||
{
|
|
||||||
QMessageBox::information(this, "tip", "Already in current version");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
QString url = item->data(Qt::UserRole).toString();
|
|
||||||
QString versionNum = item->text();
|
|
||||||
QString md5 = item->data(Qt::UserRole+1).toString();
|
|
||||||
|
|
||||||
HGChar savePath[512];
|
|
||||||
HGBase_GetConfigPath(savePath, 512);
|
|
||||||
HGBase_CreateDir(savePath);
|
|
||||||
strcat(savePath, (versionNum + QString("%1").arg(".exe")).toLatin1().data());
|
|
||||||
|
|
||||||
QFile saveFile(savePath);
|
|
||||||
saveFile.open(QFile::ReadOnly);
|
|
||||||
QByteArray fileMsg = saveFile.readAll();
|
|
||||||
saveFile.close();
|
|
||||||
QString md5_2 = QCryptographicHash::hash(fileMsg , QCryptographicHash::Md5).toHex();
|
|
||||||
|
|
||||||
QFile f(savePath);
|
|
||||||
if(!f.exists() || md5 != md5_2)
|
|
||||||
{
|
|
||||||
Dialog_updateProgress *dlg = new Dialog_updateProgress(m_versionDll, url, savePath);
|
|
||||||
dlg->exec();
|
|
||||||
connect(dlg, SIGNAL(upgradeApp(QString)), this, SLOT(on_upgradeApp(QString)), Qt::QueuedConnection);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
on_upgradeApp(savePath);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::on_upgradeApp(QString pkgPath)
|
void MainWindow::on_upgradeApp(QString pkgPath)
|
||||||
{
|
{
|
||||||
QProcess proc;
|
QProcess proc;
|
||||||
|
@ -3187,31 +3142,19 @@ void MainWindow::on_act_sortPages_triggered()
|
||||||
|
|
||||||
void MainWindow::on_actionact_update_triggered()
|
void MainWindow::on_actionact_update_triggered()
|
||||||
{
|
{
|
||||||
m_listwidget = new QListWidget;
|
|
||||||
m_listwidget->setWindowTitle("chose the version");
|
|
||||||
|
|
||||||
HGVersionInfo *versionInfo = NULL;
|
HGVersionInfo *versionInfo = NULL;
|
||||||
HGUInt versionCount = 0;
|
HGUInt versionCount = 0;
|
||||||
m_versionDll->GetVersionList(HGVERSION_APPNAME_SCANNER, &versionInfo, &versionCount);
|
m_versionDll->GetVersionList(HGVERSION_APPNAME_SCANNER, &versionInfo, &versionCount);
|
||||||
|
|
||||||
if(versionCount > 0)
|
if(versionCount > 0)
|
||||||
{
|
{
|
||||||
for(HGUInt i = 0; i < versionCount; ++i)
|
Dialog_upgrade dlg(m_versionDll, this);
|
||||||
{
|
connect(&dlg, SIGNAL(upgradeApp(QString)), this, SLOT(on_upgradeApp(QString)), Qt::QueuedConnection);
|
||||||
QListWidgetItem *listwidgetItem = new QListWidgetItem;
|
dlg.exec();
|
||||||
listwidgetItem->setText(QString(versionInfo[i].version));
|
disconnect(&dlg, SIGNAL(upgradeApp(QString)), this, SLOT(on_upgradeApp(QString)));
|
||||||
listwidgetItem->setData(Qt::UserRole, versionInfo[i].url);
|
|
||||||
listwidgetItem->setData(Qt::UserRole+1, versionInfo[i].md5);
|
|
||||||
listwidgetItem->setToolTip(versionInfo[i].desc + tr(" buginfo: ") + versionInfo[i].bugInfo);
|
|
||||||
m_listwidget->addItem(listwidgetItem);
|
|
||||||
}
|
|
||||||
m_listwidget->show();
|
|
||||||
connect(m_listwidget, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(on_upgrade(QListWidgetItem*)), Qt::QueuedConnection);
|
|
||||||
|
|
||||||
m_versionDll->ReleaseVersionList(versionInfo, versionCount);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
QMessageBox::critical(this, tr("error"), tr("get versionlist failed"));
|
QMessageBox::critical(this, tr("error"), tr("get versionlist failed"));
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -122,7 +122,6 @@ private slots:
|
||||||
void on_continueScan();
|
void on_continueScan();
|
||||||
void on_stopScan();
|
void on_stopScan();
|
||||||
void on_statusInfoDblClick();
|
void on_statusInfoDblClick();
|
||||||
void on_upgrade(QListWidgetItem *item);
|
|
||||||
void on_upgradeApp(QString pkgPath);
|
void on_upgradeApp(QString pkgPath);
|
||||||
|
|
||||||
void on_act_thumbnailBar_triggered(bool checked);
|
void on_act_thumbnailBar_triggered(bool checked);
|
||||||
|
|
|
@ -1132,6 +1132,80 @@ Please make sure the two passwords are the same.</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
</context>
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>Dialog_updateProgress</name>
|
||||||
|
<message>
|
||||||
|
<source>Dialog</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>stop</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
|
<context>
|
||||||
|
<name>Dialog_upgrade</name>
|
||||||
|
<message>
|
||||||
|
<source>Dialog</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>detect result. versionNum:</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>upgrade the latest version</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>select version</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Detected installable versions:</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>install</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>cancel</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>upgrade online</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>upgrade contents: </source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source> bug description: </source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>The current version is the latest! The current version number is : </source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Discover the new version : </source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source> ,the current version is : </source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>tip</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Already in current version</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>GraphicsScene</name>
|
<name>GraphicsScene</name>
|
||||||
<message>
|
<message>
|
||||||
|
@ -1834,6 +1908,18 @@ Are you sure to close?</source>
|
||||||
<source>save, do not remind again</source>
|
<source>save, do not remind again</source>
|
||||||
<translation type="unfinished"></translation>
|
<translation type="unfinished"></translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>act_update</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>error</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>get versionlist failed</source>
|
||||||
|
<translation type="unfinished"></translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Phonon::</name>
|
<name>Phonon::</name>
|
||||||
|
|
|
@ -163,7 +163,8 @@ SOURCES += \
|
||||||
../../../app/scanner/HGUIGlobal.cpp \
|
../../../app/scanner/HGUIGlobal.cpp \
|
||||||
../../../utility/HGString.cpp \
|
../../../utility/HGString.cpp \
|
||||||
../../../app/scanner/dialog_input.cpp \
|
../../../app/scanner/dialog_input.cpp \
|
||||||
../../../app/scanner/dialog_updateprogress.cpp
|
../../../app/scanner/dialog_updateprogress.cpp \
|
||||||
|
../../../app/scanner/dialog_upgrade.cpp
|
||||||
|
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
../../../app/scanner/VersionDll.h \
|
../../../app/scanner/VersionDll.h \
|
||||||
|
@ -209,7 +210,8 @@ HEADERS += \
|
||||||
../../../utility/HGString.h \
|
../../../utility/HGString.h \
|
||||||
../../../app/scanner/dialog_input.h \
|
../../../app/scanner/dialog_input.h \
|
||||||
../../../app/scanner/custom_file_dialog.h \
|
../../../app/scanner/custom_file_dialog.h \
|
||||||
../../../app/scanner/dialog_updateprogress.h
|
../../../app/scanner/dialog_updateprogress.h \
|
||||||
|
../../../app/scanner/dialog_upgrade.h
|
||||||
|
|
||||||
FORMS += \
|
FORMS += \
|
||||||
../../../app/scanner/cutdialog.ui \
|
../../../app/scanner/cutdialog.ui \
|
||||||
|
@ -240,7 +242,8 @@ FORMS += \
|
||||||
../../../app/scanner/widget_statusbar.ui \
|
../../../app/scanner/widget_statusbar.ui \
|
||||||
../../../app/scanner/dialog_log.ui \
|
../../../app/scanner/dialog_log.ui \
|
||||||
../../../app/scanner/dialog_input.ui \
|
../../../app/scanner/dialog_input.ui \
|
||||||
../../../app/scanner/dialog_updateprogress.ui
|
../../../app/scanner/dialog_updateprogress.ui \
|
||||||
|
../../../app/scanner/dialog_upgrade.ui
|
||||||
|
|
||||||
TRANSLATIONS += \
|
TRANSLATIONS += \
|
||||||
../../../app/scanner/Scanner_zh_CN.ts \
|
../../../app/scanner/Scanner_zh_CN.ts \
|
||||||
|
|
Loading…
Reference in New Issue