48 lines
1.3 KiB
C++
48 lines
1.3 KiB
C++
#include "statusstrip.h"
|
|
#include "appcontext.h"
|
|
#include "car.h"
|
|
#include <QHBoxLayout>
|
|
#include <QLabel>
|
|
#include <QPushButton>
|
|
#include "global.h"
|
|
|
|
StatusStrip::StatusStrip(AppContext* ctx, QWidget* parent)
|
|
: QWidget(parent), m_ctx(ctx)
|
|
{
|
|
setObjectName("StatusStrip");
|
|
setFixedHeight(120);
|
|
setStyleSheet(QString("QWidget#StatusStrip{background-color:%1;border-top:1px solid %2;}")
|
|
.arg(C::PANEL, C::BORDER));
|
|
|
|
QHBoxLayout* lay = new QHBoxLayout(this);
|
|
lay->setContentsMargins(36, 0, 24, 0);
|
|
lay->setSpacing(40);
|
|
|
|
lay->addStretch(1);
|
|
|
|
// 返回按钮
|
|
m_back = new QPushButton("返回", this);
|
|
m_back->setFixedSize(200, 80);
|
|
m_back->setStyleSheet(cancelButtonStyle(40)); // 选中(悬停/按下/焦点)红底白字
|
|
connect(m_back, &QPushButton::clicked, this, &StatusStrip::backClicked);
|
|
lay->addWidget(m_back);
|
|
|
|
connect(m_ctx->comm(), &CarCommunication::telemetryUpdated, this, &StatusStrip::refresh);
|
|
refresh();
|
|
}
|
|
|
|
void StatusStrip::setBackVisible(bool visible)
|
|
{
|
|
m_back->setVisible(visible);
|
|
}
|
|
|
|
void StatusStrip::setBackEnabled(bool enabled)
|
|
{
|
|
m_back->setEnabled(enabled);
|
|
}
|
|
|
|
void StatusStrip::refresh()
|
|
{
|
|
// 底部已不显示遥测数据,保留空实现(仍连着 telemetryUpdated,方便以后加显示项)
|
|
}
|