kopia lustrzana https://gitlab.com/Teuniz/DSRemote
Show the channel labels in the Wave Inspector.
rodzic
8c970f133e
commit
24d1e5be99
2
global.h
2
global.h
|
@ -35,7 +35,7 @@
|
|||
|
||||
|
||||
#define PROGRAM_NAME "DSRemote"
|
||||
#define PROGRAM_VERSION "0.34_1701021058"
|
||||
#define PROGRAM_VERSION "0.34_1701021109"
|
||||
|
||||
#define MAX_PATHLEN 4096
|
||||
|
||||
|
|
181
wave_view.cpp
181
wave_view.cpp
|
@ -123,6 +123,11 @@ void WaveCurve::paintEvent(QPaintEvent *)
|
|||
|
||||
painter->fillRect(0, curve_h - 30, curve_w, curve_h, QColor(32, 32, 32));
|
||||
|
||||
for(i=0; i<devparms->channel_cnt; i++)
|
||||
{
|
||||
drawChanLabel(painter, 8 + (i * 130), curve_h - 25, i);
|
||||
}
|
||||
|
||||
/////////////////////////////////// translate coordinates, draw and fill a rectangle ///////////////////////////////////////////
|
||||
|
||||
painter->translate(bordersize, bordersize);
|
||||
|
@ -1518,6 +1523,182 @@ int WaveCurve::ascii_decode_control_char(char ch, char *str)
|
|||
}
|
||||
|
||||
|
||||
void WaveCurve::drawChanLabel(QPainter *painter, int xpos, int ypos, int chn)
|
||||
{
|
||||
QPainterPath path;
|
||||
|
||||
char str1[4],
|
||||
str2[128];
|
||||
|
||||
if(devparms == NULL)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
str1[0] = '1' + chn;
|
||||
str1[1] = 0;
|
||||
|
||||
convert_to_metric_suffix(str2, devparms->chanscale[chn], 2);
|
||||
|
||||
strcat(str2, devparms->chanunitstr[devparms->chanunit[chn]]);
|
||||
|
||||
if(devparms->chanbwlimit[chn])
|
||||
{
|
||||
strcat(str2, " B");
|
||||
}
|
||||
|
||||
if(devparms->chandisplay[chn])
|
||||
{
|
||||
if(chn == devparms->activechannel)
|
||||
{
|
||||
path.addRoundedRect(xpos, ypos, 20, 20, 3, 3);
|
||||
|
||||
painter->fillPath(path, SignalColor[chn]);
|
||||
|
||||
painter->setPen(Qt::black);
|
||||
|
||||
painter->drawText(xpos + 6, ypos + 15, str1);
|
||||
|
||||
if(devparms->chaninvert[chn])
|
||||
{
|
||||
painter->drawLine(xpos + 6, ypos + 3, xpos + 14, ypos + 3);
|
||||
}
|
||||
|
||||
path = QPainterPath();
|
||||
|
||||
path.addRoundedRect(xpos + 25, ypos, 90, 20, 3, 3);
|
||||
|
||||
painter->fillPath(path, Qt::black);
|
||||
|
||||
painter->setPen(SignalColor[chn]);
|
||||
|
||||
painter->drawRoundedRect(xpos + 25, ypos, 90, 20, 3, 3);
|
||||
|
||||
painter->drawText(xpos + 35, ypos + 1, 90, 20, Qt::AlignCenter, str2);
|
||||
|
||||
if(devparms->chancoupling[chn] == 0)
|
||||
{
|
||||
painter->drawLine(xpos + 33, ypos + 6, xpos + 33, ypos + 10);
|
||||
|
||||
painter->drawLine(xpos + 28, ypos + 10, xpos + 38, ypos + 10);
|
||||
|
||||
painter->drawLine(xpos + 30, ypos + 12, xpos + 36, ypos + 12);
|
||||
|
||||
painter->drawLine(xpos + 32, ypos + 14, xpos + 34, ypos + 14);
|
||||
}
|
||||
else if(devparms->chancoupling[chn] == 1)
|
||||
{
|
||||
painter->drawLine(xpos + 28, ypos + 8, xpos + 38, ypos + 8);
|
||||
|
||||
painter->drawLine(xpos + 28, ypos + 12, xpos + 30, ypos + 12);
|
||||
|
||||
painter->drawLine(xpos + 32, ypos + 12, xpos + 34, ypos + 12);
|
||||
|
||||
painter->drawLine(xpos + 36, ypos + 12, xpos + 38, ypos + 12);
|
||||
}
|
||||
else if(devparms->chancoupling[chn] == 2)
|
||||
{
|
||||
painter->drawArc(xpos + 30, ypos + 8, 5, 5, 10 * 16, 160 * 16);
|
||||
|
||||
painter->drawArc(xpos + 35, ypos + 8, 5, 5, -10 * 16, -160 * 16);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
path.addRoundedRect(xpos, ypos, 20, 20, 3, 3);
|
||||
|
||||
path.addRoundedRect(xpos + 25, ypos, 85, 20, 3, 3);
|
||||
|
||||
painter->fillPath(path, Qt::black);
|
||||
|
||||
painter->setPen(SignalColor[chn]);
|
||||
|
||||
painter->drawText(xpos + 6, ypos + 15, str1);
|
||||
|
||||
if(devparms->chaninvert[chn])
|
||||
{
|
||||
painter->drawLine(xpos + 6, ypos + 3, xpos + 14, ypos + 3);
|
||||
}
|
||||
|
||||
painter->drawText(xpos + 35, ypos + 1, 90, 20, Qt::AlignCenter, str2);
|
||||
|
||||
if(devparms->chancoupling[chn] == 0)
|
||||
{
|
||||
painter->drawLine(xpos + 33, ypos + 6, xpos + 33, ypos + 10);
|
||||
|
||||
painter->drawLine(xpos + 28, ypos + 10, xpos + 38, ypos + 10);
|
||||
|
||||
painter->drawLine(xpos + 30, ypos + 12, xpos + 36, ypos + 12);
|
||||
|
||||
painter->drawLine(xpos + 32, ypos + 14, xpos + 34, ypos + 14);
|
||||
}
|
||||
else if(devparms->chancoupling[chn] == 1)
|
||||
{
|
||||
painter->drawLine(xpos + 28, ypos + 8, xpos + 38, ypos + 8);
|
||||
|
||||
painter->drawLine(xpos + 28, ypos + 12, xpos + 30, ypos + 12);
|
||||
|
||||
painter->drawLine(xpos + 32, ypos + 12, xpos + 34, ypos + 12);
|
||||
|
||||
painter->drawLine(xpos + 36, ypos + 12, xpos + 38, ypos + 12);
|
||||
}
|
||||
else if(devparms->chancoupling[chn] == 2)
|
||||
{
|
||||
painter->drawArc(xpos + 30, ypos + 8, 5, 5, 10 * 16, 160 * 16);
|
||||
|
||||
painter->drawArc(xpos + 35, ypos + 8, 5, 5, -10 * 16, -160 * 16);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
path.addRoundedRect(xpos, ypos, 20, 20, 3, 3);
|
||||
|
||||
path.addRoundedRect(xpos + 25, ypos, 85, 20, 3, 3);
|
||||
|
||||
painter->fillPath(path, Qt::black);
|
||||
|
||||
painter->setPen(QColor(48, 48, 48));
|
||||
|
||||
painter->drawText(xpos + 6, ypos + 15, str1);
|
||||
|
||||
painter->drawText(xpos + 30, ypos + 1, 85, 20, Qt::AlignCenter, str2);
|
||||
|
||||
if(devparms->chanbwlimit[chn])
|
||||
{
|
||||
painter->drawText(xpos + 90, ypos + 1, 20, 20, Qt::AlignCenter, "B");
|
||||
}
|
||||
|
||||
if(devparms->chancoupling[chn] == 0)
|
||||
{
|
||||
painter->drawLine(xpos + 33, ypos + 6, xpos + 33, ypos + 10);
|
||||
|
||||
painter->drawLine(xpos + 28, ypos + 10, xpos + 38, ypos + 10);
|
||||
|
||||
painter->drawLine(xpos + 30, ypos + 12, xpos + 36, ypos + 12);
|
||||
|
||||
painter->drawLine(xpos + 32, ypos + 14, xpos + 34, ypos + 14);
|
||||
}
|
||||
else if(devparms->chancoupling[chn] == 1)
|
||||
{
|
||||
painter->drawLine(xpos + 28, ypos + 8, xpos + 38, ypos + 8);
|
||||
|
||||
painter->drawLine(xpos + 28, ypos + 12, xpos + 30, ypos + 12);
|
||||
|
||||
painter->drawLine(xpos + 32, ypos + 12, xpos + 34, ypos + 12);
|
||||
|
||||
painter->drawLine(xpos + 36, ypos + 12, xpos + 38, ypos + 12);
|
||||
}
|
||||
else if(devparms->chancoupling[chn] == 2)
|
||||
{
|
||||
painter->drawArc(xpos + 30, ypos + 8, 5, 5, 10 * 16, 160 * 16);
|
||||
|
||||
painter->drawArc(xpos + 35, ypos + 8, 5, 5, -10 * 16, -160 * 16);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -108,6 +108,7 @@ private:
|
|||
void drawSmallTriggerArrow(QPainter *, int, int, int, QColor);
|
||||
void drawTrigCenterArrow(QPainter *, int, int);
|
||||
void drawTopLabels(QPainter *);
|
||||
void drawChanLabel(QPainter *, int, int, int);
|
||||
void paintLabel(QPainter *, int, int, int, int, const char *, QColor);
|
||||
void draw_decoder(QPainter *, int, int);
|
||||
int ascii_decode_control_char(char, char *);
|
||||
|
|
Ładowanie…
Reference in New Issue