UI: Fix Qt 6 position deprecations

This commit is contained in:
gxalpha
2022-07-19 16:12:17 +02:00
committed by Ryan Foster
parent 49e37db952
commit 05c6a408e3
7 changed files with 53 additions and 21 deletions

View File

@@ -39,10 +39,10 @@ vec2 OBSBasicPreview::GetMouseEventPos(QMouseEvent *event)
OBSBasic *main = reinterpret_cast<OBSBasic *>(App()->GetMainWindow());
float pixelRatio = main->devicePixelRatioF();
float scale = pixelRatio / main->previewScale;
QPoint qtPos = event->pos();
vec2 pos;
vec2_set(&pos,
(float(event->x()) - main->previewX / pixelRatio) * scale,
(float(event->y()) - main->previewY / pixelRatio) * scale);
vec2_set(&pos, (qtPos.x() - main->previewX / pixelRatio) * scale,
(qtPos.y() - main->previewY / pixelRatio) * scale);
return pos;
}
@@ -499,11 +499,17 @@ void OBSBasicPreview::wheelEvent(QWheelEvent *event)
void OBSBasicPreview::mousePressEvent(QMouseEvent *event)
{
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
QPointF pos = event->position();
#else
QPointF pos = event->localPos();
#endif
if (scrollMode && IsFixedScaling() &&
event->button() == Qt::LeftButton) {
setCursor(Qt::ClosedHandCursor);
scrollingFrom.x = event->x();
scrollingFrom.y = event->y();
scrollingFrom.x = pos.x();
scrollingFrom.y = pos.x();
return;
}
@@ -519,8 +525,8 @@ void OBSBasicPreview::mousePressEvent(QMouseEvent *event)
OBSBasic *main = reinterpret_cast<OBSBasic *>(App()->GetMainWindow());
float pixelRatio = main->devicePixelRatioF();
float x = float(event->x()) - main->previewX / pixelRatio;
float y = float(event->y()) - main->previewY / pixelRatio;
float x = pos.x() - main->previewX / pixelRatio;
float y = pos.y() - main->previewY / pixelRatio;
Qt::KeyboardModifiers modifiers = QGuiApplication::keyboardModifiers();
bool altDown = (modifiers & Qt::AltModifier);
bool shiftDown = (modifiers & Qt::ShiftModifier);
@@ -1459,11 +1465,17 @@ void OBSBasicPreview::mouseMoveEvent(QMouseEvent *event)
{
changed = true;
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
QPointF qtPos = event->position();
#else
QPointF qtPos = event->localPos();
#endif
if (scrollMode && event->buttons() == Qt::LeftButton) {
scrollingOffset.x += event->x() - scrollingFrom.x;
scrollingOffset.y += event->y() - scrollingFrom.y;
scrollingFrom.x = event->x();
scrollingFrom.y = event->y();
scrollingOffset.x += qtPos.x() - scrollingFrom.x;
scrollingOffset.y += qtPos.y() - scrollingFrom.y;
scrollingFrom.x = qtPos.x();
scrollingFrom.y = qtPos.y();
emit DisplayResized();
return;
}
@@ -1537,8 +1549,8 @@ void OBSBasicPreview::mouseMoveEvent(QMouseEvent *event)
OBSBasic *main = reinterpret_cast<OBSBasic *>(
App()->GetMainWindow());
float scale = main->devicePixelRatioF();
float x = float(event->x()) - main->previewX / scale;
float y = float(event->y()) - main->previewY / scale;
float x = qtPos.x() - main->previewX / scale;
float y = qtPos.y() - main->previewY / scale;
vec2_set(&startPos, x, y);
updateCursor = true;
}