diff --git a/sources/diagram.cpp b/sources/diagram.cpp index b7f817cfc..9c42a6f58 100644 --- a/sources/diagram.cpp +++ b/sources/diagram.cpp @@ -186,7 +186,7 @@ void Diagram::drawBackground(QPainter *p, const QRectF &r) { p -> drawRect(r); if (draw_grid_) { - /* Draw the point of the grid + /* Draw the points of the grid * if background color is black, * then grid spots shall be white, * else they shall be black in color. @@ -232,19 +232,20 @@ void Diagram::drawBackground(QPainter *p, const QRectF &r) { int minWidthPen = settings.value(QStringLiteral("diagrameditor/grid_pointsize_min"), 1).toInt(); int maxWidthPen = settings.value(QStringLiteral("diagrameditor/grid_pointsize_max"), 1).toInt(); pen.setWidth(minWidthPen); - qreal stepPen = (maxWidthPen - minWidthPen) / (qreal)maxWidthPen; - qreal stepZoom = (5.0 - 1.0) / maxWidthPen; - for (int n=0; n (1.0 + n * stepZoom)) && (zoom_factor <= (1.0 + (n+1) * stepZoom))) { - int widthPen = minWidthPen + qRound(n * stepPen); - pen.setWidth(widthPen); + if (minWidthPen != maxWidthPen) { + qreal stepPen = (maxWidthPen - minWidthPen) / (qreal)maxWidthPen; + qreal stepZoom = (5.0 - 1.0) / maxWidthPen; + for (int n=0; n (1.0 + n * stepZoom)) && (zoom_factor <= (1.0 + (n+1) * stepZoom))) { + int widthPen = minWidthPen + qRound(n * stepPen); + pen.setWidth(widthPen); + } } + if (zoom_factor <= 1.0) + pen.setWidth(minWidthPen); + else if (zoom_factor > (1.0 + stepZoom * maxWidthPen)) + pen.setWidth(maxWidthPen); } - if (zoom_factor <= 1.0) - pen.setWidth(minWidthPen); - else if (zoom_factor > (1.0 + stepZoom * maxWidthPen)) - pen.setWidth(maxWidthPen); - p -> setPen(pen); if (zoom_factor > 0.5) // no grid below ... ! p -> drawPoints(points); diff --git a/sources/editor/elementview.cpp b/sources/editor/elementview.cpp index 6960f3698..3e0f2267e 100644 --- a/sources/editor/elementview.cpp +++ b/sources/editor/elementview.cpp @@ -559,19 +559,20 @@ void ElementView::drawBackground(QPainter *p, const QRectF &r) { int minWidthPen = settings.value(QStringLiteral("elementeditor/grid_pointsize_min"), 1).toInt(); int maxWidthPen = settings.value(QStringLiteral("elementeditor/grid_pointsize_max"), 1).toInt(); pen.setWidth(minWidthPen); - qreal stepPen = (maxWidthPen - minWidthPen) / (qreal)maxWidthPen; - qreal stepZoom = (25.0 - 1.0) / maxWidthPen; - for (int n=0; n (1.0 + n * stepZoom)) && (zoom_factor <= (1.0 + (n+1) * stepZoom))) { - int widthPen = minWidthPen + qRound(n * stepPen); - pen.setWidth(widthPen); + if (minWidthPen != maxWidthPen) { + qreal stepPen = (maxWidthPen - minWidthPen) / (qreal)maxWidthPen; + qreal stepZoom = (25.0 - 1.0) / maxWidthPen; + for (int n=0; n (1.0 + n * stepZoom)) && (zoom_factor <= (1.0 + (n+1) * stepZoom))) { + int widthPen = minWidthPen + qRound(n * stepPen); + pen.setWidth(widthPen); + } } + if (zoom_factor <= 1.0) + pen.setWidth(minWidthPen); + else if (zoom_factor > (1.0 + stepZoom * maxWidthPen)) + pen.setWidth(maxWidthPen); } - if (zoom_factor <= 1.0) - pen.setWidth(minWidthPen); - else if (zoom_factor > (1.0 + stepZoom * maxWidthPen)) - pen.setWidth(maxWidthPen); - p -> setPen(pen); p -> setBrush(Qt::NoBrush); qreal limit_x = r.x() + r.width();