mirror of
https://github.com/firestar5683/StarPilot.git
synced 2026-07-12 21:02:13 +08:00
ui: hasPrime/primeChanged helper (#29590)
old-commit-hash: 05e91c074d0fbabfd3475d4f34b975819159519b
This commit is contained in:
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user