[bug fixes]
This commit is contained in:
2
.gitignore
vendored
2
.gitignore
vendored
@@ -9,3 +9,5 @@
|
|||||||
/out/
|
/out/
|
||||||
/.vs/
|
/.vs/
|
||||||
/CMakeSettings.json
|
/CMakeSettings.json
|
||||||
|
/src/translations/*.ts
|
||||||
|
*.ts
|
||||||
|
|||||||
@@ -35,6 +35,18 @@ file(GLOB project_uis ./src/*.ui)
|
|||||||
qt5_wrap_ui(ui_FILES ${project_uis})
|
qt5_wrap_ui(ui_FILES ${project_uis})
|
||||||
file(GLOB project_res ./src/*.qrc)
|
file(GLOB project_res ./src/*.qrc)
|
||||||
|
|
||||||
|
#ADD_SUBDIRECTORY(./src/translations)
|
||||||
|
#set(TS_FILES
|
||||||
|
# ./src/translations/en_US.ts
|
||||||
|
# ./src/translations/zh_CN.ts)
|
||||||
|
#find_package(Qt5 COMPONENTS ${REQUIRED_LIBS} LinguistTools REQUIRED)
|
||||||
|
#qt5_create_translation(QM_FILES ${CMAKE_SOURCE_DIR} ${TS_FILES})
|
||||||
|
#add_executable(${PROJECT_NAME} ${project_headers} ${project_cpps} ${project_cxx} ${project_res} ${project_cc} ${project_c} ${ui_FILES} ${QM_FILES} )
|
||||||
|
|
||||||
|
#file(GLOB TS_FILES ./src/translations/*.ts)
|
||||||
|
|
||||||
|
SET_DIRECTORY_PROPERTIES(PROPERTIES CLEAN_NO_CUSTOM TRUE)
|
||||||
|
#file(GLOB TS_FILES ./src/translations/*.ts)
|
||||||
set(TS_FILES
|
set(TS_FILES
|
||||||
./src/translations/en_US.ts
|
./src/translations/en_US.ts
|
||||||
./src/translations/zh_CN.ts)
|
./src/translations/zh_CN.ts)
|
||||||
@@ -50,7 +62,7 @@ set(cpp_source_all ${project_headers} ${project_cpps} ${project_cxx} ${project_r
|
|||||||
qt5_create_translation(QM_FILES ${cpp_source_all} ${TS_FILES})
|
qt5_create_translation(QM_FILES ${cpp_source_all} ${TS_FILES})
|
||||||
add_executable(${PROJECT_NAME} ${cpp_source_all} ${ui_FILES} ${QM_FILES} )
|
add_executable(${PROJECT_NAME} ${cpp_source_all} ${ui_FILES} ${QM_FILES} )
|
||||||
|
|
||||||
add_executable(${PROJECT_NAME} ${project_headers} ${project_cpps} ${project_cxx} ${project_res} ${project_cc} ${project_c} ${ui_FILES} )
|
add_executable(${PROJECT_NAME} ${project_headers} ${project_cpps} ${project_cxx} ${project_res} ${project_cc} ${project_c} ${ui_FILES} ${QM_FILES} )
|
||||||
if(UNIX AND USE_SHIMLIB)
|
if(UNIX AND USE_SHIMLIB)
|
||||||
link_directories(/usr/local/lib64)
|
link_directories(/usr/local/lib64)
|
||||||
target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Widgets Qt5::Gui Qt5::OpenGL Qt5::Sql Qt5::VirtualKeyboard Qt5::Network pthread usct_shim dmapi log4c cunit ctomat hdf5 matio m)
|
target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Widgets Qt5::Gui Qt5::OpenGL Qt5::Sql Qt5::VirtualKeyboard Qt5::Network pthread usct_shim dmapi log4c cunit ctomat hdf5 matio m)
|
||||||
|
|||||||
@@ -10,181 +10,181 @@
|
|||||||
#include <QToolButton>
|
#include <QToolButton>
|
||||||
#include <QPushButton>
|
#include <QPushButton>
|
||||||
#include <QLineEdit>
|
#include <QLineEdit>
|
||||||
#include <src/event/EventCenter.h>
|
#include "event/EventCenter.h"
|
||||||
#include <src/log/UserOperationLog.h>
|
#include "log/UserOperationLog.h"
|
||||||
#include "db/SQLHelper.h"
|
#include "db/SQLHelper.h"
|
||||||
#include "models/User.h"
|
#include "models/User.h"
|
||||||
#include "components/SlidePickerBox.h"
|
#include "components/SlidePickerBox.h"
|
||||||
#include "SelectDialog.h"
|
#include "SelectDialog.h"
|
||||||
#include "AlertDialog.h"
|
#include "AlertDialog.h"
|
||||||
|
|
||||||
AccountFormDialog::AccountFormDialog(QWidget *parent,AccountEditMode mode, Qt::WindowFlags f) : GUIFormBaseDialog(parent, f) {
|
AccountFormDialog::AccountFormDialog(QWidget* parent, AccountEditMode mode, Qt::WindowFlags f) : GUIFormBaseDialog(parent, f) {
|
||||||
m_mode = mode;
|
m_mode = mode;
|
||||||
QVBoxLayout* layout = new QVBoxLayout(formWidget);
|
QVBoxLayout* layout = new QVBoxLayout(formWidget);
|
||||||
layout->setSpacing(10);
|
layout->setSpacing(10);
|
||||||
// add title
|
// add title
|
||||||
QLabel* lbl_title = new QLabel(this);
|
QLabel* lbl_title = new QLabel(this);
|
||||||
lbl_title->setAlignment(Qt::AlignCenter);
|
lbl_title->setAlignment(Qt::AlignCenter);
|
||||||
lbl_title->setText(tr("Account"));
|
lbl_title->setText(tr("Account"));
|
||||||
lbl_title->setObjectName("title");
|
lbl_title->setObjectName("title");
|
||||||
layout->addWidget(lbl_title);
|
layout->addWidget(lbl_title);
|
||||||
|
|
||||||
//add usercode
|
//add usercode
|
||||||
QLabel* lbl_UserCode = new QLabel(this);
|
QLabel* lbl_UserCode = new QLabel(this);
|
||||||
lbl_UserCode->setText(tr("User ID"));
|
lbl_UserCode->setText(tr("User ID"));
|
||||||
le_UserCode = new QLineEdit(this);
|
le_UserCode = new QLineEdit(this);
|
||||||
le_UserCode->setPlaceholderText(tr("Input User ID"));
|
le_UserCode->setPlaceholderText(tr("Input User ID"));
|
||||||
if(m_mode != New)le_UserCode->setEnabled(false);
|
if (m_mode != New)le_UserCode->setEnabled(false);
|
||||||
layout->addWidget(lbl_UserCode);
|
layout->addWidget(lbl_UserCode);
|
||||||
layout->addWidget(le_UserCode);
|
layout->addWidget(le_UserCode);
|
||||||
QLabel* lbl_endline1 = new QLabel(this);
|
QLabel* lbl_endline1 = new QLabel(this);
|
||||||
lbl_endline1->setObjectName("endline");
|
lbl_endline1->setObjectName("endline");
|
||||||
layout->addWidget(lbl_endline1);
|
layout->addWidget(lbl_endline1);
|
||||||
|
|
||||||
//add username
|
//add username
|
||||||
QLabel* lbl_UserName = new QLabel(this);
|
QLabel* lbl_UserName = new QLabel(this);
|
||||||
lbl_UserName->setText(tr("Name"));
|
lbl_UserName->setText(tr("Name"));
|
||||||
le_UserName = new QLineEdit(this);
|
le_UserName = new QLineEdit(this);
|
||||||
le_UserName->setPlaceholderText(tr("Input User name"));
|
le_UserName->setPlaceholderText(tr("Input User name"));
|
||||||
layout->addWidget(lbl_UserName);
|
layout->addWidget(lbl_UserName);
|
||||||
layout->addWidget(le_UserName);
|
layout->addWidget(le_UserName);
|
||||||
QLabel* lbl_endline2 = new QLabel(this);
|
QLabel* lbl_endline2 = new QLabel(this);
|
||||||
lbl_endline2->setObjectName("endline");
|
lbl_endline2->setObjectName("endline");
|
||||||
layout->addWidget(lbl_endline2);
|
layout->addWidget(lbl_endline2);
|
||||||
|
|
||||||
//add password
|
//add password
|
||||||
QLabel* lbl_Pwd = new QLabel(this);
|
QLabel* lbl_Pwd = new QLabel(this);
|
||||||
lbl_Pwd->setText(tr("Password"));
|
lbl_Pwd->setText(tr("Password"));
|
||||||
layout->addWidget(lbl_Pwd);
|
layout->addWidget(lbl_Pwd);
|
||||||
|
|
||||||
// add new mode
|
// add new mode
|
||||||
if (m_mode == New)
|
if (m_mode == New)
|
||||||
{
|
{
|
||||||
le_Pwd = new QLineEdit(this);
|
le_Pwd = new QLineEdit(this);
|
||||||
le_Pwd->setPlaceholderText(tr("Input password"));
|
le_Pwd->setPlaceholderText(tr("Input password"));
|
||||||
le_Pwd->setEchoMode(QLineEdit::Password);
|
le_Pwd->setEchoMode(QLineEdit::Password);
|
||||||
layout->addWidget(le_Pwd);
|
layout->addWidget(le_Pwd);
|
||||||
} else{//edit mode
|
}
|
||||||
btn_Pwd = new QPushButton(this);
|
else {//edit mode
|
||||||
btn_Pwd->setText(tr(m_mode==Self?"Change Password":"Reset Password"));
|
btn_Pwd = new QPushButton(this);
|
||||||
layout->addWidget(btn_Pwd);
|
btn_Pwd->setText(tr(m_mode == Self ? "Change Password" : "Reset Password"));
|
||||||
}
|
layout->addWidget(btn_Pwd);
|
||||||
QLabel* lbl_endline3 = new QLabel(this);
|
}
|
||||||
lbl_endline3->setObjectName("endline");
|
QLabel* lbl_endline3 = new QLabel(this);
|
||||||
layout->addWidget(lbl_endline3);
|
lbl_endline3->setObjectName("endline");
|
||||||
|
layout->addWidget(lbl_endline3);
|
||||||
|
|
||||||
if (m_mode == Self)
|
if (m_mode == Self)
|
||||||
{
|
{
|
||||||
//add logout
|
//add logout
|
||||||
QLabel* lbl_Logout = new QLabel(this);
|
QLabel* lbl_Logout = new QLabel(this);
|
||||||
lbl_Logout->setText(tr("Logout"));
|
lbl_Logout->setText(tr("Logout"));
|
||||||
QPushButton* btn_Logout= new QPushButton(this);
|
QPushButton* btn_Logout = new QPushButton(this);
|
||||||
btn_Logout->setText(tr("Logout"));
|
btn_Logout->setText(tr("Logout"));
|
||||||
layout->addWidget(lbl_Logout);
|
layout->addWidget(lbl_Logout);
|
||||||
layout->addWidget(btn_Logout);
|
layout->addWidget(btn_Logout);
|
||||||
QLabel* lbl_endline0 = new QLabel(this);
|
QLabel* lbl_endline0 = new QLabel(this);
|
||||||
lbl_endline0->setObjectName("endline");
|
lbl_endline0->setObjectName("endline");
|
||||||
layout->addWidget(lbl_endline0);
|
layout->addWidget(lbl_endline0);
|
||||||
// load current user data
|
// load current user data
|
||||||
if (User::Current())
|
if (User::Current())
|
||||||
{
|
{
|
||||||
le_UserCode->setText(User::Current()->getUserCode());
|
le_UserCode->setText(User::Current()->getUserCode());
|
||||||
le_UserName->setText(User::Current()->getUserName());
|
le_UserName->setText(User::Current()->getUserName());
|
||||||
m_UserID = User::Current()->getUserID();
|
m_UserID = User::Current()->getUserID();
|
||||||
m_UserPwd = User::Current()->getPassword();
|
m_UserPwd = User::Current()->getPassword();
|
||||||
}
|
}
|
||||||
connect(btn_Pwd, &QPushButton::clicked,[t=this](){
|
connect(btn_Pwd, &QPushButton::clicked, [t = this]() {
|
||||||
ChangePasswordFormDialog dia(t->parentWidget());
|
ChangePasswordFormDialog dia(t->parentWidget());
|
||||||
dia.setWindowModality(Qt::WindowModal);
|
dia.setWindowModality(Qt::WindowModal);
|
||||||
dia.exec();
|
dia.exec();
|
||||||
});
|
});
|
||||||
connect(btn_Logout, &QAbstractButton::clicked, [=](){
|
connect(btn_Logout, &QAbstractButton::clicked, [=]() {
|
||||||
this->accept();
|
this->accept();
|
||||||
LOG_USER_OPERATION(Logout);
|
LOG_USER_OPERATION(Logout);
|
||||||
EventCenter::Default()->triggerEvent(GUIEvents::RequestLogin, nullptr, nullptr);
|
EventCenter::Default()->triggerEvent(GUIEvents::RequestLogin, nullptr, nullptr);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//add change role
|
//add change role
|
||||||
QLabel* lbl_Role = new QLabel(this);
|
QLabel* lbl_Role = new QLabel(this);
|
||||||
lbl_Role->setText(tr("Change Role"));
|
lbl_Role->setText(tr("Change Role"));
|
||||||
btn_Role= new QPushButton(this);
|
btn_Role = new QPushButton(this);
|
||||||
layout->addWidget(lbl_Role);
|
layout->addWidget(lbl_Role);
|
||||||
layout->addWidget(btn_Role);
|
layout->addWidget(btn_Role);
|
||||||
QLabel* lbl_endline0 = new QLabel(this);
|
QLabel* lbl_endline0 = new QLabel(this);
|
||||||
lbl_endline0->setObjectName("endline");
|
lbl_endline0->setObjectName("endline");
|
||||||
layout->addWidget(lbl_endline0);
|
layout->addWidget(lbl_endline0);
|
||||||
//set default value
|
//set default value
|
||||||
if (m_mode == New) {
|
if (m_mode == New) {
|
||||||
btn_Role->setText("doctor");
|
btn_Role->setText(tr("doctor"));
|
||||||
m_RoleID = User::getRoleID("doctor");
|
m_RoleID = User::getRoleID("doctor");
|
||||||
}
|
}
|
||||||
else{
|
else {
|
||||||
connect(btn_Pwd,&QAbstractButton::clicked,[=](){
|
connect(btn_Pwd, &QAbstractButton::clicked, [=]() {
|
||||||
AlertDialog dialog(this);
|
AlertDialog dialog(this);
|
||||||
dialog.setButtonMode(OkAndCancel);
|
dialog.setButtonMode(OkAndCancel);
|
||||||
dialog.setWindowModality(Qt::WindowModal);
|
dialog.setWindowModality(Qt::WindowModal);
|
||||||
dialog.setAlertMessage(tr("Reset password to \"123456\" ?"));
|
dialog.setAlertMessage(tr("Reset password to \"123456\" ?"));
|
||||||
if (dialog.exec() == Accepted)
|
if (dialog.exec() == Accepted)
|
||||||
{
|
{
|
||||||
User user;
|
User user;
|
||||||
dialog.setButtonMode(OkOnly);
|
dialog.setButtonMode(OkOnly);
|
||||||
if (!User::getUser(m_UserID, user)) {
|
if (!User::getUser(m_UserID, user)) {
|
||||||
dialog.setAlertMessage(tr("Inner error, can't find reference user!"));
|
dialog.setAlertMessage(tr("Inner error, can't find reference user!"));
|
||||||
dialog.exec();
|
dialog.exec();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!user.resetPassword())
|
if (!user.resetPassword())
|
||||||
{
|
{
|
||||||
dialog.setAlertMessage(tr("Submit change to database fail!"));
|
dialog.setAlertMessage(tr("Submit change to database fail!"));
|
||||||
dialog.exec();
|
dialog.exec();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
connect(btn_Role,&QAbstractButton::clicked,[=](){
|
connect(btn_Role, &QAbstractButton::clicked, [=]() {
|
||||||
SelectDialog selectDialog(this);
|
SelectDialog selectDialog(this);
|
||||||
selectDialog.setAvailableDates(User::getAllRoleName());
|
selectDialog.setAvailableDates(User::getAllRoleName());
|
||||||
selectDialog.setSelectedValue(btn_Role->text());
|
selectDialog.setSelectedValue(btn_Role->text());
|
||||||
selectDialog.setWindowModality(Qt::WindowModal);
|
selectDialog.setWindowModality(Qt::WindowModal);
|
||||||
// submit change
|
// submit change
|
||||||
if (selectDialog.exec() == Accepted)
|
if (selectDialog.exec() == Accepted)
|
||||||
{
|
{
|
||||||
if (selectDialog.getSelectedValue() != btn_Role->text())
|
if (selectDialog.getSelectedValue() != btn_Role->text())
|
||||||
{
|
{
|
||||||
QString newRoleID = User::getRoleID(selectDialog.getSelectedValue());
|
QString newRoleID = User::getRoleID(selectDialog.getSelectedValue());
|
||||||
btn_Role->setText(selectDialog.getSelectedValue());
|
btn_Role->setText(selectDialog.getSelectedValue());
|
||||||
m_RoleID = newRoleID;
|
m_RoleID = newRoleID;
|
||||||
qDebug()<<"new Role ID:"<<newRoleID;
|
qDebug() << "new Role ID:" << newRoleID;
|
||||||
this->roleChanged = true;
|
this->roleChanged = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
//add Comment
|
//add Comment
|
||||||
QLabel* lbl_Comment = new QLabel(this);
|
QLabel* lbl_Comment = new QLabel(this);
|
||||||
lbl_Comment->setText(tr("Comment"));
|
lbl_Comment->setText(tr("Comment"));
|
||||||
le_Comment = new QLineEdit(this);
|
le_Comment = new QLineEdit(this);
|
||||||
layout->addWidget(lbl_Comment);
|
layout->addWidget(lbl_Comment);
|
||||||
layout->addWidget(le_Comment);
|
layout->addWidget(le_Comment);
|
||||||
QLabel* lbl_endline0 = new QLabel(this);
|
QLabel* lbl_endline0 = new QLabel(this);
|
||||||
lbl_endline0->setObjectName("endline");
|
lbl_endline0->setObjectName("endline");
|
||||||
layout->addWidget(lbl_endline0);
|
layout->addWidget(lbl_endline0);
|
||||||
|
|
||||||
lbl_error = new QLabel(this);
|
|
||||||
lbl_error->setObjectName("warn");
|
|
||||||
lbl_error->setVisible(false);
|
|
||||||
layout->addWidget(lbl_error);
|
|
||||||
connect(le_Comment, &QLineEdit::textChanged, [=](const QString& text){
|
|
||||||
commentChanged = true;
|
|
||||||
});
|
|
||||||
connect(le_UserName, &QLineEdit::textChanged, [=](const QString& text){
|
|
||||||
m_NewUserName = text;
|
|
||||||
userNameChanged = true;
|
|
||||||
});
|
|
||||||
|
|
||||||
|
lbl_error = new QLabel(this);
|
||||||
|
lbl_error->setObjectName("warn");
|
||||||
|
lbl_error->setVisible(false);
|
||||||
|
layout->addWidget(lbl_error);
|
||||||
|
connect(le_Comment, &QLineEdit::textChanged, [=](const QString& text) {
|
||||||
|
commentChanged = true;
|
||||||
|
});
|
||||||
|
connect(le_UserName, &QLineEdit::textChanged, [=](const QString& text) {
|
||||||
|
m_NewUserName = text;
|
||||||
|
userNameChanged = true;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
AccountFormDialog::~AccountFormDialog() {
|
AccountFormDialog::~AccountFormDialog() {
|
||||||
@@ -192,122 +192,125 @@ AccountFormDialog::~AccountFormDialog() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool AccountFormDialog::updateReferenceData() {
|
bool AccountFormDialog::updateReferenceData() {
|
||||||
if (m_mode == Self) {
|
if (m_mode == Self) {
|
||||||
if (!this->userNameChanged && !this->commentChanged) return true;
|
if (!this->userNameChanged && !this->commentChanged) return true;
|
||||||
if (!this->userNameChanged) {
|
if (!this->userNameChanged) {
|
||||||
if (m_NewUserName.isEmpty()){
|
if (m_NewUserName.isEmpty()) {
|
||||||
warn(tr("User Name can't be empty!"));
|
warn(tr("User Name can't be empty!"));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
User::Current()->setUserName(m_NewUserName);
|
User::Current()->setUserName(m_NewUserName);
|
||||||
}
|
}
|
||||||
if (!this->commentChanged) User::Current()->setUserName(le_Comment->text());
|
if (!this->commentChanged) User::Current()->setUserName(le_Comment->text());
|
||||||
bool ret = User::Current()->submitChange();
|
bool ret = User::Current()->submitChange();
|
||||||
if (ret) {
|
if (ret) {
|
||||||
hideWarn();
|
hideWarn();
|
||||||
LOG_USER_OPERATION(ChangeUserName);
|
LOG_USER_OPERATION(ChangeUserName);
|
||||||
}
|
}
|
||||||
else{
|
else {
|
||||||
warn(tr("Submit change to database fail!"));
|
warn(tr("Submit change to database fail!"));
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
} else if (m_mode == Admin){
|
}
|
||||||
if (!this->userNameChanged && !this->roleChanged) return true;
|
else if (m_mode == Admin) {
|
||||||
User user;
|
if (!this->userNameChanged && !this->roleChanged) return true;
|
||||||
if (!User::getUser(m_UserID, user)) return true;
|
User user;
|
||||||
if (this->userNameChanged){
|
if (!User::getUser(m_UserID, user)) return true;
|
||||||
if (m_NewUserName.isEmpty()){
|
if (this->userNameChanged) {
|
||||||
warn(tr("User Name can't be empty!"));
|
if (m_NewUserName.isEmpty()) {
|
||||||
return false;
|
warn(tr("User Name can't be empty!"));
|
||||||
}
|
return false;
|
||||||
user.setUserName(m_NewUserName);
|
}
|
||||||
}
|
user.setUserName(m_NewUserName);
|
||||||
if (this->roleChanged) user.setRoleID(m_RoleID);
|
}
|
||||||
if (!this->commentChanged) user.setComment(le_Comment->text());
|
if (this->roleChanged) user.setRoleID(m_RoleID);
|
||||||
bool ret = user.submitChange();
|
if (!this->commentChanged) user.setComment(le_Comment->text());
|
||||||
if (ret) {
|
bool ret = user.submitChange();
|
||||||
LOG_USER_OPERATION(AdminChangeAcountInformation);
|
if (ret) {
|
||||||
}
|
LOG_USER_OPERATION(AdminChangeAcountInformation);
|
||||||
return ret;
|
}
|
||||||
} else {
|
return ret;
|
||||||
//add new
|
}
|
||||||
User user;
|
else {
|
||||||
if (le_UserCode->text().isEmpty()) {
|
//add new
|
||||||
warn(tr("User ID can't be empty!"));
|
User user;
|
||||||
return false;
|
if (le_UserCode->text().isEmpty()) {
|
||||||
}
|
warn(tr("User ID can't be empty!"));
|
||||||
if (le_UserName->text().isEmpty()) {
|
return false;
|
||||||
warn(tr("User Name can't be empty!"));
|
}
|
||||||
return false;
|
if (le_UserName->text().isEmpty()) {
|
||||||
}
|
warn(tr("User Name can't be empty!"));
|
||||||
if (le_Pwd->text().isEmpty()) {
|
return false;
|
||||||
warn(tr("Password can't be empty!"));
|
}
|
||||||
return false;
|
if (le_Pwd->text().isEmpty()) {
|
||||||
}
|
warn(tr("Password can't be empty!"));
|
||||||
if (!refmodel){
|
return false;
|
||||||
warn(tr("Inner error ,unset data model!"));
|
}
|
||||||
return false;
|
if (!refmodel) {
|
||||||
}
|
warn(tr("Inner error ,unset data model!"));
|
||||||
if (User::existsUser(le_UserCode->text())){
|
return false;
|
||||||
warn(tr("User Id exists!"));
|
}
|
||||||
return false;
|
if (User::existsUser(le_UserCode->text())) {
|
||||||
}
|
warn(tr("User Id exists!"));
|
||||||
hideWarn();
|
return false;
|
||||||
user.setUserName(le_UserName->text());
|
}
|
||||||
user.setPassword(User::getEncryptedPassword(le_Pwd->text()));
|
hideWarn();
|
||||||
user.setRoleID(m_RoleID);
|
user.setUserName(le_UserName->text());
|
||||||
user.setComment(le_Comment->text());
|
user.setPassword(User::getEncryptedPassword(le_Pwd->text()));
|
||||||
// User::insertUser(le_UserCode->text(),user);
|
user.setRoleID(m_RoleID);
|
||||||
|
user.setComment(le_Comment->text());
|
||||||
|
// User::insertUser(le_UserCode->text(),user);
|
||||||
|
|
||||||
refmodel->insertRow(0);
|
refmodel->insertRow(0);
|
||||||
refmodel->setData(refmodel->index(0, 0), QUuid::createUuid().toString());
|
refmodel->setData(refmodel->index(0, 0), QUuid::createUuid().toString());
|
||||||
refmodel->setData(refmodel->index(0, 1), le_UserCode->text());
|
refmodel->setData(refmodel->index(0, 1), le_UserCode->text());
|
||||||
#define USER_READONLY_PROPERTY(name) name,
|
#define USER_READONLY_PROPERTY(name) name,
|
||||||
#define USER_PROPERTY(name)\
|
#define USER_PROPERTY(name)\
|
||||||
USER_READONLY_PROPERTY(name)
|
USER_READONLY_PROPERTY(name)
|
||||||
|
|
||||||
enum user_index {
|
enum user_index {
|
||||||
USER_PROPERTIES_MACRO()
|
USER_PROPERTIES_MACRO()
|
||||||
};
|
};
|
||||||
#undef USER_READONLY_PROPERTY
|
#undef USER_READONLY_PROPERTY
|
||||||
#undef USER_PROPERTY
|
#undef USER_PROPERTY
|
||||||
|
|
||||||
#define USER_READONLY_PROPERTY(name)
|
#define USER_READONLY_PROPERTY(name)
|
||||||
#define USER_PROPERTY(name)\
|
#define USER_PROPERTY(name)\
|
||||||
USER_READONLY_PROPERTY(name)\
|
USER_READONLY_PROPERTY(name)\
|
||||||
refmodel->setData(refmodel->index(0, name),user.get##name());
|
refmodel->setData(refmodel->index(0, name),user.get##name());
|
||||||
USER_PROPERTIES_MACRO()
|
USER_PROPERTIES_MACRO()
|
||||||
#undef USER_READONLY_PROPERTY
|
#undef USER_READONLY_PROPERTY
|
||||||
#undef USER_PROPERTY
|
#undef USER_PROPERTY
|
||||||
|
|
||||||
if (refmodel->submit()) {
|
if (refmodel->submit()) {
|
||||||
hideWarn();
|
hideWarn();
|
||||||
return true;
|
return true;
|
||||||
} else {
|
}
|
||||||
warn(tr("Submit to data base fail!"));
|
else {
|
||||||
return false;
|
warn(tr("Submit to data base fail!"));
|
||||||
}
|
return false;
|
||||||
}
|
}
|
||||||
return true;
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void AccountFormDialog::setAccountInformation(const QMap<QString, QVariant> & values) {
|
void AccountFormDialog::setAccountInformation(const QMap<QString, QVariant>& values) {
|
||||||
le_UserCode->setText(values["UserCode"].toString());
|
le_UserCode->setText(values["UserCode"].toString());
|
||||||
le_UserName->setText(values["UserName"].toString());
|
le_UserName->setText(values["UserName"].toString());
|
||||||
le_Comment->setText(values["Comment"].toString());
|
le_Comment->setText(values["Comment"].toString());
|
||||||
m_UserID = values["UserID"].toString();
|
m_UserID = values["UserID"].toString();
|
||||||
m_UserPwd = values["Password"].toString();
|
m_UserPwd = values["Password"].toString();
|
||||||
if (btn_Role){
|
if (btn_Role) {
|
||||||
m_RoleID = values["RoleID"].toString();
|
m_RoleID = values["RoleID"].toString();
|
||||||
btn_Role->setText(User::getRoleName(m_RoleID));
|
btn_Role->setText(User::getRoleName(m_RoleID));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void AccountFormDialog::warn(QString msg) {
|
void AccountFormDialog::warn(QString msg) {
|
||||||
lbl_error->setText(msg);
|
lbl_error->setText(msg);
|
||||||
lbl_error->setVisible(true);
|
lbl_error->setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void AccountFormDialog::hideWarn() {
|
void AccountFormDialog::hideWarn() {
|
||||||
this->lbl_error->setVisible(false);
|
this->lbl_error->setVisible(false);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
#include <QHBoxLayout>
|
#include <QHBoxLayout>
|
||||||
#include <QToolButton>
|
#include <QToolButton>
|
||||||
#include <QHeaderView>
|
#include <QHeaderView>
|
||||||
#include <src/components/AccountRoleComboDelegate.h>
|
#include "components/AccountRoleComboDelegate.h"
|
||||||
#include "guimacros.h"
|
#include "guimacros.h"
|
||||||
#include "AlertDialog.h"
|
#include "AlertDialog.h"
|
||||||
#include "db/SQLHelper.h"
|
#include "db/SQLHelper.h"
|
||||||
|
|||||||
@@ -5,8 +5,8 @@
|
|||||||
#include <QVBoxLayout>
|
#include <QVBoxLayout>
|
||||||
#include <QLabel>
|
#include <QLabel>
|
||||||
#include <QtWidgets/QLineEdit>
|
#include <QtWidgets/QLineEdit>
|
||||||
#include <src/models/User.h>
|
#include "models/User.h"
|
||||||
#include <src/log/UserOperationLog.h>
|
#include "log/UserOperationLog.h"
|
||||||
#include "ChangePasswordFormDialog.h"
|
#include "ChangePasswordFormDialog.h"
|
||||||
|
|
||||||
ChangePasswordFormDialog::ChangePasswordFormDialog(QWidget* parent, Qt::WindowFlags f) : GUIFormBaseDialog(parent, f) {
|
ChangePasswordFormDialog::ChangePasswordFormDialog(QWidget* parent, Qt::WindowFlags f) : GUIFormBaseDialog(parent, f) {
|
||||||
|
|||||||
@@ -6,35 +6,35 @@
|
|||||||
#include <QVBoxLayout>
|
#include <QVBoxLayout>
|
||||||
#include <QHBoxLayout>
|
#include <QHBoxLayout>
|
||||||
#include <QPushButton>
|
#include <QPushButton>
|
||||||
GUIFormBaseDialog::GUIFormBaseDialog(QWidget *parent, Qt::WindowFlags f) : QDialog(parent, f) {
|
GUIFormBaseDialog::GUIFormBaseDialog(QWidget* parent, Qt::WindowFlags f) : QDialog(parent, f) {
|
||||||
this->setObjectName("formDialog");
|
this->setObjectName("formDialog");
|
||||||
this->setWindowFlags (Qt :: FramelessWindowHint | Qt :: Dialog);
|
this->setWindowFlags(Qt::FramelessWindowHint | Qt::Dialog);
|
||||||
// this->setFixedSize(500,600);
|
// this->setFixedSize(500,600);
|
||||||
this->setFixedWidth(500);
|
this->setFixedWidth(500);
|
||||||
this->formWidget = new QWidget(this);
|
this->formWidget = new QWidget(this);
|
||||||
this->formWidget->setObjectName("formWidget");
|
this->formWidget->setObjectName("formWidget");
|
||||||
|
|
||||||
QVBoxLayout* vLayout = new QVBoxLayout(this);
|
QVBoxLayout* vLayout = new QVBoxLayout(this);
|
||||||
// vLayout->setContentsMargins(680,100,680,100);
|
// vLayout->setContentsMargins(680,100,680,100);
|
||||||
vLayout->addWidget(formWidget);
|
vLayout->addWidget(formWidget);
|
||||||
|
|
||||||
QWidget* btnWidget= new QWidget(this);
|
QWidget* btnWidget = new QWidget(this);
|
||||||
vLayout->addWidget(btnWidget);
|
vLayout->addWidget(btnWidget);
|
||||||
QHBoxLayout* hLayout = new QHBoxLayout(btnWidget);
|
QHBoxLayout* hLayout = new QHBoxLayout(btnWidget);
|
||||||
btnOk= new QPushButton(btnWidget);
|
btnOk = new QPushButton(btnWidget);
|
||||||
btnOk->setText("OK");
|
btnOk->setText(tr("OK"));
|
||||||
btnCancel = new QPushButton(btnWidget);
|
btnCancel = new QPushButton(btnWidget);
|
||||||
btnCancel->setText("Cancel");
|
btnCancel->setText(tr("Cancel"));
|
||||||
hLayout->addWidget(btnOk);
|
hLayout->addWidget(btnOk);
|
||||||
hLayout->addWidget(btnCancel);
|
hLayout->addWidget(btnCancel);
|
||||||
btnOk->setObjectName("btnOK");
|
btnOk->setObjectName(tr("btnOK"));
|
||||||
connect(btnOk, &QPushButton::clicked, [t=this](){
|
connect(btnOk, &QPushButton::clicked, [t = this]() {
|
||||||
if(t->updateReferenceData())
|
if (t->updateReferenceData())
|
||||||
t->accept();
|
t->accept();
|
||||||
});
|
});
|
||||||
connect(btnCancel, &QPushButton::clicked, [t=this](){
|
connect(btnCancel, &QPushButton::clicked, [t = this]() {
|
||||||
t->reject();
|
t->reject();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
GUIFormBaseDialog::~GUIFormBaseDialog() {
|
GUIFormBaseDialog::~GUIFormBaseDialog() {
|
||||||
@@ -42,24 +42,24 @@ GUIFormBaseDialog::~GUIFormBaseDialog() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void GUIFormBaseDialog::setButtonMode(DialogButtonMode mode) {
|
void GUIFormBaseDialog::setButtonMode(DialogButtonMode mode) {
|
||||||
switch (mode) {
|
switch (mode) {
|
||||||
case OkOnly:
|
case OkOnly:
|
||||||
{
|
{
|
||||||
btnOk->setVisible(true);
|
btnOk->setVisible(true);
|
||||||
btnCancel->setVisible(false);
|
btnCancel->setVisible(false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
case OkAndCancel:
|
case OkAndCancel:
|
||||||
{
|
{
|
||||||
btnOk->setVisible(true);
|
btnOk->setVisible(true);
|
||||||
btnCancel->setVisible(true);
|
btnCancel->setVisible(true);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
case None:
|
case None:
|
||||||
default:
|
default:
|
||||||
{
|
{
|
||||||
btnOk->setVisible(false);
|
btnOk->setVisible(false);
|
||||||
btnCancel->setVisible(false);
|
btnCancel->setVisible(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,7 +14,7 @@
|
|||||||
#include <QImage>
|
#include <QImage>
|
||||||
#include <QPainter>
|
#include <QPainter>
|
||||||
#include <qdebug.h>
|
#include <qdebug.h>
|
||||||
#include <src/log/UserOperationLog.h>
|
#include "log/UserOperationLog.h"
|
||||||
#include <QLabel>
|
#include <QLabel>
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
|
|||||||
@@ -248,6 +248,8 @@ SelectFormWidget::SelectFormWidget(QWidget* parent) :
|
|||||||
btnAdd->setEnabled(true);
|
btnAdd->setEnabled(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,7 @@
|
|||||||
#include "TopBarWidget.h"
|
#include "TopBarWidget.h"
|
||||||
#include <QLabel>
|
#include <QLabel>
|
||||||
#include <QHBoxLayout>
|
#include <QHBoxLayout>
|
||||||
#include <src/components/RollingMessageWidget.h>
|
#include "components/RollingMessageWidget.h"
|
||||||
#include <QDateTime>
|
#include <QDateTime>
|
||||||
#include "event/EventCenter.h"
|
#include "event/EventCenter.h"
|
||||||
#include "errorhandle/GUIErrorLW.h"
|
#include "errorhandle/GUIErrorLW.h"
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
#include <QDate>
|
#include <QDate>
|
||||||
#include <QDateTime>
|
#include <QDateTime>
|
||||||
#include <qdebug.h>
|
#include <qdebug.h>
|
||||||
#include <src/appvals/AppGlobalValues.h>
|
#include "appvals/AppGlobalValues.h"
|
||||||
|
|
||||||
#define TRIGGER_EVENT EventCenter::Default()->triggerEvent
|
#define TRIGGER_EVENT EventCenter::Default()->triggerEvent
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
// Created by Krad on 2021/12/17.
|
// Created by Krad on 2021/12/17.
|
||||||
//
|
//
|
||||||
|
|
||||||
#include <src/event/EventCenter.h>
|
#include "event/EventCenter.h"
|
||||||
#include "GUIErrorLW.h"
|
#include "GUIErrorLW.h"
|
||||||
#include <QChar>
|
#include <QChar>
|
||||||
|
|
||||||
|
|||||||
@@ -8,13 +8,12 @@
|
|||||||
#include <QLabel>
|
#include <QLabel>
|
||||||
#include <QLineEdit>
|
#include <QLineEdit>
|
||||||
#include <QEvent>
|
#include <QEvent>
|
||||||
#include <src/event/EventCenter.h>
|
#include "event/EventCenter.h"
|
||||||
#include "json/jsonobject.h"
|
#include "json/jsonobject.h"
|
||||||
#include "SelectDialog.h"
|
#include "SelectDialog.h"
|
||||||
|
|
||||||
#include "locker.h"
|
#include "locker.h"
|
||||||
#include "languageswitcher.h"
|
#include "languageswitcher.h"
|
||||||
#include "event/EventCenter.h"
|
|
||||||
|
|
||||||
GeneralForm::GeneralForm(QWidget* parent) : QWidget(parent)
|
GeneralForm::GeneralForm(QWidget* parent) : QWidget(parent)
|
||||||
{
|
{
|
||||||
@@ -100,9 +99,8 @@ GeneralForm::GeneralForm(QWidget* parent) : QWidget(parent)
|
|||||||
//take effect
|
//take effect
|
||||||
JsonObject::Instance()->setDefaultLanguage(lan);
|
JsonObject::Instance()->setDefaultLanguage(lan);
|
||||||
LanguageSwitcher::Instance()->setDefaultLanguage(lan);
|
LanguageSwitcher::Instance()->setDefaultLanguage(lan);
|
||||||
|
|
||||||
btnLan->setText(JsonObject::Instance()->defaultLanguage());
|
btnLan->setText(JsonObject::Instance()->defaultLanguage());
|
||||||
EventCenter::Default()->triggerEvent(ReloadLanguage, nullptr, nullptr);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
btn##name->setIcon(QIcon(img));\
|
btn##name->setIcon(QIcon(img));\
|
||||||
btn##name->setIconSize(QSize(size,size));\
|
btn##name->setIconSize(QSize(size,size));\
|
||||||
btn##name->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);\
|
btn##name->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);\
|
||||||
btn##name->setText(tr(#name));\
|
btn##name->setText(QObject::tr(#name));\
|
||||||
layout->addWidget(btn##name);
|
layout->addWidget(btn##name);
|
||||||
|
|
||||||
#define ADD_TOOL_BTN_TO_LAYOUT(name,img,layout)\
|
#define ADD_TOOL_BTN_TO_LAYOUT(name,img,layout)\
|
||||||
|
|||||||
@@ -40,10 +40,10 @@ void JsonObject::setJsonString(const char* catergory, const char* stringName, co
|
|||||||
char* JsonObject::getJsonString(const char* catergory, const char* stringName)
|
char* JsonObject::getJsonString(const char* catergory, const char* stringName)
|
||||||
{
|
{
|
||||||
if (!loadcfg())
|
if (!loadcfg())
|
||||||
return "";
|
return nullptr;
|
||||||
|
|
||||||
cJSON* first = cJSON_GetObjectItem((cJSON*)json_root, catergory);
|
cJSON* first = cJSON_GetObjectItem((cJSON*)json_root, catergory);
|
||||||
if (!first) return "";
|
if (!first) return nullptr;
|
||||||
|
|
||||||
cJSON* second = cJSON_GetObjectItem(first, stringName);
|
cJSON* second = cJSON_GetObjectItem(first, stringName);
|
||||||
return second->valuestring;
|
return second->valuestring;
|
||||||
@@ -52,13 +52,13 @@ char* JsonObject::getJsonString(const char* catergory, const char* stringName)
|
|||||||
char* JsonObject::getArrayNode(const char* catergory, const char* stringName, int index, const char* id)
|
char* JsonObject::getArrayNode(const char* catergory, const char* stringName, int index, const char* id)
|
||||||
{
|
{
|
||||||
if (!loadcfg())
|
if (!loadcfg())
|
||||||
return "";
|
return nullptr;
|
||||||
|
|
||||||
cJSON* first = cJSON_GetObjectItem((cJSON*)json_root, catergory);
|
cJSON* first = cJSON_GetObjectItem((cJSON*)json_root, catergory);
|
||||||
if (!first) return "";
|
if (!first) return nullptr;
|
||||||
|
|
||||||
cJSON* second = cJSON_GetObjectItem(first, stringName);
|
cJSON* second = cJSON_GetObjectItem(first, stringName);
|
||||||
if (!second) return "";
|
if (!second) return nullptr;
|
||||||
|
|
||||||
cJSON* third = cJSON_GetArrayItem(second, index);
|
cJSON* third = cJSON_GetArrayItem(second, index);
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
#include "languageswitcher.h"
|
#include "languageswitcher.h"
|
||||||
#include <QTranslator>
|
#include <QTranslator>
|
||||||
|
#include "event/EventCenter.h"
|
||||||
|
|
||||||
LanguageSwitcher* LanguageSwitcher::lsw = Q_NULLPTR;
|
LanguageSwitcher* LanguageSwitcher::lsw = Q_NULLPTR;
|
||||||
|
|
||||||
@@ -31,5 +32,6 @@ void LanguageSwitcher::setDefaultLanguage(QString str)
|
|||||||
//qDebug() << "installTranslator";
|
//qDebug() << "installTranslator";
|
||||||
//QApplication::installTranslator(translator);
|
//QApplication::installTranslator(translator);
|
||||||
}
|
}
|
||||||
|
EventCenter::Default()->triggerEvent(ReloadLanguage, nullptr, nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
#include "appvals/AppGlobalValues.h"
|
#include "appvals/AppGlobalValues.h"
|
||||||
#include <src/event/EventCenter.h>
|
#include "event/EventCenter.h"
|
||||||
#include "json/jsonobject.h"
|
#include "json/jsonobject.h"
|
||||||
Locker* Locker::locker = Q_NULLPTR;
|
Locker* Locker::locker = Q_NULLPTR;
|
||||||
|
|
||||||
|
|||||||
@@ -14,19 +14,19 @@
|
|||||||
#include "log/UserOperationLog.h"
|
#include "log/UserOperationLog.h"
|
||||||
|
|
||||||
LoginWindow::LoginWindow(QWidget* parent)
|
LoginWindow::LoginWindow(QWidget* parent)
|
||||||
: QDialog(parent)
|
: QDialog(parent)
|
||||||
, m_pLoginButton(nullptr)
|
, m_pLoginButton(nullptr)
|
||||||
, m_pVMainLayout(nullptr)
|
, m_pVMainLayout(nullptr)
|
||||||
, m_pUserCodeFrame(nullptr)
|
, m_pUserCodeFrame(nullptr)
|
||||||
, m_pUserCodeLayout(nullptr)
|
, m_pUserCodeLayout(nullptr)
|
||||||
, m_pUserCodeEdit(nullptr)
|
, m_pUserCodeEdit(nullptr)
|
||||||
, m_pPassWordEdit(nullptr)
|
, m_pPassWordEdit(nullptr)
|
||||||
{
|
{
|
||||||
initUi();
|
initUi();
|
||||||
init();
|
init();
|
||||||
setWindowFlags(windowFlags() | Qt::Window | Qt::FramelessWindowHint | Qt::WindowSystemMenuHint);
|
setWindowFlags(windowFlags() | Qt::Window | Qt::FramelessWindowHint | Qt::WindowSystemMenuHint);
|
||||||
//Dialog::Instance()->InitForm();
|
//Dialog::Instance()->InitForm();
|
||||||
m_pUserCodeEdit->setText("usct");
|
m_pUserCodeEdit->setText(tr("usct"));
|
||||||
}
|
}
|
||||||
|
|
||||||
LoginWindow::~LoginWindow()
|
LoginWindow::~LoginWindow()
|
||||||
@@ -37,75 +37,76 @@ LoginWindow::~LoginWindow()
|
|||||||
|
|
||||||
void LoginWindow::initUi()
|
void LoginWindow::initUi()
|
||||||
{
|
{
|
||||||
QString style = "*{background-color:#3c3c3c; color:white;margin:0;font-size:16px;}"
|
QString style = "*{background-color:#3c3c3c; color:white;margin:0;font-size:16px;}"
|
||||||
"QLabel#title{font-Size:98px;color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,"
|
"QLabel#title{font-Size:98px;color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,"
|
||||||
"stop: 0.0 darkgray, stop: 0.5 lightgray, stop: 1.0 darkgray);}"
|
"stop: 0.0 darkgray, stop: 0.5 lightgray, stop: 1.0 darkgray);}"
|
||||||
"QLabel#warn{color:#930000;background:transparent;font-size:20px;}"
|
"QLabel#warn{color:#930000;background:transparent;font-size:20px;}"
|
||||||
"QFrame#login_frame_username{min-width:700px;max-width:700px;max-height:500px;min-height:500px;"
|
"QFrame#login_frame_username{min-width:700px;max-width:700px;max-height:500px;min-height:500px;"
|
||||||
"border:1px solid #0078d8;border-radius:20px;"
|
"border:1px solid #0078d8;border-radius:20px;"
|
||||||
"background:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,\n"
|
"background:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,\n"
|
||||||
" stop: 0.0 darkgray, stop: 0.5 gray, stop: 1.0 darkgray);"
|
" stop: 0.0 darkgray, stop: 0.5 gray, stop: 1.0 darkgray);"
|
||||||
"}"
|
"}"
|
||||||
"QLineEdit{min-height:100px;max-height:100px; border:1px solid silver;border-radius:10px;font-size:26px;}"
|
"QLineEdit{min-height:100px;max-height:100px; border:1px solid silver;border-radius:10px;font-size:26px;}"
|
||||||
"QLineEdit:enabled{background-color: #515151}"
|
"QLineEdit:enabled{background-color: #515151}"
|
||||||
"QComboBox{text-align:center;min-height:100px;max-height:100px; "
|
"QComboBox{text-align:center;min-height:100px;max-height:100px; "
|
||||||
"border:1px solid silver;border-radius:10px;padding:3px}"
|
"border:1px solid silver;border-radius:10px;padding:3px}"
|
||||||
"QComboBox:enabled{background-color: #515151}"
|
"QComboBox:enabled{background-color: #515151}"
|
||||||
"QComboBox::drop-down{width:80px;border-radius:10px}"
|
"QComboBox::drop-down{width:80px;border-radius:10px}"
|
||||||
"QComboBox QAbstractItemView{min-width:120px;}"
|
"QComboBox QAbstractItemView{min-width:120px;}"
|
||||||
"QComboBox QAbstractItemView::item {min-height:60px;max-height:60px; border:1px solid white;}"
|
"QComboBox QAbstractItemView::item {min-height:60px;max-height:60px; border:1px solid white;}"
|
||||||
"QToolButton{min-height:100px;max-height:100px;border:1px solid #505050;"
|
"QToolButton{min-height:100px;max-height:100px;border:1px solid #505050;"
|
||||||
"border-radius:10%;font-size:26px; font-weight:Bold;padding:5px;}"
|
"border-radius:10%;font-size:26px; font-weight:Bold;padding:5px;}"
|
||||||
"QToolButton:hover{background:#505050;}";
|
"QToolButton:hover{background:#505050;}";
|
||||||
setStyleSheet(style);
|
setStyleSheet(style);
|
||||||
|
|
||||||
m_pVMainLayout = new QVBoxLayout(this);
|
m_pVMainLayout = new QVBoxLayout(this);
|
||||||
m_pVMainLayout->setContentsMargins(0, 0, 0, 0);
|
m_pVMainLayout->setContentsMargins(0, 0, 0, 0);
|
||||||
m_pVMainLayout->setSpacing(0);
|
m_pVMainLayout->setSpacing(0);
|
||||||
m_pVMainLayout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding));
|
m_pVMainLayout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding));
|
||||||
|
|
||||||
QLabel* title = new QLabel(this);
|
QLabel* title = new QLabel(this);
|
||||||
title->setObjectName("title");
|
title->setObjectName("title");
|
||||||
title->setText("U S C T");
|
title->setText(tr("U S C T"));
|
||||||
m_pVMainLayout->addWidget(title, 0, Qt::AlignCenter);
|
m_pVMainLayout->addWidget(title, 0, Qt::AlignCenter);
|
||||||
m_pUserCodeFrame = new QFrame(this);
|
m_pUserCodeFrame = new QFrame(this);
|
||||||
m_pUserCodeFrame->setObjectName("login_frame_username");
|
m_pUserCodeFrame->setObjectName("login_frame_username");
|
||||||
m_pUserCodeLayout = new QVBoxLayout(m_pUserCodeFrame);
|
m_pUserCodeLayout = new QVBoxLayout(m_pUserCodeFrame);
|
||||||
m_pUserCodeLayout->setSpacing(30);
|
m_pUserCodeLayout->setSpacing(30);
|
||||||
m_pUserCodeLayout->setContentsMargins(20, 60, 20, 20);
|
m_pUserCodeLayout->setContentsMargins(20, 60, 20, 20);
|
||||||
warn = new QLabel(this);
|
warn = new QLabel(this);
|
||||||
warn->setObjectName("warn");
|
warn->setObjectName("warn");
|
||||||
warn->setText("Login failed, username or password error!");
|
warn->setText("Login failed, username or password error!");
|
||||||
warn->setVisible(false);
|
warn->setVisible(false);
|
||||||
m_pUserCodeLayout->addWidget(warn, 0, Qt::AlignCenter);
|
m_pUserCodeLayout->addWidget(warn, 0, Qt::AlignCenter);
|
||||||
m_pUserCodeEdit = new QLineEdit(m_pUserCodeFrame);
|
m_pUserCodeEdit = new QLineEdit(m_pUserCodeFrame);
|
||||||
m_pUserCodeEdit->setObjectName("combobox_UserName");
|
m_pUserCodeEdit->setObjectName("combobox_UserName");
|
||||||
|
|
||||||
//m_pUserCodeEdit->setLineEdit(new QLineEdit(m_pUserCodeFrame));
|
//m_pUserCodeEdit->setLineEdit(new QLineEdit(m_pUserCodeFrame));
|
||||||
|
|
||||||
m_pUserCodeEdit->setPlaceholderText(tr("Username"));
|
m_pUserCodeEdit->setPlaceholderText(tr("Username"));
|
||||||
m_pUserCodeLayout->addWidget(m_pUserCodeEdit);
|
m_pUserCodeLayout->addWidget(m_pUserCodeEdit);
|
||||||
m_pVMainLayout->addWidget(m_pUserCodeFrame, 0, Qt::AlignCenter);
|
m_pVMainLayout->addWidget(m_pUserCodeFrame, 0, Qt::AlignCenter);
|
||||||
|
|
||||||
m_pPassWordEdit = new QLineEdit(this);
|
m_pPassWordEdit = new QLineEdit(this);
|
||||||
m_pPassWordEdit->setObjectName("edt_Password");
|
m_pPassWordEdit->setObjectName("edt_Password");
|
||||||
m_pPassWordEdit->setEchoMode(QLineEdit::Password);
|
m_pPassWordEdit->setEchoMode(QLineEdit::Password);
|
||||||
m_pPassWordEdit->setPlaceholderText(tr("Password"));
|
m_pPassWordEdit->setPlaceholderText(tr("Password"));
|
||||||
m_pUserCodeLayout->addWidget(m_pPassWordEdit);
|
m_pUserCodeLayout->addWidget(m_pPassWordEdit);
|
||||||
|
|
||||||
ADD_TOOL_BTN_TO_LAYOUT(login, ":/icons/login.png", m_pUserCodeLayout);
|
ADD_TOOL_BTN_TO_LAYOUT(login, ":/icons/login.png", m_pUserCodeLayout);
|
||||||
m_pUserCodeLayout->removeWidget(btnlogin);
|
|
||||||
m_pUserCodeLayout->addWidget(btnlogin, 0, Qt::AlignCenter);
|
|
||||||
m_pLoginButton = btnlogin;
|
|
||||||
// m_pUserCodeLayout->addWidget(m_pLoginButton, 0, Qt::AlignCenter);
|
|
||||||
m_pVMainLayout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding));
|
|
||||||
|
|
||||||
initUserList();
|
m_pUserCodeLayout->removeWidget(btnlogin);
|
||||||
|
m_pUserCodeLayout->addWidget(btnlogin, 0, Qt::AlignCenter);
|
||||||
|
m_pLoginButton = btnlogin;
|
||||||
|
// m_pUserCodeLayout->addWidget(m_pLoginButton, 0, Qt::AlignCenter);
|
||||||
|
m_pVMainLayout->addSpacerItem(new QSpacerItem(20, 20, QSizePolicy::Minimum, QSizePolicy::Expanding));
|
||||||
|
|
||||||
|
initUserList();
|
||||||
}
|
}
|
||||||
|
|
||||||
void LoginWindow::init()
|
void LoginWindow::init()
|
||||||
{
|
{
|
||||||
connect(m_pLoginButton, SIGNAL(clicked()), this, SLOT(doLogin()));
|
connect(m_pLoginButton, SIGNAL(clicked()), this, SLOT(doLogin()));
|
||||||
}
|
}
|
||||||
|
|
||||||
void LoginWindow::initUserList()
|
void LoginWindow::initUserList()
|
||||||
@@ -114,31 +115,31 @@ void LoginWindow::initUserList()
|
|||||||
|
|
||||||
void LoginWindow::clearInputData()
|
void LoginWindow::clearInputData()
|
||||||
{
|
{
|
||||||
m_pUserCodeEdit->clear();
|
m_pUserCodeEdit->clear();
|
||||||
m_pPassWordEdit->clear();
|
m_pPassWordEdit->clear();
|
||||||
//m_pUserCodeEdit->setFocus();
|
//m_pUserCodeEdit->setFocus();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void LoginWindow::doLogin()
|
void LoginWindow::doLogin()
|
||||||
{
|
{
|
||||||
QString strUserCode = m_pUserCodeEdit->text();
|
QString strUserCode = m_pUserCodeEdit->text();
|
||||||
QString strPassWord = m_pPassWordEdit->text();
|
QString strPassWord = m_pPassWordEdit->text();
|
||||||
|
|
||||||
QString encryptedPassword = strPassWord;
|
QString encryptedPassword = strPassWord;
|
||||||
strPassWord = "123456";
|
strPassWord = "123456";
|
||||||
|
|
||||||
QString encryptPwd = User::getEncryptedPassword(strPassWord);
|
QString encryptPwd = User::getEncryptedPassword(strPassWord);
|
||||||
QString sql = QString("select UserCode from Account where UserCode='%1' and Password='%2'")
|
QString sql = QString("select UserCode from Account where UserCode='%1' and Password='%2'")
|
||||||
.arg(strUserCode).arg(encryptPwd);
|
.arg(strUserCode).arg(encryptPwd);
|
||||||
if(User::QueryUser(strUserCode,encryptPwd))
|
if (User::QueryUser(strUserCode, encryptPwd))
|
||||||
{
|
{
|
||||||
accept();
|
accept();
|
||||||
LOG_USER_OPERATION(Login);
|
LOG_USER_OPERATION(Login);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
warn->setVisible(true);
|
warn->setVisible(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
18
src/main.cpp
18
src/main.cpp
@@ -3,7 +3,7 @@
|
|||||||
#include "loginwindow.h"
|
#include "loginwindow.h"
|
||||||
#include "InputObject.h"
|
#include "InputObject.h"
|
||||||
#include <QQmlApplicationEngine>
|
#include <QQmlApplicationEngine>
|
||||||
#include <src/db/SQLHelper.h>
|
#include "db/SQLHelper.h"
|
||||||
#include <QTextCodec>
|
#include <QTextCodec>
|
||||||
#include <QFontDatabase>
|
#include <QFontDatabase>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
@@ -47,10 +47,16 @@ int main(int argc, char* argv[])
|
|||||||
QTextCodec* codec = QTextCodec::codecForName("utf8");
|
QTextCodec* codec = QTextCodec::codecForName("utf8");
|
||||||
QTextCodec::setCodecForLocale(codec);
|
QTextCodec::setCodecForLocale(codec);
|
||||||
|
|
||||||
|
|
||||||
|
//multi-language suppport
|
||||||
|
QTranslator translator;
|
||||||
|
LanguageSwitcher::Instance()->setTranslator(&translator);
|
||||||
|
LanguageSwitcher::Instance()->setDefaultLanguage(JsonObject::Instance()->defaultLanguage());
|
||||||
|
a.installTranslator(&translator);
|
||||||
|
|
||||||
|
|
||||||
//QString fontName = loadFontFromFile(":/fonts/MicrosoftYahei.ttf");
|
//QString fontName = loadFontFromFile(":/fonts/MicrosoftYahei.ttf");
|
||||||
QString fontName = loadFontFromFile(":/fonts/DroidSansFallback.ttf");
|
QString fontName = loadFontFromFile(":/fonts/DroidSansFallback.ttf");
|
||||||
|
|
||||||
|
|
||||||
QFont font(fontName);
|
QFont font(fontName);
|
||||||
QApplication::setFont(font);
|
QApplication::setFont(font);
|
||||||
|
|
||||||
@@ -65,11 +71,7 @@ int main(int argc, char* argv[])
|
|||||||
//QObject::connect(obj, SIGNAL(touchScreen()), Locker::Instance(), SLOT(refreshTimer()));
|
//QObject::connect(obj, SIGNAL(touchScreen()), Locker::Instance(), SLOT(refreshTimer()));
|
||||||
|
|
||||||
|
|
||||||
//multi-language suppport
|
|
||||||
QTranslator translator;
|
|
||||||
LanguageSwitcher::Instance()->setTranslator(&translator);
|
|
||||||
LanguageSwitcher::Instance()->setDefaultLanguage(JsonObject::Instance()->defaultLanguage());
|
|
||||||
a.installTranslator(&translator);
|
|
||||||
|
|
||||||
|
|
||||||
QStringList app_args = a.arguments();
|
QStringList app_args = a.arguments();
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
#include <qtabwidget.h>
|
#include <qtabwidget.h>
|
||||||
#include <QSizePolicy>
|
#include <QSizePolicy>
|
||||||
#include <QHBoxLayout>
|
#include <QHBoxLayout>
|
||||||
#include <src/event/EventCenter.h>
|
#include "event/EventCenter.h"
|
||||||
#include "tabformwidget.h"
|
#include "tabformwidget.h"
|
||||||
#include "SelectFormWidget.h"
|
#include "SelectFormWidget.h"
|
||||||
#include "ScanFormWidget.h"
|
#include "ScanFormWidget.h"
|
||||||
@@ -82,14 +82,14 @@ MainWindow::MainWindow(QWidget* parent) :
|
|||||||
"QComboBox QAbstractItemView::item {min-height:60px;max-height:60px; border:1px solid white;}"
|
"QComboBox QAbstractItemView::item {min-height:60px;max-height:60px; border:1px solid white;}"
|
||||||
//"QScrollBar:vertical {min-width: 50px;}"
|
//"QScrollBar:vertical {min-width: 50px;}"
|
||||||
"QLabel{color:white; font-weight:bold; font-size:16px;}\n"
|
"QLabel{color:white; font-weight:bold; font-size:16px;}\n"
|
||||||
"QLabel#sliderPickerLabel{color:silver;padding:0;background:#505050;font-weight:normal;font-size:50px;}\n"
|
"QLabel#sliderPickerLabel{color:silver;padding:0;background:#505050;font-weight:normal;font-size:50px;}\n"
|
||||||
"QWidget#topbarWidget{min-height:36px;max-height:36px;}\n"
|
"QWidget#topbarWidget{min-height:36px;max-height:36px;}\n"
|
||||||
"QWidget#contentWidget{border-top:1px solid #515151;}\n"
|
"QWidget#contentWidget{border-top:1px solid #515151;}\n"
|
||||||
"QWidget#commandWidget{min-height:123px;max-height:123px;border-top:1px solid #515151; border-bottom:1px solid #323232;}\n"
|
"QWidget#commandWidget{min-height:123px;max-height:123px;border-top:1px solid #515151; border-bottom:1px solid #323232;}\n"
|
||||||
"QLabel#logo{min-width:30px;max-width:30px}\n"
|
"QLabel#logo{min-width:30px;max-width:30px}\n"
|
||||||
"QLabel#company{min-width:150px;max-width:150px; }\n"
|
"QLabel#company{min-width:150px;max-width:150px; }\n"
|
||||||
"QLabel#systemMsgBar{min-width:500px;}"
|
"QLabel#systemMsgBar{min-width:500px;}"
|
||||||
"QLabel#warn{color:#CCCC00;background:transparent;font-size:20px;}"
|
"QLabel#warn{color:#CCCC00;background:transparent;font-size:20px;}"
|
||||||
"QWidget QWidget#statusBarWidget{min-width:300px;}\n"
|
"QWidget QWidget#statusBarWidget{min-width:300px;}\n"
|
||||||
"QWidget QToolButton{border:none;border-radius:10%;font-size:26px; font-weight:Bold;padding:5px;}\n"
|
"QWidget QToolButton{border:none;border-radius:10%;font-size:26px; font-weight:Bold;padding:5px;}\n"
|
||||||
"QToolButton#btn_main{border:2px solid #0078d8;border-radius:10%;font-size:26px; font-weight:Bold;padding:5px;}\n"
|
"QToolButton#btn_main{border:2px solid #0078d8;border-radius:10%;font-size:26px; font-weight:Bold;padding:5px;}\n"
|
||||||
@@ -103,32 +103,32 @@ MainWindow::MainWindow(QWidget* parent) :
|
|||||||
"QDialog QWidget#innerWidget{ background:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,"
|
"QDialog QWidget#innerWidget{ background:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,"
|
||||||
"stop: 0.0 darkgray, stop: 0.5 lightgray, stop: 1.0 darkgray);"
|
"stop: 0.0 darkgray, stop: 0.5 lightgray, stop: 1.0 darkgray);"
|
||||||
"border-radius:20px;border:5px solid #0078d8; }"
|
"border-radius:20px;border:5px solid #0078d8; }"
|
||||||
"QDialog#MessageDialog QWidget QWidget{ background:transparent;color:#3078d8}"
|
"QDialog#MessageDialog QWidget QWidget{ background:transparent;color:#3078d8}"
|
||||||
"QDialog#MessageDialog QWidget QWidget QLabel{ font-size:30px}"
|
"QDialog#MessageDialog QWidget QWidget QLabel{ font-size:30px}"
|
||||||
"#spacer_1, #spacer_2{min-width:2px;max-width:2px;margin-top:6px;margin-bottom:6px;border-right:1px solid #0078d8;}"
|
"#spacer_1, #spacer_2{min-width:2px;max-width:2px;margin-top:6px;margin-bottom:6px;border-right:1px solid #0078d8;}"
|
||||||
//FormDialog
|
//FormDialog
|
||||||
"QPushButton{border:1px solid silver ;padding-left:50px;padding-right:50px; border-radius:5px; min-height:28px; max-height:28px; background:#4c5052}"
|
"QPushButton{border:1px solid silver ;padding-left:50px;padding-right:50px; border-radius:5px; min-height:28px; max-height:28px; background:#4c5052}"
|
||||||
"QPushButton#btnOK{background:#365880; font-weight:bold}"
|
"QPushButton#btnOK{background:#365880; font-weight:bold}"
|
||||||
"QDialog#formDialog{border:3px solid silver; border-radius:8px}"
|
"QDialog#formDialog{border:3px solid silver; border-radius:8px}"
|
||||||
"QWidget#slider_one{border:1px solid silver; border-radius:8px}"
|
"QWidget#slider_one{border:1px solid silver; border-radius:8px}"
|
||||||
"QWidget#formWidget QLabel#endline{border-bottom:1px solid silver}"
|
"QWidget#formWidget QLabel#endline{border-bottom:1px solid silver}"
|
||||||
"QWidget#formWidget QLabel#title{font-size:30px; border-bottom:1px solid #3078d8 }"
|
"QWidget#formWidget QLabel#title{font-size:30px; border-bottom:1px solid #3078d8 }"
|
||||||
"QListView{border:none;margin:5px; font-weight:bold}"
|
"QListView{border:none;margin:5px; font-weight:bold}"
|
||||||
"QListView::item{background:#4c5052;min-height:30px; border:1px solid silver; border-radius:5px}"
|
"QListView::item{background:#4c5052;min-height:30px; border:1px solid silver; border-radius:5px}"
|
||||||
"QListView::item:selected{background:#365880; font-weight:bold;color:white}"
|
"QListView::item:selected{background:#365880; font-weight:bold;color:white}"
|
||||||
"QHeaderView::section{background-color:#595959;"
|
"QHeaderView::section{background-color:#595959;"
|
||||||
"min-height:50px;max-height:50px;"
|
"min-height:50px;max-height:50px;"
|
||||||
"font-weight:Bold; font-size:16px; border:1px solid #323232;}"
|
"font-weight:Bold; font-size:16px; border:1px solid #323232;}"
|
||||||
"QHeaderView::section:horizontal{border-bottom: 1px solid rgb(0,170,255);}"
|
"QHeaderView::section:horizontal{border-bottom: 1px solid rgb(0,170,255);}"
|
||||||
"QHeaderView::section:vertical{min-height:36px;max-height:36px;}"
|
"QHeaderView::section:vertical{min-height:36px;max-height:36px;}"
|
||||||
"QWidget#edit_patient{min-width:300px;max-width:300px;}"
|
"QWidget#edit_patient{min-width:300px;max-width:300px;}"
|
||||||
"QTableView{border:none}"
|
"QTableView{border:none}"
|
||||||
"QTableView{alternate-background-color: #595959;selection-color:white;selection-background-color:#0078d8}"
|
"QTableView{alternate-background-color: #595959;selection-color:white;selection-background-color:#0078d8}"
|
||||||
"QToolButton#sexBtn{min-width:120px;max-width:120px;font-size:20px;padding:2px;}"
|
"QToolButton#sexBtn{min-width:120px;max-width:120px;font-size:20px;padding:2px;}"
|
||||||
"QToolButton#sexBtn:disabled{color:silver}"
|
"QToolButton#sexBtn:disabled{color:silver}"
|
||||||
"QWidget#sexpanelwidget{border:1px solid silver;}"
|
"QWidget#sexpanelwidget{border:1px solid silver;}"
|
||||||
"QWidget#sexpanelwidget:enabled{background-color: #515151;}"
|
"QWidget#sexpanelwidget:enabled{background-color: #515151;}"
|
||||||
"QToolButton#sexBtn:checked{border:2px solid darkorange;padding:0px;}"
|
"QToolButton#sexBtn:checked{border:2px solid darkorange;padding:0px;}"
|
||||||
;
|
;
|
||||||
this->setStyleSheet(style);
|
this->setStyleSheet(style);
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
@@ -139,47 +139,48 @@ MainWindow::MainWindow(QWidget* parent) :
|
|||||||
tab->setCurrentIndex(1);
|
tab->setCurrentIndex(1);
|
||||||
});
|
});
|
||||||
SelectFormWidget* select_form = new SelectFormWidget(this);
|
SelectFormWidget* select_form = new SelectFormWidget(this);
|
||||||
tab->addTab(select_form, "Select");
|
tab->addTab(select_form, tr("Select"));
|
||||||
ScanFormWidget* scan_form = new ScanFormWidget(this);
|
ScanFormWidget* scan_form = new ScanFormWidget(this);
|
||||||
tab->addTab(scan_form, "Scan");
|
tab->addTab(scan_form, tr("Scan"));
|
||||||
TabFormWidget* verify_form = new TabFormWidget(this);
|
TabFormWidget* verify_form = new TabFormWidget(this);
|
||||||
tab->addTab(verify_form, "Verify");
|
tab->addTab(verify_form, tr("Verify"));
|
||||||
tab->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
|
tab->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
|
||||||
QVBoxLayout* layout = new QVBoxLayout(this);
|
QVBoxLayout* layout = new QVBoxLayout(this);
|
||||||
layout->setMargin(0);
|
layout->setMargin(0);
|
||||||
layout->setSpacing(0);
|
layout->setSpacing(0);
|
||||||
QWidget * top = new TopBarWidget(this);
|
QWidget* top = new TopBarWidget(this);
|
||||||
top->setObjectName("topbarWidget");
|
top->setObjectName("topbarWidget");
|
||||||
layout->addWidget(top);
|
layout->addWidget(top);
|
||||||
layout->addWidget(tab);
|
layout->addWidget(tab);
|
||||||
|
|
||||||
ui->centralWidget->setLayout(layout);
|
ui->centralWidget->setLayout(layout);
|
||||||
this->setWindowFlags(Qt::Window);
|
this->setWindowFlags(Qt::Window);
|
||||||
connect(EventCenter::Default(), &EventCenter::DeviceErrorRaise, [=](QObject* parent, QObject* msg) {
|
connect(EventCenter::Default(), &EventCenter::DeviceErrorRaise, [=](QObject* parent, QObject* msg) {
|
||||||
//默认旧模式
|
//默认旧模式
|
||||||
if (!msgDialog) {
|
if (!msgDialog) {
|
||||||
msgDialog = new GUIMessageDialog(this);
|
msgDialog = new GUIMessageDialog(this);
|
||||||
msgDialog->setStyleSheet(style);
|
msgDialog->setStyleSheet(style);
|
||||||
}
|
}
|
||||||
if (msg) {
|
if (msg) {
|
||||||
QString *str = (QString *) msg;
|
QString* str = (QString*)msg;
|
||||||
msgDialog->showMessage(*str);
|
msgDialog->showMessage(*str);
|
||||||
} else {
|
}
|
||||||
msgDialog->showMessage("Something went error!");
|
else {
|
||||||
}
|
msgDialog->showMessage("Something went error!");
|
||||||
msgDialog->stopLoading();
|
}
|
||||||
msgDialog->showExitButton();
|
msgDialog->stopLoading();
|
||||||
if (msgDialog->isHidden()){
|
msgDialog->showExitButton();
|
||||||
msgDialog->setWindowModality(Qt::NonModal);
|
if (msgDialog->isHidden()) {
|
||||||
msgDialog->exec();
|
msgDialog->setWindowModality(Qt::NonModal);
|
||||||
}
|
msgDialog->exec();
|
||||||
});
|
}
|
||||||
|
});
|
||||||
connect(EventCenter::Default(), &EventCenter::InvokeOperationStart, [=](QObject*, QObject* msg) {
|
connect(EventCenter::Default(), &EventCenter::InvokeOperationStart, [=](QObject*, QObject* msg) {
|
||||||
if (msgDialog){
|
if (msgDialog) {
|
||||||
msgDialog->hide();
|
msgDialog->hide();
|
||||||
delete msgDialog;
|
delete msgDialog;
|
||||||
}
|
}
|
||||||
msgDialog = new GUIMessageDialog(this);
|
msgDialog = new GUIMessageDialog(this);
|
||||||
if (msg)
|
if (msg)
|
||||||
{
|
{
|
||||||
QString* str = (QString*)msg;
|
QString* str = (QString*)msg;
|
||||||
@@ -191,11 +192,11 @@ MainWindow::MainWindow(QWidget* parent) :
|
|||||||
msgDialog->hideExitButton();
|
msgDialog->hideExitButton();
|
||||||
msgDialog->startLoading();
|
msgDialog->startLoading();
|
||||||
AppGlobalValues::setInProcessing(true);
|
AppGlobalValues::setInProcessing(true);
|
||||||
// msgDialog->showFullScreen();
|
// msgDialog->showFullScreen();
|
||||||
if (msgDialog->isHidden()){
|
if (msgDialog->isHidden()) {
|
||||||
msgDialog->show();
|
msgDialog->show();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
connect(EventCenter::Default(), &EventCenter::InvokeOperationProgress, [=](QObject*, QObject* msg) {
|
connect(EventCenter::Default(), &EventCenter::InvokeOperationProgress, [=](QObject*, QObject* msg) {
|
||||||
if (!msgDialog) msgDialog = new GUIMessageDialog(this);
|
if (!msgDialog) msgDialog = new GUIMessageDialog(this);
|
||||||
if (msg)
|
if (msg)
|
||||||
@@ -206,58 +207,70 @@ MainWindow::MainWindow(QWidget* parent) :
|
|||||||
else {
|
else {
|
||||||
msgDialog->hideMessage();
|
msgDialog->hideMessage();
|
||||||
}
|
}
|
||||||
// msgDialog->showFullScreen();
|
// msgDialog->showFullScreen();
|
||||||
if (msgDialog->isHidden())msgDialog->show();
|
if (msgDialog->isHidden())msgDialog->show();
|
||||||
});
|
});
|
||||||
connect(EventCenter::Default(), &EventCenter::InvokeOperationEnd, [=]() {
|
connect(EventCenter::Default(), &EventCenter::InvokeOperationEnd, [=]() {
|
||||||
if (!msgDialog) return;
|
if (!msgDialog) return;
|
||||||
if (!msgDialog->isHidden())msgDialog->accept();
|
if (!msgDialog->isHidden())msgDialog->accept();
|
||||||
delete msgDialog;
|
delete msgDialog;
|
||||||
msgDialog = nullptr;
|
msgDialog = nullptr;
|
||||||
AppGlobalValues::setInProcessing(false);
|
AppGlobalValues::setInProcessing(false);
|
||||||
});
|
});
|
||||||
connect(EventCenter::Default(), &EventCenter::RequestLogin, [=](QObject*, QObject* msg) {
|
connect(EventCenter::Default(), &EventCenter::RequestLogin, [=](QObject*, QObject* msg) {
|
||||||
this->requestLogin();
|
this->requestLogin();
|
||||||
});
|
});
|
||||||
connect(EventCenter::Default(), &EventCenter::LoginRoleChanged, [=](QObject*, QObject*) {
|
connect(EventCenter::Default(), &EventCenter::LoginRoleChanged, [=](QObject*, QObject*) {
|
||||||
if (User::Current()->isAdmin() )
|
if (User::Current()->isAdmin())
|
||||||
{
|
{
|
||||||
if (admin_tab_index == -1)
|
if (admin_tab_index == -1)
|
||||||
{
|
{
|
||||||
AdminSettingForm * form = new AdminSettingForm(this);
|
AdminSettingForm* form = new AdminSettingForm(this);
|
||||||
admin_tab_index = tab->addTab(form,"Admin");
|
admin_tab_index = tab->addTab(form, tr("Admin"));
|
||||||
}
|
}
|
||||||
} else{
|
}
|
||||||
if (admin_tab_index != -1){
|
else {
|
||||||
tab->removeTab(admin_tab_index);
|
if (admin_tab_index != -1) {
|
||||||
admin_tab_index = -1;
|
tab->removeTab(admin_tab_index);
|
||||||
}
|
admin_tab_index = -1;
|
||||||
}
|
}
|
||||||
qApp->processEvents();
|
}
|
||||||
});
|
qApp->processEvents();
|
||||||
|
});
|
||||||
|
|
||||||
GUIErrorHandle::Default()->init();
|
GUIErrorHandle::Default()->init();
|
||||||
DeviceManager::Default()->initDevice();
|
DeviceManager::Default()->initDevice();
|
||||||
|
|
||||||
QThread* t = QThread::create([](){
|
QThread* t = QThread::create([]() {
|
||||||
QThread::sleep(10);
|
QThread::sleep(10);
|
||||||
int f = 0x00100001;
|
int f = 0x00100001;
|
||||||
for (int i = 0; i < 8; ++i) {
|
for (int i = 0; i < 8; ++i) {
|
||||||
QThread::sleep(10);
|
QThread::sleep(10);
|
||||||
f= f << (i*4);
|
f = f << (i * 4);
|
||||||
printf("invoke %d\r\n", f);
|
printf("invoke %d\r\n", f);
|
||||||
char* v = (char*)&f;
|
char* v = (char*)&f;
|
||||||
QString msg;
|
QString msg;
|
||||||
msg.append("w ");
|
msg.append("w ");
|
||||||
msg.append(v[0]);
|
msg.append(v[0]);
|
||||||
msg.append(v[1]);
|
msg.append(v[1]);
|
||||||
msg.append(v[2]);
|
msg.append(v[2]);
|
||||||
msg.append(v[3]);
|
msg.append(v[3]);
|
||||||
EventCenter::Default()->triggerEvent(GUIErrorRaise,nullptr,(QObject*)&msg);
|
EventCenter::Default()->triggerEvent(GUIErrorRaise, nullptr, (QObject*)&msg);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
t->start();
|
t->start();
|
||||||
centerWidgetHide();
|
centerWidgetHide();
|
||||||
|
|
||||||
|
connect(EventCenter::Default(), &EventCenter::ReloadLanguage, [=]() {
|
||||||
|
|
||||||
|
tab->setTabText(0, tr("Select"));
|
||||||
|
tab->setTabText(1, tr("Scan"));
|
||||||
|
tab->setTabText(2, tr("Verify"));
|
||||||
|
tab->setTabText(3, tr("Admin"));
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
MainWindow::~MainWindow()
|
MainWindow::~MainWindow()
|
||||||
@@ -276,7 +289,7 @@ void MainWindow::changeEvent(QEvent* event)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::centerWidgetHide() {
|
void MainWindow::centerWidgetHide() {
|
||||||
ui->centralWidget->setVisible(false);
|
ui->centralWidget->setVisible(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::centerWidgetShow() {
|
void MainWindow::centerWidgetShow() {
|
||||||
@@ -291,19 +304,19 @@ QTextEdit* MainWindow::getEdit()
|
|||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::requestLogin() {
|
void MainWindow::requestLogin() {
|
||||||
LoginWindow l(this);
|
LoginWindow l(this);
|
||||||
l.setWindowModality(Qt::WindowModal);
|
l.setWindowModality(Qt::WindowModal);
|
||||||
l.showFullScreen();
|
l.showFullScreen();
|
||||||
this->centerWidgetHide();
|
this->centerWidgetHide();
|
||||||
while(l.result() != QDialog::Accepted)
|
while (l.result() != QDialog::Accepted)
|
||||||
{
|
{
|
||||||
l.exec();
|
l.exec();
|
||||||
}
|
}
|
||||||
this->centerWidgetShow();
|
this->centerWidgetShow();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::debugConsoleOn() {
|
void MainWindow::debugConsoleOn() {
|
||||||
QTextEdit* text_edit = new QTextEdit(this);
|
QTextEdit* text_edit = new QTextEdit(this);
|
||||||
ui->centralWidget->layout()->addWidget(text_edit);
|
ui->centralWidget->layout()->addWidget(text_edit);
|
||||||
const QString edit_style =
|
const QString edit_style =
|
||||||
"QScrollBar:vertical{border: 0px solid grey; background:#2d2d2d; width: 15px; margin: 0px 0 0px 0; }"
|
"QScrollBar:vertical{border: 0px solid grey; background:#2d2d2d; width: 15px; margin: 0px 0 0px 0; }"
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ GetAdminPsw::GetAdminPsw(QWidget* parent, Qt::WindowFlags f) : GUIFormBaseDialog
|
|||||||
form->addRow(value1, _psw);
|
form->addRow(value1, _psw);
|
||||||
|
|
||||||
lbl_error = new QLabel(this);
|
lbl_error = new QLabel(this);
|
||||||
lbl_error->setObjectName("warn");
|
lbl_error->setObjectName(QString::fromUtf8("warn"));
|
||||||
form->addRow("", lbl_error);
|
form->addRow("", lbl_error);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,15 +12,16 @@ GetIPDialog::GetIPDialog(QWidget* parent, Qt::WindowFlags f) : GUIFormBaseDialog
|
|||||||
|
|
||||||
setWindowModality(Qt::WindowModal);
|
setWindowModality(Qt::WindowModal);
|
||||||
QFormLayout* form = new QFormLayout(formWidget);
|
QFormLayout* form = new QFormLayout(formWidget);
|
||||||
QString value1 = QString(tr("IP Address"));
|
QLabel* value1 = new QLabel(tr("IP Address"));
|
||||||
_ip = new QLineEdit(this);
|
_ip = new QLineEdit(this);
|
||||||
form->addRow(value1, _ip);
|
form->addRow(value1, _ip);
|
||||||
QString value2 = QString(tr("Netmask"));
|
|
||||||
|
QLabel* value2 = new QLabel(tr("Netmask"));
|
||||||
_mask = new QLineEdit(this);
|
_mask = new QLineEdit(this);
|
||||||
form->addRow(value2, _mask);
|
form->addRow(value2, _mask);
|
||||||
|
|
||||||
lbl_error = new QLabel(this);
|
lbl_error = new QLabel(this);
|
||||||
lbl_error->setObjectName(tr("warn"));
|
lbl_error->setObjectName(QString::fromUtf8("warn"));
|
||||||
form->addRow("", lbl_error);
|
form->addRow("", lbl_error);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,12 +30,15 @@ networkCfgDialog::networkCfgDialog(QWidget* parent) :
|
|||||||
model_route = new NetCfgTableModel(this);
|
model_route = new NetCfgTableModel(this);
|
||||||
|
|
||||||
QStringList header_addr;
|
QStringList header_addr;
|
||||||
header_addr << "IP Address" << "Netmask";
|
header_addr << tr("IP Address") << tr("Netmask");
|
||||||
model_addr->setHeader(header_addr);
|
model_addr->setHeader(header_addr);
|
||||||
QStringList route_addr;
|
QStringList route_addr;
|
||||||
route_addr << "Destination" << "Gateway" << "Netmask";
|
route_addr << tr("Destination") << tr("Gateway") << tr("Netmask");
|
||||||
model_route->setHeader(route_addr);
|
model_route->setHeader(route_addr);
|
||||||
|
|
||||||
|
ui->btn_group->button(QDialogButtonBox::Apply)->setText(tr("Apply"));
|
||||||
|
ui->btn_group->button(QDialogButtonBox::Cancel)->setText(tr("Cancel"));
|
||||||
|
|
||||||
loadData();
|
loadData();
|
||||||
|
|
||||||
ui->tbl_addr->setModel(model_addr);
|
ui->tbl_addr->setModel(model_addr);
|
||||||
@@ -62,6 +65,7 @@ networkCfgDialog::networkCfgDialog(QWidget* parent) :
|
|||||||
ui->tbl_route->setColumnWidth(2, 230);
|
ui->tbl_route->setColumnWidth(2, 230);
|
||||||
ui->tbl_route->horizontalHeader()->setFixedHeight(38);
|
ui->tbl_route->horizontalHeader()->setFixedHeight(38);
|
||||||
|
|
||||||
|
|
||||||
connect(ui->btn_addr_add, &QPushButton::clicked, [=]()
|
connect(ui->btn_addr_add, &QPushButton::clicked, [=]()
|
||||||
{
|
{
|
||||||
//GetIPDialog* dialog = new GetIPDialog(this);
|
//GetIPDialog* dialog = new GetIPDialog(this);
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#include "tabformwidget.h"
|
#include "tabformwidget.h"
|
||||||
#include "ui_tabformwidget.h"
|
#include "ui_tabformwidget.h"
|
||||||
#include <QDateTime>
|
#include <QDateTime>
|
||||||
#include <src/components/RollingMessageWidget.h>
|
#include "components/RollingMessageWidget.h"
|
||||||
#include "event/EventCenter.h"
|
#include "event/EventCenter.h"
|
||||||
|
|
||||||
#if defined(_MSC_VER) && (_MSC_VER >= 1600)
|
#if defined(_MSC_VER) && (_MSC_VER >= 1600)
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user