Fix itemAt transforms
This commit is contained in:
parent
6de909f998
commit
c983e4eb2a
@ -128,7 +128,7 @@ void CropScene::mouseMoveEvent(QGraphicsSceneMouseEvent *e) {
|
||||
auto buttons = e->buttons();
|
||||
if (e->modifiers() & Qt::ControlModifier && buttons == Qt::LeftButton) {
|
||||
QTransform stupidThing = views()[0]->transform();
|
||||
auto item = itemAt(e->screenPos(), stupidThing);
|
||||
auto item = itemAt(e->scenePos(), stupidThing);
|
||||
if (item && item != polyItem && item != rect && item->zValue() != -1) {
|
||||
QPointF delta = e->scenePos() - e->lastScenePos();
|
||||
item->moveBy(delta.x(), delta.y());
|
||||
@ -194,7 +194,7 @@ void CropScene::mouseReleaseEvent(QGraphicsSceneMouseEvent *e) {
|
||||
void CropScene::mousePressEvent(QGraphicsSceneMouseEvent *e) {
|
||||
if (e->modifiers() & Qt::AltModifier) {
|
||||
QTransform stupidThing = views()[0]->transform();
|
||||
auto item = itemAt(e->screenPos(), stupidThing);
|
||||
auto item = itemAt(e->scenePos(), stupidThing);
|
||||
if (item && item != polyItem && item != rect && item->zValue() != -1) {
|
||||
removeItem(item);
|
||||
}
|
||||
|
@ -8,6 +8,7 @@ CropView::CropView(QGraphicsScene *scene) : QGraphicsView(scene) {
|
||||
setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform | QPainter::HighQualityAntialiasing);
|
||||
setCursor(QCursor(Qt::CrossCursor));
|
||||
setMouseTracking(true);
|
||||
setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed));
|
||||
}
|
||||
|
||||
void CropView::keyPressEvent(QKeyEvent *e) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user