ui: hasPrime/primeChanged helper (#29590)

old-commit-hash: 05e91c074d0fbabfd3475d4f34b975819159519b
This commit is contained in:
Cameron Clough
2023-08-24 12:47:22 +01:00
committed by GitHub
parent 9f8fb6ab30
commit c7820cf1cc
3 changed files with 12 additions and 3 deletions
+3 -3
View File
@@ -157,9 +157,9 @@ OffroadHome::OffroadHome(QWidget* parent) : QFrame(parent) {
left_widget->addWidget(new PrimeAdWidget);
left_widget->setStyleSheet("border-radius: 10px;");
left_widget->setCurrentIndex(uiState()->primeType() ? 0 : 1);
connect(uiState(), &UIState::primeTypeChanged, [=](PrimeType prime_type) {
left_widget->setCurrentIndex((prime_type != PrimeType::NONE) ? 0 : 1);
left_widget->setCurrentIndex(uiState()->hasPrime() ? 0 : 1);
connect(uiState(), &UIState::primeChanged, [=](bool prime) {
left_widget->setCurrentIndex(prime ? 0 : 1);
});
home_layout->addWidget(left_widget, 1);
+7
View File
@@ -270,9 +270,16 @@ void UIState::update() {
void UIState::setPrimeType(PrimeType type) {
if (type != prime_type) {
bool prev_prime = hasPrime();
prime_type = type;
Params().put("PrimeType", std::to_string(prime_type));
emit primeTypeChanged(prime_type);
bool prime = hasPrime();
if (prev_prime != prime) {
emit primeChanged(prime);
}
}
}
+2
View File
@@ -164,6 +164,7 @@ public:
void setPrimeType(PrimeType type);
inline PrimeType primeType() const { return prime_type; }
inline bool hasPrime() const { return prime_type != PrimeType::UNKNOWN && prime_type != PrimeType::NONE; }
int fb_w = 0, fb_h = 0;
@@ -179,6 +180,7 @@ public:
signals:
void uiUpdate(const UIState &s);
void offroadTransition(bool offroad);
void primeChanged(bool prime);
void primeTypeChanged(PrimeType prime_type);
private slots: