diff options
Diffstat (limited to 'js/stage')
-rwxr-xr-x | js/stage/binding-view.reel/binding-view.js | 24 | ||||
-rwxr-xr-x | js/stage/stage.reel/stage.css | 6 | ||||
-rwxr-xr-x | js/stage/stage.reel/stage.js | 29 |
3 files changed, 51 insertions, 8 deletions
diff --git a/js/stage/binding-view.reel/binding-view.js b/js/stage/binding-view.reel/binding-view.js index b207cc3d..5ad2d364 100755 --- a/js/stage/binding-view.reel/binding-view.js +++ b/js/stage/binding-view.reel/binding-view.js | |||
@@ -207,22 +207,36 @@ exports.BindingView = Montage.create(Component, { | |||
207 | } | 207 | } |
208 | }, | 208 | }, |
209 | 209 | ||
210 | _currentDocument : { value: null }, | 210 | _currentDocument: { |
211 | currentDocument : { | 211 | value: null |
212 | get : function() { return this._currentDocument; }, | 212 | }, |
213 | set : function(value) { | ||
214 | if(value === this._currentDocument) { return; } | ||
215 | 213 | ||
214 | currentDocument: { | ||
215 | get: function() { | ||
216 | return this._currentDocument; | ||
217 | }, | ||
218 | set: function(value) { | ||
219 | if(value === this._currentDocument) { | ||
220 | return; | ||
221 | } | ||
216 | 222 | ||
217 | this._currentDocument = value; | 223 | this._currentDocument = value; |
224 | |||
218 | if(value) { | 225 | if(value) { |
219 | this.hide = (value.currentView === 'code'); | 226 | this.hide = (value.currentView === 'code'); |
227 | this.currentDocument.addPropertyChangeListener("model.currentView", this, false); | ||
220 | } | 228 | } |
221 | 229 | ||
222 | this.needsDraw = true; | 230 | this.needsDraw = true; |
223 | } | 231 | } |
224 | }, | 232 | }, |
225 | 233 | ||
234 | handleChange: { | ||
235 | value: function() { | ||
236 | this.hide = this.currentDocument.model.currentView.identifier === "design-code"; | ||
237 | } | ||
238 | }, | ||
239 | |||
226 | _hide : { value: true }, | 240 | _hide : { value: true }, |
227 | hide : { | 241 | hide : { |
228 | get : function() { return this._hide; }, | 242 | get : function() { return this._hide; }, |
diff --git a/js/stage/stage.reel/stage.css b/js/stage/stage.reel/stage.css index 56b4c58c..d1277ef1 100755 --- a/js/stage/stage.reel/stage.css +++ b/js/stage/stage.reel/stage.css | |||
@@ -68,7 +68,11 @@ POSSIBILITY OF SUCH DAMAGE. | |||
68 | 68 | ||
69 | .codeViewContainer .CodeMirror-scroll { | 69 | .codeViewContainer .CodeMirror-scroll { |
70 | height: 100%; | 70 | height: 100%; |
71 | overflow: auto; | 71 | overflow-y: hidden; |
72 | } | ||
73 | |||
74 | .codeViewContainer .CodeMirror-scrollbar { | ||
75 | display:none; | ||
72 | } | 76 | } |
73 | 77 | ||
74 | .codeViewContainer>div{ | 78 | .codeViewContainer>div{ |
diff --git a/js/stage/stage.reel/stage.js b/js/stage/stage.reel/stage.js index 817220d4..883f1526 100755 --- a/js/stage/stage.reel/stage.js +++ b/js/stage/stage.reel/stage.js | |||
@@ -349,6 +349,9 @@ exports.Stage = Montage.create(Component, { | |||
349 | 349 | ||
350 | //call configure false with the old document on the selected tool to tear down down any temp. stuff | 350 | //call configure false with the old document on the selected tool to tear down down any temp. stuff |
351 | this.application.ninja.toolsData.selectedToolInstance._configure(false); | 351 | this.application.ninja.toolsData.selectedToolInstance._configure(false); |
352 | |||
353 | // Remove the change listener | ||
354 | this._currentDocument.removePropertyChangeListener("model.currentViewIdentifier", this, false); | ||
352 | } else if(this.currentDocument && (this.currentDocument.currentView === "code")) { | 355 | } else if(this.currentDocument && (this.currentDocument.currentView === "code")) { |
353 | this.switchedFromCodeDoc = true; // Switching from code document affects stage's size and scrollbar | 356 | this.switchedFromCodeDoc = true; // Switching from code document affects stage's size and scrollbar |
354 | } | 357 | } |
@@ -368,6 +371,8 @@ exports.Stage = Montage.create(Component, { | |||
368 | 371 | ||
369 | this.clearAllCanvas(); | 372 | this.clearAllCanvas(); |
370 | this.initWithDocument(); | 373 | this.initWithDocument(); |
374 | |||
375 | this._currentDocument.addPropertyChangeListener("model.currentViewIdentifier", this, false); | ||
371 | } else { | 376 | } else { |
372 | this.collapseAllPanels(); | 377 | this.collapseAllPanels(); |
373 | this.hideCanvas(true); | 378 | this.hideCanvas(true); |
@@ -376,6 +381,26 @@ exports.Stage = Montage.create(Component, { | |||
376 | } | 381 | } |
377 | }, | 382 | }, |
378 | 383 | ||
384 | handleDocumentViewChange: { | ||
385 | value: function() { | ||
386 | if(this.currentDocument.model.currentView.identifier === "design-code") { | ||
387 | drawUtils._eltArray.length = 0; | ||
388 | drawUtils._planesArray.length = 0; | ||
389 | |||
390 | this.collapseAllPanels(); | ||
391 | this.hideRulers(); | ||
392 | this.hideCanvas(true); | ||
393 | } else { | ||
394 | this.restoreAllPanels(true); | ||
395 | this.hideCanvas(false); | ||
396 | this.showRulers(); | ||
397 | |||
398 | this.clearAllCanvas(); | ||
399 | this.initWithDocument(); | ||
400 | } | ||
401 | } | ||
402 | }, | ||
403 | |||
379 | _userPaddingLeft: { value: 0 }, | 404 | _userPaddingLeft: { value: 0 }, |
380 | _userPaddingTop: { value: 0 }, | 405 | _userPaddingTop: { value: 0 }, |
381 | 406 | ||
@@ -492,8 +517,6 @@ exports.Stage = Montage.create(Component, { | |||
492 | this.eventManager.addEventListener( "elementChange", this, false); | 517 | this.eventManager.addEventListener( "elementChange", this, false); |
493 | 518 | ||
494 | this.addPropertyChangeListener("currentDocument.model.domContainer", this, true); | 519 | this.addPropertyChangeListener("currentDocument.model.domContainer", this, true); |
495 | // this.addPropertyChangeListener("currentDocument.model.domContainer", this); | ||
496 | |||
497 | } | 520 | } |
498 | }, | 521 | }, |
499 | 522 | ||
@@ -586,6 +609,8 @@ exports.Stage = Montage.create(Component, { | |||
586 | drawUtils.drawXZ = false; | 609 | drawUtils.drawXZ = false; |
587 | this.updatedStage = true; | 610 | this.updatedStage = true; |
588 | } | 611 | } |
612 | } else if(notification.currentPropertyPath === "model.currentViewIdentifier") { | ||
613 | this.handleDocumentViewChange(); | ||
589 | } | 614 | } |
590 | /* | 615 | /* |
591 | else if(notification.currentPropertyPath === "currentDocument.model.domContainer") { | 616 | else if(notification.currentPropertyPath === "currentDocument.model.domContainer") { |