Merge branch 'master' of http://cd.holdtecs.net:8099/sane/code_production
This commit is contained in:
commit
96ba574f68
|
@ -3,10 +3,10 @@
|
||||||
#include <QMessageBox>
|
#include <QMessageBox>
|
||||||
#include "mainwindow.h"
|
#include "mainwindow.h"
|
||||||
|
|
||||||
Dialog_logIn::Dialog_logIn(QWidget *parent) :
|
Dialog_logIn::Dialog_logIn(class MainWindow *mainwindow) :
|
||||||
QDialog(parent),
|
QDialog(nullptr),
|
||||||
m_pdtToolDbuserMgr(nullptr),
|
|
||||||
ui(new Ui::Dialog_logIn)
|
ui(new Ui::Dialog_logIn)
|
||||||
|
, m_mainwindow(mainwindow)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
|
|
||||||
|
@ -36,11 +36,6 @@ Dialog_logIn::~Dialog_logIn()
|
||||||
delete ui;
|
delete ui;
|
||||||
}
|
}
|
||||||
|
|
||||||
HGPdtToolDbUserMgr Dialog_logIn::GetUserMgr()
|
|
||||||
{
|
|
||||||
return m_pdtToolDbuserMgr;
|
|
||||||
}
|
|
||||||
|
|
||||||
void Dialog_logIn::mousePressEvent(QMouseEvent *event)
|
void Dialog_logIn::mousePressEvent(QMouseEvent *event)
|
||||||
{
|
{
|
||||||
if(event->button()==Qt::LeftButton)
|
if(event->button()==Qt::LeftButton)
|
||||||
|
@ -74,9 +69,9 @@ void Dialog_logIn::on_pbtn_login_clicked()
|
||||||
QString host = ui->lineEdit_host->text();
|
QString host = ui->lineEdit_host->text();
|
||||||
QString port = ui->lineEdit_port->text();
|
QString port = ui->lineEdit_port->text();
|
||||||
|
|
||||||
HGResult ret = HGPdtToolDb_CreateUserMgr(host.toStdString().c_str(), port.toInt(),
|
HGResult ret = HGPdtToolDb_CreateUserMgr(host.toStdString().c_str(), port.toInt(), account.toStdString().c_str(), password.toStdString().c_str(),
|
||||||
account.toStdString().c_str(), password.toStdString().c_str(), &m_pdtToolDbuserMgr);
|
MainWindow::PdtToolDbUserEventFunc, m_mainwindow, &m_mainwindow->m_pdtToolDbuserMgr);
|
||||||
if (NULL != m_pdtToolDbuserMgr)
|
if (NULL != m_mainwindow->m_pdtToolDbuserMgr)
|
||||||
{
|
{
|
||||||
accept();
|
accept();
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,11 +13,9 @@ class Dialog_logIn : public QDialog
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit Dialog_logIn(QWidget *parent = nullptr);
|
explicit Dialog_logIn(class MainWindow *mainwindow);
|
||||||
~Dialog_logIn();
|
~Dialog_logIn();
|
||||||
|
|
||||||
HGPdtToolDbUserMgr GetUserMgr();
|
|
||||||
|
|
||||||
void mousePressEvent(QMouseEvent *event);
|
void mousePressEvent(QMouseEvent *event);
|
||||||
void mouseMoveEvent(QMouseEvent *event);
|
void mouseMoveEvent(QMouseEvent *event);
|
||||||
void mouseReleaseEvent(QMouseEvent *event);
|
void mouseReleaseEvent(QMouseEvent *event);
|
||||||
|
@ -35,8 +33,8 @@ private slots:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Ui::Dialog_logIn *ui;
|
Ui::Dialog_logIn *ui;
|
||||||
|
class MainWindow *m_mainwindow;
|
||||||
|
|
||||||
HGPdtToolDbUserMgr m_pdtToolDbuserMgr;
|
|
||||||
QPoint m_startPos;
|
QPoint m_startPos;
|
||||||
QPoint m_endPos;
|
QPoint m_endPos;
|
||||||
bool m_leftMousePressed;
|
bool m_leftMousePressed;
|
||||||
|
|
|
@ -17,7 +17,7 @@ Form_mainInterface::Form_mainInterface(QWidget *parent)
|
||||||
ui->stackedWidget->addWidget(m_textTips);
|
ui->stackedWidget->addWidget(m_textTips);
|
||||||
ui->stackedWidget->addWidget(m_view);
|
ui->stackedWidget->addWidget(m_view);
|
||||||
|
|
||||||
QString path("../../doc/newconfig.json");
|
QString path("../../doc/config.json");
|
||||||
AnalysisJson analysisJson(path);
|
AnalysisJson analysisJson(path);
|
||||||
|
|
||||||
std::vector<AnalysisJson::json_node> list_jsonNode = analysisJson.GetNode();
|
std::vector<AnalysisJson::json_node> list_jsonNode = analysisJson.GetNode();
|
||||||
|
|
|
@ -15,16 +15,15 @@ int main(int argc, char *argv[])
|
||||||
|
|
||||||
while (1)
|
while (1)
|
||||||
{
|
{
|
||||||
Dialog_logIn login;
|
MainWindow w;
|
||||||
|
|
||||||
|
Dialog_logIn login(&w);
|
||||||
if (login.exec())
|
if (login.exec())
|
||||||
{
|
{
|
||||||
HGPdtToolDbUserMgr userMgr = login.GetUserMgr();
|
w.Init();
|
||||||
assert(nullptr != userMgr);
|
|
||||||
|
|
||||||
MainWindow w(userMgr);
|
|
||||||
w.showMaximized();
|
w.showMaximized();
|
||||||
a.exec();
|
a.exec();
|
||||||
|
w.Deinit();
|
||||||
if (w.isExitApp())
|
if (w.isExitApp())
|
||||||
{
|
{
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -9,10 +9,10 @@
|
||||||
#include "dialog_uploadcfgfile.h"
|
#include "dialog_uploadcfgfile.h"
|
||||||
#include "hgscanner.h"
|
#include "hgscanner.h"
|
||||||
|
|
||||||
MainWindow::MainWindow(HGPdtToolDbUserMgr userMgr, QWidget *parent)
|
MainWindow::MainWindow(QWidget *parent)
|
||||||
: QMainWindow(parent)
|
: QMainWindow(parent)
|
||||||
, ui(new Ui::MainWindow)
|
, ui(new Ui::MainWindow)
|
||||||
, m_pdtToolDbuserMgr(userMgr)
|
, m_pdtToolDbuserMgr(nullptr)
|
||||||
, m_form_mainInterface(nullptr)
|
, m_form_mainInterface(nullptr)
|
||||||
, m_top_splitter(nullptr)
|
, m_top_splitter(nullptr)
|
||||||
, m_bot_splitter(nullptr)
|
, m_bot_splitter(nullptr)
|
||||||
|
@ -25,18 +25,7 @@ MainWindow::MainWindow(HGPdtToolDbUserMgr userMgr, QWidget *parent)
|
||||||
|
|
||||||
connect(this, SIGNAL(sane_dev_arrive(QString)), this, SLOT(on_sane_dev_arrive(QString)), Qt::QueuedConnection);
|
connect(this, SIGNAL(sane_dev_arrive(QString)), this, SLOT(on_sane_dev_arrive(QString)), Qt::QueuedConnection);
|
||||||
connect(this, SIGNAL(sane_dev_remove(QString)), this, SLOT(on_sane_dev_remove(QString)), Qt::QueuedConnection);
|
connect(this, SIGNAL(sane_dev_remove(QString)), this, SLOT(on_sane_dev_remove(QString)), Qt::QueuedConnection);
|
||||||
|
connect(this, SIGNAL(user_event(int)), this, SLOT(on_user_event(int)), Qt::QueuedConnection);
|
||||||
SANE_Int v = 0;
|
|
||||||
sane_init_ex(&v, sane_ex_callback, this);
|
|
||||||
|
|
||||||
HGUInt userType = 0;
|
|
||||||
HGPdtToolDb_GetUserType(m_pdtToolDbuserMgr, &userType);
|
|
||||||
if (userType == HGPDTTOOLDB_USERTYPE_NORMAL)
|
|
||||||
ui->act_manage->setVisible(false);
|
|
||||||
|
|
||||||
HGChar userName[128];
|
|
||||||
HGPdtToolDb_GetUserName(m_pdtToolDbuserMgr, userName, 128);
|
|
||||||
setWindowTitle(userName);
|
|
||||||
|
|
||||||
m_top_splitter = new QSplitter(Qt::Horizontal);
|
m_top_splitter = new QSplitter(Qt::Horizontal);
|
||||||
m_bot_splitter = new QSplitter(Qt::Horizontal);
|
m_bot_splitter = new QSplitter(Qt::Horizontal);
|
||||||
|
@ -53,10 +42,37 @@ MainWindow::MainWindow(HGPdtToolDbUserMgr userMgr, QWidget *parent)
|
||||||
|
|
||||||
MainWindow::~MainWindow()
|
MainWindow::~MainWindow()
|
||||||
{
|
{
|
||||||
|
delete ui;
|
||||||
|
}
|
||||||
|
|
||||||
|
void MainWindow::Init()
|
||||||
|
{
|
||||||
|
assert(nullptr != m_pdtToolDbuserMgr);
|
||||||
|
|
||||||
|
HGUInt userType = 0;
|
||||||
|
HGPdtToolDb_GetUserType(m_pdtToolDbuserMgr, &userType);
|
||||||
|
if (userType == HGPDTTOOLDB_USERTYPE_NORMAL)
|
||||||
|
ui->act_manage->setVisible(false);
|
||||||
|
|
||||||
|
HGChar userName[128];
|
||||||
|
HGPdtToolDb_GetUserName(m_pdtToolDbuserMgr, userName, 128);
|
||||||
|
setWindowTitle(userName);
|
||||||
|
|
||||||
|
SANE_Int v = 0;
|
||||||
|
sane_init_ex(&v, sane_ex_callback, this);
|
||||||
|
}
|
||||||
|
|
||||||
|
void MainWindow::Deinit()
|
||||||
|
{
|
||||||
|
// if (nullptr != m_handle)
|
||||||
|
// {
|
||||||
|
// sane_close(m_handle);
|
||||||
|
// m_handle = nullptr;
|
||||||
|
// }
|
||||||
|
// sane_exit();
|
||||||
|
|
||||||
HGPdtToolDb_DestroyUserMgr(m_pdtToolDbuserMgr);
|
HGPdtToolDb_DestroyUserMgr(m_pdtToolDbuserMgr);
|
||||||
m_pdtToolDbuserMgr = NULL;
|
m_pdtToolDbuserMgr = NULL;
|
||||||
|
|
||||||
delete ui;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool MainWindow::isExitApp()
|
bool MainWindow::isExitApp()
|
||||||
|
@ -64,6 +80,16 @@ bool MainWindow::isExitApp()
|
||||||
return !m_isLogOut;
|
return !m_isLogOut;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void HGAPI MainWindow::PdtToolDbUserEventFunc(HGPdtToolDbUserMgr userMgr, HGUInt event, HGPointer param)
|
||||||
|
{
|
||||||
|
MainWindow *p = (MainWindow *)param;
|
||||||
|
|
||||||
|
if (0 != event)
|
||||||
|
{
|
||||||
|
emit p->user_event(event);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int MainWindow::sane_ex_callback(SANE_Handle hdev, int code, void *data, unsigned int *len, void *param)
|
int MainWindow::sane_ex_callback(SANE_Handle hdev, int code, void *data, unsigned int *len, void *param)
|
||||||
{
|
{
|
||||||
(void)hdev;
|
(void)hdev;
|
||||||
|
@ -109,12 +135,12 @@ std::vector<std::string> MainWindow::getDevices()
|
||||||
|
|
||||||
void MainWindow::on_sane_dev_arrive(QString devName)
|
void MainWindow::on_sane_dev_arrive(QString devName)
|
||||||
{
|
{
|
||||||
SANE_Status ret = sane_open(devName.toStdString().c_str(), &m_handle);
|
// SANE_Status ret = sane_open(devName.toStdString().c_str(), &m_handle);
|
||||||
|
|
||||||
ui_helper* helper;
|
// ui_helper* helper;
|
||||||
hgscanner* hg = new hgscanner(m_handle);
|
// hgscanner* hg = new hgscanner(m_handle);
|
||||||
helper = dynamic_cast<hgscanner*>(hg);
|
// helper = dynamic_cast<hgscanner*>(hg);
|
||||||
func_test_go(L"test-31", L"null", helper);
|
// func_test_go(L"test-31", L"null", helper);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::on_sane_dev_remove(QString devName)
|
void MainWindow::on_sane_dev_remove(QString devName)
|
||||||
|
@ -122,6 +148,30 @@ void MainWindow::on_sane_dev_remove(QString devName)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void MainWindow::on_user_event(int event)
|
||||||
|
{
|
||||||
|
QString tips;
|
||||||
|
switch (event)
|
||||||
|
{
|
||||||
|
case 1:
|
||||||
|
tips = tr("Account login elsewhere");
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
tips = tr("Network connection lost");
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
tips = tr("You have been forced offline by the administrator account");
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
QMessageBox::information(this, (tr("tips")), tips);
|
||||||
|
|
||||||
|
m_isLogOut = true;
|
||||||
|
close();
|
||||||
|
}
|
||||||
|
|
||||||
void MainWindow::on_act_newDevice_triggered()
|
void MainWindow::on_act_newDevice_triggered()
|
||||||
{
|
{
|
||||||
m_splitterCount++;
|
m_splitterCount++;
|
||||||
|
@ -182,7 +232,6 @@ void MainWindow::on_act_export_triggered()
|
||||||
|
|
||||||
void MainWindow::on_act_logOut_triggered()
|
void MainWindow::on_act_logOut_triggered()
|
||||||
{
|
{
|
||||||
HGPdtToolDb_DestroyUserMgr(m_pdtToolDbuserMgr);
|
|
||||||
m_isLogOut = true;
|
m_isLogOut = true;
|
||||||
close();
|
close();
|
||||||
}
|
}
|
||||||
|
@ -222,6 +271,6 @@ QString MainWindow::getLogInfo(HGResult ret)
|
||||||
|
|
||||||
void MainWindow::on_act_upload_triggered()
|
void MainWindow::on_act_upload_triggered()
|
||||||
{
|
{
|
||||||
// Dialog_uploadCfgFile dlg(m_pdtToolDbuserMgr, this);
|
Dialog_uploadCfgFile dlg(m_pdtToolDbuserMgr, this);
|
||||||
//dlg.exec();
|
dlg.exec();
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,17 +13,22 @@ QT_END_NAMESPACE
|
||||||
|
|
||||||
class MainWindow : public QMainWindow
|
class MainWindow : public QMainWindow
|
||||||
{
|
{
|
||||||
|
friend class Dialog_logIn;
|
||||||
|
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
MainWindow(HGPdtToolDbUserMgr userMgr, QWidget *parent = nullptr);
|
MainWindow(QWidget *parent = nullptr);
|
||||||
~MainWindow();
|
~MainWindow();
|
||||||
|
|
||||||
|
void Init();
|
||||||
|
void Deinit();
|
||||||
static QString getLogInfo(HGResult ret);
|
static QString getLogInfo(HGResult ret);
|
||||||
bool isExitApp();
|
bool isExitApp();
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
static void HGAPI PdtToolDbUserEventFunc(HGPdtToolDbUserMgr userMgr, HGUInt event, HGPointer param);
|
||||||
static int sane_ex_callback(SANE_Handle hdev, int code, void* data, unsigned int* len, void* param);
|
static int sane_ex_callback(SANE_Handle hdev, int code, void* data, unsigned int* len, void* param);
|
||||||
|
|
||||||
std::vector<std::string> getDevices();
|
std::vector<std::string> getDevices();
|
||||||
|
@ -31,10 +36,12 @@ private:
|
||||||
signals:
|
signals:
|
||||||
void sane_dev_arrive(QString devName);
|
void sane_dev_arrive(QString devName);
|
||||||
void sane_dev_remove(QString devName);
|
void sane_dev_remove(QString devName);
|
||||||
|
void user_event(int event);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void on_sane_dev_arrive(QString devName);
|
void on_sane_dev_arrive(QString devName);
|
||||||
void on_sane_dev_remove(QString devName);
|
void on_sane_dev_remove(QString devName);
|
||||||
|
void on_user_event(int event);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void on_act_newDevice_triggered();
|
void on_act_newDevice_triggered();
|
||||||
|
|
Loading…
Reference in New Issue