From 723ea402b74efa0424b96c7e125c8ebb2b72410c Mon Sep 17 00:00:00 2001
From: Nivesh Rajbhandari
Date: Mon, 26 Mar 2012 17:36:27 -0700
Subject: Fixed issue with WebGL materials not working after file-save or
 chrome-preview.  Also fixed Raiders material not showing in the PI or working
 during Chrome Preview.

Signed-off-by: Nivesh Rajbhandari <mqg734@motorola.com>
---
 js/lib/drawing/world.js | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

(limited to 'js/lib/drawing')

diff --git a/js/lib/drawing/world.js b/js/lib/drawing/world.js
index 781695b6..fec6a478 100755
--- a/js/lib/drawing/world.js
+++ b/js/lib/drawing/world.js
@@ -761,13 +761,10 @@ World.prototype.exportJSON = function()
 	// We need to rebuild everything
 	if (this._useWebGL)
 	{
-		var root = this._rootNode;
-		root.children = new Array();
 		if (worldObj.children && (worldObj.children.length === 1))
 		{
-			this.init();
-			this._geomRoot = undefined;
-			this.importObjectsJSON( worldObj.children[0] );
+            this.rebuildTree(this._geomRoot);
+            this.restartRenderLoop();
 		}
 	}
 
@@ -783,6 +780,20 @@ World.prototype.exportJSON = function()
 	return jStr;
 }
 
+World.prototype.rebuildTree = function( obj )
+{
+	if (!obj)  return;
+
+	obj.buildBuffers();
+
+	if (obj.getChild()) {
+		 this.rebuildTree( obj.getChild () );
+    }
+
+	if (obj.getNext())
+		this.rebuildTree( obj.getNext() );
+}
+
 World.prototype.exportObjectsJSON = function( obj,  parentObj )
 {
 	if (!obj)  return;
-- 
cgit v1.2.3


From 903b01b9d0501e6f974034273385a0517107b1e3 Mon Sep 17 00:00:00 2001
From: Pushkar Joshi
Date: Tue, 27 Mar 2012 12:42:42 -0700
Subject: File IO for the brush stroke AND changing the data type of brush
 stroke from GEOM_TYPE_CUBIC_BEZIER to GEOM_TYPE_BRUSH_STROKE

---
 js/lib/drawing/world.js | 6 ++++++
 1 file changed, 6 insertions(+)

(limited to 'js/lib/drawing')

diff --git a/js/lib/drawing/world.js b/js/lib/drawing/world.js
index 781695b6..1552178d 100755
--- a/js/lib/drawing/world.js
+++ b/js/lib/drawing/world.js
@@ -931,6 +931,7 @@ World.prototype.importObjectsJSON = function( jObj,  parentGeomObj )
 World.prototype.importObjectJSON = function( jObj, parentGeomObj )
 {
 	var type = jObj.type;
+    var BrushStroke = require("js/lib/geom/brush-stroke").BrushStroke;
 
 	var obj;
 	switch (type)
@@ -950,6 +951,11 @@ World.prototype.importObjectJSON = function( jObj, parentGeomObj )
             obj.importJSON( jObj );
             break;
 
+        case 6:     //brush stroke
+            obj = new BrushStroke();
+            obj.importJSON(jObj);
+            break;
+
 		default:
 			throw new Error( "Unrecognized object type: " + type );
 			break;
-- 
cgit v1.2.3