libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
datapointjs.cpp
Go to the documentation of this file.
1#include "datapointjs.h"
2#include "jsclassregistrar.h"
3
4
5namespace pappso
6{
7
8DataPointJs::DataPointJs(QObject *parent) : QObject(parent), m_dataPoint()
9{
10}
11
12DataPointJs::DataPointJs(double x, double y, QObject *parent) : QObject(parent), m_dataPoint(x, y)
13{
14}
15
16DataPointJs::DataPointJs(const DataPoint &data_ppoint, QObject *parent)
17 : QObject(parent), m_dataPoint(data_ppoint)
18{
19}
20
21void
23{
24 if(m_dataPoint.x != x)
25 {
26 m_dataPoint.x = x;
27 emit xChanged();
28 emit stringChanged();
29 emit validChanged();
30 }
31}
32
33double
35{
36 return m_dataPoint.x;
37}
38
39
40void
42{
43 if(m_dataPoint.y != y)
44 {
45 m_dataPoint.y = y;
46 emit yChanged();
47 emit stringChanged();
48 emit validChanged();
49 }
50}
51
52double
54{
55 return m_dataPoint.y;
56}
57
58void
59DataPointJs::setData(double x, double y)
60{
61 setX(x);
62 setY(y);
63}
64
65bool
67{
68 return m_dataPoint.isValid();
69}
70
71QString
73{
74 return m_dataPoint.toString();
75}
76
77QString
78DataPointJs::toString(int decimals) const
79{
80 return m_dataPoint.toString(decimals);
81}
82
83void
85{
86 m_dataPoint.reset();
87 emit xChanged();
88 emit yChanged();
89 emit stringChanged();
90 emit validChanged();
91}
92
93void
95{
96 m_dataPoint.incrementX(value);
97 emit xChanged();
98 emit stringChanged();
99}
100
101void
103{
104 m_dataPoint.incrementY(value);
105 emit yChanged();
106 emit stringChanged();
107}
108
109void
111{
112 m_dataPoint.initialize(x, y);
113 emit xChanged();
114 emit yChanged();
115 emit validChanged();
116 emit stringChanged();
117}
118
119void
120DataPointJs::initialize(const QString &text)
121{
122 if(m_dataPoint.initialize(text))
123 {
124 emit xChanged();
125 emit yChanged();
126 emit validChanged();
127 emit stringChanged();
128 }
129}
130
131const DataPoint &
133{
134 return m_dataPoint;
135}
136
137void
139{
140 m_dataPoint = point;
141 emit xChanged();
142 emit yChanged();
143 emit validChanged();
144 emit stringChanged();
145}
146
147void
149{
150 if(!engine)
151 {
152 qWarning() << "Cannot register DataPointJs class: engine is null";
153 return;
154 }
155
156 // Register the meta object as a constructor
157 QJSValue jsMetaObject = engine->newQMetaObject(&DataPointJs::staticMetaObject);
158 engine->globalObject().setProperty("DataPoint", jsMetaObject);
159}
160
161} // namespace pappso
Q_INVOKABLE double getX() const
QString toString() const
Q_INVOKABLE void reset()
Q_INVOKABLE void setX(double x)
Q_INVOKABLE void setY(double y)
void setDataPoint(const DataPoint &point)
Q_INVOKABLE DataPointJs(QObject *parent=nullptr)
const DataPoint & dataPoint() const
Q_INVOKABLE void setData(double x, double y)
DataPoint m_dataPoint
Definition datapointjs.h:70
Q_INVOKABLE void incrementY(double value)
Q_INVOKABLE void incrementX(double value)
Q_INVOKABLE double getY() const
static void registerJsConstructor(QJSEngine *engine)
bool isValid() const
Q_INVOKABLE void initialize(double x, double y)
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39