mirror of
https://github.com/dragonpilot/dragonpilot.git
synced 2026-04-07 14:43:58 +08:00
Merge branch 'min-feat/ui/display-mode' into pre-patch
This commit is contained in:
@@ -134,7 +134,7 @@ inline static std::unordered_map<std::string, ParamKeyAttributes> keys = {
|
||||
{"dp_dev_monitoring_disabled", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_dev_beep", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_lat_alka", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_ui_display_mode_v2", {PERSISTENT, INT, "0"}},
|
||||
{"dp_ui_display_mode", {PERSISTENT, INT, "0"}},
|
||||
{"dp_dev_model_selected", {PERSISTENT, STRING}},
|
||||
{"dp_dev_model_list", {PERSISTENT, STRING}},
|
||||
{"dp_lat_lca_speed", {PERSISTENT, INT, "20"}},
|
||||
|
||||
@@ -224,12 +224,12 @@ class DragonpilotLayout(Widget):
|
||||
callback=lambda val: self._params.put_bool("dp_dev_beep", val),
|
||||
)
|
||||
|
||||
self._toggles["dp_ui_display_mode_v2"] = text_spin_button_item(
|
||||
self._toggles["dp_ui_display_mode"] = text_spin_button_item(
|
||||
title=lambda: tr("Display Mode"),
|
||||
callback=lambda val: self._params.put("dp_ui_display_mode_v2", val),
|
||||
options=["Std.", "OP+", "OP-"],
|
||||
initial_index=int(self._params.get("dp_ui_display_mode_v2") or 0),
|
||||
description=lambda: tr("Std.: Stock behavior.<br>OP+: OP enabled = Display ON.<br>OP-: OP enabled = Display OFF."),
|
||||
callback=lambda val: self._params.put("dp_ui_display_mode", val),
|
||||
options=["Std.", "MAIN+", "OP+", "MAIN-", "OP-"],
|
||||
initial_index=int(self._params.get("dp_ui_display_mode") or 0),
|
||||
description=lambda: tr("Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled = Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = Display OFF."),
|
||||
)
|
||||
|
||||
if "LITE" not in os.environ:
|
||||
|
||||
@@ -162,7 +162,8 @@ class UIState:
|
||||
self.dp_alka_active = self.sm["dpControlsState"].alkaActive
|
||||
|
||||
# dp
|
||||
self.dp_ui_display_mode = int(self.params.get("dp_ui_display_mode_v2") or 0)
|
||||
self.dp_ui_display_mode = int(self.params.get("dp_ui_display_mode") or 0)
|
||||
self.dp_ui_display_mode_cruise_available = False
|
||||
self.dp_ui_display_mode_cruise_enabled = False
|
||||
|
||||
def _update_status(self) -> None:
|
||||
@@ -191,12 +192,13 @@ class UIState:
|
||||
for callback in self._offroad_transition_callbacks:
|
||||
callback()
|
||||
|
||||
self._started_prev = self.started
|
||||
|
||||
# dp
|
||||
if self.sm.updated["carState"]:
|
||||
self.dp_ui_display_mode_cruise_available = self.sm["carState"].cruiseState.available
|
||||
self.dp_ui_display_mode_cruise_enabled = self.sm["carState"].cruiseState.enabled
|
||||
|
||||
self._started_prev = self.started
|
||||
|
||||
def update_params(self) -> None:
|
||||
# For slower operations
|
||||
# Update longitudinal control state
|
||||
@@ -269,22 +271,38 @@ class Device:
|
||||
|
||||
# // Display Mode
|
||||
# // 0 Std. - Stock behavior.
|
||||
# // 1 OP+ - OP enabled = Display ON
|
||||
# // 2 OP- - OP enabled = Display OFF
|
||||
# // 1 MAIN+ - ACC MAIN on = Display ON
|
||||
# // 2 OP+ - OP enabled = Display ON
|
||||
# // 3 MAIN- - ACC MAIN on = Display OFF
|
||||
# // 4 OP- - OP enabled = Display OFF
|
||||
def ignore_state_ovrride(self, ignition):
|
||||
# 0 stock behaviour or ignition is off
|
||||
if ui_state.dp_ui_display_mode == 0 or not ignition:
|
||||
return ignition
|
||||
|
||||
# 1 OP+ - OP enabled = Display ON
|
||||
# 1 MAIN+ - ACC MAIN on = Display ON
|
||||
if ui_state.dp_ui_display_mode == 1:
|
||||
if ui_state.dp_ui_display_mode_cruise_available:
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
# 2 OP+ - OP enabled = Display ON
|
||||
if ui_state.dp_ui_display_mode == 2:
|
||||
if ui_state.dp_ui_display_mode_cruise_enabled:
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
# 2 OP- - OP enabled = Display OFF
|
||||
if ui_state.dp_ui_display_mode == 2:
|
||||
# 3 MAIN- - ACC MAIN on = Display OFF
|
||||
if ui_state.dp_ui_display_mode == 3:
|
||||
if ui_state.dp_ui_display_mode_cruise_available:
|
||||
return False
|
||||
else:
|
||||
return True
|
||||
|
||||
# 4 OP- - OP enabled = Display OFF
|
||||
if ui_state.dp_ui_display_mode == 4:
|
||||
if ui_state.dp_ui_display_mode_cruise_enabled:
|
||||
return False
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user