diff options
Diffstat (limited to 'js/tools/SelectionTool.js')
-rwxr-xr-x | js/tools/SelectionTool.js | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/js/tools/SelectionTool.js b/js/tools/SelectionTool.js index 7eee761d..13a04944 100755 --- a/js/tools/SelectionTool.js +++ b/js/tools/SelectionTool.js | |||
@@ -16,6 +16,7 @@ var Montage = require("montage/core/core").Montage, | |||
16 | var SelectionTool = exports.SelectionTool = Montage.create(ModifierToolBase, { | 16 | var SelectionTool = exports.SelectionTool = Montage.create(ModifierToolBase, { |
17 | drawingFeedback: { value: { mode: "Draw2D", type: "" } }, | 17 | drawingFeedback: { value: { mode: "Draw2D", type: "" } }, |
18 | 18 | ||
19 | _inLocalMode: { value: false}, // This tool should always use global mode for translations | ||
19 | _canOperateOnStage: { value: true}, | 20 | _canOperateOnStage: { value: true}, |
20 | _isSelecting: {value: false, writable:true}, | 21 | _isSelecting: {value: false, writable:true}, |
21 | _shiftMove: { value: 10}, | 22 | _shiftMove: { value: 10}, |
@@ -34,14 +35,12 @@ var SelectionTool = exports.SelectionTool = Montage.create(ModifierToolBase, { | |||
34 | value: function () { | 35 | value: function () { |
35 | if(this._targets && this._targets.length) | 36 | if(this._targets && this._targets.length) |
36 | { | 37 | { |
37 | // TODO - drawUtils's elementPlanes check in drawSelectionBounds doesn't seem to work, | ||
38 | // so temporary workaround to simply check if all elements have identity matrix | ||
39 | // TODO - Eventually, this should instead check if all the selected items are on the view plane | ||
40 | var len = this._targets.length; | 38 | var len = this._targets.length; |
39 | var plane = this.application.ninja.stage.stageDeps.snapManager.getDragPlane(); | ||
41 | for(var i = 0; i < len; i++) | 40 | for(var i = 0; i < len; i++) |
42 | { | 41 | { |
43 | var mat = this._targets[i].mat; | 42 | var elt = this._targets[i].elt; |
44 | if(!MathUtils.isIdentityMatrix(mat)) | 43 | if(!this.application.ninja.stage.stageDeps.snapManager.elementIsOnPlane(elt, plane)) |
45 | { | 44 | { |
46 | return false; | 45 | return false; |
47 | } | 46 | } |