diff options
54 files changed, 886 insertions, 1903 deletions
diff --git a/css/ninja.css b/css/ninja.css index 682dfc9d..ce27977b 100755 --- a/css/ninja.css +++ b/css/ninja.css | |||
@@ -198,11 +198,13 @@ body { position: absolute; margin: 0px; width: 100%; height: 100%; background-co | |||
198 | 198 | ||
199 | #iframeContainer { position: absolute; top: 0px; left: 0px; margin: 0px; padding: 0px; width: 100%; height: 100%; overflow: scroll; background: gray; } | 199 | #iframeContainer { position: absolute; top: 0px; left: 0px; margin: 0px; padding: 0px; width: 100%; height: 100%; overflow: scroll; background: gray; } |
200 | 200 | ||
201 | .drawingCanvas { position: absolute; margin: 0px; border: none; padding: 0px; top: 0px; left: 0px; z-index: 6; } | 201 | .drawingCanvas { position: absolute; margin: 0px; border: none; padding: 0px; top: 0px; left: 0px; z-index: 7; } |
202 | 202 | ||
203 | .stageCanvas { position: absolute; margin: 0px; border: none; padding: 0px; top: 0px; left: 0px; z-index: 5; } | 203 | .stageCanvas { position: absolute; margin: 0px; border: none; padding: 0px; top: 0px; left: 0px; z-index: 6; } |
204 | 204 | ||
205 | .layoutCanvas { position: absolute; margin: 0px; border: none; padding: 0px; top: 0px; left: 0px; z-index: 4; } | 205 | .layoutCanvas { position: absolute; margin: 0px; border: none; padding: 0px; top: 0px; left: 0px; z-index: 5; } |
206 | |||
207 | .gridCanvas { position: absolute; margin: 0px; border: none; padding: 0px; top: 0px; left: 0px; z-index: 4; } | ||
206 | 208 | ||
207 | .montage-editor-frame { position: absolute; z-index: 7; top: 0; left: 0; display: none; -webkit-user-select: initial; } | 209 | .montage-editor-frame { position: absolute; z-index: 7; top: 0; left: 0; display: none; -webkit-user-select: initial; } |
208 | 210 | ||
diff --git a/js/components/layout/bread-crumb.reel/bread-crumb.js b/js/components/layout/bread-crumb.reel/bread-crumb.js index 49dbe3cb..ac131f2c 100755 --- a/js/components/layout/bread-crumb.reel/bread-crumb.js +++ b/js/components/layout/bread-crumb.reel/bread-crumb.js | |||
@@ -9,21 +9,44 @@ var Montage = require("montage/core/core").Montage, | |||
9 | 9 | ||
10 | exports.Breadcrumb = Montage.create(Component, { | 10 | exports.Breadcrumb = Montage.create(Component, { |
11 | 11 | ||
12 | disabled: { | 12 | _currentDocument: { |
13 | value: true | 13 | enumerable: false, |
14 | value: null | ||
14 | }, | 15 | }, |
15 | 16 | ||
16 | handleOpenDocument: { | 17 | currentDocument: { |
17 | value: function(){ | 18 | enumerable: false, |
18 | this.disabled = false; | 19 | get: function() { |
20 | return this._currentDocument; | ||
21 | }, | ||
22 | set: function(value) { | ||
23 | if (value === this._currentDocument) { | ||
24 | return; | ||
25 | } | ||
26 | |||
27 | this._currentDocument = value; | ||
28 | |||
29 | if(!value) { | ||
30 | this.disabled = true; | ||
31 | } else { | ||
32 | this.disabled = this._currentDocument.currentView !== "design"; | ||
33 | } | ||
34 | |||
19 | } | 35 | } |
20 | }, | 36 | }, |
21 | 37 | ||
22 | handleCloseDocument: { | 38 | |
23 | value: function(){ | 39 | _disabled: { |
24 | if(!this.application.ninja.documentController.activeDocument && this.application.ninja.currentDocument.currentView !== "code") { | 40 | value: true |
25 | this.disabled = true; | 41 | }, |
26 | this.application.ninja.currentSelectedContainer = (this.application.ninja.currentDocument ? this.application.ninja.currentDocument.model.documentRoot : null); | 42 | |
43 | disabled: { | ||
44 | get: function() { | ||
45 | return this._disabled; | ||
46 | }, | ||
47 | set: function(value) { | ||
48 | if(value !== this._disabled) { | ||
49 | this._disabled = value; | ||
27 | } | 50 | } |
28 | } | 51 | } |
29 | }, | 52 | }, |
@@ -50,8 +73,6 @@ exports.Breadcrumb = Montage.create(Component, { | |||
50 | 73 | ||
51 | prepareForDraw: { | 74 | prepareForDraw: { |
52 | value: function() { | 75 | value: function() { |
53 | this.eventManager.addEventListener("openDocument", this, false); | ||
54 | this.eventManager.addEventListener("closeDocument", this, false); | ||
55 | this.breadcrumbBt.addEventListener("action", this, false); | 76 | this.breadcrumbBt.addEventListener("action", this, false); |
56 | } | 77 | } |
57 | }, | 78 | }, |
@@ -65,7 +86,7 @@ exports.Breadcrumb = Montage.create(Component, { | |||
65 | 86 | ||
66 | parentNode = this.container; | 87 | parentNode = this.container; |
67 | 88 | ||
68 | while(parentNode !== this.application.ninja.currentDocument.model.documentRoot) { | 89 | while(parentNode !== this.currentDocument.model.documentRoot) { |
69 | this.containerElements.unshift({"node": parentNode, "nodeUuid":parentNode.uuid, "label": parentNode.nodeName}); | 90 | this.containerElements.unshift({"node": parentNode, "nodeUuid":parentNode.uuid, "label": parentNode.nodeName}); |
70 | parentNode = parentNode.parentNode; | 91 | parentNode = parentNode.parentNode; |
71 | } | 92 | } |
@@ -87,6 +108,7 @@ exports.Breadcrumb = Montage.create(Component, { | |||
87 | this.containerElements.pop(); | 108 | this.containerElements.pop(); |
88 | } | 109 | } |
89 | 110 | ||
111 | // TODO: This is bound 2 ways, update the internal property | ||
90 | this.application.ninja.currentSelectedContainer = this.containerElements[i].node; | 112 | this.application.ninja.currentSelectedContainer = this.containerElements[i].node; |
91 | } | 113 | } |
92 | } | 114 | } |
diff --git a/js/components/layout/document-bar.reel/document-bar.html b/js/components/layout/document-bar.reel/document-bar.html index 760186ba..a35b5590 100755 --- a/js/components/layout/document-bar.reel/document-bar.html +++ b/js/components/layout/document-bar.reel/document-bar.html | |||
@@ -37,11 +37,7 @@ | |||
37 | "element": {"#": "disabledCondition"} | 37 | "element": {"#": "disabledCondition"} |
38 | }, | 38 | }, |
39 | "bindings": { | 39 | "bindings": { |
40 | "condition": { | 40 | "condition": {"<-": "@owner.disabled"} |
41 | "boundObject": {"@": "owner"}, | ||
42 | "boundObjectPropertyPath": "disabled", | ||
43 | "oneway": true |