diff options
Diffstat (limited to 'js/document')
-rwxr-xr-x | js/document/html-document.js | 41 |
1 files changed, 8 insertions, 33 deletions
diff --git a/js/document/html-document.js b/js/document/html-document.js index c5293386..8798b407 100755 --- a/js/document/html-document.js +++ b/js/document/html-document.js | |||
@@ -168,13 +168,13 @@ exports.HTMLDocument = Montage.create(TextDocument, { | |||
168 | glData: { | 168 | glData: { |
169 | get: function() | 169 | get: function() |
170 | { | 170 | { |
171 | var elt = this.iframe; | ||
172 | var elt = this.iframe.contentWindow.document.getElementById("UserContent"); | 171 | var elt = this.iframe.contentWindow.document.getElementById("UserContent"); |
173 | this._glData = null; | 172 | this._glData = null; |
174 | if (elt) | 173 | if (elt) |
175 | { | 174 | { |
176 | this._glData = new Array(); | 175 | var cdm = new CanvasDataManager(); |
177 | this.collectGLData( elt, this._glData ); | 176 | this._glData = []; |
177 | cdm.collectGLData( elt, this._glData ); | ||
178 | } | 178 | } |
179 | 179 | ||
180 | return this._glData | 180 | return this._glData |
@@ -182,37 +182,12 @@ exports.HTMLDocument = Montage.create(TextDocument, { | |||
182 | 182 | ||
183 | set: function(value) | 183 | set: function(value) |
184 | { | 184 | { |
185 | var nWorlds = value.length; | 185 | var elt = this.iframe.contentWindow.document.getElementById("UserContent"); |
186 | for (var i=0; i<nWorlds; i++) | 186 | if (elt) |
187 | { | 187 | { |
188 | var importStr = value[i]; | 188 | console.log( "load canvas data: " + value ); |
189 | var startIndex = importStr.indexOf( "id: " ); | 189 | var cdm = new CanvasDataManager(); |
190 | if (startIndex >= 0) | 190 | cdm.loadGLData(elt, value); |
191 | { | ||
192 | var endIndex = importStr.indexOf( "\n", startIndex ); | ||
193 | if (endIndex > 0) | ||
194 | { | ||
195 | var id = importStr.substring( startIndex+4, endIndex ); | ||
196 | var canvas = this.iframe.contentWindow.document.getElementById( id ); | ||
197 | if (canvas) | ||
198 | { | ||
199 | if (!canvas.elementModel) | ||
200 | { | ||
201 | NJUtils.makeElementModel(canvas, "Canvas", "shape", true); | ||
202 | } | ||
203 | |||
204 | if (canvas.elementModel) | ||
205 | { | ||
206 | if (canvas.elementModel.shapeModel.GLWorld) | ||
207 | canvas.elementModel.shapeModel.GLWorld.clearTree(); | ||
208 | |||
209 | var world = new GLWorld( canvas ); | ||
210 | canvas.elementModel.shapeModel.GLWorld = world; | ||
211 | world.import( importStr ); | ||
212 | } | ||
213 | } | ||
214 | } | ||
215 | } | ||
216 | } | 191 | } |
217 | } | 192 | } |
218 | }, | 193 | }, |