diff --git a/candatagrid.cpp b/candatagrid.cpp
index f46783f..723c6f5 100644
--- a/candatagrid.cpp
+++ b/candatagrid.cpp
@@ -96,8 +96,8 @@ void CANDataGrid::paintEvent(QPaintEvent *event)
qDebug() << "XSpan" << xSpan << " YSpan " << ySpan;
- int xSector = xSpan / 10;
- int ySector = ySpan / 10;
+ int xSector = xSpan / 9;
+ int ySector = ySpan / 9;
blackBrush = QBrush(Qt::black);
whiteBrush = QBrush(Qt::white);
@@ -105,39 +105,50 @@ void CANDataGrid::paintEvent(QPaintEvent *event)
greenBrush = QBrush(Qt::green);
grayBrush = QBrush(QColor(230,230,230));
- //the whole thing is broken up into 100 chunks which are allocated as such:
- //The entirety of the upper row is taken up by "BITS"
- //The next row down skips two columns and then has 7 6 5 4 3 2 1 0
- //The bottom right 64 entries are the grid
- //The left most column has "BYTES" written vertically down it
- //the next left most column has "0 1 2 3 4 5 6 7" written down along the grid
+ //the whole thing is broken up into 81 chunks which are broken up
+ //into the 8x8 grid of bits in the bottom right and the other parts
+ //taken up by helper text
+
+ //bigTextSize is too large when the grid gets small. Might need to tweak it then.
+ double bigTextSize = qMin(xSector, ySector) * 0.5;
+ double smallTextSize = qMin(xSector, ySector) * 0.3;
painter.setPen(QPen(QApplication::palette().color(QPalette::Text)));
QFont mainFont;
- mainFont.setPixelSize(qMin(xSector, ySector) - 10);
+ mainFont.setPixelSize(bigTextSize);
painter.setFont(mainFont);
QFont smallFont;
- smallFont.setPixelSize(qMin(xSector, ySector) - 15);
+ smallFont.setPixelSize(smallTextSize);
QFont boldFont;
- boldFont.setPixelSize(qMin(xSector, ySector) - 10);
+ boldFont.setPixelSize(bigTextSize);
boldFont.setBold(true);
- painter.drawText(QRect(viewport.left(), viewport.top(), xSpan, ySector), Qt::AlignCenter, tr("BITS"));
+ painter.drawText(QRect(viewport.left(), viewport.top(), xSector, ySector), Qt::AlignCenter, "BITS ->");
for (x = 0; x < 8; x++)
{
- painter.drawText(QRect(viewport.left() + (x+2) * xSector, viewport.top() + ySector, xSector, ySector), Qt::AlignCenter, QString::number(7-x));
- }
- for (y = 0; y < 8; y++)
- {
- painter.drawText(QRect(viewport.left() + xSector, viewport.top() + ySector * (y + 2), xSector, ySector), Qt::AlignCenter, QString::number(y));
+ painter.drawText(QRect(viewport.left() + (x+1) * xSector, viewport.top(), xSector, ySector), Qt::AlignCenter, QString::number(7-x));
}
+ //for (y = 0; y < 8; y++)
+ //{
+ // painter.drawText(QRect(viewport.left() + xSector, viewport.top() + ySector * (y + 2), xSector, ySector), Qt::AlignCenter, QString::number(y));
+ //}
- painter.drawText(viewport.left() + 10, viewport.top() + ySector * 4, "B");
- painter.drawText(viewport.left() + 10, viewport.top() + ySector * 5, "Y");
- painter.drawText(viewport.left() + 10, viewport.top() + ySector * 6, "T");
- painter.drawText(viewport.left() + 10, viewport.top() + ySector * 7, "E");
- painter.drawText(viewport.left() + 10, viewport.top() + ySector * 8, "S");
+ painter.drawText(viewport.left() + 4, viewport.top() + ySector * 3, "B");
+ painter.drawText(viewport.left() + 4, viewport.top() + ySector * 4, "Y");
+ painter.drawText(viewport.left() + 4, viewport.top() + ySector * 5, "T");
+ painter.drawText(viewport.left() + 4, viewport.top() + ySector * 6, "E");
+ painter.drawText(viewport.left() + 4, viewport.top() + ySector * 7, "S");
+
+
+ painter.drawText(QRect(viewport.left(), viewport.top() + ySector * 1, xSector, ySector), Qt::AlignCenter, "0");
+ painter.drawText(QRect(viewport.left(), viewport.top() + ySector * 2, xSector, ySector), Qt::AlignCenter, "1");
+ painter.drawText(QRect(viewport.left(), viewport.top() + ySector * 3, xSector, ySector), Qt::AlignCenter, "2");
+ painter.drawText(QRect(viewport.left(), viewport.top() + ySector * 4, xSector, ySector), Qt::AlignCenter, "3");
+ painter.drawText(QRect(viewport.left(), viewport.top() + ySector * 5, xSector, ySector), Qt::AlignCenter, "4");
+ painter.drawText(QRect(viewport.left(), viewport.top() + ySector * 6, xSector, ySector), Qt::AlignCenter, "5");
+ painter.drawText(QRect(viewport.left(), viewport.top() + ySector * 7, xSector, ySector), Qt::AlignCenter, "6");
+ painter.drawText(QRect(viewport.left(), viewport.top() + ySector * 8, xSector, ySector), Qt::AlignCenter, "7");
//now, color the bitfield by seeing if a given bit is freshly set/unset in the new data
//compared to the old. Bits that are not set in either are white, bits set in both are black
@@ -187,7 +198,7 @@ void CANDataGrid::paintEvent(QPaintEvent *event)
}
//painter.fillRect(viewport.left() + (x+2) * xSector, viewport.top() + (y+2) * ySector, xSector, ySector, redBrush);
- painter.drawRect(viewport.left() + (x+2) * xSector, viewport.top() + (y+2) * ySector, xSector, ySector);
+ painter.drawRect(viewport.left() + (x+1) * xSector, viewport.top() + (y+1) * ySector, xSector, ySector);
switch (textStates[x][y])
{
case GridTextState::NORMAL:
@@ -205,12 +216,12 @@ void CANDataGrid::paintEvent(QPaintEvent *event)
break;
}
- painter.drawText(viewport.left() + (x+2) * xSector + (xSector / 8), viewport.top() + (y + 3) * ySector - (ySector / 3), QString::number(y * 8 + (7-x)));
+ painter.drawText(viewport.left() + (x+1) * xSector + (xSector / 8), viewport.top() + (y + 2) * ySector - (ySector / 3), QString::number(y * 8 + (7-x)));
painter.setPen(QPen(Qt::gray));
}
}
- upperLeft.setX(viewport.left() + 2 * xSector);
- upperLeft.setY(viewport.top() + 2 * ySector);
+ upperLeft.setX(viewport.left() + 1 * xSector);
+ upperLeft.setY(viewport.top() + 1 * ySector);
gridSize.setX(xSector);
gridSize.setY(ySector);
}
diff --git a/ui/dbcmaineditor.ui b/ui/dbcmaineditor.ui
index dfc98ce..81ec89b 100644
--- a/ui/dbcmaineditor.ui
+++ b/ui/dbcmaineditor.ui
@@ -116,11 +116,20 @@
28
- true
+ false
false
+
+ 1
+
+
+ true
+
+
+ true
+
1
diff --git a/ui/dbcsignaleditor.ui b/ui/dbcsignaleditor.ui
index c5458ae..24361a6 100644
--- a/ui/dbcsignaleditor.ui
+++ b/ui/dbcsignaleditor.ui
@@ -41,6 +41,12 @@
-
+
+
+ 0
+ 0
+
+
300