diff --git a/src/capture/tools/linetool.cpp b/src/capture/tools/linetool.cpp index a084cb01..2b47bed3 100644 --- a/src/capture/tools/linetool.cpp +++ b/src/capture/tools/linetool.cpp @@ -18,6 +18,8 @@ #include "linetool.h" #include +#define ADJ_VALUE 13 + LineTool::LineTool(QObject *parent) : CaptureTool(parent) { } @@ -47,9 +49,18 @@ void LineTool::processImage( const QVector &points, const QColor &color) { + QPoint p0 = points[0]; + QPoint p1 = points[1]; + if (needsAdjustment(p0, p1)) { + p1.setY(p0.y()); + } painter.setPen(QPen(color, 2)); - painter.drawLine(points[0], points[1]); + painter.drawLine(p0, p1); } void LineTool::onPressed() { } + +bool LineTool::needsAdjustment(const QPoint &p0, const QPoint &p1) const { + return (p1.y() >= p0.y() - ADJ_VALUE) && (p1.y() <= p0.y() + ADJ_VALUE); +} diff --git a/src/capture/tools/linetool.h b/src/capture/tools/linetool.h index 377cdf7e..32a31570 100644 --- a/src/capture/tools/linetool.h +++ b/src/capture/tools/linetool.h @@ -40,6 +40,9 @@ public: const QColor &color); void onPressed(); + +private: + inline bool needsAdjustment(const QPoint &p0, const QPoint &p1) const; }; #endif // LINETOOL_H diff --git a/src/capture/tools/markertool.cpp b/src/capture/tools/markertool.cpp index f4f70190..4cf7cbed 100644 --- a/src/capture/tools/markertool.cpp +++ b/src/capture/tools/markertool.cpp @@ -18,6 +18,8 @@ #include "markertool.h" #include +#define ADJ_VALUE 14 + MarkerTool::MarkerTool(QObject *parent) : CaptureTool(parent) { } @@ -47,11 +49,20 @@ void MarkerTool::processImage( const QVector &points, const QColor &color) { + QPoint p0 = points[0]; + QPoint p1 = points[1]; + if (needsAdjustment(p0, p1)) { + p1.setY(p0.y()); + } painter.setOpacity(0.35); painter.setPen(QPen(color, 14)); - painter.drawLine(points[0], points[1]); + painter.drawLine(p0, p1); painter.setOpacity(1); } void MarkerTool::onPressed() { } + +bool MarkerTool::needsAdjustment(const QPoint &p0, const QPoint &p1) const { + return (p1.y() >= p0.y() - ADJ_VALUE) && (p1.y() <= p0.y() + ADJ_VALUE); +} diff --git a/src/capture/tools/markertool.h b/src/capture/tools/markertool.h index c29df803..f560d1a7 100644 --- a/src/capture/tools/markertool.h +++ b/src/capture/tools/markertool.h @@ -40,6 +40,9 @@ public: const QColor &color); void onPressed(); + +private: + inline bool needsAdjustment(const QPoint &p0, const QPoint &p1) const; }; #endif // MARKERTOOL_H