diff --git a/selfdrive/assets/images/network_0.png b/selfdrive/assets/images/network_0.png deleted file mode 100644 index 2ce959ca5f..0000000000 Binary files a/selfdrive/assets/images/network_0.png and /dev/null differ diff --git a/selfdrive/assets/images/network_1.png b/selfdrive/assets/images/network_1.png deleted file mode 100644 index d7ae713f90..0000000000 Binary files a/selfdrive/assets/images/network_1.png and /dev/null differ diff --git a/selfdrive/assets/images/network_2.png b/selfdrive/assets/images/network_2.png deleted file mode 100644 index 17ecd977f1..0000000000 Binary files a/selfdrive/assets/images/network_2.png and /dev/null differ diff --git a/selfdrive/assets/images/network_3.png b/selfdrive/assets/images/network_3.png deleted file mode 100644 index 1e854e678d..0000000000 Binary files a/selfdrive/assets/images/network_3.png and /dev/null differ diff --git a/selfdrive/assets/images/network_4.png b/selfdrive/assets/images/network_4.png deleted file mode 100644 index 08c9ab91f4..0000000000 Binary files a/selfdrive/assets/images/network_4.png and /dev/null differ diff --git a/selfdrive/assets/images/network_5.png b/selfdrive/assets/images/network_5.png deleted file mode 100644 index fba67a95a5..0000000000 Binary files a/selfdrive/assets/images/network_5.png and /dev/null differ diff --git a/selfdrive/ui/qt/offroad/networking.cc b/selfdrive/ui/qt/offroad/networking.cc index d38268213f..2b741a1fb7 100644 --- a/selfdrive/ui/qt/offroad/networking.cc +++ b/selfdrive/ui/qt/offroad/networking.cc @@ -3,11 +3,24 @@ #include #include #include -#include +#include #include "selfdrive/ui/qt/widgets/scrollview.h" #include "selfdrive/ui/qt/util.h" + +void NetworkStrengthWidget::paintEvent(QPaintEvent* event) { + QPainter p(this); + p.setRenderHint(QPainter::Antialiasing); + p.setPen(Qt::NoPen); + const QColor gray(0x54, 0x54, 0x54); + for (int i = 0, x = 0; i < 5; ++i) { + p.setBrush(i < strength_ ? Qt::white : gray); + p.drawEllipse(x, 0, 15, 15); + x += 20; + } +} + // Networking functions Networking::Networking(QWidget* parent, bool show_advanced) : QWidget(parent), show_advanced(show_advanced){ @@ -202,14 +215,9 @@ void WifiUI::refresh() { ssid_label->setStyleSheet("font-size: 55px;"); hlayout->addWidget(ssid_label, 1, Qt::AlignLeft); - // TODO: don't use images for this // strength indicator unsigned int strength_scale = network.strength / 17; - QPixmap pix("../assets/images/network_" + QString::number(strength_scale) + ".png"); - QLabel *icon = new QLabel(); - icon->setPixmap(pix.scaledToWidth(100, Qt::SmoothTransformation)); - icon->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); - hlayout->addWidget(icon, 0, Qt::AlignRight); + hlayout->addWidget(new NetworkStrengthWidget(strength_scale), 0, Qt::AlignRight); // connect button QPushButton* btn = new QPushButton(network.security_type == SecurityType::UNSUPPORTED ? "Unsupported" : (network.connected == ConnectedType::CONNECTED ? "Connected" : (network.connected == ConnectedType::CONNECTING ? "Connecting" : "Connect"))); diff --git a/selfdrive/ui/qt/offroad/networking.h b/selfdrive/ui/qt/offroad/networking.h index 9fa1cfe884..68a6d7c558 100644 --- a/selfdrive/ui/qt/offroad/networking.h +++ b/selfdrive/ui/qt/offroad/networking.h @@ -11,6 +11,17 @@ #include "selfdrive/ui/qt/widgets/ssh_keys.h" #include "selfdrive/ui/qt/widgets/toggle.h" +class NetworkStrengthWidget : public QWidget { + Q_OBJECT + +public: + explicit NetworkStrengthWidget(int strength, QWidget* parent = nullptr) : strength_(strength), QWidget(parent) { setFixedSize(100, 15); } + +private: + void paintEvent(QPaintEvent* event) override; + int strength_ = 0; +}; + class WifiUI : public QWidget { Q_OBJECT