#pragma once #include #include #include #include #include #include #include #include #include "selfdrive/ui/qt/widgets/controls.h" // ********** settings window + top-level panels ********** class DevicePanel : public QWidget { Q_OBJECT public: explicit DevicePanel(QWidget* parent = nullptr); signals: void reviewTrainingGuide(); }; class TogglesPanel : public QWidget { Q_OBJECT public: explicit TogglesPanel(QWidget *parent = nullptr); }; class DeveloperPanel : public QFrame { Q_OBJECT public: explicit DeveloperPanel(QWidget* parent = nullptr); protected: void showEvent(QShowEvent *event) override; private: QList labels; LabelControl *versionLbl; LabelControl *lastUpdateTimeLbl; }; class SettingsWindow : public QFrame { Q_OBJECT public: explicit SettingsWindow(QWidget *parent = 0) : QFrame(parent) {}; protected: void hideEvent(QHideEvent *event) override; void showEvent(QShowEvent *event) override; signals: void closeSettings(); void offroadTransition(bool offroad); void reviewTrainingGuide(); private: QPushButton *sidebar_alert_widget; QWidget *sidebar_widget; QButtonGroup *nav_btns; QStackedWidget *panel_widget; };