X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdimension.cpp;h=1e9b785e0be7d2981a30c892d2d05360627378ba;hb=f507d97c1b1118834a70332f5f79d8479a6964c0;hp=e5a747842a32b8f6baa696c70f0dbf8219cdd9d8;hpb=012cc8abb57350f9e9f126ad580ae58142452015;p=architektonas diff --git a/src/dimension.cpp b/src/dimension.cpp index e5a7478..1e9b785 100644 --- a/src/dimension.cpp +++ b/src/dimension.cpp @@ -264,6 +264,9 @@ I believe they are pixels. if (snapToGrid) point = SnapPointToGrid(point); + if (snapPointIsValid) + point = snapPoint; + if (hitPoint1) { oldState = state; @@ -335,6 +338,12 @@ I believe they are pixels. bool hovered = HitTest(point); needUpdate = HitStateChanged(); + if (snapToGrid) + point = SnapPointToGrid(point); + + if (snapPointIsValid) + point = snapPoint; + objectWasDragged = (/*draggingLine |*/ draggingHandle1 | draggingHandle2); if (objectWasDragged) @@ -517,7 +526,7 @@ bool Dimension::HitStateChanged(void) /*virtual*/ void Dimension::Enumerate(FILE * file) { - fprintf(file, "DIMENSION %i (%lf,%lf) (%lf,%lf) %i\n", layer, position.x, position.y, endpoint.x, endpoint.y, type); + fprintf(file, "DIMENSION %i (%lf,%lf) (%lf,%lf) %i\n", layer, position.x, position.y, endpoint.x, endpoint.y, dimensionType); }