From: Shamus Hammons Date: Fri, 4 Mar 2016 20:37:52 +0000 (-0600) Subject: Fix for bad mouse warping on single point selection. X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?p=ttedit;a=commitdiff_plain;h=f027e22ef9a22ac2f601eac91667f7a721ed084c Fix for bad mouse warping on single point selection. --- diff --git a/.gitignore b/.gitignore index fdd7155..43f06c5 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,10 @@ ttedit debug.log obj/* saves/* +old-ttedit-src/* +mousetest.cpp +res/ttedit.ico +res/ttedit.rc +res/toolbar1.bmp +docs/* + diff --git a/src/editwindow.cpp b/src/editwindow.cpp index 85b4d9c..93757ce 100755 --- a/src/editwindow.cpp +++ b/src/editwindow.cpp @@ -88,7 +88,7 @@ void EditWindow::CreateCursors(void) } } - +#if 0 QPoint EditWindow::GetAdjustedMousePosition(QMouseEvent * event) { // This is undoing the transform, e.g. going from client coords to local @@ -103,7 +103,7 @@ QPoint EditWindow::GetAdjustedClientPosition(int x, int y) // VOODOO ALERT (ON Y COMPONENT!!!!) return QPoint(-offsetX + x, (size().height() - (-offsetY + y)) * +1.0); } - +#endif /* TODO: @@ -116,8 +116,6 @@ void EditWindow::paintEvent(QPaintEvent * /*event*/) { QPainter qtp(this); Painter painter(&qtp); -//hm, causes lockup (or does it???) -//& it doesn't help with our Bezier rendering code :-P painter.SetRenderHint(QPainter::Antialiasing); Global::zoom = scale; @@ -434,9 +432,8 @@ WriteLogMsg(" --> [# polys: %u, # points: %u]\n", pts.GetNumPolys(), pts.GetNumP if (pts.GetNumPoints() > 0) { // pt = GetAdjustedClientPosition(pts.GetX(ptHighlight), pts.GetY(ptHighlight)); - Vector pt = Painter::QtToCartesianCoords(Vector(event->x(), event->y())); + Vector pt = Painter::CartesianToQtCoords(Vector(pts.GetX(ptHighlight), pts.GetY(ptHighlight))); //printf("GetAdjustedClientPosition = %i, %i\n", pt.x(), pt.y()); -// WarpPointer(pt.x, pt.y); QPoint warp(pt.x, pt.y); QCursor::setPos(mapToGlobal(warp)); @@ -478,7 +475,7 @@ WriteLogMsg(" --> [# polys: %u, # points: %u]\n", pts.GetNumPolys(), pts.GetNumP rotationCenter = Vector(centroid.x, centroid.y); showRotationCenter = true; // pt = GetAdjustedClientPosition(pts.GetX(ptHighlight), pts.GetY(ptHighlight)); - Vector pt = Painter::QtToCartesianCoords(Vector(pts.GetX(ptHighlight), pts.GetY(ptHighlight))); + Vector pt = Painter::CartesianToQtCoords(Vector(pts.GetX(ptHighlight), pts.GetY(ptHighlight))); QCursor::setPos(mapToGlobal(QPoint(pt.x, pt.y))); rotationZeroPoint = Vector(pts.GetX(ptHighlight), pts.GetY(ptHighlight)); haveZeroPoint = true; @@ -489,7 +486,7 @@ WriteLogMsg(" --> [# polys: %u, # points: %u]\n", pts.GetNumPolys(), pts.GetNumP { pts.InvertPolyDrawSequence(pts.GetPolyForPointNumber(ptHighlight)); // pt = GetAdjustedClientPosition(pts.GetX(ptHighlight), pts.GetY(ptHighlight)); - Vector pt = Painter::QtToCartesianCoords(Vector(pts.GetX(ptHighlight), pts.GetY(ptHighlight))); + Vector pt = Painter::CartesianToQtCoords(Vector(pts.GetX(ptHighlight), pts.GetY(ptHighlight))); QCursor::setPos(mapToGlobal(QPoint(pt.x, pt.y))); update(); } diff --git a/src/editwindow.h b/src/editwindow.h index 11a5b07..983a96c 100755 --- a/src/editwindow.h +++ b/src/editwindow.h @@ -34,8 +34,6 @@ class EditWindow: public QWidget private: void CreateCursors(void); - QPoint GetAdjustedMousePosition(QMouseEvent *); - QPoint GetAdjustedClientPosition(int x, int y); void DrawGlyph(Painter & p, GlyphPoints & glyph); void DrawGlyphPoly(Painter & p, GlyphPoints & glyph, uint16_t poly); void ClearSelection(void);