UI border update

This commit is contained in:
Jason Wen
2024-11-16 18:54:18 -05:00
parent 3ee950d117
commit e1904c5a3f
2 changed files with 20 additions and 3 deletions
+16 -3
View File
@@ -68,13 +68,25 @@ void ui_update_params(UIState *s) {
}
void UIState::updateStatus() {
if (scene.started && sm->updated("selfdriveState")) {
if (scene.started && (sm->updated("selfdriveState") || sm->updated("selfdriveStateSP"))) {
auto ss = (*sm)["selfdriveState"].getSelfdriveState();
auto ss_sp = (*sm)["selfdriveStateSP"].getSelfdriveStateSP();
auto mads = ss_sp.getMads();
auto state = ss.getState();
if (state == cereal::SelfdriveState::OpenpilotState::PRE_ENABLED || state == cereal::SelfdriveState::OpenpilotState::OVERRIDING) {
auto state_mads = mads.getState();
if (state == cereal::SelfdriveState::OpenpilotState::PRE_ENABLED || state == cereal::SelfdriveState::OpenpilotState::OVERRIDING ||
state_mads == cereal::SelfdriveStateSP::ModularAssistiveDrivingSystem::ModularAssistiveDrivingSystemState::PAUSED) {
status = STATUS_OVERRIDE;
} else {
status = ss.getEnabled() ? STATUS_ENGAGED : STATUS_DISENGAGED;
if (mads.getAvailable()) {
if (mads.getActive()) {
status = ss.getEnabled() ? STATUS_ENGAGED : STATUS_LAT_ONLY;
} else {
status = STATUS_DISENGAGED;
}
} else {
status = ss.getEnabled() ? STATUS_ENGAGED : STATUS_DISENGAGED;
}
}
}
@@ -94,6 +106,7 @@ UIState::UIState(QObject *parent) : QObject(parent) {
"modelV2", "controlsState", "liveCalibration", "radarState", "deviceState",
"pandaStates", "carParams", "driverMonitoringState", "carState", "driverStateV2",
"wideRoadCameraState", "managerState", "selfdriveState", "longitudinalPlan",
"selfdriveStateSP",
});
prime_state = new PrimeState(this);
language = QString::fromStdString(Params().get("LanguageSetting"));
+4
View File
@@ -42,12 +42,16 @@ typedef enum UIStatus {
STATUS_DISENGAGED,
STATUS_OVERRIDE,
STATUS_ENGAGED,
STATUS_LAT_ONLY,
STATUS_LONG_ONLY,
} UIStatus;
const QColor bg_colors [] = {
[STATUS_DISENGAGED] = QColor(0x17, 0x33, 0x49, 0xc8),
[STATUS_OVERRIDE] = QColor(0x91, 0x9b, 0x95, 0xf1),
[STATUS_ENGAGED] = QColor(0x17, 0x86, 0x44, 0xf1),
[STATUS_LAT_ONLY] = QColor(0x00, 0xc8, 0xc8, 0xf1),
[STATUS_LONG_ONLY] = QColor(0x96, 0x1C, 0xA8, 0xf1),
};
typedef struct UIScene {