From 54e15397831a37f496d315d20dba4d755a473025 Mon Sep 17 00:00:00 2001 From: xueyan hu <576627988@qq.com> Date: Wed, 19 Jan 2022 14:24:16 +0800 Subject: [PATCH] optimize debug console --- src/InputObject.cpp | 4 +-- src/main.cpp | 17 +++++++----- src/mainwindow.cpp | 44 ++++++++++++++++++++++--------- src/mainwindow.h | 8 +++--- src/translations/en_US.ts | 4 --- src/translations/en_US.ts.bak | 4 --- src/translations/zh_CN.qm | Bin 10652 -> 10591 bytes src/translations/zh_CN.ts | 48 ++++++++++++++++------------------ src/translations/zh_CN.ts.bak | 48 ++++++++++++++++------------------ 9 files changed, 96 insertions(+), 81 deletions(-) diff --git a/src/InputObject.cpp b/src/InputObject.cpp index bbe3600..ee7480e 100644 --- a/src/InputObject.cpp +++ b/src/InputObject.cpp @@ -89,7 +89,7 @@ bool InputObject::eventFilter(QObject* obj, QEvent* event) { emit touchScreen(); - qDebug() << "touchScreen()"; + //qDebug() << "touchScreen()"; } //mouse button release means setfocus is useless if (event->type() == QEvent::MouseButtonRelease) @@ -141,7 +141,7 @@ bool InputObject::eventFilter(QObject* obj, QEvent* event) } void InputObject::ShowPanel() { - if (!qApp->focusWidget()) return; + if (!qApp->focusWidget()) return; if (qApp->focusWidget()->inherits("QLineEdit")) { curLine = qobject_cast(qApp->focusWidget()); diff --git a/src/main.cpp b/src/main.cpp index ec8c898..d021218 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -75,11 +75,15 @@ int main(int argc, char* argv[]) w.grabGestures(gestures); QStringList app_args = a.arguments(); - int ret = 0; + int ret = 0; + if (app_args.contains("-d")) //if (true) { + w.debugConsoleOn(); + w.showFullScreen(); + qInstallMessageHandler(MainWindow::QMessageOutput); QThread thread; StdOutRedirector redir; @@ -88,9 +92,10 @@ int main(int argc, char* argv[]) redir.moveToThread(&thread); QObject::connect(&Timer, SIGNAL(timeout()), &redir, SLOT(readOutsToTF())); fflush(stdout); - Timer.start(1000); + Timer.start(10000); thread.start(); - w.showFullScreen(); + + DeviceManager::Default()->initDevice(); w.requestLogin(); @@ -102,8 +107,8 @@ int main(int argc, char* argv[]) w.showFullScreen(); DeviceManager::Default()->initDevice(); w.requestLogin(); - ret = a.exec(); + ret = a.exec(); } - DeviceManager::Default()->close(); - return ret; + DeviceManager::Default()->close(); + return ret; } diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index 4df3683..0beafc7 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -21,7 +21,7 @@ #include #include "TopBarWidget.h" #include - +#include void MainWindow::QMessageOutput(QtMsgType type, const QMessageLogContext& context, const QString& msg) { @@ -161,9 +161,9 @@ MainWindow::MainWindow(QWidget* parent) : } qApp->processEvents(); }); - connect(DeviceManager::Default(),&DeviceManager::raiseGlobalError,this,&MainWindow::triggerError); - GUIErrorHandle::Default()->init(); - l = new LoginWindow(this); + connect(DeviceManager::Default(), &DeviceManager::raiseGlobalError, this, &MainWindow::triggerError); + GUIErrorHandle::Default()->init(); + l = new LoginWindow(this); t = QThread::create([]() { QThread::sleep(10); int f = 0x00100001; @@ -198,8 +198,8 @@ MainWindow::MainWindow(QWidget* parent) : MainWindow::~MainWindow() { - t->terminate(); - delete t; + t->terminate(); + delete t; delete ui; delete redir; } @@ -243,7 +243,7 @@ QTextEdit* MainWindow::getEdit() void MainWindow::requestLogin() { - l->clearInputData(); + l->clearInputData(); l->setWindowModality(Qt::WindowModal); l->showFullScreen(); this->centerWidgetHide(); @@ -251,14 +251,22 @@ void MainWindow::requestLogin() { { l->exec(); } - l->setResult(QDialog::Rejected); + l->setResult(QDialog::Rejected); this->centerWidgetShow(); } void MainWindow::debugConsoleOn() { + + debugMode = true; + dockWidget = new QDockWidget(this); + dockWidget->setObjectName(QString::fromUtf8("dockWidget")); + dockWidget->setAllowedAreas(Qt::RightDockWidgetArea); + this->addDockWidget(static_cast(2), dockWidget); + QTextEdit* text_edit = new QTextEdit(this); text_edit->setFocusPolicy(Qt::NoFocus); - ui->centralWidget->layout()->addWidget(text_edit); + dockWidget->setWidget(text_edit); + const QString edit_style = "QScrollBar:vertical{border: 0px solid grey; background:#2d2d2d; width: 15px; margin: 0px 0 0px 0; }" "QScrollBar::handle:vertical{background:#5a5a5a;min-height: 25px;}" @@ -295,11 +303,11 @@ bool MainWindow::gestureEvent(QGestureEvent* event) //qCDebug(lcExample) << "gestureEvent():" << event; if (QGesture* swipe = event->gesture(Qt::SwipeGesture)) swipeTriggered(static_cast(swipe)); - else if (QGesture* pan = event->gesture(Qt::PanGesture)) + //else if (QGesture* pan = event->gesture(Qt::PanGesture)) //panTriggered(static_cast(pan)); - if (QGesture* pinch = event->gesture(Qt::PinchGesture)) + //if (QGesture* pinch = event->gesture(Qt::PinchGesture)) //pinchTriggered(static_cast(pinch)); - return true; + return true; } void MainWindow::swipeTriggered(QSwipeGesture* gesture) { @@ -319,6 +327,18 @@ void MainWindow::swipeTriggered(QSwipeGesture* gesture) tab->setCurrentIndex(index); } } + if (gesture->verticalDirection() == QSwipeGesture::Down) { + if (debugMode) + { + dockWidget->show(); + } + } + if (gesture->verticalDirection() == QSwipeGesture::Up) { + if (debugMode) + { + dockWidget->hide(); + } + } //update(); } } \ No newline at end of file diff --git a/src/mainwindow.h b/src/mainwindow.h index e056bda..d1dc469 100644 --- a/src/mainwindow.h +++ b/src/mainwindow.h @@ -15,7 +15,7 @@ class GUIMessageDialog; class QTabWidget; class QGestureEvent; class QSwipeGesture; - +class QDockWidget; class MainWindow : public QMainWindow { @@ -45,14 +45,16 @@ private: cJSON* json_root = nullptr; Ui::MainWindow* ui; + QDockWidget* dockWidget; GUIMessageDialog* msgDialog = nullptr; StdOutRedirector* redir = nullptr; QTextEdit* console = nullptr; bool m_bLoaded = false; QTabWidget* tab = nullptr; int admin_tab_index = -1; - LoginWindow* l; - QThread* t; + LoginWindow* l; + QThread* t; + bool debugMode = false; }; #endif // MAINWINDOW_H diff --git a/src/translations/en_US.ts b/src/translations/en_US.ts index e3d904f..7a9caf5 100644 --- a/src/translations/en_US.ts +++ b/src/translations/en_US.ts @@ -78,10 +78,6 @@ Logout - - Change Role - - Reset password to "123456" ? diff --git a/src/translations/en_US.ts.bak b/src/translations/en_US.ts.bak index e3d904f..7a9caf5 100644 --- a/src/translations/en_US.ts.bak +++ b/src/translations/en_US.ts.bak @@ -78,10 +78,6 @@ Logout - - Change Role - - Reset password to "123456" ? diff --git a/src/translations/zh_CN.qm b/src/translations/zh_CN.qm index 6cb83949b107a7a4d76655ea787ef49d2af915c1..f30b4c49bbaa50f5e0f2f59949eb46b92133aae8 100644 GIT binary patch delta 1392 zcmXApdrXyO9LK-!;eF2SJvWfcfrA`@Oj{;Wfshs~U|hxmCBm6BDzFQTLQ1C#4~Q)> z!iqpMT2x|%l!zE6xdogN449V$HE7yIRMIx5)U2g_;rZ+HUY_^&{C?l>_j#LgF06jv z-;)iX9I$Ny)LbBBLNc_5JOk)|m9$il7Xg=7(!ESFq8<<{0P6!lv<=Yol2+E5y$`7Z zQulGqtCB%iB}3bRjDElq_7yOa1O!h*xBgGS-YgmR8r0fKV166aZk3IEE9tx-8TJd* zvG)MWB1y+BN&m%?!CuMmUIZZs9gG1MbRz!K!+h>Q zY9m!NJd3nV@g7R5%wBNPETo-#oE()5&qq%FT^0_)Gvl-(@Ld!~y#W{pu;I5J%CDeP z`J5cXm4B!ZUX(N@D8hS_6K5&$0k>Fxt2lsIzU&-K?#r_7~8>>Zo>v4K@O$?qcr2@%fc-MKZ zD-y#epJ&0J#EHx@N*XK9x=4GWq@z=x?l{EzX#JY*rBv*Y{==ALhJ3eV=yQhL6qU-B zcnq~CcGIgHhP@^Jl>A{yLyct6QNw}SOZ3WRI9N*BPD;A-4FB2w1|qi_GbVe0hy>$P z9W#9IG`3!vWMg%bzKO=;wFAsfmnq{sk8((=sd$}*>+hI~^Ox|sXN{?(J%|cang)|t zz_;EsoXAQ2`b>A-PXPYA%xl*(ECDui;mX+tnMWe z9=8eYyN)P^Db12lHO@w_Tbh!$Go-66-3otPeves(ww>Ynjh4%aw7^_w4HxH__AS<^ zq~94vtM!G~zhV7RYfUx>H9D<3N9etMY>owR!|EMaNsoW9j(I7aa@#tULz)V#H%b|z z$VY7VhrG?O?69p1y~+1(+vGjcY_^+^oMt$`wre%HR delta 1429 zcmXApeN2^A9LK-+@|^qj+~-~(-rp`4dL;+hgkVv=Tu5NpNFvQaO9iB0D1kK#xuI0U zuG1te7%pwl7BDdob0IE+5e%5-KrwV`@{&$1S4y^Nec}A|InQ~{bI$ko{r=8#d396v zUO)F*0Of$K9Z+(BP#?*#ljIm+v`bn$$t!$+U(!(^88rxq=K<{vV6hEQIi9DsOETmb zu(FwJzLE?ImkgT*G6n#5#6@7#1%x=DFT4%d$0Z}0p?E$7!mmQF9%a_j7(&A{m(nv7Z|nH$pU20lp5&zz~SGH-SJmY)N!e3?pGE9*De-qyt@?PsPgp z{rqk((%wsQ)6#_b0V}OR+QbV$ghkT157~JS0iR5~HpwUgenfFx1z>uBcP^cx{Rud# zJH!K2%>GM0fIHQ;?%-_m5}IZO0?mG0xr zY)*fEdmj}>>VKc%0_B9)_g_=F&fqm!zKH_vdEJ<0<+f3;zxCdX%B4I}#`nH`O2R-s z;I&-Y)RXTRAVKa3~hMrM|6NlL&&q;bGNjh#SBMaF+Bk32TT+H~1S=UGgFBkDMv|L{x z5`F2I<+7+r83LTI3%93z2`m3tG(FwSie8coJ|MoS=dl($#nf2W8t~i}pMoWvu`B2i{AnASGkna5*p9>9Zdt&L>jA37V3J^RZ8CGY^Nmc0V zA-B0_i}vdC0{L zdPcqiv^J&Gut`6$_UQQI^4)A5-Z94YZPw{!jKI>MImHCKy+ez0 zU1c+_(2}bPsN输入用户名 - + Password 密码 - + Change Password 修改密码 - + Input password 输入密码 @@ -127,75 +127,73 @@ 重置密码 - + Reset Password 密码重置 - - + Logout 登出 - Change Role - 类型 + 类型 doctor 医生 - + Reset password to "123456" ? 密码重置为"123456"? - + Inner error, can't find reference user! 内部错误! - - + + Submit change to database fail! 修改提交至数据库失败! - + Comment 备注 - - - + + + User Name can't be empty! 用户名不能为空! - + User ID can't be empty! 用户ID不能为空! - + Password can't be empty! 密码不能为空! - + Inner error ,unset data model! 内部错误! - + User Id exists! 用户ID已存在! - + Submit to data base fail! 提交至数据库失败! @@ -1175,22 +1173,22 @@ parameters 正在加载... - + total: %1G 总量:%1G - + Get disk total size fail! 磁盘总空间获取失败! - + used: %1G 使用:%1G - + Get disk used size fail! 磁盘使用空间获取失败! diff --git a/src/translations/zh_CN.ts.bak b/src/translations/zh_CN.ts.bak index 05661f0..2651393 100644 --- a/src/translations/zh_CN.ts.bak +++ b/src/translations/zh_CN.ts.bak @@ -104,17 +104,17 @@ 输入用户名 - + Password 密码 - + Change Password 修改密码 - + Input password 输入密码 @@ -127,75 +127,73 @@ 重置密码 - + Reset Password 密码重置 - - + Logout 登出 - Change Role - 类型 + 类型 doctor 医生 - + Reset password to "123456" ? 密码重置为"123456"? - + Inner error, can't find reference user! 内部错误! - - + + Submit change to database fail! 修改提交至数据库失败! - + Comment 备注 - - - + + + User Name can't be empty! 用户名不能为空! - + User ID can't be empty! 用户ID不能为空! - + Password can't be empty! 密码不能为空! - + Inner error ,unset data model! 内部错误! - + User Id exists! 用户ID已存在! - + Submit to data base fail! 提交至数据库失败! @@ -1175,22 +1173,22 @@ parameters 正在加载... - + total: %1G 总量:%1G - + Get disk total size fail! 磁盘总空间获取失败! - + used: %1G 使用:%1G - + Get disk used size fail! 磁盘使用空间获取失败!