aboutsummaryrefslogtreecommitdiff
path: root/js/document
diff options
context:
space:
mode:
Diffstat (limited to 'js/document')
-rwxr-xr-xjs/document/models/base.js18
-rwxr-xr-xjs/document/views/design.js29
2 files changed, 31 insertions, 16 deletions
diff --git a/js/document/models/base.js b/js/document/models/base.js
index df341b2f..c99e36c7 100755
--- a/js/document/models/base.js
+++ b/js/document/models/base.js
@@ -151,7 +151,7 @@ exports.BaseDocumentModel = Montage.create(Component, {
151 head: this.views.design.iframe.contentWindow.document.head, 151 head: this.views.design.iframe.contentWindow.document.head,
152 body: this.views.design.iframe.contentWindow.document.body, 152 body: this.views.design.iframe.contentWindow.document.body,
153 mjsTemplateCreator: this.views.design.iframe.contentWindow.mjsTemplateCreator 153 mjsTemplateCreator: this.views.design.iframe.contentWindow.mjsTemplateCreator
154 }, callback.bind(this)); 154 }, this.handleSaved.bind({callback: callback, model: this}));
155 } else { 155 } else {
156 //TODO: Add logic to save code view data 156 //TODO: Add logic to save code view data
157 } 157 }
@@ -180,7 +180,7 @@ exports.BaseDocumentModel = Montage.create(Component, {
180 head: this.views.design.iframe.contentWindow.document.head, 180 head: this.views.design.iframe.contentWindow.document.head,
181 body: this.views.design.iframe.contentWindow.document.body, 181 body: this.views.design.iframe.contentWindow.document.body,
182 mjsTemplateCreator: this.views.design.iframe.contentWindow.mjsTemplateCreator 182 mjsTemplateCreator: this.views.design.iframe.contentWindow.mjsTemplateCreator
183 }, callback.bind(this)); 183 }, this.handleSaved.bind({callback: callback, model: this}));
184 } else { 184 } else {
185 //TODO: Add logic to save code view data 185 //TODO: Add logic to save code view data
186 } 186 }
@@ -190,7 +190,7 @@ exports.BaseDocumentModel = Montage.create(Component, {
190 //////////////////////////////////////////////////////////////////// 190 ////////////////////////////////////////////////////////////////////
191 // 191 //
192 saveAs: { 192 saveAs: {
193 value: function () { 193 value: function (callback) {
194 // 194 //
195 if (this.needsSave) { 195 if (this.needsSave) {
196 //Save current file on memory 196 //Save current file on memory
@@ -201,6 +201,18 @@ exports.BaseDocumentModel = Montage.create(Component, {
201 }, 201 },
202 //////////////////////////////////////////////////////////////////// 202 ////////////////////////////////////////////////////////////////////
203 // 203 //
204 handleSaved: {
205 value: function (result) {
206 //
207 if (result.status === 204) {
208 this.model.needsSave = false;
209 }
210 //
211 if (this.callback) this.callback(result);
212 }
213 },
214 ////////////////////////////////////////////////////////////////////
215 //
204 close: { 216 close: {
205 value: function (view, callback) { 217 value: function (view, callback) {
206 //Outcome of close (pending on save logic) 218 //Outcome of close (pending on save logic)
diff --git a/js/document/views/design.js b/js/document/views/design.js
index 44f1a5e8..3f58650e 100755
--- a/js/document/views/design.js
+++ b/js/document/views/design.js
@@ -189,8 +189,7 @@ exports.DesignDocumentView = Montage.create(BaseDocumentView, {
189 this._bodyFragment = null; 189 this._bodyFragment = null;
190 //Calling standard method to finish opening document 190 //Calling standard method to finish opening document
191 this.bodyContentLoaded(null); 191 this.bodyContentLoaded(null);
192 192 //TODO: Move this to be set via the controller
193 // TODO: Clean up this code
194 this.application.ninja.stage.documentOffsetLeft = parseInt((this.document.body.scrollWidth - this._template.size.width)/2); 193 this.application.ninja.stage.documentOffsetLeft = parseInt((this.document.body.scrollWidth - this._template.size.width)/2);
195 this.application.ninja.stage.documentOffsetTop = parseInt((this.document.body.scrollHeight - this._template.size.height)/2); 194 this.application.ninja.stage.documentOffsetTop = parseInt((this.document.body.scrollHeight - this._template.size.height)/2);
196 } 195 }
@@ -248,17 +247,15 @@ exports.DesignDocumentView = Montage.create(BaseDocumentView, {
248 } 247 }
249 } 248 }
250 } 249 }
251 //Checking and initializing webGL 250 //Checking for script tags then parsing check for montage and webgl
252 if (scripttags.length > 0) { 251 if (scripttags.length > 0) {
252 //Checking and initializing webGL
253 this.initWebGl(scripttags); 253 this.initWebGl(scripttags);
254 } //Else there is not data to parse 254 //Checking and initializing Montage
255 255 this.initMontage(scripttags);
256 256 } else {
257 257 //Else there is not data to parse
258 //TODO: Load Montage Components (blocking) 258 }
259 //this.initMontage();
260
261
262 //Makign callback if specified 259 //Makign callback if specified
263 if (this._callback) this._callback(); 260 if (this._callback) this._callback();
264 } 261 }
@@ -355,8 +352,14 @@ exports.DesignDocumentView = Montage.create(BaseDocumentView, {
355 //////////////////////////////////////////////////////////////////// 352 ////////////////////////////////////////////////////////////////////
356 // 353 //
357 initMontage: { 354 initMontage: {
358 value: function () { 355 value: function (scripttags) {
359 //initWithDocument(window.document) instantiateWithOwnerAndDocument(null, window.document) 356 //
357 this.iframe.contentWindow.document.body.addEventListener('mjsTemplateReady', function () {
358 //Initializing template with user's seriliazation
359 var template = this.iframe.contentWindow.mjsTemplate.create();
360 template.initWithDocument(this.iframe.contentWindow.document);
361 template.instantiateWithOwnerAndDocument(null, this.iframe.contentWindow.document, function (e){/*Nothing just a required extra parameter*/});
362 }.bind(this), false);
360 } 363 }
361 }, 364 },
362 //////////////////////////////////////////////////////////////////// 365 ////////////////////////////////////////////////////////////////////