summaryrefslogtreecommitdiff
path: root/DSLogic-gui/pv/view/signal.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'DSLogic-gui/pv/view/signal.cpp')
-rw-r--r--DSLogic-gui/pv/view/signal.cpp498
1 files changed, 426 insertions, 72 deletions
diff --git a/DSLogic-gui/pv/view/signal.cpp b/DSLogic-gui/pv/view/signal.cpp
index 2ac4e92..11ef319 100644
--- a/DSLogic-gui/pv/view/signal.cpp
+++ b/DSLogic-gui/pv/view/signal.cpp
@@ -33,26 +33,67 @@
namespace pv {
namespace view {
-const int Signal::SquareWidth = 20;
-const int Signal::Margin = 5;
-
-const int Signal::COLOR = 1;
-const int Signal::NAME = 2;
-const int Signal::POSTRIG = 3;
-const int Signal::HIGTRIG = 4;
-const int Signal::NEGTRIG = 5;
-const int Signal::LOWTRIG = 6;
-const int Signal::LABEL = 7;
-
const QColor Signal::dsBlue = QColor(17, 133, 209, 255);
const QColor Signal::dsYellow = QColor(238, 178, 17, 255);
const QColor Signal::dsRed = QColor(213, 15, 37, 255);
const QColor Signal::dsGreen = QColor(0, 153, 37, 255);
const QColor Signal::dsGray = QColor(0x88, 0x8A, 0x85, 100);
+const QColor Signal::dsDisable = QColor(0x88, 0x8A, 0x85, 200);
+const QColor Signal::dsActive = QColor(17, 133, 209, 255);
const QColor Signal::dsLightBlue = QColor(17, 133, 209, 150);
const QColor Signal::dsLightRed = QColor(213, 15, 37, 150);
-
-const QPen Signal::SignalAxisPen(QColor(128, 128, 128, 64));
+const QPen Signal::SignalAxisPen = QColor(128, 128, 128, 64);
+
+const quint64 Signal::vDialValue[Signal::vDialValueCount] = {
+ 5,
+ 10,
+ 20,
+ 50,
+ 100,
+ 200,
+ 500,
+ 1000,
+ 2000,
+ 5000,
+};
+const QString Signal::vDialUnit[Signal::vDialUnitCount] = {
+ "mv",
+ "v",
+};
+
+const quint64 Signal::hDialValue[Signal::hDialValueCount] = {
+ 10,
+ 20,
+ 50,
+ 100,
+ 200,
+ 500,
+ 1000,
+ 2000,
+ 5000,
+ 10000,
+ 20000,
+ 50000,
+ 100000,
+ 200000,
+ 500000,
+ 1000000,
+ 2000000,
+ 5000000,
+ 10000000,
+ 20000000,
+ 50000000,
+ 100000000,
+ 200000000,
+ 500000000,
+ 1000000000,
+};
+const QString Signal::hDialUnit[Signal::hDialUnitCount] = {
+ "ns",
+ "us",
+ "ms",
+ "s",
+};
Signal::Signal(QString name, int index, int type, int order) :
_type(type),
@@ -62,9 +103,37 @@ Signal::Signal(QString name, int index, int type, int order) :
_v_offset(0),
_signalHeight(30),
_selected(false),
- _trig(0)
+ _trig(0),
+ _vDialActive(false),
+ _hDialActive(false),
+ _acCoupling(false),
+ _active(true),
+ _windowHeight(0)
{
_index_list.push_back(index);
+ if (_type == DS_DSO) {
+ QVector<quint64> vValue;
+ QVector<QString> vUnit;
+ QVector<quint64> hValue;
+ QVector<QString> hUnit;
+ for(quint64 i = 0; i < Signal::vDialValueCount; i++)
+ vValue.append(Signal::vDialValue[i]);
+ for(quint64 i = 0; i < Signal::vDialUnitCount; i++)
+ vUnit.append(Signal::vDialUnit[i]);
+
+ for(quint64 i = 0; i < Signal::hDialValueCount; i++)
+ hValue.append(Signal::hDialValue[i]);
+ for(quint64 i = 0; i < Signal::hDialUnitCount; i++)
+ hUnit.append(Signal::hDialUnit[i]);
+
+ _vDial = new dslDial(vDialValueCount, vDialValueStep, vValue, vUnit);
+ _hDial = new dslDial(hDialValueCount, hDialValueStep, hValue, hUnit);
+ _vDial->set_sel(0);
+ _hDial->set_sel(0);
+
+ _trig_vpos = 0;
+ _trig_en = true;
+ }
}
Signal::Signal(QString name, std::list<int> index_list, int type, int order, int sec_index) :
@@ -76,8 +145,32 @@ Signal::Signal(QString name, std::list<int> index_list, int type, int order, int
_v_offset(0),
_signalHeight(30),
_selected(false),
- _trig(0)
-{
+ _trig(0),
+ _vDialActive(false),
+ _hDialActive(false),
+ _acCoupling(false),
+ _active(true)
+{
+ if (_type == DS_DSO) {
+ QVector<quint64> vValue;
+ QVector<QString> vUnit;
+ QVector<quint64> hValue;
+ QVector<QString> hUnit;
+ for(quint64 i = 0; i < Signal::vDialValueCount; i++)
+ vValue.append(Signal::vDialValue[i]);
+ for(quint64 i = 0; i < Signal::vDialUnitCount; i++)
+ vUnit.append(Signal::vDialUnit[i]);
+
+ for(quint64 i = 0; i < Signal::hDialValueCount; i++)
+ hValue.append(Signal::hDialValue[i]);
+ for(quint64 i = 0; i < Signal::hDialUnitCount; i++)
+ hUnit.append(Signal::hDialUnit[i]);
+
+ _vDial = new dslDial(Signal::vDialValueCount, Signal::vDialValueStep, vValue, vUnit);
+ _hDial = new dslDial(Signal::hDialValueCount, Signal::hDialValueStep, hValue, hUnit);
+ _vDial->set_sel(0);
+ _hDial->set_sel(0);
+ }
}
int Signal::get_type() const
@@ -104,7 +197,7 @@ int Signal::get_leftWidth() const
int Signal::get_rightWidth() const
{
- return 2 * Margin + 4 * SquareWidth + 1.5 * SquareWidth;
+ return 2 * Margin + SquareNum * SquareWidth + 1.5 * SquareWidth;
}
int Signal::get_headerHeight() const
@@ -217,31 +310,174 @@ void Signal::set_trig(int trig)
ds_trigger_probe_set(_index_list.front(), 'F', 'X');
else if (trig == LOWTRIG)
ds_trigger_probe_set(_index_list.front(), '0', 'X');
+ else if (trig == EDGETRIG)
+ ds_trigger_probe_set(_index_list.front(), 'C', 'X');
+}
+
+bool Signal::get_vDialActive() const
+{
+ return _vDialActive;
+}
+
+void Signal::set_vDialActive(bool active)
+{
+ _vDialActive = active;
+}
+
+bool Signal::go_vDialPre()
+{
+ assert(_type == DS_DSO);
+
+ if (!_vDial->isMin()) {
+ _vDial->set_sel(_vDial->get_sel() - 1);
+ return true;
+ } else {
+ return false;
+ }
+}
+
+bool Signal::go_vDialNext()
+{
+ assert(_type == DS_DSO);
+
+ if (!_vDial->isMax()) {
+ _vDial->set_sel(_vDial->get_sel() + 1);
+ return true;
+ } else {
+ return false;
+ }
+}
+
+bool Signal::get_hDialActive() const
+{
+ return _hDialActive;
+}
+
+void Signal::set_hDialActive(bool active)
+{
+ _hDialActive = active;
+}
+
+bool Signal::go_hDialPre()
+{
+ assert(_type == DS_DSO);
+
+ if (!_hDial->isMin()) {
+ _hDial->set_sel(_hDial->get_sel() - 1);
+ return true;
+ } else {
+ return false;
+ }
+}
+
+bool Signal::go_hDialNext()
+{
+ assert(_type == DS_DSO);
+
+ if (!_hDial->isMax()) {
+ _hDial->set_sel(_hDial->get_sel() + 1);
+ return true;
+ } else {
+ return false;
+ }
+}
+
+quint64 Signal::get_vDialValue() const
+{
+ return _vDial->get_value();
+}
+
+quint64 Signal::get_hDialValue() const
+{
+ return _hDial->get_value();
+}
+
+uint16_t Signal::get_vDialSel() const
+{
+ return _vDial->get_sel();
+}
+
+uint16_t Signal::get_hDialSel() const
+{
+ return _hDial->get_sel();
+}
+
+bool Signal::get_acCoupling() const
+{
+ return _acCoupling;
+}
+
+void Signal::set_acCoupling(bool coupling)
+{
+ _acCoupling = coupling;
+}
+
+bool Signal::get_active() const
+{
+ return _active;
+}
+
+void Signal::set_active(bool active)
+{
+ _active = active;
+}
+
+int Signal::get_zeroPos() const
+{
+ return _zeroPos;
+}
+
+void Signal::set_zeroPos(int pos)
+{
+ _zeroPos = pos;
+}
+
+int Signal::get_windowHeight() const
+{
+ return _windowHeight;
+}
+
+void Signal::set_windowHeight(int height)
+{
+ _windowHeight = height;
+}
+
+int Signal::get_trig_vpos() const
+{
+ return _trig_vpos;
+}
+
+void Signal::set_trig_vpos(int value)
+{
+ _trig_vpos = value;
}
void Signal::paint_label(QPainter &p, int y, int right, bool hover, int action)
{
compute_text_size(p);
+
const QRectF color_rect = get_rect("color", y, right);
const QRectF name_rect = get_rect("name", y, right);
- const QRectF posTrig_rect = get_rect("posTrig", y, right);
- const QRectF higTrig_rect = get_rect("higTrig", y, right);
- const QRectF negTrig_rect = get_rect("negTrig", y, right);
- const QRectF lowTrig_rect = get_rect("lowTrig", y, right);
- const QRectF label_rect = get_rect("label", y, right);
+ const QRectF label_rect = get_rect("label", (_type == DS_DSO) ? _zeroPos : y, right);
p.setRenderHint(QPainter::Antialiasing);
// Paint the ColorButton
p.setPen(Qt::transparent);
- p.setBrush(_colour);
+ p.setBrush(_active ? _colour : dsDisable);
p.drawRect(color_rect);
// Paint the signal name
- p.setPen(Qt::black);
+ p.setPen(_active ? Qt::black : dsDisable);
p.drawText(name_rect, Qt::AlignLeft | Qt::AlignVCenter, _name);
// Paint the trigButton
- if (_type == DS_LOGIC) {
+ if (_type == DS_LOGIC) {
+ const QRectF posTrig_rect = get_rect("posTrig", y, right);
+ const QRectF higTrig_rect = get_rect("higTrig", y, right);
+ const QRectF negTrig_rect = get_rect("negTrig", y, right);
+ const QRectF lowTrig_rect = get_rect("lowTrig", y, right);
+ const QRectF edgeTrig_rect = get_rect("edgeTrig", y, right);
+
p.setPen(Qt::transparent);
p.setBrush(((hover && action == POSTRIG) || (_trig == POSTRIG)) ?
dsYellow :
@@ -259,6 +495,10 @@ void Signal::paint_label(QPainter &p, int y, int right, bool hover, int action)
dsYellow :
dsBlue);
p.drawRect(lowTrig_rect);
+ p.setBrush(((hover && action == EDGETRIG) || (_trig == EDGETRIG)) ?
+ dsYellow :
+ dsBlue);
+ p.drawRect(edgeTrig_rect);
p.setPen(QPen(Qt::blue, 1, Qt::DotLine));
p.setBrush(Qt::transparent);
@@ -268,6 +508,8 @@ void Signal::paint_label(QPainter &p, int y, int right, bool hover, int action)
higTrig_rect.right(), higTrig_rect.bottom() - 3);
p.drawLine(negTrig_rect.right(), negTrig_rect.top() + 3,
negTrig_rect.right(), negTrig_rect.bottom() - 3);
+ p.drawLine(lowTrig_rect.right(), lowTrig_rect.top() + 3,
+ lowTrig_rect.right(), lowTrig_rect.bottom() - 3);
p.setPen(QPen(Qt::white, 2, Qt::SolidLine));
p.setBrush(Qt::transparent);
@@ -290,6 +532,17 @@ void Signal::paint_label(QPainter &p, int y, int right, bool hover, int action)
p.drawLine(lowTrig_rect.left() + 5, lowTrig_rect.bottom() - 5,
lowTrig_rect.right() - 5, lowTrig_rect.bottom() - 5);
+
+ p.drawLine(edgeTrig_rect.left() + 5, edgeTrig_rect.top() + 5,
+ edgeTrig_rect.center().x() - 2, edgeTrig_rect.top() + 5);
+ p.drawLine(edgeTrig_rect.center().x() + 2 , edgeTrig_rect.top() + 5,
+ edgeTrig_rect.right() - 5, edgeTrig_rect.top() + 5);
+ p.drawLine(edgeTrig_rect.center().x(), edgeTrig_rect.top() + 7,
+ edgeTrig_rect.center().x(), edgeTrig_rect.bottom() - 7);
+ p.drawLine(edgeTrig_rect.left() + 5, edgeTrig_rect.bottom() - 5,
+ edgeTrig_rect.center().x() - 2, edgeTrig_rect.bottom() - 5);
+ p.drawLine(edgeTrig_rect.center().x() + 2, edgeTrig_rect.bottom() - 5,
+ edgeTrig_rect.right() - 5, edgeTrig_rect.bottom() - 5);
} else if (_type == DS_GROUP || _type == DS_PROTOCOL) {
const QRectF group_index_rect = get_rect("groupIndex", y, right);
QString index_string;
@@ -311,40 +564,92 @@ void Signal::paint_label(QPainter &p, int y, int right, bool hover, int action)
}
p.setPen(Qt::white);
p.drawText(group_index_rect, Qt::AlignRight | Qt::AlignVCenter, index_string);
+ } else if (_type == DS_DSO) {
+ const QRectF vDial_rect = get_rect("vDial", y, right);
+ const QRectF hDial_rect = get_rect("hDial", y, right);
+ const QRectF acdc_rect = get_rect("acdc", y, right);
+ const QRectF chEn_rect = get_rect("chEn", y, right);
+
+ QColor vDial_color = _vDialActive ? dsActive : dsDisable;
+ QColor hDial_color = _hDialActive ? dsActive : dsDisable;
+ _vDial->paint(p, vDial_rect, vDial_color);
+ _hDial->paint(p, hDial_rect, hDial_color);
+
+ p.setPen(Qt::transparent);
+ p.setBrush((hover && action == CHEN) ? _colour.darker() : _colour);
+ p.drawRect(chEn_rect);
+ p.setPen(Qt::white);
+ p.drawText(chEn_rect, Qt::AlignCenter | Qt::AlignVCenter, _active ? "EN" : "DIS");
+
+ p.setPen(Qt::transparent);
+ p.setBrush(_active ? ((hover && action == ACDC) ? _colour.darker() : _colour) : dsDisable);
+ p.drawRect(acdc_rect);
+ p.setPen(Qt::white);
+ p.drawText(acdc_rect, Qt::AlignCenter | Qt::AlignVCenter, _acCoupling ? "AC" : "DC");
}
// Paint the label
- const QPointF points[] = {
- label_rect.topLeft(),
- label_rect.topRight(),
- QPointF(right, y),
- label_rect.bottomRight(),
- label_rect.bottomLeft()
- };
-
- p.setPen(Qt::transparent);
- p.setBrush(((hover && action == LABEL) || _selected) ? dsYellow : dsBlue);
- p.drawPolygon(points, countof(points));
-
- if ((hover && action == LABEL) || _selected) {
- p.setPen(QPen(dsBlue, 2, Qt::DotLine));
+ if (_active) {
+ const QPointF points[] = {
+ label_rect.topLeft(),
+ label_rect.topRight(),
+ QPointF(right, (_type == DS_DSO) ? _zeroPos : y),
+ label_rect.bottomRight(),
+ label_rect.bottomLeft()
+ };
+
+ p.setPen(Qt::transparent);
+ if (_type == DS_DSO)
+ p.setBrush(((hover && action == LABEL) || _selected) ? _colour.darker() : _colour);
+ else
+ p.setBrush(((hover && action == LABEL) || _selected) ? dsYellow : dsBlue);
+ p.drawPolygon(points, countof(points));
+
+ p.setPen(QPen(Qt::blue, 1, Qt::DotLine));
p.setBrush(Qt::transparent);
- p.drawPoint(label_rect.right(), label_rect.top() + 4);
- p.drawPoint(label_rect.right(), label_rect.top() + 8);
- p.drawPoint(label_rect.right(), label_rect.top() + 12);
- p.drawPoint(label_rect.right(), label_rect.top() + 16);
+ p.drawLine(label_rect.right(), label_rect.top() + 3,
+ label_rect.right(), label_rect.bottom() - 3);
+
+ // Paint the text
+ p.setPen(Qt::white);
+ if (_type == DS_GROUP)
+ p.drawText(label_rect, Qt::AlignCenter | Qt::AlignVCenter, "G");
+ else if (_type == DS_ANALOG)
+ p.drawText(label_rect, Qt::AlignCenter | Qt::AlignVCenter, "A");
+ else if (_type == DS_PROTOCOL)
+ p.drawText(label_rect, Qt::AlignCenter | Qt::AlignVCenter, "D");
+ else
+ p.drawText(label_rect, Qt::AlignCenter | Qt::AlignVCenter, QString::number(_index_list.front()));
}
+}
- // Paint the text
- p.setPen(Qt::white);
- if (_type == DS_GROUP)
- p.drawText(label_rect, Qt::AlignCenter | Qt::AlignVCenter, "G");
- else if (_type == DS_ANALOG)
- p.drawText(label_rect, Qt::AlignCenter | Qt::AlignVCenter, "A");
- else if (_type == DS_PROTOCOL)
- p.drawText(label_rect, Qt::AlignCenter | Qt::AlignVCenter, "D");
- else
- p.drawText(label_rect, Qt::AlignCenter | Qt::AlignVCenter, QString::number(_index_list.front()));
+void Signal::paint_trig(QPainter &p, int left, int right, bool hover)
+{
+ if (_type == DS_DSO) {
+ const QRectF label_rect = get_rect("dsoTrig", -1, right);
+ // Paint the trig line
+ if (_trig_en) {
+ const QPointF points[] = {
+ QPointF(right - label_rect.width()*1.5, _trig_vpos),
+ label_rect.topLeft(),
+ label_rect.topRight(),
+ label_rect.bottomRight(),
+ label_rect.bottomLeft()
+ };
+
+ p.setPen(Qt::transparent);
+ p.setBrush(_colour);
+ p.drawPolygon(points, countof(points));
+
+ // paint the _trig_vpos line
+ p.setPen(QPen(_colour, hover ? 2 : 1, Qt::DashLine));
+ p.drawLine(left, _trig_vpos, right - label_rect.width()*1.5, _trig_vpos);
+
+ // Paint the text
+ p.setPen(Qt::white);
+ p.drawText(label_rect, Qt::AlignCenter | Qt::AlignVCenter, "T");
+ }
+ }
}
int Signal::pt_in_rect(int y, int right, const QPoint &point)
@@ -355,11 +660,17 @@ int Signal::pt_in_rect(int y, int right, const QPoint &point)
const QRectF higTrig = get_rect("higTrig", y, right);
const QRectF negTrig = get_rect("negTrig", y, right);
const QRectF lowTrig = get_rect("lowTrig", y, right);
- const QRectF label = get_rect("label", y, right);
-
- if (color.contains(point))
+ const QRectF edgeTrig = get_rect("edgeTrig", y, right);
+ const QRectF label = get_rect("label", (_type == DS_DSO) ? _zeroPos : y, right);
+ const QRectF vDial = get_rect("vDial", y, right);
+ const QRectF hDial = get_rect("hDial", y, right);
+ const QRectF chEn = get_rect("chEn", y, right);
+ const QRectF acdc = get_rect("acdc", y, right);
+ const QRectF dsoTrig = get_rect("dsoTrig", 0, right);
+
+ if (color.contains(point) && _active)
return COLOR;
- else if (name.contains(point))
+ else if (name.contains(point) && _active)
return NAME;
else if (posTrig.contains(point) && _type == DS_LOGIC)
return POSTRIG;
@@ -369,8 +680,20 @@ int Signal::pt_in_rect(int y, int right, const QPoint &point)
return NEGTRIG;
else if (lowTrig.contains(point) && _type == DS_LOGIC)
return LOWTRIG;
- else if (label.contains(point))
+ else if (edgeTrig.contains(point) && _type == DS_LOGIC)
+ return EDGETRIG;
+ else if (label.contains(point) && _active)
return LABEL;
+ else if (vDial.contains(point) && _type == DS_DSO && _active)
+ return VDIAL;
+ else if (hDial.contains(point) && _type == DS_DSO && _active)
+ return HDIAL;
+ else if (chEn.contains(point) && _type == DS_DSO)
+ return CHEN;
+ else if (acdc.contains(point) && _type == DS_DSO && _active)
+ return ACDC;
+ else if (dsoTrig.contains(point) && _type == DS_DSO && _active)
+ return DSOTRIG;
else
return 0;
}
@@ -392,7 +715,8 @@ QRectF Signal::get_rect(const char *s, int y, int right)
{
const QSizeF color_size(SquareWidth, SquareWidth);
const QSizeF name_size(right - get_leftWidth() - get_rightWidth(), SquareWidth);
- const QSizeF label_size(_text_size.width() + Margin, SquareWidth);
+ //const QSizeF label_size(_text_size.width() + Margin, SquareWidth);
+ const QSizeF label_size(SquareWidth, SquareWidth);
if (!strcmp(s, "name"))
return QRectF(
@@ -402,38 +726,68 @@ QRectF Signal::get_rect(const char *s, int y, int right)
else if (!strcmp(s, "label"))
return QRectF(
right - 1.5f * label_size.width(),
- y - label_size.height() / 2,
+ y - SquareWidth / 2,
label_size.width(), label_size.height());
else if (!strcmp(s, "posTrig"))
return QRectF(
get_leftWidth() + name_size.width() + Margin,
- y - color_size.height() / 2,
- color_size.width(), color_size.height());
+ y - SquareWidth / 2,
+ SquareWidth, SquareWidth);
else if (!strcmp(s, "higTrig"))
return QRectF(
get_leftWidth() + name_size.width() + SquareWidth + Margin,
- y - color_size.height() / 2,
- color_size.width(), color_size.height());
+ y - SquareWidth / 2,
+ SquareWidth, SquareWidth);
else if (!strcmp(s, "negTrig"))
return QRectF(
get_leftWidth() + name_size.width() + 2 * SquareWidth + Margin,
- y - color_size.height() / 2,
- color_size.width(), color_size.height());
+ y - SquareWidth / 2,
+ SquareWidth, SquareWidth);
else if (!strcmp(s, "lowTrig"))
return QRectF(
get_leftWidth() + name_size.width() + 3 * SquareWidth + Margin,
- y - color_size.height() / 2,
- color_size.width(), color_size.height());
+ y - SquareWidth / 2,
+ SquareWidth, SquareWidth);
+ else if (!strcmp(s, "edgeTrig"))
+ return QRectF(
+ get_leftWidth() + name_size.width() + 4 * SquareWidth + Margin,
+ y - SquareWidth / 2,
+ SquareWidth, SquareWidth);
else if (!strcmp(s, "groupIndex"))
return QRectF(
get_leftWidth() + name_size.width() + Margin,
- y - color_size.height() / 2,
- color_size.width() * 4, color_size.height());
+ y - SquareWidth / 2,
+ SquareWidth * SquareNum, SquareWidth);
+ else if (!strcmp(s, "vDial"))
+ return QRectF(
+ get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin,
+ y - SquareWidth * SquareNum,
+ SquareWidth * (SquareNum-1), SquareWidth * (SquareNum-1));
+ else if (!strcmp(s, "hDial"))
+ return QRectF(
+ get_leftWidth() + name_size.width() + SquareWidth*0.5 + Margin,
+ y + SquareWidth * 1.5,
+ SquareWidth * (SquareNum-1), SquareWidth * (SquareNum-1));
+ else if (!strcmp(s, "chEn"))
+ return QRectF(
+ get_leftWidth() + name_size.width() + SquareWidth*0.75 + Margin,
+ y - SquareWidth / 2,
+ SquareWidth * 1.5, SquareWidth);
+ else if (!strcmp(s, "acdc"))
+ return QRectF(
+ get_leftWidth() + name_size.width() + SquareWidth*2.75 + Margin,
+ y - SquareWidth / 2,
+ SquareWidth * 1.5, SquareWidth);
+ else if (!strcmp(s, "dsoTrig"))
+ return QRectF(
+ right - label_size.width(),
+ _trig_vpos - SquareWidth / 2,
+ label_size.width(), label_size.height());
else
return QRectF(
2,
- y - color_size.height() / 2,
- color_size.width(), color_size.height());
+ y - SquareWidth / 2,
+ SquareWidth, SquareWidth);
}
} // namespace view