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 "mainwindow.h"
|
||||
|
||||
Dialog_logIn::Dialog_logIn(QWidget *parent) :
|
||||
QDialog(parent),
|
||||
m_pdtToolDbuserMgr(nullptr),
|
||||
Dialog_logIn::Dialog_logIn(class MainWindow *mainwindow) :
|
||||
QDialog(nullptr),
|
||||
ui(new Ui::Dialog_logIn)
|
||||
, m_mainwindow(mainwindow)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
|
||||
|
@ -36,11 +36,6 @@ Dialog_logIn::~Dialog_logIn()
|
|||
delete ui;
|
||||
}
|
||||
|
||||
HGPdtToolDbUserMgr Dialog_logIn::GetUserMgr()
|
||||
{
|
||||
return m_pdtToolDbuserMgr;
|
||||
}
|
||||
|
||||
void Dialog_logIn::mousePressEvent(QMouseEvent *event)
|
||||
{
|
||||
if(event->button()==Qt::LeftButton)
|
||||
|
@ -74,9 +69,9 @@ void Dialog_logIn::on_pbtn_login_clicked()
|
|||
QString host = ui->lineEdit_host->text();
|
||||
QString port = ui->lineEdit_port->text();
|
||||
|
||||
HGResult ret = HGPdtToolDb_CreateUserMgr(host.toStdString().c_str(), port.toInt(),
|
||||
account.toStdString().c_str(), password.toStdString().c_str(), &m_pdtToolDbuserMgr);
|
||||
if (NULL != m_pdtToolDbuserMgr)
|
||||
HGResult ret = HGPdtToolDb_CreateUserMgr(host.toStdString().c_str(), port.toInt(), account.toStdString().c_str(), password.toStdString().c_str(),
|
||||
MainWindow::PdtToolDbUserEventFunc, m_mainwindow, &m_mainwindow->m_pdtToolDbuserMgr);
|
||||
if (NULL != m_mainwindow->m_pdtToolDbuserMgr)
|
||||
{
|
||||
accept();
|
||||
}
|
||||
|
|
|
@ -13,11 +13,9 @@ class Dialog_logIn : public QDialog
|
|||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit Dialog_logIn(QWidget *parent = nullptr);
|
||||
explicit Dialog_logIn(class MainWindow *mainwindow);
|
||||
~Dialog_logIn();
|
||||
|
||||
HGPdtToolDbUserMgr GetUserMgr();
|
||||
|
||||
void mousePressEvent(QMouseEvent *event);
|
||||
void mouseMoveEvent(QMouseEvent *event);
|
||||
void mouseReleaseEvent(QMouseEvent *event);
|
||||
|
@ -35,8 +33,8 @@ private slots:
|
|||
|
||||
private:
|
||||
Ui::Dialog_logIn *ui;
|
||||
class MainWindow *m_mainwindow;
|
||||
|
||||
HGPdtToolDbUserMgr m_pdtToolDbuserMgr;
|
||||
QPoint m_startPos;
|
||||
QPoint m_endPos;
|
||||
bool m_leftMousePressed;
|
||||
|
|
|
@ -17,7 +17,7 @@ Form_mainInterface::Form_mainInterface(QWidget *parent)
|
|||
ui->stackedWidget->addWidget(m_textTips);
|
||||
ui->stackedWidget->addWidget(m_view);
|
||||
|
||||
QString path("../../doc/newconfig.json");
|
||||
QString path("../../doc/config.json");
|
||||
AnalysisJson analysisJson(path);
|
||||
|
||||
std::vector<AnalysisJson::json_node> list_jsonNode = analysisJson.GetNode();
|
||||
|
|
|
@ -15,16 +15,15 @@ int main(int argc, char *argv[])
|
|||
|
||||
while (1)
|
||||
{
|
||||
Dialog_logIn login;
|
||||
MainWindow w;
|
||||
|
||||
Dialog_logIn login(&w);
|
||||
if (login.exec())
|
||||
{
|
||||
HGPdtToolDbUserMgr userMgr = login.GetUserMgr();
|
||||
assert(nullptr != userMgr);
|
||||
|
||||
MainWindow w(userMgr);
|
||||
w.Init();
|
||||
w.showMaximized();
|
||||
a.exec();
|
||||
|
||||
w.Deinit();
|
||||
if (w.isExitApp())
|
||||
{
|
||||
break;
|
||||
|
|
|
@ -9,10 +9,10 @@
|
|||
#include "dialog_uploadcfgfile.h"
|
||||
#include "hgscanner.h"
|
||||
|
||||
MainWindow::MainWindow(HGPdtToolDbUserMgr userMgr, QWidget *parent)
|
||||
MainWindow::MainWindow(QWidget *parent)
|
||||
: QMainWindow(parent)
|
||||
, ui(new Ui::MainWindow)
|
||||
, m_pdtToolDbuserMgr(userMgr)
|
||||
, m_pdtToolDbuserMgr(nullptr)
|
||||
, m_form_mainInterface(nullptr)
|
||||
, m_top_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_remove(QString)), this, SLOT(on_sane_dev_remove(QString)), 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);
|
||||
connect(this, SIGNAL(user_event(int)), this, SLOT(on_user_event(int)), Qt::QueuedConnection);
|
||||
|
||||
m_top_splitter = new QSplitter(Qt::Horizontal);
|
||||
m_bot_splitter = new QSplitter(Qt::Horizontal);
|
||||
|
@ -53,10 +42,37 @@ MainWindow::MainWindow(HGPdtToolDbUserMgr userMgr, QWidget *parent)
|
|||
|
||||
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);
|
||||
m_pdtToolDbuserMgr = NULL;
|
||||
|
||||
delete ui;
|
||||
}
|
||||
|
||||
bool MainWindow::isExitApp()
|
||||
|
@ -64,6 +80,16 @@ bool MainWindow::isExitApp()
|
|||
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)
|
||||
{
|
||||
(void)hdev;
|
||||
|
@ -109,12 +135,12 @@ std::vector<std::string> MainWindow::getDevices()
|
|||
|
||||
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;
|
||||
hgscanner* hg = new hgscanner(m_handle);
|
||||
helper = dynamic_cast<hgscanner*>(hg);
|
||||
func_test_go(L"test-31", L"null", helper);
|
||||
// ui_helper* helper;
|
||||
// hgscanner* hg = new hgscanner(m_handle);
|
||||
// helper = dynamic_cast<hgscanner*>(hg);
|
||||
// func_test_go(L"test-31", L"null", helper);
|
||||
}
|
||||
|
||||
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()
|
||||
{
|
||||
m_splitterCount++;
|
||||
|
@ -182,7 +232,6 @@ void MainWindow::on_act_export_triggered()
|
|||
|
||||
void MainWindow::on_act_logOut_triggered()
|
||||
{
|
||||
HGPdtToolDb_DestroyUserMgr(m_pdtToolDbuserMgr);
|
||||
m_isLogOut = true;
|
||||
close();
|
||||
}
|
||||
|
@ -222,6 +271,6 @@ QString MainWindow::getLogInfo(HGResult ret)
|
|||
|
||||
void MainWindow::on_act_upload_triggered()
|
||||
{
|
||||
// Dialog_uploadCfgFile dlg(m_pdtToolDbuserMgr, this);
|
||||
//dlg.exec();
|
||||
Dialog_uploadCfgFile dlg(m_pdtToolDbuserMgr, this);
|
||||
dlg.exec();
|
||||
}
|
||||
|
|
|
@ -12,18 +12,23 @@ namespace Ui { class MainWindow; }
|
|||
QT_END_NAMESPACE
|
||||
|
||||
class MainWindow : public QMainWindow
|
||||
{
|
||||
{
|
||||
friend class Dialog_logIn;
|
||||
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
MainWindow(HGPdtToolDbUserMgr userMgr, QWidget *parent = nullptr);
|
||||
MainWindow(QWidget *parent = nullptr);
|
||||
~MainWindow();
|
||||
|
||||
void Init();
|
||||
void Deinit();
|
||||
static QString getLogInfo(HGResult ret);
|
||||
bool isExitApp();
|
||||
|
||||
|
||||
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);
|
||||
|
||||
std::vector<std::string> getDevices();
|
||||
|
@ -31,10 +36,12 @@ private:
|
|||
signals:
|
||||
void sane_dev_arrive(QString devName);
|
||||
void sane_dev_remove(QString devName);
|
||||
void user_event(int event);
|
||||
|
||||
private slots:
|
||||
void on_sane_dev_arrive(QString devName);
|
||||
void on_sane_dev_remove(QString devName);
|
||||
void on_user_event(int event);
|
||||
|
||||
private slots:
|
||||
void on_act_newDevice_triggered();
|
||||
|
|
Loading…
Reference in New Issue