Fix arrow undo

This commit is contained in:
lupoDharkael
2018-04-11 01:21:17 +02:00
parent 0f5159a748
commit 7977b5a6a7
5 changed files with 18 additions and 6 deletions

View File

@@ -17,7 +17,9 @@
#include "abstractpathtool.h"
AbstractPathTool::AbstractPathTool(QObject *parent) : CaptureTool(parent) {
AbstractPathTool::AbstractPathTool(QObject *parent) :
CaptureTool(parent), m_thickness(0), m_padding(0)
{
}
@@ -47,7 +49,7 @@ QWidget *AbstractPathTool::configurationWidget() {
void AbstractPathTool::undo(QPixmap &pixmap) {
QPainter p(&pixmap);
const int val = m_thickness;
const int val = m_thickness + m_padding;
QRect area = m_backupArea + QMargins(val, val, val, val);
p.drawPixmap(area.intersected(pixmap.rect())
.topLeft(), m_pixmapBackup);
@@ -62,7 +64,7 @@ void AbstractPathTool::drawMove(const QPoint &p) {
}
void AbstractPathTool::updateBackup(const QPixmap &pixmap) {
const int val = m_thickness;
const int val = m_thickness + m_padding;
QRect area = m_backupArea.normalized() + QMargins(val, val, val, val);
m_pixmapBackup = pixmap.copy(area);
}