Преглед на файлове

Gizmo: Only start moving if mouse is dragged beyond 5px

trethaller преди 7 години
родител
ревизия
75905dbfa7
променени са 1 файла, в които са добавени 11 реда и са изтрити 2 реда
  1. 11 2
      hide/view/l3d/Gizmo.hx

+ 11 - 2
hide/view/l3d/Gizmo.hx

@@ -77,10 +77,19 @@ class Gizmo extends h3d.scene.Object {
 				mat.color.setColor(color);
 			}
 			interactive.onPush = function(e) {
-				startMove(mode);
+				var startPt = new h2d.col.Point(scene.s2d.mouseX, scene.s2d.mouseY);
+				updateFunc = function(dt) {
+					var mousePt = new h2d.col.Point(scene.s2d.mouseX, scene.s2d.mouseY);
+					if(mousePt.distance(startPt) > 5) {
+						startMove(mode);
+					}
+				}
 			}
 			interactive.onRelease = function(e) {
-				finishMove();
+				if(moving)
+					finishMove();
+				else
+					updateFunc = null;
 			}
 		}