Files
MoreTore/tools/cabana/signaledit.h
T
Dean Lee f93f4e9f9b canbana: complete basic functions (#25965)
* add chart header

* get all signal val from logs

* loop in selected range

* clear list before append

* automatically zoom on yaxis

* cleanup

* sync charts

* fix event_begin_sec

* set the color of rubber

* add TODO

* sync slider with charts

* keep video aspect ratio

* sync plot buttons

* reduce flickers

* cleanup

* refactor detail view

* clear counters

* more

use qcamera
old-commit-hash: a6ba073231
2022-10-05 21:17:22 -07:00

51 lines
992 B
C++

#pragma once
#include <optional>
#include <QComboBox>
#include <QDialog>
#include <QLineEdit>
#include <QPushButton>
#include <QSpinBox>
#include "selfdrive/ui/qt/widgets/controls.h"
#include "tools/cabana/parser.h"
class SignalForm : public QWidget {
Q_OBJECT
public:
SignalForm(const Signal &sig, QWidget *parent);
std::optional<Signal> getSignal();
QLineEdit *name, *unit, *comment, *val_desc;
QSpinBox *size, *msb, *lsb, *factor, *offset, *min_val, *max_val;
QComboBox *sign, *endianness;
};
class SignalEdit : public QWidget {
Q_OBJECT
public:
SignalEdit(const QString &id, const Signal &sig, const QString &color, QWidget *parent = nullptr);
void save();
protected:
void remove();
QString id;
QString name_;
QPushButton *plot_btn;
ElidedLabel *title;
SignalForm *form;
QWidget *edit_container;
QPushButton *remove_btn;
};
class AddSignalDialog : public QDialog {
Q_OBJECT
public:
AddSignalDialog(const QString &id, QWidget *parent);
};