Bits and Droids connector
Connect your microcontroller to handle MFS2020 commands.
Loading...
Searching...
No Matches
formbuilder.h
Go to the documentation of this file.
1#ifndef FORMBUILDER_H
2#define FORMBUILDER_H
3
7#include <qstring.h>
8#include <qtabwidget.h>
9
10#include <QHBoxLayout>
11#include <QLabel>
12#include <QtCharts>
13
16
17class FormBuilder : public QObject {
18Q_OBJECT
19
20public:
22
23 //~FormBuilder();
24 QStringList getCalibrateLabels() { return objectNames; };
25
26 QVBoxLayout *RangeBuilder();
27
29
30 QVBoxLayout *generateComColumn(int index);
31
32 QHBoxLayout *generateComBlock();
33
34 static QVBoxLayout *generateRange(const QString &header);
35
36 QVBoxLayout *createAxisRow(QString name, int number);
37
38 QStringList comHeaders = {"Inputs", "Outputs", "Both"};
39 QStringList rangeHeaders;
40 QStringList engineLabels = {"Reverse", "Idle cutoff", "Max"};
41 QStringList engineHeaders;
42
43 void setCurves(QStringList);
44
45 QHBoxLayout *generateOutputRow(Output *output);
46
47 static QWidget *generateActiveSet(Set *selectedSet);
48
49 static QLabel *generateHeader(const QString &text);
50
51 QWidget *generateComSelector(bool setsNeeded, int mode);
52
53 QWidget *generateComControls(int mode);
54
55
56
57 QList<struct coordinates> *getCoordinates(int number);
58
59 QWidget *generateComSelector(bool setsNeeded, int mode, int index);
60
61 void loadPointsToPlot(QStringList axis);
62
63private slots:
64
65
66
67 void autoRunChanged();
68
69
70 void rudderTextChanged();
71
72 void updateXCall();
73
74 void updateYCall();
75
76 void updateX(int number, int index, int value);
77
78 void reverseClicked();
79
80 void updateY(int number, int index, int value);
81
82signals:
83
84 void updateXSignal(int number, int index, int value);
85
86 void updateYSignal(int number, int index, int value);
87
88 void addSet();
89
90
91private:
92 QStringList curves;
93 QStringList objectNames = {"MinLE", "NeutralLE", "MaxLE"};
94 QList<int> axisValues = {-16383, -10000, 0, 0, 0, 10000, 16383};
95 QList<QChart *> charts = QList<QChart *>();
96
97 QList<QLineSeries *> series = QList<QLineSeries *>();
98 QList<QChartView *> chartViews = QList<QChartView *>();
99 QStringList mainHeaders = {"", "INPUT", "OUTPUT", "DUAL"};
102
103
104 void updateChart(int number);
105
106 QList<QList<coordinates>> pointsToPlot = QList<QList<coordinates>>();
107
108 QVBoxLayout *generateCurveCol(int number, int valAxis, int valRange);
109
110 void changeSlider();
111
112 int minValue[4] = {0, 0, 0, 0};
113
114 int maxValue[4] = {1023, 1023, 1023, 1023};
115
116 int neutralValue[4] = {((1023 - 0) / 2), ((1023 - 0) / 2), ((1023 - 0) / 2),
117 ((1023 - 0) / 2)};
118
120
121 void adjustIndexes(int index);
122
123 void adjustIndexes(int mode, int index);
124
125
126};
127
128#endif // FORMBUILDER_H
Definition: formbuilder.h:17
QList< struct coordinates > * getCoordinates(int number)
Definition: formbuilder.cpp:261
int maxValue[4]
Definition: formbuilder.h:114
void adjustIndexes()
QStringList rangeHeaders
Definition: formbuilder.h:39
QList< int > axisValues
Definition: formbuilder.h:94
QVBoxLayout * createAxisRow(QString name, int number)
Definition: formbuilder.cpp:62
QWidget * generateComControls(int mode)
QList< QLineSeries * > series
Definition: formbuilder.h:97
QStringList getCalibrateLabels()
Definition: formbuilder.h:24
QStringList mainHeaders
Definition: formbuilder.h:99
int minValue[4]
Definition: formbuilder.h:112
void changeSlider()
Definition: formbuilder.cpp:293
QWidget * generateComSelector(bool setsNeeded, int mode, int index)
void updateXSignal(int number, int index, int value)
SetHandler setHandler
Definition: formbuilder.h:100
void adjustIndexes(int mode, int index)
QStringList engineLabels
Definition: formbuilder.h:40
void updateXCall()
Definition: formbuilder.cpp:271
void autoRunChanged()
Definition: formbuilder.cpp:446
void setCurves(QStringList)
Definition: formbuilder.cpp:291
QList< QChartView * > chartViews
Definition: formbuilder.h:98
void updateChart(int number)
Definition: formbuilder.cpp:323
FormBuilder()
Definition: formbuilder.cpp:18
QStringList comHeaders
Definition: formbuilder.h:38
QStringList objectNames
Definition: formbuilder.h:93
void updateYSignal(int number, int index, int value)
void loadPointsToPlot(QStringList axis)
Definition: formbuilder.cpp:34
QStringList curves
Definition: formbuilder.h:92
QHBoxLayout * generateComBlock()
QWidget * generateComSelector(bool setsNeeded, int mode)
static QWidget * generateActiveSet(Set *selectedSet)
static QVBoxLayout * generateRange(const QString &header)
Definition: formbuilder.cpp:362
void loadComPortData()
int neutralValue[4]
Definition: formbuilder.h:116
SettingsHandler settingsHandler
Definition: formbuilder.h:101
QList< QList< coordinates > > pointsToPlot
Definition: formbuilder.h:106
QVBoxLayout * RangeBuilder()
Definition: formbuilder.cpp:393
void updateY(int number, int index, int value)
Definition: formbuilder.cpp:265
void rudderTextChanged()
Definition: formbuilder.cpp:222
QList< QChart * > charts
Definition: formbuilder.h:95
QVBoxLayout * generateCurveCol(int number, int valAxis, int valRange)
Definition: formbuilder.cpp:337
QHBoxLayout * generateOutputRow(Output *output)
QStringList engineHeaders
Definition: formbuilder.h:41
static QLabel * generateHeader(const QString &text)
Definition: formbuilder.cpp:437
void adjustIndexes(int index)
void updateYCall()
Definition: formbuilder.cpp:278
void reverseClicked()
Definition: formbuilder.cpp:248
QVBoxLayout * generateComColumn(int index)
Definition: formbuilder.cpp:423
void updateX(int number, int index, int value)
Definition: formbuilder.cpp:285
void addSet()
Definition: output.h:8
Definition: sethandler.h:14
Definition: Set.h:12
Definition: settingshandler.h:9