From ec0abdb1ff977df6b14f4b4a5b725fe3ec9e0fb6 Mon Sep 17 00:00:00 2001
From: Amanda Ghassaei <amandaghassaei@gmail.com>
Date: Fri, 27 Mar 2015 02:22:33 -0400
Subject: [PATCH] fix stock to origin

---
 js/cam/Assembler.js     | 5 ++---
 js/menus/CamMenuView.js | 5 ++---
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/js/cam/Assembler.js b/js/cam/Assembler.js
index 3863168c..3f9e9f25 100644
--- a/js/cam/Assembler.js
+++ b/js/cam/Assembler.js
@@ -166,13 +166,12 @@ Assembler = Backbone.Model.extend({
     _moveOrigin: function(){
         var position = this.get("originPosition");
         this.get("origin").position.set(position.x, position.y, position.z);
-        if (this.get("stockFixed")) this._updateStockPosToOrigin(position);
+        if (this.get("stockFixed")) this._updateStockPosToOrigin(position, this.previous("originPosition"));
         dmaGlobals.three.render();
         if (this.get("machine").setMachinePosition) this.get("machine").setMachinePosition();
     },
 
-    _updateStockPosToOrigin: function(newOrigin){
-        var lastOrigin = this.previous("originPosition");
+    _updateStockPosToOrigin: function(newOrigin, lastOrigin){
         var newStockPosition = _.clone(this.get("stockPosition"));
         _.each(_.keys(newStockPosition), function(key){
             newStockPosition[key] += newOrigin[key] - lastOrigin[key];
diff --git a/js/menus/CamMenuView.js b/js/menus/CamMenuView.js
index 46e594ea..1540dcd7 100644
--- a/js/menus/CamMenuView.js
+++ b/js/menus/CamMenuView.js
@@ -77,11 +77,10 @@ CamMenuView = Backbone.View.extend({
         e.preventDefault();
         var newVal = this._getNumber(e);
         if (newVal == null) return;
-        var object = this.assembler.get(property);
+        var object = _.clone(this.assembler.get(property));
         if ($(e.target).data("type")) {
             object[$(e.target).data("type")] = newVal;
-            this.assembler.trigger("change:" + property);
-            this.assembler.trigger("change");
+            this.assembler.set(property, object);
         }
         else this.assembler.set(property, newVal);
     },
-- 
GitLab