#include "dialog_login.h" #include "ui_dialog_login.h" #include #include "mainwindow.h" #include "base/HGUtility.h" #include "base/HGIni.h" #include "HGUIGlobal.h" #include "HGString.h" Dialog_logIn::Dialog_logIn(QWidget *parent) : QDialog(parent), ui(new Ui::Dialog_logIn) , m_pdtToolDbuserMgr(nullptr) { ui->setupUi(this); setWindowFlags(Qt::FramelessWindowHint); ui->pbtn_setting->setToolTip(tr("Set host and port")); ui->pbtn_minum->setToolTip(tr("Minimize")); ui->pbtn_close->setToolTip(tr("Close")); ui->label_title->setText(tr("LogIn")); QString account("root"); ui->lineEdit_account->setText(getCfgValue("login", "account", account)); // ui->lineEdit_password->setText("123456"); ui->lineEdit_password->setEchoMode(QLineEdit::EchoMode::Password); ui->lineEdit_dbHost->setText("192.168.1.70"); ui->lineEdit_dbPort->setText("3306"); ui->lineEdit_ftpHost->setText("192.168.1.70"); ui->lineEdit_ftpPort->setText("3306"); ui->label_dbHost->setVisible(false); ui->label_dbPort->setVisible(false); ui->lineEdit_dbHost->setVisible(false); ui->lineEdit_dbPort->setVisible(false); ui->label_ftpHost->setVisible(false); ui->label_ftpPort->setVisible(false); ui->lineEdit_ftpHost->setVisible(false); ui->lineEdit_ftpPort->setVisible(false); } Dialog_logIn::~Dialog_logIn() { delete ui; } HGPdtToolDbUserMgr Dialog_logIn::GetUserMgr() { return m_pdtToolDbuserMgr; } void Dialog_logIn::mousePressEvent(QMouseEvent *event) { if(event->button()==Qt::LeftButton) { m_leftMousePressed = true; m_startPos = event->globalPos(); } } void Dialog_logIn::mouseMoveEvent(QMouseEvent *event) { if(m_leftMousePressed) { this->window()->move(this->window()->geometry().topLeft() + event->globalPos() - m_startPos); m_startPos = event->globalPos(); } } void Dialog_logIn::mouseReleaseEvent(QMouseEvent *event) { if(event->button()==Qt::LeftButton) { m_leftMousePressed = false; } } void Dialog_logIn::on_pbtn_login_clicked() { QString account = ui->lineEdit_account->text(); QString password = ui->lineEdit_password->text(); QString host = ui->lineEdit_dbHost->text(); QString port = ui->lineEdit_dbPort->text(); saveCfgValue("login", "account", account); HGPdtToolDbUserMgr pdtToolDbuserMgr = nullptr; HGResult ret = HGPdtToolDb_CreateUserMgr(host.toStdString().c_str(), port.toInt(), account.toStdString().c_str(), password.toStdString().c_str(), &pdtToolDbuserMgr); if (NULL != pdtToolDbuserMgr) { m_pdtToolDbuserMgr = pdtToolDbuserMgr; accept(); } else { QMessageBox::information(this, tr("tips"), tr("Login failed: ") + MainWindow::getLogInfo(ret)); return; } } void Dialog_logIn::on_pushButton_exit_clicked() { reject(); } void Dialog_logIn::on_pbtn_setting_clicked(bool checked) { ui->label_user->setVisible(!checked); ui->label_password->setVisible(!checked); ui->lineEdit_account->setVisible(!checked); ui->lineEdit_password->setVisible(!checked); ui->label_dbHost->setVisible(checked); ui->label_dbPort->setVisible(checked); ui->lineEdit_dbHost->setVisible(checked); ui->lineEdit_dbPort->setVisible(checked); ui->label_ftpHost->setVisible(checked); ui->label_ftpPort->setVisible(checked); ui->lineEdit_ftpHost->setVisible(checked); ui->lineEdit_ftpPort->setVisible(checked); } void Dialog_logIn::on_pbtn_minum_clicked() { this->window()->showMinimized(); } void Dialog_logIn::on_pbtn_close_clicked() { close(); } void Dialog_logIn::saveCfgValue(const char *appName, const char *key, const QString &value) { HGChar cfgPath[512]; HGBase_GetConfigPath(cfgPath, 512); HGBase_CreateDir(cfgPath); strcat(cfgPath, "config.ini"); HGBase_SetProfileString(cfgPath, appName, key, getStdString(value).c_str()); } QString Dialog_logIn::getCfgValue(const char *appName, const char *key, const QString &def) { HGChar cfgPath[512]; HGBase_GetConfigPath(cfgPath, 512); strcat(cfgPath, "config.ini"); HGChar value[512] = {0}; HGBase_GetProfileString(cfgPath, appName, key, getStdString(def).c_str(), value, 512); return StdStringToUtf8(value).c_str(); }