调试初版
This commit is contained in:
+8
-21
@@ -22,7 +22,6 @@
|
||||
#include <QStackedWidget>
|
||||
#include <QLabel>
|
||||
#include <QVBoxLayout>
|
||||
#include <QKeyEvent>
|
||||
|
||||
MainWindow::MainWindow(QWidget* parent)
|
||||
: QMainWindow(parent)
|
||||
@@ -55,12 +54,8 @@ MainWindow::MainWindow(QWidget* parent)
|
||||
m_ctx->comm()->start();
|
||||
m_ctx->rc()->start(); // 遥控器接收(独立端口)
|
||||
|
||||
// 初始页面:开机密码
|
||||
// m_stack->setCurrentIndex(PageBoot);
|
||||
// 免密码直接进自检页
|
||||
// m_stack->setCurrentIndex(PageSelfCheck);
|
||||
// 免登录直接进作业选择页(恢复原流程时改回上面的 PageBoot)
|
||||
m_stack->setCurrentIndex(PageJob);
|
||||
// 初始页面:开机密码 →(验证通过)自检 →(自检结束)系统首页面
|
||||
m_stack->setCurrentIndex(PageBoot);
|
||||
}
|
||||
|
||||
MainWindow::~MainWindow()
|
||||
@@ -94,6 +89,7 @@ void MainWindow::buildPages()
|
||||
add(PageFault, new FaultQueryPage(m_ctx));
|
||||
|
||||
m_faultPage = qobject_cast<FaultQueryPage*>(page(PageFault));
|
||||
m_debugPage = qobject_cast<DebugMaintainPage*>(page(PageDebug));
|
||||
}
|
||||
|
||||
void MainWindow::onNavigate(PageId id)
|
||||
@@ -106,6 +102,11 @@ void MainWindow::onNavigate(PageId id)
|
||||
else
|
||||
m_faultPage->setReturnPage(PageJob);
|
||||
}
|
||||
// 调试维护有两个入口(系统首页 / 作业选择),同样原路返回
|
||||
if (id == PageDebug && m_debugPage) {
|
||||
PageId cur = static_cast<PageId>(m_stack->currentIndex());
|
||||
m_debugPage->setReturnPage(cur == PageHome ? PageHome : PageJob);
|
||||
}
|
||||
if (id >= 0 && id < PageCount)
|
||||
m_stack->setCurrentIndex(id);
|
||||
}
|
||||
@@ -115,17 +116,3 @@ void MainWindow::onEstopChanged(bool triggered)
|
||||
m_estopBanner->setVisible(triggered);
|
||||
m_estopBanner->raise();
|
||||
}
|
||||
|
||||
void MainWindow::keyPressEvent(QKeyEvent* ev)
|
||||
{
|
||||
// 演示用快捷键:M 切换行车/机械臂模式。
|
||||
// 遥控器在线时模式由遥控器报文决定,此处不抢(与底盘页 showEvent 同一规则)。
|
||||
switch (ev->key()) {
|
||||
case Qt::Key_M:
|
||||
if (!m_ctx->rc()->linkOk())
|
||||
m_ctx->setMode(m_ctx->mode == Mode::Drive ? Mode::Arm : Mode::Drive);
|
||||
break;
|
||||
default:
|
||||
QMainWindow::keyPressEvent(ev);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user