aboutsummaryrefslogtreecommitdiff
path: root/js/tools
diff options
context:
space:
mode:
Diffstat (limited to 'js/tools')
-rw-r--r--js/tools/Rotate3DToolBase.js2
-rw-r--r--js/tools/RotateStage3DTool.js2
-rw-r--r--js/tools/modifier-tool-base.js35
3 files changed, 23 insertions, 16 deletions
diff --git a/js/tools/Rotate3DToolBase.js b/js/tools/Rotate3DToolBase.js
index 6e17864b..aa91b2f4 100644
--- a/js/tools/Rotate3DToolBase.js
+++ b/js/tools/Rotate3DToolBase.js
@@ -254,7 +254,7 @@ exports.Rotate3DToolBase = Montage.create(ModifierToolBase, {
254 captureSelectionDrawn: { 254 captureSelectionDrawn: {
255 value: function(event){ 255 value: function(event){
256 this._origin = null; 256 this._origin = null;
257 this._targets = null; 257 this._targets = [];
258 this._startOriginArray = null; 258 this._startOriginArray = null;
259 259
260 var len = this.application.ninja.selectedElements.length; 260 var len = this.application.ninja.selectedElements.length;
diff --git a/js/tools/RotateStage3DTool.js b/js/tools/RotateStage3DTool.js
index 6f07adae..ca2a8bf3 100644
--- a/js/tools/RotateStage3DTool.js
+++ b/js/tools/RotateStage3DTool.js
@@ -83,7 +83,7 @@ exports.RotateStage3DTool = Montage.create(Rotate3DToolBase, {
83 captureSelectionDrawn: { 83 captureSelectionDrawn: {
84 value: function(event){ 84 value: function(event){
85 this._origin = null; 85 this._origin = null;
86 this._targets = null; 86 this._targets = [];
87 this._startOriginArray = null; 87 this._startOriginArray = null;
88 88
89 var stage = this.application.ninja.currentDocument.documentRoot; 89 var stage = this.application.ninja.currentDocument.documentRoot;
diff --git a/js/tools/modifier-tool-base.js b/js/tools/modifier-tool-base.js
index f78e99c8..67b217c4 100644
--- a/js/tools/modifier-tool-base.js
+++ b/js/tools/modifier-tool-base.js
@@ -437,16 +437,19 @@ exports.ModifierToolBase = Montage.create(DrawingTool, {
437 437
438 startDraw: { 438 startDraw: {
439 value: function(event) { 439 value: function(event) {
440 this.isDrawing = true; 440 if(this._target)
441 this.application.ninja.stage.showSelectionBounds = false;
442
443 if(this._canSnap)
444 {
445 this.initializeSnapping(event);
446 }
447 else
448 { 441 {
449 this.drawWithoutSnapping(event); 442 this.isDrawing = true;
443 this.application.ninja.stage.showSelectionBounds = false;
444
445 if(this._canSnap)
446 {
447 this.initializeSnapping(event);
448 }
449 else
450 {
451 this.drawWithoutSnapping(event);
452 }
450 } 453 }
451 } 454 }
452 }, 455 },
@@ -674,11 +677,15 @@ exports.ModifierToolBase = Montage.create(DrawingTool, {
674 return this._targets; 677 return this._targets;
675 }, 678 },
676 set: function (value) { 679 set: function (value) {
677 this._target = value; 680 this._targets = value;
678 if (value === null) 681 if (value !== null && value.length)
679 { 682 {
680 return; 683 this.target = value[0];
681 } 684 }
685 else
686 {
687 this.target = null;
688 }
682 } 689 }
683 }, 690 },
684 691
@@ -723,7 +730,7 @@ exports.ModifierToolBase = Montage.create(DrawingTool, {
723 } else { 730 } else {
724 this.eventManager.removeEventListener("selectionChange", this, true); 731 this.eventManager.removeEventListener("selectionChange", this, true);
725 this.application.ninja.stage._iframeContainer.removeEventListener("scroll", this, false); 732 this.application.ninja.stage._iframeContainer.removeEventListener("scroll", this, false);
726 this._targets = null; 733 this._targets = [];
727 734
728 // Clean up 735 // Clean up
729 NJevent("disableStageMove"); 736 NJevent("disableStageMove");
@@ -749,7 +756,7 @@ exports.ModifierToolBase = Montage.create(DrawingTool, {
749 756
750 captureSelectionDrawn: { 757 captureSelectionDrawn: {
751 value: function(event){ 758 value: function(event){
752 this._targets = null; 759 this._targets = [];
753 760
754 var len = this.application.ninja.selectedElements.length; 761 var len = this.application.ninja.selectedElements.length;
755 if(len) 762 if(len)